OrionLibC
Barry Importing existing Orion LibC 03048a9 (2 years, 2 months ago)diff --git a/unistd/getuid.c b/unistd/getuid.c new file mode 100644 index 0000000..3e7174d --- /dev/null +++ b/unistd/getuid.c @@ -0,0 +1,43 @@ +#include <stddef.h> +#include <sys/syscall.h> +#include <sys/types.h> + +/* Get the current process' user id */ +uid_t +getuid(void) +{ + int ret; + asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_GETUID), + "c" (0), "S" (NULL)); + return ret; +} + +/* Get the current process' effective user id */ +uid_t +geteuid(void) +{ + int ret; + asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_GETEUID), + "c" (0), "S" (NULL)); + return ret; +} + +/* Get the current process' group id */ +gid_t +getgid(void) +{ + int ret; + asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_GETGID), + "c" (0), "S" (NULL)); + return ret; +} + +/* Get the current process' effective group id */ +gid_t +getegid(void) +{ + int ret; + asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_GETEGID), + "c" (0), "S" (NULL)); + return ret; +}