1 .\"
2 .\" Mach Operating System
3 .\" Copyright (c) 1991,1990 Carnegie Mellon University
4 .\" All Rights Reserved.
5 .\"
6 .\" Permission to use, copy, modify and distribute this software and its
7 .\" documentation is hereby granted, provided that both the copyright
8 .\" notice and this permission notice appear in all copies of the
9 .\" software, derivative works or modified versions, and any portions
10 .\" thereof, and that both notices appear in supporting documentation.
11 .\"
12 .\" CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 .\" CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 .\" ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 .\"
16 .\" Carnegie Mellon requests users of this software to return to
17 .\"
18 .\" Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 .\" School of Computer Science
20 .\" Carnegie Mellon University
21 .\" Pittsburgh PA 15213-3890
22 .\"
23 .\" any improvements or extensions that they make and grant Carnegie Mellon
24 .\" the rights to redistribute these changes.
25 .\"
26 .\"
27 .\" HISTORY
28 .\" $Log: mach_port_type.man,v $
29 .\" Revision 2.6 93/05/10 19:31:53 rvb
30 .\" updated
31 .\" [93/04/21 16:04:08 lli]
32 .\"
33 .\" Revision 2.5 91/12/11 08:43:25 jsb
34 .\" Changed <mach/mach.h> to <mach.h>.
35 .\" [91/11/25 10:56:03 rpd]
36 .\"
37 .\" Revision 2.4 91/05/14 17:07:50 mrt
38 .\" Correcting copyright
39 .\"
40 .\" Revision 2.3 91/02/14 14:12:11 mrt
41 .\" Changed to new Mach copyright
42 .\" [91/02/12 18:12:19 mrt]
43 .\"
44 .\" Revision 2.2 90/08/07 18:38:28 rpd
45 .\" Created.
46 .\"
47 .TH mach_port_type 2 4/13/87
48 .CM 4
49 .SH NAME
50 .nf
51 mach_port_type \- return information about a task's name
52 .SH SYNOPSIS
53 .nf
54 .ft B
55 #include <mach.h>
56
57 kern_return_t
58 mach_port_type(task, name, ptype)
59 mach_port_t task;
60 mach_port_t name;
61 mach_port_type_t *ptype; /* out */
62 .fi
63 .ft P
64 .SH ARGUMENTS
65 .TP 12
66 .B
67 task
68 The task whose port name space is queried.
69 .TP 12
70 .B
71 name
72 The name being queried.
73 .TP 12
74 .B
75 ptype
76 The type of the name. Indicates what kind
77 of right the task holds for the port, port set, or dead name.
78 .SH DESCRIPTION
79 \fBmach_port_type\fR returns information about \fBtask\fR's rights for
80 a specific name in its port name space. The returned \fBptype\fR
81 is a bitmask indicating what rights \fBtask\fR holds with this name.
82 The bitmask is composed of the following bits:
83 .TP 12
84 MACH_PORT_TYPE_SEND
85 The name denotes a send right.
86 .TP 12
87 MACH_PORT_TYPE_RECEIVE
88 The name denotes a receive right.
89 .TP 12
90 MACH_PORT_TYPE_SEND_ONCE
91 The name denotes a send-once right.
92 .TP 12
93 MACH_PORT_TYPE_PORT_SET
94 The name denotes a port set.
95 .TP 12
96 MACH_PORT_TYPE_DEAD_NAME
97 The name is a dead name.
98 .TP 12
99 MACH_PORT_TYPE_DNREQUEST
100 A dead-name request has been registered for the right.
101 .TP 12
102 MACH_PORT_TYPE_MAREQUEST
103 A msg-accepted request for the right is pending.
104 .TP 12
105 MACH_PORT_TYPE_COMPAT
106 The port right was created in the compatibility mode.
107 .SH DIAGNOSTICS
108 .TP 25
109 KERN_SUCCESS
110 The call succeeded.
111 .TP 25
112 KERN_INVALID_TASK
113 \fBtask\fR was invalid.
114 .TP 25
115 KERN_INVALID_NAME
116 \fBname\fR did not denote a right.
117 .PP
118 The \fBmach_port_type\fR call is actually an RPC to \fBtask\fR,
119 normally a send right for a task port, but potentially any send right.
120 In addition to the normal diagnostic
121 return codes from the call's server (normally the kernel),
122 the call may return \fBmach_msg(2)\fR return codes.
123 .SH SEE ALSO
124 mach_port_names(2), mach_port_get_receive_status(2),
125 mach_port_get_set_status(2).
Cache object: cfb02edaa429db5afabd8e12646a286a
|