Structs§
- Atomic
Stop State - Ptrace
Core State - The ptrace state that a new task needs to connect to the same tracer as the task that clones it.
- Ptrace
Event Data - Information about what caused a ptrace-event-stop.
- Ptrace
Options - Ptrace
State - Per-task ptrace-related state
- Zombie
Ptracees - A list of zombie processes that were traced by a given tracer, but which have not yet notified that tracer of their exit. Once the tracer is notified, the original parent will be notified.
Enums§
- Ptrace
Allowed Ptracers - Indicates processes specifically allowed to trace a given process if using SCOPE_RESTRICTED. Used by prctl(PR_SET_PTRACER).
- Ptrace
Attach Type - Indicates the way that ptrace attached to the task.
- Ptrace
Event - Ptrace
Status - For most of the time, for the purposes of ptrace, a tracee is either “going” or “stopped”. However, after certain ptrace calls, there are special rules to be followed.
- Stop
State - This enum describes the state that a task or thread group can be in when being stopped. The names are taken from ptrace(2).
Constants§
Functions§
- ptrace_
attach - ptrace_
attach_ from_ state - Uses the given core ptrace state (including tracer, attach type, etc) to
attach to another task, given by
tracee_task. Also sends a signal to stop tracee_task. Typical for when inheriting ptrace state from another task. - ptrace_
detach - ptrace_
dispatch - For all ptrace requests that require an attached tracee
- ptrace_
getregset - ptrace_
peekuser - Implementation of ptrace(PTRACE_PEEKUSER). The user struct holds the registers and other information about the process. See ptrace(2) and sys/user.h for full details.
- ptrace_
pokeuser - ptrace_
setregset - ptrace_
syscall_ enter - ptrace_
syscall_ exit - ptrace_
traceme