*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> sigaltstack (2)              



NAME    [Toc]    [Back]

       sigaltstack - set or get signal alternate stack context

SYNOPSIS    [Toc]    [Back]

       #include <signal.h>

       int sigaltstack(
               const stack_t *ss,
               stack_t *oss );

       The  following  function  declaration  does not conform to
       current standards and is supported only for backward  compatibility:
 #include <signal.h>

       int sigaltstack(
               stack_t *ss,
               stack_t *oss );

STANDARDS    [Toc]    [Back]

       Interfaces  documented  on  this reference page conform to
       industry standards as follows:

       sigaltstack():  XPG4-UNIX

       Refer to the standards(5) reference page for more information
 about industry standards and associated tags.

PARAMETERS    [Toc]    [Back]

       If  valid,  specifies  a pointer to a structure that indicates
 what will be in effect upon return from the call  to
       the  sigaltstack  function.   If  not  NULL, specifies the
       pointer to a structure that contains the alternate  signal
       stack  that was in effect prior to the call to the sigaltstack

DESCRIPTION    [Toc]    [Back]

       This function enables another stack  area  to  be  defined
       where  signals  can be examined for their execution status
       and processed. If a  signal's  action,  specified  by  the
       sigaction(2) function, indicates that a signal should execute
 on an alternate stack, that signal  is  examined  for
       its  processing  status.   A process that is not currently
       executing on the signal stack is switched to an  alternate
       stack for the duration of the handler's execution.

       The sigaltstack structure is set up as follows:

       void        *ss_sp      /*  SVID3  uses  caddr_t ss_sp int
       ss_flags size_t     ss_size

       The values for  the  fields  are:  Signal  stack  pointer.
       Specifies  the  new  stack  state and may be set to either
       SS_DISABLE or SS_ONSTACK as follows: If ss  is  not  NULL,
       the  new  state  may be set to SS_DISABLE, which specifies
       that the stack is to be disabled and ss_sp and ss_size are
       ignored.  If  SS_DISABLE  is  not  set,  the stack will be
       enabled.  If oss is not  NULL,  the  stack  state  may  be
       either  SS_ONSTACK  or  SS_DISABLE.   The value SS_ONSTACK
       indicates that the process is currently executing  on  the
       alternate  stack  and that any attempt to modify it during
       execution will fail.  The value SS_DISABLE indicates  that
       the  current signal stack is disabled.  Specifies the size
       of the stack.

       The value SIGSTKSZ defines the  average  number  of  bytes
       used  when  allocating an alternate stack area.  The value
       MINSIGSTKSZ defines the minimum stack size  for  a  signal
       handler.   When  processing  an alternate stack size, your
       program should include these values in the stack  requirement
 to plan for the overhead of the operating system.

RETURN VALUES    [Toc]    [Back]

       Upon  successful  completion,  zero  (0)  is returned.  On
       error, the value -1 is returned and errno is set to  indicate
 the error.

ERRORS    [Toc]    [Back]

       The  sigaltstack()  function  sets  errno to the specified
       values for the following conditions: The ss  parameter  is
       not  a null pointer, and the ss_flags member pointed to by
       ss contains flags other than SS_DISABLE.  The size of  the
       alternate stack area is less than MINSIGSTKSZ.  An attempt
       was made to modify an active stack.

SEE ALSO    [Toc]    [Back]

       Functions:  getcontext(2), sigaction(2)

       Routines:  sigsetjmp(3)

       Files:  ucontext(5)

       Standards:  standards(5)

[ Back ]
 Similar pages
Name OS Title
sigaltstack HP-UX set and/or get signal alternate stack context.
sigstack HP-UX set and/or get alternate signal stack context
sigaltstack FreeBSD set and/or get signal stack context
sigstack OpenBSD set and/or get signal stack context
sigstack Tru64 Set and get the signal stack context
sigstack FreeBSD set and/or get signal stack context
sigaltstack OpenBSD set and/or get signal stack context
sigstack IRIX set and/or get signal stack context
sigaltstack NetBSD set and/or get signal stack context
sigstack NetBSD set and/or get signal stack context
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service