00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef GLOBUS_FTP_CLIENT_PLUGIN_H
00018 #define GLOBUS_FTP_CLIENT_PLUGIN_H
00019
00058 #include "globus_ftp_client.h"
00059
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063
00071 typedef enum
00072 {
00073 GLOBUS_FTP_CLIENT_CMD_MASK_NONE = 0,
00074
00076 GLOBUS_FTP_CLIENT_CMD_MASK_CONTROL_ESTABLISHMENT = 1<<0,
00077
00079 GLOBUS_FTP_CLIENT_CMD_MASK_DATA_ESTABLISHMENT = 1<<1,
00080
00082 GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_PARAMETERS = 1<<2,
00083
00085 GLOBUS_FTP_CLIENT_CMD_MASK_TRANSFER_MODIFIERS = 1<<3,
00086
00088 GLOBUS_FTP_CLIENT_CMD_MASK_FILE_ACTIONS = 1<<4,
00089
00091 GLOBUS_FTP_CLIENT_CMD_MASK_INFORMATION = 1<<5,
00092
00094 GLOBUS_FTP_CLIENT_CMD_MASK_MISC = 1<<6,
00095
00097 GLOBUS_FTP_CLIENT_CMD_MASK_BUFFER = 1<<7,
00098
00100 GLOBUS_FTP_CLIENT_CMD_MASK_ALL = 0x7fffffff
00101 }
00102 globus_ftp_client_plugin_command_mask_t;
00103
00104
00131 typedef globus_ftp_client_plugin_t * (*globus_ftp_client_plugin_copy_t)(
00132 globus_ftp_client_plugin_t * plugin_template,
00133 void * plugin_specific);
00134
00148 typedef void (*globus_ftp_client_plugin_destroy_t)(
00149 globus_ftp_client_plugin_t * plugin,
00150 void * plugin_specific);
00151
00175 typedef void (*globus_ftp_client_plugin_connect_t)(
00176 globus_ftp_client_plugin_t * plugin,
00177 void * plugin_specific,
00178 globus_ftp_client_handle_t * handle,
00179 const char * url);
00180
00206 typedef void (*globus_ftp_client_plugin_authenticate_t)(
00207 globus_ftp_client_plugin_t * plugin,
00208 void * plugin_specific,
00209 globus_ftp_client_handle_t * handle,
00210 const char * url,
00211 const globus_ftp_control_auth_info_t * auth_info);
00212
00242 typedef void (*globus_ftp_client_plugin_chmod_t)(
00243 globus_ftp_client_plugin_t * plugin,
00244 void * plugin_specific,
00245 globus_ftp_client_handle_t * handle,
00246 const char * url,
00247 int mode,
00248 const globus_ftp_client_operationattr_t * attr,
00249 globus_bool_t restart);
00250
00280 typedef void (*globus_ftp_client_plugin_chgrp_t)(
00281 globus_ftp_client_plugin_t * plugin,
00282 void * plugin_specific,
00283 globus_ftp_client_handle_t * handle,
00284 const char * url,
00285 const char * group,
00286 const globus_ftp_client_operationattr_t * attr,
00287 globus_bool_t restart);
00288
00318 typedef void (*globus_ftp_client_plugin_utime_t)(
00319 globus_ftp_client_plugin_t * plugin,
00320 void * plugin_specific,
00321 globus_ftp_client_handle_t * handle,
00322 const char * url,
00323 const struct tm * utime_time,
00324 const globus_ftp_client_operationattr_t * attr,
00325 globus_bool_t restart);
00326
00356 typedef void (*globus_ftp_client_plugin_symlink_t)(
00357 globus_ftp_client_plugin_t * plugin,
00358 void * plugin_specific,
00359 globus_ftp_client_handle_t * handle,
00360 const char * url,
00361 const char * utime_time,
00362 const globus_ftp_client_operationattr_t * attr,
00363 globus_bool_t restart);
00364
00400 typedef void (*globus_ftp_client_plugin_cksm_t)(
00401 globus_ftp_client_plugin_t * plugin,
00402 void * plugin_specific,
00403 globus_ftp_client_handle_t * handle,
00404 const char * url,
00405 globus_off_t offset,
00406 globus_off_t length,
00407 const char * algorithm,
00408 const globus_ftp_client_operationattr_t * attr,
00409 globus_bool_t restart);
00410
00438 typedef void (*globus_ftp_client_plugin_delete_t)(
00439 globus_ftp_client_plugin_t * plugin,
00440 void * plugin_specific,
00441 globus_ftp_client_handle_t * handle,
00442 const char * url,
00443 const globus_ftp_client_operationattr_t * attr,
00444 globus_bool_t restart);
00445
00473 typedef void (*globus_ftp_client_plugin_feat_t)(
00474 globus_ftp_client_plugin_t * plugin,
00475 void * plugin_specific,
00476 globus_ftp_client_handle_t * handle,
00477 const char * url,
00478 const globus_ftp_client_operationattr_t * attr,
00479 globus_bool_t restart);
00480
00509 typedef void (*globus_ftp_client_plugin_mkdir_t)(
00510 globus_ftp_client_plugin_t * plugin,
00511 void * plugin_specific,
00512 globus_ftp_client_handle_t * handle,
00513 const char * url,
00514 const globus_ftp_client_operationattr_t * attr,
00515 globus_bool_t restart);
00516
00544 typedef void (*globus_ftp_client_plugin_rmdir_t)(
00545 globus_ftp_client_plugin_t * plugin,
00546 void * plugin_specific,
00547 globus_ftp_client_handle_t * handle,
00548 const char * url,
00549 const globus_ftp_client_operationattr_t * attr,
00550 globus_bool_t restart);
00551
00552
00580 typedef void (*globus_ftp_client_plugin_list_t)(
00581 globus_ftp_client_plugin_t * plugin,
00582 void * plugin_specific,
00583 globus_ftp_client_handle_t * handle,
00584 const char * url,
00585 const globus_ftp_client_operationattr_t * attr,
00586 globus_bool_t restart);
00587
00615 typedef void (*globus_ftp_client_plugin_verbose_list_t)(
00616 globus_ftp_client_plugin_t * plugin,
00617 void * plugin_specific,
00618 globus_ftp_client_handle_t * handle,
00619 const char * url,
00620 const globus_ftp_client_operationattr_t * attr,
00621 globus_bool_t restart);
00622
00650 typedef void (*globus_ftp_client_plugin_machine_list_t)(
00651 globus_ftp_client_plugin_t * plugin,
00652 void * plugin_specific,
00653 globus_ftp_client_handle_t * handle,
00654 const char * url,
00655 const globus_ftp_client_operationattr_t * attr,
00656 globus_bool_t restart);
00657
00685 typedef void (*globus_ftp_client_plugin_recursive_list_t)(
00686 globus_ftp_client_plugin_t * plugin,
00687 void * plugin_specific,
00688 globus_ftp_client_handle_t * handle,
00689 const char * url,
00690 const globus_ftp_client_operationattr_t * attr,
00691 globus_bool_t restart);
00692
00720 typedef void (*globus_ftp_client_plugin_mlst_t)(
00721 globus_ftp_client_plugin_t * plugin,
00722 void * plugin_specific,
00723 globus_ftp_client_handle_t * handle,
00724 const char * url,
00725 const globus_ftp_client_operationattr_t * attr,
00726 globus_bool_t restart);
00727
00728
00756 typedef void (*globus_ftp_client_plugin_stat_t)(
00757 globus_ftp_client_plugin_t * plugin,
00758 void * plugin_specific,
00759 globus_ftp_client_handle_t * handle,
00760 const char * url,
00761 const globus_ftp_client_operationattr_t * attr,
00762 globus_bool_t restart);
00763
00764
00794 typedef void (*globus_ftp_client_plugin_move_t)(
00795 globus_ftp_client_plugin_t * plugin,
00796 void * plugin_specific,
00797 globus_ftp_client_handle_t * handle,
00798 const char * source_url,
00799 const char * dest_url,
00800 const globus_ftp_client_operationattr_t * attr,
00801 globus_bool_t restart);
00802
00830 typedef void (*globus_ftp_client_plugin_get_t)(
00831 globus_ftp_client_plugin_t * plugin,
00832 void * plugin_specific,
00833 globus_ftp_client_handle_t * handle,
00834 const char * url,
00835 const globus_ftp_client_operationattr_t * attr,
00836 globus_bool_t restart);
00837
00865 typedef void (*globus_ftp_client_plugin_put_t)(
00866 globus_ftp_client_plugin_t * plugin,
00867 void * plugin_specific,
00868 globus_ftp_client_handle_t * handle,
00869 const char * url,
00870 const globus_ftp_client_operationattr_t * attr,
00871 globus_bool_t restart);
00872
00904 typedef void (*globus_ftp_client_plugin_third_party_transfer_t)(
00905 globus_ftp_client_plugin_t * plugin,
00906 void * plugin_specific,
00907 globus_ftp_client_handle_t * handle,
00908 const char * source_url,
00909 const globus_ftp_client_operationattr_t * source_attr,
00910 const char * dest_url,
00911 const globus_ftp_client_operationattr_t * dest_attr,
00912 globus_bool_t restart);
00913
00941 typedef void (*globus_ftp_client_plugin_modification_time_t)(
00942 globus_ftp_client_plugin_t * plugin,
00943 void * plugin_specific,
00944 globus_ftp_client_handle_t * handle,
00945 const char * url,
00946 const globus_ftp_client_operationattr_t * attr,
00947 globus_bool_t restart);
00948
00976 typedef void (*globus_ftp_client_plugin_size_t)(
00977 globus_ftp_client_plugin_t * plugin,
00978 void * plugin_specific,
00979 globus_ftp_client_handle_t * handle,
00980 const char * url,
00981 const globus_ftp_client_operationattr_t * attr,
00982 globus_bool_t restart);
00983
01000 typedef void (*globus_ftp_client_plugin_abort_t)(
01001 globus_ftp_client_plugin_t * plugin,
01002 void * plugin_specific,
01003 globus_ftp_client_handle_t * handle);
01004
01024 typedef void (*globus_ftp_client_plugin_read_t)(
01025 globus_ftp_client_plugin_t * plugin,
01026 void * plugin_specific,
01027 globus_ftp_client_handle_t * handle,
01028 const globus_byte_t * buffer,
01029 globus_size_t buffer_length);
01030
01055 typedef void (*globus_ftp_client_plugin_write_t)(
01056 globus_ftp_client_plugin_t * plugin,
01057 void * plugin_specific,
01058 globus_ftp_client_handle_t * handle,
01059 const globus_byte_t * buffer,
01060 globus_size_t buffer_length,
01061 globus_off_t offset,
01062 globus_bool_t eof);
01063
01089 typedef void (*globus_ftp_client_plugin_data_t)(
01090 globus_ftp_client_plugin_t * plugin,
01091 void * plugin_specific,
01092 globus_ftp_client_handle_t * handle,
01093 globus_object_t * error,
01094 const globus_byte_t * buffer,
01095 globus_size_t length,
01096 globus_off_t offset,
01097 globus_bool_t eof);
01098
01121 typedef void (*globus_ftp_client_plugin_command_t)(
01122 globus_ftp_client_plugin_t * plugin,
01123 void * plugin_specific,
01124 globus_ftp_client_handle_t * handle,
01125 const char * url,
01126 const char * command);
01127
01154 typedef void (*globus_ftp_client_plugin_response_t)(
01155 globus_ftp_client_plugin_t * plugin,
01156 void * plugin_specific,
01157 globus_ftp_client_handle_t * handle,
01158 const char * url,
01159 globus_object_t * error,
01160 const globus_ftp_control_response_t * ftp_response);
01161
01181 typedef void (*globus_ftp_client_plugin_fault_t)(
01182 globus_ftp_client_plugin_t * plugin,
01183 void * plugin_specific,
01184 globus_ftp_client_handle_t * handle,
01185 const char * url,
01186 globus_object_t * error);
01187
01205 typedef void (*globus_ftp_client_plugin_complete_t)(
01206 globus_ftp_client_plugin_t * plugin,
01207 void * plugin_specific,
01208 globus_ftp_client_handle_t * handle);
01209
01210
01211
01212 globus_result_t
01213 globus_ftp_client_plugin_restart_list(
01214 globus_ftp_client_handle_t * handle,
01215 const char * url,
01216 const globus_ftp_client_operationattr_t * attr,
01217 const globus_abstime_t * when);
01218
01219 globus_result_t
01220 globus_ftp_client_plugin_restart_verbose_list(
01221 globus_ftp_client_handle_t * handle,
01222 const char * url,
01223 const globus_ftp_client_operationattr_t * attr,
01224 const globus_abstime_t * when);
01225
01226 globus_result_t
01227 globus_ftp_client_plugin_restart_machine_list(
01228 globus_ftp_client_handle_t * handle,
01229 const char * url,
01230 const globus_ftp_client_operationattr_t * attr,
01231 const globus_abstime_t * when);
01232
01233 globus_result_t
01234 globus_ftp_client_plugin_restart_recursive_list(
01235 globus_ftp_client_handle_t * handle,
01236 const char * url,
01237 const globus_ftp_client_operationattr_t * attr,
01238 const globus_abstime_t * when);
01239
01240 globus_result_t
01241 globus_ftp_client_plugin_restart_mlst(
01242 globus_ftp_client_handle_t * handle,
01243 const char * url,
01244 const globus_ftp_client_operationattr_t * attr,
01245 const globus_abstime_t * when);
01246
01247 globus_result_t
01248 globus_ftp_client_plugin_restart_stat(
01249 globus_ftp_client_handle_t * handle,
01250 const char * url,
01251 const globus_ftp_client_operationattr_t * attr,
01252 const globus_abstime_t * when);
01253
01254 globus_result_t
01255 globus_ftp_client_plugin_restart_delete(
01256 globus_ftp_client_handle_t * handle,
01257 const char * url,
01258 const globus_ftp_client_operationattr_t * attr,
01259 const globus_abstime_t * when);
01260
01261 globus_result_t
01262 globus_ftp_client_plugin_restart_chmod(
01263 globus_ftp_client_handle_t * handle,
01264 const char * url,
01265 int mode,
01266 const globus_ftp_client_operationattr_t * attr,
01267 const globus_abstime_t * when);
01268
01269 globus_result_t
01270 globus_ftp_client_plugin_restart_chgrp(
01271 globus_ftp_client_handle_t * handle,
01272 const char * url,
01273 const char * group,
01274 const globus_ftp_client_operationattr_t * attr,
01275 const globus_abstime_t * when);
01276
01277 globus_result_t
01278 globus_ftp_client_plugin_restart_utime(
01279 globus_ftp_client_handle_t * handle,
01280 const char * url,
01281 const struct tm * utime_time,
01282 const globus_ftp_client_operationattr_t * attr,
01283 const globus_abstime_t * when);
01284
01285 globus_result_t
01286 globus_ftp_client_plugin_restart_symlink(
01287 globus_ftp_client_handle_t * handle,
01288 const char * url,
01289 const char * link_url,
01290 const globus_ftp_client_operationattr_t * attr,
01291 const globus_abstime_t * when);
01292
01293 globus_result_t
01294 globus_ftp_client_plugin_restart_cksm(
01295 globus_ftp_client_handle_t * handle,
01296 const char * url,
01297 globus_off_t offset,
01298 globus_off_t length,
01299 const char * algorithm,
01300 const globus_ftp_client_operationattr_t * attr,
01301 const globus_abstime_t * when);
01302
01303 globus_result_t
01304 globus_ftp_client_plugin_restart_feat(
01305 globus_ftp_client_handle_t * handle,
01306 const char * url,
01307 const globus_ftp_client_operationattr_t * attr,
01308 const globus_abstime_t * when);
01309
01310 globus_result_t
01311 globus_ftp_client_plugin_restart_mkdir(
01312 globus_ftp_client_handle_t * handle,
01313 const char * url,
01314 const globus_ftp_client_operationattr_t * attr,
01315 const globus_abstime_t * when);
01316
01317 globus_result_t
01318 globus_ftp_client_plugin_restart_rmdir(
01319 globus_ftp_client_handle_t * handle,
01320 const char * url,
01321 const globus_ftp_client_operationattr_t * attr,
01322 const globus_abstime_t * when);
01323
01324 globus_result_t
01325 globus_ftp_client_plugin_restart_move(
01326 globus_ftp_client_handle_t * handle,
01327 const char * source_url,
01328 const char * dest_url,
01329 const globus_ftp_client_operationattr_t * attr,
01330 const globus_abstime_t * when);
01331
01332 globus_result_t
01333 globus_ftp_client_plugin_restart_get(
01334 globus_ftp_client_handle_t * handle,
01335 const char * url,
01336 const globus_ftp_client_operationattr_t * attr,
01337 globus_ftp_client_restart_marker_t * restart_marker,
01338 const globus_abstime_t * when);
01339
01340 globus_result_t
01341 globus_ftp_client_plugin_restart_put(
01342 globus_ftp_client_handle_t * handle,
01343 const char * url,
01344 const globus_ftp_client_operationattr_t * attr,
01345 globus_ftp_client_restart_marker_t * restart_marker,
01346 const globus_abstime_t * when);
01347
01348 globus_result_t
01349 globus_ftp_client_plugin_restart_third_party_transfer(
01350 globus_ftp_client_handle_t * handle,
01351 const char * source_url,
01352 const globus_ftp_client_operationattr_t * source_attr,
01353 const char * dest_url,
01354 const globus_ftp_client_operationattr_t * dest_attr,
01355 globus_ftp_client_restart_marker_t * restart_marker,
01356 const globus_abstime_t * when);
01357
01358 globus_result_t
01359 globus_ftp_client_plugin_restart_size(
01360 globus_ftp_client_handle_t * handle,
01361 const char * url,
01362 const globus_ftp_client_operationattr_t * attr,
01363 const globus_abstime_t * when);
01364
01365 globus_result_t
01366 globus_ftp_client_plugin_restart_modification_time(
01367 globus_ftp_client_handle_t * handle,
01368 const char * url,
01369 const globus_ftp_client_operationattr_t * attr,
01370 const globus_abstime_t * when);
01371
01372 globus_result_t
01373 globus_ftp_client_plugin_restart_get_marker(
01374 globus_ftp_client_handle_t * handle,
01375 globus_ftp_client_restart_marker_t * marker);
01376
01377 globus_result_t
01378 globus_ftp_client_plugin_abort(
01379 globus_ftp_client_handle_t * handle);
01380
01381 globus_result_t
01382 globus_ftp_client_plugin_add_data_channels(
01383 globus_ftp_client_handle_t * handle,
01384 unsigned int num_channels,
01385 unsigned int stripe);
01386
01387 globus_result_t
01388 globus_ftp_client_plugin_remove_data_channels(
01389 globus_ftp_client_handle_t * handle,
01390 unsigned int num_channels,
01391 unsigned int stripe);
01392
01393 globus_result_t
01394 globus_ftp_client_plugin_init(
01395 globus_ftp_client_plugin_t * plugin,
01396 const char * plugin_name,
01397 globus_ftp_client_plugin_command_mask_t command_mask,
01398 void * plugin_specific);
01399
01400 globus_result_t
01401 globus_ftp_client_plugin_destroy(
01402 globus_ftp_client_plugin_t * plugin);
01403
01404 globus_result_t
01405 globus_ftp_client_plugin_get_plugin_specific(
01406 globus_ftp_client_plugin_t * plugin,
01407 void ** plugin_specific);
01408
01409 globus_result_t
01410 globus_ftp_client_plugin_set_copy_func(
01411 globus_ftp_client_plugin_t * plugin,
01412 globus_ftp_client_plugin_copy_t copy);
01413
01414 globus_result_t
01415 globus_ftp_client_plugin_set_destroy_func(
01416 globus_ftp_client_plugin_t * plugin,
01417 globus_ftp_client_plugin_destroy_t destroy);
01418
01419 globus_result_t
01420 globus_ftp_client_plugin_set_chmod_func(
01421 globus_ftp_client_plugin_t * plugin,
01422 globus_ftp_client_plugin_chmod_t chmod_func);
01423
01424 globus_result_t
01425 globus_ftp_client_plugin_set_chgrp_func(
01426 globus_ftp_client_plugin_t * plugin,
01427 globus_ftp_client_plugin_chgrp_t chgrp_func);
01428
01429 globus_result_t
01430 globus_ftp_client_plugin_set_utime_func(
01431 globus_ftp_client_plugin_t * plugin,
01432 globus_ftp_client_plugin_utime_t utime_func);
01433
01434 globus_result_t
01435 globus_ftp_client_plugin_set_symlink_func(
01436 globus_ftp_client_plugin_t * plugin,
01437 globus_ftp_client_plugin_symlink_t symlink_func);
01438
01439 globus_result_t
01440 globus_ftp_client_plugin_set_cksm_func(
01441 globus_ftp_client_plugin_t * plugin,
01442 globus_ftp_client_plugin_cksm_t cksm_func);
01443
01444 globus_result_t
01445 globus_ftp_client_plugin_set_delete_func(
01446 globus_ftp_client_plugin_t * plugin,
01447 globus_ftp_client_plugin_delete_t delete_func);
01448
01449 globus_result_t
01450 globus_ftp_client_plugin_set_feat_func(
01451 globus_ftp_client_plugin_t * plugin,
01452 globus_ftp_client_plugin_feat_t feat_func);
01453
01454 globus_result_t
01455 globus_ftp_client_plugin_set_mkdir_func(
01456 globus_ftp_client_plugin_t * plugin,
01457 globus_ftp_client_plugin_mkdir_t mkdir_func);
01458
01459 globus_result_t
01460 globus_ftp_client_plugin_set_rmdir_func(
01461 globus_ftp_client_plugin_t * plugin,
01462 globus_ftp_client_plugin_rmdir_t rmdir_func);
01463
01464 globus_result_t
01465 globus_ftp_client_plugin_set_move_func(
01466 globus_ftp_client_plugin_t * plugin,
01467 globus_ftp_client_plugin_move_t move_func);
01468
01469 globus_result_t
01470 globus_ftp_client_plugin_set_verbose_list_func(
01471 globus_ftp_client_plugin_t * plugin,
01472 globus_ftp_client_plugin_verbose_list_t verbose_list_func);
01473
01474 globus_result_t
01475 globus_ftp_client_plugin_set_machine_list_func(
01476 globus_ftp_client_plugin_t * plugin,
01477 globus_ftp_client_plugin_machine_list_t machine_list_func);
01478
01479 globus_result_t
01480 globus_ftp_client_plugin_set_recursive_list_func(
01481 globus_ftp_client_plugin_t * plugin,
01482 globus_ftp_client_plugin_recursive_list_t recursive_list_func);
01483
01484 globus_result_t
01485 globus_ftp_client_plugin_set_list_func(
01486 globus_ftp_client_plugin_t * plugin,
01487 globus_ftp_client_plugin_list_t list_func);
01488
01489 globus_result_t
01490 globus_ftp_client_plugin_set_mlst_func(
01491 globus_ftp_client_plugin_t * plugin,
01492 globus_ftp_client_plugin_mlst_t mlst_func);
01493
01494 globus_result_t
01495 globus_ftp_client_plugin_set_stat_func(
01496 globus_ftp_client_plugin_t * plugin,
01497 globus_ftp_client_plugin_stat_t stat_func);
01498
01499 globus_result_t
01500 globus_ftp_client_plugin_set_get_func(
01501 globus_ftp_client_plugin_t * plugin,
01502 globus_ftp_client_plugin_get_t get_func);
01503
01504 globus_result_t
01505 globus_ftp_client_plugin_set_put_func(
01506 globus_ftp_client_plugin_t * plugin,
01507 globus_ftp_client_plugin_put_t put_func);
01508
01509 globus_result_t
01510 globus_ftp_client_plugin_set_third_party_transfer_func(
01511 globus_ftp_client_plugin_t * plugin,
01512 globus_ftp_client_plugin_third_party_transfer_t
01513 third_party_transfer_func);
01514
01515 globus_result_t
01516 globus_ftp_client_plugin_set_modification_time_func(
01517 globus_ftp_client_plugin_t * plugin,
01518 globus_ftp_client_plugin_modification_time_t
01519 modification_time_func);
01520 globus_result_t
01521 globus_ftp_client_plugin_set_size_func(
01522 globus_ftp_client_plugin_t * plugin,
01523 globus_ftp_client_plugin_size_t size_func);
01524
01525 globus_result_t
01526 globus_ftp_client_plugin_set_abort_func(
01527 globus_ftp_client_plugin_t * plugin,
01528 globus_ftp_client_plugin_abort_t abort_func);
01529
01530 globus_result_t
01531 globus_ftp_client_plugin_set_connect_func(
01532 globus_ftp_client_plugin_t * plugin,
01533 globus_ftp_client_plugin_connect_t connect_func);
01534
01535 globus_result_t
01536 globus_ftp_client_plugin_set_authenticate_func(
01537 globus_ftp_client_plugin_t * plugin,
01538 globus_ftp_client_plugin_authenticate_t auth_func);
01539
01540 globus_result_t
01541 globus_ftp_client_plugin_set_read_func(
01542 globus_ftp_client_plugin_t * plugin,
01543 globus_ftp_client_plugin_read_t read_func);
01544
01545 globus_result_t
01546 globus_ftp_client_plugin_set_write_func(
01547 globus_ftp_client_plugin_t * plugin,
01548 globus_ftp_client_plugin_write_t write_func);
01549
01550 globus_result_t
01551 globus_ftp_client_plugin_set_data_func(
01552 globus_ftp_client_plugin_t * plugin,
01553 globus_ftp_client_plugin_data_t data_func);
01554
01555 globus_result_t
01556 globus_ftp_client_plugin_set_command_func(
01557 globus_ftp_client_plugin_t * plugin,
01558 globus_ftp_client_plugin_command_t command_func);
01559
01560 globus_result_t
01561 globus_ftp_client_plugin_set_response_func(
01562 globus_ftp_client_plugin_t * plugin,
01563 globus_ftp_client_plugin_response_t response_func);
01564
01565 globus_result_t
01566 globus_ftp_client_plugin_set_fault_func(
01567 globus_ftp_client_plugin_t * plugin,
01568 globus_ftp_client_plugin_fault_t fault_func);
01569
01570 globus_result_t
01571 globus_ftp_client_plugin_set_complete_func(
01572 globus_ftp_client_plugin_t * plugin,
01573 globus_ftp_client_plugin_complete_t complete_func);
01574
01575 #ifdef __cplusplus
01576 }
01577 #endif
01578
01579 #endif