|
|
@@ -0,0 +1,96 @@
|
|
|
+--- a/libc/sysdeps/linux/powerpc/sys/ptrace.h
|
|
|
++++ b/libc/sysdeps/linux/powerpc/sys/ptrace.h
|
|
|
+@@ -1,5 +1,5 @@
|
|
|
+ /* `ptrace' debugger support interface. Linux version.
|
|
|
+- Copyright (C) 2001 Free Software Foundation, Inc.
|
|
|
++ Copyright (C) 2001, 2006, 2007, 2011 Free Software Foundation, Inc.
|
|
|
+ This file is part of the GNU C Library.
|
|
|
+
|
|
|
+ The GNU C Library is free software; you can redistribute it and/or
|
|
|
+@@ -13,9 +13,8 @@
|
|
|
+ Lesser General Public License for more details.
|
|
|
+
|
|
|
+ You should have received a copy of the GNU Lesser General Public
|
|
|
+- License along with the GNU C Library; if not, write to the Free
|
|
|
+- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
|
+- 02111-1307 USA. */
|
|
|
++ License along with the GNU C Library; if not, see
|
|
|
++ <http://www.gnu.org/licenses/>. */
|
|
|
+
|
|
|
+ #ifndef _SYS_PTRACE_H
|
|
|
+ #define _SYS_PTRACE_H 1
|
|
|
+@@ -79,8 +78,73 @@ enum __ptrace_request
|
|
|
+ #define PT_DETACH PTRACE_DETACH
|
|
|
+
|
|
|
+ /* Continue and stop at the next (return from) syscall. */
|
|
|
+- PTRACE_SYSCALL = 24
|
|
|
++ PTRACE_SYSCALL = 24,
|
|
|
+ #define PT_SYSCALL PTRACE_SYSCALL
|
|
|
++
|
|
|
++ /* Set ptrace filter options. */
|
|
|
++ PTRACE_SETOPTIONS = 0x4200,
|
|
|
++#define PT_SETOPTIONS PTRACE_SETOPTIONS
|
|
|
++
|
|
|
++ /* Get last ptrace message. */
|
|
|
++ PTRACE_GETEVENTMSG = 0x4201,
|
|
|
++#define PT_GETEVENTMSG PTRACE_GETEVENTMSG
|
|
|
++
|
|
|
++ /* Get siginfo for process. */
|
|
|
++ PTRACE_GETSIGINFO = 0x4202,
|
|
|
++#define PT_GETSIGINFO PTRACE_GETSIGINFO
|
|
|
++
|
|
|
++ /* Set new siginfo for process. */
|
|
|
++ PTRACE_SETSIGINFO = 0x4203,
|
|
|
++#define PT_SETSIGINFO PTRACE_SETSIGINFO
|
|
|
++
|
|
|
++ /* Get register content. */
|
|
|
++ PTRACE_GETREGSET = 0x4204,
|
|
|
++#define PTRACE_GETREGSET PTRACE_GETREGSET
|
|
|
++
|
|
|
++ /* Set register content. */
|
|
|
++ PTRACE_SETREGSET = 0x4205,
|
|
|
++#define PTRACE_SETREGSET PTRACE_SETREGSET
|
|
|
++
|
|
|
++ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect
|
|
|
++ signal or group stop state. */
|
|
|
++ PTRACE_SEIZE = 0x4206,
|
|
|
++#define PTRACE_SEIZE PTRACE_SEIZE
|
|
|
++
|
|
|
++ /* Trap seized tracee. */
|
|
|
++ PTRACE_INTERRUPT = 0x4207,
|
|
|
++#define PTRACE_INTERRUPT PTRACE_INTERRUPT
|
|
|
++
|
|
|
++ /* Wait for next group event. */
|
|
|
++ PTRACE_LISTEN = 0x4208
|
|
|
++};
|
|
|
++
|
|
|
++
|
|
|
++/* Flag for PTRACE_LISTEN. */
|
|
|
++enum __ptrace_flags
|
|
|
++{
|
|
|
++ PTRACE_SEIZE_DEVEL = 0x80000000
|
|
|
++};
|
|
|
++
|
|
|
++/* Options set using PTRACE_SETOPTIONS. */
|
|
|
++enum __ptrace_setoptions {
|
|
|
++ PTRACE_O_TRACESYSGOOD = 0x00000001,
|
|
|
++ PTRACE_O_TRACEFORK = 0x00000002,
|
|
|
++ PTRACE_O_TRACEVFORK = 0x00000004,
|
|
|
++ PTRACE_O_TRACECLONE = 0x00000008,
|
|
|
++ PTRACE_O_TRACEEXEC = 0x00000010,
|
|
|
++ PTRACE_O_TRACEVFORKDONE = 0x00000020,
|
|
|
++ PTRACE_O_TRACEEXIT = 0x00000040,
|
|
|
++ PTRACE_O_MASK = 0x0000007f
|
|
|
++};
|
|
|
++
|
|
|
++/* Wait extended result codes for the above trace options. */
|
|
|
++enum __ptrace_eventcodes {
|
|
|
++ PTRACE_EVENT_FORK = 1,
|
|
|
++ PTRACE_EVENT_VFORK = 2,
|
|
|
++ PTRACE_EVENT_CLONE = 3,
|
|
|
++ PTRACE_EVENT_EXEC = 4,
|
|
|
++ PTRACE_EVENT_VFORK_DONE = 5,
|
|
|
++ PTRACE_EVENT_EXIT = 6
|
|
|
+ };
|
|
|
+
|
|
|
+ /* Perform process tracing functions. REQUEST is one of the values
|