]> git.saurik.com Git - apple/xnu.git/blame - osfmk/man/mach_port_get_set_status.html
xnu-344.tar.gz
[apple/xnu.git] / osfmk / man / mach_port_get_set_status.html
CommitLineData
9bccf70c 1<h2>mach_port_get_set_status</h2>\r<hr>\r<p>\r<strong>Function</strong> - Return the port right names contained in the target port set.\r<h3>SYNOPSIS</h3>\r<pre>\r<strong>kern_return_t mach_port_get_set_status</strong>\r <strong>(ipc_space_t</strong> <var>task</var>,\r <strong>mach_port_name_t</strong> <var>name</var>,\r <strong>mach_port_name_array_t</strong> <var>*members</var>,\r <strong>task</strong> <var>count</var><strong>);</strong>\r</pre>\r<h3>PARAMETERS</h3>\r<dl>\r<p>\r<dt> <var>task</var> \r<dd>\r[in task send right]\rThe task holding the port set.\r<p>\r<dt> <var>name</var> \r<dd>\r[in scalar]\rThe task's name for the port set.\r<p>\r<dt> <var>members</var> \r<dd>\r[out pointer to dynamic array of <var>mach_port_name_t</var>]\rThe task's names \rfor the port set's members.\r<p>\r<dt> <var>count</var> \r<dd>\r[out scalar]\rThe number of member names returned.\r</dl>\r<h3>DESCRIPTION</h3>\r<p>\rThe <strong>mach_port_get_set_status</strong> function returns the individual port \rright names for all port rights contained in the specified port set.\rThe <var>members</var> parameter is an array that is automatically \rallocated when the reply message is received. Note that\r<strong>vm_deallocate</strong> should be used to free the array.\r<p>\rNote that this interface, unlike others such as <strong>task_threads</strong>,\rreturns a collection of port right names, NOT a collection of port rights themselves.\rIn other words, this function does not insert port rights into the caller's\rport right name space; consequently, a call to <strong>mach_port_get_set_status</strong>\rdoes not affect the reference count of each port right within the target port set.\r<h3>NOTES</h3>\r<p>\rThis interface is machine word length specific because of the port name\rparameter and the returned port names.\r<h3>RETURN VALUES</h3>\r<dl>\r<p>\r<dt> <strong>KERN_INVALID_NAME</strong>\r<dd>\r<var>name</var> did not denote a right.\r<p>\r<dt> <strong>KERN_INVALID_RIGHT</strong>\r<dd>\r<var>name</var> denoted a right, but not a port set.\r</dl>\r<h3>RELATED INFORMATION</h3>\r<p>\rFunctions:\r<a href="mach_port_insert_member.html"><strong>mach_port_insert_member</strong></a>,\r<a href="mach_port_extract_member.html"><strong>mach_port_extract_member</strong></a>,\r<a href="mach_port_move_member.html"><strong>mach_port_move_member</strong></a>,\r<a href="vm_deallocate.html"><strong>vm_deallocate</strong></a>.\r