update changelog
[alioth/cvs.git] / windows-NT / unistd.h
1 /* unistd.h -- Unix standard function prototypes
2
3    Copyright (C) 2004 Free Software Foundation, Inc.
4
5    This program is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 2, or (at your option)
8    any later version.
9
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with this program; if not, write to the Free Software Foundation,
17    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
18
19 /* Written by Conrad T. Pino and Mark D. Baushke */
20
21 #ifndef UNISTD_H
22 #define UNISTD_H
23
24 /* Don't include Microsoft's chdir, getcwd here, done in config.h now */
25 #include <stddef.h>
26
27 /* include Microsoft's close, dup */
28 #include <io.h>
29
30 #include <sys/types.h>
31
32 /* These functions doesn't exist under Windows NT; we provide stubs */
33 char * getpass (const char *prompt);
34 pid_t getpid (void);
35 int readlink (const char *path, char *buf, size_t buf_size);
36 unsigned int sleep (unsigned int seconds);
37 int usleep (useconds_t microseconds);
38
39 /*
40 FIXME:  gethostname prototype for lib/xgethostname.c, no #include <winsock.h>
41                 Remove when GNULib folks provide a permenant fix.
42                 Requested by Mark D. Baushke and committed by Conrad T. Pino
43 */
44 int __declspec(dllimport) __stdcall gethostname (char * name, int namelen);
45
46 #if 0 /* someday maybe these should be added here as well */
47
48 int chdir (const char *pathname);
49 int mkdir (const char *pathname, mode_t mode);
50 int rmdir (const char *pathname);
51 int link (const char *oldpath, const char *newpath);
52 int unlink (const char *pathname);
53 int rename (const char *oldpath, const char *newpath);
54 int stat (const char *file_name, struct stat *buf);
55 int chmod (const char *path, mode_t mode);
56 int chown (const char *path, uid_t owner, gid_t group);
57 int utime (const char *filename, struct utimbuf *buf);
58 DIR *opendir (const char *name);
59 struct dirent *readdir(DIR *dir);
60 int closedir (DIR *dir);
61 void rewinddir (DIR *dir);
62 int access (const char *pathname, int mode);
63 int open (const char *pathname, int flags);
64 int creat (const char *pathname, mode_t mode);
65 int close (int fd);
66 ssize_t read (int fd, void *buf, size_t count);
67 ssize_t write (int fd, const void *buf, size_t count);
68 int fcntl (int fd, int cmd);
69 int fstat (int filedes, struct stat *buf);
70 off_t lseek (int fildes, off_t offset, int whence);
71 int dup (int oldfd);
72 int dup2 (int oldfd, int newfd);
73 int pipe (int filedes[2]);
74 mode_t umask (mode_t mask);
75 FILE *fdopen (int fildes, const char *mode);
76 int fileno (FILE *stream);
77 pid_t fork (void);
78 int execl (const char *path, const char *arg, ...);
79 int execle (const char *path, const char *arg, ...);
80 int execlp (const char *file, const char *arg, ...);
81 int execv (const char *path, char *const argv[]);
82 int execve (const char *path, char *const argv[],
83             char *const envp[]);
84 int execvp (const char *file, char *const argv[]);
85 pid_t waitpid (pid_t pid, int *status, int options);
86 pid_t waitpid (pid_t pid, int *status, int options);
87 void _exit (int status);
88 int kill (pid_t pid, int sig);
89 int pause (void);
90 unsigned int alarm (unsigned int seconds);
91 int setuid (uid_t uid);
92 int setgid (gid_t gid);
93
94 #endif /* someday */
95
96 #endif /* UNISTD_H */