about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2021-03-07 20:50:17 +0000
committerRich Felker <dalias@aerifal.cx>2022-03-08 17:19:38 -0500
commitf35b99b38721c0e76152069254b642dd345da784 (patch)
tree89cc1d506db69acfeea6d62c320dcae16a2dbdf6 /include
parentb21f3ded780cc8fd8e510c99aeaf4a453d8c8a22 (diff)
downloadmusl-f35b99b38721c0e76152069254b642dd345da784.tar.gz
musl-f35b99b38721c0e76152069254b642dd345da784.tar.xz
musl-f35b99b38721c0e76152069254b642dd345da784.zip
sys/prctl.h: add PR_SET_SYSCALL_USER_DISPATCH from linux v5.11
see

  linux commit 1446e1df9eb183fdf81c3f0715402f1d7595d4cb
  kernel: Implement selective syscall userspace redirection

  linux commit 36a6c843fd0d8e02506681577e96dabd203dd8e8
  entry: Use different define for selector variable in SUD

redirect syscalls to a userspace handler via SIGSYS, except for a specific
range of code. can be toggled via a memory write to a selector variable.
mainly for wine.
Diffstat (limited to 'include')
-rw-r--r--include/sys/prctl.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sys/prctl.h b/include/sys/prctl.h
index 4ba73f42..3f0254c7 100644
--- a/include/sys/prctl.h
+++ b/include/sys/prctl.h
@@ -168,6 +168,12 @@ struct prctl_mm_map {
 #define PR_SET_IO_FLUSHER 57
 #define PR_GET_IO_FLUSHER 58
 
+#define PR_SET_SYSCALL_USER_DISPATCH 59
+#define PR_SYS_DISPATCH_OFF 0
+#define PR_SYS_DISPATCH_ON 1
+#define SYSCALL_DISPATCH_FILTER_ALLOW 0
+#define SYSCALL_DISPATCH_FILTER_BLOCK 1
+
 int prctl (int, ...);
 
 #ifdef __cplusplus