.TH "globus_ftp_client_restart_marker" 3 "Version 9.8" "globus_ftp_client" \" -*- nroff -*- .ad l .nh .SH NAME globus_ftp_client_restart_marker \- Restart Markers .PP \- Restart Markers\&. .SH SYNOPSIS .br .PP .SS "Data Structures" .in +1c .ti -1c .RI "union \fBglobus_ftp_client_restart_marker_t\fP" .br .RI "Restart marker\&. " .in -1c .SS "Functions" .in +1c .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_init\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_copy\fP (\fBglobus_ftp_client_restart_marker_t\fP *new_marker, \fBglobus_ftp_client_restart_marker_t\fP *marker)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_destroy\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_insert_range\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, globus_off_t offset, globus_off_t end_offset)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_set_ascii_offset\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, globus_off_t offset, globus_off_t ascii_offset)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_set_offset\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, globus_off_t offset)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_get_total\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, globus_off_t *total_bytes)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_to_string\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, char **marker_string)" .br .ti -1c .RI "globus_result_t \fBglobus_ftp_client_restart_marker_from_string\fP (\fBglobus_ftp_client_restart_marker_t\fP *marker, const char *marker_string)" .br .in -1c .SH "Detailed Description" .PP Restart Markers\&. FTP Restart Markers .PP The Globus FTP Client library provides the ability to start a file transfer from a known location into the file\&. This is accomplished by passing a restart marker to the \fBglobus_ftp_client_get()\fP, \fBglobus_ftp_client_put()\fP, or \fBglobus_ftp_client_third_party_transfer()\fP functions\&. .SH "Function Documentation" .PP .SS "globus_result_t globus_ftp_client_restart_marker_copy (\fBglobus_ftp_client_restart_marker_t\fP * new_marker, \fBglobus_ftp_client_restart_marker_t\fP * marker)" Create a copy of a restart marker\&. .PP This function copies the contents of marker to new_marker\&. .PP \fBParameters\fP .RS 4 \fInew_marker\fP A pointer to a new restart marker\&. .br \fImarker\fP The marker to copy\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_init()\fP, \fBglobus_ftp_client_restart_marker_destroy()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_destroy (\fBglobus_ftp_client_restart_marker_t\fP * marker)" Destroy a restart marker\&. .PP \fBParameters\fP .RS 4 \fImarker\fP Restart marker\&. This marker must be initialized by either calling \fBglobus_ftp_client_restart_marker_init()\fP or \fBglobus_ftp_client_restart_marker_copy()\fP .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_t\fP, \fBglobus_ftp_client_restart_marker_init()\fP, \fBglobus_ftp_client_restart_marker_copy()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_from_string (\fBglobus_ftp_client_restart_marker_t\fP * marker, const char * marker_string)" Initialize a restart marker from a string\&. .PP This function initializes a new restart, \fImarker\fP, based on the \fImarker_string\fP parameter\&. The string may be either a single offset for a stream-mode restart marker, or a comma-separated list of start-end ranges\&. .PP \fBParameters\fP .RS 4 \fImarker\fP The restart marker to be initialized\&. .br \fImarker_string\fP The string containing a textual representation of a restart marker\&. .RE .PP \fBSee also\fP .RS 4 \fBRestart Markers\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_get_total (\fBglobus_ftp_client_restart_marker_t\fP * marker, globus_off_t * total_bytes)" Get total bytes accounted for in restart marker .PP This function will return the sum of all bytes accounted for in a restart marker\&. If this restart marker contains a stream offset then this value is the same as the offset (not the ascii offset) that it was set with\&. If it is a range list, it a sum of all the bytes in the ranges\&. .PP \fBParameters\fP .RS 4 \fImarker\fP A previously initialized or copied restart marker .br \fItotal_bytes\fP pointer to storage for total bytes in marker .RE .PP \fBReturns\fP .RS 4 .IP "\(bu" 2 Error on NULL marker or total bytes .PP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_init (\fBglobus_ftp_client_restart_marker_t\fP * marker)" Initialize a restart marker\&. .PP \fBParameters\fP .RS 4 \fImarker\fP New restart marker\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_t\fP, \fBglobus_ftp_client_restart_marker_destroy()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_insert_range (\fBglobus_ftp_client_restart_marker_t\fP * marker, globus_off_t offset, globus_off_t end_offset)" Insert a range into a restart marker .PP This function updates a restart marker with a new byte range, suitable for using to restart an extended block mode transfer\&. Adjacent ranges within the marker will be combined into a single entry in the marker\&. .PP The marker must first be initialized by calling \fBglobus_ftp_client_restart_marker_init()\fP or \fBglobus_ftp_client_restart_marker_copy()\fP\&. .PP A marker can only hold a range list or a stream offset\&. Calling this function after calling \fBglobus_ftp_client_restart_marker_set_offset()\fP will result in a marker suitable only for use restarting an extended block mode transfer\&. .PP \fBParameters\fP .RS 4 \fImarker\fP A restart marker .br \fIoffset\fP The starting offset of the range\&. .br \fIend_offset\fP The ending offset of the range\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_set_offset()\fP \fBglobus_ftp_client_operationattr_set_mode()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_set_ascii_offset (\fBglobus_ftp_client_restart_marker_t\fP * marker, globus_off_t offset, globus_off_t ascii_offset)" Set the offset for a restart marker\&. .PP This function modifies a restart marker to contain a stream offset, suitable for using to restart a steam mode transfer\&. .PP The marker must first be initialized by calling \fBglobus_ftp_client_restart_marker_init()\fP or \fBglobus_ftp_client_restart_marker_copy()\fP\&. .PP A marker can only hold a range list or a stream offset\&. Calling this function after calling \fBglobus_ftp_client_restart_marker_insert_range()\fP will delete the ranges associated with the marker, and replace it with a marker suitable only for use restarting a stream mode transfer\&. .PP When restarting an ASCII type transfer, use \fBglobus_ftp_client_restart_marker_set_ascii_offset()\fP to set both the offset used in the local representation of an ACSII file, and the network representation of the ASCII file\&. For UNIX systems, the former includes counts newlines as one character towards the file offset, and the latter counts them as 2 characters (CRLF)\&. .PP \fBParameters\fP .RS 4 \fImarker\fP A restart marker .br \fIoffset\fP The local stream offset\&. .br \fIascii_offset\fP The network ascii representation of the offset\&. .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_insert_range()\fP, \fBglobus_ftp_client_restart_marker_set_offset()\fP, \fBglobus_ftp_client_operationattr_set_mode()\fP, \fBglobus_ftp_client_operationattr_set_type()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_set_offset (\fBglobus_ftp_client_restart_marker_t\fP * marker, globus_off_t offset)" Set the offset for a restart marker\&. .PP This function modifies a restart marker to contain a stream offset, suitable for using to restart a steam mode transfer\&. .PP The marker must first be initialized by calling \fBglobus_ftp_client_restart_marker_init()\fP or \fBglobus_ftp_client_restart_marker_copy()\fP\&. .PP A marker can only hold a range list or a stream offset\&. Calling this function after calling \fBglobus_ftp_client_restart_marker_insert_range()\fP will delete the ranges associated with the marker, and replace it with a marker suitable only for use restarting a stream mode transfer\&. .PP When restarting an ASCII type transfer, the offset must take into account the additional carriage return characters added to the data stream\&. .PP \fBParameters\fP .RS 4 \fImarker\fP A restart marker .br \fIoffset\fP The stream offset .RE .PP \fBSee also\fP .RS 4 \fBglobus_ftp_client_restart_marker_insert_range()\fP, \fBglobus_ftp_client_operationattr_set_mode()\fP, \fBglobus_ftp_client_operationattr_set_type()\fP .RE .PP .SS "globus_result_t globus_ftp_client_restart_marker_to_string (\fBglobus_ftp_client_restart_marker_t\fP * marker, char ** marker_string)" Create a string representation of a restart marker\&. .PP This function sets the \fImarker_string\fP parameter to point to a freshly allocated string suitable for sending as an argument to the FTP REST command, or for a later call to \fBglobus_ftp_client_restart_marker_from_string()\fP\&. .PP The string pointed to by marker_string must be freed by the caller\&. .PP \fBParameters\fP .RS 4 \fImarker\fP An initialized FTP client restart marker\&. .br \fImarker_string\fP A pointer to a char * to be set to a freshly allocated marker string\&. .RE .PP \fBSee also\fP .RS 4 \fBRestart Markers\fP .RE .PP .SH "Author" .PP Generated automatically by Doxygen for globus_ftp_client from the source code\&.