Go to main content

man pages section 2: System Calls

Exit Print View

Updated: Thursday, June 13, 2019
 
 

setustack(2)

Name

getustack, setustack - retrieve or change the address of per-LWP stack boundary information

Synopsis

#include <ucontext.h>

int getustack(stack_t **spp);
int setustack(stack_t *sp);

Description

The getustack() function retrieves the address of per-LWP stack boundary information. The address is stored at the location pointed to by spp. If this address has not been defined using a previous call to setustack(), NULL is stored at the location pointed to by spp.

The setustack() function changes the address of the current thread's stack boundary information to the value of sp.

Return Values

Upon successful completion, these functions return 0. Otherwise, −1 is returned and errno is set to indicate the error.

Errors

These functions will fail if:

EFAULT

The spp or sp argument does not refer to a valid address.

Usage

Only implementors of custom threading libraries should use these functions to get and set the address of the stack bound to an internal per-thread data structure. Other users should use stack_getbounds(3C) and stack_setbounds(3C).

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Async-Signal-Safe

See Also

stack_getbounds(3C), _stack_grow(3C), stack_inbounds(3C), stack_setbounds(3C), stack_violation(3C), attributes(7)