diff options
author | Nicholas Noll <nbnoll@eml.cc> | 2021-11-18 17:49:04 -0800 |
---|---|---|
committer | Nicholas Noll <nbnoll@eml.cc> | 2021-11-18 17:49:04 -0800 |
commit | 835dea0eb6333a9ef452881ea073bfe59d14096a (patch) | |
tree | 525c3b4fe8b281813d7234fcc8871c63c627cc19 /sys/src | |
parent | 5bcc08d92ae9345d6863f555a3dd9ec960e0860f (diff) |
feat: continued filling out system layer
Diffstat (limited to 'sys/src')
-rw-r--r-- | sys/src/getgid.c | 8 | ||||
-rw-r--r-- | sys/src/getpgid.c | 8 | ||||
-rw-r--r-- | sys/src/getpid.c | 8 | ||||
-rw-r--r-- | sys/src/getuid.c | 8 | ||||
-rw-r--r-- | sys/src/ioctl.c | 17 | ||||
-rw-r--r-- | sys/src/setpgid.c | 8 | ||||
-rw-r--r-- | sys/src/wait.c | 7 | ||||
-rw-r--r-- | sys/src/waitfor.c | 8 |
8 files changed, 72 insertions, 0 deletions
diff --git a/sys/src/getgid.c b/sys/src/getgid.c new file mode 100644 index 0000000..e9c6583 --- /dev/null +++ b/sys/src/getgid.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·getgid(void) +{ + long ret = syscall(·GetGid); + return error(ret); +} diff --git a/sys/src/getpgid.c b/sys/src/getpgid.c new file mode 100644 index 0000000..7077c8b --- /dev/null +++ b/sys/src/getpgid.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·getpgid(int pid) +{ + long ret = syscall(·GetPGid, pid); + return error(ret); +} diff --git a/sys/src/getpid.c b/sys/src/getpid.c new file mode 100644 index 0000000..527bdb2 --- /dev/null +++ b/sys/src/getpid.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·getpid(void) +{ + long ret = syscall(·GetPid); + return error(ret); +} diff --git a/sys/src/getuid.c b/sys/src/getuid.c new file mode 100644 index 0000000..aebf32b --- /dev/null +++ b/sys/src/getuid.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·getuid(void) +{ + long ret = syscall(·GetUid); + return error(ret); +} diff --git a/sys/src/ioctl.c b/sys/src/ioctl.c new file mode 100644 index 0000000..30c7318 --- /dev/null +++ b/sys/src/ioctl.c @@ -0,0 +1,17 @@ +#include "internal.h" +#include <asm/ioctl.h> + +int +sys·ioctl(int fd, int request, ...) +{ + long ret; + void *arg; + va_list ap; + + va_start(ap, request); + arg = va_arg(ap, void*); + va_end(ap); + + ret = syscall(·IoCtl, fd, request, arg); + return error(ret); +} diff --git a/sys/src/setpgid.c b/sys/src/setpgid.c new file mode 100644 index 0000000..b77d696 --- /dev/null +++ b/sys/src/setpgid.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·setpgid(int pid, int pgid) +{ + long ret = syscall(·SetPGid, pid, pgid); + return error(ret); +} diff --git a/sys/src/wait.c b/sys/src/wait.c new file mode 100644 index 0000000..6d97db2 --- /dev/null +++ b/sys/src/wait.c @@ -0,0 +1,7 @@ +#include "internal.h" + +int +sys·wait(int *status) +{ + return sys·waitfor(-1, status, 0, nil); +} diff --git a/sys/src/waitfor.c b/sys/src/waitfor.c new file mode 100644 index 0000000..0228427 --- /dev/null +++ b/sys/src/waitfor.c @@ -0,0 +1,8 @@ +#include "internal.h" + +int +sys·waitfor(int pid, int *status, int option, sys·UsageInfo *resource) +{ + long ret = syscall(·Wait4, pid, status, option, resource); + return error(ret); +} |