[PATCH RFC 1/9] Add seccomp-filter syscall flag
Paul Chaignon
paul.chaignon at gmail.com
Fri Aug 23 09:42:28 UTC 2019
This commit adds a new syscall flag for syscall that are traced by default
under seccomp-filter.
The syscallent changes can be reproduced with the following script:
git grep -l 'SEN(\(execv\|ipc\|socketcall\|ipc\)' |
xargs -r sed -i -e '/SEN(execv/ s/TP|/&TSD|/' \
-e '/SEN(ipc)/ s/TI/&|TSD/' -e '/SEN(socketcall)/ s/TD/&|TSD/' \
-e '/SEN(syscall)/ s/0,/TSD,/'
* sysent.h (TRACE_SECCOMP_DEFAULT): Define new flag.
* sysent_shorthand_defs.h (TSD): Define new flag shorthand.
* linux/32/syscallent.h: Add TSD flag.
* linux/64/syscallent.h: Likewise.
* linux/alpha/syscallent.h: Likewise.
* linux/arm/syscallent.h: Likewise.
* linux/avr32/syscallent.h: Likewise.
* linux/bfin/syscallent.h: Likewise.
* linux/hppa/syscallent.h: Likewise.
* linux/i386/syscallent.h: Likewise.
* linux/ia64/syscallent.h: Likewise.
* linux/m68k/syscallent.h: Likewise.
* linux/microblaze/syscallent.h: Likewise.
* linux/mips/syscallent-n32.h: Likewise.
* linux/mips/syscallent-n64.h: Likewise.
* linux/mips/syscallent-o32.h: Likewise.
* linux/powerpc/syscallent.h: Likewise.
* linux/powerpc64/syscallent.h: Likewise.
* linux/s390/syscallent.h: Likewise.
* linux/s390x/syscallent.h: Likewise.
* linux/sh/syscallent.h: Likewise.
* linux/sh64/syscallent.h: Likewise.
* linux/sparc/syscallent.h: Likewise.
* linux/sparc64/syscallent.h: Likewise.
* linux/x32/syscallent.h: Likewise.
* linux/x86_64/syscallent.h: Likewise.
* linux/xtensa/syscallent.h: Likewise.
Signed-off-by: Paul Chaignon <paul.chaignon at gmail.com>
---
linux/32/syscallent.h | 4 ++--
linux/64/syscallent.h | 4 ++--
linux/alpha/syscallent.h | 4 ++--
linux/arm/syscallent.h | 8 ++++----
linux/avr32/syscallent.h | 6 +++---
linux/bfin/syscallent.h | 8 ++++----
linux/hppa/syscallent.h | 4 ++--
linux/i386/syscallent.h | 8 ++++----
linux/ia64/syscallent.h | 4 ++--
linux/m68k/syscallent.h | 8 ++++----
linux/microblaze/syscallent.h | 8 ++++----
linux/mips/syscallent-n32.h | 4 ++--
linux/mips/syscallent-n64.h | 4 ++--
linux/mips/syscallent-o32.h | 10 +++++-----
linux/powerpc/syscallent.h | 8 ++++----
linux/powerpc64/syscallent.h | 8 ++++----
linux/s390/syscallent.h | 8 ++++----
linux/s390x/syscallent.h | 8 ++++----
linux/sh/syscallent.h | 8 ++++----
linux/sh64/syscallent.h | 8 ++++----
linux/sparc/syscallent.h | 10 +++++-----
linux/sparc64/syscallent.h | 10 +++++-----
linux/x32/syscallent.h | 4 ++--
linux/x86_64/syscallent.h | 4 ++--
linux/xtensa/syscallent.h | 4 ++--
sysent.h | 1 +
sysent_shorthand_defs.h | 2 ++
27 files changed, 85 insertions(+), 82 deletions(-)
diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h
index a08d5cc6..ce3f3e94 100644
--- a/linux/32/syscallent.h
+++ b/linux/32/syscallent.h
@@ -233,7 +233,7 @@
[218] = { 4, 0, SEN(request_key), "request_key" },
[219] = { 5, 0, SEN(keyctl), "keyctl" },
[220] = { 5, TP, SEN(clone), "clone" },
-[221] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[221] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[222] = { 6, TD|TM|SI, SEN(ARCH_mmap), "mmap2" },
[223] = { 6, TD, SEN(fadvise64_64), "fadvise64_64" },
[224] = { 2, TF, SEN(swapon), "swapon" },
@@ -278,7 +278,7 @@
[278] = { 3, 0, SEN(getrandom), "getrandom" },
[279] = { 2, TD, SEN(memfd_create), "memfd_create" },
[280] = { 3, TD, SEN(bpf), "bpf" },
-[281] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[281] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[282] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[283] = { 2, 0, SEN(membarrier), "membarrier" },
[284] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/64/syscallent.h b/linux/64/syscallent.h
index 9a531ada..5e5fea45 100644
--- a/linux/64/syscallent.h
+++ b/linux/64/syscallent.h
@@ -226,7 +226,7 @@
[218] = { 4, 0, SEN(request_key), "request_key" },
[219] = { 5, 0, SEN(keyctl), "keyctl" },
[220] = { 5, TP, SEN(clone), "clone" },
-[221] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[221] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[222] = { 6, TD|TM|SI, SEN(mmap), "mmap" },
[223] = { 4, TD, SEN(fadvise64), "fadvise64" },
[224] = { 2, TF, SEN(swapon), "swapon" },
@@ -271,7 +271,7 @@
[278] = { 3, 0, SEN(getrandom), "getrandom" },
[279] = { 2, TD, SEN(memfd_create), "memfd_create" },
[280] = { 3, TD, SEN(bpf), "bpf" },
-[281] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[281] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[282] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[283] = { 2, 0, SEN(membarrier), "membarrier" },
[284] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h
index f38d5243..b4026cc1 100644
--- a/linux/alpha/syscallent.h
+++ b/linux/alpha/syscallent.h
@@ -66,7 +66,7 @@
[ 56] = { 5, 0, SEN(printargs), "osf_revoke" }, /* not implemented */
[ 57] = { 2, TF, SEN(symlink), "symlink" },
[ 58] = { 3, TF, SEN(readlink), "readlink" },
-[ 59] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 59] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 60] = { 1, NF, SEN(umask), "umask" },
[ 61] = { 1, TF, SEN(chroot), "chroot" },
[ 62] = { 5, TD|TFST|TSTA, SEN(printargs), "osf_old_fstat" }, /* not implemented */
@@ -456,7 +456,7 @@
[510] = { 5, TD|TF, SEN(renameat2), "renameat2" },
[511] = { 3, 0, SEN(getrandom), "getrandom" },
[512] = { 2, TD, SEN(memfd_create), "memfd_create" },
-[513] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[513] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[514] = { 3, 0, SEN(seccomp), "seccomp" },
[515] = { 3, TD, SEN(bpf), "bpf" },
[516] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h
index 9fe6b27b..5c5c1254 100644
--- a/linux/arm/syscallent.h
+++ b/linux/arm/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -394,7 +394,7 @@
[384] = { 3, 0, SEN(getrandom), "getrandom" },
[385] = { 2, TD, SEN(memfd_create), "memfd_create" },
[386] = { 3, TD, SEN(bpf), "bpf" },
-[387] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[387] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[388] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[389] = { 2, 0, SEN(membarrier), "membarrier" },
[390] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/avr32/syscallent.h b/linux/avr32/syscallent.h
index 81d18d6b..eb764b20 100644
--- a/linux/avr32/syscallent.h
+++ b/linux/avr32/syscallent.h
@@ -17,7 +17,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -114,7 +114,7 @@
[105] = { 2, 0, SEN(getitimer), "getitimer" },
[106] = { 1, TF, SEN(swapoff), "swapoff" },
[107] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[108] = { 6, TI, SEN(ipc), "ipc" },
+[108] = { 6, TI|TSD, SEN(ipc), "ipc" },
[109] = { 4, TD|TN, SEN(sendfile), "sendfile" },
[110] = { 2, 0, SEN(setdomainname), "setdomainname" },
[111] = { 1, 0, SEN(uname), "uname" },
@@ -326,7 +326,7 @@
[317] = { 3, 0, SEN(getrandom), "getrandom" },
[318] = { 2, TD, SEN(memfd_create), "memfd_create" },
[319] = { 3, TD, SEN(bpf), "bpf" },
-[320] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[320] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[321] = { 4, TN, SEN(accept4), "accept4" },
[322] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[323] = { 2, 0, SEN(membarrier), "membarrier" },
diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h
index 8a3209d1..aabdb974 100644
--- a/linux/bfin/syscallent.h
+++ b/linux/bfin/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -398,4 +398,4 @@
[389] = { 3, 0, SEN(getrandom), "getrandom" },
[390] = { 2, TD, SEN(memfd_create), "memfd_create" },
[391] = { 3, TD, SEN(bpf), "bpf" },
-[392] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[392] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h
index 4cbde965..7227acfd 100644
--- a/linux/hppa/syscallent.h
+++ b/linux/hppa/syscallent.h
@@ -14,7 +14,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -345,7 +345,7 @@
[339] = { 3, 0, SEN(getrandom), "getrandom" },
[340] = { 2, TD, SEN(memfd_create), "memfd_create" },
[341] = { 3, TD, SEN(bpf), "bpf" },
-[342] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[342] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[343] = { 2, 0, SEN(membarrier), "membarrier" },
[344] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[345] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/i386/syscallent.h b/linux/i386/syscallent.h
index e2233ec9..e2a62985 100644
--- a/linux/i386/syscallent.h
+++ b/linux/i386/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -364,7 +364,7 @@
[355] = { 3, 0, SEN(getrandom), "getrandom" },
[356] = { 2, TD, SEN(memfd_create), "memfd_create" },
[357] = { 3, TD, SEN(bpf), "bpf" },
-[358] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[358] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[359] = { 3, TN, SEN(socket), "socket" },
[360] = { 4, TN, SEN(socketpair), "socketpair" },
[361] = { 3, TN, SEN(bind), "bind" },
diff --git a/linux/ia64/syscallent.h b/linux/ia64/syscallent.h
index 8a138860..eb1d7d89 100644
--- a/linux/ia64/syscallent.h
+++ b/linux/ia64/syscallent.h
@@ -29,7 +29,7 @@
[BASE_NR + 6] = { 2, TD|TF, SEN(creat), "creat" },
[BASE_NR + 7] = { 2, TF, SEN(link), "link" },
[BASE_NR + 8] = { 1, TF, SEN(unlink), "unlink" },
-[BASE_NR + 9] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[BASE_NR + 9] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[BASE_NR + 10] = { 1, TF, SEN(chdir), "chdir" },
[BASE_NR + 11] = { 1, TD, SEN(fchdir), "fchdir" },
[BASE_NR + 12] = { 2, TF, SEN(utimes), "utimes" },
@@ -338,7 +338,7 @@
[BASE_NR + 315] = { 3, 0, SEN(getrandom), "getrandom" },
[BASE_NR + 316] = { 2, TD, SEN(memfd_create), "memfd_create" },
[BASE_NR + 317] = { 3, TD, SEN(bpf), "bpf" },
-[BASE_NR + 318] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[BASE_NR + 318] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[BASE_NR + 319] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[BASE_NR + 320] = { 2, 0, SEN(membarrier), "membarrier" },
[BASE_NR + 321] = { 5, 0, SEN(kcmp), "kcmp" },
diff --git a/linux/m68k/syscallent.h b/linux/m68k/syscallent.h
index 708e89c9..72c56c0b 100644
--- a/linux/m68k/syscallent.h
+++ b/linux/m68k/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -361,7 +361,7 @@
[352] = { 3, 0, SEN(getrandom), "getrandom" },
[353] = { 2, TD, SEN(memfd_create), "memfd_create" },
[354] = { 3, TD, SEN(bpf), "bpf" },
-[355] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[355] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[356] = { 3, TN, SEN(socket), "socket" },
[357] = { 4, TN, SEN(socketpair), "socketpair" },
[358] = { 3, TN, SEN(bind), "bind" },
diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h
index dcb00305..40c19ce9 100644
--- a/linux/microblaze/syscallent.h
+++ b/linux/microblaze/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 6, TP, SEN(clone), "clone" },
@@ -394,7 +394,7 @@
[385] = { 3, 0, SEN(getrandom), "getrandom" },
[386] = { 2, TD, SEN(memfd_create), "memfd_create" },
[387] = { 3, TD, SEN(bpf), "bpf" },
-[388] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[388] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[389] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[390] = { 2, 0, SEN(membarrier), "membarrier" },
[391] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/mips/syscallent-n32.h b/linux/mips/syscallent-n32.h
index 143f8110..38fcfbc2 100644
--- a/linux/mips/syscallent-n32.h
+++ b/linux/mips/syscallent-n32.h
@@ -65,7 +65,7 @@
[BASE_NR + 54] = { 5, TN, SEN(getsockopt), "getsockopt" },
[BASE_NR + 55] = { 5, TP, SEN(clone), "clone" },
[BASE_NR + 56] = { 0, TP, SEN(fork), "fork" },
-[BASE_NR + 57] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[BASE_NR + 57] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[BASE_NR + 58] = { 1, TP|SE, SEN(exit), "exit" },
[BASE_NR + 59] = { 4, TP, SEN(wait4), "wait4" },
[BASE_NR + 60] = { 2, TS, SEN(kill), "kill" },
@@ -328,7 +328,7 @@
[BASE_NR + 317] = { 3, 0, SEN(getrandom), "getrandom" },
[BASE_NR + 318] = { 2, TD, SEN(memfd_create), "memfd_create" },
[BASE_NR + 319] = { 3, TD, SEN(bpf), "bpf" },
-[BASE_NR + 320] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[BASE_NR + 320] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[BASE_NR + 321] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[BASE_NR + 322] = { 2, 0, SEN(membarrier), "membarrier" },
[BASE_NR + 323] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/mips/syscallent-n64.h b/linux/mips/syscallent-n64.h
index 74076823..d8abb2b0 100644
--- a/linux/mips/syscallent-n64.h
+++ b/linux/mips/syscallent-n64.h
@@ -65,7 +65,7 @@
[BASE_NR + 54] = { 5, TN, SEN(getsockopt), "getsockopt" },
[BASE_NR + 55] = { 5, TP, SEN(clone), "clone" },
[BASE_NR + 56] = { 0, TP, SEN(fork), "fork" },
-[BASE_NR + 57] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[BASE_NR + 57] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[BASE_NR + 58] = { 1, TP|SE, SEN(exit), "exit" },
[BASE_NR + 59] = { 4, TP, SEN(wait4), "wait4" },
[BASE_NR + 60] = { 2, TS, SEN(kill), "kill" },
@@ -324,7 +324,7 @@
[BASE_NR + 313] = { 3, 0, SEN(getrandom), "getrandom" },
[BASE_NR + 314] = { 2, TD, SEN(memfd_create), "memfd_create" },
[BASE_NR + 315] = { 3, TD, SEN(bpf), "bpf" },
-[BASE_NR + 316] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[BASE_NR + 316] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[BASE_NR + 317] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[BASE_NR + 318] = { 2, 0, SEN(membarrier), "membarrier" },
[BASE_NR + 319] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/mips/syscallent-o32.h b/linux/mips/syscallent-o32.h
index 5a356fb8..650179d2 100644
--- a/linux/mips/syscallent-o32.h
+++ b/linux/mips/syscallent-o32.h
@@ -9,7 +9,7 @@
#if defined LINUX_MIPSO32
/* For an O32 strace, decode the o32 syscalls. */
# define SYS_syscall_subcall 4000
-[BASE_NR + 0] = { MA, 0, SEN(syscall), "syscall" }, /* start of Linux o32 */
+[BASE_NR + 0] = { MA, TSD, SEN(syscall), "syscall" }, /* start of Linux o32 */
[BASE_NR + 1] = { 1, TP|SE, SEN(exit), "exit" },
[BASE_NR + 2] = { 0, TP, SEN(fork), "fork" },
[BASE_NR + 3] = { 3, TD, SEN(read), "read" },
@@ -20,7 +20,7 @@
[BASE_NR + 8] = { 2, TD|TF, SEN(creat), "creat" },
[BASE_NR + 9] = { 2, TF, SEN(link), "link" },
[BASE_NR + 10] = { 1, TF, SEN(unlink), "unlink" },
-[BASE_NR + 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[BASE_NR + 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[BASE_NR + 12] = { 1, TF, SEN(chdir), "chdir" },
[BASE_NR + 13] = { 1, 0, SEN(time), "time" },
[BASE_NR + 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -111,7 +111,7 @@
[BASE_NR + 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[BASE_NR + 100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[BASE_NR + 101] = { 3, 0, SEN(ioperm), "ioperm" },
-[BASE_NR + 102] = { 2, TD, SEN(socketcall), "socketcall" },
+[BASE_NR + 102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[BASE_NR + 103] = { 3, 0, SEN(syslog), "syslog" },
[BASE_NR + 104] = { 3, 0, SEN(setitimer), "setitimer" },
[BASE_NR + 105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -126,7 +126,7 @@
[BASE_NR + 114] = { 4, TP, SEN(wait4), "wait4" },
[BASE_NR + 115] = { 1, TF, SEN(swapoff), "swapoff" },
[BASE_NR + 116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[BASE_NR + 117] = { 6, TI, SEN(ipc), "ipc" },
+[BASE_NR + 117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[BASE_NR + 118] = { 1, TD, SEN(fsync), "fsync" },
[BASE_NR + 119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[BASE_NR + 120] = { 5, TP, SEN(clone), "clone" },
@@ -365,7 +365,7 @@
[BASE_NR + 353] = { 3, 0, SEN(getrandom), "getrandom" },
[BASE_NR + 354] = { 2, TD, SEN(memfd_create), "memfd_create" },
[BASE_NR + 355] = { 3, TD, SEN(bpf), "bpf" },
-[BASE_NR + 356] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[BASE_NR + 356] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[BASE_NR + 357] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[BASE_NR + 358] = { 2, 0, SEN(membarrier), "membarrier" },
[BASE_NR + 359] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/powerpc/syscallent.h b/linux/powerpc/syscallent.h
index f4e11861..104a6e23 100644
--- a/linux/powerpc/syscallent.h
+++ b/linux/powerpc/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -369,7 +369,7 @@
[359] = { 3, 0, SEN(getrandom), "getrandom" },
[360] = { 2, TD, SEN(memfd_create), "memfd_create" },
[361] = { 3, TD, SEN(bpf), "bpf" },
-[362] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[362] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[363] = { 0, 0, SEN(printargs), "switch_endian" },
[364] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[365] = { 2, 0, SEN(membarrier), "membarrier" },
diff --git a/linux/powerpc64/syscallent.h b/linux/powerpc64/syscallent.h
index edf56388..06c223a5 100644
--- a/linux/powerpc64/syscallent.h
+++ b/linux/powerpc64/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -364,7 +364,7 @@
[359] = { 3, 0, SEN(getrandom), "getrandom" },
[360] = { 2, TD, SEN(memfd_create), "memfd_create" },
[361] = { 3, TD, SEN(bpf), "bpf" },
-[362] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[362] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[363] = { 0, 0, SEN(printargs), "switch_endian" },
[364] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[365] = { 2, 0, SEN(membarrier), "membarrier" },
diff --git a/linux/s390/syscallent.h b/linux/s390/syscallent.h
index e83dc863..826a3c62 100644
--- a/linux/s390/syscallent.h
+++ b/linux/s390/syscallent.h
@@ -20,7 +20,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -111,7 +111,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -126,7 +126,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 5, TI, SEN(ipc), "ipc" },
+[117] = { 5, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -363,7 +363,7 @@
[351] = { 3, TD, SEN(bpf), "bpf" },
[352] = { 3, 0, SEN(s390_pci_mmio_write), "s390_pci_mmio_write" },
[353] = { 3, 0, SEN(s390_pci_mmio_read), "s390_pci_mmio_read" },
-[354] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[354] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[355] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[356] = { 2, 0, SEN(membarrier), "membarrier" },
[357] = { 5, TN, SEN(recvmmsg_time32), "recvmmsg" },
diff --git a/linux/s390x/syscallent.h b/linux/s390x/syscallent.h
index aed5f72a..7c35e7f9 100644
--- a/linux/s390x/syscallent.h
+++ b/linux/s390x/syscallent.h
@@ -19,7 +19,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -105,7 +105,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -120,7 +120,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 5, TI, SEN(ipc), "ipc" },
+[117] = { 5, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -347,7 +347,7 @@
[351] = { 3, TD, SEN(bpf), "bpf" },
[352] = { 3, 0, SEN(s390_pci_mmio_write), "s390_pci_mmio_write" },
[353] = { 3, 0, SEN(s390_pci_mmio_read), "s390_pci_mmio_read" },
-[354] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[354] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[355] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[356] = { 2, 0, SEN(membarrier), "membarrier" },
[357] = { 5, TN, SEN(recvmmsg_time64), "recvmmsg" },
diff --git a/linux/sh/syscallent.h b/linux/sh/syscallent.h
index 8a5edd3d..5ed56927 100644
--- a/linux/sh/syscallent.h
+++ b/linux/sh/syscallent.h
@@ -20,7 +20,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -111,7 +111,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -126,7 +126,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -382,7 +382,7 @@
[373] = { 3, 0, SEN(getrandom), "getrandom" },
[374] = { 2, TD, SEN(memfd_create), "memfd_create" },
[375] = { 3, TD, SEN(bpf), "bpf" },
-[376] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[376] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[377] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[378] = { 2, 0, SEN(membarrier), "membarrier" },
[379] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/sh64/syscallent.h b/linux/sh64/syscallent.h
index 9f2d6e37..12b8ffc0 100644
--- a/linux/sh64/syscallent.h
+++ b/linux/sh64/syscallent.h
@@ -18,7 +18,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 1, 0, SEN(time), "time" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -109,7 +109,7 @@
[ 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
[100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
[101] = { 3, 0, SEN(ioperm), "ioperm" },
-[102] = { 2, TD, SEN(socketcall), "socketcall" },
+[102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[103] = { 3, 0, SEN(syslog), "syslog" },
[104] = { 3, 0, SEN(setitimer), "setitimer" },
[105] = { 2, 0, SEN(getitimer), "getitimer" },
@@ -124,7 +124,7 @@
[114] = { 4, TP, SEN(wait4), "wait4" },
[115] = { 1, TF, SEN(swapoff), "swapoff" },
[116] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[117] = { 6, TI, SEN(ipc), "ipc" },
+[117] = { 6, TI|TSD, SEN(ipc), "ipc" },
[118] = { 1, TD, SEN(fsync), "fsync" },
[119] = { 0, TS, SEN(sigreturn), "sigreturn" },
[120] = { 5, TP, SEN(clone), "clone" },
@@ -391,7 +391,7 @@
[384] = { 3, 0, SEN(getrandom), "getrandom" },
[385] = { 2, TD, SEN(memfd_create), "memfd_create" },
[386] = { 3, TD, SEN(bpf), "bpf" },
-[387] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[387] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[388] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[389] = { 2, 0, SEN(membarrier), "membarrier" },
[390] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/sparc/syscallent.h b/linux/sparc/syscallent.h
index 8a49b686..a10fbc03 100644
--- a/linux/sparc/syscallent.h
+++ b/linux/sparc/syscallent.h
@@ -16,7 +16,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 2, TF|TP|SE|SI, SEN(execv), "execv" },
+[ 11] = { 2, TF|TP|TSD|SE|SI, SEN(execv), "execv" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 3, TF, SEN(chown16), "chown" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -64,7 +64,7 @@
[ 56] = { 6, TD|TM|SI, SEN(mmap_4koff), "mmap2" },
[ 57] = { 2, TF, SEN(symlink), "symlink" },
[ 58] = { 3, TF, SEN(readlink), "readlink" },
-[ 59] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 59] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 60] = { 1, NF, SEN(umask), "umask" },
[ 61] = { 1, TF, SEN(chroot), "chroot" },
[ 62] = { 2, TD|TFST|TSTA, SEN(fstat), "fstat" },
@@ -211,7 +211,7 @@
[203] = { 1, TF, SEN(uselib), "uselib" },
[204] = { 3, TD, SEN(readdir), "readdir" },
[205] = { 4, TD, SEN(readahead), "readahead" },
-[206] = { 2, TD, SEN(socketcall), "socketcall" },
+[206] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[207] = { 3, 0, SEN(syslog), "syslog" },
[208] = { 4, 0, SEN(lookup_dcookie), "lookup_dcookie" },
[209] = { 5, TD, SEN(fadvise64), "fadvise64" },
@@ -220,7 +220,7 @@
[212] = { 3, TP, SEN(waitpid), "waitpid" },
[213] = { 1, TF, SEN(swapoff), "swapoff" },
[214] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[215] = { 6, TI, SEN(ipc), "ipc" },
+[215] = { 6, TI|TSD, SEN(ipc), "ipc" },
[216] = { 0, TS, SEN(sigreturn), "sigreturn" },
[217] = { 5, TP, SEN(clone), "clone" },
[218] = { 2, 0, SEN(ioprio_get), "ioprio_get" },
@@ -355,7 +355,7 @@
[347] = { 3, 0, SEN(getrandom), "getrandom" },
[348] = { 2, TD, SEN(memfd_create), "memfd_create" },
[349] = { 3, TD, SEN(bpf), "bpf" },
-[350] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[350] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[351] = { 2, 0, SEN(membarrier), "membarrier" },
[352] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[353] = { 3, TN, SEN(bind), "bind" },
diff --git a/linux/sparc64/syscallent.h b/linux/sparc64/syscallent.h
index fe8e75e9..41046df9 100644
--- a/linux/sparc64/syscallent.h
+++ b/linux/sparc64/syscallent.h
@@ -16,7 +16,7 @@
[ 8] = { 2, TD|TF, SEN(creat), "creat" },
[ 9] = { 2, TF, SEN(link), "link" },
[ 10] = { 1, TF, SEN(unlink), "unlink" },
-[ 11] = { 2, TF|TP|SE|SI, SEN(execv), "execv" },
+[ 11] = { 2, TF|TP|TSD|SE|SI, SEN(execv), "execv" },
[ 12] = { 1, TF, SEN(chdir), "chdir" },
[ 13] = { 3, TF, SEN(chown), "chown" },
[ 14] = { 3, TF, SEN(mknod), "mknod" },
@@ -63,7 +63,7 @@
[ 56] = { },
[ 57] = { 2, TF, SEN(symlink), "symlink" },
[ 58] = { 3, TF, SEN(readlink), "readlink" },
-[ 59] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 59] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 60] = { 1, NF, SEN(umask), "umask" },
[ 61] = { 1, TF, SEN(chroot), "chroot" },
[ 62] = { 2, TD|TFST|TSTA, SEN(fstat), "fstat" },
@@ -209,7 +209,7 @@
[203] = { 1, TF, SEN(uselib), "uselib" },
[204] = { 3, TD, SEN(readdir), "readdir" },
[205] = { 3, TD, SEN(readahead), "readahead" },
-[206] = { 2, TD, SEN(socketcall), "socketcall" },
+[206] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
[207] = { 3, 0, SEN(syslog), "syslog" },
[208] = { 3, 0, SEN(lookup_dcookie), "lookup_dcookie" },
[209] = { 4, TD, SEN(fadvise64), "fadvise64" },
@@ -218,7 +218,7 @@
[212] = { 3, TP, SEN(waitpid), "waitpid" },
[213] = { 1, TF, SEN(swapoff), "swapoff" },
[214] = { 1, 0, SEN(sysinfo), "sysinfo" },
-[215] = { 6, TI, SEN(ipc), "ipc" },
+[215] = { 6, TI|TSD, SEN(ipc), "ipc" },
[216] = { 0, TS, SEN(sigreturn), "sigreturn" },
[217] = { 5, TP, SEN(clone), "clone" },
[218] = { 2, 0, SEN(ioprio_get), "ioprio_get" },
@@ -353,7 +353,7 @@
[347] = { 3, 0, SEN(getrandom), "getrandom" },
[348] = { 2, TD, SEN(memfd_create), "memfd_create" },
[349] = { 3, TD, SEN(bpf), "bpf" },
-[350] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[350] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[351] = { 2, 0, SEN(membarrier), "membarrier" },
[352] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[353] = { 3, TN, SEN(bind), "bind" },
diff --git a/linux/x32/syscallent.h b/linux/x32/syscallent.h
index 530e7e93..07058f98 100644
--- a/linux/x32/syscallent.h
+++ b/linux/x32/syscallent.h
@@ -354,7 +354,7 @@
[517] = { 6, CST|TN, SEN(recvfrom), "recvfrom" },
[518] = { 3, CST|TN, SEN(sendmsg), "sendmsg" },
[519] = { 3, CST|TN, SEN(recvmsg), "recvmsg" },
-[520] = { 3, CST|TF|TP|SE|SI,SEN(execve), "execve" },
+[520] = { 3, CST|TF|TP|TSD|SE|SI,SEN(execve), "execve" },
[521] = { 4, CST, SEN(ptrace), "ptrace" },
[522] = { 2, CST|TS, SEN(rt_sigpending), "rt_sigpending" },
[523] = { 4, CST|TS, SEN(rt_sigtimedwait_time64), "rt_sigtimedwait" },
@@ -379,6 +379,6 @@
[542] = { 5, CST|TN, SEN(getsockopt), "getsockopt" },
[543] = { 2, CST|TM, SEN(io_setup), "io_setup" },
[544] = { 3, CST, SEN(io_submit), "io_submit" },
-[545] = { 5, CST|TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[545] = { 5, CST|TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[546] = { 5, TD, SEN(preadv2), "preadv2" },
[547] = { 5, TD, SEN(pwritev2), "pwritev2" },
diff --git a/linux/x86_64/syscallent.h b/linux/x86_64/syscallent.h
index 40becd82..ae9fc5eb 100644
--- a/linux/x86_64/syscallent.h
+++ b/linux/x86_64/syscallent.h
@@ -64,7 +64,7 @@
[ 56] = { 5, TP, SEN(clone), "clone" },
[ 57] = { 0, TP, SEN(fork), "fork" },
[ 58] = { 0, TP, SEN(vfork), "vfork" },
-[ 59] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[ 59] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[ 60] = { 1, TP|SE, SEN(exit), "exit" },
[ 61] = { 4, TP, SEN(wait4), "wait4" },
[ 62] = { 2, TS, SEN(kill), "kill" },
@@ -327,7 +327,7 @@
[319] = { 2, TD, SEN(memfd_create), "memfd_create" },
[320] = { 5, TD, SEN(kexec_file_load), "kexec_file_load" },
[321] = { 3, TD, SEN(bpf), "bpf" },
-[322] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[322] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[323] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[324] = { 2, 0, SEN(membarrier), "membarrier" },
[325] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/linux/xtensa/syscallent.h b/linux/xtensa/syscallent.h
index dd2795d3..3e1a4ac1 100644
--- a/linux/xtensa/syscallent.h
+++ b/linux/xtensa/syscallent.h
@@ -117,7 +117,7 @@
[114] = { 4, TD|TN, SEN(sendfile64), "sendfile64" },
[115] = { 4, TN, SEN(sendmmsg), "sendmmsg" },
[116] = { 5, TP, SEN(clone), "clone" },
-[117] = { 3, TF|TP|SE|SI, SEN(execve), "execve" },
+[117] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
[118] = { 1, TP|SE, SEN(exit), "exit" },
[119] = { 1, TP|SE, SEN(exit), "exit_group" },
[120] = { 0, PU|NF, SEN(getpid), "getpid" },
@@ -336,7 +336,7 @@
[338] = { 3, 0, SEN(getrandom), "getrandom" },
[339] = { 2, TD, SEN(memfd_create), "memfd_create" },
[340] = { 3, TD, SEN(bpf), "bpf" },
-[341] = { 5, TD|TF|TP|SE|SI, SEN(execveat), "execveat" },
+[341] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
[342] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
[343] = { 2, 0, SEN(membarrier), "membarrier" },
[344] = { 3, TM, SEN(mlock2), "mlock2" },
diff --git a/sysent.h b/sysent.h
index 336a30bf..60aeb03d 100644
--- a/sysent.h
+++ b/sysent.h
@@ -36,5 +36,6 @@ typedef struct sysent {
# define TRACE_FSTAT 00400000 /* Trace *fstat{,at}{,64} syscalls. */
# define TRACE_STAT_LIKE 01000000 /* Trace *{,l,f}stat{,x,at}{,64} syscalls. */
# define TRACE_PURE 02000000 /* Trace getter syscalls with no arguments. */
+# define TRACE_SECCOMP_DEFAULT 04000000 /* Syscall is traced by seccomp-filter by default. */
#endif /* !STRACE_SYSENT_H */
diff --git a/sysent_shorthand_defs.h b/sysent_shorthand_defs.h
index 009f9a4b..6ce74a48 100644
--- a/sysent_shorthand_defs.h
+++ b/sysent_shorthand_defs.h
@@ -27,6 +27,7 @@
# define SI 0
# define SE 0
# define CST 0
+# define TSD 0
# define SEN(a) 0, 0
#else /* !STRACE_TESTS_H */
@@ -51,6 +52,7 @@
# define SI MEMORY_MAPPING_CHANGE
# define SE STACKTRACE_CAPTURE_ON_ENTER
# define CST COMPAT_SYSCALL_TYPES
+# define TSD TRACE_SECCOMP_DEFAULT
/* SEN(a) is defined elsewhere */
#endif
--
2.17.1
More information about the Strace-devel
mailing list