.TH "globus_gass_copy.h" 3 "Sat Nov 8 2014" "Version 9.12" "globus_gass_copy" \" -*- nroff -*- .ad l .nh .SH NAME globus_gass_copy.h \- GASS Copy Library\&. .SH SYNOPSIS .br .PP \fC#include 'globus_gass_transfer\&.h'\fP .br \fC#include 'globus_ftp_client\&.h'\fP .br \fC#include 'globus_io\&.h'\fP .br .SS "Data Structures" .in +1c .ti -1c .RI "struct \fBglobus_gass_copy_handle_s\fP" .br .RI "\fICopy Handle\&. \fP" .ti -1c .RI "struct \fBglobus_gass_copy_attr_s\fP" .br .RI "\fIAttributes\&. \fP" .ti -1c .RI "struct \fBglobus_gass_copy_handleattr_s\fP" .br .RI "\fIHandle Attributes\&. \fP" .ti -1c .RI "struct \fBglobus_gass_copy_glob_stat_t\fP" .br .RI "\fIGlob expanded entry information\&. \fP" .in -1c .SS "Macros" .in +1c .ti -1c .RI "#define \fBGLOBUS_GASS_COPY_MODULE\fP (&globus_i_gass_copy_module)" .br .RI "\fIModule Descriptor\&. \fP" .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef void(* \fBglobus_gass_copy_performance_cb_t\fP )(void *user_arg, \fBglobus_gass_copy_handle_t\fP *handle, globus_off_t total_bytes, float instantaneous_throughput, float avg_throughput)" .br .RI "\fIPerformance Callback\&. \fP" .ti -1c .RI "typedef void(* \fBglobus_gass_copy_callback_t\fP )(void *callback_arg, \fBglobus_gass_copy_handle_t\fP *handle, globus_object_t *error)" .br .RI "\fICopy Callback\&. \fP" .ti -1c .RI "typedef struct .br \fBglobus_gass_copy_attr_s\fP \fBglobus_gass_copy_attr_t\fP" .br .RI "\fIAttributes\&. \fP" .ti -1c .RI "typedef struct .br \fBglobus_gass_copy_handleattr_s\fP \fBglobus_gass_copy_handleattr_t\fP" .br .RI "\fIHandle Attributes\&. \fP" .ti -1c .RI "typedef void(* \fBglobus_gass_copy_glob_entry_cb_t\fP )(const char *url, const \fBglobus_gass_copy_glob_stat_t\fP *info_stat, void *user_arg)" .br .RI "\fIGass copy glob entry callback\&. \fP" .in -1c .SS "Enumerations" .in +1c .ti -1c .RI "enum \fBglobus_gass_copy_status_t\fP " .br .RI "\fIStatus States\&. \fP" .ti -1c .RI "enum \fBglobus_gass_copy_url_mode_t\fP " .br .RI "\fIURL Modes\&. \fP" .ti -1c .RI "enum \fBglobus_gass_copy_glob_entry_t\fP " .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "globus_result_t \fBglobus_gass_copy_handle_init\fP (\fBglobus_gass_copy_handle_t\fP *handle, \fBglobus_gass_copy_handleattr_t\fP *handle_attr)" .br .RI "\fIInitialize a GASS Copy handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_handle_destroy\fP (\fBglobus_gass_copy_handle_t\fP *handle)" .br .RI "\fIDestroy a GASS Copy handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_buffer_length\fP (\fBglobus_gass_copy_handle_t\fP *handle, int length)" .br .RI "\fISet the size of the buffer to be used for doing transfers\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_buffer_length\fP (\fBglobus_gass_copy_handle_t\fP *handle, int *length)" .br .RI "\fIGet the size of the transfer buffer\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_no_third_party_transfers\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_bool_t no_third_party_transfers)" .br .RI "\fIEnable/Disable third-party transfers\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_no_third_party_transfers\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_bool_t *no_third_party_transfers)" .br .RI "\fIQuery third-party transfer status\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_partial_offsets\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_off_t *offset, globus_off_t *end_offset)" .br .RI "\fIGet partial transfer offsets\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_partial_offsets\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_off_t offset, globus_off_t end_offset)" .br .RI "\fISet partial file offsets\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_allocate\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_bool_t send_allo)" .br .RI "\fISet allo on or off\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_stat_on_expand\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_bool_t always_stat)" .br .RI "\fIMake globus_gass_copy_expand_url() always send stat info\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_url_mode\fP (char *url, \fBglobus_gass_copy_url_mode_t\fP *mode)" .br .RI "\fIGet URL scheme\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_attr_init\fP (\fBglobus_gass_copy_attr_t\fP *attr)" .br .RI "\fIInitialize an attribute structure\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_attr_set_ftp\fP (\fBglobus_gass_copy_attr_t\fP *attr, globus_ftp_client_operationattr_t *ftp_attr)" .br .RI "\fISet the attributes for ftp/gsiftp transfers\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_attr_set_io\fP (\fBglobus_gass_copy_attr_t\fP *attr, globus_io_attr_t *io_attr)" .br .RI "\fISet file transfers attributes\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_attr_set_gass\fP (\fBglobus_gass_copy_attr_t\fP *attr, globus_gass_transfer_requestattr_t *gass_attr)" .br .RI "\fISet the http/https attributes\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_url_to_url\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr)" .br .RI "\fIBlocking Transfer between URLs\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_url_to_handle\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, globus_io_handle_t *dest_handle)" .br .RI "\fIBlocking Transfer from an URL to an IO handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_handle_to_url\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_io_handle_t *source_handle, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr)" .br .RI "\fIBlocking transfer from an IO handle to an URL\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_register_url_to_url\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *dest_attr, char *dest_url, \fBglobus_gass_copy_attr_t\fP *source_attr, \fBglobus_gass_copy_callback_t\fP callback_func, void *callback_arg)" .br .ti -1c .RI "globus_result_t \fBglobus_gass_copy_register_url_to_handle\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, globus_io_handle_t *dest_handle, \fBglobus_gass_copy_callback_t\fP callback_func, void *callback_arg)" .br .RI "\fINonblocking transfer from an URL to an IO handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_register_handle_to_url\fP (\fBglobus_gass_copy_handle_t\fP *handle, globus_io_handle_t *source_handle, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr, \fBglobus_gass_copy_callback_t\fP callback_func, void *callback_arg)" .br .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_status\fP (\fBglobus_gass_copy_handle_t\fP *handle, \fBglobus_gass_copy_status_t\fP *status)" .br .RI "\fIGet the status code of a transfer\&. \fP" .ti -1c .RI "const char * \fBglobus_gass_copy_get_status_string\fP (\fBglobus_gass_copy_handle_t\fP *handle)" .br .RI "\fIGet the status string of a transfer\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_cancel\fP (\fBglobus_gass_copy_handle_t\fP *handle, \fBglobus_gass_copy_callback_t\fP cancel_callback, void *cancel_callback_arg)" .br .RI "\fICancel a transfer\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_cache_url_state\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *url)" .br .RI "\fICache connections to an FTP or GridFTP server\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_flush_url_state\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *url)" .br .RI "\fIRemove an FTP or GridFTP cached connection\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_set_user_pointer\fP (\fBglobus_gass_copy_handle_t\fP *handle, void *user_data)" .br .RI "\fISet the user pointer in a handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_get_user_pointer\fP (\fBglobus_gass_copy_handle_t\fP *handle, void **user_data)" .br .RI "\fIGet the user pointer in a handle\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_register_performance_cb\fP (\fBglobus_gass_copy_handle_t\fP *handle, \fBglobus_gass_copy_performance_cb_t\fP callback, void *user_arg)" .br .RI "\fIRegister a performance information callback\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_glob_expand_url\fP (\fBglobus_gass_copy_handle_t\fP *handle, const char *url, \fBglobus_gass_copy_attr_t\fP *attr, \fBglobus_gass_copy_glob_entry_cb_t\fP entry_cb, void *user_arg)" .br .RI "\fIExpand globbed url\&. \fP" .ti -1c .RI "globus_result_t \fBglobus_gass_copy_mkdir\fP (\fBglobus_gass_copy_handle_t\fP *handle, char *url, \fBglobus_gass_copy_attr_t\fP *attr)" .br .RI "\fIMake directory\&. \fP" .in -1c .SH "Detailed Description" .PP GASS Copy Library\&. .SH "Function Documentation" .PP .SS "globus_result_t globus_gass_copy_cache_url_state (\fBglobus_gass_copy_handle_t\fP *handle, char *url)" .PP Cache connections to an FTP or GridFTP server\&. Explicitly cache connections to URL server\&. When an URL is cached, the connection to the URL server will not be closed after a file transfer completes\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP Handle which will contain a cached connection to the URL server\&. .br \fIurl\fP The URL of the FTP or GSIFTP server to cache\&. .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating the error that occurred\&. .RE .PP .SS "globus_result_t globus_gass_copy_flush_url_state (\fBglobus_gass_copy_handle_t\fP *handle, char *url)" .PP Remove an FTP or GridFTP cached connection\&. Explicitly remove a cached connection to an FTP or GSIFTP server\&. If an idle connection to an FTP server exists, it will be closed\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP Handle which contains a cached connection to the URL server\&. .br \fIurl\fP The URL of the FTP or GSIFTP server to remove\&. .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating the error that occurred\&. .RE .PP .SS "globus_result_t globus_gass_copy_handle_to_url (\fBglobus_gass_copy_handle_t\fP *handle, globus_io_handle_t *source_handle, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr)" .PP Blocking transfer from an IO handle to an URL\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_handle\fP transfer data from this IO handle .br \fIdest_url\fP transfer data to this URL .br \fIdest_attr\fP Attributes describing how the transfer to the destination should be done .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_url_to_url()\fP \fBglobus_gass_copy_url_to_handle()\fP .RE .PP .SS "globus_result_t globus_gass_copy_register_handle_to_url (\fBglobus_gass_copy_handle_t\fP *handle, globus_io_handle_t *source_handle, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr, \fBglobus_gass_copy_callback_t\fPcallback_func, void *callback_arg)" Nonblocking Transfer From an IO handle to an URL .PP This functions initiates a transfer from an IO handle to destination URL, then returns immediately\&. .PP When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_handle\fP transfer data from this IO handle .br \fIdest_url\fP transfer data to this URL .br \fIdest_attr\fP Attributes describing how the transfer to the destination should be done .br \fIcallback_func\fP Callback to be invoked once the transfer is completed\&. .br \fIcallback_arg\fP Argument to be passed to the callback_func\&. .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_register_url_to_url()\fP, \fBglobus_gass_copy_register_url_to_handle()\fP .RE .PP .SS "globus_result_t globus_gass_copy_register_url_to_handle (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, globus_io_handle_t *dest_handle, \fBglobus_gass_copy_callback_t\fPcallback_func, void *callback_arg)" .PP Nonblocking transfer from an URL to an IO handle\&. This functions initiates a transfer from source URL to an IO handle, then returns immediately\&. .PP When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_url\fP transfer data from this URL .br \fIsource_attr\fP Attributes describing how the transfer form the source should be done .br \fIdest_handle\fP transfer data to this IO handle .br \fIcallback_func\fP Callback to be invoked once the transfer is completed\&. .br \fIcallback_arg\fP Argument to be passed to the callback_func\&. .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_register_url_to_url()\fP, \fBglobus_gass_copy_register_handle_to_url()\fP .RE .PP .SS "globus_result_t globus_gass_copy_register_url_to_url (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr, \fBglobus_gass_copy_callback_t\fPcallback_func, void *callback_arg)" Nonblocking Transfer between URLs .PP This functions initiates a transfer from source URL to destination URL, then returns immediately\&. .PP When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_url\fP transfer data from this URL .br \fIsource_attr\fP Attributes describing how the transfer form the source should be done .br \fIdest_url\fP transfer data to this URL .br \fIdest_attr\fP Attributes describing how the transfer to the destination should be done .br \fIcallback_func\fP Callback to be invoked once the transfer is completed\&. .br \fIcallback_arg\fP Argument to be passed to the callback_func\&. .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_register_url_to_handle()\fP, \fBglobus_gass_copy_register_handle_to_url()\fP .RE .PP .SS "globus_result_t globus_gass_copy_url_to_handle (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, globus_io_handle_t *dest_handle)" .PP Blocking Transfer from an URL to an IO handle\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_url\fP transfer data from this URL .br \fIsource_attr\fP Attributes describing how the transfer form the source should be done .br \fIdest_handle\fP transfer data to this IO handle .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_url_to_url()\fP \fBglobus_gass_copy_handle_to_url()\fP .RE .PP .SS "globus_result_t globus_gass_copy_url_to_url (\fBglobus_gass_copy_handle_t\fP *handle, char *source_url, \fBglobus_gass_copy_attr_t\fP *source_attr, char *dest_url, \fBglobus_gass_copy_attr_t\fP *dest_attr)" .PP Blocking Transfer between URLs\&. .PP \fBParameters:\fP .RS 4 \fIhandle\fP The handle to perform the copy operation .br \fIsource_url\fP transfer data from this URL .br \fIsource_attr\fP Attributes describing how the transfer form the source should be done .br \fIdest_url\fP transfer data to this URL .br \fIdest_attr\fP Attributes describing how the transfer to the destination should be done .RE .PP \fBReturns:\fP .RS 4 This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types: .RE .PP \fBReturn values:\fP .RS 4 \fIGLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER\fP The handle was equal to GLOBUS_NULL, so the transfer could not processed\&. .br \fIGLOBUS_GASS_COPY_ERROR_TYPE_next_error\fP next error description .RE .PP \fBSee also:\fP .RS 4 \fBglobus_gass_copy_url_to_handle()\fP \fBglobus_gass_copy_handle_to_url()\fP .RE .PP .SH "Author" .PP Generated automatically by Doxygen for globus_gass_copy from the source code\&.