aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Lindqvist <anton@basename.se>2019-03-29 16:41:40 +0100
committerDmitry Vyukov <dvyukov@google.com>2019-04-01 12:39:02 +0200
commit4ba360c5fb559397d73ae924bd655fb49c2c776c (patch)
tree04f5baf2f16f57d90c091f2fcd4de8bf801feb08
parent44fe9159be031342cb956bde7dc3f3fa0340d9af (diff)
sys/openbsd: add common ioctl() commands
-rw-r--r--executor/defs.h2
-rw-r--r--executor/syscalls.h5
-rw-r--r--sys/openbsd/gen/amd64.go32
-rw-r--r--sys/openbsd/sys.txt7
-rw-r--r--sys/openbsd/sys_amd64.const6
5 files changed, 50 insertions, 2 deletions
diff --git a/executor/defs.h b/executor/defs.h
index abc55e1e7..1a2c2969b 100644
--- a/executor/defs.h
+++ b/executor/defs.h
@@ -130,7 +130,7 @@
#if GOARCH_amd64
#define GOARCH "amd64"
-#define SYZ_REVISION "fed31a69d794e7ddd91acc058a2fb8e2ca8ea87a"
+#define SYZ_REVISION "90be3ee14a0e5373833cca67711a81b67f77813d"
#define SYZ_EXECUTOR_USES_FORK_SERVER 1
#define SYZ_EXECUTOR_USES_SHMEM 1
#define SYZ_PAGE_SIZE 4096
diff --git a/executor/syscalls.h b/executor/syscalls.h
index 905e14105..4e18dbf72 100644
--- a/executor/syscalls.h
+++ b/executor/syscalls.h
@@ -14815,6 +14815,11 @@ const call_t syscalls[] = {
{"ioctl$BIOCSRSIG", 54},
{"ioctl$BIOCSRTIMEOUT", 54},
{"ioctl$BIOCVERSION", 54},
+ {"ioctl$FIOASYNC", 54},
+ {"ioctl$FIOGETOWN", 54},
+ {"ioctl$FIONBIO", 54},
+ {"ioctl$FIONREAD", 54},
+ {"ioctl$FIOSETOWN", 54},
{"ioctl$KDDISABIO", 54},
{"ioctl$KDENABIO", 54},
{"ioctl$KDGETLED", 54},
diff --git a/sys/openbsd/gen/amd64.go b/sys/openbsd/gen/amd64.go
index 9bc17ed72..5f649b8ba 100644
--- a/sys/openbsd/gen/amd64.go
+++ b/sys/openbsd/gen/amd64.go
@@ -1004,6 +1004,31 @@ var syscalls_amd64 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074020977},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_version", Dir: 1}}},
}},
+ {NR: 54, Name: "ioctl$FIOASYNC", CallName: "ioctl", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 2147772029},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
+ }},
+ {NR: 54, Name: "ioctl$FIOGETOWN", CallName: "ioctl", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074030203},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
+ {NR: 54, Name: "ioctl$FIONBIO", CallName: "ioctl", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 2147772030},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
+ }},
+ {NR: 54, Name: "ioctl$FIONREAD", CallName: "ioctl", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074030207},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
+ {NR: 54, Name: "ioctl$FIOSETOWN", CallName: "ioctl", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 2147772028},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
+ }},
{NR: 54, Name: "ioctl$KDDISABIO", CallName: "ioctl", MissingArgs: 1, Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_wsdisplay", FldName: "fd", TypeSize: 4}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 536890173},
@@ -2109,6 +2134,11 @@ var consts_amd64 = []ConstValue{
{Name: "EV_ONESHOT", Value: 16},
{Name: "EV_RECEIPT", Value: 64},
{Name: "FD_CLOEXEC", Value: 1},
+ {Name: "FIOASYNC", Value: 2147772029},
+ {Name: "FIOGETOWN", Value: 1074030203},
+ {Name: "FIONBIO", Value: 2147772030},
+ {Name: "FIONREAD", Value: 1074030207},
+ {Name: "FIOSETOWN", Value: 2147772028},
{Name: "F_DUPFD"},
{Name: "F_DUPFD_CLOEXEC", Value: 10},
{Name: "F_GETFD", Value: 1},
@@ -2581,4 +2611,4 @@ var consts_amd64 = []ConstValue{
{Name: "__MAP_NOREPLACE", Value: 2048},
}
-const revision_amd64 = "fed31a69d794e7ddd91acc058a2fb8e2ca8ea87a"
+const revision_amd64 = "90be3ee14a0e5373833cca67711a81b67f77813d"
diff --git a/sys/openbsd/sys.txt b/sys/openbsd/sys.txt
index 27562d786..b23b88429 100644
--- a/sys/openbsd/sys.txt
+++ b/sys/openbsd/sys.txt
@@ -2,6 +2,7 @@
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
include <sys/types.h>
+include <sys/ioctl.h>
include <sys/mman.h>
include <sys/stat.h>
include <fcntl.h>
@@ -38,6 +39,12 @@ fcntl$lock(fd fd, cmd flags[fcntl_lock], lock ptr[in, flock])
fcntl$getown(fd fd, cmd const[F_GETOWN]) pid
fcntl$setown(fd fd, cmd const[F_SETOWN], pid pid)
+ioctl$FIOASYNC(fd fd, cmd const[FIOASYNC], arg ptr[in, int32])
+ioctl$FIOGETOWN(fd fd, cmd const[FIOGETOWN], arg ptr[out, int32])
+ioctl$FIONBIO(fd fd, cmd const[FIONBIO], arg ptr[in, int32])
+ioctl$FIONREAD(fd fd, cmd const[FIONREAD], arg ptr[out, int32])
+ioctl$FIOSETOWN(fd fd, cmd const[FIOSETOWN], arg ptr[in, int32])
+
mknod(file ptr[in, filename], mode flags[mknod_mode], dev int32)
mknod$loop(file ptr[in, filename], mode flags[mknod_mode], dev proc[1792, 2])
mknodat(dirfd fd_dir, file ptr[in, filename], mode flags[mknod_mode], dev int32)
diff --git a/sys/openbsd/sys_amd64.const b/sys/openbsd/sys_amd64.const
index 4f1dabf7a..c1b7d725a 100644
--- a/sys/openbsd/sys_amd64.const
+++ b/sys/openbsd/sys_amd64.const
@@ -9,6 +9,11 @@ CLOCK_PROCESS_CPUTIME_ID = 2
CLOCK_REALTIME = 0
CLOCK_THREAD_CPUTIME_ID = 4
FD_CLOEXEC = 1
+FIOASYNC = 2147772029
+FIOGETOWN = 1074030203
+FIONBIO = 2147772030
+FIONREAD = 1074030207
+FIOSETOWN = 2147772028
F_DUPFD = 0
F_DUPFD_CLOEXEC = 10
F_GETFD = 1
@@ -93,6 +98,7 @@ SYS_getppid = 39
SYS_getrlimit = 194
SYS_getrusage = 19
SYS_getuid = 24
+SYS_ioctl = 54
SYS_lchown = 254
SYS_link = 9
SYS_linkat = 317