Sophie

Sophie

distrib > Fedora > 17 > i386 > by-pkgid > a5792cbc6dcdf6bdde626c0724c2c85a > files > 54

globus-ftp-client-doc-7.4-1.fc17.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<!-- THIS FILE IS AUTOMATICALLY GENERATED FROM THE GLOBUS SOURCE CODE
     DO NOT MODIFY.
-->
<title>Globus Reference Manual</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head>
<body>
<!-- Generated by Doxygen 1.8.1.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__globus__ftp__client__plugins.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#groups">Modules</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Plugins</div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Collaboration diagram for Plugins:</div>
<div class="dyncontent">
<center><table><tr><td><img src="group__globus__ftp__client__plugins.png" border="0" alt="" usemap="#group____globus____ftp____client____plugins"/>
<map name="group____globus____ftp____client____plugins" id="group____globus____ftp____client____plugins">
<area shape="rect" id="node2" href="group__globus__ftp__client__throughput__nl__plugin.html" title="This plugin allows a user to easily use the throughput plugin to log performance data vi Netlogger..." alt="" coords="129,5,276,46"/><area shape="rect" id="node3" href="group__globus__ftp__client__restart__marker__plugin.html" title="This plugin is intended to allow users to make restart markers persistent." alt="" coords="128,71,277,97"/><area shape="rect" id="node4" href="group__globus__ftp__client__restart__plugin.html" title="The restart plugin implements one scheme for providing reliability functionality for the FTP Client l..." alt="" coords="150,121,255,148"/><area shape="rect" id="node5" href="group__globus__ftp__client__throughput__plugin.html" title="The FTP Throughput Performance plugin allows the user to obtain calculated performance information fo..." alt="" coords="120,173,285,214"/><area shape="rect" id="node6" href="group__globus__ftp__client__perf__plugin.html" title="The FTP Performance Marker plugin allows the user to obtain performance markers for all types of tran..." alt="" coords="133,238,273,279"/><area shape="rect" id="node7" href="group__globus__ftp__client__debug__plugin.html" title="The FTP Debugging plugin provides a way for the user to trace FTP protocol messages which occur while..." alt="" coords="141,304,265,331"/></map>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:group__globus__ftp__client__debug__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__debug__plugin.html">Debugging Plugin</a></td></tr>
<tr class="memitem:group__globus__ftp__client__perf__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__perf__plugin.html">Performance Marker Plugin</a></td></tr>
<tr class="memitem:group__globus__ftp__client__restart__marker__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__restart__marker__plugin.html">Restart Marker Plugin</a></td></tr>
<tr class="memitem:group__globus__ftp__client__restart__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__restart__plugin.html">Restart Plugin</a></td></tr>
<tr class="memitem:group__globus__ftp__client__throughput__nl__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html">Netlogger Throughput Plugin</a></td></tr>
<tr class="memitem:group__globus__ftp__client__throughput__plugin"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__plugin.html">Throughput Performance Plugin</a></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gafd650bbeee4bf50b94275d89352697dc"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
globus_i_ftp_client_plugin_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a></td></tr>
<tr class="memitem:gaa1063f0ada2846eed3e7c209c467b333"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaa1063f0ada2846eed3e7c209c467b333">globus_ftp_client_plugin_copy_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin_template, void *plugin_specific)</td></tr>
<tr class="memitem:ga12bd0b713a48c1a90a8b432e7710fd14"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga12bd0b713a48c1a90a8b432e7710fd14">globus_ftp_client_plugin_destroy_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific)</td></tr>
<tr class="memitem:ga2ffad2a5069aaf467d0caf534d46da78"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga2ffad2a5069aaf467d0caf534d46da78">globus_ftp_client_plugin_connect_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url)</td></tr>
<tr class="memitem:gaf52ec4aacee7cd1e10ff5a061f9c39a3"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaf52ec4aacee7cd1e10ff5a061f9c39a3">globus_ftp_client_plugin_authenticate_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="elRef" href="globus__ftp__control_8h.html#aa584e4697688c843a840c6d5156ddeff">globus_ftp_control_auth_info_t</a> *auth_info)</td></tr>
<tr class="memitem:gab3aa529572c947577798fafbc62347bb"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gab3aa529572c947577798fafbc62347bb">globus_ftp_client_plugin_chmod_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, int mode, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga0c535e9e791ae057e9c21d3afda87bee"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga0c535e9e791ae057e9c21d3afda87bee">globus_ftp_client_plugin_chgrp_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *group, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga920a87764eb284e7fe018ddb986c089d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga920a87764eb284e7fe018ddb986c089d">globus_ftp_client_plugin_utime_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const struct tm *utime_time, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gab67bcb96450773631f77c630386fd9e8"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gab67bcb96450773631f77c630386fd9e8">globus_ftp_client_plugin_symlink_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *utime_time, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gae8b05da04bb0f1daf1c02571b121e9b0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gae8b05da04bb0f1daf1c02571b121e9b0">globus_ftp_client_plugin_cksm_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_off_t offset, globus_off_t length, const char *algorithm, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gaa4ef12657374f961eccfef2603082360"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaa4ef12657374f961eccfef2603082360">globus_ftp_client_plugin_delete_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gadee692c1aa851711b0033b65c04ad3c4"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gadee692c1aa851711b0033b65c04ad3c4">globus_ftp_client_plugin_feat_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga910b99bed09d89af8635789f1f61aa2d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga910b99bed09d89af8635789f1f61aa2d">globus_ftp_client_plugin_mkdir_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gae4c51c05bc88d6d2e82720b671a555d2"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gae4c51c05bc88d6d2e82720b671a555d2">globus_ftp_client_plugin_rmdir_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga68008b0f0e7f0e860b7b88827ba8c5eb"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga68008b0f0e7f0e860b7b88827ba8c5eb">globus_ftp_client_plugin_list_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gafbdacf5114a4bba0e8bfbed83e4f5c8e"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gafbdacf5114a4bba0e8bfbed83e4f5c8e">globus_ftp_client_plugin_verbose_list_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gaa79eca258a887e8a3e22ff10a3493e65"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaa79eca258a887e8a3e22ff10a3493e65">globus_ftp_client_plugin_machine_list_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga0be1dab77a954904666be596aa076eea"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga0be1dab77a954904666be596aa076eea">globus_ftp_client_plugin_recursive_list_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga0d0cbaa306af4eab54839403d2c8c3a9"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga0d0cbaa306af4eab54839403d2c8c3a9">globus_ftp_client_plugin_mlst_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga641bfd78a9fb19a17788e3ff70d3b62d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga641bfd78a9fb19a17788e3ff70d3b62d">globus_ftp_client_plugin_stat_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gaa825b62035e2a9e7a82a084dcd28042f"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaa825b62035e2a9e7a82a084dcd28042f">globus_ftp_client_plugin_move_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gad05f08b66c61667b72f4e44727452c4b"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad05f08b66c61667b72f4e44727452c4b">globus_ftp_client_plugin_get_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga2f9ee1d87d1874300ffdda8cf20ecc82"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga2f9ee1d87d1874300ffdda8cf20ecc82">globus_ftp_client_plugin_put_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gabcbfe1e197253b633181a4a2b227548d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gabcbfe1e197253b633181a4a2b227548d">globus_ftp_client_plugin_third_party_transfer_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *source_attr, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *dest_attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga8b3f1cc76e5dc8102c6c4650d5394938"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga8b3f1cc76e5dc8102c6c4650d5394938">globus_ftp_client_plugin_modification_time_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:ga02e7a387de4956d334d5b523fe0bc645"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga02e7a387de4956d334d5b523fe0bc645">globus_ftp_client_plugin_size_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td></tr>
<tr class="memitem:gad503123448bbc72918b8c45d4b1bf670"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad503123448bbc72918b8c45d4b1bf670">globus_ftp_client_plugin_abort_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle)</td></tr>
<tr class="memitem:ga8fdb9944984d00ac533c2265c81268d3"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga8fdb9944984d00ac533c2265c81268d3">globus_ftp_client_plugin_read_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const globus_byte_t *buffer, globus_size_t buffer_length)</td></tr>
<tr class="memitem:ga9145e67235ecb6f9a47571a8460d84a0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga9145e67235ecb6f9a47571a8460d84a0">globus_ftp_client_plugin_write_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const globus_byte_t *buffer, globus_size_t buffer_length, globus_off_t offset, globus_bool_t eof)</td></tr>
<tr class="memitem:gaa75bb52aabbdc1dc2a4d262aa23cc8fc"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaa75bb52aabbdc1dc2a4d262aa23cc8fc">globus_ftp_client_plugin_data_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, globus_object_t *error, const globus_byte_t *buffer, globus_size_t length, globus_off_t offset, globus_bool_t eof)</td></tr>
<tr class="memitem:gae68f94b07e743807c7046dd8e27737e4"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gae68f94b07e743807c7046dd8e27737e4">globus_ftp_client_plugin_command_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *command)</td></tr>
<tr class="memitem:ga74af8f8ef0dad0ed0b590809c3c867e9"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga74af8f8ef0dad0ed0b590809c3c867e9">globus_ftp_client_plugin_response_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_object_t *error, const globus_ftp_control_response_t *ftp_response)</td></tr>
<tr class="memitem:ga0cfe4a2c876054e7e87f19dac25e6c45"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga0cfe4a2c876054e7e87f19dac25e6c45">globus_ftp_client_plugin_fault_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_object_t *error)</td></tr>
<tr class="memitem:ga69c5c6996793f08a00aec1d0a459d489"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga69c5c6996793f08a00aec1d0a459d489">globus_ftp_client_plugin_complete_t</a> )(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga3a2339a2213742216f3ebb3b1a38c219"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga3a2339a2213742216f3ebb3b1a38c219">globus_ftp_client_plugin_command_mask_t</a> { , <br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a6c6e590465519f7204237b865817dad1">GLOBUS_FTP_CLIENT_CMD_MASK_CONTROL_ESTABLISHMENT</a> =  1&lt;&lt;0, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a25f583eeccf4ee671a158176df5d1b6c">GLOBUS_FTP_CLIENT_CMD_MASK_DATA_ESTABLISHMENT</a> =  1&lt;&lt;1, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a43a85f9d26ee85bd52765829ac0f4d69">GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_PARAMETERS</a> =  1&lt;&lt;2, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a0bd20495afc23eef8d56feffd24c501f">GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_MODIFIERS</a> =  1&lt;&lt;3, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219afa4dda7dad9bd75aa17b6d0c4e919c42">GLOBUS_FTP_CLIENT_CMD_MASK_FILE_ACTIONS</a> =  1&lt;&lt;4, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a802c5efa7044030b81aa6b8748347c0d">GLOBUS_FTP_CLIENT_CMD_MASK_INFORMATION</a> =  1&lt;&lt;5, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a6afecdef13d4c06f913de440f2fc2675">GLOBUS_FTP_CLIENT_CMD_MASK_MISC</a> =  1&lt;&lt;6, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a0657e551fad686734548558da125dfa5">GLOBUS_FTP_CLIENT_CMD_MASK_BUFFER</a> =  1&lt;&lt;7, 
<br/>
&#160;&#160;<a class="el" href="group__globus__ftp__client__plugins.html#gga3a2339a2213742216f3ebb3b1a38c219a73a57d6f2268824be2e307763f66a9aa">GLOBUS_FTP_CLIENT_CMD_MASK_ALL</a> =  0x7fffffff
<br/>
 }</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae21f20896af8d597bc35b21595a3c16c"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gae21f20896af8d597bc35b21595a3c16c">globus_ftp_client_plugin_restart_list</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gad4fc65cc942f2ac143593ba186e1063a"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad4fc65cc942f2ac143593ba186e1063a">globus_ftp_client_plugin_restart_verbose_list</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga43872fdeb583852ddbc3adc5b9b43847"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga43872fdeb583852ddbc3adc5b9b43847">globus_ftp_client_plugin_restart_machine_list</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga5a54436b578f85a46389c1464f3085e9"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga5a54436b578f85a46389c1464f3085e9">globus_ftp_client_plugin_restart_recursive_list</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gad5e503ca6acdc8edb37188e695508012"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad5e503ca6acdc8edb37188e695508012">globus_ftp_client_plugin_restart_mlst</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga487afdb2b11d28e8bf4ac69ffaf6c60f"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga487afdb2b11d28e8bf4ac69ffaf6c60f">globus_ftp_client_plugin_restart_stat</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga10cb791dbdaae77957f5088bcb766c12"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga10cb791dbdaae77957f5088bcb766c12">globus_ftp_client_plugin_restart_chmod</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, int mode, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gaafad0faa1d0d2b65abb7e7c0932677ee"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaafad0faa1d0d2b65abb7e7c0932677ee">globus_ftp_client_plugin_restart_chgrp</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *group, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga56b1704f9582eaa849a3d4f53d4f5b00"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga56b1704f9582eaa849a3d4f53d4f5b00">globus_ftp_client_plugin_restart_utime</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const struct tm *utime_time, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga56f4fcabff95ae7594399442c2bc2d06"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga56f4fcabff95ae7594399442c2bc2d06">globus_ftp_client_plugin_restart_symlink</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *link_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gab30060d5eb1fa376659bd95dcffb4b19"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gab30060d5eb1fa376659bd95dcffb4b19">globus_ftp_client_plugin_restart_cksm</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_off_t offset, globus_off_t length, const char *algorithm, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga11863668a2368ebde4841cae3afb05e2"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga11863668a2368ebde4841cae3afb05e2">globus_ftp_client_plugin_restart_delete</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gaad1c1fdf45f31a640360ff08e348127d"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaad1c1fdf45f31a640360ff08e348127d">globus_ftp_client_plugin_restart_feat</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gaedf21d52e71ce4ac902bdcd4ec2494d2"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaedf21d52e71ce4ac902bdcd4ec2494d2">globus_ftp_client_plugin_restart_mkdir</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gacb764084f0039e86cf320c07a278c83d"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gacb764084f0039e86cf320c07a278c83d">globus_ftp_client_plugin_restart_rmdir</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gaec071567e01d0f461e72eec41ba97d4b"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaec071567e01d0f461e72eec41ba97d4b">globus_ftp_client_plugin_restart_move</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga92053dba220bb6fafbe6e6170308fc49"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga92053dba220bb6fafbe6e6170308fc49">globus_ftp_client_plugin_restart_get</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, <a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *restart_marker, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gaadbd94770f855309efe78ec046b2eb37"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gaadbd94770f855309efe78ec046b2eb37">globus_ftp_client_plugin_restart_put</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, <a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *restart_marker, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga87338d1c3c3b50a5c2d4175bf0b5921c"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga87338d1c3c3b50a5c2d4175bf0b5921c">globus_ftp_client_plugin_restart_third_party_transfer</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *source_attr, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *dest_attr, <a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *restart_marker, const globus_abstime_t *when)</td></tr>
