From b458f2c1a61c78e2004be6b4ef60b45fb81bd684 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 13 Jul 2020 16:24:56 +0200 Subject: executor: wrap all syscalls into NONFAILING Currently we sprinkle NONFAILING all over pseudo-syscall code, around all individual accesses to fuzzer-generated pointers. This is tedious manual work and subject to errors. Wrap execute_syscall invocation with NONFAILING in execute_call once instead. Then we can remove NONFAILING from all pseudo-syscalls and never get back to this. Potential downsides: (1) this is coarser-grained and we will skip whole syscall on invalid pointer, but this is how normal syscalls work as well, so should not be a problem; (2) we will skip any clean up (closing of files, etc) as well; but this may be fine as well (programs can perfectly leave open file descriptors as well). Update #1918 --- sys/test/test/nonfailing | 1 + 1 file changed, 1 insertion(+) create mode 100644 sys/test/test/nonfailing (limited to 'sys') diff --git a/sys/test/test/nonfailing b/sys/test/test/nonfailing new file mode 100644 index 000000000..e4c24b71f --- /dev/null +++ b/sys/test/test/nonfailing @@ -0,0 +1 @@ +syz_compare(0xfffffffffffffffe, 0x1, 0xffffffffffffffff, 0x1) # EFAULT -- cgit mrf-deployment