aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--syz-fuzzer/fuzzer.go5
-rw-r--r--syz-fuzzer/testing.go12
2 files changed, 9 insertions, 8 deletions
diff --git a/syz-fuzzer/fuzzer.go b/syz-fuzzer/fuzzer.go
index b96938091..28d2e849c 100644
--- a/syz-fuzzer/fuzzer.go
+++ b/syz-fuzzer/fuzzer.go
@@ -163,9 +163,10 @@ func main() {
checkArgs.allSandboxes = r.AllSandboxes
r.CheckResult, err = checkMachine(checkArgs)
if err != nil {
- r.CheckResult = &rpctype.CheckArgs{
- Error: err.Error(),
+ if r.CheckResult == nil {
+ r.CheckResult = new(rpctype.CheckArgs)
}
+ r.CheckResult.Error = err.Error()
}
r.CheckResult.Name = *flagName
if err := manager.Call("Manager.Check", r.CheckResult, nil); err != nil {
diff --git a/syz-fuzzer/testing.go b/syz-fuzzer/testing.go
index c193e313a..b2bb3615b 100644
--- a/syz-fuzzer/testing.go
+++ b/syz-fuzzer/testing.go
@@ -160,11 +160,11 @@ func checkMachine(args *checkArgs) (*rpctype.CheckArgs, error) {
}
for _, sandbox := range sandboxes {
enabledCalls, disabledCalls, err := buildCallList(args.target, args.enabledCalls, sandbox)
- if err != nil {
- return nil, err
- }
res.EnabledCalls[sandbox] = enabledCalls
res.DisabledCalls[sandbox] = disabledCalls
+ if err != nil {
+ return res, err
+ }
}
if args.allSandboxes {
var enabled []int
@@ -291,11 +291,11 @@ func buildCallList(target *prog.Target, enabledCalls []int, sandbox string) (
delete(calls, c)
}
}
- if len(calls) == 0 {
- return nil, nil, fmt.Errorf("all system calls are disabled")
- }
for c := range calls {
enabled = append(enabled, c.ID)
}
+ if len(calls) == 0 {
+ return enabled, disabled, fmt.Errorf("all system calls are disabled")
+ }
return enabled, disabled, nil
}