<tr class="memitem:gad24eb13a34cab39e0c50d165a8ea14cd"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad24eb13a34cab39e0c50d165a8ea14cd">globus_ftp_client_plugin_restart_size</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga034eeab9c443fd3e62df62ea54f6a49e"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga034eeab9c443fd3e62df62ea54f6a49e">globus_ftp_client_plugin_restart_modification_time</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, const globus_abstime_t *when)</td></tr>
<tr class="memitem:ga7c913431569954260ea71511e8df12dc"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga7c913431569954260ea71511e8df12dc">globus_ftp_client_plugin_restart_get_marker</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, <a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *marker)</td></tr>
<tr class="memitem:ga2204d0cb34ea58c02d8e32c7671ef340"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga2204d0cb34ea58c02d8e32c7671ef340">globus_ftp_client_plugin_abort</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle)</td></tr>
<tr class="memitem:gad67868bf042e014d59ea00fd22938a66"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#gad67868bf042e014d59ea00fd22938a66">globus_ftp_client_plugin_add_data_channels</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, unsigned int num_channels, unsigned int stripe)</td></tr>
<tr class="memitem:ga197238252edb48664d9d7eb0b9e9b018"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__plugins.html#ga197238252edb48664d9d7eb0b9e9b018">globus_ftp_client_plugin_remove_data_channels</a> (<a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, unsigned int num_channels, unsigned int stripe)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Plugin API. </p>
<p>A plugin is a way to implement application-independent reliability and performance tuning behavior. Plugins are written using the API described in this document.</p>
<p>A plugin is created by defining a globus_ftp_client_plugin_t which contains the function pointers and plugin-specific data needed for the plugin's operation. It is recommended that a plugin define a a globus_module_descriptor_t and plugin initialization functions, to ensure that the plugin is properly initialized.</p>
<p>The functions pointed to in a plugin are called when significant events in the life of an FTP Client operation occur. Note that plugins will only be called when the plugin has the function pointer for both the operation (get, put, list, etc), and the event (connect, authenticate, command, etc), are defined. The command and response functions are filtered based on the command_mask defined in the plugin structure.</p>
<p>Every plugin must define <a class="el" href="group__globus__ftp__client__plugins.html#gaa1063f0ada2846eed3e7c209c467b333">copy </a> and <a class="el" href="group__globus__ftp__client__plugins.html#ga12bd0b713a48c1a90a8b432e7710fd14">destroy </a> functions. The copy function is called when the plugin is added to an attribute set or a handle is initialized with an attribute set containing the plugin. The destroy function is called when the handle or attribute set is destroyed. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="gafd650bbeee4bf50b94275d89352697dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct globus_i_ftp_client_plugin_t* <a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>FTP Client pluginAn FTP Client plugin is used to add restart, monitoring, and performance tuning operations to the FTP Client library, without modifying the base API. </p>
<p>Multiple plugins may be associated with a globus_ftp_client_handle_t.</p>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__globus__ftp__client__handle.html#ga571af4a23e8985f9b36e2df3320fdd1d" title="Initialize a client FTP handle.">globus_ftp_client_handle_init()</a>, <a class="el" href="group__globus__ftp__client__handle.html#gac40005934089e52e63d5588d53a468d6" title="Destroy a client FTP handle.">globus_ftp_client_handle_destroy()</a>, <a class="el" href="group__globus__ftp__client__handleattr.html#gab4a1b9fd7b91ba74a5beb576ac3e307d" title="Handle Attributes.">globus_ftp_client_handleattr_t</a>, <a class="el" href="group__globus__ftp__client__debug__plugin.html">Debugging Plugin </a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaa1063f0ada2846eed3e7c209c467b333"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a>*(* globus_ftp_client_plugin_copy_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin_template, void *plugin_specific)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin copy function. </p>
<p>This function is used to create a new copy or reference count a plugin. This function is called by the FTP Client library when a plugin is added to a handle attribute set, or when a handle is initialized with an attribute which contains the plugin.</p>
<p>A plugin may not call any of the plugin API functions from it's instantiate method.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin_template</td><td>A plugin previously initialized by a call to the plugin-specific initialization function. by the user. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>A pointer to a plugin. This plugin copy must remain valid until the copy's <a class="el" href="group__globus__ftp__client__plugins.html#ga12bd0b713a48c1a90a8b432e7710fd14">destroy</a> function is called on the copy.</dd></dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__globus__ftp__client__plugins.html#ga12bd0b713a48c1a90a8b432e7710fd14" title="Plugin destroy function.">globus_ftp_client_plugin_destroy_t</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga12bd0b713a48c1a90a8b432e7710fd14"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_destroy_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin destroy function. </p>
<p>This function is used to free or unreference a copy of a plugin which was allocated by calling the instantiate function from the plugin.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin, created by the create function, which is to be destroyed. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2ffad2a5069aaf467d0caf534d46da78"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_connect_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin connection begin function. </p>
<p>This callback is used to notify a plugin that connection establishment is being done for this client handle. This notification can occur when a new request is made or when a restart is done by a plugin.</p>
<p>If a response_callback is defined by a plugin, then that will be once the connection establishment has completed (successfully or unsuccessfully).</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the connection.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note:</dt><dd>This function will not be called for a get, put, or third-party transfer operation when a cached connection is used. </dd></dl>

