MirOS Manual: sigreturn(2)

SIGRETURN(2)               BSD Programmer's Manual                SIGRETURN(2)


     sigreturn - return from signal


     #include <signal.h>

     sigreturn(struct sigcontext *scp);


     sigreturn() allows users to atomically unmask, switch stacks, and return
     from a signal context. The processes signal mask and stack status are re-
     stored from the context. The system call does not return; the users stack
     pointer, frame pointer, argument pointer, and processor status longword
     are restored from the context. Execution resumes at the specified pc.
     This system call is used by the trampoline code and longjmp(3) when re-
     turning from a signal to the previously executing program.

     Note that sigcontext contains machine dependent information.


     This system call is not available in 4.2 BSD hence it should not be used
     if backward compatibility is needed.


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


     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 pro-
                   cess address space.

     [EINVAL]      The process status longword is invalid or would improperly
                   raise the privilege level of the process.


     sigaction(2), setjmp(3)


     The sigreturn() function call appeared in 4.3BSD.

MirOS BSD #10-current            June 4, 1993                                1

Generated on 2017-04-03 16:26:17 by $MirOS: src/scripts/roff2htm,v 1.88 2017/01/29 00:51:06 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002–2017 The MirOS Project, Germany.
This product includes material provided by mirabilos.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.