Fuzz introspector: fuzz_ttfont
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
33 78 fontTools.misc.sstruct.unpack call site: 00078 fontTools.misc.macRes.ResourceReader._readFile
24 23 fontTools.ttLib.ttFont.TTFont.__init__ call site: 00023 fontTools.ttLib.macUtils.getSFNTResIndices
18 112 fontTools.ttLib.macUtils.getSFNTResIndices call site: 00112 fontTools.ttLib.macUtils.SFNTResourceReader.__init__
10 12 fontTools.misc.configTools.AbstractConfig.__init__ call site: 00012 fontTools.misc.configTools.AbstractConfig.set
8 161 fontTools.ttLib.sfnt.readTTCHeader call site: 00161 fontTools.misc.sstruct.unpack
6 131 fontTools.ttLib.ttFont.TTFont.__init__ call site: 00131 .hasattr
5 66 fontTools.misc.sstruct.getformat call site: 00066 m.group
4 49 fontTools.misc.textTools.tobytes call site: 00049 collections.abc.Sequence.data.encode
2 4 fontTools.ttLib.ttFont.TTFont.__init__ call site: 00004 fontTools.misc.loggingTools.deprecateArgument
1 75 fontTools.misc.sstruct.unpack call site: 00075 fontTools.misc.fixedTools.fixedToFloat
1 220 fontTools.ttLib.sfnt.WOFFFlavorData.__init__ call site: 00220 zlib.decompress

Fuzzer calltree

