ea107a9d822828e900342d271d671bda5aa1c963
[tpg/acess2.git] / Usermode / Libraries / libposix.so_src / include_exp / unistd.h
1 /*
2  * Acess2 POSIX Emulation Layer
3  * - By John Hodge
4  * 
5  * unistd.h
6  * - 
7  */
8 #ifndef _UNISTD_H_
9 #define _UNISTD_H_
10
11 #include <stddef.h>
12
13 //! \brief flags for open(2)
14 #define O_WRONLY        0x01
15 #define O_RDONLY        0x02
16 #define O_RDWR          0x03
17 #define O_APPEND        0x04
18 #define O_CREAT         0x08
19 #define O_DIRECTORY     0x10
20 #define O_ASYNC         0x20
21 #define O_TRUNC         0x40
22 #define O_NOFOLLOW      0x80    // don't follow symlinks
23 #define O_EXCL          0x100
24 #define O_NOCTTY        0       // unsupported
25 #define O_NONBLOCK      0x200
26 #define O_SYNC  0       // not supported
27
28 #define STDIN_FILENO    0
29 #define STDOUT_FILENO   1
30 #define STDERR_FILENO   2
31
32 typedef signed long     ssize_t;
33
34 #include "sys/stat.h"   // mode_t
35
36 extern int      open(const char *path, int flags, ...);
37 extern int      creat(const char *path, mode_t mode);
38 extern int      close(int fd);
39
40 extern ssize_t  write(int fd, const void *buf, size_t count);
41 extern ssize_t  read(int fd, void *buf, size_t count);
42
43 extern int      fork(void);
44 extern int      execv(const char *b, char *v[]);
45
46 extern int      dup2(int oldfd, int newfd);
47
48 #endif
49

UCC git Repository :: git.ucc.asn.au