Name Description Size
guard.rs Contains types and helpers for dealing with `EXC_GUARD` exceptions. `EXC_GUARD` exceptions embed details about the guarded resource in the `code` and `subcode` fields of the exception See <https://github.com/apple-oss-distributions/xnu/blob/e7776783b89a353188416a9a346c6cdb4928faad/osfmk/kern/exc_guard.h> for the top level types that this module wraps. 2578
ipc.rs Unfortunately, sending a [`CrashContext`] to another process on Macos needs to be done via mach ports, as, for example, `mach_task_self` is a special handle that needs to be translated into the "actual" task when used by another process, this _might_ be possible completely in userspace, but examining the source code for this leads me to believe that there are enough footguns, particularly around security, that this might take a while, so for now, if you need to use a [`CrashContext`] across processes, you need to use the IPC mechanisms here to get meaningful/accurate data Note that in all cases of an optional timeout, a `None` will return immediately regardless of whether the messaged has been enqueued or dequeued from the kernel queue, so it is _highly_ recommended to use reasonable timeouts for sending and receiving messages between processes. 19399
resource.rs Contains types and helpers for dealing with `EXC_RESOURCE` exceptions. `EXC_RESOURCE` exceptions embed details about the resource and the limits it exceeded within the `code` and, in some cases `subcode`, fields of the exception See <https://github.com/apple-oss-distributions/xnu/blob/e6231be02a03711ca404e5121a151b24afbff733/osfmk/kern/exc_resource.h> for the various constants and decoding of exception information wrapped in this module. 17872