aboutsummaryrefslogtreecommitdiffstats
path: root/sys/test.txt
Commit message (Collapse)AuthorAgeFilesLines
* sys: move linux descriptions to sys/linuxDmitry Vyukov2017-09-151-535/+0
|
* pkg/compiler: detect resources without ctorsDmitry Vyukov2017-09-041-0/+2
| | | | Fixes #217
* pkg/compiler: check and generate typesDmitry Vyukov2017-09-021-1/+0
| | | | | | Move most of the logic from sysgen to pkg/compiler. Update #217
* pkg/compiler: actually tolerate unsupported constsDmitry Vyukov2017-08-281-0/+5
| | | | | The previous commit removes errors on unsupported structs/resources, but their usages still error. Fix that.
* pkg/compiler: tolerate unsupported consts everywhereDmitry Vyukov2017-08-281-0/+9
| | | | | | Currently unsupported consts in structs and resources break build. However, that can well happen for arch-specific devices (e.g. Android). Make this non-fatal as it used to be.
* pkg/compiler, sys/syz-sysgen: move const handling to pkg/compilerDmitry Vyukov2017-08-271-0/+4
| | | | Now pkg/compiler deals with consts.
* sys: reformat descriptionsDmitry Vyukov2017-08-181-22/+22
|
* prog: fix encoding for exec of result argsAndrey Konovalov2017-08-011-0/+7
| | | | | | ResultArg might have const value. Also add a test.
* prog: return error instead of panic when parsingAndrey Konovalov2017-07-241-0/+13
|
* prog: allow recursion for optional pointersAndrey Konovalov2017-07-191-0/+31
| | | | | | | | When syzkaller generates arg that uses a few structs that reference each other via pointers, it can go into infinite recursion and crash. Fix this by forcing pointer args to be null when the depth of recursion reaches 3 for some struct.
* prog, sys: add icmpv6 packet descriptions and checksumsAndrey Konovalov2017-02-081-3/+14
| | | | | | Also generalize checksums into the two kinds: inet and pseudo. Inet checksums is just the Internet checksum of a packet. Pseudo checksum is the Internet checksum of a packet with a pseudo header.
* prog, sys: add icmp descriptions and checksumAndrey Konovalov2017-02-061-1/+1
|
* prog, sys: add udp description and checksumAndrey Konovalov2017-02-021-1/+17
|
* prog, sys: add ipv6 description and checksumAndrey Konovalov2017-02-021-1/+11
|
* prog, sys: add tcp packets descriptionsAndrey Konovalov2017-01-301-4/+22
| | | | Also embed tcp checksums into packets.
* prog, sys: add csum type, embed checksums for ipv4 packetsAndrey Konovalov2017-01-251-0/+19
| | | | | | | This change adds a `csum[kind, type]` type. The only available kind right now is `ipv4`. Using `csum[ipv4, int16be]` in `ipv4_header` makes syzkaller calculate and embed correct checksums into ipv4 packets.
* sys, prog: add length of parent of parent to templatesAndrey Konovalov2017-01-231-0/+22
| | | | | | | | | | | | | | Example: ``` struct s1 { f0 len[s2] # length of s2 } struct s2 { f0 s1 f1 array[int32] } ```
* prog: fix bytesizeN for nonarray fieldsAndrey Konovalov2017-01-191-2/+25
|
* prog: fix calculating parent length in struct with bitfieldsAndrey Konovalov2017-01-191-0/+14
|
* prog, sys: fix padding varlen structsAndrey Konovalov2017-01-191-0/+6
|
* prog: add tests for alignment and offsetsAndrey Konovalov2017-01-181-15/+105
|
* prog: add bitfields to templatesAndrey Konovalov2017-01-171-0/+17
| | | | | | Now it's possible to use `int32:18` to denote a bitfield of size 18 as a struct field. This fixes #72.
* sys: extend kvm supportDmitry Vyukov2017-01-091-0/+7
| | | | | | Add new pseudo syscall syz_kvm_setup_cpu that setups VCPU into interesting states for execution. KVM is too difficult to setup otherwise. Lots of improvements possible, but this is a starting point.
* sys: allow to specify number of pages for vma typeDmitry Vyukov2017-01-091-0/+4
| | | | Allows to write vma[4] or vma[5-10] to specify desired number of pages.
* prog: add bytesizeN typesAndrey Konovalov2016-12-201-0/+11
|
* prog: fix pointer direction validationDmitry Vyukov2016-11-241-0/+8
| | | | | | | | | | | Currently the added test description leads to crashes: --- FAIL: TestMinimizeRandom (0.12s) prog_test.go:20: seed=1480014002950172453 panic: syscall syz_test$regression0: pointer arg 'f0' has output direction [recovered] panic: syscall syz_test$regression0: pointer arg 'f0' has output direction The description is OK. Fix that.
* Add tests for big-endian intsAndrey Konovalov2016-10-131-0/+21
|
* Add assign len fields testsAndrey Konovalov2016-10-111-0/+90
|
* Add exec serialize tests for array[int8]Andrey Konovalov2016-10-041-0/+13
|
* sys: add padding to structs againDmitry Vyukov2016-09-291-0/+25
| | | | | | | | Struct padding was accidentially lost after: 852e3d2eae98a913b7ec91822ba4dc61059a6955 Restore it. Now with tests. Fixes #78
* prog: add a test for union layoutDmitry Vyukov2016-09-291-2/+17
| | | | | This is a retrospect tests for the union bug fixed in: 91eb1b922fd95bfaa5d8b0aad16902a73f3fe3d1
* sys, prog: add tests for description parsing and serializationDmitry Vyukov2016-09-281-0/+25
Add sys/test.txt file with description of syscalls for tests. These descriptions can be used to ensure that we can parse everything we clain we can parse. Use these descriptions to write several tests for exec serialization (one test shows that alignment handling is currently incorrect). These test descriptions can also be used to write e.g. mutation tests. Update #78