2 * Acess2 System Interface Header
8 #include "../sys/types.h"
12 # define NULL ((void*)0)
15 #define OPENFLAG_EXEC 0x01
16 #define OPENFLAG_READ 0x02
17 #define OPENFLAG_WRITE 0x04
18 #define OPENFLAG_NOLINK 0x40
19 #define OPENFLAG_CREATE 0x80
25 #define GETMSG_IGNORE ((void*)-1)
26 #define FILEFLAG_DIRECTORY 0x10
27 #define FILEFLAG_SYMLINK 0x20
35 extern void _SysDebug(const char *format, ...);
37 extern void _exit(int status) __attribute__((noreturn));
38 extern void sleep(void);
39 extern void yield(void);
40 extern int kill(int pid, int sig);
41 extern void wait(int miliseconds);
42 extern int waittid(int id, int *status);
43 extern int clone(int flags, void *stack);
44 extern int execve(char *path, char **argv, char **envp);
45 extern int gettid(void);
46 extern int getpid(void);
47 extern int _SysSetFaultHandler(int (*Handler)(int));
48 extern void SysSetName(const char *Name);
49 //extern int SysGetName(const char *Name);
51 // --- Permissions ---
52 extern int getuid(void);
53 extern int getgid(void);
54 extern void setuid(int id);
55 extern void setgid(int id);
58 extern int chdir(const char *dir);
59 extern int open(const char *path, int flags);
60 extern int reopen(int fd, const char *path, int flags);
61 extern int close(int fd);
62 extern uint read(int fd, void *buffer, uint length);
63 extern uint write(int fd, const void *buffer, uint length);
64 extern int seek(int fd, int64_t offset, int whence);
65 extern uint64_t tell(int fd);
66 extern int ioctl(int fd, int id, void *data);
67 extern int finfo(int fd, t_sysFInfo *info, int maxacls);
68 extern int readdir(int fd, char *dest);
69 extern int _SysOpenChild(int fd, char *name, int flags);
70 extern int _SysGetACL(int fd, t_sysACL *dest);
71 extern int _SysMount(const char *Device, const char *Directory, const char *Type, const char *Options);
72 extern int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *errfds, time_t *timeout);
75 extern int SysSendMessage(pid_t dest, uint length, const void *Data);
76 extern int SysGetMessage(pid_t *src, void *Data);
79 uint64_t _SysGetPhys(uint vaddr);
80 uint64_t _SysAllocate(uint vaddr);