From e57f9bf6ca7fa27b6d44029658d565ae093606b8 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Wed, 9 Jul 2025 19:59:37 -0400 Subject: kernel: ucred: Add SYS_getuid Signed-off-by: Ian Moffett --- sys/kern/kern_cred.c | 19 +++++++++++++++++++ sys/kern/kern_syscall.c | 1 + 2 files changed, 20 insertions(+) (limited to 'sys/kern') diff --git a/sys/kern/kern_cred.c b/sys/kern/kern_cred.c index e1202fc..017b22a 100644 --- a/sys/kern/kern_cred.c +++ b/sys/kern/kern_cred.c @@ -56,6 +56,19 @@ setuid(uid_t new) return 0; } +uid_t +getuid(void) +{ + struct proc *td; + + td = this_td(); + if (td == NULL) { + return -1; + } + + return td->cred.ruid; +} + /* * setuid() syscall * @@ -66,3 +79,9 @@ sys_setuid(struct syscall_args *scargs) { return setuid(scargs->arg0); } + +scret_t +sys_getuid(struct syscall_args *scargs) +{ + return getuid(); +} diff --git a/sys/kern/kern_syscall.c b/sys/kern/kern_syscall.c index 276c7c7..a28d2dd 100644 --- a/sys/kern/kern_syscall.c +++ b/sys/kern/kern_syscall.c @@ -58,6 +58,7 @@ scret_t(*g_sctab[])(struct syscall_args *) = { sys_getpid, /* SYS_getpid */ sys_getppid, /* SYS_getppid */ sys_setuid, /* SYS_setuid */ + sys_getuid, /* SYS_getuid */ }; const size_t MAX_SYSCALLS = NELEM(g_sctab); -- cgit v1.2.3