Provided by: libglobus-gass-copy-doc_10.4-2_all bug

NAME

       globus_gass_copy.h - GASS Copy Library.

SYNOPSIS

       #include <openssl/evp.h>
       #include 'globus_gass_transfer.h'
       #include 'globus_ftp_client.h'
       #include 'globus_io.h'

   Data Structures
       struct globus_gass_copy_handle_s
           Copy Handle.
       struct globus_gass_copy_attr_s
           Attributes.
       struct globus_gass_copy_handleattr_s
           Handle Attributes.
       struct globus_gass_copy_glob_stat_t
           Glob expanded entry information.

   Macros
       #define GLOBUS_GASS_COPY_MODULE   (&globus_i_gass_copy_module)
           Module Descriptor.

   Typedefs
       typedef void(* globus_gass_copy_performance_cb_t) (void *user_arg,
           globus_gass_copy_handle_t *handle, globus_off_t total_bytes, float
           instantaneous_throughput, float avg_throughput)
           Performance Callback.
       typedef void(* globus_gass_copy_callback_t) (void *callback_arg, globus_gass_copy_handle_t
           *handle, globus_object_t *error)
           Copy Callback.
       typedef struct globus_gass_copy_attr_s globus_gass_copy_attr_t
           Attributes.
       typedef struct globus_gass_copy_handleattr_s globus_gass_copy_handleattr_t
           Handle Attributes.
       typedef void(* globus_gass_copy_glob_entry_cb_t) (const char *url, const
           globus_gass_copy_glob_stat_t *info_stat, void *user_arg)
           Gass copy glob entry callback.

   Enumerations
       enum globus_gass_copy_status_t Status States. "
       enum globus_gass_copy_url_mode_t URL Modes. "
       enum globus_gass_copy_glob_entry_t

   Functions
       globus_result_t globus_gass_copy_handle_init (globus_gass_copy_handle_t *handle,
           globus_gass_copy_handleattr_t *handle_attr)
           Initialize a GASS Copy handle.
       globus_result_t globus_gass_copy_handle_destroy (globus_gass_copy_handle_t *handle)
           Destroy a GASS Copy handle.
       globus_result_t globus_gass_copy_set_buffer_length (globus_gass_copy_handle_t *handle, int
           length)
           Set the size of the buffer to be used for doing transfers.
       globus_result_t globus_gass_copy_get_buffer_length (globus_gass_copy_handle_t *handle, int
           *length)
           Get the size of the transfer buffer.
       globus_result_t globus_gass_copy_set_no_third_party_transfers (globus_gass_copy_handle_t
           *handle, globus_bool_t no_third_party_transfers)
           Enable/Disable third-party transfers.
       globus_result_t globus_gass_copy_get_no_third_party_transfers (globus_gass_copy_handle_t
           *handle, globus_bool_t *no_third_party_transfers)
           Query third-party transfer status.
       globus_result_t globus_gass_copy_get_partial_offsets (globus_gass_copy_handle_t *handle,
           globus_off_t *offset, globus_off_t *end_offset)
           Get partial transfer offsets.
       globus_result_t globus_gass_copy_set_partial_offsets (globus_gass_copy_handle_t *handle,
           globus_off_t offset, globus_off_t end_offset)
           Set partial file offsets.
       globus_result_t globus_gass_copy_set_allocate (globus_gass_copy_handle_t *handle,
           globus_bool_t send_allo)
           Set allo on or off.
       globus_result_t globus_gass_copy_set_stat_on_expand (globus_gass_copy_handle_t *handle,
           globus_bool_t always_stat)
           Make globus_gass_copy_expand_url() always send stat info.
       globus_result_t globus_gass_copy_set_checksum_algo (globus_gass_copy_handle_t *handle,
           char *algo, globus_gass_copy_handle_t *cksm_handle)
           Stores the checksum algorithm to use with all checksum operations.
       globus_result_t globus_gass_copy_set_checksum (globus_gass_copy_handle_t *handle, char
           *cksm)
           Copies the checksum to the handle's checksum parameter.
       globus_result_t globus_gass_copy_get_url_mode (char *url, globus_gass_copy_url_mode_t
           *mode)
           Get URL scheme.
       globus_result_t globus_gass_copy_attr_init (globus_gass_copy_attr_t *attr)
           Initialize an attribute structure.
       globus_result_t globus_gass_copy_attr_set_ftp (globus_gass_copy_attr_t *attr,
           globus_ftp_client_operationattr_t *ftp_attr)
           Set the attributes for ftp/gsiftp transfers.
       globus_result_t globus_gass_copy_attr_set_io (globus_gass_copy_attr_t *attr,
           globus_io_attr_t *io_attr)
           Set file transfers attributes.
       globus_result_t globus_gass_copy_attr_set_gass (globus_gass_copy_attr_t *attr,
           globus_gass_transfer_requestattr_t *gass_attr)
           Set the http/https attributes.
       globus_result_t globus_gass_copy_url_to_url (globus_gass_copy_handle_t *handle, char
           *source_url, globus_gass_copy_attr_t *source_attr, char *dest_url,
           globus_gass_copy_attr_t *dest_attr)
           Blocking Transfer between URLs.
       globus_result_t globus_gass_copy_url_to_handle (globus_gass_copy_handle_t *handle, char
           *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t *dest_handle)
           Blocking Transfer from an URL to an IO handle.
       globus_result_t globus_gass_copy_handle_to_url (globus_gass_copy_handle_t *handle,
           globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t *dest_attr)
           Blocking transfer from an IO handle to an URL.
       globus_result_t globus_gass_copy_register_url_to_url (globus_gass_copy_handle_t *handle,
           char *source_url, globus_gass_copy_attr_t *dest_attr, char *dest_url,
           globus_gass_copy_attr_t *source_attr, globus_gass_copy_callback_t callback_func, void
           *callback_arg)
       globus_result_t globus_gass_copy_register_url_to_handle (globus_gass_copy_handle_t
           *handle, char *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t
           *dest_handle, globus_gass_copy_callback_t callback_func, void *callback_arg)
           Nonblocking transfer from an URL to an IO handle.
       globus_result_t globus_gass_copy_register_handle_to_url (globus_gass_copy_handle_t
           *handle, globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t
           *dest_attr, globus_gass_copy_callback_t callback_func, void *callback_arg)
       globus_result_t globus_gass_copy_get_status (globus_gass_copy_handle_t *handle,
           globus_gass_copy_status_t *status)
           Get the status code of a transfer.
       const char * globus_gass_copy_get_status_string (globus_gass_copy_handle_t *handle)
           Get the status string of a transfer.
       globus_result_t globus_gass_copy_cancel (globus_gass_copy_handle_t *handle,
           globus_gass_copy_callback_t cancel_callback, void *cancel_callback_arg)
           Cancel a transfer.
       globus_result_t globus_gass_copy_cache_url_state (globus_gass_copy_handle_t *handle, char
           *url)
           Cache connections to an FTP or GridFTP server.
       globus_result_t globus_gass_copy_flush_url_state (globus_gass_copy_handle_t *handle, char
           *url)
           Remove an FTP or GridFTP cached connection.
       globus_result_t globus_gass_copy_set_user_pointer (globus_gass_copy_handle_t *handle, void
           *user_data)
           Set the user pointer in a handle.
       globus_result_t globus_gass_copy_get_user_pointer (globus_gass_copy_handle_t *handle, void
           **user_data)
           Get the user pointer in a handle.
       globus_result_t globus_gass_copy_register_performance_cb (globus_gass_copy_handle_t
           *handle, globus_gass_copy_performance_cb_t callback, void *user_arg)
           Register a performance information callback.
       globus_result_t globus_gass_copy_glob_expand_url (globus_gass_copy_handle_t *handle, const
           char *url, globus_gass_copy_attr_t *attr, globus_gass_copy_glob_entry_cb_t entry_cb,
           void *user_arg)
           Expand globbed url.
       globus_result_t globus_gass_copy_mkdir (globus_gass_copy_handle_t *handle, char *url,
           globus_gass_copy_attr_t *attr)
           Make directory.

