Fuzz introspector: qubesrpc_parse_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
0 0 None 22 28 parse_qubes_rpc_command call site: 00001 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:312
0 0 None 18 24 parse_qubes_rpc_command call site: 00001 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:320
0 0 None 18 24 parse_qubes_rpc_command call site: 00003 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:327
0 0 None 10 16 parse_qubes_rpc_command call site: 00007 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:362
0 0 None 4 10 parse_qubes_rpc_command call site: 00009 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:381
0 0 None 0 6 parse_qubes_rpc_command call site: 00006 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:355
0 0 None 0 0 parse_qubes_rpc_command call site: 00012 /src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c:398

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 parse_qubes_rpc_command [function] [call site] 00001
2 strchr [call site] 00002
2 strndup [call site] 00003
2 strncmp [call site] 00004
2 strncmp [call site] 00005
2 strchr [call site] 00006
2 strndup [call site] 00007
2 memchr [call site] 00008
2 strndup [call site] 00009
2 strndup [call site] 00010
2 strchrnul [call site] 00011
2 strndup [call site] 00012
2 destroy_qrexec_parsed_command [function] [call site] 00013
1 strlen [call site] 00014
1 strlen [call site] 00015
1 __assert_fail [call site] 00016
1 __assert_fail [call site] 00017
1 strlen [call site] 00018
1 strlen [call site] 00019
1 strlen [call site] 00020
1 destroy_qrexec_parsed_command [function] [call site] 00021