16 #include <sys/ptrace.h>
70 #if __arm64__ || __aarch64__
71 #define RZ_DEBUG_REG_T struct user_pt_regs
78 #define RZ_DEBUG_REG_T struct pt_regs
84 #if __i386__ || __x86_64__
85 #define RZ_DEBUG_REG_T struct user_regs_struct
86 #elif __s390x__ || __s390__
87 #define RZ_DEBUG_REG_T struct _user_regs_struct
90 50
struct _user_regs_struct
92 52
struct _user_psw_struct psw;
93 53
unsigned long gprs[16];
94 54
unsigned int acrs[16];
95 55
unsigned long orig_gpr2;
96 56
struct _user_fpregs_struct fp_regs;
97 57
struct _user_per_struct per_info;
98 58
unsigned long ieee_instruction_pointer;
101 #elif __arm64__ || __aarch64__
102 #include <asm/ptrace.h>
104 #define NT_PRSTATUS 1
106 #define RZ_DEBUG_REG_T struct user_pt_regs
108 #define RZ_DEBUG_REG_T struct user_regs
110 struct powerpc_regs_t {
111 unsigned long gpr[32];
114 unsigned long orig_gpr3;
130 unsigned long result;
132 #define RZ_DEBUG_REG_T struct powerpc_regs_t
133 #elif __riscv || __riscv__ || __riscv64__
135 #include <sys/ucontext.h>
136 #include <asm/ptrace.h>
140 #define RZ_DEBUG_REG_T struct user_regs_struct
145 #include <sys/ucontext.h>
146 typedef ut64 mips64_regs_t[274];
147 #define RZ_DEBUG_REG_T mips64_regs_t
152 #if !defined(TRAP_BRKPT) && !defined(TRAP_TRACE)
155 #define TRAP_BRANCH 3
156 #define TRAP_HWBKPT 4
178 int match_pid(
const void *pid_o,
const void *th_o);
static RzILOpEffect * msr(cs_insn *insn, bool is_thumb)
RzBinInfo * info(RzBinFile *bf)
static static fork const void static count static fd const char const char static newpath const char static path const char path
static static fork const void static count static fd link
static void list(RzEgg *egg)
static static fork const void static count static fd const char const char static newpath char char char static envp time_t static t const char static mode static whence const char static dir time_t static t unsigned static seconds const char struct utimbuf static buf static inc pid
static const char struct stat static buf struct stat static buf static vhangup int status
char * linux_reg_profile(RzDebug *dbg)
int linux_handle_signals(RzDebug *dbg, int tid)
int linux_attach(RzDebug *dbg, int pid)
RzDebugPid * fill_pid_info(const char *info, const char *path, int tid)
int linux_dbg_wait(RzDebug *dbg, int pid)
RzList * linux_pid_list(int pid, RzList *list)
int match_pid(const void *pid_o, const void *th_o)
bool linux_attach_new_process(RzDebug *dbg, int pid)
bool linux_stop_threads(RzDebug *dbg, int except)
int linux_reg_read(RzDebug *dbg, int type, ut8 *buf, int size)
RzList * linux_thread_list(RzDebug *dbg, int pid, RzList *list)
bool linux_set_options(RzDebug *dbg, int pid)
RzList * linux_desc_list(int pid)
RzDebugInfo * linux_info(RzDebug *dbg, const char *arg)
RzDebugReasonType linux_ptrace_event(RzDebug *dbg, int pid, int status, bool dowait)
int linux_step(RzDebug *dbg)
int linux_reg_write(RzDebug *dbg, int type, const ut8 *buf, int size)
bool linux_select(RzDebug *dbg, int pid, int tid)
ut64(WINAPI *w32_GetEnabledXStateFeatures)()