]> git.saurik.com Git - apple/xnu.git/blob - bsd/man/man3/posix_spawnattr_setspecialport_np.3
xnu-1504.15.3.tar.gz
[apple/xnu.git] / bsd / man / man3 / posix_spawnattr_setspecialport_np.3
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
38 attribute 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
57 These functions represent an Apple extension to
58 .Xr posix_spawn 2
59 and
60 .Xr posix_spawnp 2 ,
61 and as such should not be used by programs intending their code to be
62 portable to other platforms.
63 .Sh DESCRIPTION
64 The
65 .Fn posix_spawnattr_setspecialport_np
66 function sets a new value for a
67 .Em Mach
68 special port into the value referenced by
69 .Fa attr
70 to the port referenced by
71 .Fa new_port
72 for a port value of
73 .Fa which ,
74 as if the new process had called
75 .Fn task_set_special_port .
76 .Pp
77 The
78 .Fn posix_spawnattr_setexceptionports_np
79 function sets the
80 .Em Mach
81 port to
82 .Fa new_port
83 for a number of exception ports represented by the bitfield
84 .Fa mask ,
85 and sets the new default
86 .Fa behavior
87 and default
88 .Fa flavor ,
89 as if the new process had called
90 .Fn task_set_exception_ports .
91 .Pp
92 .Sh RETURN VALUES
93 On success, these functions return 0; on failure they return an error
94 number from
95 .In errno.h .
96 .Sh ERRORS
97 These functions may fail if:
98 .Bl -tag -width Er
99 .\" ==========
100 .It Bq Er EINVAL
101 The value specified by
102 .Fa attr
103 is invalid.
104 .\" ==========
105 .It Bq Er EINVAL
106 The value of
107 .Fa attr
108 is invalid.
109 .\" ==========
110 .It Bq Er ENOMEM
111 Insufficient 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
119 Nonstandard
120 .Sh HISTORY
121 The
122 .Fn posix_spawnattr_setspecialport_np
123 and
124 .Fn posix_spawnattr_setexceptionports_np
125 function calls appeared in Mac OS X.