aboutsummaryrefslogtreecommitdiffstats
path: root/executor/syscalls.h
Commit message (Collapse)AuthorAgeFilesLines
* executor: fix clang-tidy warningsDmitry Vyukov2017-06-131-3/+3
| | | | | A single check is enabled for now (misc-definitions-in-headers). But it's always fixable and found 2 bugs in csource.
* sys: check in generated filesDmitry Vyukov2017-06-131-0/+4542
| | | | | | | | | | | | | | | | | | We used to have all generated files checked in. Later we removed them (now users are supposed to run make to generate them). This causes several problems: - go get does not work as it tries to build everything straight away (go get -d works, but users are confused) - users don't run make and complain that build is broken - users don't re-run make after updates and complain that build is broken - hard to integrate into other build system (even if they support building Go, they don't support running sysgen out-of-the-box) Fixes #216
* sys: remove autogenerated filesDmitry Vyukov2016-09-021-3350/+0
| | | | | | | | They were necessary when they were the source of constant values extracted from kernel code (hard to do). Now constants are checked-in separately, and these large files can be easily regenerated with 'make generate'. Now they are only a source of large uninteresting diffs in commits. Remove them.
* executor, csource: share some common code between executor and csourceDmitry Vyukov2016-08-281-3330/+3327
|
* overhaul syscall description generation processDmitry Vyukov2016-08-261-4121/+3008
| | | | | | | | | | | | | | | | | | | | | | This splits generation process into two phases: 1. Extract values of constants from linux kernel sources. 2. Generate Go code. Constant values are checked in. The advantage is that the second phase is now completely independent from linux source files, kernel version, presence of headers for particular drivers, etc. This allows to change what Go code we generate any time without access to all kernel headers (which in future won't be limited to only upstream headers). Constant extraction process does require proper kernel sources, but this can be done only once by the person who added the driver and has access to the required sources. Then the constant values are checked in for others to use. Consant extraction process is per-file/per-arch. That is, if I am adding a driver that is not present upstream and that works only on a single arch, I will check in constants only for that driver and for that arch.
* executor: add support for 386 arch (COMPAT syscalls)Dmitry Vyukov2016-06-301-0/+1113
| | | | | This is not fully working now: e.g. prog and sys packages assume that pointer size is 8. But at least it compiles and works.
* sys: update generated filesDmitry Vyukov2016-06-131-0/+207
|
* sys: fix /dev/snd/pcm descriptionDmitry Vyukov2016-02-051-3/+6
|
* sys: regenerate after tun/random supportDmitry Vyukov2016-01-261-0/+87
|
* sys: open a bunch of new devicesDmitry Vyukov2016-01-261-0/+144
|
* sysgen: use __ppc64__ || __PPC64__ || __powerpc64__ to detect ppcDmitry Vyukov2016-01-251-3/+3
| | | | Different macros are defined by different compilers...
* sys: add basic netlink support for realDmitry Vyukov2016-01-231-0/+48
|
* sys: use kernel headers instead of host headersDmitry Vyukov2016-01-221-15/+965
| | | | | | | | This solves several problems: - host usually have outdates headers, so previously we need to define missing consts - host may not have some headers at all - generation depends on linux distribution and version - some of the consts cannot be defined at all (e.g. ioctls that use struct arguments)
* sys: describe more dri syscallsDmitry Vyukov2016-01-161-0/+92
|
* sys: support /dev/input/event ioctlsDmitry Vyukov2016-01-151-0/+72
|
* sys: support /dev/input/{mouse,mice,event}Dmitry Vyukov2016-01-131-0/+2
|
* sys: introduce a generic syz_open_dev helper syscallDmitry Vyukov2016-01-131-15/+20
|
* sys: add support for /dev/snd/controlDmitry Vyukov2016-01-131-0/+51
|
* sys: add support for /dev/snd/timerDmitry Vyukov2016-01-121-0/+30
|
* sys: support /dev/snd/seqDmitry Vyukov2016-01-111-0/+66
|
* sys: add kvm supportDmitry Vyukov2016-01-081-0/+172
|
* sys: add sctp supportDmitry Vyukov2015-12-301-12/+96
|
* sys: add union typeDmitry Vyukov2015-12-291-2/+2
|
* sys: support for AF_UNIX socketsDmitry Vyukov2015-12-281-2/+42
|
* sys: move more subsystems into separate filesDmitry Vyukov2015-12-281-394/+394
|
* sys: split syscall description into several filesDmitry Vyukov2015-12-281-34/+34
|
* host: detect unsupported syscallsDmitry Vyukov2015-12-271-0/+4
| | | | | | Also detect transitively unsupported syscalls, that is, syscalls for which all syscalls that can create input arguments are disabled.
* sysgen: fix syscall number assignment for syzkallsDmitry Vyukov2015-12-241-8/+8
|
* sysgen: pull in syscall numbers from kernel headersDmitry Vyukov2015-12-241-1784/+1284
| | | | | | | | Syscall numbers for different architectures are now pulled in from kernel headers. This solves 2 problems: - we don't need to hardcode numbers for new syscalls (that don't present in typical distro headers) - we have correct number for different archs (previously hardcoded numbers were for x86_64) This also makes syscall numbers available for Go code, which can be useful.
* sys: expose new syscall numbers programmaticallyDmitry Vyukov2015-12-231-17/+1144
| | | | This will be required for reproduction tool.
* sys: fix typosDmitry Vyukov2015-12-171-1/+1
|
* sys: add bluetooth supportDmitry Vyukov2015-12-171-0/+60
|
* sys: add PF_NFC supportDmitry Vyukov2015-12-171-0/+11
|
* sys: add support for PF_ALGDmitry Vyukov2015-12-171-0/+9
|
* sys: describe some additional syscallsDmitry Vyukov2015-12-031-0/+18
|
* sys: add userfaultfd syscallDmitry Vyukov2015-11-301-0/+10
|
* add perf ioctl'sDmitry Vyukov2015-11-291-0/+9
|
* add support for perf eventsDmitry Vyukov2015-11-291-0/+1
|
* add support for bpf syscallDmitry Vyukov2015-11-291-0/+14
|
* add fuse supportDmitry Vyukov2015-11-191-0/+16
|
* basic support for dri/drm driversDmitry Vyukov2015-11-181-1/+13
|
* add tty-related ioctl'sDmitry Vyukov2015-11-161-0/+97
|
* describe keyctl syscallDmitry Vyukov2015-11-061-1/+23
|
* preliminary description of kdbus syscallsDmitry Vyukov2015-10-161-0/+16
|
* add common ioctl commandsDmitry Vyukov2015-10-151-0/+4
|
* improvements for kdbusDmitry Vyukov2015-10-151-0/+8
|
* describe setsockopt... more or lessDmitry Vyukov2015-10-131-0/+42
|
* describe sysfs and ioprio syscallsDmitry Vyukov2015-10-131-3/+7
|
* describe arguments of prctl syscallDmitry Vyukov2015-10-131-1/+10
|
* initial commitDmitry Vyukov2015-10-121-0/+307