aboutsummaryrefslogtreecommitdiffstats
path: root/executor/syscalls.h
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-03-15 21:16:13 +0100
committerDmitry Vyukov <dvyukov@google.com>2020-03-17 21:19:13 +0100
commit924f7606047a430a9b313c135b782e1e8f852bec (patch)
tree649fbf186af5268815f16884875f92d948ad57b0 /executor/syscalls.h
parent5de34a784c610ab08888c185dd0c09f542d62d4f (diff)
pkg/compiler: ensure consistency of syscall argument types
Ensure that we don't have conflicting sizes for the same argument of the same syscall, e.g.: foo$1(a int16) foo$2(a int32) This is useful for several reasons: - we will be able avoid morphing syscalls into other syscalls - we will be able to figure out more precise sizes for args (lots of them are implicitly intptr, which is the largest type on most important arches) - found few bugs in linux descriptions Update #477 Update #502
Diffstat (limited to 'executor/syscalls.h')
-rw-r--r--executor/syscalls.h110
1 files changed, 52 insertions, 58 deletions
diff --git a/executor/syscalls.h b/executor/syscalls.h
index c2af7244e..054c62f0b 100644
--- a/executor/syscalls.h
+++ b/executor/syscalls.h
@@ -2610,7 +2610,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 54},
{"ioctl$CAPI_REGISTER", 54},
{"ioctl$CAPI_SET_FLAGS", 54},
- {"ioctl$CDROMAUDIOBUFSIZ", 54},
{"ioctl$CDROMCLOSETRAY", 54},
{"ioctl$CDROMEJECT", 54},
{"ioctl$CDROMEJECT_SW", 54},
@@ -5957,7 +5956,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 16},
{"ioctl$CAPI_REGISTER", 16},
{"ioctl$CAPI_SET_FLAGS", 16},
- {"ioctl$CDROMAUDIOBUFSIZ", 16},
{"ioctl$CDROMCLOSETRAY", 16},
{"ioctl$CDROMEJECT", 16},
{"ioctl$CDROMEJECT_SW", 16},
@@ -9301,7 +9299,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 54},
{"ioctl$CAPI_REGISTER", 54},
{"ioctl$CAPI_SET_FLAGS", 54},
- {"ioctl$CDROMAUDIOBUFSIZ", 54},
{"ioctl$CDROMCLOSETRAY", 54},
{"ioctl$CDROMEJECT", 54},
{"ioctl$CDROMEJECT_SW", 54},
@@ -12594,7 +12591,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 29},
{"ioctl$CAPI_REGISTER", 29},
{"ioctl$CAPI_SET_FLAGS", 29},
- {"ioctl$CDROMAUDIOBUFSIZ", 29},
{"ioctl$CDROMCLOSETRAY", 29},
{"ioctl$CDROMEJECT", 29},
{"ioctl$CDROMEJECT_SW", 29},
@@ -15882,7 +15878,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 5015},
{"ioctl$CAPI_REGISTER", 5015},
{"ioctl$CAPI_SET_FLAGS", 5015},
- {"ioctl$CDROMAUDIOBUFSIZ", 5015},
{"ioctl$CDROMCLOSETRAY", 5015},
{"ioctl$CDROMEJECT", 5015},
{"ioctl$CDROMEJECT_SW", 5015},
@@ -19086,7 +19081,6 @@ const call_t syscalls[] = {
{"ioctl$CAPI_NCCI_OPENCOUNT", 54},
{"ioctl$CAPI_REGISTER", 54},
{"ioctl$CAPI_SET_FLAGS", 54},
- {"ioctl$CDROMAUDIOBUFSIZ", 54},
{"ioctl$CDROMCLOSETRAY", 54},
{"ioctl$CDROMEJECT", 54},
{"ioctl$CDROMEJECT_SW", 54},
@@ -22424,16 +22418,6 @@ const call_t syscalls[] = {
{"foo$fmt4", 0},
{"foo$fmt5", 0},
{"minimize$0", 0},
- {"mutate$array", 0},
- {"mutate$array2", 0},
- {"mutate$buffer", 0},
- {"mutate$flags", 0},
- {"mutate$flags2", 0},
- {"mutate$flags3", 0},
- {"mutate$integer", 0},
- {"mutate$integer2", 0},
- {"mutate$rangedbuffer", 0},
- {"mutate$union", 0},
{"mutate0", 0},
{"mutate1", 0},
{"mutate2", 0},
@@ -22443,6 +22427,16 @@ const call_t syscalls[] = {
{"mutate6", 0},
{"mutate7", 0},
{"mutate8", 0},
+ {"mutate_array", 0},
+ {"mutate_array2", 0},
+ {"mutate_buffer", 0},
+ {"mutate_flags", 0},
+ {"mutate_flags2", 0},
+ {"mutate_flags3", 0},
+ {"mutate_integer", 0},
+ {"mutate_integer2", 0},
+ {"mutate_rangedbuffer", 0},
+ {"mutate_union", 0},
{"prctl$PR_SET_SECCOMP", 0},
{"seccomp", 0},
{"serialize0", 0},
@@ -22480,8 +22474,6 @@ const call_t syscalls[] = {
{"test$csum_ipv6_udp", 0},
{"test$end0", 0},
{"test$end1", 0},
- {"test$excessive_args1", 0},
- {"test$excessive_args2", 0},
{"test$excessive_fields1", 0},
{"test$hint_data", 0},
{"test$int", 0},
@@ -22492,7 +22484,6 @@ const call_t syscalls[] = {
{"test$length12", 0},
{"test$length13", 0},
{"test$length14", 0},
- {"test$length15", 0},
{"test$length16", 0},
{"test$length17", 0},
{"test$length18", 0},
@@ -22548,6 +22539,9 @@ const call_t syscalls[] = {
{"test$union1", 0},
{"test$union2", 0},
{"test$vma0", 0},
+ {"test_excessive_args1", 0},
+ {"test_excessive_args2", 0},
+ {"test_length15", 0},
{"unsupported$0", 0},
{"unsupported$1", 0},
@@ -22567,16 +22561,6 @@ const call_t syscalls[] = {
{"foo$fmt4", 0},
{"foo$fmt5", 0},
{"minimize$0", 0},
- {"mutate$array", 0},
- {"mutate$array2", 0},
- {"mutate$buffer", 0},
- {"mutate$flags", 0},
- {"mutate$flags2", 0},
- {"mutate$flags3", 0},
- {"mutate$integer", 0},
- {"mutate$integer2", 0},
- {"mutate$rangedbuffer", 0},
- {"mutate$union", 0},
{"mutate0", 0},
{"mutate1", 0},
{"mutate2", 0},
@@ -22586,6 +22570,16 @@ const call_t syscalls[] = {
{"mutate6", 0},
{"mutate7", 0},
{"mutate8", 0},
+ {"mutate_array", 0},
+ {"mutate_array2", 0},
+ {"mutate_buffer", 0},
+ {"mutate_flags", 0},
+ {"mutate_flags2", 0},
+ {"mutate_flags3", 0},
+ {"mutate_integer", 0},
+ {"mutate_integer2", 0},
+ {"mutate_rangedbuffer", 0},
+ {"mutate_union", 0},
{"prctl$PR_SET_SECCOMP", 0},
{"seccomp", 0},
{"serialize0", 0},
@@ -22623,8 +22617,6 @@ const call_t syscalls[] = {
{"test$csum_ipv6_udp", 0},
{"test$end0", 0},
{"test$end1", 0},
- {"test$excessive_args1", 0},
- {"test$excessive_args2", 0},
{"test$excessive_fields1", 0},
{"test$hint_data", 0},
{"test$int", 0},
@@ -22635,7 +22627,6 @@ const call_t syscalls[] = {
{"test$length12", 0},
{"test$length13", 0},
{"test$length14", 0},
- {"test$length15", 0},
{"test$length16", 0},
{"test$length17", 0},
{"test$length18", 0},
@@ -22691,6 +22682,9 @@ const call_t syscalls[] = {
{"test$union1", 0},
{"test$union2", 0},
{"test$vma0", 0},
+ {"test_excessive_args1", 0},
+ {"test_excessive_args2", 0},
+ {"test_length15", 0},
{"unsupported$0", 0},
{"unsupported$1", 0},
@@ -22711,16 +22705,6 @@ const call_t syscalls[] = {
{"foo$fmt4", 0},
{"foo$fmt5", 0},
{"minimize$0", 0},
- {"mutate$array", 0},
- {"mutate$array2", 0},
- {"mutate$buffer", 0},
- {"mutate$flags", 0},
- {"mutate$flags2", 0},
- {"mutate$flags3", 0},
- {"mutate$integer", 0},
- {"mutate$integer2", 0},
- {"mutate$rangedbuffer", 0},
- {"mutate$union", 0},
{"mutate0", 0},
{"mutate1", 0},
{"mutate2", 0},
@@ -22730,6 +22714,16 @@ const call_t syscalls[] = {
{"mutate6", 0},
{"mutate7", 0},
{"mutate8", 0},
+ {"mutate_array", 0},
+ {"mutate_array2", 0},
+ {"mutate_buffer", 0},
+ {"mutate_flags", 0},
+ {"mutate_flags2", 0},
+ {"mutate_flags3", 0},
+ {"mutate_integer", 0},
+ {"mutate_integer2", 0},
+ {"mutate_rangedbuffer", 0},
+ {"mutate_union", 0},
{"prctl$PR_SET_SECCOMP", 0},
{"seccomp", 0},
{"serialize0", 0},
@@ -22767,8 +22761,6 @@ const call_t syscalls[] = {
{"test$csum_ipv6_udp", 0},
{"test$end0", 0},
{"test$end1", 0},
- {"test$excessive_args1", 0},
- {"test$excessive_args2", 0},
{"test$excessive_fields1", 0},
{"test$hint_data", 0},
{"test$int", 0},
@@ -22779,7 +22771,6 @@ const call_t syscalls[] = {
{"test$length12", 0},
{"test$length13", 0},
{"test$length14", 0},
- {"test$length15", 0},
{"test$length16", 0},
{"test$length17", 0},
{"test$length18", 0},
@@ -22835,6 +22826,9 @@ const call_t syscalls[] = {
{"test$union1", 0},
{"test$union2", 0},
{"test$vma0", 0},
+ {"test_excessive_args1", 0},
+ {"test_excessive_args2", 0},
+ {"test_length15", 0},
{"unsupported$0", 0},
{"unsupported$1", 0},
@@ -22854,16 +22848,6 @@ const call_t syscalls[] = {
{"foo$fmt4", 0},
{"foo$fmt5", 0},
{"minimize$0", 0},
- {"mutate$array", 0},
- {"mutate$array2", 0},
- {"mutate$buffer", 0},
- {"mutate$flags", 0},
- {"mutate$flags2", 0},
- {"mutate$flags3", 0},
- {"mutate$integer", 0},
- {"mutate$integer2", 0},
- {"mutate$rangedbuffer", 0},
- {"mutate$union", 0},
{"mutate0", 0},
{"mutate1", 0},
{"mutate2", 0},
@@ -22873,6 +22857,16 @@ const call_t syscalls[] = {
{"mutate6", 0},
{"mutate7", 0},
{"mutate8", 0},
+ {"mutate_array", 0},
+ {"mutate_array2", 0},
+ {"mutate_buffer", 0},
+ {"mutate_flags", 0},
+ {"mutate_flags2", 0},
+ {"mutate_flags3", 0},
+ {"mutate_integer", 0},
+ {"mutate_integer2", 0},
+ {"mutate_rangedbuffer", 0},
+ {"mutate_union", 0},
{"prctl$PR_SET_SECCOMP", 0},
{"seccomp", 0},
{"serialize0", 0},
@@ -22910,8 +22904,6 @@ const call_t syscalls[] = {
{"test$csum_ipv6_udp", 0},
{"test$end0", 0},
{"test$end1", 0},
- {"test$excessive_args1", 0},
- {"test$excessive_args2", 0},
{"test$excessive_fields1", 0},
{"test$hint_data", 0},
{"test$int", 0},
@@ -22922,7 +22914,6 @@ const call_t syscalls[] = {
{"test$length12", 0},
{"test$length13", 0},
{"test$length14", 0},
- {"test$length15", 0},
{"test$length16", 0},
{"test$length17", 0},
{"test$length18", 0},
@@ -22978,6 +22969,9 @@ const call_t syscalls[] = {
{"test$union1", 0},
{"test$union2", 0},
{"test$vma0", 0},
+ {"test_excessive_args1", 0},
+ {"test_excessive_args2", 0},
+ {"test_length15", 0},
{"unsupported$0", 0},
{"unsupported$1", 0},