.TH "globus_ftp_client_handleattr" 3 "Sun Dec 13 2020" "Version 9.5" "globus_ftp_client" \" -*- nroff -*- .ad l .nh .SH NAME globus_ftp_client_handleattr \- Handle Attributes .PP \- Handle Attributes\&. .SH SYNOPSIS .br .PP .SS "Data Structures" .in +1c .ti -1c .RI "struct \fBglobus_i_ftp_client_handleattr_t\fP" .br .RI "Handle attributes\&. " .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef struct \fBglobus_i_ftp_client_handleattr_t\fP * \fBglobus_ftp_client_handleattr_t\fP" .br .RI "Handle Attributes\&. " .ti -1c .RI "typedef struct \fBglobus_i_ftp_client_handleattr_t\fP \fBglobus_i_ftp_client_handleattr_t\fP" .br .RI "Handle attributes\&. " .in -1c .SS "Initialize" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_init\fP (\fBglobus_ftp_client_handleattr_t\fP *attr)" .br .in -1c .SS "Destroy" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_destroy\fP (\fBglobus_ftp_client_handleattr_t\fP *attr)" .br .ti -1c .RI "void \fBglobus_i_ftp_client_handleattr_destroy\fP (\fBglobus_i_ftp_client_handleattr_t\fP *i_attr)" .br .in -1c .SS "Copy" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_copy\fP (\fBglobus_ftp_client_handleattr_t\fP *dest, \fBglobus_ftp_client_handleattr_t\fP *src)" .br .in -1c .SS "Connection Caching" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_cache_all\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t cache_all)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_get_cache_all\fP (const \fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t *cache_all)" .br .in -1c .SS "Non-root relative URLs" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_rfc1738_url\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t rfc1738_url)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_get_rfc1738_url\fP (const \fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t *rfc1738_url)" .br .in -1c .SS "Client Info" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_clientinfo\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, const char *app_name, const char *app_version, const char *other)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_get_clientinfo\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, char **app_name, char **app_version, char **other)" .br .in -1c .SS "GridFTP2 support" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_gridftp2\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t gridftp2)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_get_gridftp2\fP (const \fBglobus_ftp_client_handleattr_t\fP *attr, globus_bool_t *gridftp2)" .br .in -1c .SS "Command Pipelining" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_pipeline\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_size_t outstanding_commands, globus_ftp_client_pipeline_callback_t pipeline_callback, void *pipeline_arg)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_get_pipeline\fP (const \fBglobus_ftp_client_handleattr_t\fP *attr, globus_size_t *outstanding_commands, globus_ftp_client_pipeline_callback_t *pipeline_callback, void **pipeline_arg)" .br .in -1c .SS "URL Caching" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_add_cached_url\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, const char *url)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_remove_cached_url\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, const char *url)" .br .in -1c .SS "Netlogger management" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_netlogger\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_netlogger_handle_t *nl_handle)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_set_netlogger_ftp_io\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, globus_netlogger_handle_t *nl_handle, globus_bool_t ftp, globus_bool_t io)" .br .in -1c .SS "Plugin Management" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_add_plugin\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, \fBglobus_ftp_client_plugin_t\fP *plugin)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_handleattr_remove_plugin\fP (\fBglobus_ftp_client_handleattr_t\fP *attr, \fBglobus_ftp_client_plugin_t\fP *plugin)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_operationattr_init\fP (\fBglobus_ftp_client_operationattr_t\fP *attr)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_operationattr_destroy\fP (\fBglobus_ftp_client_operationattr_t\fP *attr)" .br .in -1c .SH "Detailed Description" .PP Handle Attributes\&. Handle attributes are used to control additional features of the FTP Client handle\&. These features are operation independent\&. .PP 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\&. .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_handle_t\fP .RE .PP .SH "Typedef Documentation" .PP .SS "typedef struct \fBglobus_i_ftp_client_handleattr_t\fP* \fBglobus_ftp_client_handleattr_t\fP" .PP 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\&. .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_handle_t\fP, \fBHandle Attributes\fP .RE .PP .SH "Function Documentation" .PP .SS "globus_result_t globus_ftp_client_handleattr_add_cached_url (\fBglobus_ftp_client_handleattr_t\fP * attr, const char * url)" Enable/Disable caching for a specific URL\&. .PP 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 \fBoperations \fP\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to modify .br \fIurl\fP URL string to cache .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_add_plugin (\fBglobus_ftp_client_handleattr_t\fP * attr, \fBglobus_ftp_client_plugin_t\fP * plugin)" Add/Remove a plugin to a handle attribute set\&. .PP 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\&. .PP Only one instance of a specific plugin may be added to an attribute set\&. Each plugin must have a different name\&. .PP 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\&. .PP \fBParameters\fP .RS 4 \fIattr\fP The attribute set to modify\&. .br \fIplugin\fP The plugin to add or remove from the list\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_copy (\fBglobus_ftp_client_handleattr_t\fP * dest, \fBglobus_ftp_client_handleattr_t\fP * src)" Create a duplicate of a handle attribute set\&. .PP 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\&. .PP \fBParameters\fP .RS 4 \fIdest\fP The attribute set to be initialized to the same values as src\&. .br \fIsrc\fP The original attribute set to duplicate\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_destroy (\fBglobus_ftp_client_handleattr_t\fP * attr)" Destroy an FTP client handle attribute set\&. .PP This function destroys an ftp client handle attribute set\&. All attributes on this set will be lost\&. The user must call \fBglobus_ftp_client_handleattr_init()\fP again on this attribute set before calling any other handle attribute functions on it\&. .PP \fBParameters\fP .RS 4 \fIattr\fP The attribute set to destroy\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_init (\fBglobus_ftp_client_handleattr_t\fP * attr)" Initialize an FTP client handle attribute set\&. .PP 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\&. .PP \fBParameters\fP .RS 4 \fIattr\fP The new handle attribute\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_handleattr_destroy()\fP .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_set_cache_all (\fBglobus_ftp_client_handleattr_t\fP * attr, globus_bool_t cache_all)" Set/Get the cache all connections attribute for an ftp client handle attribute set\&. .PP 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\&. .PP 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\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to query or modify\&. .br \fIcache_all\fP Value of the cache_all attribute\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_handleattr_add_cached_url()\fP, globus_ftp_client_handleattr_remove_cached_url(), \fBglobus_ftp_client_handle_cache_url_state()\fP \fBglobus_ftp_client_handle_flush_url_state()\fP .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_set_clientinfo (\fBglobus_ftp_client_handleattr_t\fP * attr, const char * app_name, const char * app_version, const char * other)" Set/Get client info reported to server\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to modify .br \fIapp_name\fP Name of client application\&. .br \fIapp_version\fP Client application specific version string\&. .br \fIother\fP 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';] .RE .PP Any parameter may be NULL\&. By default, generic library info will be reported to the server -- set all NULL to disable this\&. .br .SS "globus_result_t globus_ftp_client_handleattr_set_gridftp2 (\fBglobus_ftp_client_handleattr_t\fP * attr, globus_bool_t gridftp2)" Enable/Disable GridFTP2 [GFD\&.41] support for servers supporting it\&. This currently only applies to the GET/PUT command\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to modify .br \fIgridftp2\fP Set to GLOBUS_FALSE to disable GridFTP2 support\&. GridFTP2 support is enabled by default for servers that support it\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_set_netlogger (\fBglobus_ftp_client_handleattr_t\fP * attr, globus_netlogger_handle_t * nl_handle)" Set the netlogger handle used with this transfer\&. .PP Each handle can have a netlogger handle associated with it for logging its data\&. .PP Only 1 netlogger handle can be associated with a client handle\&. .PP \fBParameters\fP .RS 4 \fIattr\fP The attribute set to modify\&. .br \fInl_handle\fP The open netlogger handle to be associated with this attribute set\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_set_pipeline (\fBglobus_ftp_client_handleattr_t\fP * attr, globus_size_t outstanding_commands, globus_ftp_client_pipeline_callback_t pipeline_callback, void * pipeline_arg)" Enable/Disable command queueing for pipelined transfers\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to modify .br \fIoutstanding_commands\fP Set to the number of commands to have sent without receiving a reply\&. Use 0 for the library default\&. .br \fIpipeline_callback\fP 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\&. .br \fIpipeline_arg\fP User data that will be passed in the pipeline_callback\&. .RE .PP .SS "globus_result_t globus_ftp_client_handleattr_set_rfc1738_url (\fBglobus_ftp_client_handleattr_t\fP * attr, globus_bool_t rfc1738_url)" Enable/Disable rfc1738 support for non-root relative URLs\&. .PP \fBParameters\fP .RS 4 \fIattr\fP Attribute to modify .br \fIrfc1738_url\fP Set to GLOBUS_TRUE to enable non-root relative URLs\&. Default of GLOBUS_FALSE specifies root-relative URLs\&. .RE .PP .SS "globus_result_t globus_ftp_client_operationattr_destroy (\fBglobus_ftp_client_operationattr_t\fP * attr)" Destroy an FTP client attribute set\&. .PP \fBParameters\fP .RS 4 \fIattr\fP A pointer to the attribute to destroy\&. .RE .PP .SS "globus_result_t globus_ftp_client_operationattr_init (\fBglobus_ftp_client_operationattr_t\fP * attr)" Initialize an FTP client attribute set\&. .PP \fBParameters\fP .RS 4 \fIattr\fP A pointer to the new attribute set\&. .RE .PP .SH "Author" .PP Generated automatically by Doxygen for globus_ftp_client from the source code\&.