Fuzz introspector: fuzz_lexer
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
7 10 mako.lexer.Lexer.decode_raw_stream call site: {node_id} text.startswith
3 33 mako.lexer.Lexer.parse_until_text call site: {node_id} match.group
2 116 mako.lexer.Lexer.append_node call site: {node_id} .isinstance
2 133 mako.lexer.Lexer.match_comment call site: {node_id} mako.lexer.Lexer.append_node
1 5 mako.parsetree.TemplateNode.__init__ call site: {node_id} .hasattr
1 76 mako._ast_util.NodeVisitor.generic_visit call site: {node_id} m.group
1 121 mako.lexer.Lexer.append_node call site: {node_id} escapes.strip
1 173 mako.lexer.Lexer.match_python_block call site: {node_id} match.group

Fuzzer calltree

0 ...fuzz_lexer.TestOneInput [function] [call site] 00000
1 atheris.FuzzedDataProvider [function] [call site] 00001
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00002
1 mako.lexer.Lexer.__init__ [function] [call site] 00003
2 mako.parsetree.TemplateNode.__init__ [function] [call site] 00004
1 mako.lexer.Lexer.parse [function] [call site] 00007
2 mako.lexer.Lexer.decode_raw_stream [function] [call site] 00008
2 mako.lexer.Lexer.match_reg [function] [call site] 00018
3 reg.match [function] [call site] 00019
3 match.span [function] [call site] 00020
2 mako.lexer.Lexer.match_end [function] [call site] 00022
3 mako.lexer.Lexer.match [function] [call site] 00023
4 re.compile [function] [call site] 00024
4 re.compile [function] [call site] 00025
4 mako.lexer.Lexer.match_reg [function] [call site] 00026
3 match.group [function] [call site] 00027
2 mako.lexer.Lexer.match_expression [function] [call site] 00028
3 mako.lexer.Lexer.match [function] [call site] 00029
3 mako.lexer.Lexer.parse_until_text [function] [call site] 00030
4 mako.lexer.Lexer.match [function] [call site] 00031
4 mako.lexer.Lexer.match [function] [call site] 00032
4 mako.lexer.Lexer.match [function] [call site] 00033
4 match.group [function] [call site] 00034
4 match.group [function] [call site] 00036
4 mako.lexer.Lexer.match [function] [call site] 00037
4 match.group [function] [call site] 00038
4 match.group [function] [call site] 00039
4 match.group [function] [call site] 00040
4 match.group [function] [call site] 00041
4 match.group [function] [call site] 00042
4 match.group [function] [call site] 00043
3 mako.lexer.Lexer.parse_until_text [function] [call site] 00044
3 text.replace [function] [call site] 00045
3 mako.lexer.Lexer.append_node [function] [call site] 00046
4 kwargs.setdefault [function] [call site] 00047
4 kwargs.setdefault [function] [call site] 00048
4 kwargs.setdefault [function] [call site] 00049
4 mako.parsetree.Tag.__init__ [function] [call site] 00050
5 mako.parsetree.Tag._parse_attributes [function] [call site] 00052
6 re.compile [function] [call site] 00054
6 re.compile [function] [call site] 00055
6 mako.ast.PythonCode.__init__ [function] [call site] 00056
7 .isinstance [function] [call site] 00059
7 code.lstrip [function] [call site] 00060
7 mako.pyparser.parse [function] [call site] 00061
8 mako._ast_util.parse [function] [call site] 00062
7 mako.pyparser.FindIdentifiers.__init__ [function] [call site] 00064
7 mako._ast_util.NodeVisitor.visit [function] [call site] 00066
8 mako._ast_util.NodeVisitor.get_visitor [function] [call site] 00067
8 mako._ast_util.NodeVisitor.generic_visit [function] [call site] 00069
9 mako._ast_util.iter_fields [function] [call site] 00070
10 .getattr [function] [call site] 00071
9 .isinstance [function] [call site] 00072
9 .isinstance [function] [call site] 00073
9 mako._ast_util.NodeVisitor.visit [function] [call site] 00074
9 .isinstance [function] [call site] 00075
9 mako._ast_util.NodeVisitor.visit [function] [call site] 00076
6 undeclared_identifiers.union [function] [call site] 00078
6 expr.append [function] [call site] 00080
6 expr.append [function] [call site] 00082
6 re.search [function] [call site] 00084
4 mako.parsetree.Expression.__init__ [function] [call site] 00087
5 mako.ast.ArgumentList.__init__ [function] [call site] 00089
6 .isinstance [function] [call site] 00092
6 mako.pyparser.parse [function] [call site] 00095
6 mako.pyparser.FindTuple.__init__ [function] [call site] 00096
6 mako._ast_util.NodeVisitor.visit [function] [call site] 00097
5 mako.ast.PythonCode.__init__ [function] [call site] 00098
4 mako.parsetree.ControlLine.__init__ [function] [call site] 00099
5 mako.ast.PythonFragment.__init__ [function] [call site] 00101
4 mako.parsetree.Code.__init__ [function] [call site] 00108
5 mako.ast.PythonCode.__init__ [function] [call site] 00110
4 mako.parsetree.Text.__init__ [function] [call site] 00111
4 mako.parsetree.Comment.__init__ [function] [call site] 00113
4 control_frame.nodes.append [function] [call site] 00116
4 .isinstance [function] [call site] 00117
4 control_frame.is_ternary [function] [call site] 00118
4 .isinstance [function] [call site] 00119
4 .isinstance [function] [call site] 00121
3 escapes.strip [function] [call site] 00122
2 mako.lexer.Lexer.match_control_line [function] [call site] 00123
3 mako.lexer.Lexer.match [function] [call site] 00124
3 match.group [function] [call site] 00125
3 match.group [function] [call site] 00126
3 mako.lexer.Lexer.append_node [function] [call site] 00130
3 mako.lexer.Lexer.append_node [function] [call site] 00131
2 mako.lexer.Lexer.match_comment [function] [call site] 00132
3 mako.lexer.Lexer.match [function] [call site] 00133
3 match.group [function] [call site] 00134
3 mako.lexer.Lexer.append_node [function] [call site] 00135
2 mako.lexer.Lexer.match_tag_start [function] [call site] 00136
3 mako.lexer.Lexer.match [function] [call site] 00137
3 match.groups [function] [call site] 00138
3 re.findall [function] [call site] 00139
3 text.replace [function] [call site] 00140
3 mako.lexer.Lexer.append_node [function] [call site] 00141
3 mako.lexer.Lexer.match [function] [call site] 00142
3 match.group [function] [call site] 00143
3 mako.lexer.Lexer.append_node [function] [call site] 00144
3 mako.lexer.Lexer.match_tag_end [function] [call site] 00145
4 mako.lexer.Lexer.match [function] [call site] 00146
4 match.group [function] [call site] 00148
2 mako.lexer.Lexer.match_tag_end [function] [call site] 00149
2 mako.lexer.Lexer.match_python_block [function] [call site] 00150
3 mako.lexer.Lexer.match [function] [call site] 00151
3 mako.lexer.Lexer.parse_until_text [function] [call site] 00152
3 mako.pygen.adjust_whitespace [function] [call site] 00153
4 mako.pygen.adjust_whitespace.in_multi_line [function] [call site] 00155
5 re.search [function] [call site] 00156
5 mako.pygen.adjust_whitespace.in_multi_line.match [function] [call site] 00157
5 mako.pygen.adjust_whitespace.in_multi_line.match [function] [call site] 00161
5 mako.pygen.adjust_whitespace.in_multi_line.match [function] [call site] 00162
5 mako.pygen.adjust_whitespace.in_multi_line.match [function] [call site] 00163
5 mako.pygen.adjust_whitespace.in_multi_line.match [function] [call site] 00165
4 lines.append [function] [call site] 00166
4 line.expandtabs [function] [call site] 00167
4 re.search [function] [call site] 00168
4 mako.pygen.adjust_whitespace._indent_line [function] [call site] 00170
4 lines.append [function] [call site] 00172
3 mako.lexer.Lexer.append_node [function] [call site] 00173
3 match.group [function] [call site] 00174
2 mako.lexer.Lexer.match_text [function] [call site] 00175
3 mako.lexer.Lexer.match [function] [call site] 00176
3 match.group [function] [call site] 00177
3 mako.lexer.Lexer.append_node [function] [call site] 00178