4 <strong>Function
</strong> - Handle kernel-reported thread exception.
7 <strong>boolean_t exc_server
</strong>
8 <strong>(mach_msg_header_t
</strong> <var>request_msg
</var>,
9 <strong>mach_msg_header_t
</strong> <var>reply_ms
</var><strong>);
</strong>
14 <dt> <var>in_msg
</var>
16 [pointer to in structure]
17 The exception message received from the
20 <dt> <var>out_msg
</var>
27 The
<strong>exc_server
</strong> function is the MIG generated server
29 handle messages from the kernel relating to the occurrence of
31 thread. Such messages are delivered to the exception port set via
32 <strong>thread_set_exception_ports
</strong> or
<strong>task_set_exception_ports
</strong>.
33 When an exception occurs in a
34 thread, the thread sends an exception message to its exception port, blocking in
35 the kernel waiting for the receipt of a reply. The
<strong>exc_server
</strong>
37 all necessary argument handling for this kernel message and calls
38 <strong>catch_exception_raise
</strong>,
<strong>catch_exception_raise_state
</strong> or
39 <strong>catch_exception_raise_state_identity
</strong>, which should handle the
40 exception. If the called routine
41 returns
<strong>KERN_SUCCESS
</strong>, a reply message will be sent, allowing
43 continue from the point of the exception; otherwise, no reply message is sent
44 and the called routine must have dealt with the exception thread directly.
45 <h3>RETURN VALUES
</h3>
48 <dt> <strong>TRUE
</strong>
50 The message was handled and the appropriate function was called.
52 <dt> <strong>FALSE
</strong>
54 The message did not apply to the exception mechanism and no other
57 <h3>RELATED INFORMATION
</h3>
60 <a href=
"catch_exception_raise.html"><strong>catch_exception_raise
<strong></a>.