2 #ifndef GLOBUS_FTP_CLIENT_H
3 #define GLOBUS_FTP_CLIENT_H
10 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
61 #include "globus_ftp_control.h"
62 #include "globus_priority_q.h"
94 #define GLOBUS_FTP_CLIENT_MODULE (&globus_i_ftp_client_module)
103 GLOBUS_FTP_CLIENT_ERROR_PARAMETER,
104 GLOBUS_FTP_CLIENT_ERROR_MEMORY,
105 GLOBUS_FTP_CLIENT_ERROR_ABORTED,
106 GLOBUS_FTP_CLIENT_ERROR_INTERNAL,
107 GLOBUS_FTP_CLIENT_ERROR_IN_USE,
108 GLOBUS_FTP_CLIENT_ERROR_NOT_IN_USE,
109 GLOBUS_FTP_CLIENT_ERROR_COMPLETED,
110 GLOBUS_FTP_CLIENT_ERROR_INVALID_OPERATION,
111 GLOBUS_FTP_CLIENT_ERROR_UNEXPECTED_EOF,
112 GLOBUS_FTP_CLIENT_ERROR_NO_SUCH_FILE,
113 GLOBUS_FTP_CLIENT_ERROR_PROTOCOL,
114 GLOBUS_FTP_CLIENT_ERROR_RESPONSE,
115 GLOBUS_FTP_CLIENT_ERROR_FEATURE,
116 GLOBUS_FTP_CLIENT_ERROR_NO_RESTART_MARKER
129 GLOBUS_FTP_CLIENT_RESTART_NONE,
130 GLOBUS_FTP_CLIENT_RESTART_STREAM,
131 GLOBUS_FTP_CLIENT_RESTART_EXTENDED_BLOCK
162 globus_off_t ascii_offset;
188 globus_fifo_t ranges;
265 globus_ftp_client_handle_t * handle,
266 globus_object_t * error);
298 globus_ftp_client_handle_t * handle,
299 globus_object_t * error,
300 globus_byte_t * buffer,
301 globus_size_t length,
363 globus_off_t end_offset);
368 globus_off_t offset);
374 globus_off_t ascii_offset);
379 globus_off_t * total_bytes);
382 globus_ftp_client_restart_marker_get_first_block(
384 globus_off_t * offset,
385 globus_off_t * end_offset);
390 char ** marker_string);
395 const char * marker_string);
414 globus_ftp_client_handle_t * handle,
415 globus_ftp_client_handleattr_t* attr);
419 globus_ftp_client_handle_t * handle);
422 globus_ftp_client_handle_borrow_connection(
423 globus_ftp_client_handle_t * from_handle,
424 globus_bool_t from_is_source,
425 globus_ftp_client_handle_t * to_handle,
426 globus_bool_t to_is_source);
430 globus_ftp_client_handle_t * handle,
435 globus_ftp_client_handle_t * handle,
440 globus_ftp_client_handle_t * handle,
441 void * user_pointer);
444 globus_ftp_client_handle_get_user_pointer(
445 const globus_ftp_client_handle_t * handle,
446 void ** user_pointer);
449 globus_ftp_client_handle_get_restart_marker(
450 const globus_ftp_client_handle_t * handle,
455 globus_ftp_client_handle_t * handle,
456 globus_ftp_client_plugin_t * plugin);
460 globus_ftp_client_handle_t * handle,
461 globus_ftp_client_plugin_t * plugin);
480 globus_ftp_client_handleattr_t * attr);
484 globus_ftp_client_handleattr_t * attr);
488 globus_ftp_client_handleattr_t * dest,
489 globus_ftp_client_handleattr_t * src);
493 globus_ftp_client_handleattr_t * attr,
497 globus_ftp_client_handleattr_remove_cached_url(
498 globus_ftp_client_handleattr_t * attr,
503 globus_ftp_client_handleattr_t * attr,
504 globus_bool_t cache_all);
507 globus_ftp_client_handleattr_get_cache_all(
508 const globus_ftp_client_handleattr_t * attr,
509 globus_bool_t * cache_all);
513 globus_ftp_client_handleattr_t * attr,
514 globus_bool_t rfc1738_url);
517 globus_ftp_client_handleattr_get_rfc1738_url(
518 const globus_ftp_client_handleattr_t * attr,
519 globus_bool_t * rfc1738_url);
521 typedef void (*globus_ftp_client_pipeline_callback_t)(
522 globus_ftp_client_handle_t * handle,
529 globus_ftp_client_handleattr_t * attr,
530 globus_size_t outstanding_commands,
531 globus_ftp_client_pipeline_callback_t pipeline_callback,
532 void * pipeline_arg);
535 globus_ftp_client_handleattr_get_pipeline(
536 const globus_ftp_client_handleattr_t * attr,
537 globus_size_t * outstanding_commands,
538 globus_ftp_client_pipeline_callback_t * pipeline_callback,
539 void ** pipeline_arg);
543 globus_ftp_client_handleattr_t * attr,
544 globus_bool_t gridftp2);
547 globus_ftp_client_handleattr_get_gridftp2(
548 const globus_ftp_client_handleattr_t * attr,
549 globus_bool_t * gridftp2);
553 globus_ftp_client_handleattr_t * attr,
554 globus_netlogger_handle_t * nl_handle);
558 globus_ftp_client_handleattr_t * attr,
559 const char * app_name,
560 const char * app_version,
564 globus_ftp_client_handleattr_get_clientinfo(
565 globus_ftp_client_handleattr_t * attr,
571 globus_ftp_client_handleattr_set_netlogger_ftp_io(
572 globus_ftp_client_handleattr_t * attr,
573 globus_netlogger_handle_t * nl_handle,
578 globus_ftp_client_handleattr_remove_plugin(
579 globus_ftp_client_handleattr_t * attr,
580 globus_ftp_client_plugin_t * plugin);
584 globus_ftp_client_handleattr_t * attr,
585 globus_ftp_client_plugin_t * plugin);
600 globus_ftp_client_handle_t * u_handle,
603 globus_ftp_client_operationattr_t * attr,
605 void * callback_arg);
609 globus_ftp_client_handle_t * u_handle,
612 globus_ftp_client_operationattr_t * attr,
614 void * callback_arg);
618 globus_ftp_client_handle_t * u_handle,
620 const struct tm * utime_time,
621 globus_ftp_client_operationattr_t * attr,
623 void * callback_arg);
627 globus_ftp_client_handle_t * u_handle,
629 const char * link_url,
630 globus_ftp_client_operationattr_t * attr,
632 void * callback_arg);
636 globus_ftp_client_handle_t * handle,
638 globus_ftp_client_operationattr_t * attr,
642 const char * algorithm,
644 void * callback_arg);
648 globus_ftp_client_handle_t * handle,
650 globus_ftp_client_operationattr_t * attr,
652 void * callback_arg);
656 globus_ftp_client_handle_t * handle,
658 globus_ftp_client_operationattr_t * attr,
660 void * callback_arg);
664 globus_ftp_client_handle_t * handle,
666 globus_ftp_client_operationattr_t * attr,
668 void * callback_arg);
672 globus_ftp_client_handle_t * handle,
674 globus_ftp_client_operationattr_t * attr,
676 void * callback_arg);
680 globus_ftp_client_handle_t * handle,
682 globus_ftp_client_operationattr_t * attr,
684 void * callback_arg);
688 globus_ftp_client_handle_t * handle,
690 globus_ftp_client_operationattr_t * attr,
692 void * callback_arg);
696 globus_ftp_client_handle_t * handle,
698 globus_ftp_client_operationattr_t * attr,
700 void * callback_arg);
704 globus_ftp_client_handle_t * u_handle,
706 globus_ftp_client_operationattr_t * attr,
707 globus_byte_t ** mlst_buffer,
708 globus_size_t * mlst_buffer_length,
710 void * callback_arg);
714 globus_ftp_client_handle_t * u_handle,
716 globus_ftp_client_operationattr_t * attr,
717 globus_byte_t ** cwd_buffer,
718 globus_size_t * cwd_buffer_length,
720 void * callback_arg);
724 globus_ftp_client_handle_t * u_handle,
726 globus_ftp_client_operationattr_t * attr,
727 globus_byte_t ** stat_buffer,
728 globus_size_t * stat_buffer_length,
730 void * callback_arg);
734 globus_ftp_client_handle_t * handle,
735 const char * source_url,
736 const char * dest_url,
737 globus_ftp_client_operationattr_t * attr,
739 void * callback_arg);
743 globus_ftp_client_handle_t * handle,
745 globus_ftp_client_operationattr_t * attr,
748 void * callback_arg);
752 globus_ftp_client_handle_t * handle,
754 globus_ftp_client_operationattr_t * attr,
757 void * callback_arg);
761 globus_ftp_client_handle_t * handle,
762 const char * source_url,
763 globus_ftp_client_operationattr_t * source_attr,
764 const char * dest_url,
765 globus_ftp_client_operationattr_t * dest_attr,
768 void * callback_arg);
772 globus_ftp_client_handle_t * handle,
774 globus_ftp_client_operationattr_t * attr,
776 globus_off_t partial_offset,
777 globus_off_t partial_end_offset,
779 void * callback_arg);
783 globus_ftp_client_handle_t * handle,
785 globus_ftp_client_operationattr_t * attr,
787 globus_off_t partial_offset,
788 globus_off_t partial_end_offset,
790 void * callback_arg);
794 globus_ftp_client_handle_t * handle,
795 const char * source_url,
796 globus_ftp_client_operationattr_t * source_attr,
797 const char * dest_url,
798 globus_ftp_client_operationattr_t * dest_attr,
800 globus_off_t partial_offset,
801 globus_off_t partial_end_offset,
803 void * callback_arg);
807 globus_ftp_client_handle_t * handle,
809 globus_ftp_client_operationattr_t * attr,
811 const char * eret_alg_str,
813 void * callback_arg);
817 globus_ftp_client_handle_t * handle,
819 globus_ftp_client_operationattr_t * attr,
821 const char * esto_alg_str,
823 void * callback_arg);
827 globus_ftp_client_handle_t * handle,
828 const char * source_url,
829 globus_ftp_client_operationattr_t * source_attr,
830 const char * eret_alg_str,
831 const char * dest_url,
832 globus_ftp_client_operationattr_t * dest_attr,
833 const char * esto_alg_str,
836 void * callback_arg);
840 globus_ftp_client_handle_t * handle);
844 globus_ftp_client_handle_t * handle,
846 globus_ftp_client_operationattr_t * attr,
847 globus_abstime_t * modification_time,
849 void * callback_arg);
853 globus_ftp_client_handle_t * handle,
855 globus_ftp_client_operationattr_t * attr,
858 void * callback_arg);
862 globus_ftp_client_handle_t * handle,
864 globus_ftp_client_operationattr_t * attr,
866 void * callback_arg);
879 globus_ftp_client_operationattr_t * attr);
883 globus_ftp_client_operationattr_t * attr);
887 globus_ftp_client_operationattr_t * attr,
888 const globus_ftp_control_parallelism_t * parallelism);
891 globus_ftp_client_operationattr_get_parallelism(
892 const globus_ftp_client_operationattr_t * attr,
893 globus_ftp_control_parallelism_t * parallelism);
897 globus_ftp_client_operationattr_t * attr,
898 const char * module_name,
899 const char * module_args);
902 globus_ftp_client_operationattr_get_storage_module(
903 const globus_ftp_client_operationattr_t * attr,
905 char ** module_args);
909 globus_ftp_client_operationattr_t * attr,
910 const char * driver_list);
913 globus_ftp_client_operationattr_get_net_stack(
914 const globus_ftp_client_operationattr_t * attr,
915 char ** driver_list);
919 globus_ftp_client_operationattr_t * attr,
920 const char * driver_list);
923 globus_ftp_client_operationattr_get_disk_stack(
924 const globus_ftp_client_operationattr_t * attr,
925 char ** driver_list);
929 globus_ftp_client_operationattr_t * attr,
930 const char * authz_assert,
931 globus_bool_t cache_authz_assert);
934 globus_ftp_client_operationattr_get_authz_assert(
935 const globus_ftp_client_operationattr_t * attr,
936 char ** authz_assert,
937 globus_bool_t * cache_authz_assert);
941 globus_ftp_client_operationattr_t * attr,
942 globus_bool_t striped);
945 globus_ftp_client_operationattr_get_striped(
946 const globus_ftp_client_operationattr_t * attr,
947 globus_bool_t * striped);
951 globus_ftp_client_operationattr_t * attr,
952 const globus_ftp_control_layout_t * layout);
955 globus_ftp_client_operationattr_get_layout(
956 const globus_ftp_client_operationattr_t * attr,
957 globus_ftp_control_layout_t * layout);
961 globus_ftp_client_operationattr_t * attr,
962 const globus_ftp_control_tcpbuffer_t * tcp_buffer);
965 globus_ftp_client_operationattr_get_tcp_buffer(
966 const globus_ftp_client_operationattr_t * attr,
967 globus_ftp_control_tcpbuffer_t * tcp_buffer);
971 globus_ftp_client_operationattr_t * attr,
972 globus_ftp_control_type_t type);
975 globus_ftp_client_operationattr_get_type(
976 const globus_ftp_client_operationattr_t * attr,
977 globus_ftp_control_type_t * type);
981 globus_ftp_client_operationattr_t * attr,
982 globus_ftp_control_mode_t mode);
985 globus_ftp_client_operationattr_get_mode(
986 const globus_ftp_client_operationattr_t * attr,
987 globus_ftp_control_mode_t * mode);
991 const globus_ftp_client_operationattr_t * attr,
992 globus_bool_t list_uses_data_mode);
995 globus_ftp_client_operationattr_get_list_uses_data_mode(
996 const globus_ftp_client_operationattr_t * attr,
997 globus_bool_t * list_uses_data_mode);
1001 const globus_ftp_client_operationattr_t * attr,
1002 globus_bool_t delayed_pasv);
1005 globus_ftp_client_operationattr_get_delayed_pasv(
1006 const globus_ftp_client_operationattr_t * attr,
1007 globus_bool_t * delayed_pasv);
1011 globus_ftp_client_operationattr_t * attr,
1012 const globus_ftp_control_dcau_t * dcau);
1015 globus_ftp_client_operationattr_get_dcau(
1016 const globus_ftp_client_operationattr_t * attr,
1017 globus_ftp_control_dcau_t * dcau);
1021 globus_ftp_client_operationattr_t * attr,
1022 globus_ftp_control_protection_t protection);
1025 globus_ftp_client_operationattr_get_data_protection(
1026 const globus_ftp_client_operationattr_t * attr,
1027 globus_ftp_control_protection_t * protection);
1031 globus_ftp_client_operationattr_t * attr,
1032 globus_ftp_control_protection_t protection);
1035 globus_ftp_client_operationattr_get_control_protection(
1036 const globus_ftp_client_operationattr_t * attr,
1037 globus_ftp_control_protection_t * protection);
1041 globus_ftp_client_operationattr_t * attr,
1046 globus_ftp_client_operationattr_get_data_security(
1047 const globus_ftp_client_operationattr_t * attr,
1049 void ** credential);
1052 globus_ftp_client_operationattr_set_resume_third_party_transfer(
1053 globus_ftp_client_operationattr_t * attr,
1054 globus_bool_t resume);
1057 globus_ftp_client_operationattr_get_resume_third_party_transfer(
1058 const globus_ftp_client_operationattr_t * attr,
1059 globus_bool_t * resume);
1063 globus_ftp_client_operationattr_t * attr,
1064 gss_cred_id_t credential,
1066 const char * password,
1067 const char * account,
1068 const char * subject);
1071 globus_ftp_client_operationattr_get_authorization(
1072 const globus_ftp_client_operationattr_t * attr,
1073 gss_cred_id_t * credential,
1081 globus_ftp_client_operationattr_t * attr,
1082 globus_bool_t append);
1085 globus_ftp_client_operationattr_get_append(
1086 const globus_ftp_client_operationattr_t * attr,
1087 globus_bool_t * append);
1091 globus_ftp_client_operationattr_t * attr,
1092 globus_bool_t read_all,
1094 void * intermediate_callback_arg);
1097 globus_ftp_client_operationattr_get_read_all(
1098 const globus_ftp_client_operationattr_t * attr,
1099 globus_bool_t * read_all,
1101 void ** intermediate_callback_arg);
1105 globus_ftp_client_operationattr_t * attr,
1106 globus_bool_t allow);
1109 globus_ftp_client_operationattr_get_allow_ipv6(
1110 const globus_ftp_client_operationattr_t * attr,
1111 globus_bool_t * allow);
1115 globus_ftp_client_operationattr_t * attr,
1116 const globus_off_t allocated_size);
1119 globus_ftp_client_operationattr_get_allocate(
1120 const globus_ftp_client_operationattr_t * attr,
1121 globus_off_t * allocated_size);
1125 globus_ftp_client_operationattr_t * dst,
1126 const globus_ftp_client_operationattr_t * src);
1129 globus_ftp_client_operationattr_set_rfc1738_url(
1130 globus_ftp_client_operationattr_t * attr,
1131 globus_bool_t rfc1738_url);
1134 globus_ftp_client_operationattr_get_rfc1738_url(
1135 const globus_ftp_client_operationattr_t * attr,
1136 globus_bool_t * rfc1738_url);
1162 globus_ftp_client_handle_t * handle,
1163 globus_byte_t * buffer,
1164 globus_size_t buffer_length,
1166 void * callback_arg);
1170 globus_ftp_client_handle_t * handle,
1171 globus_byte_t * buffer,
1172 globus_size_t buffer_length,
1173 globus_off_t offset,
1176 void * callback_arg);
1187 GLOBUS_FTP_CLIENT_FALSE = GLOBUS_FALSE,
1188 GLOBUS_FTP_CLIENT_TRUE = GLOBUS_TRUE,
1189 GLOBUS_FTP_CLIENT_MAYBE
1202 GLOBUS_FTP_CLIENT_FEATURE_RETRBUFSIZE = 0,
1203 GLOBUS_FTP_CLIENT_FEATURE_RBUFSZ,
1204 GLOBUS_FTP_CLIENT_FEATURE_RBUFSIZ,
1205 GLOBUS_FTP_CLIENT_FEATURE_STORBUFSIZE,
1206 GLOBUS_FTP_CLIENT_FEATURE_SBUSSZ,
1207 GLOBUS_FTP_CLIENT_FEATURE_SBUFSIZ,
1208 GLOBUS_FTP_CLIENT_FEATURE_BUFSIZE,
1209 GLOBUS_FTP_CLIENT_FEATURE_SBUF,
1210 GLOBUS_FTP_CLIENT_FEATURE_ABUF,
1212 GLOBUS_FTP_CLIENT_FEATURE_REST_STREAM,
1213 GLOBUS_FTP_CLIENT_FEATURE_PARALLELISM,
1214 GLOBUS_FTP_CLIENT_FEATURE_DCAU,
1215 GLOBUS_FTP_CLIENT_FEATURE_DCSC,
1216 GLOBUS_FTP_CLIENT_FEATURE_ESTO,
1217 GLOBUS_FTP_CLIENT_FEATURE_ERET,
1218 GLOBUS_FTP_CLIENT_FEATURE_SIZE,
1219 GLOBUS_FTP_CLIENT_FEATURE_CKSM,
1220 GLOBUS_FTP_CLIENT_FEATURE_CHMOD,
1221 GLOBUS_FTP_CLIENT_FEATURE_AUTHZ_ASSERT,
1222 GLOBUS_FTP_CLIENT_FEATURE_CLIENTINFO,
1223 GLOBUS_FTP_CLIENT_FEATURE_SITE_SETNETSTACK,
1224 GLOBUS_FTP_CLIENT_FEATURE_DELAYED_PASV,
1225 GLOBUS_FTP_CLIENT_FEATURE_GETPUT,
1226 GLOBUS_FTP_CLIENT_FEATURE_MLST,
1227 GLOBUS_FTP_CLIENT_FEATURE_CHGRP,
1228 GLOBUS_FTP_CLIENT_FEATURE_UTIME,
1229 GLOBUS_FTP_CLIENT_FEATURE_SYMLINK,
1230 GLOBUS_FTP_CLIENT_FEATURE_MAX,
1231 GLOBUS_FTP_CLIENT_LAST_BUFFER_COMMAND = GLOBUS_FTP_CLIENT_FEATURE_ABUF,
1232 GLOBUS_FTP_CLIENT_FIRST_FEAT_FEATURE = GLOBUS_FTP_CLIENT_FEATURE_SBUF,
1233 GLOBUS_FTP_CLIENT_LAST_FEAT_FEATURE = GLOBUS_FTP_CLIENT_FEATURE_MLST
1250 globus_ftp_client_handle_t * u_handle,
1252 globus_ftp_client_operationattr_t * attr,
1253 globus_ftp_client_features_t * u_features,
1255 void * callback_arg);
1259 const globus_ftp_client_features_t * u_features,
1264 globus_ftp_client_features_t *);
1266 globus_ftp_client_features_t *);
1280 globus_error_ftp_error_get_code(
1281 globus_object_t * error);
1283 #define GLOBUS_ERROR_TYPE_FTP (&GLOBUS_ERROR_TYPE_FTP_DEFINITION)
1284 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:3200
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:857
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:3307
globus_ftp_client_restart_type_t
Definition: globus_ftp_client.h:127
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:1245
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:1623
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:2908
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:578
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:263
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:2196
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:2081
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:1988
FTP Client handle implementation.
Definition: globus_i_ftp_client.h:507
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:3403
Handle attributes.
Definition: globus_i_ftp_client.h:178
FTP server features we are interested in.
Definition: globus_i_ftp_client.h:421
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:2567
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:318
globus_ftp_client_error_t
Definition: globus_ftp_client.h:101
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:1352
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:1114
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:2661
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:4451
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:339
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:2296
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:1483
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:296
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:228
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:107
globus_ftp_client_tristate_t
Definition: globus_ftp_client.h:1185
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:3820
globus_result_t globus_ftp_client_operationattr_init(globus_ftp_client_operationattr_t *attr)
Definition: globus_ftp_client_attr.c:1132
globus_ftp_client_probed_feature_t
Definition: globus_ftp_client.h:1197
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:2171
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:3271
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:1881
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:2973
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:3156
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:1794
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:394
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:766
globus_module_descriptor_t globus_i_ftp_client_module
Definition: globus_ftp_client.c:79
globus_result_t globus_ftp_client_features_destroy(globus_ftp_client_features_t *u_features)
Definition: globus_ftp_client_feature.c:98
The globus_i_ftp_client_operationattr_t is a pointer to this structure type.
Definition: globus_i_ftp_client.h:116
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:2498
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:54
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:693
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:1241
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:4890
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:331
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:3487
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:680
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:497
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:1695
globus_result_t globus_ftp_client_restart_marker_destroy(globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_restart_marker.c:126
Stream mode restart marker.
Definition: globus_ftp_client.h:146
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:2400
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:5140
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:363
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:191
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:322
globus_result_t globus_ftp_client_handle_destroy(globus_ftp_client_handle_t *handle)
Definition: globus_ftp_client_handle.c:350
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:2741
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:687
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:3893
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:556
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:989
globus_result_t globus_ftp_client_operationattr_destroy(globus_ftp_client_operationattr_t *attr)
Definition: globus_ftp_client_attr.c:1237
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:159
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:437
globus_result_t globus_ftp_client_abort(globus_ftp_client_handle_t *u_handle)
Definition: globus_ftp_client_transfer.c:5623
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:3757
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:923
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:3082
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:544
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:227
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:803
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:1553
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:5394
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:628
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:1495
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:242
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:2409
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:1172
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:156
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:3678
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:878
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:425
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:1585
FTP Client Plugin.Each plugin implementation should define a method for initializing one of these str...
Definition: globus_i_ftp_client.h:783
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:435
globus_result_t globus_ftp_client_features_init(globus_ftp_client_features_t *u_features)
Definition: globus_ftp_client_feature.c:75
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:4295
Restart marker.This structure is may be either a stream mode transfer offset, or an extended block mo...
Definition: globus_ftp_client.h:205
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:387
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:484
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:1879
globus_result_t globus_ftp_client_handleattr_init(globus_ftp_client_handleattr_t *attr)
Definition: globus_ftp_client_attr.c:229
globus_result_t globus_ftp_client_restart_marker_init(globus_ftp_client_restart_marker_t *marker)
Definition: globus_ftp_client_restart_marker.c:22
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:3577
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:343
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:145
Extended block mode restart marker.
Definition: globus_ftp_client.h:177
globus_result_t globus_ftp_client_handleattr_destroy(globus_ftp_client_handleattr_t *attr)
Definition: globus_ftp_client_attr.c:292
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:4223
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:3424