]> git.saurik.com Git - apple/xnu.git/blame - bsd/man/man3/posix_spawnattr_setspecialport_np.3
xnu-1699.22.73.tar.gz
[apple/xnu.git] / bsd / man / man3 / posix_spawnattr_setspecialport_np.3
CommitLineData
2d21ac55
A
1.\"
2.\" Copyright (c) 2000-2007 Apple Inc. All rights reserved.
3.\"
4.\" @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5.\"
6.\" This file contains Original Code and/or Modifications of Original Code
7.\" as defined in and that are subject to the Apple Public Source License
8.\" Version 2.0 (the 'License'). You may not use this file except in
9.\" compliance with the License. The rights granted to you under the License
10.\" may not be used to create, or enable the creation or redistribution of,
11.\" unlawful or unlicensed copies of an Apple operating system, or to
12.\" circumvent, violate, or enable the circumvention or violation of, any
13.\" terms of an Apple operating system software license agreement.
14.\"
15.\" Please obtain a copy of the License at
16.\" http://www.opensource.apple.com/apsl/ and read it before using this file.
17.\"
18.\" The Original Code and all software distributed under the License are
19.\" distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20.\" EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21.\" INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22.\" FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23.\" Please see the License for the specific language governing rights and
24.\" limitations under the License.
25.\"
26.\" @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27.\"
28.\" @(#)posix_spawnattr_setspecialport_np.3
29.
30.Dd August 22, 2007
31.Dt POSIX_SPAWNATTR_SETSPECIALPORT_NP 3
32.Os "Mac OS X"
33.Sh NAME
34.Nm posix_spawnattr_setspecialport_np
35.Nm posix_spawnattr_setexceptionports_np
36.Nd set or get the
37.Em spawn-binpref
38attribute on a
39.Em posix_spawnattr_t
40.Sh SYNOPSIS
41.Fd #include <spawn.h>
42.Ft int
43.Fo posix_spawnattr_setspecialport_np
44.Fa "posix_spawnattr_t *attr"
45.Fa "mach_port_t new_port"
46.Fa "int which"
47.Fc
48.Ft int
49.Fo posix_spawnattr_setexceptionports_np
50.Fa "posix_spawnattr_t *attr"
51.Fa "exception_mask_t mask"
52.Fa "mach_port_t new_port"
53.Fa "exception_behavior_t behavior"
54.Fa "thread_state_flavor_t flavor"
55.Fc
56.Sh IMPORTANT
57These functions represent an Apple extension to
58.Xr posix_spawn 2
59and
60.Xr posix_spawnp 2 ,
61and as such should not be used by programs intending their code to be
62portable to other platforms.
63.Sh DESCRIPTION
64The
65.Fn posix_spawnattr_setspecialport_np
66function sets a new value for a
67.Em Mach
68special port into the value referenced by
69.Fa attr
70to the port referenced by
71.Fa new_port
72for a port value of
73.Fa which ,
74as if the new process had called
75.Fn task_set_special_port .
76.Pp
77The
78.Fn posix_spawnattr_setexceptionports_np
79function sets the
80.Em Mach
81port to
82.Fa new_port
83for a number of exception ports represented by the bitfield
84.Fa mask ,
85and sets the new default
86.Fa behavior
87and default
88.Fa flavor ,
89as if the new process had called
90.Fn task_set_exception_ports .
91.Pp
92.Sh RETURN VALUES
93On success, these functions return 0; on failure they return an error
94number from
95.In errno.h .
96.Sh ERRORS
97These functions may fail if:
98.Bl -tag -width Er
99.\" ==========
100.It Bq Er EINVAL
101The value specified by
102.Fa attr
103is invalid.
104.\" ==========
105.It Bq Er EINVAL
106The value of
107.Fa attr
108is invalid.
109.\" ==========
110.It Bq Er ENOMEM
111Insufficient resources exist to set the ports.
112.El
113.Sh SEE ALSO
114.Xr posix_spawn 2 ,
115.Xr posix_spawnp 2 ,
116.Xr posix_spawnattr_init 3 ,
117.Xr posix_spawnattr_destroy 3
118.Sh STANDARDS
119Nonstandard
120.Sh HISTORY
121The
122.Fn posix_spawnattr_setspecialport_np
123and
124.Fn posix_spawnattr_setexceptionports_np
125function calls appeared in Mac OS X.