Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/ptrace.h
Show First 20 Lines • Show All 66 Lines • ▼ Show 20 Lines | |||||
#define PT_FOLLOW_FORK 23 | #define PT_FOLLOW_FORK 23 | ||||
#define PT_LWP_EVENTS 24 /* report LWP birth and exit */ | #define PT_LWP_EVENTS 24 /* report LWP birth and exit */ | ||||
#define PT_GET_EVENT_MASK 25 /* get mask of optional events */ | #define PT_GET_EVENT_MASK 25 /* get mask of optional events */ | ||||
#define PT_SET_EVENT_MASK 26 /* set mask of optional events */ | #define PT_SET_EVENT_MASK 26 /* set mask of optional events */ | ||||
#define PT_GET_SC_ARGS 27 /* fetch syscall args */ | #define PT_GET_SC_ARGS 27 /* fetch syscall args */ | ||||
#define PT_GET_SC_RET 28 /* fetch syscall results */ | |||||
#define PT_GETREGS 33 /* get general-purpose registers */ | #define PT_GETREGS 33 /* get general-purpose registers */ | ||||
#define PT_SETREGS 34 /* set general-purpose registers */ | #define PT_SETREGS 34 /* set general-purpose registers */ | ||||
#define PT_GETFPREGS 35 /* get floating-point registers */ | #define PT_GETFPREGS 35 /* get floating-point registers */ | ||||
#define PT_SETFPREGS 36 /* set floating-point registers */ | #define PT_SETFPREGS 36 /* set floating-point registers */ | ||||
#define PT_GETDBREGS 37 /* get debugging registers */ | #define PT_GETDBREGS 37 /* get debugging registers */ | ||||
#define PT_SETDBREGS 38 /* set debugging registers */ | #define PT_SETDBREGS 38 /* set debugging registers */ | ||||
▲ Show 20 Lines • Show All 66 Lines • ▼ Show 20 Lines | struct ptrace_lwpinfo32 { | ||||
sigset_t pl_siglist; /* LWP pending signal */ | sigset_t pl_siglist; /* LWP pending signal */ | ||||
struct siginfo32 pl_siginfo; /* siginfo for signal */ | struct siginfo32 pl_siginfo; /* siginfo for signal */ | ||||
char pl_tdname[MAXCOMLEN + 1]; /* LWP name. */ | char pl_tdname[MAXCOMLEN + 1]; /* LWP name. */ | ||||
pid_t pl_child_pid; /* New child pid */ | pid_t pl_child_pid; /* New child pid */ | ||||
u_int pl_syscall_code; | u_int pl_syscall_code; | ||||
u_int pl_syscall_narg; | u_int pl_syscall_narg; | ||||
}; | }; | ||||
#endif | #endif | ||||
/* Argument structure for PT_GET_SC_RET. */ | |||||
struct ptrace_sc_ret { | |||||
register_t sr_retval[2]; /* Only valid if sr_error == 0. */ | |||||
int sr_error; | |||||
kib: May be add some pad ints for future ? | |||||
jhbAuthorUnsubmitted Done Inline ActionsI don't think we will need them? I did just have a thought btw that we could perhaps choose to extend ptrace_lwpinfo with new fields for this instead of adding a new ptrace op since the return values are fixed size unlike syscall args. I think I probably still prefer a separate op, but I hadn't considered extending lwpinfo until just now. jhb: I don't think we will need them?
I did just have a thought btw that we could perhaps choose to… | |||||
}; | |||||
/* Argument structure for PT_VM_ENTRY. */ | /* Argument structure for PT_VM_ENTRY. */ | ||||
struct ptrace_vm_entry { | struct ptrace_vm_entry { | ||||
int pve_entry; /* Entry number used for iteration. */ | int pve_entry; /* Entry number used for iteration. */ | ||||
int pve_timestamp; /* Generation number of VM map. */ | int pve_timestamp; /* Generation number of VM map. */ | ||||
u_long pve_start; /* Start VA of range. */ | u_long pve_start; /* Start VA of range. */ | ||||
u_long pve_end; /* End VA of range (incl). */ | u_long pve_end; /* End VA of range (incl). */ | ||||
u_long pve_offset; /* Offset in backing object. */ | u_long pve_offset; /* Offset in backing object. */ | ||||
▲ Show 20 Lines • Show All 61 Lines • Show Last 20 Lines |
May be add some pad ints for future ?