114 lines
3.3 KiB
Diff
114 lines
3.3 KiB
Diff
|
From 2d0c3a704afe6bdc7be129e9f9217ec1369c1bc8 Mon Sep 17 00:00:00 2001
|
||
|
From: James Hogan <james.hogan@imgtec.com>
|
||
|
Date: Fri, 30 Nov 2012 10:08:13 +0000
|
||
|
Subject: [PATCH] update ptrace.h to latest from glibc
|
||
|
|
||
|
Update libc/sysdeps/linux/common/sys/ptrace.h to latest from glibc's
|
||
|
sysdeps/unix/sysv/linux/sys/ptrace.h.
|
||
|
|
||
|
This adds definitions for operations:
|
||
|
- PTRACE_GETREGSET
|
||
|
- PTRACE_SETREGSET
|
||
|
- PTRACE_SEIZE
|
||
|
- PTRACE_INTERRUPT
|
||
|
- PTRACE_LISTEN
|
||
|
|
||
|
And adds flags:
|
||
|
- PTRACE_SEIZE_DEVEL
|
||
|
|
||
|
And adds event codes:
|
||
|
- PTRACE_EVENT_SECCOMP
|
||
|
|
||
|
This is to allow access to the generic interface for accessing
|
||
|
architecture specific regsets using the corresponding NT_* types,
|
||
|
required for new Linux kernel architecture ports.
|
||
|
|
||
|
Signed-off-by: James Hogan <james.hogan@imgtec.com>
|
||
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
||
|
---
|
||
|
libc/sysdeps/linux/common/sys/ptrace.h | 42 +++++++++++++++++++++++++++-----
|
||
|
1 file changed, 36 insertions(+), 6 deletions(-)
|
||
|
|
||
|
diff --git a/libc/sysdeps/linux/common/sys/ptrace.h b/libc/sysdeps/linux/common/sys/ptrace.h
|
||
|
index 08658f9..95b3fdf 100644
|
||
|
--- a/libc/sysdeps/linux/common/sys/ptrace.h
|
||
|
+++ b/libc/sysdeps/linux/common/sys/ptrace.h
|
||
|
@@ -1,5 +1,5 @@
|
||
|
/* `ptrace' debugger support interface. Linux version.
|
||
|
- Copyright (C) 1996-1999,2000,2006,2007 Free Software Foundation, Inc.
|
||
|
+ Copyright (C) 1996-2012 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
|
||
|
@@ -125,13 +125,40 @@ enum __ptrace_request
|
||
|
#define PT_GETSIGINFO PTRACE_GETSIGINFO
|
||
|
|
||
|
/* Set new siginfo for process. */
|
||
|
- PTRACE_SETSIGINFO = 0x4203
|
||
|
+ 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 {
|
||
|
+enum __ptrace_setoptions
|
||
|
+{
|
||
|
PTRACE_O_TRACESYSGOOD = 0x00000001,
|
||
|
PTRACE_O_TRACEFORK = 0x00000002,
|
||
|
PTRACE_O_TRACEVFORK = 0x00000004,
|
||
|
@@ -139,17 +166,20 @@ enum __ptrace_setoptions {
|
||
|
PTRACE_O_TRACEEXEC = 0x00000010,
|
||
|
PTRACE_O_TRACEVFORKDONE = 0x00000020,
|
||
|
PTRACE_O_TRACEEXIT = 0x00000040,
|
||
|
- PTRACE_O_MASK = 0x0000007f
|
||
|
+ PTRACE_O_TRACESECCOMP = 0x00000080,
|
||
|
+ PTRACE_O_MASK = 0x000000ff
|
||
|
};
|
||
|
|
||
|
/* Wait extended result codes for the above trace options. */
|
||
|
-enum __ptrace_eventcodes {
|
||
|
+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
|
||
|
+ PTRACE_EVENT_EXIT = 6,
|
||
|
+ PTRAVE_EVENT_SECCOMP = 7
|
||
|
};
|
||
|
|
||
|
/* Perform process tracing functions. REQUEST is one of the values
|
||
|
--
|
||
|
1.7.10.4
|
||
|
|