stack_setbounds(3C)




NAME

     stack_setbounds - update stack boundaries


SYNOPSIS

     #include <ucontext.h>

     int stack_setbounds(const stack_t *sp);


DESCRIPTION

     The stack_setbounds() function updates the current base  and
     bounds  of  the  stack  for the current thread to the bounds
     specified by the stack_t structure pointed  to  by  sp.  The
     ss_sp  member  refers  to the virtual address of the base of
     the stack memory. The ss_size member refers to the  size  of
     the stack in bytes. The ss_flags member must be set to 0.


RETURN VALUES

     Upon successful  completion,  stack_setbounds()  returns  0.
     Otherwise,  -1  is returned and errno is set to indicate the
     error.


ERRORS

     The stack_setbounds() function will fail if:

     EFAULT
           The sp argument does not refer to a valid  address  or
           the  ss_sp  member of the stack_t structure pointed to
           by sp points to an illegal address.

     EINVAL
           The ss_sp member of the stack_t structure  pointed  to
           by  sp  is not properly aligned, the ss_size member is
           too small or is not properly aligned, or the  ss_flags
           member is non-zero.


USAGE

     The stack_setbounds() function is intended for use by appli-
     cations that are managing their own alternate stacks.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Interface Stability         | Evolving                    |
    |_____________________________|_____________________________|
    | MT-Level                    | Async-Signal-Safe           |
    |_____________________________|_____________________________|


SEE ALSO

     getustack(2),     _stack_grow(3C),      stack_getbounds(3C),
     stack_inbounds(3C), stack_violation(3C), attributes(5)


Man(1) output converted with man2html