home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 March B / SCO_CASTOR4RRT.iso / uccs / root.14 / udk / usr / include / fcntl.h < prev    next >
C/C++ Source or Header  |  1998-08-19  |  3KB  |  76 lines

  1. /*
  2.  * Copyright (c) 1998 The Santa Cruz Operation, Inc.. All Rights Reserved. 
  3.  *                                                                         
  4.  *        THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF THE               
  5.  *                   SANTA CRUZ OPERATION INC.                             
  6.  *                                                                         
  7.  *   The copyright notice above does not evidence any actual or intended   
  8.  *   publication of such source code.                                      
  9.  */
  10.  
  11. #ifndef _FCNTL_H
  12. #define _FCNTL_H
  13. #ident    "@(#)sgs-head:common/head/fcntl.h    1.6.5.5"
  14.  
  15. #include <sys/types.h>
  16. #include <sys/fcntl.h>
  17.  
  18. #ifndef S_IRWXU
  19. #   define S_IRWXU    00700    /* read, write, execute: owner */
  20. #   define S_IRUSR    00400    /* read permission: owner */
  21. #   define S_IWUSR    00200    /* write permission: owner */
  22. #   define S_IXUSR    00100    /* execute permission: owner */
  23. #   define S_IRWXG    00070    /* read, write, execute: group */
  24. #   define S_IRGRP    00040    /* read permission: group */
  25. #   define S_IWGRP    00020    /* write permission: group */
  26. #   define S_IXGRP    00010    /* execute permission: group */
  27. #   define S_IRWXO    00007    /* read, write, execute: other */
  28. #   define S_IROTH    00004    /* read permission: other */
  29. #   define S_IWOTH    00002    /* write permission: other */
  30. #   define S_IXOTH    00001    /* execute permission: other */
  31. #   define S_ISUID    0x800    /* set user id on execution */
  32. #   define S_ISGID    0x400    /* set group id on execution */
  33. #endif
  34.  
  35. #ifndef SEEK_SET
  36. #   define SEEK_SET    0    /* Set file pointer to "offset" */
  37. #   define SEEK_CUR    1    /* Set file pointer to current plus "offset" */
  38. #   define SEEK_END    2    /* Set file pointer to EOF plus "offset" */
  39. #endif
  40.  
  41. #ifdef __cplusplus
  42. extern "C" {
  43. #endif
  44.  
  45. extern int    fcntl(int, int, ...);
  46. extern int    open(const char *, int, ...);
  47. extern int    creat(const char *, mode_t);
  48. #if defined(_LARGEFILE64_SOURCE) || defined(_FILE_OFFSET_BITS) \
  49.     || !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) \
  50.         && !defined(_POSIX_C_SOURCE)
  51. extern int    open32(const char *, int, ...);
  52. extern int    creat32(const char *, mode_t);
  53. extern int    open64(const char *, int, ...);
  54. extern int    creat64(const char *, mode_t);
  55. #endif /*defined(_LARGEFILE64_SOURCE) || ...*/
  56.  
  57. #ifdef __cplusplus
  58. }
  59. #endif
  60.  
  61. #if _FILE_OFFSET_BITS - 0 == 32
  62. #undef open
  63. #define open    open32
  64. #undef creat
  65. #define creat    creat32
  66. #elif _FILE_OFFSET_BITS - 0 == 64
  67. #undef open
  68. #define open    open64
  69. #undef creat
  70. #define creat    creat64
  71. #elif defined(_FILE_OFFSET_BITS)
  72. #error "_FILE_OFFSET_BITS, if defined, must be 32 or 64"
  73. #endif /*_FILE_OFFSET_BITS*/
  74.  
  75. #endif /*_FCNTL_H*/
  76.