Provided by: libglobus-ftp-client-doc_8.27-2_all bug

NAME

       globus_ftp_client_restart_plugin - Restart Plugin

   Macros
       #define GLOBUS_FTP_CLIENT_RESTART_PLUGIN_MODULE
           (&globus_i_ftp_client_restart_plugin_module)

   Functions
       globus_result_t globus_ftp_client_restart_plugin_init (globus_ftp_client_plugin_t *plugin,
           int max_retries, globus_reltime_t *interval, globus_abstime_t *deadline)
       globus_result_t globus_ftp_client_restart_plugin_destroy (globus_ftp_client_plugin_t
           *plugin)

Detailed Description

       The restart plugin implements one scheme for providing reliability functionality for the
       FTP Client library. Other plugins may be developed to provide other methods of
       reliability.

       The specific functionality of this plugin is to restart any FTP operation when a fault
       occurs. The plugin's operation is parameterized to control how often and when to attempt
       to restart the operation.

       This restart plugin will restart an FTP operation if a noticeable fault has occurred---a
       connection timing out, a failure by the server to process a command, a protocol error, an
       authentication error.

       This plugin has three user-configurable parameters; these are the maximum number of
       retries to attempt, the interval to wait between retries, and the deadline after which no
       further retries will be attempted. These are set by initializing a restart plugin instance
       with the function globus_ftp_client_restart_plugin_init().

Macro Definition Documentation

   #define GLOBUS_FTP_CLIENT_RESTART_PLUGIN_MODULE   (&globus_i_ftp_client_restart_plugin_module)
       Module descriptor

Function Documentation

   globus_result_t globus_ftp_client_restart_plugin_destroy (globus_ftp_client_plugin_t * plugin)
       Destroy an instance of the GridFTP restart plugin

       This function will free all restart plugin-specific instance data from this plugin, and
       will make the plugin unusable for further ftp handle creation.

       Existing FTP client handles and handle attributes will not be affected by destroying a
       plugin associated with them, as a local copy of the plugin is made upon handle
       initialization.

       Parameters:
           plugin A pointer to a GridFTP restart plugin, previously initialized by calling
           globus_ftp_client_restart_plugin_init()

       Returns:
           This function returns an error if

           • plugin is null

           • plugin is not a restart plugin

       See also:
           globus_ftp_client_restart_plugin_init(), globus_ftp_client_handleattr_add_plugin(),
           globus_ftp_client_handleattr_remove_plugin(), globus_ftp_client_handle_init()

   globus_result_t globus_ftp_client_restart_plugin_init (globus_ftp_client_plugin_t * plugin,
       int max_retries, globus_reltime_t * interval, globus_abstime_t * deadline)
       Initialize an instance of the GridFTP restart plugin

       This function will initialize the plugin-specific instance data for this plugin, and will
       make the plugin usable for ftp client handle attribute and handle creation.

       Parameters:
           plugin A pointer to an uninitialized plugin. The plugin will be configured as a
           restart plugin.
           max_retries The maximum number of times to retry the operation before giving up on the
           transfer. If this value is less than or equal to 0, then the restart plugin will keep
           trying to restart the operation until it completes or the deadline is reached with an
           unsuccessful operation.
           interval The interval to wait after a failures before retrying the transfer. If the
           interval is 0 seconds or GLOBUS_NULL, then an exponential backoff will be used.
           deadline An absolute timeout. If the deadline is GLOBUS_NULL then the retry will never
           timeout.

       Returns:
           This function returns an error if

           • plugin is null

       See also:
           globus_ftp_client_restart_plugin_destroy(), globus_ftp_client_handleattr_add_plugin(),
           globus_ftp_client_handleattr_remove_plugin(), globus_ftp_client_handle_init()

Author

       Generated automatically by Doxygen for globus_ftp_client from the source code.