</div>
</div>
<a class="anchor" id="gaf52ec4aacee7cd1e10ff5a061f9c39a3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_authenticate_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="elRef" href="globus__ftp__control_8h.html#aa584e4697688c843a840c6d5156ddeff">globus_ftp_control_auth_info_t</a> *auth_info)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin authentication notification callback. </p>
<p>This callback is used to notify a plugin that an authentication handshake is being done for this client handle. This notification can occur when a new request is made or when a hard restart is done by a plugin.</p>
<p>If a response_callback is defined by a plugin, then that will be once the authentication has completed (successfully or unsuccessfully).</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the connection. </td></tr>
    <tr><td class="paramname">url</td><td>The URL of the server to connect to. </td></tr>
    <tr><td class="paramname">auth_info</td><td>Authentication and authorization info being used to authenticate with the FTP or GridFTP server. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab3aa529572c947577798fafbc62347bb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_chmod_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, int mode, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin chmod notification callback. </p>
<p>This callback is used to notify a plugin that a chmod is being requested on a client handle. This notification happens both when the user requests a chmod, and when a plugin restarts the currently active chmod request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the chmod will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the delete operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to chmod. </td></tr>
    <tr><td class="paramname">mode</td><td>The file mode to be applied. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current delete operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0c535e9e791ae057e9c21d3afda87bee"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_chgrp_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *group, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin chgrp notification callback. </p>
