17 #ifndef GLOBUS_FTP_CLIENT_H
18 #define GLOBUS_FTP_CLIENT_H
25 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
76 #include "globus_ftp_control.h"
77 #include "globus_priority_q.h"
109 #define GLOBUS_FTP_CLIENT_MODULE (&globus_i_ftp_client_module)
118 GLOBUS_FTP_CLIENT_ERROR_PARAMETER,
119 GLOBUS_FTP_CLIENT_ERROR_MEMORY,
120 GLOBUS_FTP_CLIENT_ERROR_ABORTED,
121 GLOBUS_FTP_CLIENT_ERROR_INTERNAL,
122 GLOBUS_FTP_CLIENT_ERROR_IN_USE,
123 GLOBUS_FTP_CLIENT_ERROR_NOT_IN_USE,
124 GLOBUS_FTP_CLIENT_ERROR_COMPLETED,
125 GLOBUS_FTP_CLIENT_ERROR_INVALID_OPERATION,
126 GLOBUS_FTP_CLIENT_ERROR_UNEXPECTED_EOF,
127 GLOBUS_FTP_CLIENT_ERROR_NO_SUCH_FILE,
128 GLOBUS_FTP_CLIENT_ERROR_PROTOCOL,
129 GLOBUS_FTP_CLIENT_ERROR_RESPONSE,
130 GLOBUS_FTP_CLIENT_ERROR_FEATURE,
131 GLOBUS_FTP_CLIENT_ERROR_NO_RESTART_MARKER
144 GLOBUS_FTP_CLIENT_RESTART_NONE,
145 GLOBUS_FTP_CLIENT_RESTART_STREAM,
146 GLOBUS_FTP_CLIENT_RESTART_EXTENDED_BLOCK
177 globus_off_t ascii_offset;
203 globus_fifo_t ranges;
280 globus_ftp_client_handle_t * handle,
281 globus_object_t * error);
313 globus_ftp_client_handle_t * handle,
314 globus_object_t * error,
315 globus_byte_t * buffer,
316 globus_size_t length,
378 globus_off_t end_offset);
383 globus_off_t offset);
389 globus_off_t ascii_offset);
394 globus_off_t * total_bytes);
397 globus_ftp_client_restart_marker_get_first_block(
399 globus_off_t * offset,
400 globus_off_t * end_offset);
405 char ** marker_string);
410 const char * marker_string);
429 globus_ftp_client_handle_t * handle,
430 globus_ftp_client_handleattr_t* attr);
434 globus_ftp_client_handle_t * handle);
437 globus_ftp_client_handle_borrow_connection(
438 globus_ftp_client_handle_t * from_handle,
439 globus_bool_t from_is_source,
440 globus_ftp_client_handle_t * to_handle,
441 globus_bool_t to_is_source);
445 globus_ftp_client_handle_t * handle,
450 globus_ftp_client_handle_t * handle,
455 globus_ftp_client_handle_t * handle,
456 void * user_pointer);
459 globus_ftp_client_handle_get_user_pointer(
460 const globus_ftp_client_handle_t * handle,
461 void ** user_pointer);
464 globus_ftp_client_handle_get_restart_marker(
465 const globus_ftp_client_handle_t * handle,
470 globus_ftp_client_handle_t * handle,
471 globus_ftp_client_plugin_t * plugin);
475 globus_ftp_client_handle_t * handle,
476 globus_ftp_client_plugin_t * plugin);
495 globus_ftp_client_handleattr_t * attr);
499 globus_ftp_client_handleattr_t * attr);
503 globus_ftp_client_handleattr_t * dest,
504 globus_ftp_client_handleattr_t * src);
508 globus_ftp_client_handleattr_t * attr,
512 globus_ftp_client_handleattr_remove_cached_url(
513 globus_ftp_client_handleattr_t * attr,
518 globus_ftp_client_handleattr_t * attr,
519 globus_bool_t cache_all);
522 globus_ftp_client_handleattr_get_cache_all(
523 const globus_ftp_client_handleattr_t * attr,
524 globus_bool_t * cache_all);
528 globus_ftp_client_handleattr_t * attr,
529 globus_bool_t rfc1738_url);
532 globus_ftp_client_handleattr_get_rfc1738_url(
533 const globus_ftp_client_handleattr_t * attr,
534 globus_bool_t * rfc1738_url);
536 typedef void (*globus_ftp_client_pipeline_callback_t)(
537 globus_ftp_client_handle_t * handle,
544 globus_ftp_client_handleattr_t * attr,
545 globus_size_t outstanding_commands,
546 globus_ftp_client_pipeline_callback_t pipeline_callback,
547 void * pipeline_arg);
550 globus_ftp_client_handleattr_get_pipeline(
551 const globus_ftp_client_handleattr_t * attr,
552 globus_size_t * outstanding_commands,
553 globus_ftp_client_pipeline_callback_t * pipeline_callback,
554 void ** pipeline_arg);
558 globus_ftp_client_handleattr_t * attr,
559 globus_bool_t gridftp2);
562 globus_ftp_client_handleattr_get_gridftp2(
563 const globus_ftp_client_handleattr_t * attr,
564 globus_bool_t * gridftp2);
568 globus_ftp_client_handleattr_t * attr,
569 globus_netlogger_handle_t * nl_handle);
573 globus_ftp_client_handleattr_t * attr,
574 const char * app_name,
575 const char * app_version,
579 globus_ftp_client_handleattr_get_clientinfo(
580 globus_ftp_client_handleattr_t * attr,
586 globus_ftp_client_handleattr_set_netlogger_ftp_io(
587 globus_ftp_client_handleattr_t * attr,
588 globus_netlogger_handle_t * nl_handle,
593 globus_ftp_client_handleattr_remove_plugin(
594 globus_ftp_client_handleattr_t * attr,
595 globus_ftp_client_plugin_t * plugin);
599 globus_ftp_client_handleattr_t * attr,
600 globus_ftp_client_plugin_t * plugin);
615 globus_ftp_client_handle_t * u_handle,
618 globus_ftp_client_operationattr_t * attr,
620 void * callback_arg);
624 globus_ftp_client_handle_t * u_handle,
627 globus_ftp_client_operationattr_t * attr,
629 void * callback_arg);
633 globus_ftp_client_handle_t * u_handle,
635 const struct tm * utime_time,
636 globus_ftp_client_operationattr_t * attr,
638 void * callback_arg);
642 globus_ftp_client_handle_t * u_handle,
644 const char * link_url,
645 globus_ftp_client_operationattr_t * attr,
647 void * callback_arg);
651 globus_ftp_client_handle_t * handle,
653 globus_ftp_client_operationattr_t * attr,
657 const char * algorithm,
659 void * callback_arg);
663 globus_ftp_client_handle_t * handle,
665 globus_ftp_client_operationattr_t * attr,
667 void * callback_arg);
671 globus_ftp_client_handle_t * handle,
673 globus_ftp_client_operationattr_t * attr,
675 void * callback_arg);
679 globus_ftp_client_handle_t * handle,
681 globus_ftp_client_operationattr_t * attr,
683 void * callback_arg);
687 globus_ftp_client_handle_t * handle,
689 globus_ftp_client_operationattr_t * attr,
691 void * callback_arg);
695 globus_ftp_client_handle_t * handle,
697 globus_ftp_client_operationattr_t * attr,
699 void * callback_arg);
703 globus_ftp_client_handle_t * handle,
705 globus_ftp_client_operationattr_t * attr,
707 void * callback_arg);
711 globus_ftp_client_handle_t * handle,
713 globus_ftp_client_operationattr_t * attr,
715 void * callback_arg);
719 globus_ftp_client_handle_t * u_handle,
721 globus_ftp_client_operationattr_t * attr,
722 globus_byte_t ** mlst_buffer,
723 globus_size_t * mlst_buffer_length,
725 void * callback_arg);
729 globus_ftp_client_handle_t * u_handle,
731 globus_ftp_client_operationattr_t * attr,
732 globus_byte_t ** cwd_buffer,
733 globus_size_t * cwd_buffer_length,
735 void * callback_arg);
739 globus_ftp_client_handle_t * u_handle,
741 globus_ftp_client_operationattr_t * attr,
742 globus_byte_t ** stat_buffer,
743 globus_size_t * stat_buffer_length,
745 void * callback_arg);
749 globus_ftp_client_handle_t * handle,
750 const char * source_url,
751 const char * dest_url,
752 globus_ftp_client_operationattr_t * attr,
754 void * callback_arg);
758 globus_ftp_client_handle_t * handle,
760 globus_ftp_client_operationattr_t * attr,
763 void * callback_arg);
767 globus_ftp_client_handle_t * handle,
769 globus_ftp_client_operationattr_t * attr,
772 void * callback_arg);
776 globus_ftp_client_handle_t * handle,
777 const char * source_url,
778 globus_ftp_client_operationattr_t * source_attr,
779 const char * dest_url,
780 globus_ftp_client_operationattr_t * dest_attr,
783 void * callback_arg);
787 globus_ftp_client_handle_t * handle,
789 globus_ftp_client_operationattr_t * attr,
791 globus_off_t partial_offset,
792 globus_off_t partial_end_offset,
794 void * callback_arg);
798 globus_ftp_client_handle_t * handle,
800 globus_ftp_client_operationattr_t * attr,
802 globus_off_t partial_offset,
803 globus_off_t partial_end_offset,
805 void * callback_arg);
809 globus_ftp_client_handle_t * handle,
810 const char * source_url,
811 globus_ftp_client_operationattr_t * source_attr,
812 const char * dest_url,
813 globus_ftp_client_operationattr_t * dest_attr,
815 globus_off_t partial_offset,
816 globus_off_t partial_end_offset,
818 void * callback_arg);
822 globus_ftp_client_handle_t * handle,
824 globus_ftp_client_operationattr_t * attr,
826 const char * eret_alg_str,
828 void * callback_arg);
832 globus_ftp_client_handle_t * handle,
834 globus_ftp_client_operationattr_t * attr,
836 const char * esto_alg_str,
838 void * callback_arg);
842 globus_ftp_client_handle_t * handle,
843 const char * source_url,
844 globus_ftp_client_operationattr_t * source_attr,
845 const char * eret_alg_str,
846 const char * dest_url,
847 globus_ftp_client_operationattr_t * dest_attr,
848 const char * esto_alg_str,
851 void * callback_arg);
855 globus_ftp_client_handle_t * handle);
859 globus_ftp_client_handle_t * handle,
861 globus_ftp_client_operationattr_t * attr,
862 globus_abstime_t * modification_time,
864 void * callback_arg);
868 globus_ftp_client_handle_t * handle,
870 globus_ftp_client_operationattr_t * attr,
873 void * callback_arg);
877 globus_ftp_client_handle_t * handle,
879 globus_ftp_client_operationattr_t * attr,
881 void * callback_arg);
894 globus_ftp_client_operationattr_t * attr);
898 globus_ftp_client_operationattr_t * attr);
902 globus_ftp_client_operationattr_t * attr,
903 const globus_ftp_control_parallelism_t * parallelism);
906 globus_ftp_client_operationattr_get_parallelism(
907 const globus_ftp_client_operationattr_t * attr,
908 globus_ftp_control_parallelism_t * parallelism);
912 globus_ftp_client_operationattr_t * attr,
913 const char * module_name,
914 const char * module_args);
917 globus_ftp_client_operationattr_get_storage_module(
918 const globus_ftp_client_operationattr_t * attr,
920 char ** module_args);
924 globus_ftp_client_operationattr_t * attr,
925 const char * driver_list);
928 globus_ftp_client_operationattr_get_net_stack(
929 const globus_ftp_client_operationattr_t * attr,
930 char ** driver_list);
934 globus_ftp_client_operationattr_t * attr,
935 const char * driver_list);
938 globus_ftp_client_operationattr_get_disk_stack(
939 const globus_ftp_client_operationattr_t * attr,
940 char ** driver_list);
944 globus_ftp_client_operationattr_t * attr,
945 const char * authz_assert,
946 globus_bool_t cache_authz_assert);
949 globus_ftp_client_operationattr_get_authz_assert(
950 const globus_ftp_client_operationattr_t * attr,
951 char ** authz_assert,
952 globus_bool_t * cache_authz_assert);
956 globus_ftp_client_operationattr_t * attr,
957 globus_bool_t striped);
960 globus_ftp_client_operationattr_get_striped(
961 const globus_ftp_client_operationattr_t * attr,
962 globus_bool_t * striped);
966 globus_ftp_client_operationattr_t * attr,
967 const globus_ftp_control_layout_t * layout);
970 globus_ftp_client_operationattr_get_layout(
971 const globus_ftp_client_operationattr_t * attr,
972 globus_ftp_control_layout_t * layout);
976 globus_ftp_client_operationattr_t * attr,
977 const globus_ftp_control_tcpbuffer_t * tcp_buffer);
980 globus_ftp_client_operationattr_get_tcp_buffer(
981 const globus_ftp_client_operationattr_t * attr,
982 globus_ftp_control_tcpbuffer_t * tcp_buffer);
986 globus_ftp_client_operationattr_t * attr,
987 globus_ftp_control_type_t type);
990 globus_ftp_client_operationattr_get_type(
991 const globus_ftp_client_operationattr_t * attr,
992 globus_ftp_control_type_t * type);
996 globus_ftp_client_operationattr_t * attr,
997 globus_ftp_control_mode_t mode);
1000 globus_ftp_client_operationattr_get_mode(
1001 const globus_ftp_client_operationattr_t * attr,
1002 globus_ftp_control_mode_t * mode);
1006 const globus_ftp_client_operationattr_t * attr,
1007 globus_bool_t list_uses_data_mode);
1010 globus_ftp_client_operationattr_get_list_uses_data_mode(
1011 const globus_ftp_client_operationattr_t * attr,
1012 globus_bool_t * list_uses_data_mode);
1016 const globus_ftp_client_operationattr_t * attr,
1017 globus_bool_t delayed_pasv);
1020 globus_ftp_client_operationattr_get_delayed_pasv(
1021 const globus_ftp_client_operationattr_t * attr,
1022 globus_bool_t * delayed_pasv);
1026 globus_ftp_client_operationattr_t * attr,
1027 const globus_ftp_control_dcau_t * dcau);
1030 globus_ftp_client_operationattr_get_dcau(
1031 const globus_ftp_client_operationattr_t * attr,
1032 globus_ftp_control_dcau_t * dcau);
1036 globus_ftp_client_operationattr_t * attr,
1037 globus_ftp_control_protection_t protection);
1040 globus_ftp_client_operationattr_get_data_protection(
1041 const globus_ftp_client_operationattr_t * attr,
1042 globus_ftp_control_protection_t * protection);
1046 globus_ftp_client_operationattr_t * attr,
1047 globus_ftp_control_protection_t protection);
1050 globus_ftp_client_operationattr_get_control_protection(
1051 const globus_ftp_client_operationattr_t * attr,
1052 globus_ftp_control_protection_t * protection);
1056 globus_ftp_client_operationattr_t * attr,
1061 globus_ftp_client_operationattr_get_data_security(
1062 const globus_ftp_client_operationattr_t * attr,
1064 void ** credential);
1067 globus_ftp_client_operationattr_set_resume_third_party_transfer(
1068 globus_ftp_client_operationattr_t * attr,
1069 globus_bool_t resume);
1072 globus_ftp_client_operationattr_get_resume_third_party_transfer(
1073 const globus_ftp_client_operationattr_t * attr,
1074 globus_bool_t * resume);
1078 globus_ftp_client_operationattr_t * attr,
1079 gss_cred_id_t credential,
1081 const char * password,
1082 const char * account,
1083 const char * subject);
1086 globus_ftp_client_operationattr_get_authorization(
1087 const globus_ftp_client_operationattr_t * attr,
1088 gss_cred_id_t * credential,
1096 globus_ftp_client_operationattr_t * attr,
1097 globus_bool_t append);
1100 globus_ftp_client_operationattr_get_append(
1101 const globus_ftp_client_operationattr_t * attr,
1102 globus_bool_t * append);
1106 globus_ftp_client_operationattr_t * attr,
1107 globus_bool_t read_all,
1109 void * intermediate_callback_arg);
1112 globus_ftp_client_operationattr_get_read_all(
1113 const globus_ftp_client_operationattr_t * attr,
1114 globus_bool_t * read_all,
1116 void ** intermediate_callback_arg);
1120 globus_ftp_client_operationattr_t * attr,
1121 globus_bool_t allow);
1124 globus_ftp_client_operationattr_get_allow_ipv6(
1125 const globus_ftp_client_operationattr_t * attr,
1126 globus_bool_t * allow);
1130 globus_ftp_client_operationattr_t * attr,
1131 const globus_off_t allocated_size);
1134 globus_ftp_client_operationattr_get_allocate(
1135 const globus_ftp_client_operationattr_t * attr,
1136 globus_off_t * allocated_size);
1140 globus_ftp_client_operationattr_t * dst,
1141 const globus_ftp_client_operationattr_t * src);
1144 globus_ftp_client_operationattr_set_rfc1738_url(
1145 globus_ftp_client_operationattr_t * attr,
1146 globus_bool_t rfc1738_url);
1149 globus_ftp_client_operationattr_get_rfc1738_url(
1150 const globus_ftp_client_operationattr_t * attr,
1151 globus_bool_t * rfc1738_url);
1177 globus_ftp_client_handle_t * handle,
1178 globus_byte_t * buffer,
1179 globus_size_t buffer_length,
1181 void * callback_arg);
1185 globus_ftp_client_handle_t * handle,
1186 globus_byte_t * buffer,
1187 globus_size_t buffer_length,
1188 globus_off_t offset,
1191 void * callback_arg);
1202 GLOBUS_FTP_CLIENT_FALSE = GLOBUS_FALSE,
1203 GLOBUS_FTP_CLIENT_TRUE = GLOBUS_TRUE,
1204 GLOBUS_FTP_CLIENT_MAYBE
1217 GLOBUS_FTP_CLIENT_FEATURE_RETRBUFSIZE = 0,
1218 GLOBUS_FTP_CLIENT_FEATURE_RBUFSZ,
1219 GLOBUS_FTP_CLIENT_FEATURE_RBUFSIZ,
1220 GLOBUS_FTP_CLIENT_FEATURE_STORBUFSIZE,
1221 GLOBUS_FTP_CLIENT_FEATURE_SBUSSZ,
1222 GLOBUS_FTP_CLIENT_FEATURE_SBUFSIZ,
1223 GLOBUS_FTP_CLIENT_FEATURE_BUFSIZE,
1224 GLOBUS_FTP_CLIENT_FEATURE_SBUF,
1225 GLOBUS_FTP_CLIENT_FEATURE_ABUF,
1227 GLOBUS_FTP_CLIENT_FEATURE_REST_STREAM,
1228 GLOBUS_FTP_CLIENT_FEATURE_PARALLELISM,
1229 GLOBUS_FTP_CLIENT_FEATURE_DCAU,
1230 GLOBUS_FTP_CLIENT_FEATURE_DCSC,
1231 GLOBUS_FTP_CLIENT_FEATURE_ESTO,
1232 GLOBUS_FTP_CLIENT_FEATURE_ERET,
1233 GLOBUS_FTP_CLIENT_FEATURE_SIZE,
1234 GLOBUS_FTP_CLIENT_FEATURE_CKSM,
1235 GLOBUS_FTP_CLIENT_FEATURE_CHMOD,
1236 GLOBUS_FTP_CLIENT_FEATURE_AUTHZ_ASSERT,
1237 GLOBUS_FTP_CLIENT_FEATURE_CLIENTINFO,
1238 GLOBUS_FTP_CLIENT_FEATURE_SITE_SETNETSTACK,
1239 GLOBUS_FTP_CLIENT_FEATURE_DELAYED_PASV,
1240 GLOBUS_FTP_CLIENT_FEATURE_GETPUT,
1241 GLOBUS_FTP_CLIENT_FEATURE_MLST,
1242 GLOBUS_FTP_CLIENT_FEATURE_CHGRP,
1243 GLOBUS_FTP_CLIENT_FEATURE_UTIME,
1244 GLOBUS_FTP_CLIENT_FEATURE_SYMLINK,
1245 GLOBUS_FTP_CLIENT_FEATURE_MAX,
1246 GLOBUS_FTP_CLIENT_LAST_BUFFER_COMMAND = GLOBUS_FTP_CLIENT_FEATURE_ABUF,
1247 GLOBUS_FTP_CLIENT_FIRST_FEAT_FEATURE = GLOBUS_FTP_CLIENT_FEATURE_SBUF,
1248 GLOBUS_FTP_CLIENT_LAST_FEAT_FEATURE = GLOBUS_FTP_CLIENT_FEATURE_MLST
1265 globus_ftp_client_handle_t * u_handle,
1267 globus_ftp_client_operationattr_t * attr,
1268 globus_ftp_client_features_t * u_features,
1270 void * callback_arg);
1274 const globus_ftp_client_features_t * u_features,
1279 globus_ftp_client_features_t *);
1281 globus_ftp_client_features_t *);
1295 globus_error_ftp_error_get_code(
1296 globus_object_t * error);
1298 #define GLOBUS_ERROR_TYPE_FTP (&GLOBUS_ERROR_TYPE_FTP_DEFINITION)
1299 extern const globus_object_type_t GLOBUS_ERROR_TYPE_FTP_DEFINITION;
globus_result_t globus_ftp_client_get(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3215
globus_result_t globus_ftp_client_handleattr_add_cached_url(globus_ftp_client_handleattr_t *attr, const char *url)
Definition: globus_ftp_client_attr.c:872
globus_result_t globus_ftp_client_operationattr_set_control_protection(globus_ftp_client_operationattr_t *attr, globus_ftp_control_protection_t protection)
Definition: globus_ftp_client_attr.c:3322
globus_ftp_client_restart_type_t
Definition: globus_ftp_client.h:142
struct globus_i_ftp_client_features_s * globus_ftp_client_features_t
Feature HandleHandle used to associate state with feature operations.
Definition: globus_ftp_client.h:1260
globus_result_t globus_ftp_client_mlst(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_byte_t **mlst_buffer, globus_size_t *mlst_buffer_length, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1638
globus_result_t globus_ftp_client_symlink(globus_ftp_client_handle_t *u_handle, const char *source_url, const char *link_url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:2923
globus_result_t globus_ftp_client_handleattr_set_clientinfo(globus_ftp_client_handleattr_t *attr, const char *app_name, const char *app_version, const char *other)
Definition: globus_ftp_client_attr.c:593
globus_result_t globus_ftp_client_operationattr_set_tcp_buffer(globus_ftp_client_operationattr_t *attr, const globus_ftp_control_tcpbuffer_t *tcp_buffer)
Definition: globus_ftp_client_attr.c:2211
globus_result_t globus_ftp_client_operationattr_set_layout(globus_ftp_client_operationattr_t *attr, const globus_ftp_control_layout_t *layout)
Definition: globus_ftp_client_attr.c:2096
void(* globus_ftp_client_complete_callback_t)(void *user_arg, globus_ftp_client_handle_t *handle, globus_object_t *error)
Definition: globus_ftp_client.h:278
globus_result_t globus_ftp_client_operationattr_set_striped(globus_ftp_client_operationattr_t *attr, globus_bool_t striped)
Definition: globus_ftp_client_attr.c:2003
FTP Client handle implementation.
Definition: globus_i_ftp_client.h:522
globus_result_t globus_ftp_client_operationattr_set_append(globus_ftp_client_operationattr_t *attr, globus_bool_t append)
Definition: globus_ftp_client_attr.c:3418
Handle attributes.
Definition: globus_i_ftp_client.h:193
FTP server features we are interested in.
Definition: globus_i_ftp_client.h:436
globus_result_t globus_ftp_client_operationattr_set_delayed_pasv(const globus_ftp_client_operationattr_t *attr, globus_bool_t delayed_pasv)
Definition: globus_ftp_client_attr.c:2582
struct globus_i_ftp_client_operationattr_t * globus_ftp_client_operationattr_t
Operation Attributes.FTP Client attributes are used to control the parameters needed to access an URL...
Definition: globus_ftp_client.h:333
globus_ftp_client_error_t
Definition: globus_ftp_client.h:116
globus_result_t globus_ftp_client_operationattr_set_storage_module(globus_ftp_client_operationattr_t *attr, const char *module_name, const char *module_args)
Definition: globus_ftp_client_attr.c:1367
globus_result_t globus_ftp_client_list(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1129
globus_result_t globus_ftp_client_utime(globus_ftp_client_handle_t *u_handle, const char *url, const struct tm *utime_time, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:2676
globus_result_t globus_ftp_client_extended_third_party_transfer(globus_ftp_client_handle_t *handle, const char *source_url, globus_ftp_client_operationattr_t *source_attr, const char *eret_alg_str, const char *dest_url, globus_ftp_client_operationattr_t *dest_attr, const char *esto_alg_str, globus_ftp_client_restart_marker_t *restart, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:4466
globus_result_t globus_ftp_client_restart_marker_set_ascii_offset(globus_ftp_client_restart_marker_t *marker, globus_off_t offset, globus_off_t ascii_offset)
Definition: globus_ftp_client_restart_marker.c:354
globus_result_t globus_ftp_client_operationattr_set_type(globus_ftp_client_operationattr_t *attr, globus_ftp_control_type_t type)
Definition: globus_ftp_client_attr.c:2311
globus_result_t globus_ftp_client_operationattr_set_net_stack(globus_ftp_client_operationattr_t *attr, const char *driver_list)
Definition: globus_ftp_client_attr.c:1498
globus_result_t globus_ftp_client_handle_init(globus_ftp_client_handle_t *handle, globus_ftp_client_handleattr_t *attr)
Definition: globus_ftp_client_handle.c:243
globus_result_t globus_ftp_client_register_read(globus_ftp_client_handle_t *handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_ftp_client_data_callback_t callback, void *callback_arg)
Definition: globus_ftp_client_data.c:122
globus_ftp_client_tristate_t
Definition: globus_ftp_client.h:1200
globus_result_t globus_ftp_client_partial_put(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, globus_off_t partial_offset, globus_off_t partial_end_offset, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3835
globus_result_t globus_ftp_client_operationattr_init(globus_ftp_client_operationattr_t *attr)
Definition: globus_ftp_client_attr.c:1147
globus_ftp_client_probed_feature_t
Definition: globus_ftp_client.h:1212
globus_result_t globus_ftp_client_chmod(globus_ftp_client_handle_t *u_handle, const char *url, int mode, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:2186
globus_result_t globus_ftp_client_partial_get(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, globus_off_t partial_offset, globus_off_t partial_end_offset, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3286
globus_result_t globus_ftp_client_move(globus_ftp_client_handle_t *u_handle, const char *source_url, const char *dest_url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1896
globus_result_t globus_ftp_client_operationattr_set_dcau(globus_ftp_client_operationattr_t *attr, const globus_ftp_control_dcau_t *dcau)
Definition: globus_ftp_client_attr.c:2988
globus_result_t globus_ftp_client_operationattr_set_data_security(globus_ftp_client_operationattr_t *attr, int type, void *credential)
Definition: globus_ftp_client_attr.c:3171
globus_result_t globus_ftp_client_operationattr_set_allocate(globus_ftp_client_operationattr_t *attr, const globus_off_t allocated_size)
Definition: globus_ftp_client_attr.c:1809
globus_result_t globus_ftp_client_restart_marker_set_offset(globus_ftp_client_restart_marker_t *marker, globus_off_t offset)
Definition: globus_ftp_client_restart_marker.c:409
globus_result_t globus_ftp_client_handleattr_set_pipeline(globus_ftp_client_handleattr_t *attr, globus_size_t outstanding_commands, globus_ftp_client_pipeline_callback_t pipeline_callback, void *pipeline_arg)
Definition: globus_ftp_client_attr.c:781
globus_module_descriptor_t globus_i_ftp_client_module
Definition: globus_ftp_client.c:94
globus_result_t globus_ftp_client_features_destroy(globus_ftp_client_features_t *u_features)
Definition: globus_ftp_client_feature.c:113
The globus_i_ftp_client_operationattr_t is a pointer to this structure type.
Definition: globus_i_ftp_client.h:131
globus_result_t globus_ftp_client_operationattr_set_list_uses_data_mode(const globus_ftp_client_operationattr_t *attr, globus_bool_t list_uses_data_mode)
Definition: globus_ftp_client_attr.c:2513
globus_result_t globus_ftp_client_restart_marker_copy(globus_ftp_client_restart_marker_t *new_marker, globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_restart_marker.c:69
globus_result_t globus_ftp_client_restart_marker_from_string(globus_ftp_client_restart_marker_t *marker, const char *marker_string)
Definition: globus_ftp_client_restart_marker.c:708
globus_result_t globus_ftp_client_stat(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_byte_t **stat_buffer, globus_size_t *stat_buffer_length, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1256
globus_result_t globus_ftp_client_modification_time(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_abstime_t *modification_time, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:4905
struct globus_i_ftp_client_handleattr_t * globus_ftp_client_handleattr_t
Handle Attributes.Handle attributes are used to control the caching behavior of the ftp client handle...
Definition: globus_ftp_client.h:346
globus_result_t globus_ftp_client_operationattr_set_allow_ipv6(globus_ftp_client_operationattr_t *attr, globus_bool_t allow_ipv6)
Definition: globus_ftp_client_attr.c:3502
globus_result_t globus_ftp_client_handle_add_plugin(globus_ftp_client_handle_t *handle, globus_ftp_client_plugin_t *plugin)
Definition: globus_ftp_client_handle.c:694
globus_result_t globus_ftp_client_handleattr_set_rfc1738_url(globus_ftp_client_handleattr_t *attr, globus_bool_t rfc1738_url)
Definition: globus_ftp_client_attr.c:512
globus_result_t globus_ftp_client_operationattr_set_parallelism(globus_ftp_client_operationattr_t *attr, const globus_ftp_control_parallelism_t *parallelism)
Definition: globus_ftp_client_attr.c:1710
globus_result_t globus_ftp_client_restart_marker_destroy(globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_restart_marker.c:141
Stream mode restart marker.
Definition: globus_ftp_client.h:161
globus_result_t globus_ftp_client_operationattr_set_mode(globus_ftp_client_operationattr_t *attr, globus_ftp_control_mode_t mode)
Definition: globus_ftp_client_attr.c:2415
globus_result_t globus_ftp_client_size(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_off_t *size, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:5155
globus_result_t globus_ftp_client_handleattr_copy(globus_ftp_client_handleattr_t *dest, globus_ftp_client_handleattr_t *src)
Definition: globus_ftp_client_attr.c:378
globus_result_t globus_ftp_client_restart_marker_insert_range(globus_ftp_client_restart_marker_t *marker, globus_off_t offset, globus_off_t end_offset)
Definition: globus_ftp_client_restart_marker.c:206
globus_result_t globus_ftp_client_register_write(globus_ftp_client_handle_t *handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_off_t offset, globus_bool_t eof, globus_ftp_client_data_callback_t callback, void *callback_arg)
Definition: globus_ftp_client_data.c:337
globus_result_t globus_ftp_client_handle_destroy(globus_ftp_client_handle_t *handle)
Definition: globus_ftp_client_handle.c:364
globus_result_t globus_ftp_client_operationattr_set_authorization(globus_ftp_client_operationattr_t *attr, gss_cred_id_t credential, const char *user, const char *password, const char *account, const char *subject)
Definition: globus_ftp_client_attr.c:2756
globus_result_t globus_ftp_client_handleattr_set_gridftp2(globus_ftp_client_handleattr_t *attr, globus_bool_t gridftp2)
Definition: globus_ftp_client_attr.c:702
globus_result_t globus_ftp_client_extended_put(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, const char *esto_alg_str, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3908
globus_result_t globus_ftp_client_restart_marker_to_string(globus_ftp_client_restart_marker_t *marker, char **marker_string)
Definition: globus_ftp_client_restart_marker.c:571
globus_result_t globus_ftp_client_handleattr_add_plugin(globus_ftp_client_handleattr_t *attr, globus_ftp_client_plugin_t *plugin)
Definition: globus_ftp_client_attr.c:1004
globus_result_t globus_ftp_client_operationattr_destroy(globus_ftp_client_operationattr_t *attr)
Definition: globus_ftp_client_attr.c:1252
globus_result_t globus_ftp_client_exists(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_exists.c:174
globus_result_t globus_ftp_client_restart_marker_get_total(globus_ftp_client_restart_marker_t *marker, globus_off_t *total_bytes)
Definition: globus_ftp_client_restart_marker.c:452
globus_result_t globus_ftp_client_abort(globus_ftp_client_handle_t *u_handle)
Definition: globus_ftp_client_transfer.c:5638
globus_result_t globus_ftp_client_put(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3772
globus_result_t globus_ftp_client_handleattr_set_netlogger(globus_ftp_client_handleattr_t *attr, globus_netlogger_handle_t *nl_handle)
Definition: globus_ftp_client_attr.c:938
globus_result_t globus_ftp_client_operationattr_set_data_protection(globus_ftp_client_operationattr_t *attr, globus_ftp_control_protection_t protection)
Definition: globus_ftp_client_attr.c:3097
globus_result_t globus_ftp_client_handle_set_user_pointer(globus_ftp_client_handle_t *handle, void *user_pointer)
Definition: globus_ftp_client_handle.c:558
struct globus_i_ftp_client_handle_t * globus_ftp_client_handle_t
FTP Client Handle.An FTP client handle is used to associate state with a group of operations...
Definition: globus_ftp_client.h:242
globus_result_t globus_ftp_client_handle_remove_plugin(globus_ftp_client_handle_t *handle, globus_ftp_client_plugin_t *plugin)
Definition: globus_ftp_client_handle.c:817
globus_result_t globus_ftp_client_recursive_list(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1568
globus_result_t globus_ftp_client_cksm(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, char *cksm, globus_off_t offset, globus_off_t length, const char *algorithm, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:5409
void(* globus_ftp_client_data_callback_t)(void *user_arg, globus_ftp_client_handle_t *handle, globus_object_t *error, globus_byte_t *buffer, globus_size_t length, globus_off_t offset, globus_bool_t eof)
Definition: globus_ftp_client.h:311
globus_result_t globus_ftp_client_cwd(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_byte_t **cwd_buffer, globus_size_t *cwd_buffer_length, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:643
globus_result_t globus_ftp_client_machine_list(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1510
struct globus_i_ftp_client_plugin_t * globus_ftp_client_plugin_t
FTP Client pluginAn FTP Client plugin is used to add restart, monitoring, and performance tuning oper...
Definition: globus_ftp_client.h:257
globus_result_t globus_ftp_client_chgrp(globus_ftp_client_handle_t *u_handle, const char *url, const char *group, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:2424
globus_result_t globus_ftp_client_verbose_list(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:1187
globus_result_t globus_ftp_client_mkdir(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:171
globus_result_t globus_ftp_client_operationattr_copy(globus_ftp_client_operationattr_t *dst, const globus_ftp_client_operationattr_t *src)
Definition: globus_ftp_client_attr.c:3693
globus_result_t globus_ftp_client_delete(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:893
globus_result_t globus_ftp_client_handleattr_set_cache_all(globus_ftp_client_handleattr_t *attr, globus_bool_t cache_all)
Definition: globus_ftp_client_attr.c:440
globus_result_t globus_ftp_client_operationattr_set_disk_stack(globus_ftp_client_operationattr_t *attr, const char *driver_list)
Definition: globus_ftp_client_attr.c:1600
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_handle_cache_url_state(globus_ftp_client_handle_t *handle, const char *url)
Definition: globus_ftp_client_handle.c:449
globus_result_t globus_ftp_client_features_init(globus_ftp_client_features_t *u_features)
Definition: globus_ftp_client_feature.c:90
globus_result_t globus_ftp_client_partial_third_party_transfer(globus_ftp_client_handle_t *handle, const char *source_url, globus_ftp_client_operationattr_t *source_attr, const char *dest_url, globus_ftp_client_operationattr_t *dest_attr, globus_ftp_client_restart_marker_t *restart, globus_off_t partial_offset, globus_off_t partial_end_offset, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:4310
Restart marker.This structure is may be either a stream mode transfer offset, or an extended block mo...
Definition: globus_ftp_client.h:220
globus_result_t globus_ftp_client_rmdir(globus_ftp_client_handle_t *u_handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:402
globus_result_t globus_ftp_client_handle_flush_url_state(globus_ftp_client_handle_t *handle, const char *url)
Definition: globus_ftp_client_handle.c:498
globus_result_t globus_ftp_client_operationattr_set_authz_assert(globus_ftp_client_operationattr_t *attr, const char *authz_assert, globus_bool_t cache_authz_assert)
Definition: globus_ftp_client_attr.c:1894
globus_result_t globus_ftp_client_handleattr_init(globus_ftp_client_handleattr_t *attr)
Definition: globus_ftp_client_attr.c:244
globus_result_t globus_ftp_client_restart_marker_init(globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_restart_marker.c:37
globus_result_t globus_ftp_client_operationattr_set_read_all(globus_ftp_client_operationattr_t *attr, globus_bool_t read_all, globus_ftp_client_data_callback_t intermediate_callback, void *intermediate_callback_arg)
Definition: globus_ftp_client_attr.c:3592
globus_result_t globus_ftp_client_is_feature_supported(const globus_ftp_client_features_t *u_features, globus_ftp_client_tristate_t *answer, globus_ftp_client_probed_feature_t feature)
Definition: globus_ftp_client_feature.c:358
globus_result_t globus_ftp_client_feat(globus_ftp_client_handle_t *u_handle, char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_features_t *u_features, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_feature.c:160
Extended block mode restart marker.
Definition: globus_ftp_client.h:192
globus_result_t globus_ftp_client_handleattr_destroy(globus_ftp_client_handleattr_t *attr)
Definition: globus_ftp_client_attr.c:307
globus_result_t globus_ftp_client_third_party_transfer(globus_ftp_client_handle_t *handle, const char *source_url, globus_ftp_client_operationattr_t *source_attr, const char *dest_url, globus_ftp_client_operationattr_t *dest_attr, globus_ftp_client_restart_marker_t *restart, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:4238
globus_result_t globus_ftp_client_extended_get(globus_ftp_client_handle_t *handle, const char *url, globus_ftp_client_operationattr_t *attr, globus_ftp_client_restart_marker_t *restart, const char *eret_alg_str, globus_ftp_client_complete_callback_t complete_callback, void *callback_arg)
Definition: globus_ftp_client_transfer.c:3439