From ff352060fe8704df40ce296f97768a6b4bf7295d Mon Sep 17 00:00:00 2001 From: James Hogan Date: Fri, 30 Nov 2012 10:08:13 +0000 Subject: 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 Signed-off-by: Mike Frysinger --- libc/sysdeps/linux/common/sys/ptrace.h | 42 +++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 6 deletions(-) (limited to 'libc/sysdeps/linux/common/sys') diff --git a/libc/sysdeps/linux/common/sys/ptrace.h b/libc/sysdeps/linux/common/sys/ptrace.h index cf5ae64e3..7a7998a6c 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 @@ -124,13 +124,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, @@ -138,17 +165,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 -- cgit v1.2.3