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_names.man,v $
29 .\" Revision 2.6 93/05/10 19:31:34 rvb
30 .\" updated
31 .\" [93/04/21 16:03:49 lli]
32 .\"
33 .\" Revision 2.5 91/12/11 08:43:10 jsb
34 .\" Changed <mach/mach.h> to <mach.h>.
35 .\" [91/11/25 10:55:47 rpd]
36 .\"
37 .\" Revision 2.4 91/05/14 17:07:09 mrt
38 .\" Correcting copyright
39 .\"
40 .\" Revision 2.3 91/02/14 14:11:43 mrt
41 .\" Changed to new Mach copyright
42 .\" [91/02/12 18:11:55 mrt]
43 .\"
44 .\" Revision 2.2 90/08/07 18:37:32 rpd
45 .\" Created.
46 .\"
47 .TH mach_port_names 2 4/13/87
48 .CM 4
49 .SH NAME
50 .nf
51 mach_port_names \- return information about a task's port name space
52 .SH SYNOPSIS
53 .nf
54 .ft B
55 #include <mach.h>
56
57 kern_return_t
58 mach_port_names(task, names, ncount, types, tcount)
59 mach_port_t task;
60 mach_port_name_array_t *names; /* out array */
61 mach_msg_type_number_t *ncount; /* out */
62 mach_port_type_array_t *types; /* out array */
63 mach_msg_type_number_t *tcount; /* out */
64 .fi
65 .ft P
66 .SH ARGUMENTS
67 .TP 12
68 .B
69 task
70 The task whose port name space is queried.
71 .TP 12
72 .B
73 names
74 The names of the ports, port sets, and dead names in the task's
75 port name space, in no particular order.
76 .TP 12
77 .B
78 ncount
79 The number of names returned.
80 .TP 12
81 .B
82 types
83 The type of each corresponding name. Indicates what kind
84 of rights the task holds with that name.
85 .TP 12
86 .B
87 tcount
88 Should be the same as ncount.
89 .SH DESCRIPTION
90 \fBmach_port_names\fR returns information about \fBtask\fR's port name
91 space. It returns \fBtask\fR's currently active names, which represent some
92 port, port set, or dead name right. For each name, it also returns
93 what type of rights \fBtask\fR holds. (The same information returned
94 by \fBmach_port_type\fR.) \fBnames\fR and \fBtypes\fR are arrays that
95 are automatically allocated when the reply message is received. The
96 user should \fBvm_deallocate\fR them when the data is no longer
97 needed.
98 .SH DIAGNOSTICS
99 .TP 25
100 KERN_SUCCESS
101 The call succeeded.
102 .TP 25
103 KERN_INVALID_TASK
104 \fBtask\fR was invalid.
105 .TP 25
106 KERN_RESOURCE_SHORTAGE
107 The kernel ran out of memory.
108 .PP
109 The \fBmach_port_names\fR call is actually an RPC to \fBtask\fR,
110 normally a send right for a task port, but potentially any send right.
111 In addition to the normal diagnostic
112 return codes from the call's server (normally the kernel),
113 the call may return \fBmach_msg(2)\fR return codes.
114 .SH SEE ALSO
115 mach_port_type(2), vm_deallocate(2).
Cache object: 81c050b6887b3b58169c035542c1b24e
|