Loading...
Searching...
No Matches
globus_xio_file_driver.h
Go to the documentation of this file.
/*
* Copyright 1999-2006 University of Chicago
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef GLOBUS_XIO_FILE_DRIVER_H
#define GLOBUS_XIO_FILE_DRIVER_H
#include "globus_xio_system.h"
#ifdef __cplusplus
extern "C" {
#endif
#define GLOBUS_XIO_FILE_INVALID_HANDLE GLOBUS_XIO_SYSTEM_INVALID_FILE
* @ingroup globus_xio_file_driver_cntls
*/
typedef enum
{
/* int mode */
GLOBUS_XIO_FILE_SET_MODE,
/* int * mode_out */
GLOBUS_XIO_FILE_GET_MODE,
/* int flags */
GLOBUS_XIO_FILE_SET_FLAGS,
/* int * flags_out */
GLOBUS_XIO_FILE_GET_FLAGS,
/* globus_off_t offset */
GLOBUS_XIO_FILE_SET_TRUNC_OFFSET,
/* globus_off_t * offset_out */
GLOBUS_XIO_FILE_GET_TRUNC_OFFSET,
/* globus_xio_system_file_t handle */
GLOBUS_XIO_FILE_SET_HANDLE,
/* globus_xio_system_file_t * handle_out */
GLOBUS_XIO_FILE_GET_HANDLE,
/* globus_bool_t use_blocking_io */
GLOBUS_XIO_FILE_SET_BLOCKING_IO,
/* globus_bool_t * use_blocking_io_out */
GLOBUS_XIO_FILE_GET_BLOCKING_IO,
/* globus_off_t * in_out_offset,
* globus_xio_file_whence_t whence */
GLOBUS_XIO_FILE_SEEK
} globus_xio_file_attr_cmd_t;
typedef enum
{
GLOBUS_XIO_FILE_CREAT = O_CREAT,
GLOBUS_XIO_FILE_EXCL = O_EXCL,
GLOBUS_XIO_FILE_RDONLY = O_RDONLY,
GLOBUS_XIO_FILE_WRONLY = O_WRONLY,
GLOBUS_XIO_FILE_RDWR = O_RDWR,
GLOBUS_XIO_FILE_TRUNC = O_TRUNC,
GLOBUS_XIO_FILE_APPEND = O_APPEND,
#ifdef TARGET_ARCH_CYGWIN
GLOBUS_XIO_FILE_BINARY = O_BINARY,
GLOBUS_XIO_FILE_TEXT = O_TEXT
#else
GLOBUS_XIO_FILE_BINARY = 0,
GLOBUS_XIO_FILE_TEXT = 0
#endif
} globus_xio_file_flag_t;
typedef enum
{
GLOBUS_XIO_FILE_IRWXU = S_IRWXU,
GLOBUS_XIO_FILE_IRUSR = S_IRUSR,
GLOBUS_XIO_FILE_IWUSR = S_IWUSR,
GLOBUS_XIO_FILE_IXUSR = S_IXUSR,
GLOBUS_XIO_FILE_IRWXO = S_IRWXO,
GLOBUS_XIO_FILE_IROTH = S_IROTH,
GLOBUS_XIO_FILE_IWOTH = S_IWOTH,
GLOBUS_XIO_FILE_IXOTH = S_IXOTH,
GLOBUS_XIO_FILE_IRWXG = S_IRWXG,
GLOBUS_XIO_FILE_IRGRP = S_IRGRP,
GLOBUS_XIO_FILE_IWGRP = S_IWGRP,
GLOBUS_XIO_FILE_IXGRP = S_IXGRP
} globus_xio_file_mode_t;
typedef enum
{
GLOBUS_XIO_FILE_SEEK_SET = SEEK_SET,
GLOBUS_XIO_FILE_SEEK_CUR = SEEK_CUR,
GLOBUS_XIO_FILE_SEEK_END = SEEK_END
} globus_xio_file_whence_t;
#ifdef __cplusplus
}
#endif
#endif /* GLOBUS_XIO_FILE_DRIVER_H */
globus_xio_file_attr_cmd_t
globus_xio_file_attr_cmd_t
Definition globus_xio_file_driver.h:160
GLOBUS_XIO_FILE_SET_BLOCKING_IO
@ GLOBUS_XIO_FILE_SET_BLOCKING_IO
Definition globus_xio_file_driver.h:195
GLOBUS_XIO_FILE_SEEK
@ GLOBUS_XIO_FILE_SEEK
Definition globus_xio_file_driver.h:203
GLOBUS_XIO_FILE_GET_HANDLE
@ GLOBUS_XIO_FILE_GET_HANDLE
Definition globus_xio_file_driver.h:191
GLOBUS_XIO_FILE_GET_TRUNC_OFFSET
@ GLOBUS_XIO_FILE_GET_TRUNC_OFFSET
Definition globus_xio_file_driver.h:183
GLOBUS_XIO_FILE_GET_MODE
@ GLOBUS_XIO_FILE_GET_MODE
Definition globus_xio_file_driver.h:167
GLOBUS_XIO_FILE_SET_HANDLE
@ GLOBUS_XIO_FILE_SET_HANDLE
Definition globus_xio_file_driver.h:187
GLOBUS_XIO_FILE_SET_MODE
@ GLOBUS_XIO_FILE_SET_MODE
Definition globus_xio_file_driver.h:163
GLOBUS_XIO_FILE_SET_FLAGS
@ GLOBUS_XIO_FILE_SET_FLAGS
Definition globus_xio_file_driver.h:171
GLOBUS_XIO_FILE_GET_FLAGS
@ GLOBUS_XIO_FILE_GET_FLAGS
Definition globus_xio_file_driver.h:175
GLOBUS_XIO_FILE_GET_BLOCKING_IO
@ GLOBUS_XIO_FILE_GET_BLOCKING_IO
Definition globus_xio_file_driver.h:199
GLOBUS_XIO_FILE_SET_TRUNC_OFFSET
@ GLOBUS_XIO_FILE_SET_TRUNC_OFFSET
Definition globus_xio_file_driver.h:179
globus_xio_file_flag_t
globus_xio_file_flag_t
Definition globus_xio_file_driver.h:214
globus_xio_file_mode_t
globus_xio_file_mode_t
Definition globus_xio_file_driver.h:251
globus_xio_file_whence_t
globus_xio_file_whence_t
Definition globus_xio_file_driver.h:285
GLOBUS_XIO_FILE_TEXT
@ GLOBUS_XIO_FILE_TEXT
Definition globus_xio_file_driver.h:236
GLOBUS_XIO_FILE_BINARY
@ GLOBUS_XIO_FILE_BINARY
Definition globus_xio_file_driver.h:234
GLOBUS_XIO_FILE_RDWR
@ GLOBUS_XIO_FILE_RDWR
Definition globus_xio_file_driver.h:224
GLOBUS_XIO_FILE_APPEND
@ GLOBUS_XIO_FILE_APPEND
Definition globus_xio_file_driver.h:228
GLOBUS_XIO_FILE_WRONLY
@ GLOBUS_XIO_FILE_WRONLY
Definition globus_xio_file_driver.h:222
GLOBUS_XIO_FILE_TRUNC
@ GLOBUS_XIO_FILE_TRUNC
Definition globus_xio_file_driver.h:226
GLOBUS_XIO_FILE_RDONLY
@ GLOBUS_XIO_FILE_RDONLY
Definition globus_xio_file_driver.h:220
GLOBUS_XIO_FILE_CREAT
@ GLOBUS_XIO_FILE_CREAT
Definition globus_xio_file_driver.h:216
GLOBUS_XIO_FILE_EXCL
@ GLOBUS_XIO_FILE_EXCL
Definition globus_xio_file_driver.h:218
GLOBUS_XIO_FILE_IXGRP
@ GLOBUS_XIO_FILE_IXGRP
Definition globus_xio_file_driver.h:275
GLOBUS_XIO_FILE_IRUSR
@ GLOBUS_XIO_FILE_IRUSR
Definition globus_xio_file_driver.h:255
GLOBUS_XIO_FILE_IRWXG
@ GLOBUS_XIO_FILE_IRWXG
Definition globus_xio_file_driver.h:269
GLOBUS_XIO_FILE_IXOTH
@ GLOBUS_XIO_FILE_IXOTH
Definition globus_xio_file_driver.h:267
GLOBUS_XIO_FILE_IXUSR
@ GLOBUS_XIO_FILE_IXUSR
Definition globus_xio_file_driver.h:259
GLOBUS_XIO_FILE_IWOTH
@ GLOBUS_XIO_FILE_IWOTH
Definition globus_xio_file_driver.h:265
GLOBUS_XIO_FILE_IWGRP
@ GLOBUS_XIO_FILE_IWGRP
Definition globus_xio_file_driver.h:273
GLOBUS_XIO_FILE_IRGRP
@ GLOBUS_XIO_FILE_IRGRP
Definition globus_xio_file_driver.h:271
GLOBUS_XIO_FILE_IRWXU
@ GLOBUS_XIO_FILE_IRWXU
Definition globus_xio_file_driver.h:253
GLOBUS_XIO_FILE_IRWXO
@ GLOBUS_XIO_FILE_IRWXO
Definition globus_xio_file_driver.h:261
GLOBUS_XIO_FILE_IWUSR
@ GLOBUS_XIO_FILE_IWUSR
Definition globus_xio_file_driver.h:257
GLOBUS_XIO_FILE_IROTH
@ GLOBUS_XIO_FILE_IROTH
Definition globus_xio_file_driver.h:263
GLOBUS_XIO_FILE_SEEK_CUR
@ GLOBUS_XIO_FILE_SEEK_CUR
Definition globus_xio_file_driver.h:289
GLOBUS_XIO_FILE_SEEK_END
@ GLOBUS_XIO_FILE_SEEK_END
Definition globus_xio_file_driver.h:291
GLOBUS_XIO_FILE_SEEK_SET
@ GLOBUS_XIO_FILE_SEEK_SET
Definition globus_xio_file_driver.h:287