Dmitry Vyukov
2dcee3b338
prog: use all resource special values for opt args
2018-06-18 19:45:46 +02:00
Dmitry Vyukov
af9f337ea6
pkg/host: support trial supported syscall detection
...
Detect supported syscall by directly executing them
if kallsyms is not present. This is required for gvisor testing.
2018-06-18 19:45:45 +02:00
Dmitry Vyukov
7bd97c6ff6
pkg/host: better detection of supported sockets
...
Check socketpair.
Check non-constant socket types.
2018-06-18 19:45:45 +02:00
Dmitry Vyukov
b7d00d1e14
pkg/email: support quoted-printable emails
...
We did not handle quoted-printable because mime package handles it.
But we can have a non-mime email in quoted-printable.
Simply handle it always, it's not hard.
2018-06-18 19:45:44 +02:00
Dmitry Vyukov
e79c9d2b43
vendor: add github.com/google/go-cmp/cmp
...
This package simplifies diffing complex objects in tests.
2018-06-18 19:45:37 +02:00
Dmitry Vyukov
27c5f59f50
all: fix gometalinter warnings
2018-06-12 20:10:58 +02:00
Dmitry Vyukov
6dcbc4355b
syz-fuzzer: fix image testing
...
During image testing we don't pass any enabledCalls,
so use all syscalls in such case.
2018-06-12 19:53:24 +02:00
shankarapailoor
b29d507d73
Update found_bugs.md
2018-06-12 19:39:10 +02:00
Dmitry Vyukov
87ee80501c
Update found_bugs.md
2018-06-12 19:18:33 +02:00
Dmitry Vyukov
598eb19243
prog: mutate fixed-size strings more
...
Allow removing/inserting ranges of bytes from fixed-size strings,
provided we truncate/extend resulting string to keep original size.
2018-06-12 19:09:26 +02:00
Dmitry Vyukov
6fb8a0255e
syz-manager: don't save repros sent to dashboard
...
These repros eat unbounded amount of disk space.
2018-06-12 18:31:28 +02:00
Dmitry Vyukov
b431b2cc4c
sys/linux: add rseq syscall
2018-06-12 18:06:44 +02:00
Dmitry Vyukov
06ece2ca66
pkg/host: rework host feature detection/setup
...
Currently host feature detection/setup code is spread
across platform-independent fuzzer code, pkg/host, pkg/ipc
and executor.
Move this all into pkg/host and show readable info
about features on manager start.
Fixes #46
2018-06-12 14:53:22 +02:00
Dmitry Vyukov
62d1af2467
pkg/instance: more robust instance testing
...
Strictly saying, we may not get the connection when
the fuzzer process exits. The accepting goroutine
may have not been scheduled yet.
For the connection for up to 10 seconds.
2018-06-11 16:47:12 +02:00
Dmitry Vyukov
0f0e5db62d
vm/adb: don't fail if port 35099 is busy
2018-06-11 16:47:12 +02:00
Ondrej Mosnacek
112eec798f
sys/linux: add missing generic crypto algs
2018-06-11 14:22:05 +03:00
Dmitry Vyukov
cb052d780d
Create README.md
2018-06-11 11:37:34 +02:00
Dmitry Vyukov
7b7a851040
Update syzbot.md
...
add reference to kernel configs
2018-06-11 11:36:50 +02:00
Dmitry Vyukov
12d131d7d8
dashboard/config: add syzbot configs
2018-06-11 11:32:02 +02:00
Dmitry Vyukov
ee885b87a4
vm/qemu: fix 9p for latest distros
...
9p stopped working on Debian rolling.
Update the init script.
2018-06-11 11:20:55 +02:00
Dmitry Vyukov
ae8bdb5058
syz-fuzzer: don't crash on commit mismatch
...
We now check for manager-fuzzer-executor commit mismatch (see Manager.Check).
But in some cases commit mismatch is not detected gracefully, and instead
leads to panics in fuzzer. Namely, when -enabled_syscalls fuzzer flag includes
large syscalls numbers, so large that they are no present at all in the an old
revision that fuzzer uses, in such case fuzzer panics.
Notify manager about invalid calls instead.
Fixes #464
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
deb0e69e10
executor: always use errors=continue when mounting ext2/3/4
...
For ext2/3/4 we have to have errors=continue because the image
can contain errors=panic flag and can legally crash kernel.
Fixes #599
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
9cff2eb96a
dashboard/app: attach fixing commits to canonical bugs
...
Fixes #615
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
b30b1136b6
dashboard/app: try 1 repro per day until we have at least syz repro
...
Bugs without repros are not actionable sometimes.
Fixes #627
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
a742909665
dashboard/app: move repro tests for separate file
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
848d746cf5
dashboard/app: use helper functions in tests
...
Update #606
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
952c799453
dashboard/app: refactor tests
...
Use standard dashboard client provided by dashapi package in tests.
Switch everything to use the client instead of API method.
Fixes #606
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
d6ae9b9739
dashboard/app: simplify config deployment
...
Currently one needs to switch between config_stub.go and prod
config back and forth on every deployment. This is very
inconvinient. Rework config, so that switching is not necessary.
2018-06-11 12:12:01 +03:00
Dmitry Vyukov
866118af36
sys/linux: add udplite sockets
2018-06-08 20:51:57 +02:00
Dmitry Vyukov
721401058c
sys/linux: add TCP_ZEROCOPY_RECEIVE and TCP_INQ
2018-06-08 20:40:46 +02:00
Dmitry Vyukov
09ca59bff7
sys/linux: add ip6t_srh1 description
2018-06-08 20:29:37 +02:00
Dmitry Vyukov
145029013c
sys/linux: add more fs ioctls
2018-06-08 20:21:23 +02:00
Dmitry Vyukov
9dbd63342f
sys/linux: minor fixes for aio
2018-06-08 19:26:15 +02:00
Dmitry Vyukov
c5ca9ff98c
sys/linux: move aio descriptions into separate file
2018-06-08 18:55:53 +02:00
Dmitry Vyukov
83f945db79
dashboard/app: fix old crash purging logic
...
NumRepro includes failed repro attempts,
so we should not look at it when purging old crashes.
2018-06-08 10:00:42 +02:00
Dmitry Vyukov
6db75fefbe
pkg/report: add another format for null RIP
...
Kernel keeps inventing new formats...
2018-06-08 09:34:02 +02:00
Dmitry Vyukov
1319a7da09
dashboard/app: fix crash save throttling logic
...
bug.LastTime is updated on every crash, even if we don't save it.
As the result we did not save recent crashes for popular bugs at all.
Fix this by introducing bug.LastSavedCrash.
2018-06-08 09:34:02 +02:00
Hangbin Liu
f7b27b7a19
sys/linux: add remaining qdisc/tclass/tfilter/actions for netlink route sched
...
Update #533
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
2018-06-08 08:11:20 +03:00
Dmitry Vyukov
645e75f803
executor: make syscall table and number constant
...
We see some crashes that suggest corruption of the syscall number:
invalid command number 1296 (errno 11)
invalid command number 107 (errno 110)
Make the table and the number constant to prevent corruption.
2018-06-07 15:32:30 +02:00
Dmitry Vyukov
7fb9023fd7
pkg/report: ignore down functions for task hung bugs
2018-06-07 14:01:22 +02:00
Dmitry Vyukov
8b06421c04
sys/linux: regenerate consts on tip
2018-06-07 13:13:50 +02:00
Dmitry Vyukov
85e7c1404f
sys/linux: add AF_XDP support
2018-06-07 13:13:49 +02:00
Daniel Borkmann
ac9b19d2e4
bpf: enable hardening mode 1 for jited images
...
This will harden non-root programs from kernel side, but not
root-only ones. Helps also to increase coverage a bit since
syzkaller generates programs for both cases.
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-06-07 12:39:12 +03:00
Daniel Borkmann
b17ae9398c
bpf: enable full unwind and kallsym export support for jited images
...
Helps syzkaller in particular for unwinding full stack in case
of warnings or crashes.
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-06-07 12:39:12 +03:00
Dmitry Vyukov
667b9a6950
sys/linux: fix up midi descriptions
2018-06-07 11:10:49 +02:00
srikanth007m
72b15886d9
Sound Mixer Descriptors for MIDI
...
Enabling MIDI supported IOCTL descriptors for Syzkaller
2018-06-07 11:56:11 +03:00
srikanth007m
e1c9dcfb07
MIDI Sound mixer Const file
2018-06-07 11:56:04 +03:00
Dmitry Vyukov
d2ba33fac0
pkg/kernel: pass CC to oldconfig
...
Passing in compiler is important since 4.17
(at the very least it's noted in the config).
2018-06-07 10:18:14 +02:00
Dmitry Vyukov
e0e534c6c2
docs: update fuchsia instructions
2018-06-06 20:55:40 +02:00
Dmitry Vyukov
a251f32666
sys/fuchsia: disable zx_task_kill
...
Disable zx_task_kill until we figure out how to prevent executor from killing fuzzer.
Update #594
2018-06-06 20:52:30 +02:00