NAME
Handle Attributes -
Handle attributes are used to control additional features of the FTP
Client handle.
Typedefs
typedef struct globus_i_ftp_client_handleattr_t *
globus_ftp_client_handleattr_t
Initialize
globus_result_t globus_ftp_client_handleattr_init
(globus_ftp_client_handleattr_t *attr)
Destroy
globus_result_t globus_ftp_client_handleattr_destroy
(globus_ftp_client_handleattr_t *attr)
Copy
globus_result_t globus_ftp_client_handleattr_copy
(globus_ftp_client_handleattr_t *dest,
globus_ftp_client_handleattr_t *src)
Connection Caching
globus_result_t globus_ftp_client_handleattr_set_cache_all
(globus_ftp_client_handleattr_t *attr, globus_bool_t cache_all)
globus_result_t globus_ftp_client_handleattr_get_cache_all (const
globus_ftp_client_handleattr_t *attr, globus_bool_t *cache_all)
Non-root relative URLs
globus_result_t globus_ftp_client_handleattr_set_rfc1738_url
(globus_ftp_client_handleattr_t *attr, globus_bool_t rfc1738_url)
globus_result_t globus_ftp_client_handleattr_get_rfc1738_url (const
globus_ftp_client_handleattr_t *attr, globus_bool_t *rfc1738_url)
Client Info
globus_result_t globus_ftp_client_handleattr_set_clientinfo
(globus_ftp_client_handleattr_t *attr, const char *app_name, const
char *app_version, const char *other)
globus_result_t globus_ftp_client_handleattr_get_clientinfo
(globus_ftp_client_handleattr_t *attr, char **app_name, char
**app_version, char **other)
GridFTP2 support
globus_result_t globus_ftp_client_handleattr_set_gridftp2
(globus_ftp_client_handleattr_t *attr, globus_bool_t gridftp2)
globus_result_t globus_ftp_client_handleattr_get_gridftp2 (const
globus_ftp_client_handleattr_t *attr, globus_bool_t *gridftp2)
Command Pipelining
globus_result_t globus_ftp_client_handleattr_set_pipeline
(globus_ftp_client_handleattr_t *attr, globus_size_t
outstanding_commands, globus_ftp_client_pipeline_callback_t
pipeline_callback, void *pipeline_arg)
globus_result_t globus_ftp_client_handleattr_get_pipeline (const
globus_ftp_client_handleattr_t *attr, globus_size_t
*outstanding_commands, globus_ftp_client_pipeline_callback_t
*pipeline_callback, void **pipeline_arg)
URL Caching
globus_result_t globus_ftp_client_handleattr_add_cached_url
(globus_ftp_client_handleattr_t *attr, const char *url)
globus_result_t globus_ftp_client_handleattr_remove_cached_url
(globus_ftp_client_handleattr_t *attr, const char *url)
Netlogger management
globus_result_t globus_ftp_client_handleattr_set_netlogger
(globus_ftp_client_handleattr_t *attr, globus_netlogger_handle_t
*nl_handle)
globus_result_t globus_ftp_client_handleattr_set_netlogger_ftp_io
(globus_ftp_client_handleattr_t *attr, globus_netlogger_handle_t
*nl_handle, globus_bool_t ftp, globus_bool_t io)
Plugin Management
globus_result_t globus_ftp_client_handleattr_add_plugin
(globus_ftp_client_handleattr_t *attr, globus_ftp_client_plugin_t
*plugin)
globus_result_t globus_ftp_client_handleattr_remove_plugin
(globus_ftp_client_handleattr_t *attr, globus_ftp_client_plugin_t
*plugin)
Detailed Description
Handle attributes are used to control additional features of the FTP
Client handle.
These features are operation independent.
The attribute which can currently set on a handle concern the
connection caching behavior of the handle, and the associations of
plugins with a handle.
See also:
globus_ftp_client_handle_t
Typedef Documentation
typedef struct globus_i_ftp_client_handleattr_t*
globus_ftp_client_handleattr_t
Handle Attributes. Handle attributes are used to control the caching
behavior of the ftp client handle, and to implement the plugin features
for reliability and performance tuning.
See also:
globus_ftp_client_handle_t, Handle Attributes
Function Documentation
globus_result_t globus_ftp_client_handleattr_init
(globus_ftp_client_handleattr_t * attr)
Initialize an FTP client handle attribute set. This function creates an
empty FTP Client handle attribute set. This function must be called on
each attribute set before any of the other functions in this section
may be called.
Parameters:
attr The new handle attribute.
See also:
globus_ftp_client_handleattr_destroy()
globus_result_t globus_ftp_client_handleattr_destroy
(globus_ftp_client_handleattr_t * attr)
Destroy an FTP client handle attribute set. This function destroys an
ftp client handle attribute set. All attributes on this set will be
lost. The user must call globus_ftp_client_handleattr_init() again on
this attribute set before calling any other handle attribute functions
on it.
Parameters:
attr The attribute set to destroy.
globus_result_t globus_ftp_client_handleattr_copy
(globus_ftp_client_handleattr_t * dest, globus_ftp_client_handleattr_t
* src)
Create a duplicate of a handle attribute set. The duplicated attribute
set has a deep copy of all data in the attribute set, so the original
may be destroyed while the copy is still valid.
Parameters:
dest The attribute set to be initialized to the same values as src.
src The original attribute set to duplicate.
globus_result_t globus_ftp_client_handleattr_set_cache_all
(globus_ftp_client_handleattr_t * attr, globus_bool_t cache_all)
Set/Get the cache all connections attribute for an ftp client handle
attribute set. This attribute allows the user to cause all control
connections to be cached between ftp operations. When this is enabled,
the user skips the authentication handshake and connection
establishment overhead for multiple subsequent ftp operations to the
same server.
Memory and network connections associated with the caching will be used
until the handle is destroyed. If fine grained caching is needed, then
the user should disable this attribute and explicitly cache specific
URLs.
Parameters:
attr Attribute to query or modify.
cache_all Value of the cache_all attribute.
See also:
globus_ftp_client_handleattr_add_cached_url(),
globus_ftp_client_handleattr_remove_cached_url(),
globus_ftp_client_handle_cache_url_state()
globus_ftp_client_handle_flush_url_state()
globus_result_t globus_ftp_client_handleattr_set_rfc1738_url
(globus_ftp_client_handleattr_t * attr, globus_bool_t rfc1738_url)
Enable/Disable rfc1738 support for non-root relative URLs. Parameters:
attr Attribute to modify
rfc1738_url Set to GLOBUS_TRUE to enable non-root relative URLs.
Default of GLOBUS_FALSE specifies root-relative URLs.
globus_result_t globus_ftp_client_handleattr_set_clientinfo
(globus_ftp_client_handleattr_t * attr, const char * app_name, const
char * app_version, const char * other)
Set/Get client info reported to server. Parameters:
attr Attribute to modify
app_name Name of client application.
app_version Client application specific version string.
other Additional client info to be reported to the server. This may
be used to pass custom info to a custom server module. The format
of the string must be: key1=’value1’;key2=’value2’;[keyn=’valuen’;]
Any parameter may be NULL. By default, generic library info will be
reported to the server -- set all NULL to disable this.
globus_result_t globus_ftp_client_handleattr_set_gridftp2
(globus_ftp_client_handleattr_t * attr, globus_bool_t gridftp2)
Enable/Disable GridFTP2 [GFD.41] support for servers supporting it.
Parameters:
attr Attribute to modify
gridftp2 Set to GLOBUS_TRUE to enable GridFTP2 support. Default of
GLOBUS_FALSE specifies that GridFTP is disabled.
globus_result_t globus_ftp_client_handleattr_set_pipeline
(globus_ftp_client_handleattr_t * attr, globus_size_t
outstanding_commands, globus_ftp_client_pipeline_callback_t
pipeline_callback, void * pipeline_arg)
Enable/Disable command queueing for pipelined transfers. Parameters:
attr Attribute to modify
outstanding_commands Set to the number of commands to have sent
without receiving a reply. Use 0 for the library default.
pipeline_callback Set to a function of type
globus_ftp_client_pipeline_callback_t to enable command pipelining.
This function will be called during a transfer operation to request
the next urls to be transferred.
pipeline_arg User data that will be passed in the
pipeline_callback.
globus_result_t globus_ftp_client_handleattr_add_cached_url
(globus_ftp_client_handleattr_t * attr, const char * url)
Enable/Disable caching for a specific URL. This function adds/removes
the specified URL into the default cache for a handle attribute.
Handles initialized with this attr will keep connections to FTP servers
associated with the URLs in its cache open between operations .
Parameters:
attr Attribute to modify
url URL string to cache
globus_result_t globus_ftp_client_handleattr_remove_cached_url
(globus_ftp_client_handleattr_t * attr, const char * url)
Enable/Disable caching for a specific URL. This function adds/removes
the specified URL into the default cache for a handle attribute.
Handles initialized with this attr will keep connections to FTP servers
associated with the URLs in its cache open between operations .
Parameters:
attr Attribute to modify
url URL string to cache
globus_result_t globus_ftp_client_handleattr_set_netlogger
(globus_ftp_client_handleattr_t * attr, globus_netlogger_handle_t *
nl_handle)
Set the netlogger handle used with this transfer. Each handle can have
a netlogger handle associated with it for logging its data.
Only 1 netlogger handle can be associated with a client handle.
Parameters:
attr The attribute set to modify.
nl_handle The open netlogger handle to be associated with this
attribute set.
globus_result_t globus_ftp_client_handleattr_add_plugin
(globus_ftp_client_handleattr_t * attr, globus_ftp_client_plugin_t *
plugin)
Add/Remove a plugin to a handle attribute set. Each handle attribute
set contains a list of plugins associated with it. When a handle is
created with a particular attribute set, it will be associated with a
copy of those plugins.
Only one instance of a specific plugin may be added to an attribute
set. Each plugin must have a different name.
A copy of the plugin is created via the plugins ’copy’ method when it
is added to an attribute set. Thus, any changes to a particular plugin
must be done before the plugin is added to an attribute set, and before
the attribute set is used to create handles.
Parameters:
attr The attribute set to modify.
plugin The plugin to add or remove from the list.
globus_result_t globus_ftp_client_handleattr_get_cache_all (const
globus_ftp_client_handleattr_t * attr, globus_bool_t * cache_all)
Set/Get the cache all connections attribute for an ftp client handle
attribute set. This attribute allows the user to cause all control
connections to be cached between ftp operations. When this is enabled,
the user skips the authentication handshake and connection
establishment overhead for multiple subsequent ftp operations to the
same server.
Memory and network connections associated with the caching will be used
until the handle is destroyed. If fine grained caching is needed, then
the user should disable this attribute and explicitly cache specific
URLs.
Parameters:
attr Attribute to query or modify.
cache_all Value of the cache_all attribute.
See also:
globus_ftp_client_handleattr_add_cached_url(),
globus_ftp_client_handleattr_remove_cached_url(),
globus_ftp_client_handle_cache_url_state()
globus_ftp_client_handle_flush_url_state()
globus_result_t globus_ftp_client_handleattr_get_rfc1738_url (const
globus_ftp_client_handleattr_t * attr, globus_bool_t * rfc1738_url)
Enable/Disable rfc1738 support for non-root relative URLs. Parameters:
attr Attribute to modify
rfc1738_url Set to GLOBUS_TRUE to enable non-root relative URLs.
Default of GLOBUS_FALSE specifies root-relative URLs.
globus_result_t globus_ftp_client_handleattr_get_clientinfo
(globus_ftp_client_handleattr_t * attr, char ** app_name, char **
app_version, char ** other)
Set/Get client info reported to server. Parameters:
attr Attribute to modify
app_name Name of client application.
app_version Client application specific version string.
other Additional client info to be reported to the server. This may
be used to pass custom info to a custom server module. The format
of the string must be: key1=’value1’;key2=’value2’;[keyn=’valuen’;]
Any parameter may be NULL. By default, generic library info will be
reported to the server -- set all NULL to disable this.
globus_result_t globus_ftp_client_handleattr_get_gridftp2 (const
globus_ftp_client_handleattr_t * attr, globus_bool_t * gridftp2)
Enable/Disable GridFTP2 [GFD.41] support for servers supporting it.
Parameters:
attr Attribute to modify
gridftp2 Set to GLOBUS_TRUE to enable GridFTP2 support. Default of
GLOBUS_FALSE specifies that GridFTP is disabled.
globus_result_t globus_ftp_client_handleattr_get_pipeline (const
globus_ftp_client_handleattr_t * attr, globus_size_t *
outstanding_commands, globus_ftp_client_pipeline_callback_t *
pipeline_callback, void ** pipeline_arg)
Enable/Disable command queueing for pipelined transfers. Parameters:
attr Attribute to modify
outstanding_commands Set to the number of commands to have sent
without receiving a reply. Use 0 for the library default.
pipeline_callback Set to a function of type
globus_ftp_client_pipeline_callback_t to enable command pipelining.
This function will be called during a transfer operation to request
the next urls to be transferred.
pipeline_arg User data that will be passed in the
pipeline_callback.
globus_result_t globus_ftp_client_handleattr_set_netlogger_ftp_io
(globus_ftp_client_handleattr_t * attr, globus_netlogger_handle_t *
nl_handle, globus_bool_t ftp, globus_bool_t io)
Set the netlogger handle used with this transfer. Each handle can have
a netlogger handle associated with it for logging its data.
Only 1 netlogger handle can be associated with a client handle.
Parameters:
attr The attribute set to modify.
nl_handle The open netlogger handle to be associated with this
attribute set.
globus_result_t globus_ftp_client_handleattr_remove_plugin
(globus_ftp_client_handleattr_t * attr, globus_ftp_client_plugin_t *
plugin)
Add/Remove a plugin to a handle attribute set. Each handle attribute
set contains a list of plugins associated with it. When a handle is
created with a particular attribute set, it will be associated with a
copy of those plugins.
Only one instance of a specific plugin may be added to an attribute
set. Each plugin must have a different name.
A copy of the plugin is created via the plugins ’copy’ method when it
is added to an attribute set. Thus, any changes to a particular plugin
must be done before the plugin is added to an attribute set, and before
the attribute set is used to create handles.
Parameters:
attr The attribute set to modify.
plugin The plugin to add or remove from the list.
Author
Generated automatically by Doxygen for globus ftp client from the
source code.