.TH "globus_xio_gridftp_driver" 3 "Version 3.6" "globus_xio_gridftp_driver" \" -*- nroff -*- .ad l .nh .SH NAME globus_xio_gridftp_driver \- Globus XIO GRIDFTP Client Driver .PP \- Globus XIO GRIDFTP Client Driver\&. .SH SYNOPSIS .br .PP .SS "Typedefs" .in +1c .ti -1c .RI "typedef enum \fBglobus_l_xio_gridftp_mode_e\fP \fBglobus_l_xio_gridftp_mode_t\fP" .br .in -1c .SS "Enumerations" .in +1c .ti -1c .RI "enum \fBglobus_xio_gridftp_error_type_t\fP { \fBGLOBUS_XIO_GRIDFTP_ERROR_ATTR\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_SEEK\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER\fP }" .br .ti -1c .RI "enum \fBglobus_xio_gridftp_cmd_t\fP { \fBGLOBUS_XIO_GRIDFTP_SEEK\fP, \fBGLOBUS_XIO_GRIDFTP_SET_HANDLE\fP, \fBGLOBUS_XIO_GRIDFTP_GET_HANDLE\fP, \fBGLOBUS_XIO_GRIDFTP_SET_APPEND\fP, \fBGLOBUS_XIO_GRIDFTP_GET_APPEND\fP, \fBGLOBUS_XIO_GRIDFTP_SET_ERET\fP, \fBGLOBUS_XIO_GRIDFTP_GET_ERET\fP, \fBGLOBUS_XIO_GRIDFTP_SET_ESTO\fP, \fBGLOBUS_XIO_GRIDFTP_GET_ESTO\fP, \fBGLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER\fP, \fBGLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER\fP, \fBGLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS\fP, \fBGLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS\fP, \fBGLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER\fP, \fBGLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER\fP, \fBGLOBUS_XIO_GRIDFTP_SET_MODE\fP, \fBGLOBUS_XIO_GRIDFTP_GET_MODE\fP, \fBGLOBUS_XIO_GRIDFTP_SET_AUTH\fP, \fBGLOBUS_XIO_GRIDFTP_GET_AUTH\fP, \fBGLOBUS_XIO_GRIDFTP_SET_DCAU\fP, \fBGLOBUS_XIO_GRIDFTP_GET_DCAU\fP, \fBGLOBUS_XIO_GRIDFTP_SET_DATA_PROTECTION\fP, \fBGLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION\fP, \fBGLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION\fP, \fBGLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION\fP }" .br .ti -1c .RI "enum \fBglobus_l_xio_gridftp_mode_e\fP " .br .in -1c .SH "Detailed Description" .PP Globus XIO GRIDFTP Client Driver\&. .SH "Handles" .PP An XIO handle with the gridftp client driver can be created with globus_xio_handle_create() .PP The GridFTP client driver makes use of globus ftp client library\&. globus_xio_register_open() call creates a new ftp client handle (unless one is set on the attr passed), establishes connection with the GridFTP server\&. The contact string must contain the scheme, host name, and the resource, optionally it might contain port and subject also\&. .PP When the XIO handle is closed, the GridFTP driver will destroy its internal resources and the ftp client handle (unless this handle was set on an attr)\&. .SH "Reading/Writing" .PP The globus_xio_register_read() enforce that the waitforbytes parameter should be one\&. When multiple TCP streams are used between the client and the server, data might not be delivered in order\&. globus_xio_data_descriptor_cntl() can be used to get the offset of the data\&. .PP globus_xio_register_write() does not enforce any restriction on the waitforbytes parameter\&. .PP In any case, when an error or EOF occurs before the waitforbytes request has been met, the outgoing nbytes is set to the amount of data actually read/written before the error or EOF occurred\&. .SH "Environment Variables" .PP .IP "\(bu" 2 GLOBUS_XIO_GRIDFTP_DEBUG Available if using a debug build\&. See globus_debug\&.h for format\&. .PP .SH "Attributes and Cntls" .PP GridFTP driver specific attrs and cntls\&. .PP \fBSee also\fP .RS 4 globus_xio_attr_cntl () .PP globus_xio_handle_cntl () .PP globus_xio_data_descriptor_cntl () .RE .PP .SH "Types" .PP The errors reported by the GRIDFTP driver include GLOBUS_XIO_ERROR_EOF, GLOBUS_XIO_ERROR_CANCELED, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_SEEK\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE\fP, \fBGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER\fP .PP \fBSee also\fP .RS 4 globus_xio_driver_error_match() .PP globus_error_errno_match() .RE .PP .SH "Typedef Documentation" .PP .SS "typedef enum \fBglobus_l_xio_gridftp_mode_e\fP \fBglobus_l_xio_gridftp_mode_t\fP" GRIDFTP driver specific types .SH "Enumeration Type Documentation" .PP .SS "enum \fBglobus_l_xio_gridftp_mode_e\fP" GRIDFTP driver specific types .SS "enum \fBglobus_xio_gridftp_cmd_t\fP" doxygen varargs filter stuff GRIDFTP driver specific cntls .PP \fBEnumerator\fP .in +1c .TP \fB\fIGLOBUS_XIO_GRIDFTP_SEEK \fP\fP See usage for: \fBglobus_xio_gridftp_handle_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_HANDLE \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_HANDLE \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_APPEND \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_APPEND \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_ERET \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_ERET \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_ESTO \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_ESTO \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_MODE \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_MODE \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_AUTH \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_AUTH \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_DCAU \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_DCAU \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_DATA_PROTECTION \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .TP \fB\fIGLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION \fP\fP See usage for: \fBglobus_xio_gridftp_attr_cntl \fP .SS "enum \fBglobus_xio_gridftp_error_type_t\fP" GridFTP driver specific error types .PP \fBEnumerator\fP .in +1c .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_ATTR \fP\fP Indicates that an error occurred in the attribute control .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_SEEK \fP\fP Indicates that a seek has been called while there is an outstanding I/O .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ \fP\fP Indicates that a write has been called while there is an outstanding read .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE \fP\fP Indicates that a read has been called while there is an outstanding write .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ \fP\fP Indicates that a write has been called while there is a read pending .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE \fP\fP Indicates that a read has been called while there is a write pending .TP \fB\fIGLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER \fP\fP Indicates that a second partial xfer has been initiated while the first one is still outstanding .SH "Author" .PP Generated automatically by Doxygen for globus_xio_gridftp_driver from the source code\&.