globus_xio  6.3
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
globus_xio_file_driver.h
Go to the documentation of this file.
1 
2 #ifndef GLOBUS_XIO_FILE_DRIVER_H
3 #define GLOBUS_XIO_FILE_DRIVER_H
4 
8 #include "globus_xio_system.h"
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
125 #define GLOBUS_XIO_FILE_INVALID_HANDLE GLOBUS_XIO_SYSTEM_INVALID_FILE
126 
138 typedef enum
139 {
153  /* int mode */
155 
163  /* int * mode_out */
165 
179  /* int flags */
181 
189  /* int * flags_out */
191 
204  /* globus_off_t offset */
206 
214  /* globus_off_t * offset_out */
216 
226  /* globus_xio_system_file_t handle */
228 
237  /* globus_xio_system_file_t * handle_out */
239 
249  /* globus_bool_t use_blocking_io */
251 
261  /* globus_bool_t * use_blocking_io_out */
263 
278  /* globus_off_t * in_out_offset,
279  * globus_xio_file_whence_t whence */
282 
290 typedef enum
291 {
293  GLOBUS_XIO_FILE_CREAT = O_CREAT,
295  GLOBUS_XIO_FILE_EXCL = O_EXCL,
297  GLOBUS_XIO_FILE_RDONLY = O_RDONLY,
299  GLOBUS_XIO_FILE_WRONLY = O_WRONLY,
301  GLOBUS_XIO_FILE_RDWR = O_RDWR,
303  GLOBUS_XIO_FILE_TRUNC = O_TRUNC,
305  GLOBUS_XIO_FILE_APPEND = O_APPEND,
306 #ifdef TARGET_ARCH_CYGWIN
307  GLOBUS_XIO_FILE_BINARY = O_BINARY,
308  GLOBUS_XIO_FILE_TEXT = O_TEXT
309 #else
310 
311  GLOBUS_XIO_FILE_BINARY = 0,
313  GLOBUS_XIO_FILE_TEXT = 0
314 #endif
316 
327 typedef enum
328 {
330  GLOBUS_XIO_FILE_IRWXU = S_IRWXU,
332  GLOBUS_XIO_FILE_IRUSR = S_IRUSR,
334  GLOBUS_XIO_FILE_IWUSR = S_IWUSR,
336  GLOBUS_XIO_FILE_IXUSR = S_IXUSR,
338  GLOBUS_XIO_FILE_IRWXO = S_IRWXO,
340  GLOBUS_XIO_FILE_IROTH = S_IROTH,
342  GLOBUS_XIO_FILE_IWOTH = S_IWOTH,
344  GLOBUS_XIO_FILE_IXOTH = S_IXOTH,
346  GLOBUS_XIO_FILE_IRWXG = S_IRWXG,
348  GLOBUS_XIO_FILE_IRGRP = S_IRGRP,
350  GLOBUS_XIO_FILE_IWGRP = S_IWGRP,
352  GLOBUS_XIO_FILE_IXGRP = S_IXGRP
354 
361 typedef enum
362 {
364  GLOBUS_XIO_FILE_SEEK_SET = SEEK_SET,
366  GLOBUS_XIO_FILE_SEEK_CUR = SEEK_CUR,
368  GLOBUS_XIO_FILE_SEEK_END = SEEK_END
370 
371 #ifdef __cplusplus
372 }
373 #endif
374 
375 #endif /* GLOBUS_XIO_FILE_DRIVER_H */
Definition: globus_xio_file_driver.h:236
Definition: globus_xio_file_driver.h:264
Definition: globus_xio_file_driver.h:201
Definition: globus_xio_file_driver.h:250
Definition: globus_xio_file_driver.h:205
Definition: globus_xio_file_driver.h:240
Definition: globus_xio_file_driver.h:252
Definition: globus_xio_file_driver.h:195
Definition: globus_xio_file_driver.h:238
Definition: globus_xio_file_driver.h:242
Definition: globus_xio_file_driver.h:140
Definition: globus_xio_file_driver.h:244
Definition: globus_xio_file_driver.h:203
Definition: globus_xio_file_driver.h:248
Definition: globus_xio_file_driver.h:213
Definition: globus_xio_file_driver.h:156
Definition: globus_xio_file_driver.h:199
Definition: globus_xio_file_driver.h:234
Definition: globus_xio_file_driver.h:211
Definition: globus_xio_file_driver.h:266
Definition: globus_xio_file_driver.h:172
Definition: globus_xio_file_driver.h:148
globus_xio_file_mode_t
Definition: globus_xio_file_driver.h:227
Definition: globus_xio_file_driver.h:230
Definition: globus_xio_file_driver.h:193
Definition: globus_xio_file_driver.h:160
Definition: globus_xio_file_driver.h:268
Definition: globus_xio_file_driver.h:164
Definition: globus_xio_file_driver.h:246
globus_xio_file_attr_cmd_t
Definition: globus_xio_file_driver.h:136
Definition: globus_xio_file_driver.h:232
globus_xio_file_whence_t
Definition: globus_xio_file_driver.h:261
Definition: globus_xio_file_driver.h:144
globus_xio_file_flag_t
Definition: globus_xio_file_driver.h:190
Definition: globus_xio_file_driver.h:152
Definition: globus_xio_file_driver.h:168
Definition: globus_xio_file_driver.h:180
Definition: globus_xio_file_driver.h:197
Definition: globus_xio_file_driver.h:176