mirror of
https://github.com/radareorg/radare2.git
synced 2025-03-06 21:39:38 +00:00
Sync ptrace wrap for musl (#11862)
This commit is contained in:
parent
297b097827
commit
39d413de0f
@ -22,6 +22,12 @@
|
||||
#include <semaphore.h>
|
||||
#include <sys/ptrace.h>
|
||||
|
||||
#ifdef __GLIBC__
|
||||
typedef enum __ptrace_request ptrace_wrap_ptrace_request;
|
||||
#else
|
||||
typedef int ptrace_wrap_ptrace_request;
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
PTRACE_WRAP_REQUEST_TYPE_STOP,
|
||||
PTRACE_WRAP_REQUEST_TYPE_PTRACE,
|
||||
@ -32,7 +38,7 @@ typedef struct ptrace_wrap_request_t {
|
||||
ptrace_wrap_request_type type;
|
||||
union {
|
||||
struct {
|
||||
enum __ptrace_request request;
|
||||
ptrace_wrap_ptrace_request request;
|
||||
pid_t pid;
|
||||
void *addr;
|
||||
void *data;
|
||||
@ -59,7 +65,7 @@ typedef struct ptrace_wrap_instance_t {
|
||||
|
||||
int ptrace_wrap_instance_start(ptrace_wrap_instance *inst);
|
||||
void ptrace_wrap_instance_stop(ptrace_wrap_instance *inst);
|
||||
long ptrace_wrap(ptrace_wrap_instance *inst, enum __ptrace_request request, pid_t pid, void *addr, void *data);
|
||||
long ptrace_wrap(ptrace_wrap_instance *inst, ptrace_wrap_ptrace_request request, pid_t pid, void *addr, void *data);
|
||||
pid_t ptrace_wrap_fork(ptrace_wrap_instance *inst, void (*child_callback)(void *), void *child_callback_user);
|
||||
|
||||
#endif //PTRACE_WRAP_H
|
||||
|
@ -92,7 +92,7 @@ stop:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
long ptrace_wrap(ptrace_wrap_instance *inst, enum __ptrace_request request, pid_t pid, void *addr, void *data) {
|
||||
long ptrace_wrap(ptrace_wrap_instance *inst, ptrace_wrap_ptrace_request request, pid_t pid, void *addr, void *data) {
|
||||
int _errno = 0;
|
||||
inst->request.type = PTRACE_WRAP_REQUEST_TYPE_PTRACE;
|
||||
inst->request.ptrace.request = request;
|
||||
@ -116,4 +116,4 @@ pid_t ptrace_wrap_fork(ptrace_wrap_instance *inst, void (*child_callback)(void *
|
||||
sem_wait (&inst->result_sem);
|
||||
errno = _errno;
|
||||
return inst->fork_result;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user