17 #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL 26 #ifndef GLOBUS_I_GASS_TRANSFER_H 27 #define GLOBUS_I_GASS_TRANSFER_H 31 #include "globus_i_gass_transfer_keyvalue.h" 37 extern globus_hashtable_t globus_i_gass_transfer_protocols;
46 #define GLOBUS_I_GASS_TRANSFER_HTTP_MODULE (&globus_i_gass_transfer_http_module) 48 #define GLOBUS_I_GASS_TRANSFER_FTP_MODULE (&globus_i_gass_transfer_ftp_module) 51 globus_i_gass_transfer_http_descriptor;
53 globus_i_gass_transfer_https_descriptor;
55 globus_i_gass_transfer_ftp_descriptor;
57 globus_i_gass_transfer_gsiftp_descriptor;
77 globus_gass_transfer_callback_t callback;
80 globus_gass_transfer_callback_t fail_callback;
81 void * fail_callback_arg;
91 char * denial_message;
93 globus_object_t * attr;
98 } globus_gass_transfer_request_struct_t;
107 globus_gass_transfer_listener_status_t status;
112 void * listen_callback_arg;
115 void * close_callback_arg;
117 } globus_gass_transfer_listener_struct_t;
136 } globus_gass_transfer_pending_t;
140 globus_i_gass_transfer_request_init(
142 globus_gass_transfer_requestattr_t * attr,
145 globus_gass_transfer_callback_t callback,
149 globus_i_gass_transfer_request_destroy(
159 globus_i_gass_transfer_listener_destroy(
160 globus_gass_transfer_listener_t listener);
164 globus_i_gass_transfer_client_request(
169 (* globus_gass_transfer_dispatch_func_t) (
173 globus_i_gass_transfer_send_dispatcher(
177 globus_i_gass_transfer_recv_dispatcher(
181 globus_i_gass_transfer_fail(
183 globus_gass_transfer_request_struct_t * req,
184 globus_gass_transfer_callback_t callback,
185 void * callback_arg);
190 #if defined(GLOBUS_DEBUG_GASS_TRANSFER) 191 #define globus_i_gass_transfer_lock() \ 192 thread_print(_GTSL("locking mutex at %s:%d\n"), __FILE__, __LINE__), \ 193 globus_mutex_lock(&globus_i_gass_transfer_mutex) 194 #define globus_i_gass_transfer_unlock() \ 195 thread_print(_GTSL("unlocking mutex at %s:%d\n"), __FILE__, __LINE__), \ 196 globus_mutex_unlock(&globus_i_gass_transfer_mutex) 198 #define globus_i_gass_transfer_lock() \ 199 globus_mutex_lock(&globus_i_gass_transfer_mutex) 200 #define globus_i_gass_transfer_unlock() \ 201 globus_mutex_unlock(&globus_i_gass_transfer_mutex) 205 globus_i_gass_transfer_close_listener(
206 globus_gass_transfer_listener_t listener,
207 globus_gass_transfer_listener_struct_t * l,
212 globus_i_gass_transfer_deactivate_callback(
void globus_gass_transfer_request_set_length(globus_gass_transfer_request_t request, globus_size_t length)
Definition: globus_gass_transfer_request.c:455
void(* globus_gass_transfer_bytes_callback_t)(void *arg, globus_gass_transfer_request_t request, globus_byte_t *bytes, globus_size_t length, globus_bool_t last_data)
Definition: globus_gass_transfer.h:531
struct globus_l_handle_table_s * globus_handle_table_t
Handle table abstract type.
Definition: globus_handle_table.h:51
int globus_bool_t
Boolean type.
Definition: globus_types.h:93
Protocol module descriptor structure.
Definition: globus_gass_transfer_proto.h:452
struct globus_fifo_s * globus_fifo_t
Definition: globus_fifo.h:48
globus_gass_transfer_request_type_t
Definition: globus_gass_transfer.h:145
List data type.
Definition: globus_list.h:44
Mutex.
Definition: globus_thread.h:107
Condition variable.
Definition: globus_thread.h:124
size_t globus_size_t
Standard size of memory objectThe globus_size_t is the size of a memory object. It is identical to si...
Definition: globus_types.h:48
unsigned char globus_byte_t
Unsigned byte datatypeThis is used for byte-addressable arrays of arbitrary data which is not subject...
Definition: globus_types.h:85
Protocol module listener handling structure.
Definition: globus_gass_transfer_proto.h:432
GASS Transfer Protocol Interface.
void(* globus_gass_transfer_close_callback_t)(void *callback_arg, globus_gass_transfer_listener_t listener)
Definition: globus_gass_transfer.h:434
globus_gass_transfer_request_status_t
Definition: globus_gass_transfer.h:189
void(* globus_gass_transfer_listen_callback_t)(void *callback_arg, globus_gass_transfer_listener_t listener)
Definition: globus_gass_transfer.h:445
Protocol module request handling structure.
Definition: globus_gass_transfer_proto.h:386
Module Descriptor.
Definition: globus_module.h:71