1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 18:07:34 +00:00

Some improvements to signals.

- Add sigprocmask() and sigpending().
- Forked children inherit signal dispositions and masks.
- Exec clears signal dispositions and masks.
This commit is contained in:
Andreas Kling 2018-11-10 23:29:07 +01:00
parent c97a5862ce
commit 6a0a2c9ab4
7 changed files with 60 additions and 4 deletions

View file

@ -159,6 +159,8 @@ static DWORD handle(RegisterDump& regs, DWORD function, DWORD arg1, DWORD arg2,
current->sys$sigreturn();
ASSERT_NOT_REACHED();
return 0;
case Syscall::SC_sigprocmask:
return current->sys$sigprocmask((int)arg1, (const Unix::sigset_t*)arg2, (Unix::sigset_t*)arg3);
default:
kprintf("<%u> int0x80: Unknown function %x requested {%x, %x, %x}\n", current->pid(), function, arg1, arg2, arg3);
break;