]> git.saurik.com Git - apple/xnu.git/blob - bsd/man/man3/posix_spawnattr_setspecialport_np.3
xnu-6153.11.26.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 special ports on a
37 .Em posix_spawnattr_t
38 .Sh SYNOPSIS
39 .Fd #include <spawn.h>
40 .Ft int
41 .Fo posix_spawnattr_setspecialport_np
42 .Fa "posix_spawnattr_t *attr"
43 .Fa "mach_port_t new_port"
44 .Fa "int which"
45 .Fc
46 .Ft int
47 .Fo posix_spawnattr_setexceptionports_np
48 .Fa "posix_spawnattr_t *attr"
49 .Fa "exception_mask_t mask"
50 .Fa "mach_port_t new_port"
51 .Fa "exception_behavior_t behavior"
52 .Fa "thread_state_flavor_t flavor"
53 .Fc
54 .Sh IMPORTANT
55 These functions represent an Apple extension to
56 .Xr posix_spawn 2
57 and
58 .Xr posix_spawnp 2 ,
59 and as such should not be used by programs intending their code to be
60 portable to other platforms.
61 .Sh DESCRIPTION
62 The
63 .Fn posix_spawnattr_setspecialport_np
64 function sets a new value for a
65 .Em Mach
66 special port into the value referenced by
67 .Fa attr
68 to the port referenced by
69 .Fa new_port
70 for a port value of
71 .Fa which ,
72 as if the new process had called
73 .Fn task_set_special_port .
74 .Pp
75 The
76 .Fn posix_spawnattr_setexceptionports_np
77 function sets the
78 .Em Mach
79 port to
80 .Fa new_port
81 for a number of exception ports represented by the bitfield
82 .Fa mask ,
83 and sets the new default
84 .Fa behavior
85 and default
86 .Fa flavor ,
87 as if the new process had called
88 .Fn task_set_exception_ports .
89 .Pp
90 .Sh RETURN VALUES
91 On success, these functions return 0; on failure they return an error
92 number from
93 .In errno.h .
94 .Sh ERRORS
95 These functions may fail if:
96 .Bl -tag -width Er
97 .\" ==========
98 .It Bq Er EINVAL
99 The value specified by
100 .Fa attr
101 is invalid.
102 .\" ==========
103 .It Bq Er EINVAL
104 The value of
105 .Fa attr
106 is invalid.
107 .\" ==========
108 .It Bq Er ENOMEM
109 Insufficient resources exist to set the ports.
110 .El
111 .Sh SEE ALSO
112 .Xr posix_spawn 2 ,
113 .Xr posix_spawnp 2 ,
114 .Xr posix_spawnattr_init 3 ,
115 .Xr posix_spawnattr_destroy 3
116 .Sh STANDARDS
117 Nonstandard
118 .Sh HISTORY
119 The
120 .Fn posix_spawnattr_setspecialport_np
121 and
122 .Fn posix_spawnattr_setexceptionports_np
123 function calls appeared in Mac OS X.