aboutsummaryrefslogtreecommitdiffstats
path: root/executor
Commit message (Collapse)AuthorAgeFilesLines
...
* prog: don't add fallback coverage after prctlDmitry Vyukov2020-01-152-1/+2
| | | | The same reason as with seccomp.
* executor: ignore prctl in fallback coverageDmitry Vyukov2020-01-151-1/+7
| | | | | | Some prctl commands don't respect the normal convention for return values (e.g. PR_GET_TIMERSLACK, but there are more) and may produce all possible errno values. This conflicts with fallback coverage.
* sys/linux: extend and improve NFNL_SUBSYS_NFTABLES descriptionsDmitry Vyukov2020-01-152-12/+6
|
* sys/linux: add NFNL_SUBSYS_NFTABLES descriptionsDmitry Vyukov2020-01-142-6/+72
|
* sys/linux: add NFNL_SUBSYS_CTNETLINK_TIMEOUT descriptionsDmitry Vyukov2020-01-132-6/+36
|
* executor: provide explicit values for usb_raw_event_typeAndrey Konovalov2020-01-131-3/+3
| | | | To match the kernel uapi headers.
* sys/linux: add NFNL_SUBSYS_ACCT descriptionsDmitry Vyukov2020-01-132-6/+30
|
* sys/linux: add NFNL_SUBSYS_OSF descriptionsDmitry Vyukov2020-01-132-6/+18
|
* sys/freebsd: fix ipv6_packet nameDmitry Vyukov2020-01-121-2/+2
| | | | | The common code now expects it to be called ipv6_packet_t. The freebsd fork wasn't updated when the linux version changed.
* sys/linux: open more files from procfsDmitry Vyukov2020-01-122-6/+18
|
* sys/linux: add NFNL_SUBSYS_ULOG descriptionsDmitry Vyukov2020-01-092-6/+12
|
* sys/linux: add NFNL_SUBSYS_QUEUE descriptionsDmitry Vyukov2020-01-092-6/+24
|
* sys/linux: few minor ipset improvements.Dmitry Vyukov2020-01-071-6/+6
| | | | | 1. Add "bitmap:port" type. 2. ipv4/6 addresses must be in network byte order.
* sys/linux: add ipset descriptionsDmitry Vyukov2020-01-072-6/+120
|
* sys/linux: fix 2 netlink data layout bugsDmitry Vyukov2020-01-071-10/+10
| | | | | | | | | | | 1. Turns out that NLA_F_NESTED is actually used and checked (nla_parse_nested checks it, while nla_parse_nested_deprecated does not). Similarly, ipset extensively checks NLA_F_NET_BYTEORDER. So we need these bits. 2. nla_len must not account for the trailing alighnment padding. This means we set wrong len for payloads that are not multiple of 4 (int8/int16/strings/arrays/some structs/etc).
* pkg/compiler: fix another bitfield layout bugDmitry Vyukov2020-01-071-10/+10
| | | | See the added test for details.
* executor: setns requires including sched.h on some setupsAndrey Konovalov2020-01-071-0/+1
|
* sys/linux: add NFNL_SUBSYS_CTHELPER/NFNL_SUBSYS_CTNETLINK_EXP descriptionsDmitry Vyukov2020-01-052-6/+48
|
* prog: fix tests for string enforcementDmitry Vyukov2020-01-052-7/+13
| | | | | | | | String value enforcement broke a number of tests where we use different values. Be more string as to what string values we use in tests. Required to add tmpfs descriptions to test syz_mount_image. Also special-casing AF_ALG algorithms as these are auto-generated.
* sys/linux: add AF_NETLINK/NETLINK_NETFILTER/NFNL_SUBSYS_CTNETLINK descriptionsDmitry Vyukov2020-01-052-6/+54
|
* prog: don't mutate strings with enumerated valuesDmitry Vyukov2020-01-052-1/+3
| | | | | | | | | | Strings with enumerated values are frequently file names or have complete enumeration of relevant values. Mutating complete enumeration if not very profitable. Mutating file names leads to escaping paths and fuzzer messing with things it is not supposed to mess with as in: r0 = openat$apparmor_task_exec(0xffffffffffffff9c, &(0x7f0000000440)='/proc/self//exe\x00', 0x3, 0x0)
* executor: fix IPVLAN_F_VEPA definition againDmitry Vyukov2020-01-031-2/+1
| | | | | | | | Now other machines failed with redefinition IPVLAN_F_VEPA. The #ifndef does not really work the way it should due to the way pkg/csource preprocesses sources. IPVLAN_F_VEPA is never defined during preprocessing. Let's try this.
* sys/linux: add vlan/macvlan/ipvlan/mactap device policiesDmitry Vyukov2020-01-031-6/+6
|
* executor: define constants that are missing on some distrosDmitry Vyukov2020-01-031-0/+6
|
* executor: setup vlan/macvlan/ipvlan devicesDmitry Vyukov2020-01-032-9/+70
|
* sys/linux: add basic AF_PHONET descriptionsDmitry Vyukov2020-01-032-6/+119
|
* sys/linux: add minimal AFS descriptionsDmitry Vyukov2020-01-032-6/+12
|
* sys/linux: add 80211 descriptionsDmitry Vyukov2020-01-032-6/+222
|
* sys/linux: fix SIOCGIFINDEXDmitry Vyukov2020-01-031-6/+6
| | | | | | | Mark ifindex as opt in SIOCGIFINDEX. Otherwise it's considered inout and SIOCGIFINDEX can't be used to produce ifindex'es on its own. It requires an input ifindex first and only then it can output own ifindex.
* executor: connect virt_wifi to vethDmitry Vyukov2020-01-032-7/+11
| | | | | | virt_wifi docs say that the enslaved device won't be usable on itself. It's probably not a good idea to make lo unusable. Enslave a dedicated veth instead.
* sys/linux: add netlabel descriptionsDmitry Vyukov2020-01-032-6/+174
|
* sys/linux: improve ipv4/ipv6 vnet descriptionsDmitry Vyukov2020-01-031-6/+6
| | | | | | | | | | | | 1. Use optional[T] instead of array[T, 0:1]. 2. Deduplicate 3 copies of ARP packet. 3. Deduplicate IPOPT_LSRR/IPOPT_SSRR/IPOPT_RR. 4. More precise description of IPOPT_TIMESTAMP/IPOPT_LSRR/IPOPT_SSRR/IPOPT_RR. 5. Don't use IPOPT_END/IPOPT_NOOP in generic option (they have different format). 6. Restrict cipso doi values. 7. Fix IPOPT_RA value type (int16 instead of int32). 8. Match ipv4/ipv6 packet type with payload. 9. Prefer 0 frag_off for ipv4 packets (they are extremely hard to get right).
* sys/linux: add IPPROTO_L2TP descriptionsDmitry Vyukov2019-12-312-36/+180
|
* sys/linux: add virt_wifi and xfrm devicesDmitry Vyukov2019-12-303-6/+46
| | | | + some netlink descriptions
* sys/linux: add {MSG,SEM,SHM}_STAT_ANYDmitry Vyukov2019-12-302-6/+24
|
* sys/linux: fix 32-bit warningsDmitry Vyukov2019-12-231-6/+6
| | | | | | | Lots of interesting findings... Especially 2 byte uid/gid/pid. Update #590
* sys/linux: fix int64 alignment on 386Dmitry Vyukov2019-12-231-3/+3
| | | | | | | | | Turns out int64 alignment is 4 on 386... But on arm it's still 8. Another amusing finding thanks to syz-check. Update #590
* sys/linux: fix warnings in template definitionDmitry Vyukov2019-12-221-6/+6
| | | | Update #590
* tools/syz-check: check templatesDmitry Vyukov2019-12-221-6/+6
| | | | | | Also rename some netfilter types to eliminate massive amounts of template warnings. Update #590
* sys/linux: fix warning in dev_video4linux.txtDmitry Vyukov2019-12-221-5/+5
| | | | Update #590
* sys/linux: another batch of warning fixesDmitry Vyukov2019-12-222-12/+30
| | | | | | The only remaining part now is dev_video4linux.txt Update #590
* prog: don't fail decoding on non-default out argsDmitry Vyukov2019-12-212-1/+2
| | | | | | | We get them in cross-compilation test where an out const arg has different values in different archs. No reason to fail deserialization in that case, replace with default arg instead.
* sys/linux: fix 240 warnings in descriptionsDmitry Vyukov2019-12-201-6/+6
| | | | | | Sweeping fix of everything up to socket_netlink_route.txt. Update #590
* pkg/compiler: fix bitfield layout bugDmitry Vyukov2019-12-201-10/+10
| | | | | | Fixes #1542 Found thanks to syz-check. Update #590
* pkg/compiler: fix alignment of string-formatted valuesDmitry Vyukov2019-12-201-6/+6
| | | | | | We used size as alignment, this is very wrong. Found thanks to syz-check. Update #590
* executor: make syz_compare output more handy to useDmitry Vyukov2019-12-201-8/+9
|
* sys/test: and another set of bitfield testsDmitry Vyukov2019-12-202-5/+6
| | | | | | Just trying to get my head around it (and fix this in tests). Update #1542
* sys/test: and another bitfield testDmitry Vyukov2019-12-191-4/+4
| | | | | | Just trying to get my head around it (and fix this in tests). Update #1542
* prog: refactor bitfields representationDmitry Vyukov2019-12-191-12/+12
| | | | | | | | All callers of BitfieldMiddle just want static size (0 for middle). Make it so: Size for middle bitfields just returns 0. Removes lots of if's. Introduce Type.UnitSize, which now holds the underlying type for bitfields. This will be needed to fix #1542 b/c even if UnitSize=4 for last bitfield Size can be anywhere from 0 to 4 (not necessary equal to UnitSize due to overlapping).
* sys/test: add few other tests for tricky bitfieldsDmitry Vyukov2019-12-181-4/+4
| | | | Update #1542