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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
21 183 face.parser.Parser._parse_flags call site: {node_id} face.parser.Parser._parse_flagfile
18 38 face.sinter.get_fb call site: {node_id} face.command.Command.add
14 12 face.middleware.is_middleware call site: {node_id} face.command.Command.add_middleware
7 66 face.command.Command.__init__ call site: {node_id} face.utils.unwrap_text
5 60 face.command.Command.__init__ call site: {node_id} .isinstance
4 28 face.sinter.get_fb call site: {node_id} inspect.isbuiltin
4 74 face.command.Command.__init__ call site: {node_id} kwargs.pop
3 88 face.command.Command.add call site: {node_id} face.command.Command.add_command
3 116 face.parser.FlagDisplay.__init__ call site: {node_id} face.utils.get_type_desc
3 159 face.command.Command.get_dep_names call site: {node_id} face.sinter.get_arg_names
2 129 face.command.Command.add call site: {node_id} fdp.ConsumeUnicodeNoSurrogates
2 213 face.parser.Parser._resolve_flags call site: {node_id} ff_paths.append

Fuzzer calltree

0 ...fuzz_command.TestOneInput [function] [call site] 00000
1 atheris.FuzzedDataProvider [function] [call site] 00001
1 fdp.ConsumeIntInRange [function] [call site] 00002
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00004
1 args.append [function] [call site] 00005
1 fdp.ConsumeIntInRange [function] [call site] 00006
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00008
1 face.command.Command.add [function] [call site] 00009
2 face.middleware.is_middleware [function] [call site] 00010
2 face.command.Command.add_middleware [function] [call site] 00013
3 face.middleware.is_middleware [function] [call site] 00014
3 face.middleware.face_middleware [function] [call site] 00015
4 kwargs.pop [function] [call site] 00016
4 .isinstance [function] [call site] 00017
4 kwargs.pop [function] [call site] 00018
4 .isinstance [function] [call site] 00020
4 kwargs.pop [function] [call site] 00021
4 .callable [function] [call site] 00022
4 face.middleware.face_middleware.decorate_face_middleware [function] [call site] 00023
5 face.middleware.check_middleware [function] [call site] 00024
6 .callable [function] [call site] 00025
6 face.sinter.get_fb [function] [call site] 00026
7 inspect.isfunction [function] [call site] 00027
7 inspect.ismethod [function] [call site] 00028
7 inspect.isbuiltin [function] [call site] 00029
7 .isinstance [function] [call site] 00032
7 .isinstance [function] [call site] 00034
7 boltons.funcutils.FunctionBuilder.from_func [function] [call site] 00035
7 .isinstance [function] [call site] 00036
7 .isinstance [function] [call site] 00038
6 face.sinter.get_callable_labels [function] [call site] 00039
7 .isinstance [function] [call site] 00040
7 ctx_parts.append [function] [call site] 00043
7 face.sinter.get_fb [function] [call site] 00046
7 ctx_parts.insert [function] [call site] 00047
7 fb.get_invocation_str [function] [call site] 00048
3 face.middleware.check_middleware [function] [call site] 00054
3 face.command.Command.add [function] [call site] 00055
3 collections.OrderedDict.items [function] [call site] 00056
2 .isinstance [function] [call site] 00057
2 .callable [function] [call site] 00058
2 face.command.Command.__init__ [function] [call site] 00059
3 face.command._get_default_name [function] [call site] 00060
4 .isinstance [function] [call site] 00061
4 boltons.strutils.camel2under [function] [call site] 00064
4 boltons.strutils.camel2under.lower [function] [call site] 00065
3 face.command._docstring_to_doc [function] [call site] 00066
4 face.utils.unwrap_text [function] [call site] 00067
5 text.splitlines [function] [call site] 00068
5 line.strip [function] [call site] 00069
5 cur_graf.append [function] [call site] 00070
5 all_grafs.append [function] [call site] 00071
5 all_grafs.append [function] [call site] 00072
4 unwrapped.splitlines [function] [call site] 00073
3 kwargs.pop [function] [call site] 00075
3 kwargs.pop [function] [call site] 00076
3 kwargs.pop [function] [call site] 00077
3 kwargs.pop [function] [call site] 00078
3 kwargs.pop [function] [call site] 00079
3 collections.OrderedDict [function] [call site] 00080
3 kwargs.pop [function] [call site] 00081
3 collections.OrderedDict [function] [call site] 00083
3 collections.OrderedDict [function] [call site] 00084
3 face.command.Command.add_middleware [function] [call site] 00085
3 face.command.Command.add [function] [call site] 00086
3 face.command.Command.add [function] [call site] 00087
2 .isinstance [function] [call site] 00088
2 face.command.Command.add_command [function] [call site] 00089
2 .isinstance [function] [call site] 00092
2 face.parser.Flag.__init__ [function] [call site] 00093
3 face.utils.flag_to_identifier [function] [call site] 00094
4 .isinstance [function] [call site] 00095
4 flag.endswith [function] [call site] 00096
4 flag.endswith [function] [call site] 00097
4 VALID_FLAG_RE.match [function] [call site] 00098
4 face.utils.normalize_flag_name [function] [call site] 00099
4 keyword.iskeyword [function] [call site] 00105
3 .callable [function] [call site] 00106
3 face.parser._validate_char [function] [call site] 00107
3 .callable [function] [call site] 00110
3 face.parser.Flag.set_display [function] [call site] 00111
4 .isinstance [function] [call site] 00112
4 .isinstance [function] [call site] 00113
4 .isinstance [function] [call site] 00114
4 face.parser.FlagDisplay.__init__ [function] [call site] 00115
4 .isinstance [function] [call site] 00128
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00130
1 fdp.ConsumeBool [function] [call site] 00131
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00132
1 face.parser.Parser.parse [function] [call site] 00133
2 face.parser.CommandParseResult.__init__ [function] [call site] 00134
2 .isinstance [function] [call site] 00136
2 face.parser.Parser._parse_subcmds [function] [call site] 00138
3 arg.startswith [function] [call site] 00139
3 face.parser._arg_to_subcmd [function] [call site] 00140
4 arg.lower [function] [call site] 00141
3 ret.append [function] [call site] 00144
2 face.parser.Parser.get_flag_map [function] [call site] 00149
3 flag_map.items [function] [call site] 00150
3 collections.OrderedDict [function] [call site] 00151
2 face.command.Command.get_flag_map [function] [call site] 00152
3 face.command.Command.get_dep_names [function] [call site] 00154
4 face.sinter.get_arg_names [function] [call site] 00155
5 face.sinter.get_fb [function] [call site] 00156
5 fb.get_arg_names [function] [call site] 00157
4 face.sinter.get_arg_names [function] [call site] 00160
4 required_args.update [function] [call site] 00162
4 face.utils.get_rdep_map [function] [call site] 00163
5 to_proc.pop [function] [call site] 00165
5 cur_chain.append [function] [call site] 00166
5 dep_map.get [function] [call site] 00167
5 to_proc.extend [function] [call site] 00168
5 rdeps.update [function] [call site] 00169
3 collections.OrderedDict [function] [call site] 00171
3 collections.OrderedDict.items [function] [call site] 00172
3 collections.OrderedDict [function] [call site] 00173
2 face.parser.Parser._parse_flags [function] [call site] 00174
3 boltons.dictutils.OrderedMultiDict [function] [call site] 00175
3 collections.OrderedDict [function] [call site] 00176
3 face.parser.Parser._parse_single_flag [function] [call site] 00178
4 arg.split [function] [call site] 00179
4 face.utils.normalize_flag_name [function] [call site] 00180
4 collections.OrderedDict.get [function] [call site] 00181
4 .callable [function] [call site] 00182
3 boltons.dictutils.OrderedMultiDict.add [function] [call site] 00183
3 face.parser.Parser._parse_flagfile [function] [call site] 00184
4 collections.OrderedDict [function] [call site] 00185
4 .callable [function] [call site] 00187
4 os.path.abspath [function] [call site] 00189
4 path_or_file.read [function] [call site] 00191
4 os.path.abspath [function] [call site] 00192
4 codecs.open [function] [call site] 00193
4 boltons.dictutils.OrderedMultiDict [function] [call site] 00195
4 ff_text.splitlines [function] [call site] 00196
4 .enumerate [function] [call site] 00197
4 shlex.split [function] [call site] 00198
4 face.parser.Parser._parse_single_flag [function] [call site] 00199
4 boltons.dictutils.OrderedMultiDict.add [function] [call site] 00200
4 face.parser.Parser._parse_flagfile [function] [call site] 00201
3 collections.OrderedDict.items [function] [call site] 00202
3 boltons.dictutils.OrderedMultiDict.update_extend [function] [call site] 00203
3 ff_path_seen.add [function] [call site] 00204
2 collections.OrderedDict [function] [call site] 00205
2 face.parser.Parser._resolve_flags [function] [call site] 00207
3 collections.OrderedDict [function] [call site] 00208
3 collections.OrderedDict.items [function] [call site] 00209
3 missing_flags.append [function] [call site] 00210
3 collections.OrderedDict.getlist [function] [call site] 00211
3 flag.multi [function] [call site] 00212
3 flagfile_map.items [function] [call site] 00213
3 ff_paths.append [function] [call site] 00214
2 collections.OrderedDict [function] [call site] 00216
2 boltons.iterutils.split [function] [call site] 00217
2 prs.post_posargs.parse [function] [call site] 00218
2 prs.posargs.parse [function] [call site] 00220