mach_port_get_refs.html   [plain text]


<h2>mach_port_get_refs</h2>
<hr>
<p>
<strong>Function</strong> - Return the current count of user references on the target port right.
<h3>SYNOPSIS</h3>
<pre>
<strong>kern_return_t   mach_port_get_refs</strong>
                <strong>(ipc_space_t</strong>                               <var>task</var>,
                 <strong>mach_port_name_t</strong>                          <var>name</var>,
                 <strong>mach_port_right_t</strong>                        <var>right</var>,
                 <strong>mach_port_urefs_t</strong>                        <var>*refs</var><strong>);</strong>
</pre>
<h3>PARAMETERS</h3>
<dl>
<p>
<dt> <var>task</var> 
<dd>
[in task send right]
The task holding the right.
<p>
<dt> <var>name</var> 
<dd>
[in scalar]
The task's name for the right.
<p>
<dt> <var>right</var> 
<dd>
[in scalar]
The type of right/entity being examined:
<dl>
<p>
<dt> <dd>
<strong>MACH_PORT_RIGHT_SEND</strong>
<p>
<dt> <dd>
<strong>MACH_PORT_RIGHT_RECEIVE</strong>
<p>
<dt> <dd>
<strong>MACH_PORT_RIGHT_SEND_ONCE</strong>
<p>
<dt> <dd>
<strong>MACH_PORT_RIGHT_PORT_SET</strong>
<p>
<dt> <dd>
<strong>MACH_PORT_RIGHT_DEAD_NAME</strong>
</dl>
<p>
<dt> <var>refs</var> 
<dd>
[out scalar]
Number of user references.
</dl>
<h3>DESCRIPTION</h3>
<p>
The <strong>mach_port_get_refs</strong> function returns the number
of user references a task 
has for a right.
<p>
If <var>name</var> denotes a right, but not the type of right specified,
then zero is returned. 
Otherwise a positive number of user references is returned.  Note a name may
simultaneously denote send and receive rights.  The number of references for
send-once rights is always one.
<h3>NOTES</h3>
<p>
This interface is machine word length specific because of the port name
parameter.
<h3>RETURN VALUES</h3>
<dl>
<p>
<dt> <strong>KERN_INVALID_NAME</strong>
<dd>
<var>name</var> did not denote a right.
</dl>
<h3>RELATED INFORMATION</h3>
<p>
Functions:
<a href="mach_port_mod_refs.html"><strong>mach_port_mod_refs</strong></a>.