diff options
| -rw-r--r-- | executor/executor.cc | 19 | ||||
| -rw-r--r-- | executor/syscalls.h | 97 | ||||
| -rw-r--r-- | manager/main.go | 16 | ||||
| -rw-r--r-- | prog/analysis.go | 38 | ||||
| -rw-r--r-- | prog/consts.go | 78 | ||||
| -rw-r--r-- | prog/mutation.go | 4 | ||||
| -rw-r--r-- | prog/prio.go | 2 | ||||
| -rw-r--r-- | prog/prog.go | 2 | ||||
| -rw-r--r-- | prog/rand.go | 4 | ||||
| -rw-r--r-- | sys/decl.go | 9 | ||||
| -rw-r--r-- | sys/sys.go | 97 | ||||
| -rw-r--r-- | sys/sys.txt | 244 | ||||
| -rw-r--r-- | sysgen/parser.go | 36 | ||||
| -rw-r--r-- | sysgen/sysgen.go | 9 |
14 files changed, 614 insertions, 41 deletions
diff --git a/executor/executor.cc b/executor/executor.cc index 2c2aa9841..4fb75660c 100644 --- a/executor/executor.cc +++ b/executor/executor.cc @@ -20,6 +20,7 @@ #include <sys/mman.h> #include <sys/wait.h> #include <linux/futex.h> +#include <sys/ioctl.h> #include <pthread.h> #include <grp.h> #include <algorithm> @@ -177,7 +178,7 @@ int main() kill(pid, SIGKILL); } int status = 0; - if (waitpid(pid, &status, 0) != pid) + if (waitpid(pid, &status, __WALL|WUNTRACED) != pid) fail("waitpid failed"); status = WEXITSTATUS(status); if (status == kFailStatus) @@ -405,7 +406,21 @@ void execute_call(thread_t* th) fail("inconsistent number of arguments"); cover_reset(th); - th->res = syscall(call->sys_nr, th->args[0], th->args[1], th->args[2], th->args[3], th->args[4], th->args[5]); + switch (call->sys_nr) { + default: { + th->res = syscall(call->sys_nr, th->args[0], th->args[1], th->args[2], th->args[3], th->args[4], th->args[5]); + break; + } + case __NR_syz_openpts: { + int ptyno = 0; + if (ioctl(th->args[0], TIOCGPTN, &ptyno) == 0) { + char buf[128]; + sprintf(buf, "/dev/pts/%d", ptyno); + th->res = open(buf, th->args[1], 0); + } else { + th->res = -1; + } + }} int errno0 = errno; th->cover_size = cover_read(th); diff --git a/executor/syscalls.h b/executor/syscalls.h index 30cbf8d8e..1a7ff5d81 100644 --- a/executor/syscalls.h +++ b/executor/syscalls.h @@ -10,6 +10,8 @@ struct call_t { #define __NR_memfd_create 319 #endif +#define __NR_syz_openpts 1000001 + call_t syscalls[] = { {"open", __NR_open}, {"openat", __NR_openat}, @@ -409,4 +411,99 @@ call_t syscalls[] = { {"ioctl$kdbus_list", __NR_ioctl}, {"ioctl$kdbus_match_add", __NR_ioctl}, {"ioctl$kdbus_match_remove", __NR_ioctl}, + {"open$ptmx", __NR_open}, + {"syz_openpts", __NR_syz_openpts}, + {"ioctl$TCGETS", __NR_ioctl}, + {"ioctl$TCSETS", __NR_ioctl}, + {"ioctl$TCSETSW", __NR_ioctl}, + {"ioctl$TCSETSF", __NR_ioctl}, + {"ioctl$TCGETA", __NR_ioctl}, + {"ioctl$TCSETA", __NR_ioctl}, + {"ioctl$TCSETAW", __NR_ioctl}, + {"ioctl$TCSETAF", __NR_ioctl}, + {"ioctl$TIOCGLCKTRMIOS", __NR_ioctl}, + {"ioctl$TIOCSLCKTRMIOS", __NR_ioctl}, + {"ioctl$TIOCGWINSZ", __NR_ioctl}, + {"ioctl$TIOCSWINSZ", __NR_ioctl}, + {"ioctl$TCSBRK", __NR_ioctl}, + {"ioctl$TCSBRKP", __NR_ioctl}, + {"ioctl$TIOCSBRK", __NR_ioctl}, + {"ioctl$TIOCCBRK", __NR_ioctl}, + {"ioctl$TCXONC", __NR_ioctl}, + {"ioctl$FIONREAD", __NR_ioctl}, + {"ioctl$TIOCOUTQ", __NR_ioctl}, + {"ioctl$TCFLSH", __NR_ioctl}, + {"ioctl$TIOCSTI", __NR_ioctl}, + {"ioctl$TIOCCONS", __NR_ioctl}, + {"ioctl$TIOCSCTTY", __NR_ioctl}, + {"ioctl$TIOCNOTTY", __NR_ioctl}, + {"ioctl$TIOCGPGRP", __NR_ioctl}, + {"ioctl$TIOCSPGRP", __NR_ioctl}, + {"ioctl$TIOCGSID", __NR_ioctl}, + {"ioctl$TIOCEXCL", __NR_ioctl}, + {"ioctl$TIOCNXCL", __NR_ioctl}, + {"ioctl$TIOCGETD", __NR_ioctl}, + {"ioctl$TIOCSETD", __NR_ioctl}, + {"ioctl$TIOCPKT", __NR_ioctl}, + {"ioctl$TIOCMGET", __NR_ioctl}, + {"ioctl$TIOCMSET", __NR_ioctl}, + {"ioctl$TIOCMBIC", __NR_ioctl}, + {"ioctl$TIOCMBIS", __NR_ioctl}, + {"ioctl$TIOCGSOFTCAR", __NR_ioctl}, + {"ioctl$TIOCSSOFTCAR", __NR_ioctl}, + {"ioctl$TIOCTTYGSTRUCT", __NR_ioctl}, + {"ioctl$KDGETLED", __NR_ioctl}, + {"ioctl$KDSETLED", __NR_ioctl}, + {"ioctl$KDGKBLED", __NR_ioctl}, + {"ioctl$KDSKBLED", __NR_ioctl}, + {"ioctl$KDGKBTYPE", __NR_ioctl}, + {"ioctl$KDADDIO", __NR_ioctl}, + {"ioctl$KDDELIO", __NR_ioctl}, + {"ioctl$KDENABIO", __NR_ioctl}, + {"ioctl$KDDISABIO", __NR_ioctl}, + {"ioctl$KDSETMODE", __NR_ioctl}, + {"ioctl$KDGETMODE", __NR_ioctl}, + {"ioctl$KDMKTONE", __NR_ioctl}, + {"ioctl$KIOCSOUND", __NR_ioctl}, + {"ioctl$GIO_CMAP", __NR_ioctl}, + {"ioctl$PIO_CMAP", __NR_ioctl}, + {"ioctl$GIO_FONT", __NR_ioctl}, + {"ioctl$GIO_FONTX", __NR_ioctl}, + {"ioctl$PIO_FONT", __NR_ioctl}, + {"ioctl$PIO_FONTX", __NR_ioctl}, + {"ioctl$PIO_FONTRESET", __NR_ioctl}, + {"ioctl$GIO_SCRNMAP", __NR_ioctl}, + {"ioctl$GIO_UNISCRNMAP", __NR_ioctl}, + {"ioctl$PIO_SCRNMAP", __NR_ioctl}, + {"ioctl$PIO_UNISCRNMAP", __NR_ioctl}, + {"ioctl$GIO_UNIMAP", __NR_ioctl}, + {"ioctl$PIO_UNIMAP", __NR_ioctl}, + {"ioctl$PIO_UNIMAPCLR", __NR_ioctl}, + {"ioctl$KDGKBMODE", __NR_ioctl}, + {"ioctl$KDSKBMODE", __NR_ioctl}, + {"ioctl$KDGKBMETA", __NR_ioctl}, + {"ioctl$KDSKBMETA", __NR_ioctl}, + {"ioctl$KDGKBENT", __NR_ioctl}, + {"ioctl$KDGKBSENT", __NR_ioctl}, + {"ioctl$KDSKBSENT", __NR_ioctl}, + {"ioctl$KDGKBDIACR", __NR_ioctl}, + {"ioctl$KDGETKEYCODE", __NR_ioctl}, + {"ioctl$KDSETKEYCODE", __NR_ioctl}, + {"ioctl$KDSIGACCEPT", __NR_ioctl}, + {"ioctl$VT_OPENQRY", __NR_ioctl}, + {"ioctl$VT_GETMODE", __NR_ioctl}, + {"ioctl$VT_SETMODE", __NR_ioctl}, + {"ioctl$VT_GETSTATE", __NR_ioctl}, + {"ioctl$VT_RELDISP", __NR_ioctl}, + {"ioctl$VT_ACTIVATE", __NR_ioctl}, + {"ioctl$VT_WAITACTIVE", __NR_ioctl}, + {"ioctl$VT_DISALLOCATE", __NR_ioctl}, + {"ioctl$VT_RESIZE", __NR_ioctl}, + {"ioctl$VT_RESIZEX", __NR_ioctl}, + {"ioctl$TIOCLINUX2", __NR_ioctl}, + {"ioctl$TIOCLINUX3", __NR_ioctl}, + {"ioctl$TIOCLINUX4", __NR_ioctl}, + {"ioctl$TIOCLINUX5", __NR_ioctl}, + {"ioctl$TIOCLINUX6", __NR_ioctl}, + {"ioctl$TIOCLINUX7", __NR_ioctl}, }; diff --git a/manager/main.go b/manager/main.go index bc7d185c2..b539e1f5c 100644 --- a/manager/main.go +++ b/manager/main.go @@ -10,6 +10,7 @@ import ( "fmt" "io/ioutil" "log" + "strings" "github.com/google/syzkaller/sys" "github.com/google/syzkaller/vm" @@ -52,6 +53,7 @@ func main() { fmt.Fprintf(buf, ",%v", c) } enabledSyscalls = buf.String()[1:] + logf(1, "enabled syscalls: %v", enabledSyscalls) } vmCfg := &vm.Config{ Workdir: cfg.Workdir, @@ -105,6 +107,16 @@ func parseConfig() (*Config, map[int]bool) { fatalf("invalid config param count: %v, want (1, 1000]", cfg.Count) } + match := func(call *sys.Call, str string) bool { + if str == call.CallName || str == call.Name { + return true + } + if len(str) > 1 && str[len(str)-1] == '*' && strings.HasPrefix(call.Name, str[:len(str)-1]) { + return true + } + return false + } + var syscalls map[int]bool if len(cfg.Enable_Syscalls) != 0 || len(cfg.Disable_Syscalls) != 0 { syscalls = make(map[int]bool) @@ -112,7 +124,7 @@ func parseConfig() (*Config, map[int]bool) { for _, c := range cfg.Enable_Syscalls { n := 0 for _, call := range sys.Calls { - if call.CallName == c { + if match(call, c) { syscalls[call.ID] = true n++ } @@ -129,7 +141,7 @@ func parseConfig() (*Config, map[int]bool) { for _, c := range cfg.Disable_Syscalls { n := 0 for _, call := range sys.Calls { - if call.CallName == c { + if match(call, c) { delete(syscalls, call.ID) n++ } diff --git a/prog/analysis.go b/prog/analysis.go index e1d106d10..ed295ee9a 100644 --- a/prog/analysis.go +++ b/prog/analysis.go @@ -230,28 +230,34 @@ func sanitizeCall(c *Call) { if flags.Val&MREMAP_MAYMOVE != 0 { flags.Val |= MREMAP_FIXED } - case "mknod": - mode := c.Args[1] - if mode.Kind != ArgConst { - panic("mknod mode is not const") - } - // Char and block devices read/write io ports, kernel memory and do other nasty things. - if mode.Val != S_IFREG && mode.Val != S_IFIFO && mode.Val != S_IFSOCK { - mode.Val = S_IFIFO - } + // not required if executor drops privileges + /* + case "mknod": + mode := c.Args[1] + if mode.Kind != ArgConst { + panic("mknod mode is not const") + } + // Char and block devices read/write io ports, kernel memory and do other nasty things. + if mode.Val != S_IFREG && mode.Val != S_IFIFO && mode.Val != S_IFSOCK { + mode.Val = S_IFIFO + } + */ case "syslog": cmd := c.Args[0] // These disable console output, but we need it. if cmd.Val == SYSLOG_ACTION_CONSOLE_OFF || cmd.Val == SYSLOG_ACTION_CONSOLE_ON { cmd.Val = SYSLOG_ACTION_SIZE_UNREAD } - case "ioctl": - cmd := c.Args[1] - // Freeze kills machine. Though, it is an interesting functions, - // so we need to test it somehow (TODO). - if uint32(cmd.Val) == uint32(FIFREEZE) { - cmd.Val = FITHAW - } + // not required if executor drops privileges + /* + case "ioctl": + cmd := c.Args[1] + // Freeze kills machine. Though, it is an interesting functions, + // so we need to test it somehow (TODO). + if uint32(cmd.Val) == uint32(FIFREEZE) { + cmd.Val = FITHAW + } + */ case "ptrace": // PTRACE_TRACEME leads to unkillable processes, see: // https://groups.google.com/forum/#!topic/syzkaller/uGzwvhlCXAw diff --git a/prog/consts.go b/prog/consts.go index 9df6be072..ab99a5e5f 100644 --- a/prog/consts.go +++ b/prog/consts.go @@ -123,6 +123,7 @@ const ( FIOCLEX = 21585 FIONBIO = 21537 FIONCLEX = 21584 + FIONREAD = 21531 FIOQSIZE = 21600 FITHAW = 3221510264 FS_IOC_FIEMAP = 3223348747 @@ -167,6 +168,12 @@ const ( GETPID = 11 GETVAL = 12 GETZCNT = 15 + GIO_CMAP = 19312 + GIO_FONT = 19296 + GIO_FONTX = 19307 + GIO_SCRNMAP = 19264 + GIO_UNIMAP = 19302 + GIO_UNISCRNMAP = 19305 IN_ACCESS = 1 IN_ATTRIB = 4 IN_CLOEXEC = 524288 @@ -288,6 +295,7 @@ const ( KCMP_SIGHAND = 4 KCMP_SYSVSEM = 6 KCMP_VM = 1 + KDADDIO = 19252 KDBUS_ATTACH_ANY = 18446744073709551615 KDBUS_ATTACH_AUDIT = 4096 KDBUS_ATTACH_AUXGROUPS = 8 @@ -389,6 +397,27 @@ const ( KDBUS_RECV_RETURN_DROPPED_MSGS = 2 KDBUS_RECV_RETURN_INCOMPLETE_FDS = 1 KDBUS_SEND_SYNC_REPLY = 1 + KDDELIO = 19253 + KDDISABIO = 19255 + KDENABIO = 19254 + KDGETKEYCODE = 19276 + KDGETLED = 19249 + KDGETMODE = 19259 + KDGKBDIACR = 19274 + KDGKBENT = 19270 + KDGKBLED = 19300 + KDGKBMETA = 19298 + KDGKBMODE = 19268 + KDGKBSENT = 19272 + KDGKBTYPE = 19251 + KDSETKEYCODE = 19277 + KDSETLED = 19250 + KDSETMODE = 19258 + KDSIGACCEPT = 19278 + KDSKBLED = 19301 + KDSKBMETA = 19299 + KDSKBMODE = 19269 + KDSKBSENT = 19273 KEXEC_ARCH_386 = 196608 KEXEC_ARCH_ARM = 2621440 KEXEC_ARCH_IA_64 = 3276800 @@ -441,6 +470,7 @@ const ( KEY_SPEC_THREAD_KEYRING = 18446744073709551615 KEY_SPEC_USER_KEYRING = 18446744073709551612 KEY_SPEC_USER_SESSION_KEYRING = 18446744073709551611 + KIOCSOUND = 19247 LOCK_EX = 2 LOCK_NB = 4 LOCK_SH = 1 @@ -565,6 +595,13 @@ const ( O_SYNC = 1052672 O_TRUNC = 512 O_WRONLY = 1 + PIO_FONT = 19297 + PIO_FONTRESET = 19309 + PIO_FONTX = 19308 + PIO_SCRNMAP = 19265 + PIO_UNIMAP = 19303 + PIO_UNIMAPCLR = 19304 + PIO_UNISCRNMAP = 19306 POSIX_FADV_DONTNEED = 4 POSIX_FADV_NOREUSE = 5 POSIX_FADV_NORMAL = 0 @@ -831,6 +868,9 @@ const ( S_IXGRP = 8 S_IXOTH = 1 S_IXUSR = 64 + TCFLSH = 21515 + TCGETA = 21509 + TCGETS = 21505 TCP_CORK = 3 TCP_DEFER_ACCEPT = 9 TCP_INFO = 11 @@ -843,12 +883,50 @@ const ( TCP_QUICKACK = 12 TCP_SYNCNT = 7 TCP_WINDOW_CLAMP = 10 + TCSBRK = 21513 + TCSBRKP = 21541 + TCSETS = 21506 + TCSETSF = 21508 + TCXONC = 21514 TFD_CLOEXEC = 524288 TFD_NONBLOCK = 2048 TFD_TIMER_ABSTIME = 1 TIMER_ABSTIME = 1 + TIOCCBRK = 21544 + TIOCCONS = 21533 + TIOCEXCL = 21516 + TIOCGETD = 21540 + TIOCGLCKTRMIOS = 21590 + TIOCGPGRP = 21519 + TIOCGSOFTCAR = 21529 + TIOCGWINSZ = 21523 + TIOCLINUX = 21532 + TIOCMBIC = 21527 + TIOCMGET = 21525 + TIOCMSET = 21528 + TIOCNOTTY = 21538 + TIOCNXCL = 21517 + TIOCOUTQ = 21521 + TIOCPKT = 21536 + TIOCSBRK = 21543 + TIOCSCTTY = 21518 + TIOCSETD = 21539 + TIOCSLCKTRMIOS = 21591 + TIOCSSOFTCAR = 21530 + TIOCSTI = 21522 + TIOCSWINSZ = 21524 UDP_CORK = 1 UMOUNT_NOFOLLOW = 8 + VT_ACTIVATE = 22022 + VT_DISALLOCATE = 22024 + VT_GETMODE = 22017 + VT_GETSTATE = 22019 + VT_OPENQRY = 22016 + VT_RELDISP = 22021 + VT_RESIZE = 22025 + VT_RESIZEX = 22026 + VT_SETMODE = 22018 + VT_WAITACTIVE = 22023 WCONTINUED = 8 WEXITED = 4 WHOLE_SECONDS = 33554432 diff --git a/prog/mutation.go b/prog/mutation.go index 2e7f76fd6..db471a4c6 100644 --- a/prog/mutation.go +++ b/prog/mutation.go @@ -152,7 +152,7 @@ func (p *Prog) Mutate(rs rand.Source, ncalls int, ct *ChoiceTable) { } case sys.LenType: panic("bad arg returned by mutationArgs: LenType") - case sys.ConstType: + case sys.ConstType, sys.StrConstType: panic("bad arg returned by mutationArgs: ConstType") default: panic(fmt.Sprintf("bad arg returned by mutationArgs: %#v, type=%#v", *arg, arg.Type)) @@ -306,7 +306,7 @@ func mutationArgs(c *Call) (args, bases []*Arg, parents []*[]*Arg) { case sys.LenType: // Size is updated when the size-of arg change. return - case sys.ConstType: + case sys.ConstType, sys.StrConstType: // Well, this is const. return } diff --git a/prog/prio.go b/prog/prio.go index 3f30bf594..8374fd54d 100644 --- a/prog/prio.go +++ b/prog/prio.go @@ -209,7 +209,7 @@ func foreachArgType(meta *sys.Call, f func(sys.Type, ArgDir)) { } case sys.ResourceType, sys.FileoffType, sys.BufferType, sys.VmaType, sys.LenType, sys.FlagsType, sys.ConstType, - sys.IntType, sys.FilenameType: + sys.StrConstType, sys.IntType, sys.FilenameType: default: panic("unknown type") } diff --git a/prog/prog.go b/prog/prog.go index 615951918..80d58b949 100644 --- a/prog/prog.go +++ b/prog/prog.go @@ -63,6 +63,8 @@ func (a *Arg) Size(typ sys.Type) uintptr { return typ1.TypeSize case sys.ConstType: return typ1.TypeSize + case sys.StrConstType: + return ptrSize case sys.FileoffType: return typ1.TypeSize case sys.ResourceType: diff --git a/prog/rand.go b/prog/rand.go index 9cb88b8b6..8509ef5cc 100644 --- a/prog/rand.go +++ b/prog/rand.go @@ -603,7 +603,7 @@ func (r *randGen) generateArg(s *state, typ sys.Type, dir ArgDir, sizes map[stri // in subsequent calls. For the same reason we do generate pointer/array/struct // output arguments (their elements can be referenced in subsequent calls). switch typ.(type) { - case sys.IntType, sys.FlagsType, sys.ConstType, sys.FileoffType, sys.ResourceType: + case sys.IntType, sys.FlagsType, sys.ConstType, sys.StrConstType, sys.FileoffType, sys.ResourceType: return constArg(0), nil, nil } } @@ -692,6 +692,8 @@ func (r *randGen) generateArg(s *state, typ sys.Type, dir ArgDir, sizes map[stri return constArg(r.flags(a.Vals)), nil, nil case sys.ConstType: return constArg(a.Val), nil, nil + case sys.StrConstType: + return dataArg([]byte(a.Val)), constArg(uintptr(len(a.Val))), nil case sys.IntType: v := r.randInt() switch a.Kind { diff --git a/sys/decl.go b/sys/decl.go index 107139006..c5107efe8 100644 --- a/sys/decl.go +++ b/sys/decl.go @@ -69,6 +69,7 @@ const ( FdMq FdInotify FdFanotify + FdTty IPCMsq IPCSem @@ -165,7 +166,7 @@ func (t ResourceType) Size() uintptr { func (t ResourceType) SubKinds() []ResourceSubkind { switch t.Kind { case ResFD: - return []ResourceSubkind{FdFile, FdSock, FdPipe, FdSignal, FdEvent, FdTimer, FdEpoll, FdDir, FdMq, FdInotify, FdFanotify} + return []ResourceSubkind{FdFile, FdSock, FdPipe, FdSignal, FdEvent, FdTimer, FdEpoll, FdDir, FdMq, FdInotify, FdFanotify, FdTty} case ResIPC: return []ResourceSubkind{IPCMsq, IPCSem, IPCShm} case ResIOCtx, ResKey, ResInotifyDesc, ResPid, ResUid, ResGid, ResTimerid: @@ -217,6 +218,12 @@ type ConstType struct { Val uintptr } +type StrConstType struct { + TypeCommon + TypeSize uintptr + Val string +} + type IntKind int const ( diff --git a/sys/sys.go b/sys/sys.go index 1de74f2f8..e798c1a4b 100644 --- a/sys/sys.go +++ b/sys/sys.go @@ -129,7 +129,7 @@ var Calls = []*Call{ &Call{ID: 124, Name: "setsockopt$ipv6_mtu", CallName: "setsockopt", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdSock}, ConstType{TypeCommon: TypeCommon{TypeName: "level", IsOptional: false}, TypeSize: 0, Val: uintptr(41)}, ConstType{TypeCommon: TypeCommon{TypeName: "optname", IsOptional: false}, TypeSize: 0, Val: uintptr(23)}, PtrType{TypeCommon: TypeCommon{TypeName: "optval", IsOptional: false}, Type: FlagsType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4, Vals: []uintptr{0, 1, 2, 3, 4, 5}}, Dir: DirIn}, LenType{TypeCommon: TypeCommon{TypeName: "optlen", IsOptional: false}, Buf: "optval", TypeSize: 0}}}, &Call{ID: 125, Name: "getsockopt$ipv6_opts", CallName: "getsockopt", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdSock}, ConstType{TypeCommon: TypeCommon{TypeName: "level", IsOptional: false}, TypeSize: 0, Val: uintptr(41)}, ConstType{TypeCommon: TypeCommon{TypeName: "optname", IsOptional: false}, TypeSize: 0, Val: uintptr(6)}, PtrType{TypeCommon: TypeCommon{TypeName: "optval", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "optval", IsOptional: false}, Kind: BufferBlob}}, PtrType{TypeCommon: TypeCommon{TypeName: "optlen", IsOptional: false}, Type: LenType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Buf: "optval", TypeSize: 4}, Dir: DirInOut}}}, &Call{ID: 126, Name: "setsockopt$ipv6_opts", CallName: "setsockopt", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdSock}, ConstType{TypeCommon: TypeCommon{TypeName: "level", IsOptional: false}, TypeSize: 0, Val: uintptr(41)}, ConstType{TypeCommon: TypeCommon{TypeName: "optname", IsOptional: false}, TypeSize: 0, Val: uintptr(6)}, PtrType{TypeCommon: TypeCommon{TypeName: "optval", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "optval", IsOptional: false}, Kind: BufferBlob}}, LenType{TypeCommon: TypeCommon{TypeName: "optlen", IsOptional: false}, Buf: "optval", TypeSize: 0}}}, - &Call{ID: 127, Name: "ioctl", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, IntType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 4}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "ioctl_arg", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "a0", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a1", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a2", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a3", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a4", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a5", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a6", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a7", IsOptional: false}, TypeSize: 8}}}, Dir: DirInOut}}}, + &Call{ID: 127, Name: "ioctl", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, IntType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 8}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "ioctl_arg", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "a0", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a1", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a2", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a3", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a4", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a5", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a6", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "a7", IsOptional: false}, TypeSize: 8}}}, Dir: DirInOut}}}, &Call{ID: 128, Name: "ioctl$void", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, FlagsType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Vals: []uintptr{21585, 21584, 3221510263, 3221510264}}}}, &Call{ID: 129, Name: "ioctl$int_in", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, FlagsType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Vals: []uintptr{21537, 21586}}, PtrType{TypeCommon: TypeCommon{TypeName: "v", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirIn}}}, &Call{ID: 130, Name: "ioctl$int_out", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, FlagsType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Vals: []uintptr{21600, 2}}, PtrType{TypeCommon: TypeCommon{TypeName: "v", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirOut}}}, @@ -400,4 +400,99 @@ var Calls = []*Call{ &Call{ID: 395, Name: "ioctl$kdbus_list", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(2147784070)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kdbus_cmd_list", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8}}, ConstType{TypeCommon: TypeCommon{TypeName: "rflags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, IntType{TypeCommon: TypeCommon{TypeName: "off", IsOptional: false}, TypeSize: 8}, ConstType{TypeCommon: TypeCommon{TypeName: "lsize", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}}}, Dir: DirIn}}}, &Call{ID: 396, Name: "ioctl$kdbus_match_add", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(1074042288)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kdbus_cmd_match", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1}}, ConstType{TypeCommon: TypeCommon{TypeName: "rflags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, IntType{TypeCommon: TypeCommon{TypeName: "cookie", IsOptional: false}, TypeSize: 8}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_bloom_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, ConstType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Val: uintptr(7)}, IntType{TypeCommon: TypeCommon{TypeName: "bsize", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "hash", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_change_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{32771, 32772}}, ConstType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, ConstType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_change_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{32771, 32772}}, ConstType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, ConstType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{14, 16}}, IntType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{14, 16}}, IntType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8}}}}}, Dir: DirIn}}}, &Call{ID: 397, Name: "ioctl$kdbus_match_remove", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: ResAny}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(1074042289)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kdbus_cmd_match", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1}}, ConstType{TypeCommon: TypeCommon{TypeName: "rflags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, IntType{TypeCommon: TypeCommon{TypeName: "cookie", IsOptional: false}, TypeSize: 8}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_bloom_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, ConstType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Val: uintptr(7)}, IntType{TypeCommon: TypeCommon{TypeName: "bsize", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "hash", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_name_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{15, 32768, 32769, 32770}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Vals: []uintptr{1, 2, 4, 8, 16, 32, 64}}, IntType{TypeCommon: TypeCommon{TypeName: "name", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_change_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{32771, 32772}}, ConstType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, ConstType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_change_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{32771, 32772}}, ConstType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}, ConstType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 8, Val: uintptr(0)}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{14, 16}}, IntType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8}}}, StructType{TypeCommon: TypeCommon{TypeName: "kdbus_id_parameter", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, Buf: "parent", TypeSize: 8}, FlagsType{TypeCommon: TypeCommon{TypeName: "type", IsOptional: false}, TypeSize: 8, Vals: []uintptr{14, 16}}, IntType{TypeCommon: TypeCommon{TypeName: "id", IsOptional: false}, TypeSize: 8}}}}}, Dir: DirIn}}}, + &Call{ID: 398, Name: "open$ptmx", CallName: "open", Ret: ResourceType{TypeCommon: TypeCommon{TypeName: "ret", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, Args: []Type{PtrType{TypeCommon: TypeCommon{TypeName: "file", IsOptional: false}, Dir: DirIn, Type: StrConstType{TypeCommon: TypeCommon{TypeName: "file", IsOptional: false}, Val: "/dev/ptmx"}}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 0, Vals: []uintptr{0, 1, 2, 1024, 8192, 524288, 64, 16384, 65536, 128, 0, 262144, 256, 131072, 2048, 2097152, 1052672, 512}}, ConstType{TypeCommon: TypeCommon{TypeName: "mode", IsOptional: false}, TypeSize: 0, Val: uintptr(0)}}}, + &Call{ID: 399, Name: "syz_openpts", CallName: "syz_openpts", Ret: ResourceType{TypeCommon: TypeCommon{TypeName: "ret", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, FlagsType{TypeCommon: TypeCommon{TypeName: "flags", IsOptional: false}, TypeSize: 0, Vals: []uintptr{0, 1, 2, 1024, 8192, 524288, 64, 16384, 65536, 128, 0, 262144, 256, 131072, 2048, 2097152, 1052672, 512}}}}, + &Call{ID: 400, Name: "ioctl$TCGETS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21505)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirOut}}}, + &Call{ID: 401, Name: "ioctl$TCSETS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21506)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 402, Name: "ioctl$TCSETSW", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21506)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 403, Name: "ioctl$TCSETSF", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21508)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 404, Name: "ioctl$TCGETA", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21509)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termio", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7", IsOptional: false}, TypeSize: 1}}}, Dir: DirOut}}}, + &Call{ID: 405, Name: "ioctl$TCSETA", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21506)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termio", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7", IsOptional: false}, TypeSize: 1}}}, Dir: DirIn}}}, + &Call{ID: 406, Name: "ioctl$TCSETAW", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21506)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termio", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7", IsOptional: false}, TypeSize: 1}}}, Dir: DirIn}}}, + &Call{ID: 407, Name: "ioctl$TCSETAF", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21508)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termio", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7", IsOptional: false}, TypeSize: 1}}}, Dir: DirIn}}}, + &Call{ID: 408, Name: "ioctl$TIOCGLCKTRMIOS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21590)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 409, Name: "ioctl$TIOCSLCKTRMIOS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21591)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "termios", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "iflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "oflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "lflag", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "line", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc0", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc1", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc2", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "cc3_6", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc7_10", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc11_14", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "cc15_18", IsOptional: false}, TypeSize: 4}}}, Dir: DirOut}}}, + &Call{ID: 410, Name: "ioctl$TIOCGWINSZ", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21523)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "winsize", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "row", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "col", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "xpix", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "upix", IsOptional: false}, TypeSize: 2}}}, Dir: DirOut}}}, + &Call{ID: 411, Name: "ioctl$TIOCSWINSZ", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21524)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "winsize", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "row", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "col", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "xpix", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "upix", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 412, Name: "ioctl$TCSBRK", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21513)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 413, Name: "ioctl$TCSBRKP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21541)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 414, Name: "ioctl$TIOCSBRK", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21543)}}}, + &Call{ID: 415, Name: "ioctl$TIOCCBRK", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21544)}}}, + &Call{ID: 416, Name: "ioctl$TCXONC", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21514)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 417, Name: "ioctl$FIONREAD", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21531)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 418, Name: "ioctl$TIOCOUTQ", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21521)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 419, Name: "ioctl$TCFLSH", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21515)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 420, Name: "ioctl$TIOCSTI", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21522)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 421, Name: "ioctl$TIOCCONS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21533)}}}, + &Call{ID: 422, Name: "ioctl$TIOCSCTTY", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21518)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 423, Name: "ioctl$TIOCNOTTY", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21538)}}}, + &Call{ID: 424, Name: "ioctl$TIOCGPGRP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21519)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: ResourceType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Kind: ResPid}, Dir: DirOut}}}, + &Call{ID: 425, Name: "ioctl$TIOCSPGRP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21519)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: ResourceType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Kind: ResPid}, Dir: DirIn}}}, + &Call{ID: 426, Name: "ioctl$TIOCGSID", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21519)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: ResourceType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Kind: ResPid}, Dir: DirOut}}}, + &Call{ID: 427, Name: "ioctl$TIOCEXCL", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21516)}}}, + &Call{ID: 428, Name: "ioctl$TIOCNXCL", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21517)}}}, + &Call{ID: 429, Name: "ioctl$TIOCGETD", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21540)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 430, Name: "ioctl$TIOCSETD", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21539)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 431, Name: "ioctl$TIOCPKT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21536)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 432, Name: "ioctl$TIOCMGET", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21525)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 433, Name: "ioctl$TIOCMSET", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21528)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 434, Name: "ioctl$TIOCMBIC", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21527)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 435, Name: "ioctl$TIOCMBIS", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21527)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 436, Name: "ioctl$TIOCGSOFTCAR", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21529)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 437, Name: "ioctl$TIOCSSOFTCAR", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21530)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirIn}}}, + &Call{ID: 438, Name: "ioctl$TIOCTTYGSTRUCT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21530)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 439, Name: "ioctl$KDGETLED", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19249)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 1}, Dir: DirOut}}}, + &Call{ID: 440, Name: "ioctl$KDSETLED", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19250)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 441, Name: "ioctl$KDGKBLED", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19300)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 1}, Dir: DirOut}}}, + &Call{ID: 442, Name: "ioctl$KDSKBLED", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19301)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 443, Name: "ioctl$KDGKBTYPE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19251)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 1}, Dir: DirOut}}}, + &Call{ID: 444, Name: "ioctl$KDADDIO", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19252)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 445, Name: "ioctl$KDDELIO", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19253)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 446, Name: "ioctl$KDENABIO", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19254)}}}, + &Call{ID: 447, Name: "ioctl$KDDISABIO", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19255)}}}, + &Call{ID: 448, Name: "ioctl$KDSETMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19258)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 449, Name: "ioctl$KDGETMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19259)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirOut}}}, + &Call{ID: 450, Name: "ioctl$KDMKTONE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19259)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 451, Name: "ioctl$KIOCSOUND", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19247)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 452, Name: "ioctl$GIO_CMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19312)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "io_cmap", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "map0", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map1", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map2", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map3", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map4", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map5", IsOptional: false}, TypeSize: 8}}}, Dir: DirOut}}}, + &Call{ID: 453, Name: "ioctl$PIO_CMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19312)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "io_cmap", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "map0", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map1", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map2", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map3", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map4", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "map5", IsOptional: false}, TypeSize: 8}}}, Dir: DirIn}}}, + &Call{ID: 454, Name: "ioctl$GIO_FONT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19296)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 455, Name: "ioctl$GIO_FONTX", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19307)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 456, Name: "ioctl$PIO_FONT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19297)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 457, Name: "ioctl$PIO_FONTX", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19308)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 458, Name: "ioctl$PIO_FONTRESET", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19309)}, ConstType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 0, Val: uintptr(0)}}}, + &Call{ID: 459, Name: "ioctl$GIO_SCRNMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19264)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 460, Name: "ioctl$GIO_UNISCRNMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19305)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 461, Name: "ioctl$PIO_SCRNMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19265)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 462, Name: "ioctl$PIO_UNISCRNMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19306)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 463, Name: "ioctl$GIO_UNIMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19302)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "unimapdesc_out", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "cnt", IsOptional: false}, Buf: "entries", TypeSize: 2}, PtrType{TypeCommon: TypeCommon{TypeName: "entries", IsOptional: false}, Type: ArrayType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "unipair", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "unicode", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "fontpos", IsOptional: false}, TypeSize: 2}}}}, Dir: DirOut}}}, Dir: DirIn}}}, + &Call{ID: 464, Name: "ioctl$PIO_UNIMAP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19303)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "unimapdesc_in", IsOptional: false}, Fields: []Type{LenType{TypeCommon: TypeCommon{TypeName: "cnt", IsOptional: false}, Buf: "entries", TypeSize: 2}, PtrType{TypeCommon: TypeCommon{TypeName: "entries", IsOptional: false}, Type: ArrayType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "unipair", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "unicode", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "fontpos", IsOptional: false}, TypeSize: 2}}}}, Dir: DirIn}}}, Dir: DirIn}}}, + &Call{ID: 465, Name: "ioctl$PIO_UNIMAPCLR", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19304)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "unimapinit", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "size", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "step", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "level", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 466, Name: "ioctl$KDGKBMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19268)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirOut}}}, + &Call{ID: 467, Name: "ioctl$KDSKBMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19269)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirIn}}}, + &Call{ID: 468, Name: "ioctl$KDGKBMETA", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19298)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirOut}}}, + &Call{ID: 469, Name: "ioctl$KDSKBMETA", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19299)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 8}, Dir: DirIn}}}, + &Call{ID: 470, Name: "ioctl$KDGKBENT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19270)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kbentry", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "table", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "index", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "value", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 471, Name: "ioctl$KDGKBSENT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19272)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kbentry", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "table", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "index", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "value", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 472, Name: "ioctl$KDSKBSENT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19273)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirIn, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 473, Name: "ioctl$KDGKBDIACR", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19274)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Dir: DirOut, Type: BufferType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Kind: BufferBlob}}}}, + &Call{ID: 474, Name: "ioctl$KDGETKEYCODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19276)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kbkeycode", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "scan", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "key", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 475, Name: "ioctl$KDSETKEYCODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19277)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "kbkeycode", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "scan", IsOptional: false}, TypeSize: 4}, IntType{TypeCommon: TypeCommon{TypeName: "key", IsOptional: false}, TypeSize: 4}}}, Dir: DirIn}}}, + &Call{ID: 476, Name: "ioctl$KDSIGACCEPT", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(19278)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 4, Kind: IntSignalno}}}, + &Call{ID: 477, Name: "ioctl$VT_OPENQRY", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22016)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: IntType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 4}, Dir: DirOut}}}, + &Call{ID: 478, Name: "ioctl$VT_GETMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22017)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "vt_mode", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "mode", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "waitv", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "relsig", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "acqsig", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "frsig", IsOptional: false}, TypeSize: 2}}}, Dir: DirOut}}}, + &Call{ID: 479, Name: "ioctl$VT_SETMODE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22018)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "vt_mode", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "mode", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "waitv", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "relsig", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "acqsig", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "frsig", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 480, Name: "ioctl$VT_GETSTATE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22019)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "vt_stat", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "active", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "signal", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "state", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 481, Name: "ioctl$VT_RELDISP", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22021)}}}, + &Call{ID: 482, Name: "ioctl$VT_ACTIVATE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22022)}, IntType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, TypeSize: 8}}}, + &Call{ID: 483, Name: "ioctl$VT_WAITACTIVE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22023)}}}, + &Call{ID: 484, Name: "ioctl$VT_DISALLOCATE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22024)}}}, + &Call{ID: 485, Name: "ioctl$VT_RESIZE", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22025)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "vt_sizes", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "rows", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cols", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "scroll", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 486, Name: "ioctl$VT_RESIZEX", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(22026)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "vt_consize", IsOptional: false}, Fields: []Type{IntType{TypeCommon: TypeCommon{TypeName: "rows", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "cols", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "vlin", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "clin", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "vcol", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "ccol", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 487, Name: "ioctl$TIOCLINUX2", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "tiocl_selection", IsOptional: false}, Fields: []Type{ConstType{TypeCommon: TypeCommon{TypeName: "subcode", IsOptional: false}, TypeSize: 1, Val: uintptr(2)}, IntType{TypeCommon: TypeCommon{TypeName: "xs", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "ys", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "xe", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "ye", IsOptional: false}, TypeSize: 2}, IntType{TypeCommon: TypeCommon{TypeName: "mode", IsOptional: false}, TypeSize: 2}}}, Dir: DirIn}}}, + &Call{ID: 488, Name: "ioctl$TIOCLINUX3", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: ConstType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 1, Val: uintptr(3)}, Dir: DirIn}}}, + &Call{ID: 489, Name: "ioctl$TIOCLINUX4", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: ConstType{TypeCommon: TypeCommon{TypeName: "", IsOptional: false}, TypeSize: 1, Val: uintptr(4)}, Dir: DirIn}}}, + &Call{ID: 490, Name: "ioctl$TIOCLINUX5", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "loadlut", IsOptional: false}, Fields: []Type{ConstType{TypeCommon: TypeCommon{TypeName: "submode", IsOptional: false}, TypeSize: 1, Val: uintptr(5)}, IntType{TypeCommon: TypeCommon{TypeName: "pad", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "pad", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "pad", IsOptional: false}, TypeSize: 1}, IntType{TypeCommon: TypeCommon{TypeName: "tab0", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "tab1", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "tab2", IsOptional: false}, TypeSize: 8}, IntType{TypeCommon: TypeCommon{TypeName: "tab3", IsOptional: false}, TypeSize: 8}}}, Dir: DirIn}}}, + &Call{ID: 491, Name: "ioctl$TIOCLINUX6", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "tiocl_shift_state", IsOptional: false}, Fields: []Type{ConstType{TypeCommon: TypeCommon{TypeName: "subcode", IsOptional: false}, TypeSize: 1, Val: uintptr(6)}, IntType{TypeCommon: TypeCommon{TypeName: "shift", IsOptional: false}, TypeSize: 1}}}, Dir: DirIn}}}, + &Call{ID: 492, Name: "ioctl$TIOCLINUX7", CallName: "ioctl", Args: []Type{ResourceType{TypeCommon: TypeCommon{TypeName: "fd", IsOptional: false}, Kind: ResFD, Subkind: FdTty}, ConstType{TypeCommon: TypeCommon{TypeName: "cmd", IsOptional: false}, TypeSize: 0, Val: uintptr(21532)}, PtrType{TypeCommon: TypeCommon{TypeName: "arg", IsOptional: false}, Type: StructType{TypeCommon: TypeCommon{TypeName: "tiocl_report_mouse", IsOptional: false}, Fields: []Type{ConstType{TypeCommon: TypeCommon{TypeName: "subcode", IsOptional: false}, TypeSize: 1, Val: uintptr(7)}, IntType{TypeCommon: TypeCommon{TypeName: "shift", IsOptional: false}, TypeSize: 1}}}, Dir: DirIn}}}, } diff --git a/sys/sys.txt b/sys/sys.txt index 3f84ee1ac..9ea481d93 100644 --- a/sys/sys.txt +++ b/sys/sys.txt @@ -54,6 +54,7 @@ include <sys/personality.h> include <sys/wait.h> include <sys/user.h> include <sys/socket.h> +include <sys/ioctl.h> include <linux/futex.h> include <linux/aio_abi.h> @@ -62,9 +63,12 @@ include <linux/seccomp.h> include <linux/elf.h> include <linux/fs.h> include <linux/fiemap.h> +include <linux/kd.h> +include <linux/vt.h> include <asm/prctl.h> +include <termios.h> include <fcntl.h> include <sched.h> include <mqueue.h> @@ -218,7 +222,7 @@ getsockopt$ipv6_opts(fd fd[sock], level const[IPPROTO_IPV6], optname const[IPV6_ setsockopt$ipv6_opts(fd fd[sock], level const[IPPROTO_IPV6], optname const[IPV6_2292PKTOPTIONS], optval buffer[in], optlen len[optval]) # Almighty! -ioctl(fd fd, cmd int32, arg ptr[inout, ioctl_arg]) +ioctl(fd fd, cmd intptr, arg ptr[inout, ioctl_arg]) ioctl$void(fd fd, cmd flags[ioctl_void]) ioctl$int_in(fd fd, cmd flags[ioctl_int_in], v ptr[in, int64]) @@ -1851,3 +1855,241 @@ define KDBUS_ITEM_ID_REMOVE (0x8000 + 4) define KDBUS_ITEM_REPLY_TIMEOUT (0x8000 + 5) define KDBUS_ITEM_REPLY_DEAD (0x8000 + 6) + + + +# tty support + +open$ptmx(file strconst["/dev/ptmx"], flags flags[open_flags], mode const[0]) fd[tty] +syz_openpts(fd fd[tty], flags flags[open_flags]) fd[tty] +ioctl$TCGETS(fd fd[tty], cmd const[TCGETS], arg ptr[out, termios]) +ioctl$TCSETS(fd fd[tty], cmd const[TCSETS], arg ptr[in, termios]) +ioctl$TCSETSW(fd fd[tty], cmd const[TCSETS], arg ptr[in, termios]) +ioctl$TCSETSF(fd fd[tty], cmd const[TCSETSF], arg ptr[in, termios]) +ioctl$TCGETA(fd fd[tty], cmd const[TCGETA], arg ptr[out, termio]) +ioctl$TCSETA(fd fd[tty], cmd const[TCSETS], arg ptr[in, termio]) +ioctl$TCSETAW(fd fd[tty], cmd const[TCSETS], arg ptr[in, termio]) +ioctl$TCSETAF(fd fd[tty], cmd const[TCSETSF], arg ptr[in, termio]) +ioctl$TIOCGLCKTRMIOS(fd fd[tty], cmd const[TIOCGLCKTRMIOS], arg ptr[in, termios]) +ioctl$TIOCSLCKTRMIOS(fd fd[tty], cmd const[TIOCSLCKTRMIOS], arg ptr[out, termios]) +ioctl$TIOCGWINSZ(fd fd[tty], cmd const[TIOCGWINSZ], arg ptr[out, winsize]) +ioctl$TIOCSWINSZ(fd fd[tty], cmd const[TIOCSWINSZ], arg ptr[in, winsize]) +ioctl$TCSBRK(fd fd[tty], cmd const[TCSBRK], arg intptr) +ioctl$TCSBRKP(fd fd[tty], cmd const[TCSBRKP], arg intptr) +ioctl$TIOCSBRK(fd fd[tty], cmd const[TIOCSBRK]) +ioctl$TIOCCBRK(fd fd[tty], cmd const[TIOCCBRK]) +ioctl$TCXONC(fd fd[tty], cmd const[TCXONC], arg intptr) +ioctl$FIONREAD(fd fd[tty], cmd const[FIONREAD], arg ptr[out, int32]) +ioctl$TIOCOUTQ(fd fd[tty], cmd const[TIOCOUTQ], arg ptr[out, int32]) +ioctl$TCFLSH(fd fd[tty], cmd const[TCFLSH], arg intptr) +ioctl$TIOCSTI(fd fd[tty], cmd const[TIOCSTI], arg intptr) +ioctl$TIOCCONS(fd fd[tty], cmd const[TIOCCONS]) +ioctl$TIOCSCTTY(fd fd[tty], cmd const[TIOCSCTTY], arg intptr) +ioctl$TIOCNOTTY(fd fd[tty], cmd const[TIOCNOTTY]) +ioctl$TIOCGPGRP(fd fd[tty], cmd const[TIOCGPGRP], arg ptr[out, pid]) +ioctl$TIOCSPGRP(fd fd[tty], cmd const[TIOCGPGRP], arg ptr[in, pid]) +ioctl$TIOCGSID(fd fd[tty], cmd const[TIOCGPGRP], arg ptr[out, pid]) +ioctl$TIOCEXCL(fd fd[tty], cmd const[TIOCEXCL]) +ioctl$TIOCNXCL(fd fd[tty], cmd const[TIOCNXCL]) +ioctl$TIOCGETD(fd fd[tty], cmd const[TIOCGETD], arg ptr[out, int32]) +ioctl$TIOCSETD(fd fd[tty], cmd const[TIOCSETD], arg ptr[in, int32]) +ioctl$TIOCPKT(fd fd[tty], cmd const[TIOCPKT], arg ptr[in, int32]) +ioctl$TIOCMGET(fd fd[tty], cmd const[TIOCMGET], arg ptr[out, int32]) +ioctl$TIOCMSET(fd fd[tty], cmd const[TIOCMSET], arg ptr[in, int32]) +ioctl$TIOCMBIC(fd fd[tty], cmd const[TIOCMBIC], arg ptr[in, int32]) +ioctl$TIOCMBIS(fd fd[tty], cmd const[TIOCMBIC], arg ptr[in, int32]) +ioctl$TIOCGSOFTCAR(fd fd[tty], cmd const[TIOCGSOFTCAR], arg ptr[out, int32]) +ioctl$TIOCSSOFTCAR(fd fd[tty], cmd const[TIOCSSOFTCAR], arg ptr[in, int32]) +ioctl$TIOCTTYGSTRUCT(fd fd[tty], cmd const[TIOCSSOFTCAR], arg buffer[out]) + +# For the TIOCLINUX ioctl, see console_ioctl(4). + +ioctl$KDGETLED(fd fd[tty], cmd const[KDGETLED], arg ptr[out, int8]) +ioctl$KDSETLED(fd fd[tty], cmd const[KDSETLED], arg intptr) +ioctl$KDGKBLED(fd fd[tty], cmd const[KDGKBLED], arg ptr[out, int8]) +ioctl$KDSKBLED(fd fd[tty], cmd const[KDSKBLED], arg intptr) +ioctl$KDGKBTYPE(fd fd[tty], cmd const[KDGKBTYPE], arg ptr[out, int8]) +ioctl$KDADDIO(fd fd[tty], cmd const[KDADDIO], arg intptr) +ioctl$KDDELIO(fd fd[tty], cmd const[KDDELIO], arg intptr) +ioctl$KDENABIO(fd fd[tty], cmd const[KDENABIO]) +ioctl$KDDISABIO(fd fd[tty], cmd const[KDDISABIO]) +ioctl$KDSETMODE(fd fd[tty], cmd const[KDSETMODE], arg intptr) +ioctl$KDGETMODE(fd fd[tty], cmd const[KDGETMODE], arg ptr[out, intptr]) +ioctl$KDMKTONE(fd fd[tty], cmd const[KDGETMODE], arg intptr) +ioctl$KIOCSOUND(fd fd[tty], cmd const[KIOCSOUND], arg intptr) +ioctl$GIO_CMAP(fd fd[tty], cmd const[GIO_CMAP], arg ptr[out, io_cmap]) +ioctl$PIO_CMAP(fd fd[tty], cmd const[GIO_CMAP], arg ptr[in, io_cmap]) +ioctl$GIO_FONT(fd fd[tty], cmd const[GIO_FONT], arg buffer[out]) +ioctl$GIO_FONTX(fd fd[tty], cmd const[GIO_FONTX], arg buffer[out]) +ioctl$PIO_FONT(fd fd[tty], cmd const[PIO_FONT], arg buffer[in]) +ioctl$PIO_FONTX(fd fd[tty], cmd const[PIO_FONTX], arg buffer[in]) +ioctl$PIO_FONTRESET(fd fd[tty], cmd const[PIO_FONTRESET], arg const[0]) +ioctl$GIO_SCRNMAP(fd fd[tty], cmd const[GIO_SCRNMAP], arg buffer[out]) +ioctl$GIO_UNISCRNMAP(fd fd[tty], cmd const[GIO_UNISCRNMAP], arg buffer[out]) +ioctl$PIO_SCRNMAP(fd fd[tty], cmd const[PIO_SCRNMAP], arg buffer[in]) +ioctl$PIO_UNISCRNMAP(fd fd[tty], cmd const[PIO_UNISCRNMAP], arg buffer[in]) +ioctl$GIO_UNIMAP(fd fd[tty], cmd const[GIO_UNIMAP], arg ptr[in, unimapdesc_out]) +ioctl$PIO_UNIMAP(fd fd[tty], cmd const[PIO_UNIMAP], arg ptr[in, unimapdesc_in]) +ioctl$PIO_UNIMAPCLR(fd fd[tty], cmd const[PIO_UNIMAPCLR], arg ptr[in, unimapinit]) +ioctl$KDGKBMODE(fd fd[tty], cmd const[KDGKBMODE], arg ptr[out, intptr]) +ioctl$KDSKBMODE(fd fd[tty], cmd const[KDSKBMODE], arg ptr[in, intptr]) +ioctl$KDGKBMETA(fd fd[tty], cmd const[KDGKBMETA], arg ptr[out, intptr]) +ioctl$KDSKBMETA(fd fd[tty], cmd const[KDSKBMETA], arg ptr[in, intptr]) +ioctl$KDGKBENT(fd fd[tty], cmd const[KDGKBENT], arg ptr[in, kbentry]) +ioctl$KDGKBSENT(fd fd[tty], cmd const[KDGKBSENT], arg ptr[in, kbentry]) +ioctl$KDSKBSENT(fd fd[tty], cmd const[KDSKBSENT], arg buffer[in]) +ioctl$KDGKBDIACR(fd fd[tty], cmd const[KDGKBDIACR], arg buffer[out]) +ioctl$KDGETKEYCODE(fd fd[tty], cmd const[KDGETKEYCODE], arg ptr[in, kbkeycode]) +ioctl$KDSETKEYCODE(fd fd[tty], cmd const[KDSETKEYCODE], arg ptr[in, kbkeycode]) +ioctl$KDSIGACCEPT(fd fd[tty], cmd const[KDSIGACCEPT], arg signalno) +ioctl$VT_OPENQRY(fd fd[tty], cmd const[VT_OPENQRY], arg ptr[out, int32]) +ioctl$VT_GETMODE(fd fd[tty], cmd const[VT_GETMODE], arg ptr[out, vt_mode]) +ioctl$VT_SETMODE(fd fd[tty], cmd const[VT_SETMODE], arg ptr[in, vt_mode]) +ioctl$VT_GETSTATE(fd fd[tty], cmd const[VT_GETSTATE], arg ptr[in, vt_stat]) +ioctl$VT_RELDISP(fd fd[tty], cmd const[VT_RELDISP]) +ioctl$VT_ACTIVATE(fd fd[tty], cmd const[VT_ACTIVATE], arg intptr) +ioctl$VT_WAITACTIVE(fd fd[tty], cmd const[VT_WAITACTIVE]) +ioctl$VT_DISALLOCATE(fd fd[tty], cmd const[VT_DISALLOCATE]) +ioctl$VT_RESIZE(fd fd[tty], cmd const[VT_RESIZE], arg ptr[in, vt_sizes]) +ioctl$VT_RESIZEX(fd fd[tty], cmd const[VT_RESIZEX], arg ptr[in, vt_consize]) +ioctl$TIOCLINUX2(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, tiocl_selection]) +ioctl$TIOCLINUX3(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, const[3, int8]]) +ioctl$TIOCLINUX4(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, const[4, int8]]) +ioctl$TIOCLINUX5(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, loadlut]) +ioctl$TIOCLINUX6(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, tiocl_shift_state]) +ioctl$TIOCLINUX7(fd fd[tty], cmd const[TIOCLINUX], arg ptr[in, tiocl_report_mouse]) + +termios { + iflag int32 + oflag int32 + cflag int32 + lflag int32 + line int8 + cc0 int8 + cc1 int8 + cc2 int8 + cc3_6 int32 + cc7_10 int32 + cc11_14 int32 + cc15_18 int32 +} + +termio { + iflag int16 + oflag int16 + cflag int16 + lflag int16 + line int8 + cc0 int8 + cc1 int8 + cc2 int8 + cc3_6 int32 + cc7 int8 +} + +winsize { + row int16 + col int16 + xpix int16 + upix int16 +} + +io_cmap { + map0 int64 + map1 int64 + map2 int64 + map3 int64 + map4 int64 + map5 int64 +} + +unimapdesc_in { + cnt len[entries, int16] + entries ptr[in, array[unipair]] +} + +unimapdesc_out { + cnt len[entries, int16] + entries ptr[out, array[unipair]] +} + +unipair { + unicode int16 + fontpos int16 +} + +unimapinit { + size int16 + step int16 + level int16 +} + +kbentry { + table int8 + index int8 + value int16 +} + +kbkeycode { + scan int32 + key int32 +} + +vt_mode { + mode int8 + waitv int8 + relsig int16 + acqsig int16 + frsig int16 +} + +vt_stat { + active int16 + signal int16 + state int16 +} + +vt_sizes { + rows int16 + cols int16 + scroll int16 +} + +vt_consize { + rows int16 + cols int16 + vlin int16 + clin int16 + vcol int16 + ccol int16 +} + +tiocl_selection { + subcode const[2, int8] + xs int16 + ys int16 + xe int16 + ye int16 + mode int16 +} + +loadlut { + submode const[5, int8] + pad int8 + pad int8 + pad int8 + tab0 int64 + tab1 int64 + tab2 int64 + tab3 int64 +} + +tiocl_shift_state { + subcode const[6, int8] + shift int8 +} + +tiocl_report_mouse { + subcode const[7, int8] + shift int8 +} diff --git a/sysgen/parser.go b/sysgen/parser.go index 92c27c58a..7d322eec4 100644 --- a/sysgen/parser.go +++ b/sysgen/parser.go @@ -67,21 +67,29 @@ func (p *Parser) SkipWs() { } func (p *Parser) Ident() string { - i := p.i - for p.i < len(p.s) && - (p.s[p.i] >= 'a' && p.s[p.i] <= 'z' || - p.s[p.i] >= 'A' && p.s[p.i] <= 'Z' || - p.s[p.i] >= '0' && p.s[p.i] <= '9' || - p.s[p.i] == '_' || p.s[p.i] == '$') { // $ is for n-way syscalls (like ptrace$peek) - p.i++ - } - if i == p.i { - p.failf("failed to parse identifier at pos %v", i) - } - if ch := p.s[i]; ch >= '0' && ch <= '9' { - // p.failf("identifier starts with a digit at pos %v", i) + start, end := p.i, 0 + if p.Char() == '"' { + p.Parse('"') + start++ + for p.Char() != '"' { + p.i++ + } + end = p.i + p.Parse('"') + } else { + for p.i < len(p.s) && + (p.s[p.i] >= 'a' && p.s[p.i] <= 'z' || + p.s[p.i] >= 'A' && p.s[p.i] <= 'Z' || + p.s[p.i] >= '0' && p.s[p.i] <= '9' || + p.s[p.i] == '_' || p.s[p.i] == '$') { // $ is for n-way syscalls (like ptrace$peek) + p.i++ + } + if start == p.i { + p.failf("failed to parse identifier at pos %v", start) + } + end = p.i } - s := p.s[i:p.i] + s := p.s[start:end] p.SkipWs() return s } diff --git a/sysgen/sysgen.go b/sysgen/sysgen.go index ba75afcb7..8a9cb6335 100644 --- a/sysgen/sysgen.go +++ b/sysgen/sysgen.go @@ -232,6 +232,11 @@ func generateArg(name, typ string, a []string, structs map[string]Struct, unname val = a[0] } fmt.Fprintf(out, "ConstType{%v, TypeSize: %v, Val: uintptr(%v)}", common(), size, val) + case "strconst": + if want := 1; len(a) != want { + failf("wrong number of arguments for %v arg %v, want %v, got %v", typ, name, want, len(a)) + } + fmt.Fprintf(out, "PtrType{%v, Dir: %v, Type: StrConstType{%v, Val: \"%v\"}}", common(), fmtDir("in"), common(), a[0]) case "int8", "int16", "int32", "int64", "intptr": if want := 0; len(a) != want { failf("wrong number of arguments for %v arg %v, want %v, got %v", typ, name, want, len(a)) @@ -319,6 +324,8 @@ func fmtFdKind(s string) string { return "FdInotify" case "fanotify": return "FdFanotify" + case "tty": + return "FdTty" default: failf("bad fd type %v", s) return "" @@ -406,6 +413,8 @@ struct call_t { #define __NR_memfd_create 319 #endif +#define __NR_syz_openpts 1000001 + call_t syscalls[] = { `) for _, s := range syscalls { |