0 ...fuzz_ttfont.TestOneInput [function] [call site] 00000
1 <builtin>.open [function] [call site] 00001
1 fontTools.ttLib.ttFont.TTFont.__init__ [function] [call site] 00003
2 <builtin>.locals [function] [call site] 00004
2 fontTools.misc.loggingTools.deprecateArgument [function] [call site] 00005
3 warnings.warn [function] [call site] 00006
2 <builtin>.setattr [function] [call site] 00007
2 <builtin>.isinstance [function] [call site] 00008
2 fontTools.misc.configTools.AbstractConfig.__init__ [function] [call site] 00010
3 <builtin>.isinstance [function] [call site] 00011
3 values_dict.items [function] [call site] 00012
3 fontTools.misc.configTools.AbstractConfig.set [function] [call site] 00013
4 fontTools.misc.configTools.AbstractConfig._resolve_option [function] [call site] 00014
5 <builtin>.isinstance [function] [call site] 00015
5 fontTools.misc.configTools.Options.is_registered [function] [call site] 00016
5 typing.MutableMapping.options.is_registered [function] [call site] 00017
5 <builtin>.isinstance [function] [call site] 00018
4 <builtin>.str [function] [call site] 00019
4 log.debug [function] [call site] 00020
4 option.parse [function] [call site] 00021
4 option.validate [function] [call site] 00022
2 <builtin>.hasattr [function] [call site] 00023
2 fontTools.ttLib.macUtils.getSFNTResIndices [function] [call site] 00024
3 fontTools.misc.macRes.ResourceReader.__init__ [function] [call site] 00025
4 collections.OrderedDict [function] [call site] 00026
4 <builtin>.hasattr [function] [call site] 00027
4 fontTools.misc.macRes.ResourceReader.openResourceFork [function] [call site] 00028
5 <builtin>.hasattr [function] [call site] 00029
5 io.BytesIO.__fspath__ [function] [call site] 00030
5 io.StringIO.__fspath__ [function] [call site] 00031
5 <builtin>.open [function] [call site] 00032
5 resfork.read [function] [call site] 00033
5 io.BytesIO [function] [call site] 00034
4 fontTools.misc.macRes.ResourceReader._readFile [function] [call site] 00035
5 fontTools.misc.macRes.ResourceReader._readHeaderAndMap [function] [call site] 00036
6 io.BytesIO.seek [function] [call site] 00037
6 io.StringIO.seek [function] [call site] 00038
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00039
7 io.BytesIO.seek [function] [call site] 00040
7 io.StringIO.seek [function] [call site] 00041
7 io.StringIO.tell [function] [call site] 00042
7 io.BytesIO.tell [function] [call site] 00043
7 io.StringIO.read [function] [call site] 00044
7 io.BytesIO.read [function] [call site] 00045
7 <builtin>.len [function] [call site] 00046
6 fontTools.misc.sstruct.unpack [function] [call site] 00047
7 fontTools.misc.textTools.tobytes [function] [call site] 00048
8 <builtin>.isinstance [function] [call site] 00049
8 collections.abc.Sequence.data.encode [function] [call site] 00050
8 collections.abc.MutableMapping.encode [function] [call site] 00051
8 os.linesep.encode [function] [call site] 00052
8 types.SimpleNamespace.encode [function] [call site] 00053
8 <builtin>.bytes [function] [call site] 00054
7 fontTools.misc.sstruct.getformat [function] [call site] 00055
8 fontTools.misc.textTools.tostr [function] [call site] 00056
9 <builtin>.isinstance [function] [call site] 00057
9 os.linesep.decode [function] [call site] 00058
8 _emptyRE.match [function] [call site] 00060
8 _extraRE.match [function] [call site] 00061
8 _elementRE.match [function] [call site] 00063
8 <builtin>.int [function] [call site] 00068
8 <builtin>.int [function] [call site] 00070
7 <builtin>.isinstance [function] [call site] 00072
7 struct.unpack [function] [call site] 00073
7 names.keys [function] [call site] 00074
7 <builtin>.enumerate [function] [call site] 00075
7 fontTools.misc.fixedTools.fixedToFloat [function] [call site] 00076
7 <builtin>.isinstance [function] [call site] 00077
7 fontTools.misc.textTools.tostr [function] [call site] 00078
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00079
6 fontTools.misc.sstruct.unpack [function] [call site] 00080
5 fontTools.misc.macRes.ResourceReader._readTypeList [function] [call site] 00081
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00082
6 struct.unpack [function] [call site] 00083
6 <builtin>.range [function] [call site] 00084
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00085
6 fontTools.misc.sstruct.unpack [function] [call site] 00086
6 fontTools.misc.textTools.tostr [function] [call site] 00087
6 fontTools.misc.macRes.ResourceReader._readReferenceList [function] [call site] 00088
7 <builtin>.range [function] [call site] 00089
7 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00090
7 fontTools.misc.macRes.Resource.__init__ [function] [call site] 00091
7 fontTools.misc.macRes.Resource.decompile [function] [call site] 00092
8 fontTools.misc.sstruct.unpack [function] [call site] 00093
8 fontTools.misc.textTools.bytesjoin [function] [call site] 00094
9 fontTools.misc.textTools.tobytes [function] [call site] 00095
9 fontTools.misc.textTools.tobytes [function] [call site] 00096
8 struct.unpack [function] [call site] 00097
8 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00098
8 struct.unpack [function] [call site] 00099
8 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00100
8 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00101
8 struct.unpack [function] [call site] 00102
8 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00103
8 struct.unpack [function] [call site] 00104
8 fontTools.misc.textTools.tostr [function] [call site] 00105
7 resources.append [function] [call site] 00106
4 fontTools.misc.macRes.ResourceReader.openDataFork [function] [call site] 00107
5 <builtin>.open [function] [call site] 00108
5 datafork.read [function] [call site] 00109
5 io.BytesIO [function] [call site] 00110
4 fontTools.misc.macRes.ResourceReader._readFile [function] [call site] 00111
3 fontTools.misc.macRes.ResourceReader.getIndices [function] [call site] 00112
4 fontTools.misc.macRes.ResourceReader.countResources [function] [call site] 00113
5 <builtin>.len [function] [call site] 00114
4 <builtin>.range [function] [call site] 00115
4 <builtin>.list [function] [call site] 00116
3 fontTools.misc.macRes.ResourceReader.close [function] [call site] 00117
4 io.BytesIO.close [function] [call site] 00118
4 io.StringIO.close [function] [call site] 00119
2 fontTools.ttLib.macUtils.SFNTResourceReader.__init__ [function] [call site] 00120
3 fontTools.misc.macRes.ResourceReader.__init__ [function] [call site] 00121
3 <builtin>.isinstance [function] [call site] 00122
3 fontTools.misc.macRes.ResourceReader.getNamedResource [function] [call site] 00123
4 fontTools.misc.textTools.tostr [function] [call site] 00124
4 collections.abc.MutableMapping.get [function] [call site] 00125
3 fontTools.misc.macRes.ResourceReader.getIndResource [function] [call site] 00126
3 fontTools.misc.macRes.ResourceReader.close [function] [call site] 00127
3 <builtin>.super [function] [call site] 00128
2 <builtin>.open [function] [call site] 00129
2 fontTools.ttLib.macUtils.SFNTResourceReader.__init__ [function] [call site] 00130
2 <builtin>.open [function] [call site] 00131
2 <builtin>.hasattr [function] [call site] 00132
2 io.BytesIO.seekable [function] [call site] 00133
2 io.StringIO.seekable [function] [call site] 00134
2 <builtin>.hasattr [function] [call site] 00135
2 io.BytesIO.seek [function] [call site] 00136
2 io.StringIO.seek [function] [call site] 00137
2 io.BytesIO.seek [function] [call site] 00138
2 io.StringIO.seek [function] [call site] 00139
2 io.StringIO.read [function] [call site] 00140
2 io.BytesIO.read [function] [call site] 00141
2 io.BytesIO [function] [call site] 00142
2 <builtin>.hasattr [function] [call site] 00143
2 io.BytesIO.close [function] [call site] 00144
2 io.StringIO.close [function] [call site] 00145
2 fontTools.ttLib.sfnt.SFNTReader.__init__ [function] [call site] 00146
3 io.BytesIO.seek [function] [call site] 00147
3 io.StringIO.seek [function] [call site] 00148
3 io.StringIO.read [function] [call site] 00149
3 io.BytesIO.read [function] [call site] 00150
3 io.BytesIO.seek [function] [call site] 00151
3 io.StringIO.seek [function] [call site] 00152
3 fontTools.ttLib.sfnt.readTTCHeader [function] [call site] 00153
4 io.BytesIO.seek [function] [call site] 00154
4 io.StringIO.seek [function] [call site] 00155
4 io.StringIO.read [function] [call site] 00156
4 io.BytesIO.read [function] [call site] 00157
4 <builtin>.len [function] [call site] 00158
4 types.SimpleNamespace [function] [call site] 00159
4 fontTools.misc.sstruct.unpack [function] [call site] 00160
4 struct.unpack [function] [call site] 00161
4 io.StringIO.read [function] [call site] 00162
4 io.BytesIO.read [function] [call site] 00163
3 io.BytesIO.seek [function] [call site] 00164
3 io.StringIO.seek [function] [call site] 00165
3 io.StringIO.read [function] [call site] 00166
3 io.BytesIO.read [function] [call site] 00167
3 <builtin>.len [function] [call site] 00168
3 fontTools.misc.sstruct.unpack [function] [call site] 00169
3 io.StringIO.read [function] [call site] 00170
3 io.BytesIO.read [function] [call site] 00171
3 <builtin>.len [function] [call site] 00172
3 fontTools.misc.sstruct.unpack [function] [call site] 00173
3 io.StringIO.read [function] [call site] 00174
3 io.BytesIO.read [function] [call site] 00175
3 <builtin>.len [function] [call site] 00176
3 fontTools.misc.sstruct.unpack [function] [call site] 00177
3 <builtin>.range [function] [call site] 00178
3 fontTools.ttLib.sfnt.DirectoryEntry.__init__ [function] [call site] 00179
3 fontTools.ttLib.sfnt.DirectoryEntry.__init__ [function] [call site] 00180
3 fontTools.ttLib.sfnt.WOFFDirectoryEntry.__init__ [function] [call site] 00181
4 <builtin>.super [function] [call site] 00182
4 <builtin>.hasattr [function] [call site] 00183
3 fontTools.ttLib.woff2.WOFF2DirectoryEntry.fromFile [function] [call site] 00184
4 io.StringIO.tell [function] [call site] 00185
4 io.BytesIO.tell [function] [call site] 00186
4 io.StringIO.read [function] [call site] 00187
4 io.BytesIO.read [function] [call site] 00188
4 fontTools.ttLib.woff2.WOFF2DirectoryEntry.fromString [function] [call site] 00189
5 <builtin>.len [function] [call site] 00190
5 fontTools.misc.sstruct.unpack2 [function] [call site] 00191
6 fontTools.misc.sstruct.calcsize [function] [call site] 00192
7 fontTools.misc.sstruct.getformat [function] [call site] 00193
7 struct.calcsize [function] [call site] 00194
6 fontTools.misc.sstruct.unpack [function] [call site] 00195
5 <builtin>.len [function] [call site] 00196
5 fontTools.misc.sstruct.unpack2 [function] [call site] 00197
5 fontTools.ttLib.woff2.unpackBase128 [function] [call site] 00198
6 <builtin>.len [function] [call site] 00199
6 fontTools.misc.textTools.byteord [function] [call site] 00200
7 <builtin>.isinstance [function] [call site] 00201
7 <builtin>.ord [function] [call site] 00202
6 <builtin>.range [function] [call site] 00203
6 <builtin>.len [function] [call site] 00204
6 fontTools.misc.textTools.byteord [function] [call site] 00205
5 fontTools.ttLib.woff2.unpackBase128 [function] [call site] 00206
4 <builtin>.len [function] [call site] 00207
4 <builtin>.len [function] [call site] 00208
4 io.BytesIO.seek [function] [call site] 00209
4 io.StringIO.seek [function] [call site] 00210
3 tables.items [function] [call site] 00211
3 <builtin>.sorted [function] [call site] 00212
3 collections.OrderedDict [function] [call site] 00213
3 fontTools.ttLib.sfnt.WOFFFlavorData.__init__ [function] [call site] 00214
4 io.BytesIO.seek [function] [call site] 00215
4 io.StringIO.seek [function] [call site] 00216
4 io.StringIO.read [function] [call site] 00217
4 io.BytesIO.read [function] [call site] 00218
4 <builtin>.len [function] [call site] 00219
4 fontTools.ttLib.sfnt.WOFFFlavorData._decompress [function] [call site] 00220
5 zlib.decompress [function] [call site] 00221
4 fontTools.ttLib.woff2.WOFF2FlavorData._decompress [function] [call site] 00222
5 brotli.decompress [function] [call site] 00223
5 brotlicffi.decompress [function] [call site] 00224
4 <builtin>.len [function] [call site] 00225
4 io.BytesIO.seek [function] [call site] 00226
4 io.StringIO.seek [function] [call site] 00227
4 io.StringIO.read [function] [call site] 00228
4 io.BytesIO.read [function] [call site] 00229
4 <builtin>.len [function] [call site] 00230