17 #ifndef GLOBUS_FTP_CLIENT_PLUGIN_H 18 #define GLOBUS_FTP_CLIENT_PLUGIN_H 73 GLOBUS_FTP_CLIENT_CMD_MASK_NONE = 0,
133 void * plugin_specific);
150 void * plugin_specific);
177 void * plugin_specific,
208 void * plugin_specific,
244 void * plugin_specific,
282 void * plugin_specific,
320 void * plugin_specific,
323 const struct tm * utime_time,
358 void * plugin_specific,
361 const char * utime_time,
402 void * plugin_specific,
407 const char * algorithm,
440 void * plugin_specific,
475 void * plugin_specific,
511 void * plugin_specific,
546 void * plugin_specific,
582 void * plugin_specific,
617 void * plugin_specific,
652 void * plugin_specific,
687 void * plugin_specific,
722 void * plugin_specific,
758 void * plugin_specific,
796 void * plugin_specific,
798 const char * source_url,
799 const char * dest_url,
832 void * plugin_specific,
867 void * plugin_specific,
906 void * plugin_specific,
908 const char * source_url,
910 const char * dest_url,
943 void * plugin_specific,
978 void * plugin_specific,
1002 void * plugin_specific,
1026 void * plugin_specific,
1057 void * plugin_specific,
1061 globus_off_t offset,
1091 void * plugin_specific,
1093 globus_object_t * error,
1096 globus_off_t offset,
1123 void * plugin_specific,
1126 const char * command);
1156 void * plugin_specific,
1159 globus_object_t * error,
1160 const globus_ftp_control_response_t * ftp_response);
1183 void * plugin_specific,
1186 globus_object_t * error);
1207 void * plugin_specific,
1217 const globus_abstime_t * when);
1224 const globus_abstime_t * when);
1231 const globus_abstime_t * when);
1238 const globus_abstime_t * when);
1245 const globus_abstime_t * when);
1252 const globus_abstime_t * when);
1259 const globus_abstime_t * when);
1267 const globus_abstime_t * when);
1275 const globus_abstime_t * when);
1281 const struct tm * utime_time,
1283 const globus_abstime_t * when);
1289 const char * link_url,
1291 const globus_abstime_t * when);
1297 globus_off_t offset,
1298 globus_off_t length,
1299 const char * algorithm,
1301 const globus_abstime_t * when);
1308 const globus_abstime_t * when);
1315 const globus_abstime_t * when);
1322 const globus_abstime_t * when);
1327 const char * source_url,
1328 const char * dest_url,
1330 const globus_abstime_t * when);
1338 const globus_abstime_t * when);
1346 const globus_abstime_t * when);
1351 const char * source_url,
1353 const char * dest_url,
1356 const globus_abstime_t * when);
1363 const globus_abstime_t * when);
1370 const globus_abstime_t * when);
1384 unsigned int num_channels,
1385 unsigned int stripe);
1390 unsigned int num_channels,
1391 unsigned int stripe);
1394 globus_ftp_client_plugin_init(
1396 const char * plugin_name,
1398 void * plugin_specific);
1401 globus_ftp_client_plugin_destroy(
1405 globus_ftp_client_plugin_get_plugin_specific(
1407 void ** plugin_specific);
1410 globus_ftp_client_plugin_set_copy_func(
1415 globus_ftp_client_plugin_set_destroy_func(
1420 globus_ftp_client_plugin_set_chmod_func(
1425 globus_ftp_client_plugin_set_chgrp_func(
1430 globus_ftp_client_plugin_set_utime_func(
1435 globus_ftp_client_plugin_set_symlink_func(
1440 globus_ftp_client_plugin_set_cksm_func(
1445 globus_ftp_client_plugin_set_delete_func(
1450 globus_ftp_client_plugin_set_feat_func(
1455 globus_ftp_client_plugin_set_mkdir_func(
1460 globus_ftp_client_plugin_set_rmdir_func(
1465 globus_ftp_client_plugin_set_move_func(
1470 globus_ftp_client_plugin_set_verbose_list_func(
1475 globus_ftp_client_plugin_set_machine_list_func(
1480 globus_ftp_client_plugin_set_recursive_list_func(
1485 globus_ftp_client_plugin_set_list_func(
1490 globus_ftp_client_plugin_set_mlst_func(
1495 globus_ftp_client_plugin_set_stat_func(
1500 globus_ftp_client_plugin_set_get_func(
1505 globus_ftp_client_plugin_set_put_func(
1510 globus_ftp_client_plugin_set_third_party_transfer_func(
1513 third_party_transfer_func);
1516 globus_ftp_client_plugin_set_modification_time_func(
1519 modification_time_func);
1521 globus_ftp_client_plugin_set_size_func(
1526 globus_ftp_client_plugin_set_abort_func(
1531 globus_ftp_client_plugin_set_connect_func(
1536 globus_ftp_client_plugin_set_authenticate_func(
1541 globus_ftp_client_plugin_set_read_func(
1546 globus_ftp_client_plugin_set_write_func(
1551 globus_ftp_client_plugin_set_data_func(
1556 globus_ftp_client_plugin_set_command_func(
1561 globus_ftp_client_plugin_set_response_func(
1566 globus_ftp_client_plugin_set_fault_func(
1571 globus_ftp_client_plugin_set_complete_func(
globus_result_t globus_ftp_client_plugin_restart_delete(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:825
void(* globus_ftp_client_plugin_complete_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle)
Definition: globus_ftp_client_plugin.h:1205
globus_result_t globus_ftp_client_plugin_restart_machine_list(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:225
globus_result_t globus_ftp_client_plugin_restart_get(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart_marker, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1161
globus_result_t globus_ftp_client_plugin_add_data_channels(globus_ftp_client_handle_t *handle, unsigned int num_channels, unsigned int stripe)
Definition: globus_ftp_client_plugin.c:1608
void(* globus_ftp_client_plugin_command_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const char *command)
Definition: globus_ftp_client_plugin.h:1121
globus_result_t globus_ftp_client_plugin_restart_move(globus_ftp_client_handle_t *handle, const char *source_url, const char *dest_url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1081
void(* globus_ftp_client_plugin_recursive_list_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:685
void(* globus_ftp_client_plugin_connect_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url)
Definition: globus_ftp_client_plugin.h:175
globus_result_t globus_ftp_client_plugin_restart_recursive_list(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:287
void(* globus_ftp_client_plugin_chmod_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, int mode, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:242
void(* globus_ftp_client_plugin_get_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:830
void(* globus_ftp_client_plugin_machine_list_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:650
globus_ftp_client_plugin_t *(* globus_ftp_client_plugin_copy_t)(globus_ftp_client_plugin_t *plugin_template, void *plugin_specific)
Definition: globus_ftp_client_plugin.h:131
void(* globus_ftp_client_plugin_verbose_list_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:615
globus_result_t globus_ftp_client_plugin_restart_stat(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:411
globus_result_t globus_ftp_client_plugin_restart_chmod(globus_ftp_client_handle_t *handle, const char *url, int mode, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:476
FTP Client handle implementation.
Definition: globus_i_ftp_client.h:522
void(* globus_ftp_client_plugin_list_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:580
void(* globus_ftp_client_plugin_mkdir_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:509
globus_result_t globus_ftp_client_plugin_restart_third_party_transfer(globus_ftp_client_handle_t *handle, const char *source_url, const globus_ftp_client_operationattr_t *source_attr, const char *dest_url, const globus_ftp_client_operationattr_t *dest_attr, globus_ftp_client_restart_marker_t *restart_marker, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1320
void(* globus_ftp_client_plugin_cksm_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, globus_off_t offset, globus_off_t length, const char *algorithm, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:400
Definition: globus_ftp_client_plugin.h:85
void(* globus_ftp_client_plugin_mlst_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:720
int globus_bool_t
Boolean type.
Definition: globus_types.h:93
void(* globus_ftp_client_plugin_rmdir_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:544
globus_result_t globus_ftp_client_plugin_restart_chgrp(globus_ftp_client_handle_t *handle, const char *url, const char *group, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:541
void(* globus_ftp_client_plugin_chgrp_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const char *group, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:280
globus_result_t globus_ftp_client_plugin_restart_cksm(globus_ftp_client_handle_t *handle, const char *url, globus_off_t offset, globus_off_t length, const char *algorithm, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:760
void(* globus_ftp_client_plugin_put_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:865
void(* globus_ftp_client_plugin_authenticate_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_control_auth_info_t *auth_info)
Definition: globus_ftp_client_plugin.h:206
globus_result_t globus_ftp_client_plugin_restart_symlink(globus_ftp_client_handle_t *handle, const char *url, const char *link_url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:683
The globus_i_ftp_client_operationattr_t is a pointer to this structure type.
Definition: globus_i_ftp_client.h:131
void(* globus_ftp_client_plugin_delete_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:438
globus_result_t globus_ftp_client_plugin_restart_mkdir(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:949
globus_result_t globus_ftp_client_plugin_remove_data_channels(globus_ftp_client_handle_t *handle, unsigned int num_channels, unsigned int stripe)
Definition: globus_ftp_client_plugin.c:1673
void(* globus_ftp_client_plugin_stat_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:756
globus_ftp_client_plugin_command_mask_t
Definition: globus_ftp_client_plugin.h:71
globus_result_t globus_ftp_client_plugin_restart_list(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:100
void(* globus_ftp_client_plugin_read_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const globus_byte_t *buffer, globus_size_t buffer_length)
Definition: globus_ftp_client_plugin.h:1024
globus_result_t globus_ftp_client_plugin_restart_utime(globus_ftp_client_handle_t *handle, const char *url, const struct tm *utime_time, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:612
void(* globus_ftp_client_plugin_fault_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, globus_object_t *error)
Definition: globus_ftp_client_plugin.h:1181
globus_result_t globus_ftp_client_plugin_restart_get_marker(globus_ftp_client_handle_t *handle, globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_plugin.c:1500
void(* globus_ftp_client_plugin_third_party_transfer_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *source_url, const globus_ftp_client_operationattr_t *source_attr, const char *dest_url, const globus_ftp_client_operationattr_t *dest_attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:904
globus_result_t globus_ftp_client_plugin_restart_put(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart_marker, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1237
globus_result_t globus_ftp_client_plugin_abort(globus_ftp_client_handle_t *handle)
Definition: globus_ftp_client_plugin.c:1583
Definition: globus_ftp_client_plugin.h:91
void(* globus_ftp_client_plugin_abort_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle)
Definition: globus_ftp_client_plugin.h:1000
void(* globus_ftp_client_plugin_symlink_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const char *utime_time, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:356
size_t globus_size_t
Standard size of memory objectThe globus_size_t is the size of a memory object. It is identical to si...
Definition: globus_types.h:48
void(* globus_ftp_client_plugin_modification_time_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:941
Definition: globus_ftp_client_plugin.h:88
unsigned char globus_byte_t
Unsigned byte datatypeThis is used for byte-addressable arrays of arbitrary data which is not subject...
Definition: globus_types.h:85
void(* globus_ftp_client_plugin_write_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const globus_byte_t *buffer, globus_size_t buffer_length, globus_off_t offset, globus_bool_t eof)
Definition: globus_ftp_client_plugin.h:1055
uint32_t globus_result_t
Definition: globus_types.h:99
globus_result_t globus_ftp_client_plugin_restart_rmdir(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1011
Definition: globus_ftp_client_plugin.h:76
void(* globus_ftp_client_plugin_feat_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:473
Definition: globus_ftp_client_plugin.h:97
globus_result_t globus_ftp_client_plugin_restart_modification_time(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1448
Definition: globus_ftp_client_plugin.h:100
void(* globus_ftp_client_plugin_size_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:976
void(* globus_ftp_client_plugin_data_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, globus_object_t *error, const globus_byte_t *buffer, globus_size_t length, globus_off_t offset, globus_bool_t eof)
Definition: globus_ftp_client_plugin.h:1089
void(* globus_ftp_client_plugin_utime_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, const struct tm *utime_time, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:318
Definition: globus_ftp_client_plugin.h:94
globus_result_t globus_ftp_client_plugin_restart_verbose_list(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:162
globus_result_t globus_ftp_client_plugin_restart_size(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:1389
void(* globus_ftp_client_plugin_response_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *url, globus_object_t *error, const globus_ftp_control_response_t *ftp_response)
Definition: globus_ftp_client_plugin.h:1154
FTP Client Plugin.Each plugin implementation should define a method for initializing one of these str...
Definition: globus_i_ftp_client.h:798
globus_result_t globus_ftp_client_plugin_restart_mlst(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:349
Restart marker.This structure is may be either a stream mode transfer offset, or an extended block mo...
Definition: globus_ftp_client.h:224
Definition: globus_ftp_client_plugin.h:79
Definition: globus_ftp_client_plugin.h:82
globus_result_t globus_ftp_client_plugin_restart_feat(globus_ftp_client_handle_t *handle, const char *url, const globus_ftp_client_operationattr_t *attr, const globus_abstime_t *when)
Definition: globus_ftp_client_plugin.c:887
Authentication Values.
Definition: globus_ftp_control.h:483
void(* globus_ftp_client_plugin_move_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific, globus_ftp_client_handle_t *handle, const char *source_url, const char *dest_url, const globus_ftp_client_operationattr_t *attr, globus_bool_t restart)
Definition: globus_ftp_client_plugin.h:794
void(* globus_ftp_client_plugin_destroy_t)(globus_ftp_client_plugin_t *plugin, void *plugin_specific)
Definition: globus_ftp_client_plugin.h:148