SPAWN.H(7) Miscellaneous Information Manual SPAWN.H(7)

spawn.hspawn (ADVANCED REALTIME)


#include <spawn.h>

The <spawn.h> header shall define the posix_spawnattr_t and types used in performing spawn operations.

The <spawn.h> header shall define the mode_t and pid_t types as described in <sys/types.h>.

The <spawn.h> header shall define the sigset_t type as described in <signal.h>.

The tag shall be declared as naming an incomplete structure type, the contents of which are described in the <sched.h> header.

The <spawn.h> header shall define the following symbolic constants for use as the flags that may be set in a posix_spawnattr_t object using the posix_spawnattr_setflags(3) function:

POSIX_SPAWN_RESETIDS POSIX_SPAWN_SETPGROUP POSIX_SPAWN_SETSCHEDPARAM POSIX_SPAWN_SETSCHEDULER POSIX_SPAWN_SETSID POSIX_SPAWN_SETSIGDEF POSIX_SPAWN_SETSIGMASK

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

int   posix_spawn(pid_t *restrict, const char *restrict,
          const posix_spawn_file_actions_t *restrict,
          const posix_spawnattr_t *restrict, char *const [restrict],
          char *const [restrict]);
int   posix_spawn_file_actions_addchdir(posix_spawn_file_actions_t
          *restrict, const char *restrict);
int   posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *,
          int);
int   posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *,
          int, int);
int   posix_spawn_file_actions_addfchdir(posix_spawn_file_actions_t *,
          int);
int   posix_spawn_file_actions_addopen(posix_spawn_file_actions_t
          *restrict, int, const char *restrict, int, mode_t);
int   posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *);
int   posix_spawn_file_actions_init(posix_spawn_file_actions_t *);
int   posix_spawnattr_destroy(posix_spawnattr_t *);
int   posix_spawnattr_getflags(const posix_spawnattr_t *restrict,
          short *restrict);
int   posix_spawnattr_getpgroup(const posix_spawnattr_t *restrict,
          pid_t *restrict);
[PS]
int   posix_spawnattr_getschedparam(const posix_spawnattr_t *restrict,
          struct sched_param *restrict);
int   posix_spawnattr_getschedpolicy(const posix_spawnattr_t *restrict,
          int *restrict);

int   posix_spawnattr_getsigdefault(const posix_spawnattr_t *restrict,
          sigset_t *restrict);
int   posix_spawnattr_getsigmask(const posix_spawnattr_t *restrict,
          sigset_t *restrict);
int   posix_spawnattr_init(posix_spawnattr_t *);
int   posix_spawnattr_setflags(posix_spawnattr_t *, short);
int   posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t);


[PS]
int   posix_spawnattr_setschedparam(posix_spawnattr_t *restrict,
          const struct sched_param *restrict);
int   posix_spawnattr_setschedpolicy(posix_spawnattr_t *, int);

int   posix_spawnattr_setsigdefault(posix_spawnattr_t *restrict,
          const sigset_t *restrict);
int   posix_spawnattr_setsigmask(posix_spawnattr_t *restrict,
          const sigset_t *restrict);
int   posix_spawnp(pid_t *restrict, const char *restrict,
          const posix_spawn_file_actions_t *restrict,
          const posix_spawnattr_t *restrict,
          char *const [restrict], char *const [restrict]);

Inclusion of the <spawn.h> header may make visible symbols defined in the <sched.h> and <signal.h> headers.

None.

None.

None.

<sched.h>, <semaphore.h>, <signal.h>, <sys/types.h>

XSH posix_spawn(3), posix_spawn_file_actions_addclose(3), posix_spawn_file_actions_adddup2(3), posix_spawn_file_actions_destroy(3), posix_spawnattr_destroy(3), posix_spawnattr_getflags(3), posix_spawnattr_getpgroup(3), posix_spawnattr_getschedparam(3), posix_spawnattr_getschedpolicy(3), posix_spawnattr_getsigdefault(3), posix_spawnattr_getsigmask(3)

First released in Issue 6. Included for alignment with IEEE Std 1003.1d-1999.

The restrict keyword is added to the prototypes for posix_spawn(3), posix_spawn_file_actions_addopen(3), posix_spawnattr_getsigdefault(3), posix_spawnattr_getflags(3), posix_spawnattr_getpgroup(3), posix_spawnattr_getschedparam(3), posix_spawnattr_getschedpolicy(3), posix_spawnattr_getsigmask(3), posix_spawnattr_setsigdefault(3), posix_spawnattr_setschedparam(3), posix_spawnattr_setsigmask(3), and posix_spawnp(3).

This reference page is clarified with respect to macros and symbolic constants, and declarations for the mode_t, pid_t, and sigset_t types are added.

Austin Group Defect 1044 is applied, adding POSIX_SPAWN_SETSID.

Austin Group Defect 1208 is applied, adding posix_spawn_file_actions_addchdir(3) and posix_spawn_file_actions_addfchdir(3).

Austin Group Defect 1328 is applied, adding the restrict keyword to the third parameter of posix_spawn(3) and posix_spawnp(3).

June 14, 2024 posix.fail