<p>This callback is used to notify a plugin that a chgrp is being requested on a client handle. This notification happens both when the user requests a chgrp, and when a plugin restarts the currently active chgrp request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the chgrp will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the delete operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to chgrp. </td></tr>
    <tr><td class="paramname">group</td><td>The group name or ID to change to. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current delete operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga920a87764eb284e7fe018ddb986c089d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_utime_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const struct tm *utime_time, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin utime notification callback. </p>
<p>This callback is used to notify a plugin that a utime is being requested on a client handle. This notification happens both when the user requests a utime, and when a plugin restarts the currently active utime request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the utime will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the utime operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to utime. </td></tr>
    <tr><td class="paramname">utime_time</td><td>The modification time to change the file to. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current utime operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab67bcb96450773631f77c630386fd9e8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_symlink_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *utime_time, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin symlink notification callback. </p>
<p>This callback is used to notify a plugin that a symlink is being requested on a client handle. This notification happens both when the user requests a symlink, and when a plugin restarts the currently active symlink request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the symlink will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the symlink operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the new link. </td></tr>
    <tr><td class="paramname">link_url</td><td>The url to which the new link should point. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current utime operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae8b05da04bb0f1daf1c02571b121e9b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_cksm_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_off_t offset, globus_off_t length, const char *algorithm, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin cksm notification callback. </p>
<p>This callback is used to notify a plugin that a cksm is being requested on a client handle. This notification happens both when the user requests a cksm, and when a plugin restarts the currently active cksm request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the cksm will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the delete operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to cksm. </td></tr>
    <tr><td class="paramname">offset</td><td>File offset to start calculating checksum. </td></tr>
    <tr><td class="paramname">length</td><td>Length of data to read from the starting offset. Use -1 to read the entire file. </td></tr>
    <tr><td class="paramname">algorithm</td><td>A pointer to a string to be filled with the checksum of the file. On error the value pointed to by it is undefined. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current delete operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa4ef12657374f961eccfef2603082360"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_delete_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin delete notification callback. </p>
