POSIX_SPAWNATTR_SETSPECIALPORT_NP(3)

NAME
posix_spawnattr_setspecialport_np posix_spawnattr_setexceptionports_np - set special ports on a posix_spawnattr_t

SYNOPSIS
#include <spawn.h>
int
posix_spawnattr_setspecialport_np(posix_spawnattr_t *attr, mach_port_t new_port, int which);
int
posix_spawnattr_setexceptionports_np(posix_spawnattr_t *attr, exception_mask_t mask, mach_port_t new_port, exception_behavior_t behavior, thread_state_flavor_t flavor);

IMPORTANT
These functions represent an Apple extension to posix_spawn(2) and posix_spawnp(2), and as such should not be used by programs intending their code to be portable to other platforms.

DESCRIPTION
The posix_spawnattr_setspecialport_np() function sets a new value for a Mach special port into the value referenced by attr to the port referenced by new_port for a port value of which, as if the new process had called task_set_special_port().

The posix_spawnattr_setexceptionports_np() function sets the Mach port to new_port for a number of exception ports represented by the bitfield mask, and sets the new default behavior and default flavor, as if the new process had called task_set_exception_ports().

RETURN VALUES
On success, these functions return 0; on failure they return an error number from <errno.h>.

ERRORS
These functions may fail if:

[EINVAL]
    The value specified by attr is invalid.

[EINVAL]
    The value of attr is invalid.

[ENOMEM]
    Insufficient resources exist to set the ports.

SEE ALSO
posix_spawn(2), posix_spawnp(2), posix_spawnattr_init(3), posix_spawnattr_destroy(3)

STANDARDS
Nonstandard

HISTORY
The posix_spawnattr_setspecialport_np() and posix_spawnattr_setexceptionports_np() function calls appeared in Mac OS X.