globus_xio_gridftp_driver  3.4
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 
96 #define globus_xio_gridftp_attr_cntl globus_xio_attr_cntl
97 #define globus_xio_gridftp_handle_cntl globus_xio_handle_cntl
98 
119 typedef enum
120 {
152 
154 
155 #define globus_xio_gridftp_attr_cntl globus_xio_attr_cntl
156 #define globus_xio_gridftp_handle_cntl globus_xio_handle_cntl
157 
170 typedef enum
171 {
172  /*
173  * handle cntls
174  */
175 
183  /* globus_off_t seek_offset */
185 
186  /*
187  * attr cntls
188  */
198  /* globus_ftp_client_handle_t * ftp_handle */
200 
209  /* globus_ftp_client_handle_t ** ftp_handle_out */
211 
219  /* globus_bool_t append */
221 
229  /* globus_bool_t * append_out */
231 
241  /* const char * eret_alg_str */
243 
252  /* char ** eret_alg_str_out */
254 
264  /* const char * esto_alg_str */
266 
275  /* char ** esto_alg_str_out */
277 
286  /* globus_bool_t partial_xfer */
288 
296  /* globus_bool_t * partial_xfer_out */
298 
307  /* int num_streams */
309 
317  /* int * num_streams_out */
319 
328  /* int buf_size */
330 
338  /* int * buf_size_out */
340 
350  /* int mode */
352 
362  /* int * mode_out */
364 
388  /* gss_cred_id_t credential,
389  * const char * user,
390  * const char * password,
391  * const char * account,
392  * const char * subject */
394 
410  /* gss_cred_id_t * credential_out,
411  * const char ** user_out,
412  * const char ** password_out,
413  * const char ** account_out,
414  * const char ** subject_out */
416 
426  /* int dcau_mode */
428 
438  /* int * dcau_mode_out */
440 
450  /* int protection */
452 
462  /* int * protection_out */
464 
474  /* int protection */
476 
486  /* int * protection_out */
488 
490 
497 typedef enum globus_l_xio_gridftp_mode_e
498 {
499  GLOBUS_XIO_GRIDFTP_MODE_NONE,
500  GLOBUS_XIO_GRIDFTP_MODE_STREAM = 'S',
501  GLOBUS_XIO_GRIDFTP_MODE_BLOCK = 'B',
502  GLOBUS_XIO_GRIDFTP_MODE_EXTENDED_BLOCK = 'E',
503  GLOBUS_XIO_GRIDFTP_MODE_COMPRESSED = 'C'
505 
506 typedef enum globus_l_xio_gridftp_dcau_mode_e
507 {
508  GLOBUS_XIO_GRIDFTP_DCAU_NONE = 'N',
509  GLOBUS_XIO_GRIDFTP_DCAU_SELF = 'A',
510  GLOBUS_XIO_GRIDFTP_DCAU_SUBJECT = 'S',
511  GLOBUS_XIO_GRIDFTP_DCAU_DEFAULT
512 } globus_l_xio_gridftp_dcau_mode_t;
513 
514 
515 typedef enum globus_l_xio_gridftp_protection_e
516 {
517  GLOBUS_XIO_GRIDFTP_PROTECTION_CLEAR = 'C',
518  GLOBUS_XIO_GRIDFTP_PROTECTION_SAFE = 'S',
519  GLOBUS_XIO_GRIDFTP_PROTECTION_CONFIDENTIAL = 'E',
520  GLOBUS_XIO_GRIDFTP_PROTECTION_PRIVATE = 'P'
521 } globus_l_xio_gridftp_protection_t;
522 
523 
524 #endif /* GLOBUS_XIO_GRIDFTP_DRIVER_H */
GLOBUS_XIO_GRIDFTP_GET_ERET
@ GLOBUS_XIO_GRIDFTP_GET_ERET
Definition: globus_xio_gridftp_driver.h:203
GLOBUS_XIO_GRIDFTP_SET_AUTH
@ GLOBUS_XIO_GRIDFTP_SET_AUTH
Definition: globus_xio_gridftp_driver.h:247
GLOBUS_XIO_GRIDFTP_GET_APPEND
@ GLOBUS_XIO_GRIDFTP_GET_APPEND
Definition: globus_xio_gridftp_driver.h:195
GLOBUS_XIO_GRIDFTP_SEEK
@ GLOBUS_XIO_GRIDFTP_SEEK
Definition: globus_xio_gridftp_driver.h:176
GLOBUS_XIO_GRIDFTP_GET_DCAU
@ GLOBUS_XIO_GRIDFTP_GET_DCAU
Definition: globus_xio_gridftp_driver.h:259
GLOBUS_XIO_GRIDFTP_ERROR_SEEK
@ GLOBUS_XIO_GRIDFTP_ERROR_SEEK
Definition: globus_xio_gridftp_driver.h:128
GLOBUS_XIO_GRIDFTP_GET_HANDLE
@ GLOBUS_XIO_GRIDFTP_GET_HANDLE
Definition: globus_xio_gridftp_driver.h:187
GLOBUS_XIO_GRIDFTP_ERROR_ATTR
@ GLOBUS_XIO_GRIDFTP_ERROR_ATTR
Definition: globus_xio_gridftp_driver.h:124
GLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER
@ GLOBUS_XIO_GRIDFTP_SET_PARTIAL_TRANSFER
Definition: globus_xio_gridftp_driver.h:215
GLOBUS_XIO_GRIDFTP_SET_HANDLE
@ GLOBUS_XIO_GRIDFTP_SET_HANDLE
Definition: globus_xio_gridftp_driver.h:183
GLOBUS_XIO_GRIDFTP_SET_APPEND
@ GLOBUS_XIO_GRIDFTP_SET_APPEND
Definition: globus_xio_gridftp_driver.h:191
GLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER
@ GLOBUS_XIO_GRIDFTP_GET_PARTIAL_TRANSFER
Definition: globus_xio_gridftp_driver.h:219
GLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER
@ GLOBUS_XIO_GRIDFTP_SET_TCP_BUFFER
Definition: globus_xio_gridftp_driver.h:231
GLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ
@ GLOBUS_XIO_GRIDFTP_ERROR_PENDING_READ
Definition: globus_xio_gridftp_driver.h:142
GLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER
@ GLOBUS_XIO_GRIDFTP_GET_TCP_BUFFER
Definition: globus_xio_gridftp_driver.h:235
globus_l_xio_gridftp_mode_e
globus_l_xio_gridftp_mode_e
Definition: globus_xio_gridftp_driver.h:286
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:263
globus_xio_gridftp_cmd_t
globus_xio_gridftp_cmd_t
Definition: globus_xio_gridftp_driver.h:169
GLOBUS_XIO_GRIDFTP_SET_DCAU
@ GLOBUS_XIO_GRIDFTP_SET_DCAU
Definition: globus_xio_gridftp_driver.h:255
GLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE
@ GLOBUS_XIO_GRIDFTP_ERROR_PENDING_WRITE
Definition: globus_xio_gridftp_driver.h:146
GLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION
@ GLOBUS_XIO_GRIDFTP_GET_DATA_PROTECTION
Definition: globus_xio_gridftp_driver.h:267
GLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION
@ GLOBUS_XIO_GRIDFTP_GET_CONTROL_PROTECTION
Definition: globus_xio_gridftp_driver.h:275
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_WRITE
Definition: globus_xio_gridftp_driver.h:138
GLOBUS_XIO_GRIDFTP_SET_ESTO
@ GLOBUS_XIO_GRIDFTP_SET_ESTO
Definition: globus_xio_gridftp_driver.h:207
GLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION
@ GLOBUS_XIO_GRIDFTP_SET_CONTROL_PROTECTION
Definition: globus_xio_gridftp_driver.h:271
GLOBUS_XIO_GRIDFTP_GET_ESTO
@ GLOBUS_XIO_GRIDFTP_GET_ESTO
Definition: globus_xio_gridftp_driver.h:211
GLOBUS_XIO_GRIDFTP_SET_MODE
@ GLOBUS_XIO_GRIDFTP_SET_MODE
Definition: globus_xio_gridftp_driver.h:239
GLOBUS_XIO_GRIDFTP_GET_MODE
@ GLOBUS_XIO_GRIDFTP_GET_MODE
Definition: globus_xio_gridftp_driver.h:243
GLOBUS_XIO_GRIDFTP_GET_AUTH
@ GLOBUS_XIO_GRIDFTP_GET_AUTH
Definition: globus_xio_gridftp_driver.h:251
GLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS
@ GLOBUS_XIO_GRIDFTP_GET_NUM_STREAMS
Definition: globus_xio_gridftp_driver.h:227
globus_xio_gridftp_error_type_t
globus_xio_gridftp_error_type_t
Definition: globus_xio_gridftp_driver.h:120
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_READ
Definition: globus_xio_gridftp_driver.h:133
GLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS
@ GLOBUS_XIO_GRIDFTP_SET_NUM_STREAMS
Definition: globus_xio_gridftp_driver.h:223
GLOBUS_XIO_GRIDFTP_SET_ERET
@ GLOBUS_XIO_GRIDFTP_SET_ERET
Definition: globus_xio_gridftp_driver.h:199
GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER
@ GLOBUS_XIO_GRIDFTP_ERROR_OUTSTANDING_PARTIAL_XFER
Definition: globus_xio_gridftp_driver.h:151