Detailed Description

       GASS Copy Library.

Function Documentation

   globus_result_t globus_gass_copy_cache_url_state (globus_gass_copy_handle_t * handle, char *
       url)
       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.

       Parameters:
           handle Handle which will contain a cached connection to the URL server.
           url The URL of the FTP or GSIFTP server to cache.

       Returns:
           This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating
           the error that occurred.

   globus_result_t globus_gass_copy_flush_url_state (globus_gass_copy_handle_t * handle, char *
       url)
       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.

       Parameters:
           handle Handle which contains a cached connection to the URL server.
           url The URL of the FTP or GSIFTP server to remove.

       Returns:
           This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating
           the error that occurred.

   globus_result_t globus_gass_copy_handle_to_url (globus_gass_copy_handle_t * handle,
       globus_io_handle_t * source_handle, char * dest_url, globus_gass_copy_attr_t * dest_attr)
       Blocking transfer from an IO handle to an URL.

       Parameters:
           handle The handle to perform the copy operation
           source_handle transfer data from this IO handle
           dest_url transfer data to this URL
           dest_attr Attributes describing how the transfer to the destination should be done

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_url_to_url() globus_gass_copy_url_to_handle()

   globus_result_t globus_gass_copy_register_handle_to_url (globus_gass_copy_handle_t * handle,
       globus_io_handle_t * source_handle, char * dest_url, globus_gass_copy_attr_t * dest_attr,
       globus_gass_copy_callback_t callback_func, void * callback_arg)
       Nonblocking Transfer From an IO handle to an URL

       This functions initiates a transfer from an IO handle to destination URL, then returns
       immediately.

       When the transfer is completed or if the transfer is aborted, the callback_func will be
       invoked with the final status of the transfer.

       Parameters:
           handle The handle to perform the copy operation
           source_handle transfer data from this IO handle
           dest_url transfer data to this URL
           dest_attr Attributes describing how the transfer to the destination should be done
           callback_func Callback to be invoked once the transfer is completed.
           callback_arg Argument to be passed to the callback_func.

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_register_url_to_url(), globus_gass_copy_register_url_to_handle()

   globus_result_t globus_gass_copy_register_url_to_handle (globus_gass_copy_handle_t * handle,
       char * source_url, globus_gass_copy_attr_t * source_attr, globus_io_handle_t *
       dest_handle, globus_gass_copy_callback_t callback_func, void * callback_arg)
       Nonblocking transfer from an URL to an IO handle. This functions initiates a transfer from
       source URL to an IO handle, then returns immediately.

       When the transfer is completed or if the transfer is aborted, the callback_func will be
       invoked with the final status of the transfer.

       Parameters:
           handle The handle to perform the copy operation
           source_url transfer data from this URL
           source_attr Attributes describing how the transfer form the source should be done
           dest_handle transfer data to this IO handle
           callback_func Callback to be invoked once the transfer is completed.
           callback_arg Argument to be passed to the callback_func.

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_register_url_to_url(), globus_gass_copy_register_handle_to_url()

   globus_result_t globus_gass_copy_register_url_to_url (globus_gass_copy_handle_t * handle, char
       * source_url, globus_gass_copy_attr_t * source_attr, char * dest_url,
       globus_gass_copy_attr_t * dest_attr, globus_gass_copy_callback_t callback_func, void *
       callback_arg)
       Nonblocking Transfer between URLs

       This functions initiates a transfer from source URL to destination URL, then returns
       immediately.

       When the transfer is completed or if the transfer is aborted, the callback_func will be
       invoked with the final status of the transfer.

       Parameters:
           handle The handle to perform the copy operation
           source_url transfer data from this URL
           source_attr Attributes describing how the transfer form the source should be done
           dest_url transfer data to this URL
           dest_attr Attributes describing how the transfer to the destination should be done
           callback_func Callback to be invoked once the transfer is completed.
           callback_arg Argument to be passed to the callback_func.

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_register_url_to_handle(), globus_gass_copy_register_handle_to_url()

   globus_result_t globus_gass_copy_url_to_handle (globus_gass_copy_handle_t * handle, char *
       source_url, globus_gass_copy_attr_t * source_attr, globus_io_handle_t * dest_handle)
       Blocking Transfer from an URL to an IO handle.

       Parameters:
           handle The handle to perform the copy operation
           source_url transfer data from this URL
           source_attr Attributes describing how the transfer form the source should be done
           dest_handle transfer data to this IO handle

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_url_to_url() globus_gass_copy_handle_to_url()

   globus_result_t globus_gass_copy_url_to_url (globus_gass_copy_handle_t * handle, char *
       source_url, globus_gass_copy_attr_t * source_attr, char * dest_url,
       globus_gass_copy_attr_t * dest_attr)
       Blocking Transfer between URLs.

       Parameters:
           handle The handle to perform the copy operation
           source_url transfer data from this URL
           source_attr Attributes describing how the transfer form the source should be done
           dest_url transfer data to this URL
           dest_attr Attributes describing how the transfer to the destination should be done

       Returns:
           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:

       Return values:
           GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the
           transfer could not processed.
           GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description

       See also:
           globus_gass_copy_url_to_handle() globus_gass_copy_handle_to_url()

Author

       Generated automatically by Doxygen for globus_gass_copy from the source code.