home *** CD-ROM | disk | FTP | other *** search
/ Computer Club Elmshorn Atari PD / CCE_PD.iso / pc / 0400 / CCE_0423.ZIP / CCE_0423.PD / INCLUD83.ZOO / unistd.h < prev    next >
C/C++ Source or Header  |  1992-07-20  |  6KB  |  187 lines

  1. #ifndef _UNISTD_H
  2. #define _UNISTD_H
  3.  
  4. /* NOTE:
  5.  * in prototypes used here, do *not* use things
  6.  * like size_t, uid_t, etc., since these
  7.  * may not be defined. Use the macros
  8.  * from <compiler.h> instead.
  9.  */
  10. #ifndef _COMPILER_H
  11. #include <compiler.h>
  12. #endif
  13.  
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17.  
  18. /* see Posix standard -- 1003.1 sect 2.10 */
  19.  
  20. #ifndef NULL
  21. #define NULL __NULL
  22. #endif
  23.  
  24. #ifndef F_OK
  25. /* file access stuff */
  26. #define    F_OK            0
  27. #define    X_OK            1
  28. #define    W_OK            2
  29. #define    R_OK            4
  30. #endif
  31.  
  32. #ifndef SEEK_SET
  33. /* lseek() origins */
  34. #define    SEEK_SET    0        /* from beginning of file */
  35. #define    SEEK_CUR    1        /* from current location */
  36. #define    SEEK_END    2        /* from end of file */
  37. #endif
  38.  
  39. #define _POSIX_JOB_CONTROL
  40. #if 0
  41. #define _POSIX_VERSION        0L        /* <- NON-CONFORMING */
  42. #endif
  43. #define _POSIX_CHOWN_RESTRICTED 0
  44. #define _POSIX_VDISABLE        0
  45.  
  46. #if 0                    /* this depends on the file system */
  47. #define _POSIX_NO_TRUNC        -1
  48. #endif
  49.  
  50. /* 1003.1 section 8.2.1.2 */
  51. #define STDIN_FILENO    0
  52. #define STDOUT_FILENO    1
  53. #define STDERR_FILENO    2
  54.  
  55. /* sysconf() values */
  56. #define _SC_LAST    -1    /* max limit # for sysconf - NOT POSIX */
  57. #define _SC_MEMR_MAX    0    /* memory regions per process - NOT POSIX */
  58. #define _SC_ARG_MAX    1    /* max length of cmdln - NOT quite POSIX */
  59. #define _SC_OPEN_MAX    2    /* max # of open files per process - POSIX */
  60. #define _SC_NGROUPS_MAX    3    /* max # supp gids - POSIX */
  61. #define _SC_CHILD_MAX    4    /* max # processes/user - NOT quite POSIX */
  62.  
  63. /* pathconf() values */
  64. #define _PC_LAST    -1    /* max limit # for pathconf - POSIX (!?) */
  65. #define _PC_IOPEN_MAX    0    /* internal limit on open files - NOT POSIX */
  66. #define _PC_LINK_MAX    1    /* max # of links - POSIX */
  67. #define _PC_PATH_MAX    2    /* max len of a full pathname - POSIX */
  68. #define _PC_NAME_MAX    3    /* max len of individual name - POSIX */
  69. #define _PC_PIPE_BUF    4    /* bytes written atomically to fifo - POSIX */
  70. #define _PC_NO_TRUNC    5    /* filename truncation - POSIX */
  71.  
  72. #ifdef __MINT__
  73. # ifndef _POSIX_SOURCE
  74. /* flock() commands */
  75. #  define F_ULOCK    0    /* unlock */
  76. #  define F_LOCK    1    /* lock */
  77. #  define F_TLOCK    2    /* test and lock (non-blocking) */
  78. #  define F_TEST    3    /* test */
  79. __EXTERN int        lockf    __PROTO((int, int, long));
  80. # endif
  81. #endif /* __MINT__ */
  82.  
  83. __EXTERN __EXITING _exit    __PROTO((int));
  84. __EXTERN __EXITING abort    __PROTO((void));
  85. __EXTERN int    access    __PROTO((const char *, int));
  86. __EXTERN int    alarm    __PROTO((unsigned));
  87. __EXTERN int    chdir    __PROTO((const char *));
  88. __EXTERN int    chmod    __PROTO((const char *, int));
  89. __EXTERN int    chown    __PROTO((const char *, int, int));
  90. __EXTERN int    close    __PROTO((int));
  91. __EXTERN int    creat    __PROTO((const char *, unsigned));
  92. __EXTERN int    dup    __PROTO((int));
  93. __EXTERN int    dup2    __PROTO((int, int));
  94. __EXTERN int    fork    __PROTO((void));
  95. __EXTERN char *    getcwd    __PROTO((char *, int));
  96. __EXTERN char *    getwd    __PROTO((char *));
  97. __EXTERN _GID_T    getegid    __PROTO((void));
  98. __EXTERN _UID_T    geteuid    __PROTO((void));
  99. __EXTERN _GID_T    getgid    __PROTO((void));
  100. __EXTERN char *    getlogin    __PROTO((void));
  101. #ifdef __MINT__
  102. __EXTERN int    getopt    __PROTO((int, char **, const char *));
  103. #else
  104. __EXTERN int    getopt    __PROTO((int, char * const *, const char *));
  105. #endif
  106. __EXTERN int    getpgrp    __PROTO((void));
  107. __EXTERN int    getpid    __PROTO((void));
  108. __EXTERN int    getppid    __PROTO((void));
  109. __EXTERN _UID_T    getuid    __PROTO((void));
  110. __EXTERN int    isatty    __PROTO((int));
  111. __EXTERN int    kill    __PROTO((int, int));
  112. __EXTERN long    lseek    __PROTO((int, long, int));
  113. __EXTERN int    mkdir    __PROTO((const char *, unsigned));
  114.  
  115. /* be careful with this and Gcc, where strings are really constants */
  116. __EXTERN char *    mktemp    __PROTO((char *));
  117.  
  118. #ifndef __SRC__
  119. __EXTERN int    open    __PROTO((const char *, int, ...));
  120. #else
  121. __EXTERN int    open    __PROTO((const char *, int, unsigned));
  122. #endif
  123. __EXTERN int    pipe    __PROTO((int *));
  124. __EXTERN long    pathconf __PROTO((const char *, int));
  125. __EXTERN void    psignal    __PROTO((int, const char *));
  126. __EXTERN int    rmdir    __PROTO((const char *));
  127. __EXTERN int    read    __PROTO((int, void *, unsigned));
  128. __EXTERN long    _read    __PROTO((int, void *, unsigned long));
  129. #ifndef __MINT__
  130. #define lread _read /* backwards compatibility, likely to go away */
  131. #ifndef __SRC__
  132. __EXTERN void setlinebuf __PROTO((void *)); /* avoid pulling in stdio here */
  133. #else
  134. __EXTERN void setlinebuf __PROTO((FILE *)); /* stdio included in src */
  135. #endif
  136. #endif
  137.  
  138.  
  139. __EXTERN int    setgid    __PROTO((int));
  140. __EXTERN int    setuid    __PROTO((int));
  141. __EXTERN int    setegid    __PROTO((int));
  142. __EXTERN int    seteuid    __PROTO((int));
  143. __EXTERN int    setregid __PROTO((int, int));
  144. __EXTERN int    setreuid __PROTO((int, int));
  145.  
  146. __EXTERN int    setpgrp    __PROTO((int, int));
  147. __EXTERN void    sleep    __PROTO((unsigned int));
  148. __EXTERN int    stime    __PROTO((long *));
  149. __EXTERN long    sysconf    __PROTO((int));
  150. __EXTERN long    tell    __PROTO((int));
  151. __EXTERN char *    ttyname    __PROTO((int));
  152. __EXTERN int    umask    __PROTO((int));
  153. __EXTERN int    unlink    __PROTO((const char *));
  154. __EXTERN int    write    __PROTO((int, const void *, unsigned));
  155. __EXTERN long    _write    __PROTO((int, const void *, unsigned long));
  156. __EXTERN int system    __PROTO((const char *cmd));
  157. __EXTERN char *getpass    __PROTO((const char *prompt));
  158.  
  159. __EXTERN void *lsbrk __PROTO((long)); /* these are too important not to list */
  160. __EXTERN void *sbrk __PROTO((__SIZE_TYPEDEF__));
  161. __EXTERN void *_sbrk __PROTO((long));
  162.  
  163. #ifndef __MINT__
  164. #define lwrite _write    /* backwards compatibility, likely go away */
  165. #endif
  166.  
  167. #ifndef _POSIX_SOURCE
  168. __EXTERN int    vfork    __PROTO((void));
  169. __EXTERN void    srandom    __PROTO((unsigned int seed));
  170. __EXTERN char *    initstate __PROTO(( unsigned int seed, char *arg_state, int n ));
  171. __EXTERN char *    setstate __PROTO((char *arg_state));
  172. __EXTERN long     random    __PROTO((void));
  173. __EXTERN void    usleep    __PROTO((unsigned long));
  174. #endif
  175.  
  176. #if 0
  177. /* see pwd.h */
  178. __EXTERN int setpwent __PROTO((void));
  179. __EXTERN void setpwfile __PROTO((char *));
  180. #endif
  181.  
  182. #ifdef __cplusplus
  183. }
  184. #endif
  185.  
  186. #endif /* _UNISTD_H */
  187.