xref: /xnu-11417.121.6/osfmk/man/task_get_emulation_vector.html (revision a1e26a70f38d1d7daa7b49b258e2f8538ad81650)
1*a1e26a70SApple OSS Distributions<h2>task_get_emulation_vector</h2>
2*a1e26a70SApple OSS Distributions<hr>
3*a1e26a70SApple OSS Distributions<p>
4*a1e26a70SApple OSS Distributions<strong>Function</strong> - Return an array identifying the target task's user-level system call handlers.
5*a1e26a70SApple OSS Distributions<h3>SYNOPSIS</h3>
6*a1e26a70SApple OSS Distributions<pre>
7*a1e26a70SApple OSS Distributions<strong>kern_return_t   task_get_emulation_vector</strong>
8*a1e26a70SApple OSS Distributions                <strong>(task_t</strong>                                    <var>task</var>,
9*a1e26a70SApple OSS Distributions                 <strong>int</strong>                               <var>vector_start</var>,
10*a1e26a70SApple OSS Distributions                 <strong>emulation_vector_t</strong>            <var>emulation_vector</var>,
11*a1e26a70SApple OSS Distributions                 <strong>mach_msg_type_number_t*</strong> <var>emulation_vector_count</var><strong>);</strong>
12*a1e26a70SApple OSS Distributions</pre>
13*a1e26a70SApple OSS Distributions<h3>PARAMETERS</h3>
14*a1e26a70SApple OSS Distributions<dl>
15*a1e26a70SApple OSS Distributions<p>
16*a1e26a70SApple OSS Distributions<dt> <var>task</var>
17*a1e26a70SApple OSS Distributions<dd>
18*a1e26a70SApple OSS Distributions[in task send right]
19*a1e26a70SApple OSS DistributionsThe port for the task for which the system call
20*a1e26a70SApple OSS Distributionshandler addresses are desired.
21*a1e26a70SApple OSS Distributions<p>
22*a1e26a70SApple OSS Distributions<dt> <var>vector_start</var>
23*a1e26a70SApple OSS Distributions<dd>
24*a1e26a70SApple OSS Distributions[out scalar]
25*a1e26a70SApple OSS DistributionsThe syscall number corresponding to the first element of
26*a1e26a70SApple OSS Distributions<var>emulation_vector</var>.
27*a1e26a70SApple OSS Distributions<p>
28*a1e26a70SApple OSS Distributions<dt> <var>emulation_vector</var>
29*a1e26a70SApple OSS Distributions<dd>
30*a1e26a70SApple OSS Distributions[out pointer to dynamic array of <strong>vm_address_t</strong>]
31*a1e26a70SApple OSS DistributionsPointer to the returned
32*a1e26a70SApple OSS Distributionsarray of routine entrypoints for the system calls starting with syscall
33*a1e26a70SApple OSS Distributionsnumber <var>vector_start</var>.
34*a1e26a70SApple OSS Distributions<p>
35*a1e26a70SApple OSS Distributions<dt> <var>emulation_vector_count</var>
36*a1e26a70SApple OSS Distributions<dd>
37*a1e26a70SApple OSS Distributions[out scalar]
38*a1e26a70SApple OSS DistributionsThe number of entries filled by the kernel.
39*a1e26a70SApple OSS Distributions</dl>
40*a1e26a70SApple OSS Distributions<h3>DESCRIPTION</h3>
41*a1e26a70SApple OSS Distributions<p>
42*a1e26a70SApple OSS DistributionsThe <strong>task_get_emulation_vector</strong> function returns the
43*a1e26a70SApple OSS Distributionsuser-level syscall handler entrypoint addresses.
44*a1e26a70SApple OSS Distributions<h3>NOTES</h3>
45*a1e26a70SApple OSS Distributions<p>
46*a1e26a70SApple OSS DistributionsThis interface is machine word length specific because of the
47*a1e26a70SApple OSS Distributionsvirtual addresses in the <var>emulation_vector</var> parameter.
48*a1e26a70SApple OSS Distributions<h3>RETURN VALUES</h3>
49*a1e26a70SApple OSS Distributions<p>
50*a1e26a70SApple OSS DistributionsOnly generic errors apply.
51*a1e26a70SApple OSS Distributions<h3>RELATED INFORMATION</h3>
52*a1e26a70SApple OSS Distributions<p>
53*a1e26a70SApple OSS DistributionsFunctions:
54*a1e26a70SApple OSS Distributions<a href="task_set_emulation_vector.html"><strong>task_set_emulation_vector</strong></a>.
55