| 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 |
| |