Annotation of 43BSDReno/lib/libc/sys/sigstack.2, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1983 The Regents of the University of California.
                      2: .\" All rights reserved.
                      3: .\"
                      4: .\" Redistribution and use in source and binary forms are permitted provided
                      5: .\" that: (1) source distributions retain this entire copyright notice and
                      6: .\" comment, and (2) distributions including binaries display the following
                      7: .\" acknowledgement:  ``This product includes software developed by the
                      8: .\" University of California, Berkeley and its contributors'' in the
                      9: .\" documentation or other materials provided with the distribution and in
                     10: .\" all advertising materials mentioning features or use of this software.
                     11: .\" Neither the name of the University nor the names of its contributors may
                     12: .\" be used to endorse or promote products derived from this software without
                     13: .\" specific prior written permission.
                     14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
                     15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
                     16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     17: .\"
                     18: .\"    @(#)sigstack.2  6.4 (Berkeley) 6/23/90
                     19: .\"
                     20: .TH SIGSTACK 2 "June 23, 1990"
                     21: .UC 5
                     22: .SH NAME
                     23: sigstack \- set and/or get signal stack context
                     24: .SH SYNOPSIS
                     25: .nf
                     26: .B #include <signal.h>
                     27: .PP
                     28: .B struct sigstack {
                     29: .B     caddr_t ss_sp;
                     30: .B     int     ss_onstack;
                     31: .B };
                     32: .PP
                     33: .B sigstack(ss, oss);
                     34: .B struct sigstack *ss, *oss;
                     35: .SH DESCRIPTION
                     36: .I Sigstack
                     37: allows users to define an alternate stack on which signals
                     38: are to be processed.  If
                     39: .I ss
                     40: is non-zero,
                     41: it specifies a
                     42: .I "signal stack"
                     43: on which to deliver signals
                     44: and tells the system if the process is currently executing
                     45: on that stack.  When a signal's action indicates its handler
                     46: should execute on the signal stack (specified with a
                     47: .IR sigvec (2)
                     48: call), the system checks to see
                     49: if the process is currently executing on that stack.  If the
                     50: process is not currently executing on the signal stack,
                     51: the system arranges a switch to the signal stack for the
                     52: duration of the signal handler's execution. 
                     53: If
                     54: .I oss
                     55: is non-zero, the current signal stack state is returned.
                     56: .SH NOTES
                     57: Signal stacks are not ``grown'' automatically, as is
                     58: done for the normal stack.  If the stack overflows
                     59: unpredictable results may occur.
                     60: .SH "RETURN VALUE
                     61: Upon successful completion, a value of 0 is returned.
                     62: Otherwise, a value of \-1 is returned and 
                     63: .I errno
                     64: is set to indicate the error.
                     65: .SH ERRORS
                     66: .I Sigstack
                     67: will fail and the signal stack context will remain unchanged
                     68: if one of the following occurs.
                     69: .TP 15
                     70: [EFAULT]
                     71: Either
                     72: .I ss
                     73: or
                     74: .I oss
                     75: points to memory that is not a valid part of the process
                     76: address space.
                     77: .SH "SEE ALSO"
                     78: sigvec(2), setjmp(3)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.