globus_ftp_client_operations(3) | Library Functions Manual | globus_ftp_client_operations(3) |
globus_ftp_client_operations - FTP Operations
- FTP Operations.
typedef void(* globus_ftp_client_complete_callback_t) (void
*user_arg, globus_ftp_client_handle_t *handle, globus_object_t
*error)
typedef struct globus_i_ftp_client_features_s *
globus_ftp_client_features_t
Feature Handle.
enum globus_ftp_client_tristate_t
enum globus_ftp_client_probed_feature_t
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)
globus_result_t globus_ftp_client_features_init
(globus_ftp_client_features_t *u_features)
globus_result_t globus_ftp_client_features_destroy
(globus_ftp_client_features_t *u_features)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
globus_result_t globus_ftp_client_abort
(globus_ftp_client_handle_t *u_handle)
FTP Operations.
Initiate an FTP operation.
This module contains the API functions for a user to request a get, put, third-party transfer, or other FTP file operation.
Operation complete callback.
Every FTP Client operation (get, put, transfer, mkdir, etc) is asynchronous. A callback of this type is passed to each of the operation function calls to let the user know when the operation is complete. The completion callback is called only once per operation, after all other callbacks for the operation have returned.
Parameters
Feature Handle. Handle used to associate state with feature operations.
See also
Types of features
Types for feature existence
FALSE and TRUE are known to be fact that a feature does or does not exist MAYBE means that the feature may exist
Abort the operation currently in progress.
Parameters
Change group membership on a file.
This function changes file group membership
When the response to the group change request has been received the complete_callback will be invoked with the result of the operation.
Parameters
attr Attributes for this operation.
complete_callback Callback to be invoked once the change is completed.
callback_arg Argument to be passed to the complete_callback.
Returns
Change permissions on a file.
This function changes file permissions
When the response to the move request has been received the complete_callback will be invoked with the result of the operation.
Parameters
attr Attributes for this operation.
complete_callback Callback to be invoked once the move is completed.
callback_arg Argument to be passed to the complete_callback.
Returns
Get a file's checksum from an FTP server.
This function requests the checksum of a file from an FTP server.
When the request is completed or aborted, the complete_callback will be invoked with the final status of the operation. If the callback is returns without an error, the checksum will be stored in the char * buffer provided in the 'checksum' parameter to this function. The buffer must be large enough to hold the expected checksum result.
Parameters
offset File offset to start calculating checksum.
length Length of data to read from the starting offset. Use
-1 to read the entire file.
algorithm A pointer to a string to specifying the desired algorithm
Currently, GridFTP servers only support the MD5 algorithm.
complete_callback Callback to be invoked once the checksum
is completed.
callback_arg Argument to be passed to the complete_callback.
Returns
Make a directory on an FTP server.
This function starts a cwd operation on a FTP server.
When the response to the cwd request has been received the complete_callback will be invoked with the result of the cwd operation.
Parameters
Returns
Delete a file on an FTP server.
This function starts a delete operation on a FTP server. Note that this functions will only delete files, not directories.
When the response to the delete request has been received the complete_callback will be invoked with the result of the delete operation.
Parameters
Returns
Check for the existence of a file or directory on an FTP server.
This function attempts to determine whether the specified URL points to a valid file or directory. The complete_callback will be invoked with the result of the existence check passed as a globus error object, or GLOBUS_SUCCESS.
Parameters
Returns
Get a file from an FTP server with server-side processing.
This function starts a 'get' file transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this URL.
When all of the data associated with this URL is retrieved, and all of the data callbacks have been called, or if the get request is aborted, the complete_callback will be invoked with the final status of the get.
This function differs from the globus_ftp_client_get() function by allowing the user to invoke server-side data processing algorithms. GridFTP servers may support support algorithms for data reduction or other customized data storage requirements. There is no client-side verification done on the algorithm string provided by the user. If the server does not understand the requested algorithm, the transfer will fail.
Parameters
Returns
See also
Store a file on an FTP server with server-side processing.
This function starts a 'put' file transfer to an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_write() to send the data associated with this URL.
When all of the data associated with this URL is sent, and all of the data callbacks have been called, or if the put request is aborted, the complete_callback will be invoked with the final status of the put.
This function differs from the globus_ftp_client_put() function by allowing the user to invoke server-side data processing algorithms. GridFTP servers may support algorithms for data reduction or other customized data storage requirements. There is no client-side verification done on the algorithm string provided by the user. if the server does not understand the requested algorithm, the transfer will fail.
Parameters
See also
Transfer a file between two FTP servers with server-side processing.
This function starts up a third-party file transfer between FTP server. This function returns immediately.
When the transfer is completed or if the transfer is aborted, the complete_callback will be invoked with the final status of the transfer.
This function differes from the globus_ftp_client_third_party_transfer() function by allowing the user to invoke server-side data processing algorithms. GridFTP servers may support algorithms for data reduction or other customized data storage requirements. There is no client-side verification done on the algorithm string provided by the user. if the server does not understand * the requested algorithm, the transfer will fail.
Parameters
Note
Check the features supported by the server (FTP FEAT command). After this procedure completes, the features set (parameter u_features) represents the features supported by the server. Prior to calling this procedure, the structure should have been initialized by globus_ftp_client_features_init(); afterwards, it should be destroyed by globus_ftp_client_features_destroy(). After globus_ftp_client_feat() returns, each feature in the list has one of the values: GLOBUS_FTP_CLIENT_TRUE, GLOBUS_FTP_CLIENT_FALSE, or GLOBUS_FTP_CLIENT_MAYBE. The first two denote the server supporting, or not supporting, the given feature. The last one means that the test has not been performed. This is not necessarily caused by error; there might have been no reason to check for this particular feature.
Parameters
Returns
Destroy the feature set.
Note
Returns
Initialize the feature set, to be later used by globus_ftp_client_feat(). Each feature gets initial value GLOBUS_FTP_CLIENT_MAYBE.
Note
Returns
Get a file from an FTP server.
This function starts a 'get' file transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this URL.
When all of the data associated with this URL is retrieved, and all of the data callbacks have been called, or if the get request is aborted, the complete_callback will be invoked with the final status of the get.
Parameters
Returns
See also
Check if the feature is supported by the server. After the
function completes, parameter answer contains the state of the server
support of the given function. It can have one of the values:
GLOBUS_FTP_CLIENT_TRUE,
GLOBUS_FTP_CLIENT_FALSE, or GLOBUS_FTP_CLIENT_MAYBE.
Parameters
Returns
Get a file listing from an FTP server.
This function starts a 'NLST' transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this listing.
When all of the data associated with the listing is retrieved, and all of the data callbacks have been called, or if the list request is aborted, the complete_callback will be invoked with the final status of the list.
Parameters
Returns
See also
Get a machine parseable file listing from an FTP server.
This function starts a 'MLSD' transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this listing.
When all of the data associated with the listing is retrieved, and all of the data callbacks have been called, or if the list request is aborted, the complete_callback will be invoked with the final status of the list.
Parameters
Returns
See also
Make a directory on an FTP server.
This function starts a mkdir operation on a FTP server.
When the response to the mkdir request has been received the complete_callback will be invoked with the result of the mkdir operation.
Parameters
Returns
Get information about a file or directory from a FTP server.
This function requests the MLST fact string of a file or directory from an FTP server.
When the MLST request is completed or aborted, the complete_callback will be invoked with the final status of the operation. If the callback is returns without an error, the MLST fact string will be stored in the globus_byte_t * pointed to by the mlst_buffer parameter to this function.
Parameters
Returns
Get a file's modification time from an FTP server.
This function requests the modification time of a file from an FTP server.
When the modification time request is completed or aborted, the complete_callback will be invoked with the final status of the operation. If the callback is returns without an error, the modification time will be stored in the globus_abstime_t value pointed to by the modification_time parameter to this function.
Parameters
Returns
Move a file on an FTP server.
This function starts a move (rename) operation on an FTP server. Note that this function does not move files between FTP servers and that the host:port part of the destination url is ignored.
When the response to the move request has been received the complete_callback will be invoked with the result of the move operation.
Parameters
Returns
Get a file from an FTP server.
This function starts a 'get' file transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this URL.
When all of the data associated with this URL is retrieved, and all of the data callbacks have been called, or if the get request is aborted, the complete_callback will be invoked with the final status of the get.
Parameters
Returns
Store a file on an FTP server.
This function starts a 'put' file transfer to an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_write() to send the data associated with this URL.
When all of the data associated with this URL is sent, and all of the data callbacks have been called, or if the put request is aborted, the complete_callback will be invoked with the final status of the put.
Parameters
See also
Transfer a file between two FTP servers.
This function starts up a third-party file transfer between FTP server. This function returns immediately.
When the transfer is completed or if the transfer is aborted, the complete_callback will be invoked with the final status of the transfer.
Parameters
Note
Store a file on an FTP server.
This function starts a 'put' file transfer to an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_write() to send the data associated with this URL.
When all of the data associated with this URL is sent, and all of the data callbacks have been called, or if the put request is aborted, the complete_callback will be invoked with the final status of the put.
Parameters
See also
Get a machine parseable recursive file listing from an FTP server.
This function starts a 'MLSR' transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this listing.
When all of the data associated with the listing is retrieved, and all of the data callbacks have been called, or if the list request is aborted, the complete_callback will be invoked with the final status of the list.
Parameters
Returns
See also
Make a directory on an FTP server.
This function starts a rmdir operation on a FTP server.
When the response to the rmdir request has been received the complete_callback will be invoked with the result of the rmdir operation.
Parameters
Returns
Get a file's size from an FTP server.
This function requests the size of a file from an FTP server.
When the size request is completed or aborted, the complete_callback will be invoked with the final status of the operation. If the callback is returns without an error, the size will be stored in the globus_off_t value pointed to by the size parameter to this function.
Note
Parameters
Returns
Get information about a file or directory from a FTP server.
This function requests the STAT listing of a file or directory from an FTP server.
When the STAT request is completed or aborted, the complete_callback will be invoked with the final status of the operation. If the callback is returns without an error, the STAT fact string will be stored in the globus_byte_t * pointed to by the stat_buffer parameter to this function.
Parameters
Returns
Create a symbolic link on the FTP server.
This function creates a symbolic link on the FTP server pointing to a given path. Note that this function does not link files between FTP servers and that the host:port part of the link url is ignored.
When the response to the symlink request has been received the complete_callback will be invoked with the result of the move operation.
Parameters
Returns
Transfer a file between two FTP servers.
This function starts up a third-party file transfer between FTP server. This function returns immediately.
When the transfer is completed or if the transfer is aborted, the complete_callback will be invoked with the final status of the transfer.
Parameters
Note
Set the modification time on a file.
This function changes file modification time
When the response to the modification time request has been received the complete_callback will be invoked with the result of the operation.
Parameters
attr Attributes for this operation.
complete_callback Callback to be invoked once the change is completed.
callback_arg Argument to be passed to the complete_callback.
Returns
Get a file listing from an FTP server.
This function starts a 'LIST' transfer from an FTP server. If this function returns GLOBUS_SUCCESS, then the user may immediately begin calling globus_ftp_client_register_read() to retrieve the data associated with this listing.
When all of the data associated with the listing is retrieved, and all of the data callbacks have been called, or if the list request is aborted, the complete_callback will be invoked with the final status of the list.
Parameters
Returns
See also
Generated automatically by Doxygen for globus_ftp_client from the source code.
Version 9.8 | globus_ftp_client |