Removed on kjk's request
[reactos.git] / posix / include / unistd.h
diff --git a/posix/include/unistd.h b/posix/include/unistd.h
deleted file mode 100644 (file)
index 6b8b786..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-/* $Id: unistd.h,v 1.5 2002/10/29 04:45:25 rex Exp $
- */
-/*
- * unistd.h
- *
- * standard symbolic constants and types. Conforming to the Single UNIX(r)
- * Specification Version 2, System Interface & Headers Issue 5
- *
- * This file is part of the ReactOS Operating System.
- *
- * Contributors:
- *  Created by KJK::Hyperion <noog@libero.it>
- *
- *  THIS SOFTWARE IS NOT COPYRIGHTED
- *
- *  This source code is offered for use in the public domain. You may
- *  use, modify or distribute it freely.
- *
- *  This code is distributed in the hope that it will be useful but
- *  WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- *  DISCLAMED. This includes but is not limited to warranties of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-#ifndef __UNISTD_H_INCLUDED__
-#define __UNISTD_H_INCLUDED__
-
-/* INCLUDES */
-#include <sys/types.h>
-#include <stdio.h>
-#include <inttypes.h>
-
-/* OBJECTS */
-extern char   *optarg;
-extern int    optind, opterr, optopt;
-
-/* TYPES */
-
-/* CONSTANTS */
-/* FIXME: set these constants appropriately */
-/* Integer value indicating version of the ISO POSIX-1 standard (C
-   language binding). */
-#define _POSIX_VERSION    (0)
-
-/* Integer value indicating version of the ISO POSIX-2 standard
-   (Commands). */
-#define _POSIX2_VERSION   (0)
-
-/* Integer value indicating version of the ISO POSIX-2 standard (C
-   language binding). */
-#define _POSIX2_C_VERSION (0)
-
-/* Integer value indicating version of the X/Open Portability Guide to
-   which the implementation conforms. */
-#define _XOPEN_VERSION     (500)
-
-/* The version of the XCU specification to which the implementation
-   conforms */
-/* TODO: set to an appropriate value when commands and utilities will
-   be available */
-#define _XOPEN_XCU_VERSION (-1)
-
-#if _XOPEN_XCU_VERSION != -1
-#error TODO: define these constants
-#define _POSIX2_C_BIND
-#define _POSIX2_C_VERSION
-#define _POSIX2_CHAR_TERM
-#define _POSIX2_LOCALEDEF
-#define _POSIX2_UPE
-#define _POSIX2_VERSION
-#endif
-
-#if 0
-/* TODO: check for conformance to the following specs */
-#define _XOPEN_XPG2
-#define _XOPEN_XPG3
-#define _XOPEN_XPG4
-#define _XOPEN_UNIX
-#endif
-
-#if 0
-/* TODO: don't forget these features */
-/* The use of chown() is restricted to a process with appropriate
-   privileges, and to changing the group ID of a file only to the
-   effective group ID of the process or to one of its supplementary
-   group IDs. */
-#define _POSIX_CHOWN_RESTRICTED
-
-/* Terminal special characters defined in <termios.h> can be disabled
-   using this character value. */
-#define _POSIX_VDISABLE
-
-/* Each process has a saved set-user-ID and a saved set-group-ID. */
-#define _POSIX_SAVED_IDS
-
-/* Implementation supports job control. */
-#define _POSIX_JOB_CONTROL
-
-#endif
-
-/* Pathname components longer than {NAME_MAX} generate an error. */
-#define _POSIX_NO_TRUNC (1)
-
-/* The implementation supports the threads option. */
-#define _POSIX_THREADS               (1)
-
-/* FIXME: none of the following is strictly true yet */
-/* The implementation supports the thread stack address attribute
-   option. */ /* FIXME: not currently implemented. Should be trivial */
-#define _POSIX_THREAD_ATTR_STACKADDR (1)
-
-/* The implementation supports the thread stack size attribute
-   option. */ /* FIXME: not currently implemented. Should be trivial */
-#define _POSIX_THREAD_ATTR_STACKSIZE (1)
-
-/* The implementation supports the process-shared synchronisation
-   option. */ /* FIXME? not sure */
-#define _POSIX_THREAD_PROCESS_SHARED (1)
-
-/* The implementation supports the thread-safe functions option. */
-/* FIXME: fix errno (currently not thread-safe) */
-#define _POSIX_THREAD_SAFE_FUNCTIONS (1)
-
-/*
-   Constants for Options and Feature Groups
- */
-
-/* Implementation supports the C Language Binding option. This will
-   always have a value other than -1. */
-#define _POSIX2_C_BIND (1)
-
-/* Implementation supports the C Language Development Utilities
-   option. */ /* FIXME: please change this when C compiler and
-   utilities are ported */
-#define _POSIX2_C_DEV (-1)
-
-/* Implementation supports at least one terminal type. */ /* FIXME:
-   please change this when terminal emulation is complete */
-#define _POSIX2_CHAR_TERM (-1)
-
-/* Implementation supports the FORTRAN Development Utilities option. */
-/* FIXME: please change this when Fortran compiler and utilities are
-   ported */
-#define _POSIX2_FORT_DEV (-1)
-
-/* Implementation supports the FORTRAN Run-time Utilities option. */
-/* FIXME: please change this when Fortran runtimes are ported */
-#define _POSIX2_FORT_RUN (-1)
-
-/* Implementation supports the creation of locales by the localedef
-   utility. */ /* FIXME: please change this when locales are ready */
-#define _POSIX2_LOCALEDEF (-1)
-
-/* Implementation supports the Software Development Utilities option. */
-/* FIXME? */
-#define _POSIX2_SW_DEV (-1)
-
-/* The implementation supports the User Portability Utilities option. */
-/* FIXME? */
-#define _POSIX2_UPE (-1)
-
-/* The implementation supports the X/Open Encryption Feature Group. */
-/* FIXME: please change this when encryption is ready */
-#define _XOPEN_CRYPT (-1)
-
-/* The implementation supports the Issue 4, Version 2 Enhanced
-   Internationalisation Feature Group. This is always set to a value
-   other than -1. */ /* TODO: high priority. Support for this feature is
-   needed for a conforming implementation */
-#define _XOPEN_ENH_I18N (-1)
-
-/* The implementation supports the Legacy Feature Group. */
-#define _XOPEN_LEGACY (1)
-
-/* The implementation supports the X/Open Realtime Feature Group. */
-/* FIXME? unlikely to be ever supported */
-#define _XOPEN_REALTIME (-1)
-
-/* The implementation supports the X/Open Realtime Threads Feature
-   Group. */ /* FIXME? really unlikely to be ever supported */
-#define _XOPEN_REALTIME_THREADS (-1)
-
-/* The implementation supports the Issue 4, Version 2 Shared Memory
-   Feature Group. This is always set to a value other than -1. */ /* TODO:
-   high priority. Support for this feature is needed for a conforming
-   implementation */
-#define _XOPEN_SHM (-1)
-
-/* Implementation provides a C-language compilation environment with
-   32-bit int, long, pointer and off_t types. */
-#define _XBS5_ILP32_OFF32 (1)
-
-/* Implementation provides a C-language compilation environment with 
-   32-bit int, long and pointer types and an off_t type using at
-   least 64 bits. */ /* FIXME? check the off_t type */
-#define _XBS5_ILP32_OFFBIG (1)
-
-/* Implementation provides a C-language compilation environment with
-   32-bit int and 64-bit long, pointer and off_t types. */ /* FIXME: on
-   some architectures this may be true */
-#define _XBS5_LP64_OFF64 (-1)
-
-/* Implementation provides a C-language compilation environment with
-   an int type using at least 32 bits and long, pointer and off_t
-   types using at least 64 bits. */ /* FIXME: on some architectures
-   this may be true */
-#define _XBS5_LPBIG_OFFBIG (-1)
-
-/* Implementation supports the File Synchronisation option. */
-/* TODO: high priority. Implement this */
-#define _POSIX_FSYNC
-
-/* Implementation supports the Memory Mapped Files option. */
-/* TODO: high priority. Implement this */
-#define _POSIX_MAPPED_FILES
-
-/* Implementation supports the Memory Protection option. */
-/* TODO: high priority. Implement this */
-#define _POSIX_MEMORY_PROTECTION
-
-#if 0
-/* Implementation supports the Prioritized Input and Output option. */
-/* FIXME? unlikely to be ever supported */
-#define _POSIX_PRIORITIZED_IO
-#endif
-
-/* FIXME: these should be implemented */
-/* Asynchronous input or output operations may be performed for the
-   associated file. */
-#define _POSIX_ASYNC_IO (-1)
-
-/* Prioritized input or output operations may be performed for the
-   associated file. */
-#define _POSIX_PRIO_IO (-1)
-
-/* Synchronised input or output operations may be performed for the
-   associated file. */
-#define _POSIX_SYNC_IO (-1)
-
-/*
-   null pointer
- */
-#ifndef NULL
-/* NULL seems to be defined pretty much everywhere - we prevent
-   redefinition */
-#define NULL ((void *)(0))
-#endif
-
-/*
-   constants for the access() function
- */
-
-#define R_OK (0x00000004) /* Test for read permission. */
-#define W_OK (0x00000002) /*  Test for write permission. */
-#define X_OK (0x00000001) /* Test for execute (search) permission. */
-#define F_OK (0) /* Test for existence of file. */
-
-/*
-  constants for the confstr() function
- */
-#define _CS_PATH                        (1)
-#define _CS_XBS5_ILP32_OFF32_CFLAGS     (2)
-#define _CS_XBS5_ILP32_OFF32_LDFLAGS    (3)
-#define _CS_XBS5_ILP32_OFF32_LIBS       (4)
-#define _CS_XBS5_ILP32_OFF32_LINTFLAGS  (5)
-#define _CS_XBS5_ILP32_OFFBIG_CFLAGS    (6)
-#define _CS_XBS5_ILP32_OFFBIG_LDFLAGS   (7)
-#define _CS_XBS5_ILP32_OFFBIG_LIBS      (8)
-#define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS (9)
-#define _CS_XBS5_LP64_OFF64_CFLAGS      (10)
-#define _CS_XBS5_LP64_OFF64_LDFLAGS     (11)
-#define _CS_XBS5_LP64_OFF64_LIBS        (12)
-#define _CS_XBS5_LP64_OFF64_LINTFLAGS   (13)
-#define _CS_XBS5_LPBIG_OFFBIG_CFLAGS    (14)
-#define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS   (15)
-#define _CS_XBS5_LPBIG_OFFBIG_LIBS      (16)
-#define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS (17)
-
-/*
- constants for the lseek() and fcntl() functions
- */
-
-#define SEEK_SET (0) /* Set file offset to offset. */
-#define SEEK_CUR (1) /* Set file offset to current plus offset. */
-#define SEEK_END (2) /* Set file offset to EOF plus offset. */
-
-/*
-  constants for pathconf()
- */
-/* constants 1 to 9 are the same as in Microsoft POSIX */
-#define _PC_LINK_MAX                    (  1)
-#define _PC_MAX_CANON                 (  2)
-#define _PC_MAX_INPUT                  (  3)
-#define _PC_NAME_MAX                    (  4)
-#define _PC_PATH_MAX                    (  5)
-#define _PC_PIPE_BUF                    (  6)
-#define _PC_CHOWN_RESTRICTED    (  7)
-#define _PC_NO_TRUNC                    (  8)
-#define _PC_VDISABLE                    (  9)
-/* from this point, constants are in no particular order */
-#define _PC_ALLOC_SIZE_MIN     ( 10)
-#define _PC_ASYNC_IO           ( 11)
-#define _PC_FILESIZEBITS       ( 12)
-#define _PC_PRIO_IO            ( 13)
-#define _PC_REC_INCR_XFER_SIZE ( 14)
-#define _PC_REC_MAX_XFER_SIZE  ( 15)
-#define _PC_REC_MIN_XFER_SIZE  ( 16)
-#define _PC_REC_XFER_ALIGN     ( 17)
-#define _PC_SYNC_IO            ( 18)
-
-/*
-  constants for sysconf()
- */
-/* constants 1 to 10 are the same as in Microsoft POSIX */
-#define _SC_ARG_MAX                      (  1)
-#define _SC_CHILD_MAX                    (  2)
-#define _SC_CLK_TCK                      (  3)
-#define _SC_NGROUPS_MAX                  (  4)
-#define _SC_OPEN_MAX                     (  5)
-#define _SC_JOB_CONTROL                  (  6)
-#define _SC_SAVED_IDS                    (  7)
-#define _SC_STREAM_MAX                   (  8)
-#define _SC_TZNAME_MAX                   (  9)
-#define _SC_VERSION                      ( 10)
-/* from this point, constants are in no particular order */
-#define _SC_2_C_BIND                     ( 11)
-#define _SC_2_C_DEV                      ( 12)
-#define _SC_2_C_VERSION                  ( 13)
-#define _SC_2_FORT_DEV                   ( 14)
-#define _SC_2_FORT_RUN                   ( 15)
-#define _SC_2_LOCALEDEF                  ( 16)
-#define _SC_2_SW_DEV                     ( 17)
-#define _SC_2_UPE                        ( 18)
-#define _SC_2_VERSION                    ( 19)
-#define _SC_AIO_LISTIO_MAX               ( 20)
-#define _SC_AIO_MAX                      ( 21)
-#define _SC_AIO_PRIO_DELTA_MAX           ( 22)
-#define _SC_ASYNCHRONOUS_IO              ( 23)
-#define _SC_ATEXIT_MAX                   ( 24)
-#define _SC_BC_BASE_MAX                  ( 25)
-#define _SC_BC_DIM_MAX                   ( 26)
-#define _SC_BC_SCALE_MAX                 ( 27)
-#define _SC_BC_STRING_MAX                ( 28)
-#define _SC_COLL_WEIGHTS_MAX             ( 29)
-#define _SC_DELAYTIMER_MAX               ( 30)
-#define _SC_EXPR_NEST_MAX                ( 31)
-#define _SC_FSYNC                        ( 32)
-#define _SC_GETGR_R_SIZE_MAX             ( 33)
-#define _SC_GETPW_R_SIZE_MAX             ( 34)
-#define _SC_IOV_MAX                      ( 35)
-#define _SC_LINE_MAX                     ( 36)
-#define _SC_LOGIN_NAME_MAX               ( 37)
-#define _SC_MAPPED_FILES                 ( 38)
-#define _SC_MEMLOCK                      ( 39)
-#define _SC_MEMLOCK_RANGE                ( 40)
-#define _SC_MEMORY_PROTECTION            ( 41)
-#define _SC_MESSAGE_PASSING              ( 42)
-#define _SC_MQ_OPEN_MAX                  ( 43)
-#define _SC_MQ_PRIO_MAX                  ( 44)
-#define _SC_PAGE_SIZE                    ( 45)
-#define _SC_PASS_MAX                     ( 46) /* LEGACY */
-#define _SC_PRIORITIZED_IO               ( 47)
-#define _SC_PRIORITY_SCHEDULING          ( 48)
-#define _SC_RE_DUP_MAX                   ( 49)
-#define _SC_REALTIME_SIGNALS             ( 50)
-#define _SC_RTSIG_MAX                    ( 51)
-#define _SC_SEMAPHORES                   ( 52)
-#define _SC_SEM_NSEMS_MAX                ( 53)
-#define _SC_SEM_VALUE_MAX                ( 54)
-#define _SC_SHARED_MEMORY_OBJECTS        ( 55)
-#define _SC_SIGQUEUE_MAX                 ( 56)
-#define _SC_SYNCHRONIZED_IO              ( 57)
-#define _SC_THREADS                      ( 58)
-#define _SC_THREAD_ATTR_STACKADDR        ( 59)
-#define _SC_THREAD_ATTR_STACKSIZE        ( 60)
-#define _SC_THREAD_DESTRUCTOR_ITERATIONS ( 61)
-#define _SC_THREAD_KEYS_MAX              ( 62)
-#define _SC_THREAD_PRIORITY_SCHEDULING   ( 63)
-#define _SC_THREAD_PRIO_INHERIT          ( 64)
-#define _SC_THREAD_PRIO_PROTECT          ( 65)
-#define _SC_THREAD_PROCESS_SHARED        ( 66)
-#define _SC_THREAD_SAFE_FUNCTIONS        ( 67)
-#define _SC_THREAD_STACK_MIN             ( 68)
-#define _SC_THREAD_THREADS_MAX           ( 69)
-#define _SC_TIMERS                       ( 70)
-#define _SC_TIMER_MAX                    ( 71)
-#define _SC_TTY_NAME_MAX                 ( 72)
-#define _SC_XOPEN_VERSION                ( 73)
-#define _SC_XOPEN_CRYPT                  ( 74)
-#define _SC_XOPEN_ENH_I18N               ( 75)
-#define _SC_XOPEN_SHM                    ( 76)
-#define _SC_XOPEN_UNIX                   ( 77)
-#define _SC_XOPEN_XCU_VERSION            ( 78)
-#define _SC_XOPEN_LEGACY                 ( 79)
-#define _SC_XOPEN_REALTIME               ( 80)
-#define _SC_XOPEN_REALTIME_THREADS       ( 81)
-#define _SC_XBS5_ILP32_OFF32             ( 82)
-#define _SC_XBS5_ILP32_OFFBIG            ( 83)
-#define _SC_XBS5_LP64_OFF64              ( 84)
-#define _SC_XBS5_LPBIG_OFFBIG            ( 85)
-
-
-#define _SC_PAGESIZE _SC_PAGE_SIZE
-
-/* possible values for the function argument to the lockf() function */
-#define F_LOCK  (1) /* Lock a section for exclusive use. */
-#define F_ULOCK (2) /* Unlock locked sections. */
-#define F_TEST  (3) /* Test section for locks by other processes. */
-#define F_TLOCK (4) /* Test and lock a section for exclusive use. */
-
-#define STDIN_FILENO  (0) /* File number of stdin. */
-#define STDOUT_FILENO (1) /* File number of stdout. */
-#define STDERR_FILENO (2) /* File number of stderr. */
-
-/* PROTOTYPES */
-int          access(const char *, int);
-unsigned int alarm(unsigned int);
-int          brk(void *);
-int          chdir(const char *);
-int          chroot(const char *); /* LEGACY */
-int          chown(const char *, uid_t, gid_t);
-int          close(int);
-size_t       confstr(int, char *, size_t);
-char        *crypt(const char *, const char *);
-char        *ctermid(char *);
-char        *cuserid(char *s); /* LEGACY */
-int          dup(int);
-int          dup2(int, int);
-void         encrypt(char[64], int);
-int          execl(const char *, const char *, ...);
-int          execle(const char *, const char *, ...);
-int          execlp(const char *, const char *, ...);
-int          execv(const char *, char *const []);
-int          execve(const char *, char *const [], char *const []);
-int          execvp(const char *, char *const []);
-void        _exit(int);
-int          fchown(int, uid_t, gid_t);
-int          fchdir(int);
-int          fdatasync(int);
-pid_t        fork(void);
-long int     fpathconf(int, int);
-int          fsync(int);
-int          ftruncate(int, off_t);
-char        *getcwd(char *, size_t);
-int          getdtablesize(void); /* LEGACY */
-gid_t        getegid(void);
-uid_t        geteuid(void);
-gid_t        getgid(void);
-int          getgroups(int, gid_t []);
-long         gethostid(void);
-char        *getlogin(void);
-int          getlogin_r(char *, size_t);
-int          getopt(int, char * const [], const char *);
-int          getpagesize(void); /* LEGACY */
-char        *getpass(const char *); /* LEGACY */
-pid_t        getpgid(pid_t);
-pid_t        getpgrp(void);
-pid_t        getpid(void);
-pid_t        getppid(void);
-pid_t        getsid(pid_t);
-uid_t        getuid(void);
-char        *getwd(char *);
-int          isatty(int);
-int          lchown(const char *, uid_t, gid_t);
-int          link(const char *, const char *);
-int          lockf(int, int, off_t);
-off_t        lseek(int, off_t, int);
-int          nice(int);
-long int     pathconf(const char *, int);
-int          pause(void);
-int          pipe(int [2]);
-ssize_t      pread(int, void *, size_t, off_t);
-int          pthread_atfork(void (*)(void), void (*)(void),
-                 void(*)(void));
-ssize_t      pwrite(int, const void *, size_t, off_t);
-ssize_t      read(int, void *, size_t);
-int          readlink(const char *, char *, size_t);
-int          rmdir(const char *);
-void        *sbrk(intptr_t);
-int          setgid(gid_t);
-int          setpgid(pid_t, pid_t);
-pid_t        setpgrp(void);
-int          setregid(gid_t, gid_t);
-int          setreuid(uid_t, uid_t);
-pid_t        setsid(void);
-int          setuid(uid_t);
-unsigned int sleep(unsigned int);
-void         swab(const void *, void *, ssize_t);
-int          symlink(const char *, const char *);
-void         sync(void);
-long int     sysconf(int);
-pid_t        tcgetpgrp(int);
-int          tcsetpgrp(int, pid_t);
-int          truncate(const char *, off_t);
-char        *ttyname(int);
-int          ttyname_r(int, char *, size_t);
-useconds_t   ualarm(useconds_t, useconds_t);
-int          unlink(const char *);
-int          usleep(useconds_t);
-pid_t        vfork(void);
-ssize_t      write(int, const void *, size_t);
-
-/* MACROS */
-
-#endif /* __UNISTD_H_INCLUDED__ */
-
-/* EOF */
-