<p>This callback is used to notify a plugin that a delete is being requested on a client handle. This notification happens both when the user requests a delete, and when a plugin restarts the currently active delete request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the delete will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the delete operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to be deleted. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current delete operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gadee692c1aa851711b0033b65c04ad3c4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_feat_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin feat notification callback. </p>
<p>This callback is used to notify a plugin that a feat is being requested on a client handle. This notification happens both when the user requests a feat, and when a plugin restarts the currently active feat request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the feat will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the feat operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url to be feat'd. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current feat operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga910b99bed09d89af8635789f1f61aa2d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_mkdir_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin mkdir notification callback. </p>
<p>This callback is used to notify a plugin that a mkdir is being requested on a client handle. This notification happens both when the user requests a mkdir, and when a plugin restarts the currently active mkdir request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the mkdir will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the mkdir operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the directory to create. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current mkdir operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae4c51c05bc88d6d2e82720b671a555d2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_rmdir_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin rmdir notification callback. </p>
<p>This callback is used to notify a plugin that a rmdir is being requested on a client handle. This notification happens both when the user requests a rmdir, and when a plugin restarts the currently active rmdir request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the rmdir will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the rmdir operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the rmdir operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this operation. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current rmdir operation; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga68008b0f0e7f0e860b7b88827ba8c5eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_list_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin list notification callback. </p>
<p>This callback is used to notify a plugin that a list is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gafbdacf5114a4bba0e8bfbed83e4f5c8e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_verbose_list_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin verbose list notification callback. </p>
<p>This callback is used to notify a plugin that a list is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa79eca258a887e8a3e22ff10a3493e65"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_machine_list_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin machine list notification callback. </p>
<p>This callback is used to notify a plugin that a list is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0be1dab77a954904666be596aa076eea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_recursive_list_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin recursive list notification callback. </p>
<p>This callback is used to notify a plugin that a list is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0d0cbaa306af4eab54839403d2c8c3a9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_mlst_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin mlst notification callback. </p>
<p>This callback is used to notify a plugin that a mlst is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga641bfd78a9fb19a17788e3ff70d3b62d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_stat_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin stat notification callback. </p>
<p>This callback is used to notify a plugin that a stat is being requested on a client handle. This notification happens both when the user requests a list, and when a plugin restarts the currently active list request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the list will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa825b62035e2a9e7a82a084dcd28042f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_move_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin move notification callback. </p>
<p>This callback is used to notify a plugin that a move is being requested on a client handle. This notification happens both when the user requests a move, and when a plugin restarts the currently active move request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the move will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the move operation. </td></tr>
    <tr><td class="paramname">source_url</td><td>The source url of the move operation. </td></tr>
    <tr><td class="paramname">dest_url</td><td>The destination url of the move operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this move. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current move transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad05f08b66c61667b72f4e44727452c4b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_get_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin get notification callback. </p>
<p>This callback is used to notify a plugin that a get is being requested on a client handle. This notification happens both when the user requests a get, and when a plugin restarts the currently active get request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the get will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the get operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the get operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current get transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2f9ee1d87d1874300ffdda8cf20ecc82"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_put_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin put notification callback. </p>
<p>This callback is used to notify a plugin that a put is being requested on a client handle. This notification happens both when the user requests a put, and when a plugin restarts the currently active put request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the put will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the put operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the put operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current put transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabcbfe1e197253b633181a4a2b227548d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_third_party_transfer_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *source_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *source_attr, const char *dest_url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *dest_attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin third-party transfer notification callback. </p>
<p>This callback is used to notify a plugin that a transfer is being requested on a client handle. This notification happens both when the user requests a transfer, and when a plugin restarts the currently active transfer request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the third-party transfer will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the transfer operation. </td></tr>
    <tr><td class="paramname">source_url</td><td>The source url of the transfer operation. </td></tr>
    <tr><td class="paramname">source_attr</td><td>The attributes to be used during this transfer on the source. </td></tr>
    <tr><td class="paramname">dest_url</td><td>The destination url of the third-party transfer operation. </td></tr>
    <tr><td class="paramname">dest_attr</td><td>The attributes to be used during this transfer on the destination. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current transfer transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8b3f1cc76e5dc8102c6c4650d5394938"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_modification_time_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin modification time notification callback. </p>
<p>This callback is used to notify a plugin that a modification time check is being requested on a client handle. This notification happens both when the user requests the modification time of a file, and when a plugin restarts the currently active request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the modification time request will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga02e7a387de4956d334d5b523fe0bc645"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_size_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *attr, globus_bool_t restart)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin size notification callback. </p>
<p>This callback is used to notify a plugin that a size check is being requested on a client handle. This notification happens both when the user requests the size of a file, and when a plugin restarts the currently active request.</p>
<p>If this function is not defined by the plugin, then no plugin callbacks associated with the size request will be called.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the list operation. </td></tr>
    <tr><td class="paramname">url</td><td>The url of the list operation. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to be used during this transfer. </td></tr>
    <tr><td class="paramname">restart</td><td>This value is set to GLOBUS_TRUE when this callback is caused by a plugin restarting the current list transfer; otherwise, this is set to GLOBUS_FALSE. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad503123448bbc72918b8c45d4b1bf670"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_abort_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin abort notification callback. </p>
<p>This callback is used to notify a plugin that an abort is being requested on a client handle. This notification happens both when the user aborts a request and when a plugin aborts the currently active request.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8fdb9944984d00ac533c2265c81268d3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_read_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const globus_byte_t *buffer, globus_size_t buffer_length)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin read registration callback. </p>
<p>This callback is used to notify a plugin that the client API has registered a buffer with the FTP control API for reading when processing a get.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">buffer</td><td>The data buffer to read into. </td></tr>
    <tr><td class="paramname">buffer_length</td><td>The maximum amount of data to read into the buffer. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga9145e67235ecb6f9a47571a8460d84a0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_write_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const globus_byte_t *buffer, globus_size_t buffer_length, globus_off_t offset, globus_bool_t eof)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin write registration callback. </p>
