diff options
author | Nicholas Noll <nbnoll@eml.cc> | 2021-11-17 17:38:58 -0800 |
---|---|---|
committer | Nicholas Noll <nbnoll@eml.cc> | 2021-11-17 17:38:58 -0800 |
commit | 7eb20457ff3d80cc81d54204ffd2c9edaf991905 (patch) | |
tree | 8207073b475156293155accf6cc7804ff1a0f3eb /include/sys.h | |
parent | 8d60b38fbe778de30c3a1751b35d8e366882cd01 (diff) |
automated platform specific code parsing
Diffstat (limited to 'include/sys.h')
-rw-r--r-- | include/sys.h | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/include/sys.h b/include/sys.h index 773ff3a..15fba2a 100644 --- a/include/sys.h +++ b/include/sys.h @@ -1,12 +1,33 @@ #pragma once -#include <sys/constants.h> +#include <arch/constants.h> +#include <arch/errno.h> -#define sys·Oread 0x0u -#define sys·Owrite 0x1u -#define sys·Ordwr 0x2u +// ----------------------------------------------------------------------- +// global constants -/* system calls */ +/* open */ +#define sys·ORead 0x0u +#define sys·OWrite 0x1u +#define sys·ORdwr 0x2u + +/* seek */ +#define sys·SeekSet 0u +#define sys·SeekCur 1u +#define sys·SeekEnd 2u + +// ----------------------------------------------------------------------- +// functions + +/* + * system calls with errno-free interface + */ int sys·call(int num, ...); -int sys·open(char *path, int flag, int mode, int *ret); -int sys·close(char *path, int flag, int mode, int *ret); + +/* file operations */ +int sys·open(char *path, int flag, int mode, int *fd); +int sys·close(int fd); +int sys·write(int fd, intptr len, void *buf, intptr *nw); +int sys·read(int fd, intptr len, void *buf, intptr *nr); +int sys·seek(int fd, intptr offset, int from, intptr *pos); +int sys·dup(int from, int to); |