diff options
author | Elliott Hughes <enh@google.com> | 2015-06-16 16:04:35 -0700 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2015-06-16 16:59:49 -0700 |
commit | d49850d6abb1b70c34be99a46e383a6a878ae19e (patch) | |
tree | 4624cfeaeee8dc953c53694f3c405e5dad5f7329 /libc/include | |
parent | 848276051a24266e1eacf2e508692c62d5a6176d (diff) | |
download | bionic-d49850d6abb1b70c34be99a46e383a6a878ae19e.zip bionic-d49850d6abb1b70c34be99a46e383a6a878ae19e.tar.gz bionic-d49850d6abb1b70c34be99a46e383a6a878ae19e.tar.bz2 |
Fixes for building gdbserver (and gdb) out of the box.
Bug: http://b/21695943
Change-Id: Iadb600b2ae619515d7038a4db9bf464ba31adb36
(cherry picked from commit 895241efbba344c1590b76fcada89c48f4743cf2)
Diffstat (limited to 'libc/include')
-rw-r--r-- | libc/include/sys/procfs.h | 3 | ||||
-rw-r--r-- | libc/include/sys/ptrace.h | 24 | ||||
-rw-r--r-- | libc/include/sys/wait.h | 3 |
3 files changed, 28 insertions, 2 deletions
diff --git a/libc/include/sys/procfs.h b/libc/include/sys/procfs.h index ef5b25f..b5b1a46 100644 --- a/libc/include/sys/procfs.h +++ b/libc/include/sys/procfs.h @@ -42,6 +42,9 @@ typedef fpregset_t elf_fpregset_t; typedef elf_gregset_t prgregset_t; typedef elf_fpregset_t prfpregset_t; +typedef pid_t lwpid_t; +typedef void* psaddr_t; + __END_DECLS #endif /* _SYS_PROCFS_H_ */ diff --git a/libc/include/sys/ptrace.h b/libc/include/sys/ptrace.h index 8bba9fe..4b881e7 100644 --- a/libc/include/sys/ptrace.h +++ b/libc/include/sys/ptrace.h @@ -34,11 +34,31 @@ __BEGIN_DECLS -/* glibc uses different names from the kernel for these two... */ +/* glibc uses different PTRACE_ names from the kernel for these two... */ #define PTRACE_POKEUSER PTRACE_POKEUSR #define PTRACE_PEEKUSER PTRACE_PEEKUSR -extern long ptrace(int, ...); +/* glibc exports a different set of PT_ names too... */ +#define PT_TRACE_ME PTRACE_TRACEME +#define PT_READ_I PTRACE_PEEKTEXT +#define PT_READ_D PTRACE_PEEKDATA +#define PT_READ_U PTRACE_PEEKUSR +#define PT_WRITE_I PTRACE_POKETEXT +#define PT_WRITE_D PTRACE_POKEDATA +#define PT_WRITE_U PTRACE_POKEUSR +#define PT_CONT PTRACE_CONT +#define PT_KILL PTRACE_KILL +#define PT_STEP PTRACE_SINGLESTEP +#define PT_GETFPREGS PTRACE_GETFPREGS +#define PT_ATTACH PTRACE_ATTACH +#define PT_DETACH PTRACE_DETACH +#define PT_SYSCALL PTRACE_SYSCALL +#define PT_SETOPTIONS PTRACE_SETOPTIONS +#define PT_GETEVENTMSG PTRACE_GETEVENTMSG +#define PT_GETSIGINFO PTRACE_GETSIGINFO +#define PT_SETSIGINFO PTRACE_SETSIGINFO + +long ptrace(int, ...); __END_DECLS diff --git a/libc/include/sys/wait.h b/libc/include/sys/wait.h index 8d9a5f6..12b7308 100644 --- a/libc/include/sys/wait.h +++ b/libc/include/sys/wait.h @@ -45,6 +45,9 @@ __BEGIN_DECLS #define WIFSTOPPED(s) (WTERMSIG(s) == 0x7f) #define WIFSIGNALED(s) (WTERMSIG((s)+1) >= 2) +#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig)) +#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) + extern pid_t wait(int *); extern pid_t waitpid(pid_t, int *, int); extern pid_t wait4(pid_t, int *, int, struct rusage *); |