<p>This callback is used to notify a plugin that the client API has registered a buffer with the FTP control API for writing when processing a put.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">buffer</td><td>The buffer which is being written. </td></tr>
    <tr><td class="paramname">buffer_length</td><td>The amount of data in the buffer. </td></tr>
    <tr><td class="paramname">offset</td><td>The offset within the file where the buffer is to be written. </td></tr>
    <tr><td class="paramname">eof</td><td>This value is set to GLOBUS_TRUE if this is the last data buffer to be sent for this put request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa75bb52aabbdc1dc2a4d262aa23cc8fc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_data_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, globus_object_t *error, const globus_byte_t *buffer, globus_size_t length, globus_off_t offset, globus_bool_t eof)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Plugin data callback handler. </p>
<p>This callback is used to notify a plugin that a read or write operation previously registered has completed. The buffer pointer will match that of a previous plugin read or write registration callback.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">buffer</td><td>The buffer which was successfully transferred over the network. </td></tr>
    <tr><td class="paramname">length</td><td>The amount of data to read or written. </td></tr>
    <tr><td class="paramname">offset</td><td>The offset into the file where this data buffer belongs. </td></tr>
    <tr><td class="paramname">eof</td><td>This value is set to GLOBUS_TRUE if end-of-file is being processed for this transfer. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae68f94b07e743807c7046dd8e27737e4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_command_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, const char *command)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Command callback. </p>
<p>This callback is used to notify a plugin that a FTP control command is being sent. The client library will only call this function for response callbacks associated with a command which is in the plugin's command mask, and associated with one of the other ftp operations with a defined callback in the plugin.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">url</td><td>The URL which this command is being sent to. </td></tr>
    <tr><td class="paramname">command</td><td>A string containing the command which is being sent to the server (TYPE I, for example). </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga74af8f8ef0dad0ed0b590809c3c867e9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_response_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_object_t *error, const globus_ftp_control_response_t *ftp_response)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Response callback. </p>
<p>This callback is used to notify a plugin that a FTP control response has occurred on a control connection. FTP response callbacks will come back to the user in the order which the commands were executed. The client library will only call this function for response callbacks associated with a command which is in the plugin's command mask, or associated with one of the other ftp operations with a defined callback in the plugin.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">url</td><td>The URL which this response came from. </td></tr>
    <tr><td class="paramname">error</td><td>An error which occurred while processing this command/response pair. </td></tr>
    <tr><td class="paramname">ftp_response</td><td>The response structure from the ftp control library. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0cfe4a2c876054e7e87f19dac25e6c45"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_fault_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle, const char *url, globus_object_t *error)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fault notification callback. </p>
<p>This callback is used to notify a plugin that a fault occurred while processing the request. The fault may be internally generated, or come from a call to another library.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the request. </td></tr>
    <tr><td class="paramname">url</td><td>The url being processed when the fault ocurred. </td></tr>
    <tr><td class="paramname">error</td><td>An error object describing the fault. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga69c5c6996793f08a00aec1d0a459d489"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* globus_ftp_client_plugin_complete_t)(<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, void *plugin_specific, <a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *handle)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Completion notification callback. </p>
<p>This callback is used to notify a plugin that an operation previously begun has completed. The plugin may not call any other plugin operation on this handle after this has occurred. This is the final callback for the plugin while processing the operation. The plugin may free any internal state associated with the operation at this point.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>The plugin which is being notified. </td></tr>
    <tr><td class="paramname">plugin_specific</td><td>Plugin-specific data. </td></tr>
    <tr><td class="paramname">handle</td><td>The handle associated with the operation. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Enumeration Type Documentation</h2>
<a class="anchor" id="ga3a2339a2213742216f3ebb3b1a38c219"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__globus__ftp__client__plugins.html#ga3a2339a2213742216f3ebb3b1a38c219">globus_ftp_client_plugin_command_mask_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Command Mask. </p>
<p>This enumeration includes the types of commands which the plugin is interested in. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a6c6e590465519f7204237b865817dad1"></a>GLOBUS_FTP_CLIENT_CMD_MASK_CONTROL_ESTABLISHMENT</em>&nbsp;</td><td>
<p>connect, authenticate </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a25f583eeccf4ee671a158176df5d1b6c"></a>GLOBUS_FTP_CLIENT_CMD_MASK_DATA_ESTABLISHMENT</em>&nbsp;</td><td>
<p>PASV, PORT, SPOR, SPAS. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a43a85f9d26ee85bd52765829ac0f4d69"></a>GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_PARAMETERS</em>&nbsp;</td><td>
<p>MODE, TYPE, STRU, OPTS RETR, DCAU. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a0bd20495afc23eef8d56feffd24c501f"></a>GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_MODIFIERS</em>&nbsp;</td><td>
<p>ALLO, REST. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219afa4dda7dad9bd75aa17b6d0c4e919c42"></a>GLOBUS_FTP_CLIENT_CMD_MASK_FILE_ACTIONS</em>&nbsp;</td><td>
<p>STOR, RETR, ESTO, ERET, APPE, LIST, NLST, MLSD, MLSR, GET, PUT. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a802c5efa7044030b81aa6b8748347c0d"></a>GLOBUS_FTP_CLIENT_CMD_MASK_INFORMATION</em>&nbsp;</td><td>
<p>HELP, SITE HELP, FEAT, STAT, SYST, SIZE. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a6afecdef13d4c06f913de440f2fc2675"></a>GLOBUS_FTP_CLIENT_CMD_MASK_MISC</em>&nbsp;</td><td>
<p>SITE, NOOP. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a0657e551fad686734548558da125dfa5"></a>GLOBUS_FTP_CLIENT_CMD_MASK_BUFFER</em>&nbsp;</td><td>
<p>SBUF, ABUF. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga3a2339a2213742216f3ebb3b1a38c219a73a57d6f2268824be2e307763f66a9aa"></a>GLOBUS_FTP_CLIENT_CMD_MASK_ALL</em>&nbsp;</td><td>
<p>All possible commands. </p>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gae21f20896af8d597bc35b21595a3c16c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_list </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing list. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad4fc65cc942f2ac143593ba186e1063a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_verbose_list </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing verbose list. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga43872fdeb583852ddbc3adc5b9b43847"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_machine_list </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing machine list. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga5a54436b578f85a46389c1464f3085e9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_recursive_list </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing recursive list. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">source_url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">source_attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad5e503ca6acdc8edb37188e695508012"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_mlst </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing MLST. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga487afdb2b11d28e8bf4ac69ffaf6c60f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_stat </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing STAT. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in list events will receive a list callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the list. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original list's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original list's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the list. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga10cb791dbdaae77957f5088bcb766c12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_chmod </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing chmod. </p>
<p>This function will cause the currently executing chmod operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in chmod events will receive a chmod callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the chmod. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original chmod's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">mode</td><td>The file mode that will be applied. Must be an octal number repre- senting the bit pattern for the new permissions. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original chmod's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the chmod. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaafad0faa1d0d2b65abb7e7c0932677ee"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_chgrp </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing chgrp. </p>
<p>This function will cause the currently executing chgrp operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in chgrp events will receive a chgrp callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the chgrp. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original chgrp's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">group</td><td>The group name or ID to change the file to. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original chgrp's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the chgrp. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga56b1704f9582eaa849a3d4f53d4f5b00"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_utime </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct tm *&#160;</td>
          <td class="paramname"><em>utime_time</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing utime. </p>
