aboutsummaryrefslogtreecommitdiffstats
path: root/executor
Commit message (Collapse)AuthorAgeFilesLines
* sys/fuchsia/fidlgen: update FIDL path & extract new descriptionsJulia Hansbrough2019-02-211-2/+2
| | | | | | | | Garnet-layer FIDL descriptions are in a new subdirectory. This CL changes it to the proper directory, and performed a "make extract" shortly after. This should fix some of the errors on the Syzkaller hub.
* sys/linux: add netlink seg6 descriptionshoujingyi2019-02-212-5/+30
| | | | | | | | | | * Add files via upload * Add files via upload * Add files via upload * Add files via upload
* executor: fix format stringsDmitry Vyukov2019-02-191-2/+2
| | | | clang complains that we pass an int to %hx. Fix it.
* executor: fix detection of blocked callsDmitry Vyukov2019-02-131-2/+1
| | | | | Unfinished calls are always blocked too, so set the blocked flag for unfinished calls.
* hafnium: add basic supportDmitry Vyukov2019-02-122-5/+25
| | | | | | | Add [very] basic support for testing Hafnium: https://hafnium.googlesource.com/hafnium Update #996
* sys/linux: regenerate constsDmitry Vyukov2019-02-122-79/+103
| | | | Regenereate consts on latest linux-next.
* sys/linux: add NDISC packet formats to vnet.txtDan Robertson2019-02-111-5/+5
| | | | Add the basic NDISC (RFC 4861) packet formats to sys/linux/vnet.txt.
* sys/linux: prohibit EXT4_IOC_RESIZE_FSDmitry Vyukov2019-02-082-10/+5
| | | | | | | | | | | | | | | When we run with sandbox=none, test program can do EXT4_IOC_RESIZE_FS which shrinks rootfs basically to 0. This breaks the machine as all tests then fail with: failed to create temp dir: mkdir syzkaller-testdir077269498: no space left on device This is the most common source of "lost connection" crashes overall and they are not actually kernel bugs. Prohibit EXT4_IOC_RESIZE_FS for now. Alternatively we can mount tmpfs with sandbox=none. Update #971
* sys/linux: extend key descriptionsDmitry Vyukov2019-02-072-5/+35
|
* sys/linux: move {i,fa}notify into own filesDmitry Vyukov2019-02-072-7/+81
|
* sys/fuchsia: fix fidlgen issuesMarco Vanotti2019-02-062-94/+82
| | | | | | | | | | | | | | | | | | | | | | | | | * sys/fuchsia: fix fidlgen issues. This change modifies fidlgen removing fuchsia.mediacodec and renaming zircon-ethernet to fuchsia-hardware-ethernet. fuchsia.mediacodec has most of its functionality merged into fuchsia.media and it's not included in the default amd64 builds. zircon-ethernet has been renamed to fuchsia-hardware-ethernet recently: https://fuchsia-review.googlesource.com/c/zircon/+/237178 * docs/fuchsia: Add troubleshooting sections This commit adds a troubleshooting section in the fuchsia syzkaller docs that mentions how to solve fidlgen issues when fidl interfaces are removed or renamed. * sys/fuchsia: remove stale autogenerated files. * sys/fucsia run make extract && make generate.
* sys/openbsd: add missing wscons descriptions (#976)Anton Lindqvist2019-02-012-1/+7
|
* executor: add missing includeDmitry Vyukov2019-02-011-0/+1
| | | | thread_start now uses errno, so include <errno.h>
* executor, pkg/ipc: simplify retry handlingDmitry Vyukov2019-01-312-18/+11
| | | | | | Remove kRetryStatus, it's effectively the same as exiting with 0. Remove ipc.ExecutorFailure, nobody uses it. Simplify few other minor things around exit status handling.
* executor: remove ability to detect kernel bugsDmitry Vyukov2019-01-312-19/+2
| | | | | | | | This ability was never used but we maintain a bunch of code for it. syzkaller also recently learned to spoof this error code with some ptrace magic (probably intercepted control flow again and exploited executor binary). Drop all of it.
* sys/test/test: add tests for test exiting in the middle of executionDmitry Vyukov2019-01-313-4/+17
|
* executor: fix do_sandbox_none on akaros and testDmitry Vyukov2019-01-314-5/+3
| | | | do_sandbox_none must not exit, it needs to return.
* executor: handle pthread_create errors betterDmitry Vyukov2019-01-311-3/+16
| | | | See the added comment for explanation.
* pkg/csource: write tracing output to stderrDmitry Vyukov2019-01-311-1/+1
| | | | stdout is not flushed on abnormal exit.
* executor: fix remote coverage area sizeAndrey Konovalov2019-01-281-1/+1
| | | | It should be in number of words not in bytes.
* sys/openbsd: add wscons descriptions, limited to wsdisplay for nowAnton Lindqvist2019-01-262-1/+40
|
* sys/openbsd: add openat$ttyAnton Lindqvist2019-01-262-1/+2
|
* sys/openbsd: add openat${null,zero}Anton Lindqvist2019-01-262-1/+3
|
* sys/linux: fix up mptcp descriptionsDmitry Vyukov2019-01-252-80/+4
| | | | | | | 1. Generate .const files for all arches. 2. Don't extract mptcp consts on android. 3. Remove mptcp includes from vnet.txt. 4. Enable CONFIG_MPTCP in syz-extract (mptcp is not like all other kernel headers).
* sys/linux: add Multipath TCP description8litz2019-01-251-5/+5
| | | https://tools.ietf.org/html/rfc6824
* sys/linux: add trusty hwrng serviceDmitry Vyukov2019-01-242-5/+25
| | | | Update #933
* sys/linux: add trusty hwkey serviceDmitry Vyukov2019-01-242-5/+20
| | | | Update #933
* sys/linux: describe trusty storage service interfaceDmitry Vyukov2019-01-242-5/+20
| | | | Update #933
* sys/linux: fix a TODODmitry Vyukov2019-01-241-5/+5
| | | | | We can actually express such size with: define X25_SUBSCRIP_DEVICE_SIZE 200 - sizeof(long)
* sys/linux: regenerate const filesDmitry Vyukov2019-01-242-3/+79
| | | | (on linux-next)
* sys/linux: update TODO commentsDmitry Vyukov2019-01-241-5/+5
| | | | | | Change TODO comments that refer to missing description language features to NEED comments as that it's easier to grep for them. Remove some outdated comments. Fix 2 easy fixable TODOs.
* sys/openbsd: remove mincore(2) descriptionAnton Lindqvist2019-01-222-2/+1
| | | | | | It was recently removed from OpenBSD[1]. [1] https://marc.info/?l=openbsd-cvs&m=154723400730318&w=2
* pkg/host: enable FeatureComparisons on OpenBSDAnton Lindqvist2019-01-211-12/+2
|
* executor: unbreak on OpenBSDAnton Lindqvist2019-01-192-1/+1
| | | | | | | Commit b5df78dc ("all: support extra coverage") broke the executor on OpenBSD: executor/executor.cc:61:11: error: unused variable 'kExtraCoverSize' [-Werror,-Wunused-const-variable] const int kExtraCoverSize = 256 << 10;
* kcov: some fixes for extra coverageAndrey Konovalov2019-01-171-1/+1
| | | | | | Use PC tracing mode when detecting KCOV_REMOTE_ENABLE support in the kernel. Also fix kcov_remote_handle_usb argument.
* executor: remove unused kvm_asm64_vm86Dmitry Vyukov2019-01-173-14/+0
| | | | | | | -Wunused-const-variable shows it. No idea now if it should be used or not, seems to be the same as kvm_asm32_paged_vm86. So let's just remove it.
* all: detect extra coverage supportAndrey Konovalov2019-01-162-9/+14
| | | | Based on whether the kernel supports KCOV_REMOTE_ENABLE ioctl.
* all: support extra coverageAndrey Konovalov2019-01-165-31/+106
| | | | | | | | | | | | | | | Right now syzkaller only supports coverage collected from the threads that execute syscalls. However some useful things happen in background threads, and it would be nice to collect coverage from those threads as well. This change adds extra coverage support to syzkaller. This coverage is not associated with a particular syscall, but rather with the whole program. Executor passes extra coverage over the same ipc mechanism to syz-fuzzer with syscall number set to -1. syz-fuzzer then passes this coverage to syz-manager with the call name "extra". This change requires the following kcov patch: https://github.com/xairy/linux/pull/2
* sys/freebsd: add SCTP syscallsmsvoelker2019-01-162-1/+177
| | | | | | | | * sys/freebsd: Add SCTP syscalls * sys/freebsd: SCTP syscalls updated * sys/freebsd: SCTP syscalls fixed
* sys/linux: add trusty supportDmitry Vyukov2019-01-142-5/+80
| | | | | | Add support for trusty tipc devices and several trusty app ports. Update #933
* sys/linux: Add syscalls to read from sockets for crypto operationsZubin Mithra2019-01-142-5/+10
| | | | | | sockaddr_alg with salg_type as "skcipher", "aead", "hash" and "rng" support for reading from these sockets. Add read descriptions to socket_alg.txt.
* executor: adapt switching to user nobody to be more portable on BSDsKamil Rytarowski2019-01-141-5/+10
| | | | | | | | | NetBSD uses different uid/gid than FreeBSD/OpenBSD for the user nobody. Instead of hardcoding the values, retrieve it from the password entry database. While there, switch to setuid(2) and setgid(2) calls as they are good enough and portable. setresgid(2) and setresuid(2) aren't available on NetBSD.
* executor: do not call setrlimit(2) for RLIMIT_AS for NetBSDKamil Rytarowski2019-01-141-2/+4
| | | Setting the limit caused abnormal failure during early init on NetBSD.
* executor: update KCOV support for FreeBSDMichael Tuexen2019-01-141-17/+4
| | | | | | KCOV support has been added to FreeBSD in r342962. Use the header file and update the code to latest changes introduced in the review process.
* executor: disable gen.go for NetBSDKamil Rytarowski2019-01-101-1/+1
| | | kvm is Linux specific.
* tools/syz-trace2syz/proggen/proggen_test.go: test ipv6 address conversionShankara Pailoor2019-01-101-5/+5
|
* sys/linux: add rand_addr option to ipv6_addr unionShankara Pailoor2019-01-101-5/+5
| | | | | | | rand_addr option is the first option for the ipv6_addr union and is just an array of 16 bytes. This option makes it easy for trace2syz to convert ipv6 address as strace decodes the ipv6 address as a hex string.
* executor: adapt os_init() to NetBSD with PaX MPROTECTKamil Rytarowski2019-01-091-0/+3
| | | | | | Initialize syz data segment with protection allowed by PaX MPROTECT. PROT_MPROTECT() registers future potential protection that is allowed to be enabled in future.
* sys/linux: prohibit SNAPSHOT_FREEZEDmitry Vyukov2019-01-061-5/+5
| | | | SNAPSHOT_FREEZE freezes all processes and leaves the machine dead.
* sys/linux: add /dev/ppp descriptionsDmitry Vyukov2019-01-042-5/+105
|