master
1#include <signal.h>
2#include <errno.h>
3#include "syscall.h"
4
5int sigaltstack(const stack_t *restrict ss, stack_t *restrict old)
6{
7 if (ss) {
8 if (!(ss->ss_flags & SS_DISABLE) && ss->ss_size < MINSIGSTKSZ) {
9 errno = ENOMEM;
10 return -1;
11 }
12 if (ss->ss_flags & SS_ONSTACK) {
13 errno = EINVAL;
14 return -1;
15 }
16 }
17 return syscall(SYS_sigaltstack, ss, old);
18}