aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/sys.txt
Commit message (Collapse)AuthorAgeFilesLines
* sys/linux: update watch queue descriptionsDmitry Vyukov2022-03-161-1/+2
| | | | | | | The interface has significantly changed since the first version. Update to the upstreammed interface. Fixes #3030
* sys/linux: add brk syscallDmitry Vyukov2022-01-201-0/+1
|
* sys/linux: describe sigaltstackDmitry Vyukov2022-01-191-1/+9
| | | | | | It seems we had a bogus signature for sigaltstack for all that time. It accepts 2 sigaltstack structs according to the kernel code: https://elixir.bootlin.com/linux/v5.16/source/kernel/signal.c#L4217
* sys/linux: fix bugs pointed out by syz-checkDmitry Vyukov2022-01-131-1/+9
| | | | Update #590
* all: add syz_clone() and syz_clone3() pseudo callsAleksandr Nogikh2022-01-131-3/+8
| | | | | | | | | | | | | | | | | | | | As was pointed out in #2921, the current approach of limiting the number of pids per process does not work on all Linux-based kernels. We could just treat fork, clone and clone3 in a special way (e.g. exit on a zero return). However, in that case we also need to sanitize the arguments for clone and clone3 - if CLONE_VM is passed and stack is 0, the forked child processes (threads) will become nearly unindentifiable and will corrupt syz-executor's memory. While we could sanitize clone's arguments, we cannot do so for clone3 - nothing can guarantee that they will not be changed concurrently. Instead of calling those syscalls directly, introduce a special pseudo syscall syz_clone3. It copies and sanitizes the arguments and then executes clone3 (or fork, if we're on an older kernel) in such a way so as to prevent fork bombs from happening. Also introduce syz_clone() to still be able to fuzz it on older systems.
* sys/linux: add /dev/media descriptionsDmitry Vyukov2022-01-111-1/+0
| | | | | | | | | Move existing bits of /dev/media descriptions from sys.txt and dev_video4linux.txt and complete the descriptions. Also provide more concrete specialization of VIDIOC_QUERYBUF ioctl. Add ioctl specialization that serves as fd_v4l2_buffer resource constructor (returns it outside of a union).
* sys/linux: add sync_file descriptionsDmitry Vyukov2022-01-111-1/+0
|
* sys: remove confusing comments that fake directivesDmitry Vyukov2021-11-121-20/+19
| | | | | | | | | It's a somewhat common mistake to write comments instead of directives: #include <foo> #define FOO BAR because that's how it's done in C. In preparation for warning about such cases remove all existing comments that fake directives.
* sys/linux: add missing descriptions for autofs ioctlsAleksandr Nogikh2021-10-211-1/+3
|
* sys/linux: add descriptions of memfd_secret syscallDmitry Vyukov2021-10-211-0/+3
| | | | See: https://elixir.bootlin.com/linux/v5.15-rc6/source/mm/secretmem.c#L194
* sys/linux: add descriptions of epoll_pwait2 syscallDmitry Vyukov2021-10-211-1/+2
| | | | See: https://elixir.bootlin.com/linux/v5.15-rc6/source/fs/eventpoll.c#L2279
* sys/linux: add descriptions of process_mrelease syscallDmitry Vyukov2021-10-211-0/+1
| | | | See: https://elixir.bootlin.com/linux/v5.15-rc6/source/mm/oom_kill.c#L1146
* sys/linux: regenerate consts, remove ipxDmitry Vyukov2021-10-131-1/+1
| | | | | | Regenerate const files on the latest upstream tree. Remove IPX support since it was removed from the kernel in 7a2e838d28 ("staging: ipx: delete it from the tree").
* sys/linux: remove O_RDONLY from fanotify_eventsDenis Efremov2021-09-281-0/+1
| | | | | | O_RDONLY is not really a flag. Not providing O_WRONLY means O_RDONLY. Signed-off-by: Denis Efremov <efremov@linux.com>
* sys/linux: extend MADV_ descriptionTaras Madan2021-09-201-1/+1
|
* all: support exclude globs in descriptorJoey Jiao2021-06-021-1/+2
|
* pkg/compiler: add glob typeJoey Jiaojg2021-05-261-0/+2
| | | | | | | | | | | | | | | | | | | | * all: add new typename dirname The current way to check files under sysfs or proc is: - define a string to represent each file - open the file - pass the fd to write / read / close The issues above are: - Need to know what file present on target device - Need to write openat for each file With dirname added, which will open one file in the directory randomly and then pass the fd to write/read/close. * all: use typename glob to match filename Fixes #481
* sys/linux: add file_handle descriptionsDmitry Vyukov2021-04-131-4/+221
|
* sys/linux: add mknodat$loop variantMickaël Salaün2021-02-171-0/+1
| | | | | | Duplicate mknod$loop() for architectures without mknod(). Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com>
* sys/linux: add mknodat$null variantMickaël Salaün2021-02-171-0/+1
| | | | | | Add a variant to create a /dev/null character device. Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com>
* sys/linux: add fork syscallMickaël Salaün2021-02-041-0/+1
| | | | | | fork() is useful for Landlock fuzzing. Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com>
* sys/linux: add /proc/self/{totmaps,reclaim}Dmitry Vyukov2020-12-101-1/+10
| | | | Both are ChromeOS-specific.
* sys/linux: flip more tcp sysctl'sDmitry Vyukov2020-12-071-2/+18
| | | | | | | | | | Also flip these: /proc/sys/net/ipv4/tcp_dsack /proc/sys/net/ipv4/tcp_recovery /proc/sys/net/ipv4/tcp_mtu_probing /proc/sys/net/ipv4/tcp_rfc1337 /proc/sys/net/ipv4/tcp_rmem /proc/sys/net/ipv4/tcp_wmem
* sys/linux: flip some sysctl'sDmitry Vyukov2020-12-011-0/+24
| | | | | | | These have some non-trivial effects like compacting memory or changing TCP parameters in realistic ways. Fixes #1671
* pkg/ast: remove trailing spaces when formattingDmitry Vyukov2020-11-251-1/+1
|
* sys/linux: add descriptions of qat_adf_ctlCheng-Min Chiang2020-08-281-1/+0
| | | | | Add descriptions for qat_adf_ctl. It might need an intel qat device. Update #533.
* Revert "sys/linux: add description for fsinfo"Ioana-Ruxandra Stăncioi2020-08-241-13/+0
| | | | | | | | | The fsinfo() system call is under heavy discussion upstream, and it might be totally changed. As a result it was dropped from linux-next starting in next-20200819, and the pull request for 5.9 (https://lkml.kernel.org/r/1845353.1596469795@warthog.procyon.org.uk/) wasn't accepted. Therefore revert the syscall description (commit 4b0871d) for now.
* sys/linux: add descriptions of vga_arbiterCheng-Min Chiang2020-08-201-1/+0
| | | | | Add desciptions for testing /dev/vga_arbiter. Update #533
* pkg/compiler: check for unused resourcesDmitry Vyukov2020-08-041-3/+2
| | | | | | | | | | If a resource is never used as an input, it is not useful. It's effectively the same as using an integer. Detect such cases, they are quite confusing. Fix all existing errors in descriptions. This uncovered some interesting bugs as well, e.g. use of a completely unrelated fd subtype after copy-paste (while the resource that was supposed to be used there is completely unused).
* sys/linux: descriptions for /dev/snd/hw*Nazime Hande Harputluoglu2020-07-291-1/+0
|
* sys/linux: descriptions for /dev/sequencerNazime Hande Harputluoglu2020-07-291-2/+0
|
* sys/linux: add description for copy_file_rangeAlbert van der Linde2020-07-251-0/+2
|
* sys/linux: fixed p{read,write}{v,v2} descriptionsNecip Fazil Yildiran2020-07-241-4/+4
| | | | | | | The raw system calls have call signatures that differ slightly from that of the corresponding GNU C library wrapper functions. The descriptions are fixed to reflect the raw system calls, which unpacks the offset into two args, off_l and off_h.
* sys/linux: added descs for preadv2, pwritev2Necip Fazil Yildiran2020-07-241-0/+4
|
* sys/linux: /dev/snapshot descriptions (#1934)handeharputlu2020-07-141-6/+0
|
* sys/linux: improved the desc for ioprio priority valuesNecip Fazil Yildiran2020-07-091-2/+26
| | | | | ioprio priority values (as passed to ioprio_set()) take values from a limited range. This fact was reflected in the descriptions.
* sys/linux: add close_rangeJiaheng Hu2020-07-081-0/+4
| | | | | Added description for close_range which is currently in linux-next (https://lore.kernel.org/lkml/20200602204219.186620-2-christian.brauner@ubuntu.com/).
* sys/linux: add process_madviseJiaheng Hu2020-07-071-0/+1
| | | | | Adde description for process_madvise syscall in linux-next (https://lore.kernel.org/lkml/20200622192900.22757-4-minchan@kernel.org).
* sys/linux: add new flags into clone3Jiaheng Hu2020-07-071-1/+2
| | | | | Added the CLONE_INTO_CGROUP and CLONE_CLEAR_SIGHAND flag for the clone3 syscall.
* sys/linux: add riscv_flush_icache syscallDmitry Vyukov2020-07-011-0/+3
| | | | +extract constants on next-20200701
* sys/linux: add faccessat2Jiaheng Hu2020-06-291-2/+3
| | | | Added the faccessat2 description (linux 5.8) (https://git.kernel.org/linus/c8ffd8bcdd28296a).
* sys/linux: add description for fsinfoJiaheng Hu2020-06-261-0/+13
| | | | | | Added the description for the new fsinfo sys call (currently in linux-next). Details about fsinfo can be seen in https://lkml.kernel.org/linux-fsdevel/158454408854.2864823.5910520544515668590.stgit@warthog.procyon.org.uk/.
* sys/linux: add openat2 descriptionJiaheng Hu2020-06-241-0/+9
| | | | | | Added the openat2 syscall for file and for directory. Details of the syscall can be seen at https://man7.org/linux/man-pages/man2/openat2.2.html.
* sys/linux: specific descriptions for vim2m (v4l2)Ricardo Cañuelo2020-06-091-1/+1
| | | | | | | | | | | | | Add a set of descriptions to focus the fuzzing process on the V4L2 vim2m test driver. This should be useful to test the M2M framework. The syscalls are based on a specific file descriptor for the vim2m device and a selection of v4l2 ioctls that operate on it. Some of the existing v4l2 data structure definitions have been extended to allow restricting and selecting some options in order to narrow down the fuzzing process. Initial support for Request API added.
* sys/linux: add MREMAP_DONTUNMAP flagMatt Morehouse2020-06-061-1/+1
| | | | Update https://github.com/google/syzkaller/issues/533.
* sys/linux: fix some warnings in descriptionsDmitry Vyukov2020-05-251-0/+1
|
* sys/linux: generate consts on next-20200519Dmitry Vyukov2020-05-201-1/+1
|
* sys/linux: mark some ioctls as disabledDmitry Vyukov2020-05-041-4/+11
| | | | | | | Mark ioctls we disable in init.go as disabled. Update #477 Update #502
* prog: add ignore_return and breaks_returns call attribtuesDmitry Vyukov2020-04-191-18/+20
| | | | | We had these hard-coded for fuchsia and linux accordingly. Replace with call attributes.
* pkg/compiler: refactor attribute handlingDmitry Vyukov2020-04-191-5/+5
| | | | | | | | | | | | Introduce common infrastructure for describing and parsing attribute instead of custom per-attribute code scattered across several locations. Change align attribute syntax from the weird align_N to align[N]. This also allows to use literal constants as N. Introduce notion of builtin constants. Currently we have only PTR_SIZE, which is needed to replace align_ptr with align[PTR_SIZE].