From 85bb4718fb01abc6ad3d055af095edbc46ee8ed9 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 4 Jul 2018 10:13:40 +0200 Subject: syz-fuzzer: allow wrapping executor Allow wrapping executor e.g. under strace or something else. First, split executor string to binary and args. Second, read version output only from stdout. --- syz-fuzzer/testing.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/syz-fuzzer/testing.go b/syz-fuzzer/testing.go index 6418bf3b4..2efcf653d 100644 --- a/syz-fuzzer/testing.go +++ b/syz-fuzzer/testing.go @@ -5,6 +5,7 @@ package main import ( "fmt" + "io/ioutil" "strings" "time" @@ -92,7 +93,11 @@ func checkMachine(args *checkArgs) (*rpctype.CheckArgs, error) { func checkRevisions(args *checkArgs) error { log.Logf(0, "checking revisions...") - out, err := osutil.RunCmd(time.Minute, "", args.ipcConfig.Executor, "version") + executorArgs := strings.Split(args.ipcConfig.Executor, " ") + executorArgs = append(executorArgs, "version") + cmd := osutil.Command(executorArgs[0], executorArgs[1:]...) + cmd.Stderr = ioutil.Discard + out, err := osutil.Run(time.Minute, cmd) if err != nil { return fmt.Errorf("failed to run executor version: %v", err) } -- cgit mrf-deployment