home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 March B / SCO_CASTOR4RRT.iso / uccs / root.14 / udk / usr / include / unistd.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-19  |  7.9 KB  |  290 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 _UNISTD_H
  12. #define _UNISTD_H
  13. #ident    "@(#)sgs-head:common/head/unistd.h    1.52"
  14.  
  15. #include <sys/types.h>
  16. #include <sys/unistd.h>
  17.  
  18. #ifndef _USECONDS_T
  19. #define _USECONDS_T
  20. typedef unsigned long useconds_t;
  21. #endif
  22.  
  23. #if !defined(_XOPEN_SOURCE) \
  24.     && !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  25.  
  26. #define    GF_PATH    "/etc/group"    /* Path name of the "group" file */
  27. #define    PF_PATH    "/etc/passwd"    /* Path name of the "passwd" file */
  28.  
  29. #endif
  30.  
  31. #if defined (_XOPEN_SOURCE) && _XOPEN_SOURCE_EXTENDED - 0 >= 1 \
  32.     || !defined(_XOPEN_SOURCE) \
  33.         && !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  34.  
  35. #define F_ULOCK    0    /* Unlock a previously locked region */
  36. #define F_LOCK    1    /* Lock a region for exclusive use */
  37. #define F_TLOCK    2    /* Test and lock a region for exclusive use */
  38. #define F_TEST    3    /* Test a region for other processes locks */
  39.  
  40. #endif
  41.  
  42. #define _POSIX_JOB_CONTROL    1
  43. #define _POSIX_SAVED_IDS    1
  44.  
  45. #ifndef _POSIX_VDISABLE
  46. #define _POSIX_VDISABLE        0
  47. #endif
  48.  
  49. #ifndef    NULL
  50. #define NULL    0
  51. #endif
  52.  
  53. #define    STDIN_FILENO    0
  54. #define STDOUT_FILENO    1
  55. #define STDERR_FILENO    2
  56.  
  57. #define _XOPEN_UNIX    1
  58. #define _XOPEN_ENH_I18N        1
  59. #define _XOPEN_XPG4        1
  60. #define _POSIX2_C_VERSION    199209L
  61. #define _POSIX2_VERSION        199209L
  62. #define _XOPEN_XCU_VERSION    4
  63.  
  64. #define _POSIX2_C_BIND        1
  65. #define _POSIX2_CHAR_TERM    1
  66. #define _POSIX2_FORT_RUN    1
  67. #define _POSIX2_LOCALEDEF    1
  68. #define _POSIX2_UPE        1
  69.  
  70. #define _LFS_ASYNCHRONOUS_IO    1
  71. #define _LFS_LARGEFILE        1
  72. #define _LFS64_ASYNCHRONOUS_IO    1
  73. #define _LFS64_LARGEFILE    1
  74. #define _LFS64_STDIO        1
  75.  
  76. #ifdef __cplusplus
  77. extern "C" {
  78. #endif
  79.  
  80. extern int    access(const char *, int);
  81. extern unsigned    alarm(unsigned);
  82. extern int    chdir(const char *);
  83. extern int    chown(const char *, uid_t, gid_t);
  84. extern int    close(int);
  85. extern char    *cuserid(char *);
  86. extern int    dup(int);
  87. extern int    dup2(int, int);
  88. extern int    execl(const char *, const char *, ...);
  89. extern int    execle(const char *, const char *, ...);
  90. extern int    execlp(const char *, const char *, ...);
  91. extern int    execv(const char *, char *const *);
  92. extern int    execve(const char *, char *const *, char *const *);
  93. extern int    execvp(const char *, char *const *);
  94. extern void    _exit(int);
  95. extern pid_t    fork(void);
  96. extern long    fpathconf(int, int);
  97. extern char    *getcwd(char *, size_t);
  98. extern gid_t    getegid(void);
  99. extern uid_t    geteuid(void);
  100. extern gid_t    getgid(void);
  101. extern int    getgroups(int, gid_t *);
  102. extern char    *getlogin(void);
  103. extern pid_t    getpgrp(void);
  104. extern pid_t    getpid(void);
  105. extern pid_t    getppid(void);
  106. extern uid_t    getuid(void);
  107. extern int    isatty(int);
  108. extern int    link(const char *, const char *);
  109. extern n_off_t    lseek(int, n_off_t, int);
  110. extern long    pathconf(const char *, int);
  111. extern int    pause(void);
  112. extern int    pipe(int *);
  113. extern ssize_t    read(int, void *, size_t);
  114. extern int    rmdir(const char *);
  115. extern int    setgid(gid_t);
  116. extern int    setpgid(pid_t, pid_t);
  117. extern pid_t    setsid(void);
  118. extern int    setuid(uid_t);
  119. extern unsigned    sleep(unsigned);
  120. extern long    sysconf(int);
  121. extern pid_t    tcgetpgrp(int);
  122. extern int    tcsetpgrp(int, pid_t);
  123. extern char    *ttyname(int);
  124. extern int    unlink(const char *);
  125. extern ssize_t    write(int, const void *, size_t);
  126.  
  127. #if defined(_XOPEN_SOURCE) || (_POSIX_C_SOURCE - 0 > 1) \
  128.     || !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  129.  
  130. extern size_t    confstr(int, char *, size_t);
  131. extern int    getopt(int, char *const*, const char *);
  132. extern char    *optarg;
  133. extern int    optind, opterr, optopt;
  134.  
  135. #endif
  136.  
  137. #if defined(_XOPEN_SOURCE) \
  138.     || !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  139.  
  140. extern int    chroot(const char *);
  141. extern char    *crypt(const char *, const char *);
  142. extern char    *ctermid(char *);    /* REALLY OKAY HERE? */
  143. extern void    encrypt(char *, int);
  144. extern int    fsync(int);
  145. extern char    *getpass(const char *);
  146. extern int    nice(int);
  147. extern void    swab(const void *, void *, ssize_t);
  148.  
  149. #endif
  150.  
  151. #if defined (_XOPEN_SOURCE) && _XOPEN_SOURCE_EXTENDED - 0 >= 1 \
  152.     || !defined(_XOPEN_SOURCE) \
  153.         && !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  154.  
  155. extern int    brk(void *);
  156. extern int    fchown(int, uid_t, gid_t);
  157. extern int    fchdir(int);
  158. extern int    ftruncate(int, n_off_t);
  159. extern int    getdtablesize(void);
  160. extern long    gethostid(void);
  161. extern int    gethostname(char *, size_t);
  162. extern int    getpagesize(void);
  163. extern pid_t    getpgid(pid_t);
  164. extern pid_t    getsid(pid_t);
  165. extern char    *getwd(char *);
  166. extern int    lchown(const char *, uid_t, gid_t);
  167. extern int    lockf(int, int, long);
  168. extern int    readlink(const char *, char *, size_t);
  169. extern void    *sbrk(int);
  170. extern pid_t    setpgrp(void);
  171. extern int    setregid(gid_t, gid_t);
  172. extern int     setreuid(uid_t, uid_t);
  173. extern int    symlink(const char *, const char *);
  174. extern void    sync(void);
  175. extern int    truncate(const char *, n_off_t);
  176. extern useconds_t ualarm(useconds_t, useconds_t);
  177. extern int     usleep(useconds_t);
  178. extern pid_t    vfork(void);
  179.  
  180. #endif
  181.  
  182. #if defined(_LARGEFILE64_SOURCE) || defined(_FILE_OFFSET_BITS) \
  183.     || !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) \
  184.         && !defined(_POSIX_C_SOURCE)
  185.  
  186. extern int    ftruncate32(int, off32_t);
  187. extern off32_t    lseek32(int, off32_t, int);
  188. extern ssize_t    pread32(int, void *, size_t, off32_t);
  189. extern ssize_t    pwrite32(int, const void *, size_t, off32_t);
  190. extern int    truncate32(const char *, off32_t);
  191.  
  192. extern int    ftruncate64(int, off64_t);
  193. extern off64_t    lseek64(int, off64_t, int);
  194. extern ssize_t    pread64(int, void *, size_t, off64_t);
  195. extern ssize_t    pwrite64(int, const void *, size_t, off64_t);
  196. extern int    truncate64(const char *, off64_t);
  197.  
  198. #endif
  199.  
  200. #if !defined(_XOPEN_SOURCE) \
  201.     && !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
  202.  
  203. extern int    acct(const char *);
  204. extern void    exit(int);
  205. extern int    fattach(int, const char *);
  206. extern int    fdetach(const char *);
  207. extern pid_t    fork1(void);
  208. extern pid_t    forkall(void);
  209. extern char    *getpass_r(const char *, char *, size_t);
  210. extern char    *gettxt(const char *, const char *);
  211. extern int    ioctl(int, int, ...);
  212. extern int    mincore(caddr_t, size_t, char *);
  213. extern ssize_t    pread(int, void *, size_t, n_off_t);
  214. extern void    profil(unsigned short *, unsigned, unsigned, unsigned);
  215. extern int    ptrace(int, pid_t, int, int);
  216. extern ssize_t    pwrite(int, const void *, size_t, n_off_t);
  217. extern int    rename(const char *, const char *);
  218. extern int    setgroups(int, const gid_t *);
  219. extern int    stime(const time_t *);
  220. extern int    _xgetlogin_r(char *, size_t);
  221. extern int    _xttyname_r(int, char *, size_t);
  222.  
  223. #ifdef _SIMPLE_R
  224.  
  225. extern char    *getlogin_r(char *, size_t);
  226. extern char    *ttyname_r(int, char *, size_t);
  227.  
  228. #elif defined(_EFTSAFE)
  229.  
  230. #undef getlogin_r
  231. #define getlogin_r(p,s)        _xgetlogin_r(p,s)
  232. #undef ttyame_r
  233. #define ttyname_r(f,p,s)    _xttyname_r(f,p,s)
  234.  
  235. #else
  236.  
  237. #ifndef _GETLOGIN_R
  238. #define _GETLOGIN_R
  239. static int
  240. getlogin_r(char *__1, size_t __2)
  241. {
  242.     return _xgetlogin_r(__1, __2);
  243. }
  244. #endif /*_GETLOGIN_R*/
  245.  
  246. #ifndef _TTYNAME_R
  247. #define _TTYNAME_R
  248. static int
  249. ttyname_r(int __1, char *__2, size_t __3)
  250. {
  251.     return _xttyname_r(__1, __2, __3);
  252. }
  253. #endif /*_TTYNAME_R*/
  254.  
  255. #endif /*_SIMPLE_R*/
  256.  
  257. #endif /*!defined(_XOPEN_SOURCE) && ...*/
  258.  
  259. #if _FILE_OFFSET_BITS - 0 == 32
  260. #undef ftruncate
  261. #define ftruncate    ftruncate32
  262. #undef lseek
  263. #define lseek        lseek32
  264. #undef pread
  265. #define pread        pread32
  266. #undef pwrite
  267. #define pwrite        pwrite32
  268. #undef truncate
  269. #define truncate    truncate32
  270. #elif _FILE_OFFSET_BITS - 0 == 64
  271. #undef ftruncate
  272. #define ftruncate    ftruncate64
  273. #undef lseek
  274. #define lseek        lseek64
  275. #undef pread
  276. #define pread        pread64
  277. #undef pwrite
  278. #define pwrite        pwrite64
  279. #undef truncate
  280. #define truncate    truncate64
  281. #elif defined(_FILE_OFFSET_BITS)
  282. #error "_FILE_OFFSET_BITS, if defined, must be 32 or 64"
  283. #endif /*_FILE_OFFSET_BITS*/
  284.  
  285. #ifdef __cplusplus
  286. }
  287. #endif
  288.  
  289. #endif /*_UNISTD_H*/
  290.