Subversion Repositories Kolibri OS

Rev

Rev 4874 | Rev 6099 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. #ifndef _SYS_UNISTD_H
  2. #define _SYS_UNISTD_H
  3.  
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7.  
  8. #include <_ansi.h>
  9. #include <sys/types.h>
  10. #include <sys/_types.h>
  11. #define __need_size_t
  12. #define __need_ptrdiff_t
  13. #include <stddef.h>
  14.  
  15. extern char **environ;
  16.  
  17. void    _EXFUN(_exit, (int __status ) _ATTRIBUTE ((noreturn)));
  18.  
  19. int     _EXFUN(access,(const char *__path, int __amode ));
  20. unsigned  _EXFUN(alarm, (unsigned __secs ));
  21. int     _EXFUN(chdir, (const char *__path ));
  22. int     _EXFUN(chmod, (const char *__path, mode_t __mode ));
  23. #if !defined(__INSIDE_CYGWIN__)
  24. int     _EXFUN(chown, (const char *__path, uid_t __owner, gid_t __group ));
  25. #endif
  26. #if defined(__CYGWIN__) || defined(__rtems__)
  27. int     _EXFUN(chroot, (const char *__path ));
  28. #endif
  29. int     _EXFUN(close, (int __fildes ));
  30. #if defined(__CYGWIN__)
  31. size_t  _EXFUN(confstr, (int __name, char *__buf, size_t __len));
  32. #endif
  33. char *  _EXFUN(ctermid, (char *__s ));
  34. char *  _EXFUN(cuserid, (char *__s ));
  35. #if defined(__CYGWIN__)
  36. int     _EXFUN(daemon, (int nochdir, int noclose));
  37. #endif
  38. int     _EXFUN(dup, (int __fildes ));
  39. int     _EXFUN(dup2, (int __fildes, int __fildes2 ));
  40. #if defined(__CYGWIN__)
  41. int     _EXFUN(dup3, (int __fildes, int __fildes2, int flags));
  42. int     _EXFUN(eaccess, (const char *__path, int __mode));
  43. void    _EXFUN(endusershell, (void));
  44. int     _EXFUN(euidaccess, (const char *__path, int __mode));
  45. #endif
  46. int     _EXFUN(execl, (const char *__path, const char *, ... ));
  47. int     _EXFUN(execle, (const char *__path, const char *, ... ));
  48. int     _EXFUN(execlp, (const char *__file, const char *, ... ));
  49. #if defined(__CYGWIN__)
  50. int     _EXFUN(execlpe, (const char *__file, const char *, ... ));
  51. #endif
  52. int     _EXFUN(execv, (const char *__path, char * const __argv[] ));
  53. int     _EXFUN(execve, (const char *__path, char * const __argv[], char * const __envp[] ));
  54. int     _EXFUN(execvp, (const char *__file, char * const __argv[] ));
  55. #if defined(__CYGWIN__)
  56. int     _EXFUN(execvpe, (const char *__file, char * const __argv[], char * const __envp[] ));
  57. int     _EXFUN(faccessat, (int __dirfd, const char *__path, int __mode, int __flags));
  58. #endif
  59. #if defined(__CYGWIN__) || defined(__rtems__) || defined(__SPU__)
  60. int     _EXFUN(fchdir, (int __fildes));
  61. #endif
  62. int     _EXFUN(fchmod, (int __fildes, mode_t __mode ));
  63. #if !defined(__INSIDE_CYGWIN__)
  64. int     _EXFUN(fchown, (int __fildes, uid_t __owner, gid_t __group ));
  65. #endif
  66. #if defined(__CYGWIN__)
  67. int     _EXFUN(fchownat, (int __dirfd, const char *__path, uid_t __owner, gid_t __group, int __flags));
  68. int     _EXFUN(fexecve, (int __fd, char * const __argv[], char * const __envp[] ));
  69. #endif
  70. pid_t   _EXFUN(fork, (void ));
  71. long    _EXFUN(fpathconf, (int __fd, int __name ));
  72. int     _EXFUN(fsync, (int __fd));
  73. int     _EXFUN(fdatasync, (int __fd));
  74. #if defined(__CYGWIN__)
  75. char *  _EXFUN(get_current_dir_name, (void));
  76. #endif
  77. char *  _EXFUN(getcwd, (char *__buf, size_t __size ));
  78. #if defined(__CYGWIN__)
  79. int     _EXFUN(getdomainname ,(char *__name, size_t __len));
  80. #endif
  81. #if !defined(__INSIDE_CYGWIN__)
  82. gid_t   _EXFUN(getegid, (void ));
  83. uid_t   _EXFUN(geteuid, (void ));
  84. gid_t   _EXFUN(getgid, (void ));
  85. #endif
  86. int     _EXFUN(getgroups, (int __gidsetsize, gid_t __grouplist[] ));
  87. #if defined(__CYGWIN__)
  88. long    _EXFUN(gethostid, (void));
  89. #endif
  90. char *  _EXFUN(getlogin, (void ));
  91. #if defined(_POSIX_THREAD_SAFE_FUNCTIONS)
  92. int _EXFUN(getlogin_r, (char *name, size_t namesize) );
  93. #endif
  94. char *  _EXFUN(getpass, (const char *__prompt));
  95. int     _EXFUN(getpagesize, (void));
  96. #if defined(__CYGWIN__)
  97. int    _EXFUN(getpeereid, (int, uid_t *, gid_t *));
  98. #endif
  99. pid_t   _EXFUN(getpgid, (pid_t));
  100. pid_t   _EXFUN(getpgrp, (void ));
  101. pid_t   _EXFUN(getpid, (void ));
  102. pid_t   _EXFUN(getppid, (void ));
  103. #if defined(__CYGWIN__) || defined(__rtems__)
  104. pid_t   _EXFUN(getsid, (pid_t));
  105. #endif
  106. #if !defined(__INSIDE_CYGWIN__)
  107. uid_t   _EXFUN(getuid, (void ));
  108. #endif
  109. #ifdef __CYGWIN__
  110. char *  _EXFUN(getusershell, (void));
  111. char *  _EXFUN(getwd, (char *__buf ));
  112. int     _EXFUN(iruserok, (unsigned long raddr, int superuser, const char *ruser, const char *luser));
  113. #endif
  114. int     _EXFUN(isatty, (int __fildes ));
  115. #if !defined(__INSIDE_CYGWIN__)
  116. int     _EXFUN(lchown, (const char *__path, uid_t __owner, gid_t __group ));
  117. #endif
  118. int     _EXFUN(link, (const char *__path1, const char *__path2 ));
  119. #if defined(__CYGWIN__)
  120. int     _EXFUN(linkat, (int __dirfd1, const char *__path1, int __dirfd2, const char *__path2, int __flags ));
  121. #endif
  122. int     _EXFUN(nice, (int __nice_value ));
  123. #if !defined(__INSIDE_CYGWIN__)
  124. off_t   _EXFUN(lseek, (int __fildes, off_t __offset, int __whence ));
  125. #endif
  126. #if defined(__SPU__) || defined(__CYGWIN__)
  127. #define F_ULOCK 0
  128. #define F_LOCK  1
  129. #define F_TLOCK 2
  130. #define F_TEST  3
  131. int     _EXFUN(lockf, (int __fd, int __cmd, off_t __len));
  132. #endif
  133. long    _EXFUN(pathconf, (const char *__path, int __name ));
  134. int     _EXFUN(pause, (void ));
  135. #ifdef __CYGWIN__
  136. int     _EXFUN(pthread_atfork, (void (*)(void), void (*)(void), void (*)(void)));
  137. #endif
  138. int     _EXFUN(pipe, (int __fildes[2] ));
  139. #ifdef __CYGWIN__
  140. int     _EXFUN(pipe2, (int __fildes[2], int flags));
  141. #endif
  142. ssize_t _EXFUN(pread, (int __fd, void *__buf, size_t __nbytes, off_t __offset));
  143. ssize_t _EXFUN(pwrite, (int __fd, const void *__buf, size_t __nbytes, off_t __offset));
  144. _READ_WRITE_RETURN_TYPE _EXFUN(read, (int __fd, void *__buf, size_t __nbyte ));
  145. #if defined(__CYGWIN__)
  146. int     _EXFUN(rresvport, (int *__alport));
  147. int     _EXFUN(revoke, (char *__path));
  148. #endif
  149. int     _EXFUN(rmdir, (const char *__path ));
  150. #if defined(__CYGWIN__)
  151. int     _EXFUN(ruserok, (const char *rhost, int superuser, const char *ruser, const char *luser));
  152. #endif
  153. void *  _EXFUN(sbrk,  (ptrdiff_t __incr));
  154. #if !defined(__INSIDE_CYGWIN__)
  155. #if defined(__CYGWIN__) || defined(__rtems__)
  156. int     _EXFUN(setegid, (gid_t __gid ));
  157. int     _EXFUN(seteuid, (uid_t __uid ));
  158. #endif
  159. int     _EXFUN(setgid, (gid_t __gid ));
  160. #endif
  161. #if defined(__CYGWIN__)
  162. int     _EXFUN(setgroups, (int ngroups, const gid_t *grouplist ));
  163. #endif
  164. int     _EXFUN(setpgid, (pid_t __pid, pid_t __pgid ));
  165. int     _EXFUN(setpgrp, (void ));
  166. #if defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__)
  167. int     _EXFUN(setregid, (gid_t __rgid, gid_t __egid));
  168. int     _EXFUN(setreuid, (uid_t __ruid, uid_t __euid));
  169. #endif
  170. pid_t   _EXFUN(setsid, (void ));
  171. #if !defined(__INSIDE_CYGWIN__)
  172. int     _EXFUN(setuid, (uid_t __uid ));
  173. #endif
  174. #if defined(__CYGWIN__)
  175. void    _EXFUN(setusershell, (void));
  176. #endif
  177. unsigned _EXFUN(sleep, (unsigned int __seconds ));
  178. void    _EXFUN(swab, (const void *__restrict, void *__restrict, ssize_t));
  179. long    _EXFUN(sysconf, (int __name ));
  180. pid_t   _EXFUN(tcgetpgrp, (int __fildes ));
  181. int     _EXFUN(tcsetpgrp, (int __fildes, pid_t __pgrp_id ));
  182. char *  _EXFUN(ttyname, (int __fildes ));
  183. #if defined(__CYGWIN__) || defined(__rtems__)
  184. int     _EXFUN(ttyname_r, (int, char *, size_t));
  185. #endif
  186. int     _EXFUN(unlink, (const char *__path ));
  187. int     _EXFUN(usleep, (useconds_t __useconds));
  188. int     _EXFUN(vhangup, (void ));
  189. _READ_WRITE_RETURN_TYPE _EXFUN(write, (int __fd, const void *__buf, size_t __nbyte ));
  190.  
  191. #ifdef __CYGWIN__
  192. # define __UNISTD_GETOPT__
  193. # include <getopt.h>
  194. # undef __UNISTD_GETOPT__
  195. #else
  196. extern char *optarg;                    /* getopt(3) external variables */
  197. extern int optind, opterr, optopt;
  198. int      getopt(int, char * const [], const char *);
  199. extern int optreset;                    /* getopt(3) external variable */
  200. #endif
  201.  
  202. #ifndef        _POSIX_SOURCE
  203. pid_t   _EXFUN(vfork, (void ));
  204. #endif /* _POSIX_SOURCE */
  205.  
  206. #ifdef _COMPILING_NEWLIB
  207. /* Provide prototypes for most of the _<systemcall> names that are
  208.    provided in newlib for some compilers.  */
  209. int     _EXFUN(_close, (int __fildes ));
  210. pid_t   _EXFUN(_fork, (void ));
  211. pid_t   _EXFUN(_getpid, (void ));
  212. int     _EXFUN(_isatty, (int __fildes ));
  213. int     _EXFUN(_link, (const char *__path1, const char *__path2 ));
  214. _off_t   _EXFUN(_lseek, (int __fildes, _off_t __offset, int __whence ));
  215. #ifdef __LARGE64_FILES
  216. _off64_t _EXFUN(_lseek64, (int __filedes, _off64_t __offset, int __whence ));
  217. #endif
  218. _READ_WRITE_RETURN_TYPE _EXFUN(_read, (int __fd, void *__buf, size_t __nbyte ));
  219. void *  _EXFUN(_sbrk,  (ptrdiff_t __incr));
  220. int     _EXFUN(_unlink, (const char *__path ));
  221. _READ_WRITE_RETURN_TYPE _EXFUN(_write, (int __fd, const void *__buf, size_t __nbyte ));
  222. int     _EXFUN(_execve, (const char *__path, char * const __argv[], char * const __envp[] ));
  223. #endif
  224.  
  225. #if defined(__CYGWIN__) || defined(__rtems__) || defined(__aarch64__) || defined (__arm__) || defined(__sh__) || defined(__SPU__)
  226. #if !defined(__INSIDE_CYGWIN__)
  227. int     _EXFUN(ftruncate, (int __fd, off_t __length));
  228. int     _EXFUN(truncate, (const char *, off_t __length));
  229. #endif
  230. #endif
  231.  
  232. #if defined(__CYGWIN__) || defined(__rtems__)
  233. int     _EXFUN(getdtablesize, (void));
  234. int     _EXFUN(setdtablesize, (int));
  235. useconds_t _EXFUN(ualarm, (useconds_t __useconds, useconds_t __interval));
  236. #if !(defined  (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS))
  237. /* winsock[2].h defines as __stdcall, and with int as 2nd arg */
  238.  int    _EXFUN(gethostname, (char *__name, size_t __len));
  239. #endif
  240. char *  _EXFUN(mktemp, (char *));
  241. #endif
  242.  
  243. #if defined(__CYGWIN__) || defined(__SPU__) || defined(__rtems__)
  244. void    _EXFUN(sync, (void));
  245. #endif
  246.  
  247. ssize_t _EXFUN(readlink, (const char *__restrict __path,
  248.                           char *__restrict __buf, size_t __buflen));
  249. #if defined(__CYGWIN__)
  250. ssize_t        _EXFUN(readlinkat, (int __dirfd1, const char *__restrict __path,
  251.                             char *__restrict __buf, size_t __buflen));
  252. #endif
  253. int     _EXFUN(symlink, (const char *__name1, const char *__name2));
  254. #if defined(__CYGWIN__)
  255. int     _EXFUN(symlinkat, (const char *, int, const char *));
  256. int     _EXFUN(unlinkat, (int, const char *, int));
  257. #endif
  258.  
  259. #define F_OK    0
  260. #define R_OK    4
  261. #define W_OK    2
  262. #define X_OK    1
  263.  
  264. # define        SEEK_SET        0
  265. # define        SEEK_CUR        1
  266. # define        SEEK_END        2
  267.  
  268. #include <sys/features.h>
  269.  
  270. #define STDIN_FILENO    0       /* standard input file descriptor */
  271. #define STDOUT_FILENO   1       /* standard output file descriptor */
  272. #define STDERR_FILENO   2       /* standard error file descriptor */
  273.  
  274. /*
  275.  *  sysconf values per IEEE Std 1003.1, 2008 Edition
  276.  */
  277.  
  278. #define _SC_ARG_MAX                       0
  279. #define _SC_CHILD_MAX                     1
  280. #define _SC_CLK_TCK                       2
  281. #define _SC_NGROUPS_MAX                   3
  282. #define _SC_OPEN_MAX                      4
  283. #define _SC_JOB_CONTROL                   5
  284. #define _SC_SAVED_IDS                     6
  285. #define _SC_VERSION                       7
  286. #define _SC_PAGESIZE                      8
  287. #define _SC_PAGE_SIZE                     _SC_PAGESIZE
  288. /* These are non-POSIX values we accidentally introduced in 2000 without
  289.    guarding them.  Keeping them unguarded for backward compatibility. */
  290. #define _SC_NPROCESSORS_CONF              9
  291. #define _SC_NPROCESSORS_ONLN             10
  292. #define _SC_PHYS_PAGES                   11
  293. #define _SC_AVPHYS_PAGES                 12
  294. /* End of non-POSIX values. */
  295. #define _SC_MQ_OPEN_MAX                  13
  296. #define _SC_MQ_PRIO_MAX                  14
  297. #define _SC_RTSIG_MAX                    15
  298. #define _SC_SEM_NSEMS_MAX                16
  299. #define _SC_SEM_VALUE_MAX                17
  300. #define _SC_SIGQUEUE_MAX                 18
  301. #define _SC_TIMER_MAX                    19
  302. #define _SC_TZNAME_MAX                   20
  303. #define _SC_ASYNCHRONOUS_IO              21
  304. #define _SC_FSYNC                        22
  305. #define _SC_MAPPED_FILES                 23
  306. #define _SC_MEMLOCK                      24
  307. #define _SC_MEMLOCK_RANGE                25
  308. #define _SC_MEMORY_PROTECTION            26
  309. #define _SC_MESSAGE_PASSING              27
  310. #define _SC_PRIORITIZED_IO               28
  311. #define _SC_REALTIME_SIGNALS             29
  312. #define _SC_SEMAPHORES                   30
  313. #define _SC_SHARED_MEMORY_OBJECTS        31
  314. #define _SC_SYNCHRONIZED_IO              32
  315. #define _SC_TIMERS                       33
  316. #define _SC_AIO_LISTIO_MAX               34
  317. #define _SC_AIO_MAX                      35
  318. #define _SC_AIO_PRIO_DELTA_MAX           36
  319. #define _SC_DELAYTIMER_MAX               37
  320. #define _SC_THREAD_KEYS_MAX              38
  321. #define _SC_THREAD_STACK_MIN             39
  322. #define _SC_THREAD_THREADS_MAX           40
  323. #define _SC_TTY_NAME_MAX                 41
  324. #define _SC_THREADS                      42
  325. #define _SC_THREAD_ATTR_STACKADDR        43
  326. #define _SC_THREAD_ATTR_STACKSIZE        44
  327. #define _SC_THREAD_PRIORITY_SCHEDULING   45
  328. #define _SC_THREAD_PRIO_INHERIT          46
  329. /* _SC_THREAD_PRIO_PROTECT was _SC_THREAD_PRIO_CEILING in early drafts */
  330. #define _SC_THREAD_PRIO_PROTECT          47
  331. #define _SC_THREAD_PRIO_CEILING          _SC_THREAD_PRIO_PROTECT
  332. #define _SC_THREAD_PROCESS_SHARED        48
  333. #define _SC_THREAD_SAFE_FUNCTIONS        49
  334. #define _SC_GETGR_R_SIZE_MAX             50
  335. #define _SC_GETPW_R_SIZE_MAX             51
  336. #define _SC_LOGIN_NAME_MAX               52
  337. #define _SC_THREAD_DESTRUCTOR_ITERATIONS 53
  338. #define _SC_ADVISORY_INFO                54
  339. #define _SC_ATEXIT_MAX                   55
  340. #define _SC_BARRIERS                     56
  341. #define _SC_BC_BASE_MAX                  57
  342. #define _SC_BC_DIM_MAX                   58
  343. #define _SC_BC_SCALE_MAX                 59
  344. #define _SC_BC_STRING_MAX                60
  345. #define _SC_CLOCK_SELECTION              61
  346. #define _SC_COLL_WEIGHTS_MAX             62
  347. #define _SC_CPUTIME                      63
  348. #define _SC_EXPR_NEST_MAX                64
  349. #define _SC_HOST_NAME_MAX                65
  350. #define _SC_IOV_MAX                      66
  351. #define _SC_IPV6                         67
  352. #define _SC_LINE_MAX                     68
  353. #define _SC_MONOTONIC_CLOCK              69
  354. #define _SC_RAW_SOCKETS                  70
  355. #define _SC_READER_WRITER_LOCKS          71
  356. #define _SC_REGEXP                       72
  357. #define _SC_RE_DUP_MAX                   73
  358. #define _SC_SHELL                        74
  359. #define _SC_SPAWN                        75
  360. #define _SC_SPIN_LOCKS                   76
  361. #define _SC_SPORADIC_SERVER              77
  362. #define _SC_SS_REPL_MAX                  78
  363. #define _SC_SYMLOOP_MAX                  79
  364. #define _SC_THREAD_CPUTIME               80
  365. #define _SC_THREAD_SPORADIC_SERVER       81
  366. #define _SC_TIMEOUTS                     82
  367. #define _SC_TRACE                        83
  368. #define _SC_TRACE_EVENT_FILTER           84
  369. #define _SC_TRACE_EVENT_NAME_MAX         85
  370. #define _SC_TRACE_INHERIT                86
  371. #define _SC_TRACE_LOG                    87
  372. #define _SC_TRACE_NAME_MAX               88
  373. #define _SC_TRACE_SYS_MAX                89
  374. #define _SC_TRACE_USER_EVENT_MAX         90
  375. #define _SC_TYPED_MEMORY_OBJECTS         91
  376. #define _SC_V7_ILP32_OFF32               92
  377. #define _SC_V6_ILP32_OFF32               _SC_V7_ILP32_OFF32
  378. #define _SC_XBS5_ILP32_OFF32             _SC_V7_ILP32_OFF32
  379. #define _SC_V7_ILP32_OFFBIG              93
  380. #define _SC_V6_ILP32_OFFBIG              _SC_V7_ILP32_OFFBIG
  381. #define _SC_XBS5_ILP32_OFFBIG            _SC_V7_ILP32_OFFBIG
  382. #define _SC_V7_LP64_OFF64                94
  383. #define _SC_V6_LP64_OFF64                _SC_V7_LP64_OFF64
  384. #define _SC_XBS5_LP64_OFF64              _SC_V7_LP64_OFF64
  385. #define _SC_V7_LPBIG_OFFBIG              95
  386. #define _SC_V6_LPBIG_OFFBIG              _SC_V7_LPBIG_OFFBIG
  387. #define _SC_XBS5_LPBIG_OFFBIG            _SC_V7_LPBIG_OFFBIG
  388. #define _SC_XOPEN_CRYPT                  96
  389. #define _SC_XOPEN_ENH_I18N               97
  390. #define _SC_XOPEN_LEGACY                 98
  391. #define _SC_XOPEN_REALTIME               99
  392. #define _SC_STREAM_MAX                  100
  393. #define _SC_PRIORITY_SCHEDULING         101
  394. #define _SC_XOPEN_REALTIME_THREADS      102
  395. #define _SC_XOPEN_SHM                   103
  396. #define _SC_XOPEN_STREAMS               104
  397. #define _SC_XOPEN_UNIX                  105
  398. #define _SC_XOPEN_VERSION               106
  399. #define _SC_2_CHAR_TERM                 107
  400. #define _SC_2_C_BIND                    108
  401. #define _SC_2_C_DEV                     109
  402. #define _SC_2_FORT_DEV                  110
  403. #define _SC_2_FORT_RUN                  111
  404. #define _SC_2_LOCALEDEF                 112
  405. #define _SC_2_PBS                       113
  406. #define _SC_2_PBS_ACCOUNTING            114
  407. #define _SC_2_PBS_CHECKPOINT            115
  408. #define _SC_2_PBS_LOCATE                116
  409. #define _SC_2_PBS_MESSAGE               117
  410. #define _SC_2_PBS_TRACK                 118
  411. #define _SC_2_SW_DEV                    119
  412. #define _SC_2_UPE                       120
  413. #define _SC_2_VERSION                   121
  414. #define _SC_THREAD_ROBUST_PRIO_INHERIT  122
  415. #define _SC_THREAD_ROBUST_PRIO_PROTECT  123
  416. #define _SC_XOPEN_UUCP                  124
  417.  
  418. /*
  419.  *  pathconf values per IEEE Std 1003.1, 2008 Edition
  420.  */
  421.  
  422. #define _PC_LINK_MAX                      0
  423. #define _PC_MAX_CANON                     1
  424. #define _PC_MAX_INPUT                     2
  425. #define _PC_NAME_MAX                      3
  426. #define _PC_PATH_MAX                      4
  427. #define _PC_PIPE_BUF                      5
  428. #define _PC_CHOWN_RESTRICTED              6
  429. #define _PC_NO_TRUNC                      7
  430. #define _PC_VDISABLE                      8
  431. #define _PC_ASYNC_IO                      9
  432. #define _PC_PRIO_IO                      10
  433. #define _PC_SYNC_IO                      11
  434. #define _PC_FILESIZEBITS                 12
  435. #define _PC_2_SYMLINKS                   13
  436. #define _PC_SYMLINK_MAX                  14
  437. #define _PC_ALLOC_SIZE_MIN               15
  438. #define _PC_REC_INCR_XFER_SIZE           16
  439. #define _PC_REC_MAX_XFER_SIZE            17
  440. #define _PC_REC_MIN_XFER_SIZE            18
  441. #define _PC_REC_XFER_ALIGN               19
  442. #define _PC_TIMESTAMP_RESOLUTION         20
  443. #ifdef __CYGWIN__
  444. /* Ask for POSIX permission bits support. */
  445. #define _PC_POSIX_PERMISSIONS            90
  446. /* Ask for full POSIX permission support including uid/gid settings. */
  447. #define _PC_POSIX_SECURITY               91
  448. #endif
  449.  
  450. /*
  451.  *  confstr values per IEEE Std 1003.1, 2004 Edition
  452.  */
  453.  
  454. #ifdef __CYGWIN__       /* Only defined on Cygwin for now. */
  455. #define _CS_PATH                               0
  456. #define _CS_POSIX_V7_ILP32_OFF32_CFLAGS        1
  457. #define _CS_POSIX_V6_ILP32_OFF32_CFLAGS       _CS_POSIX_V7_ILP32_OFF32_CFLAGS
  458. #define _CS_XBS5_ILP32_OFF32_CFLAGS           _CS_POSIX_V7_ILP32_OFF32_CFLAGS
  459. #define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS       2
  460. #define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS      _CS_POSIX_V7_ILP32_OFF32_LDFLAGS
  461. #define _CS_XBS5_ILP32_OFF32_LDFLAGS          _CS_POSIX_V7_ILP32_OFF32_LDFLAGS
  462. #define _CS_POSIX_V7_ILP32_OFF32_LIBS          3
  463. #define _CS_POSIX_V6_ILP32_OFF32_LIBS         _CS_POSIX_V7_ILP32_OFF32_LIBS
  464. #define _CS_XBS5_ILP32_OFF32_LIBS             _CS_POSIX_V7_ILP32_OFF32_LIBS
  465. #define _CS_XBS5_ILP32_OFF32_LINTFLAGS         4
  466. #define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS       5
  467. #define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS      _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS
  468. #define _CS_XBS5_ILP32_OFFBIG_CFLAGS          _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS
  469. #define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS      6
  470. #define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS     _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS
  471. #define _CS_XBS5_ILP32_OFFBIG_LDFLAGS         _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS
  472. #define _CS_POSIX_V7_ILP32_OFFBIG_LIBS         7
  473. #define _CS_POSIX_V6_ILP32_OFFBIG_LIBS        _CS_POSIX_V7_ILP32_OFFBIG_LIBS
  474. #define _CS_XBS5_ILP32_OFFBIG_LIBS            _CS_POSIX_V7_ILP32_OFFBIG_LIBS
  475. #define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS        8
  476. #define _CS_POSIX_V7_LP64_OFF64_CFLAGS         9
  477. #define _CS_POSIX_V6_LP64_OFF64_CFLAGS        _CS_POSIX_V7_LP64_OFF64_CFLAGS
  478. #define _CS_XBS5_LP64_OFF64_CFLAGS            _CS_POSIX_V7_LP64_OFF64_CFLAGS
  479. #define _CS_POSIX_V7_LP64_OFF64_LDFLAGS       10
  480. #define _CS_POSIX_V6_LP64_OFF64_LDFLAGS       _CS_POSIX_V7_LP64_OFF64_LDFLAGS
  481. #define _CS_XBS5_LP64_OFF64_LDFLAGS           _CS_POSIX_V7_LP64_OFF64_LDFLAGS
  482. #define _CS_POSIX_V7_LP64_OFF64_LIBS          11
  483. #define _CS_POSIX_V6_LP64_OFF64_LIBS          _CS_POSIX_V7_LP64_OFF64_LIBS
  484. #define _CS_XBS5_LP64_OFF64_LIBS              _CS_POSIX_V7_LP64_OFF64_LIBS
  485. #define _CS_XBS5_LP64_OFF64_LINTFLAGS         12
  486. #define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS      13
  487. #define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS      _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS
  488. #define _CS_XBS5_LPBIG_OFFBIG_CFLAGS          _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS
  489. #define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS     14
  490. #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS     _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS
  491. #define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS         _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS
  492. #define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS        15
  493. #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS        _CS_POSIX_V7_LPBIG_OFFBIG_LIBS
  494. #define _CS_XBS5_LPBIG_OFFBIG_LIBS            _CS_POSIX_V7_LPBIG_OFFBIG_LIBS
  495. #define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS       16
  496. #define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS    17
  497. #define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS    _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS
  498. #define _CS_XBS5_WIDTH_RESTRICTED_ENVS        _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS
  499. #define _CS_POSIX_V7_THREADS_CFLAGS           18
  500. #define _CS_POSIX_V7_THREADS_LDFLAGS          19
  501. #define _CS_V7_ENV                            20
  502. #define _CS_V6_ENV                            _CS_V7_ENV
  503. #endif
  504.  
  505. #ifdef __cplusplus
  506. }
  507. #endif
  508. #endif /* _SYS_UNISTD_H */
  509.