<p>This function will cause the currently executing utime operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in utime events will receive a utime callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the chgrp. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original utime's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">utime_time</td><td>The time value to change the file to. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original utime's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the utime. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga56f4fcabff95ae7594399442c2bc2d06"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_symlink </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>link_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing symlink. </p>
<p>This function will cause the currently executing symlink operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in chgrp events will receive a chgrp callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the chgrp. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original symlink's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">link_url</td><td>The URL to symbolically link the file to. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original symlink's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the symlink. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab30060d5eb1fa376659bd95dcffb4b19"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_cksm </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_off_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_off_t&#160;</td>
          <td class="paramname"><em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>algorithm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing cksm. </p>
<p>This function will cause the currently executing cksm operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in cksm events will receive a cksm callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the cksm. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original cksm's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">offset</td><td>File offset to start calculating checksum. </td></tr>
    <tr><td class="paramname">length</td><td>Length of data to read from the starting offset. Use -1 to read the entire file. </td></tr>
    <tr><td class="paramname">algorithm</td><td>A pointer to a string to be filled with the checksum of the file. On error the value pointed to by it is undefined. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original cksm's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the cksm. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga11863668a2368ebde4841cae3afb05e2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_delete </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing delete. </p>
<p>This function will cause the currently executing delete operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in delete events will receive a delete callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the delete. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original delete's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original delete's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the delete. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaad1c1fdf45f31a640360ff08e348127d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_feat </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing feat. </p>
<p>This function will cause the currently executing feat operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in feat events will receive a feat callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the feat. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original feat's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original feat's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the feat. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaedf21d52e71ce4ac902bdcd4ec2494d2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_mkdir </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing mkdir. </p>
<p>This function will cause the currently executing operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in mkdir events will receive a mkdir callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the mkdir. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original mkdir's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original mkdir's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the mkdir. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gacb764084f0039e86cf320c07a278c83d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_rmdir </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing rmdir. </p>
<p>This function will cause the currently executing operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in rmdir events will receive a rmdir callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the rmdir. </td></tr>
    <tr><td class="paramname">url</td><td>The destination URL of the transfer. This may be different than the original rmdir's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original rmdir's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the rmdir. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaec071567e01d0f461e72eec41ba97d4b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_move </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>source_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>dest_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing move. </p>
<p>This function will cause the currently executing move operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially new URLs and attributes.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in get events will receive a move callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the move. </td></tr>
    <tr><td class="paramname">source_url</td><td>The source URL of the move. This may be different than the original get's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">dest_url</td><td>The destination URL of the move. This may be different than the original get's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. Note that only the path component of this URL is used. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original move's attribute set. This may be useful when the plugin wishes to send restart markers to the FTP server to prevent re-sending the data which has already been sent. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the move. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga92053dba220bb6fafbe6e6170308fc49"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *&#160;</td>
          <td class="paramname"><em>restart_marker</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing get. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued will be cleared and reused once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in get events will receive a get callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the get. </td></tr>
    <tr><td class="paramname">url</td><td>The source URL of the transfer. This may be different than the original get's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original get's attribute set. This may be useful when the plugin wishes to send restart markers to the FTP server to prevent re-sending the data which has already been sent. </td></tr>
    <tr><td class="paramname">restart_marker</td><td>Plugin-provided restart marker for resuming at a non-default restart point. This may be used to implement a persistent restart across process invocations. The default behavior if this is NULL is to use any restart information which has been received by the ftp client library while processing this operation when restarted. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the get. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaadbd94770f855309efe78ec046b2eb37"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_put </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *&#160;</td>
          <td class="paramname"><em>restart_marker</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing put. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes. Any data buffers which are currently queued but not called back will be resent once the connection is re-established.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in get events will receive a put callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the put. </td></tr>
    <tr><td class="paramname">url</td><td>The URL of the transfer. This may be different than the original put's URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. If the put is restarted with a different URL, the plugin must re-send any data which has already been acknowledged by it's callback. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original put's attribute set. This may be useful when the plugin wishes to send restart markers to the FTP server to prevent re-sending the data which has already been sent. </td></tr>
    <tr><td class="paramname">restart_marker</td><td>Plugin-provided restart marker for resuming at a non-default restart point. This may be used to implement a persistent restart across process invocations. The default behavior if this is NULL is to use any restart information which has been received by the ftp client library while processing this operation when restarted.</td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the put. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga87338d1c3c3b50a5c2d4175bf0b5921c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_third_party_transfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>source_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>source_attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>dest_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>dest_attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *&#160;</td>
          <td class="paramname"><em>restart_marker</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart an existing third-party transfer. </p>
