diff options
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/linux/ptrace.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/uapi/linux/ptrace.h b/include/uapi/linux/ptrace.h index d5a1b8a492b9..a71b6e3b03eb 100644 --- a/include/uapi/linux/ptrace.h +++ b/include/uapi/linux/ptrace.h | |||
@@ -73,6 +73,41 @@ struct seccomp_metadata { | |||
73 | __u64 flags; /* Output: filter's flags */ | 73 | __u64 flags; /* Output: filter's flags */ |
74 | }; | 74 | }; |
75 | 75 | ||
76 | #define PTRACE_GET_SYSCALL_INFO 0x420e | ||
77 | #define PTRACE_SYSCALL_INFO_NONE 0 | ||
78 | #define PTRACE_SYSCALL_INFO_ENTRY 1 | ||
79 | #define PTRACE_SYSCALL_INFO_EXIT 2 | ||
80 | #define PTRACE_SYSCALL_INFO_SECCOMP 3 | ||
81 | |||
82 | struct ptrace_syscall_info { | ||
83 | __u8 op; /* PTRACE_SYSCALL_INFO_* */ | ||
84 | __u32 arch __attribute__((__aligned__(sizeof(__u32)))); | ||
85 | __u64 instruction_pointer; | ||
86 | __u64 stack_pointer; | ||
87 | union { | ||
88 | struct { | ||
89 | __u64 nr; | ||
90 | __u64 args[6]; | ||
91 | } entry; | ||
92 | struct { | ||
93 | __s64 rval; | ||
94 | __u8 is_error; | ||
95 | } exit; | ||
96 | struct { | ||
97 | __u64 nr; | ||
98 | __u64 args[6]; | ||
99 | __u32 ret_data; | ||
100 | } seccomp; | ||
101 | }; | ||
102 | }; | ||
103 | |||
104 | /* | ||
105 | * These values are stored in task->ptrace_message | ||
106 | * by tracehook_report_syscall_* to describe the current syscall-stop. | ||
107 | */ | ||
108 | #define PTRACE_EVENTMSG_SYSCALL_ENTRY 1 | ||
109 | #define PTRACE_EVENTMSG_SYSCALL_EXIT 2 | ||
110 | |||
76 | /* Read signals from a shared (process wide) queue */ | 111 | /* Read signals from a shared (process wide) queue */ |
77 | #define PTRACE_PEEKSIGINFO_SHARED (1 << 0) | 112 | #define PTRACE_PEEKSIGINFO_SHARED (1 << 0) |
78 | 113 | ||