From fd2d502e411c45828ebdf1008c5060db8749ef31 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Tue, 26 Sep 2017 02:42:06 -0400 Subject: std.os.ChildProcess: ability to set both uid and gid --- std/os/linux.zig | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'std/os/linux.zig') diff --git a/std/os/linux.zig b/std/os/linux.zig index 16a368ffbe..dea89be1fd 100644 --- a/std/os/linux.zig +++ b/std/os/linux.zig @@ -484,6 +484,18 @@ pub fn setuid(uid: u32) -> usize { arch.syscall1(arch.SYS_setuid, uid) } +pub fn setgid(gid: u32) -> usize { + arch.syscall1(arch.SYS_setgid, gid) +} + +pub fn setreuid(ruid: u32, euid: u32) -> usize { + arch.syscall2(arch.SYS_setreuid, ruid, euid) +} + +pub fn setregid(rgid: u32, egid: u32) -> usize { + arch.syscall2(arch.SYS_setregid, rgid, egid) +} + pub fn sigprocmask(flags: u32, noalias set: &const sigset_t, noalias oldset: ?&sigset_t) -> usize { arch.syscall4(arch.SYS_rt_sigprocmask, flags, @ptrToInt(set), @ptrToInt(oldset), NSIG/8) } -- cgit v1.2.3