<p>This function will cause the currently executing transfer operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URLs and attributes.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in third-party transfer events will receive a transfer callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the transfer. </td></tr>
    <tr><td class="paramname">source_url</td><td>The source URL of the transfer. This may be different than the original URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL </td></tr>
    <tr><td class="paramname">source_attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original transfer's attribute set. This may be useful when the plugin wishes to send restart markers to the FTP server to prevent re-sending the data which has already been sent. </td></tr>
    <tr><td class="paramname">dest_url</td><td>The destination URL of the transfer. This may be different than the original destination URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">dest_attr</td><td>The attributes to use for the new transfer. This may be a modified version of the original transfer's attribute set. This may be useful when the plugin wishes to send restart markers to the FTP server to prevent re-sending the data which has already been sent. </td></tr>
    <tr><td class="paramname">restart_marker</td><td>Plugin-provided restart marker for resuming at a non-default restart point. This may be used to implement a persistent restart across process invocations. The default behavior if this is NULL is to use any restart information which has been received by the ftp client library while processing this operation when restarted.</td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the transfer. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad24eb13a34cab39e0c50d165a8ea14cd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_size </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart a size check operation. </p>
<p>This function will cause the currently executing size check operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in size operations will receive a size callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the operation. </td></tr>
    <tr><td class="paramname">url</td><td>The source URL of the size check. This may be different than the original operations URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new operation. This may be a modified version of the original operations's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the size check. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga034eeab9c443fd3e62df62ea54f6a49e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_modification_time </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__globus__ftp__client__operationattr.html#ga71207b29c31268b27e52b4cbd6d71224">globus_ftp_client_operationattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const globus_abstime_t *&#160;</td>
          <td class="paramname"><em>when</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restart a modification time check operation. </p>
<p>This function will cause the currently executing modification time check operation to be restarted. When a restart happens, the operation will be silently aborted, and then restarted with potentially a new URL and attributes.</p>
<p>The user will not receive any notification that a restart has happened. Each plugin which is interested in modification time operations will receive a modification time callback with the restart boolean set to GLOBUS_TRUE.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the operation. </td></tr>
    <tr><td class="paramname">url</td><td>The source URL of the modification time check. This may be different than the original operations URL, if the plugin decides to redirect to another FTP server due to performance or reliability problems with the original URL. </td></tr>
    <tr><td class="paramname">attr</td><td>The attributes to use for the new operation. This may be a modified version of the original operations's attribute set. </td></tr>
    <tr><td class="paramname">when</td><td>Absolute time for when to restart the modification time check. The current control and data connections will be stopped immediately. If this completes before <b>when</b>, then the restart will be delayed until that time. Otherwise, it will be immediately restarted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga7c913431569954260ea71511e8df12dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_restart_get_marker </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__ftp__client__restart__marker__t.html">globus_ftp_client_restart_marker_t</a> *&#160;</td>
          <td class="paramname"><em>marker</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get restart markerThis function will allow this user to get the restart marker associated with a restarted file transfer. </p>
<p>This function may only be called within the get, put, or third party transfer callback in which the 'restart' argument is GLOBUS_TRUE</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the transfer.</td></tr>
    <tr><td class="paramname">marker</td><td>Pointer to an uninitialized restart marker type</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd><ul>
<li>Error on NULL handle or marker</li>
<li>Error on invalid use of function</li>
<li>GLOBUS_SUCCESS (marker will be populated) </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga2204d0cb34ea58c02d8e32c7671ef340"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_abort </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Abort a transfer operation. </p>
<p>This function will cause the currently executing transfer operation to be aborted. When this happens, all plugins will be notified by their abort callbacks. Once those are processed, the complete callback will be called for all plugins, and then for the user's callback.</p>
<p>The complete callback will indicate that the transfer did not complete successfully.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the transfer. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad67868bf042e014d59ea00fd22938a66"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_add_data_channels </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>num_channels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>stripe</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Add data channels to an existing put transfer. </p>
<p>This function will cause the currently executing transfer operation to have additional data channels acquired if the attribute set allows it.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the transfer. </td></tr>
    <tr><td class="paramname">num_channels</td><td>The number of channels to add to the transfer. </td></tr>
    <tr><td class="paramname">stripe</td><td>The stripe number to have the channels added to.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note:</dt><dd>Do the plugins need to be notified when this happens? </dd></dl>

</div>
</div>
<a class="anchor" id="ga197238252edb48664d9d7eb0b9e9b018"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_plugin_remove_data_channels </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__handle.html#ga9d8a98c88d529ab539c2fedee545f172">globus_ftp_client_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>num_channels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>stripe</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Remove data channels from an existing put transfer. </p>
<p>This function will cause the currently executing transfer operation to have data channels removed, if the attribute set allows it.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle which is associated with the transfer. </td></tr>
    <tr><td class="paramname">num_channels</td><td>The number of channels to remove from the transfer. </td></tr>
    <tr><td class="paramname">stripe</td><td>The stripe number to have the channels removed from.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note:</dt><dd>Do the plugins need to be notified when this happens? </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<hr>
<p align="center">
<a href="http://www.globus.org/toolkit/about.html" target="_top">about globus</a> |
<a href="http://www.globus.org/toolkit/" target="_top">globus toolkit</a> |
<a href="https://dev.globus.org/wiki/Welcome/" target="_top">dev.globus</a>
<br>
<br>
Comments? <a href="mailto:webmaster@globus.org">webmaster@globus.org</a>
</body>
</html>