[OpenBSD]

Manual Page Search Parameters

SIGRETURN(2) System Calls Manual SIGRETURN(2)

NAME

sigreturnreturn from signal

SYNOPSIS

int
sigreturn(struct sigcontext *scp);

DESCRIPTION

The sigreturn() syscall is used by the signal handling facility to atomically switch stacks, restore registers and the thread's signal mask, and return from a signal context to resume the processing that was interrupted by the signal.
Note that sigcontext contains machine dependent information.
Direct use of sigreturn is no longer supported and it is not provided as a function. As used in the signal trampoline provided by the system, if sigreturn fails and returns then the process is terminated.

RETURN VALUES

If successful, the system call does not return. Otherwise, a value of -1 is returned and errno is set to indicate the error.

ERRORS

sigreturn() will fail and the process context will remain unchanged if one of the following occurs.
 
 
[EFAULT]
scp points to memory that is not a valid part of the process address space.
 
 
[EINVAL]
The sigcontext provided is invalid or would improperly raise the privilege level of the process.

SEE ALSO

sigaction(2), setjmp(3)

HISTORY

The sigreturn() function appeared in 4.3BSD. The function was removed from libc in OpenBSD 6.0.
May 9, 2016 OpenBSD-current