From 29ffa1c0c22ac11d9db4eb8047ae28650fa20c72 Mon Sep 17 00:00:00 2001 From: Idris Hanafi Date: Tue, 27 Jun 2023 17:32:36 -0400 Subject: [PATCH] feat: nil guards --- cmd/rpcfuzz/argfuzz/argfuzz.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cmd/rpcfuzz/argfuzz/argfuzz.go b/cmd/rpcfuzz/argfuzz/argfuzz.go index d57907d9..9e2e0f60 100644 --- a/cmd/rpcfuzz/argfuzz/argfuzz.go +++ b/cmd/rpcfuzz/argfuzz/argfuzz.go @@ -39,6 +39,10 @@ func MutateExecutor(arg []byte, c fuzz.Continue) []byte { } func ByteMutator(arg []byte, c fuzz.Continue) []byte { + if arg == nil { + return arg + } + arg = MutateExecutor(arg, c) // fitty-fitty chance of more mutations if rand.Intn(2) == 0 && arg != nil { @@ -50,6 +54,10 @@ func ByteMutator(arg []byte, c fuzz.Continue) []byte { func MutateRPCArgs(args *[]interface{}, c fuzz.Continue) { for i, d := range *args { + if d == nil { + continue + } + switch d.(type) { case string: (*args)[i] = string(ByteMutator([]byte(d.(string)), c))