1/* 2 * unistd.h -- 3 * 4 * Macros, CONSTants and prototypes for Posix conformance. 5 * 6 * Copyright 1989 Regents of the University of California 7 * Permission to use, copy, modify, and distribute this 8 * software and its documentation for any purpose and without 9 * fee is hereby granted, provided that the above copyright 10 * notice appear in all copies. The University of California 11 * makes no representations about the suitability of this 12 * software for any purpose. It is provided "as is" without 13 * express or implied warranty. 14 * 15 * RCS: @(#) $Id: unistd.h,v 1.2 1998/09/14 18:39:45 stanton Exp $ 16 */ 17 18#ifndef _UNISTD 19#define _UNISTD 20 21#include <sys/types.h> 22#ifndef _TCL 23# include "tcl.h" 24#endif 25 26#ifndef NULL 27#define NULL 0 28#endif 29 30/* 31 * Strict POSIX stuff goes here. Extensions go down below, in the 32 * ifndef _POSIX_SOURCE section. 33 */ 34 35extern void _exit _ANSI_ARGS_((int status)); 36extern int access _ANSI_ARGS_((CONST char *path, int mode)); 37extern int chdir _ANSI_ARGS_((CONST char *path)); 38extern int chown _ANSI_ARGS_((CONST char *path, uid_t owner, gid_t group)); 39extern int close _ANSI_ARGS_((int fd)); 40extern int dup _ANSI_ARGS_((int oldfd)); 41extern int dup2 _ANSI_ARGS_((int oldfd, int newfd)); 42extern int execl _ANSI_ARGS_((CONST char *path, ...)); 43extern int execle _ANSI_ARGS_((CONST char *path, ...)); 44extern int execlp _ANSI_ARGS_((CONST char *file, ...)); 45extern int execv _ANSI_ARGS_((CONST char *path, char **argv)); 46extern int execve _ANSI_ARGS_((CONST char *path, char **argv, char **envp)); 47extern int execvp _ANSI_ARGS_((CONST char *file, char **argv)); 48extern pid_t fork _ANSI_ARGS_((void)); 49extern char *getcwd _ANSI_ARGS_((char *buf, size_t size)); 50extern gid_t getegid _ANSI_ARGS_((void)); 51extern uid_t geteuid _ANSI_ARGS_((void)); 52extern gid_t getgid _ANSI_ARGS_((void)); 53extern int getgroups _ANSI_ARGS_((int bufSize, int *buffer)); 54extern pid_t getpid _ANSI_ARGS_((void)); 55extern uid_t getuid _ANSI_ARGS_((void)); 56extern int isatty _ANSI_ARGS_((int fd)); 57extern long lseek _ANSI_ARGS_((int fd, long offset, int whence)); 58extern int pipe _ANSI_ARGS_((int *fildes)); 59extern int read _ANSI_ARGS_((int fd, char *buf, size_t size)); 60extern int setgid _ANSI_ARGS_((gid_t group)); 61extern int setuid _ANSI_ARGS_((uid_t user)); 62extern unsigned sleep _ANSI_ARGS_ ((unsigned seconds)); 63extern char *ttyname _ANSI_ARGS_((int fd)); 64extern int unlink _ANSI_ARGS_((CONST char *path)); 65extern int write _ANSI_ARGS_((int fd, CONST char *buf, size_t size)); 66 67#ifndef _POSIX_SOURCE 68extern char *crypt _ANSI_ARGS_((CONST char *, CONST char *)); 69extern int fchown _ANSI_ARGS_((int fd, uid_t owner, gid_t group)); 70extern int flock _ANSI_ARGS_((int fd, int operation)); 71extern int ftruncate _ANSI_ARGS_((int fd, unsigned long length)); 72extern int ioctl _ANSI_ARGS_((int fd, int request, ...)); 73extern int readlink _ANSI_ARGS_((CONST char *path, char *buf, int bufsize)); 74extern int setegid _ANSI_ARGS_((gid_t group)); 75extern int seteuid _ANSI_ARGS_((uid_t user)); 76extern int setreuid _ANSI_ARGS_((int ruid, int euid)); 77extern int symlink _ANSI_ARGS_((CONST char *, CONST char *)); 78extern int ttyslot _ANSI_ARGS_((void)); 79extern int truncate _ANSI_ARGS_((CONST char *path, unsigned long length)); 80extern int vfork _ANSI_ARGS_((void)); 81#endif /* _POSIX_SOURCE */ 82 83#endif /* _UNISTD */ 84 85