The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

#### NAME

> spawn.h - spawn (ADVANCED REALTIME)

#### SYNOPSIS

> `[SPN] #include <spawn.h>`

#### DESCRIPTION

> The <spawn.h> header shall define the posix_spawnattr_t and posix_spawn_file_actions_t 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 sched_param 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() function:

> POSIX_SPAWN_RESETIDS
> POSIX_SPAWN_SETPGROUP
> [PS]
> POSIX_SPAWN_SETSCHEDPARAM
> POSIX_SPAWN_SETSCHEDULER
> 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 *,
>               const posix_spawnattr_t *restrict, char *const [restrict],
>               char *const [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_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 *,
>               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.

The following sections are informative.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

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

> XSH posix_spawn, posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2, posix_spawn_file_actions_destroy, posix_spawnattr_destroy, posix_spawnattr_getflags, posix_spawnattr_getpgroup, posix_spawnattr_getschedparam, posix_spawnattr_getschedpolicy, posix_spawnattr_getsigdefault, posix_spawnattr_getsigmask

#### CHANGE HISTORY

> 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(), posix_spawn_file_actions_addopen(), posix_spawnattr_getsigdefault(), posix_spawnattr_getflags(), posix_spawnattr_getpgroup(), posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigmask(), posix_spawnattr_setsigdefault(), posix_spawnattr_setschedparam(), posix_spawnattr_setsigmask(), and posix_spawnp().

#### Issue 7

> 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.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]