1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 13:38:11 +00:00

Kernel+LibC: Support passing O_CLOEXEC to pipe()

In the userspace, this mimics the Linux pipe2() syscall;
in the kernel, the Process::sys$pipe() now always accepts
a flags argument, the no-argument pipe() syscall is now a
userspace wrapper over pipe2().
This commit is contained in:
Sergey Bugaev 2019-08-05 15:29:05 +03:00 committed by Andreas Kling
parent 55d7810fab
commit 9c3b1ca0c6
5 changed files with 17 additions and 6 deletions

View file

@ -189,7 +189,7 @@ static u32 handle(RegisterDump& regs, u32 function, u32 arg1, u32 arg2, u32 arg3
case Syscall::SC_sigprocmask:
return current->process().sys$sigprocmask((int)arg1, (const sigset_t*)arg2, (sigset_t*)arg3);
case Syscall::SC_pipe:
return current->process().sys$pipe((int*)arg1);
return current->process().sys$pipe((int*)arg1, (int) arg2);
case Syscall::SC_killpg:
return current->process().sys$killpg((int)arg1, (int)arg2);
case Syscall::SC_setuid: