globus_xio_gridftp_driver  2.18
globus_xio_gridftp_driver.h
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2006 University of Chicago
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef GLOBUS_XIO_GRIDFTP_DRIVER_H
18 #define GLOBUS_XIO_GRIDFTP_DRIVER_H
19 
25 #include "globus_xio_system.h"
26 #include "globus_common.h"
27 
28 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
29 
33 #endif
34 
95 #define globus_xio_gridftp_attr_cntl globus_xio_attr_cntl
96 #define globus_xio_gridftp_handle_cntl globus_xio_handle_cntl
97 
118 typedef enum
119 {
151 
153 
154 #define globus_xio_gridftp_attr_cntl globus_xio_attr_cntl
155 #define globus_xio_gridftp_handle_cntl globus_xio_handle_cntl
156 
169 typedef enum
170 {
171  /*
172  * handle cntls
173  */
174 
182  /* globus_off_t seek_offset */
184 
185  /*
186  * attr cntls
187  */
197  /* globus_ftp_client_handle_t * ftp_handle */
199 
208  /* globus_ftp_client_handle_t ** ftp_handle_out */
210 
218  /* globus_bool_t append */
220 
228  /* globus_bool_t * append_out */
230 
240  /* const char * eret_alg_str */
242 
251  /* char ** eret_alg_str_out */
253 
263  /* const char * esto_alg_str */
265 
274  /* char ** esto_alg_str_out */
276 
285  /* globus_bool_t partial_xfer */
287 
295  /* globus_bool_t * partial_xfer_out */
297 
306  /* int num_streams */
308 
316  /* int * num_streams_out */
318 
327  /* int buf_size */
329 
337  /* int * buf_size_out */
339 
349  /* int mode */
351 
361  /* int * mode_out */
363 
387  /* gss_cred_id_t credential,
388  * const char * user,
389  * const char * password,
390  * const char * account,
391  * const char * subject */
393 
409  /* gss_cred_id_t * credential_out,
410  * const char ** user_out,
411  * const char ** password_out,
412  * const char ** account_out,
413  * const char ** subject_out */
415 
425  /* int dcau_mode */
427 
437  /* int * dcau_mode_out */
439 
449  /* int protection */
451 
461  /* int * protection_out */
463 
473  /* int protection */
475 
485  /* int * protection_out */
487 
489 
496 typedef enum globus_l_xio_gridftp_mode_e
497 {
498  GLOBUS_XIO_GRIDFTP_MODE_NONE,
499  GLOBUS_XIO_GRIDFTP_MODE_STREAM = 'S',
500  GLOBUS_XIO_GRIDFTP_MODE_BLOCK = 'B',
501  GLOBUS_XIO_GRIDFTP_MODE_EXTENDED_BLOCK = 'E',
502  GLOBUS_XIO_GRIDFTP_MODE_COMPRESSED = 'C'
504 
505 typedef enum globus_l_xio_gridftp_dcau_mode_e
506 {
507  GLOBUS_XIO_GRIDFTP_DCAU_NONE = 'N',
508  GLOBUS_XIO_GRIDFTP_DCAU_SELF = 'A',
509  GLOBUS_XIO_GRIDFTP_DCAU_SUBJECT = 'S',
510  GLOBUS_XIO_GRIDFTP_DCAU_DEFAULT
511 } globus_l_xio_gridftp_dcau_mode_t;
512 
513 
514 typedef enum globus_l_xio_gridftp_protection_e
515 {
516  GLOBUS_XIO_GRIDFTP_PROTECTION_CLEAR = 'C',
517  GLOBUS_XIO_GRIDFTP_PROTECTION_SAFE = 'S',
518  GLOBUS_XIO_GRIDFTP_PROTECTION_CONFIDENTIAL = 'E',
519  GLOBUS_XIO_GRIDFTP_PROTECTION_PRIVATE = 'P'
520 } globus_l_xio_gridftp_protection_t;
521 
522 
523 #endif /* GLOBUS_XIO_GRIDFTP_DRIVER_H */
GLOBUS_XIO_GRIDFTP_GET_ERET
@ GLOBUS_XIO_GRIDFTP_GET_ERET
Definition: globus_xio_gridftp_driver.h:202
GLOBUS_XIO_GRIDFTP_SET_AUTH
@ GLOBUS_XIO_GRIDFTP_SET_AUTH
Definition: globus_xio_gridftp_driver.h:246
GLOBUS_XIO_GRIDFTP_GET_APPEND
@ GLOBUS_XIO_GRIDFTP_GET_APPEND
Definition: globus_xio_gridftp_driver.h:194
GLOBUS_XIO_GRIDFTP_SEEK
@ GLOBUS_XIO_GRIDFTP_SEEK
Definition: globus_xio_gridftp_driver.h:175
GLOBUS_XIO_GRIDFTP_GET_DCAU
@ GLOBUS_XIO_GRIDFTP_GET_DCAU
Definition: globus_xio_gridftp_driver.h:258
GLOBUS_XIO_GRIDFTP_ERROR_SEEK
@ GLOBUS_XIO_GRIDFTP_ERROR_SEEK
Definition: globus_xio_gridftp_driver.h:127
GLOBUS_XIO_GRIDFTP_GET_HANDLE
@ GLOBUS_XIO_GRIDFTP_GET_HANDLE
Definition: globus_xio_gridftp_driver.h:186
GLOBUS_XIO_GRIDFTP_ERROR_ATTR
@ GLOBUS_XIO_GRIDFTP_ERROR_ATTR
Definition: globus_xio_gridftp_driver.h:123
GLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER
@ GLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER
Definition: globus_xio_gridftp_driver.h:214
GLOBUS_XIO_GRIDFTP_SET_HANDLE
@ GLOBUS_XIO_GRIDFTP_SET_HANDLE
Definition: globus_xio_gridftp_driver.h:182
GLOBUS_XIO_GRIDFTP_SET_APPEND
@ GLOBUS_XIO_GRIDFTP_SET_APPEND
Definition: globus_xio_gridftp_driver.h:190
GLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER
@ GLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER
Definition: globus_xio_gridftp_driver.h:218
GLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER
@ GLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER
Definition: globus_xio_gridftp_driver.h:230
GLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ
@ GLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ
Definition: globus_xio_gridftp_driver.h:141
GLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER
@ GLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER
Definition: globus_xio_gridftp_driver.h:234
globus_l_xio_gridftp_mode_e
globus_l_xio_gridftp_mode_e
Definition: globus_xio_gridftp_driver.h:284
globus_l_xio_gridftp_mode_t
enum globus_l_xio_gridftp_mode_e globus_l_xio_gridftp_mode_t
GLOBUS_XIO_GRIDFTP_SET_DATA_PROTECTION
@ GLOBUS_XIO_GRIDFTP_SET_DATA_PROTECTION
Definition: globus_xio_gridftp_driver.h:262
globus_xio_gridftp_cmd_t
globus_xio_gridftp_cmd_t
Definition: globus_xio_gridftp_driver.h:167
GLOBUS_XIO_GRIDFTP_SET_DCAU
@ GLOBUS_XIO_GRIDFTP_SET_DCAU
Definition: globus_xio_gridftp_driver.h:254
GLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE
@ GLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE
Definition: globus_xio_gridftp_driver.h:145
GLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION
@ GLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION
Definition: globus_xio_gridftp_driver.h:266
GLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION
@ GLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION
Definition: globus_xio_gridftp_driver.h:274
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE
Definition: globus_xio_gridftp_driver.h:137
GLOBUS_XIO_GRIDFTP_SET_ESTO
@ GLOBUS_XIO_GRIDFTP_SET_ESTO
Definition: globus_xio_gridftp_driver.h:206
GLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION
@ GLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION
Definition: globus_xio_gridftp_driver.h:270
GLOBUS_XIO_GRIDFTP_GET_ESTO
@ GLOBUS_XIO_GRIDFTP_GET_ESTO
Definition: globus_xio_gridftp_driver.h:210
GLOBUS_XIO_GRIDFTP_SET_MODE
@ GLOBUS_XIO_GRIDFTP_SET_MODE
Definition: globus_xio_gridftp_driver.h:238
GLOBUS_XIO_GRIDFTP_GET_MODE
@ GLOBUS_XIO_GRIDFTP_GET_MODE
Definition: globus_xio_gridftp_driver.h:242
GLOBUS_XIO_GRIDFTP_GET_AUTH
@ GLOBUS_XIO_GRIDFTP_GET_AUTH
Definition: globus_xio_gridftp_driver.h:250
GLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS
@ GLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS
Definition: globus_xio_gridftp_driver.h:226
globus_xio_gridftp_error_type_t
globus_xio_gridftp_error_type_t
Definition: globus_xio_gridftp_driver.h:118
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ
Definition: globus_xio_gridftp_driver.h:132
GLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS
@ GLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS
Definition: globus_xio_gridftp_driver.h:222
GLOBUS_XIO_GRIDFTP_SET_ERET
@ GLOBUS_XIO_GRIDFTP_SET_ERET
Definition: globus_xio_gridftp_driver.h:198
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER
Definition: globus_xio_gridftp_driver.h:150