task_get_emulation_vector.html   [plain text]


<h2>task_get_emulation_vector</h2>
<hr>
<p>
<strong>Function</strong> - Return an array identifying the target task's user-level system call handlers. 
<h3>SYNOPSIS</h3>
<pre>
<strong>kern_return_t   task_get_emulation_vector</strong>
                <strong>(task_t</strong>                                    <var>task</var>,
                 <strong>int</strong>                               <var>vector_start</var>,
                 <strong>emulation_vector_t</strong>            <var>emulation_vector</var>,
                 <strong>mach_msg_type_number_t*</strong> <var>emulation_vector_count</var><strong>);</strong>
</pre>
<h3>PARAMETERS</h3>
<dl>
<p>
<dt> <var>task</var> 
<dd>
[in task send right]
The port for the task for which the system call
handler addresses are desired.
<p>
<dt> <var>vector_start</var> 
<dd>
[out scalar]
The syscall number corresponding to the first element of 
<var>emulation_vector</var>.
<p>
<dt> <var>emulation_vector</var> 
<dd>
[out pointer to dynamic array of <strong>vm_address_t</strong>]
Pointer to the returned 
array of routine entrypoints for the system calls starting with syscall 
number <var>vector_start</var>.
<p>
<dt> <var>emulation_vector_count</var> 
<dd>
[out scalar]
The number of entries filled by the kernel.
</dl>
<h3>DESCRIPTION</h3>
<p>
The <strong>task_get_emulation_vector</strong> function returns the
user-level syscall handler entrypoint addresses.
<h3>NOTES</h3>
<p>
This interface is machine word length specific because of the
virtual addresses in the <var>emulation_vector</var> parameter.
<h3>RETURN VALUES</h3>
<p>
Only generic errors apply.
<h3>RELATED INFORMATION</h3>
<p>
Functions:
<a href="task_set_emulation_vector.html"><strong>task_set_emulation_vector</strong></a>.