From 8285069f89c9942f65ce760a8f0a5a12254bfeeb Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Sat, 18 May 2019 17:54:03 +0200 Subject: executor: implement support for leak checking Leak checking support was half done and did not really work. This is heavy-lifting to make it work. 1. Move leak/fault setup into executor. pkg/host was a wrong place for them because we need then in C repros too. The pkg/host periodic callback functionality did not work too, we need it in executor so that we can reuse it in C repros too. Remove setup/callback functions in pkg/host entirely. 2. Do leak setup/checking in C repros. The way leak checking is invoked is slightly different from fuzzer, but much better then no support at all. At least the checking code is shared. 3. Add Leak option to pkg/csource and -leak flag to syz-prog2c. 4. Don't enalbe leak checking in fuzzer while we are triaging initial corpus. It's toooo slow. 5. Fix pkg/repro to do something more sane for leak bugs. Few other minor fixes here and there. --- pkg/ipc/ipc.go | 2 -- 1 file changed, 2 deletions(-) (limited to 'pkg/ipc') diff --git a/pkg/ipc/ipc.go b/pkg/ipc/ipc.go index ab6c93a6f..89799b45a 100644 --- a/pkg/ipc/ipc.go +++ b/pkg/ipc/ipc.go @@ -32,12 +32,10 @@ const ( FlagSandboxNamespace // use namespaces for sandboxing FlagSandboxAndroidUntrustedApp // use Android sandboxing for the untrusted_app domain FlagExtraCover // collect extra coverage - FlagEnableFault // enable fault injection support FlagEnableTun // setup and use /dev/tun for packet injection FlagEnableNetDev // setup more network devices for testing FlagEnableNetReset // reset network namespace between programs FlagEnableCgroups // setup cgroups for testing - FlagEnableBinfmtMisc // setup binfmt_misc for testing FlagEnableCloseFds // close fds after each program // Executor does not know about these: FlagUseShmem // use shared memory instead of pipes for communication -- cgit mrf-deployment