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
73 115 fontTools.ttLib.macUtils.getSFNTResIndices call site: 00115 fontTools.ttLib.macUtils.SFNTResourceReader.__init__
36 12 fontTools.misc.configTools.AbstractConfig.__init__ call site: 00012 fontTools.ttLib.macUtils.getSFNTResIndices
33 81 fontTools.misc.sstruct.unpack call site: 00081 fontTools.misc.macRes.ResourceReader._readFile
5 50 fontTools.misc.textTools.tobytes call site: 00050 collections.abc.Sequence.data.encode
5 69 fontTools.misc.sstruct.getformat call site: 00069 m.group
4 214 fontTools.ttLib.woff2.WOFF2DirectoryEntry.fromFile call site: 00214 fontTools.ttLib.sfnt.WOFFFlavorData.__init__
2 4 fontTools.ttLib.ttFont.TTFont.__init__ call site: 00004 fontTools.misc.loggingTools.deprecateArgument
1 0 EP call site: 00000 .open
1 78 fontTools.misc.sstruct.unpack call site: 00078 fontTools.misc.fixedTools.fixedToFloat
1 224 fontTools.ttLib.sfnt.WOFFFlavorData.__init__ call site: 00224 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 typing.MutableMapping.options.is_registered [function] [call site] 00016
5 fontTools.misc.configTools.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 <builtin>.isinstance [function] [call site] 00024
2 fontTools.ttLib.macUtils.getSFNTResIndices [function] [call site] 00025
3 fontTools.misc.macRes.ResourceReader.__init__ [function] [call site] 00026
4 collections.OrderedDict [function] [call site] 00027
4 <builtin>.hasattr [function] [call site] 00028
4 fontTools.misc.macRes.ResourceReader.openResourceFork [function] [call site] 00029
5 <builtin>.hasattr [function] [call site] 00030
5 io.StringIO.__fspath__ [function] [call site] 00031
5 io.BytesIO.__fspath__ [function] [call site] 00032
5 <builtin>.open [function] [call site] 00033
5 resfork.read [function] [call site] 00034
5 io.BytesIO [function] [call site] 00035
4 fontTools.misc.macRes.ResourceReader._readFile [function] [call site] 00036
5 fontTools.misc.macRes.ResourceReader._readHeaderAndMap [function] [call site] 00037
6 io.StringIO.seek [function] [call site] 00038
6 io.BytesIO.seek [function] [call site] 00039
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00040
7 io.StringIO.seek [function] [call site] 00041
7 io.BytesIO.seek [function] [call site] 00042
7 io.BytesIO.tell [function] [call site] 00043
7 io.StringIO.tell [function] [call site] 00044
7 io.StringIO.read [function] [call site] 00045
7 io.BytesIO.read [function] [call site] 00046
7 <builtin>.len [function] [call site] 00047
6 fontTools.misc.sstruct.unpack [function] [call site] 00048
7 fontTools.misc.textTools.tobytes [function] [call site] 00049
8 <builtin>.isinstance [function] [call site] 00050
8 collections.abc.Sequence.data.encode [function] [call site] 00051
8 collections.abc.MutableMapping.encode [function] [call site] 00052
8 os.linesep.text.encode [function] [call site] 00053
8 types.SimpleNamespace.encode [function] [call site] 00054
8 os.linesep.encode [function] [call site] 00055
8 <builtin>.bytes [function] [call site] 00056
7 fontTools.misc.sstruct.getformat [function] [call site] 00057
8 fontTools.misc.textTools.tostr [function] [call site] 00058
9 <builtin>.isinstance [function] [call site] 00059
9 os.linesep.decode [function] [call site] 00060
9 os.linesep.text.decode [function] [call site] 00061
8 _emptyRE.match [function] [call site] 00063
8 _extraRE.match [function] [call site] 00064
8 _elementRE.match [function] [call site] 00066
8 <builtin>.int [function] [call site] 00071
8 <builtin>.int [function] [call site] 00073
7 <builtin>.isinstance [function] [call site] 00075
7 struct.unpack [function] [call site] 00076
7 names.keys [function] [call site] 00077
7 <builtin>.enumerate [function] [call site] 00078
7 fontTools.misc.fixedTools.fixedToFloat [function] [call site] 00079
7 <builtin>.isinstance [function] [call site] 00080
7 fontTools.misc.textTools.tostr [function] [call site] 00081
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00082
6 fontTools.misc.sstruct.unpack [function] [call site] 00083
5 fontTools.misc.macRes.ResourceReader._readTypeList [function] [call site] 00084
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00085
6 struct.unpack [function] [call site] 00086
6 <builtin>.range [function] [call site] 00087
6 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00088
6 fontTools.misc.sstruct.unpack [function] [call site] 00089
6 fontTools.misc.textTools.tostr [function] [call site] 00090
6 fontTools.misc.macRes.ResourceReader._readReferenceList [function] [call site] 00091
7 <builtin>.range [function] [call site] 00092
7 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00093
7 fontTools.misc.macRes.Resource.__init__ [function] [call site] 00094
7 fontTools.misc.macRes.Resource.decompile [function] [call site] 00095
8 fontTools.misc.sstruct.unpack [function] [call site] 00096
8 fontTools.misc.textTools.bytesjoin [function] [call site] 00097
9 fontTools.misc.textTools.tobytes [function] [call site] 00098
9 fontTools.misc.textTools.tobytes [function] [call site] 00099
8 struct.unpack [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 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00104
8 struct.unpack [function] [call site] 00105
8 fontTools.misc.macRes.ResourceReader._read [function] [call site] 00106
8 struct.unpack [function] [call site] 00107
8 fontTools.misc.textTools.tostr [function] [call site] 00108
7 resources.append [function] [call site] 00109
4 fontTools.misc.macRes.ResourceReader.openDataFork [function] [call site] 00110
5 <builtin>.open [function] [call site] 00111
5 datafork.read [function] [call site] 00112
5 io.BytesIO [function] [call site] 00113
4 fontTools.misc.macRes.ResourceReader._readFile [function] [call site] 00114
3 fontTools.misc.macRes.ResourceReader.getIndices [function] [call site] 00115
4 fontTools.misc.macRes.ResourceReader.countResources [function] [call site] 00116
5 <builtin>.len [function] [call site] 00117
4 <builtin>.range [function] [call site] 00118
4 <builtin>.list [function] [call site] 00119
3 fontTools.misc.macRes.ResourceReader.close [function] [call site] 00120
4 io.StringIO.close [function] [call site] 00121
4 io.BytesIO.close [function] [call site] 00122
2 fontTools.ttLib.macUtils.SFNTResourceReader.__init__ [function] [call site] 00123
3 fontTools.misc.macRes.ResourceReader.__init__ [function] [call site] 00124
3 <builtin>.isinstance [function] [call site] 00125
3 fontTools.misc.macRes.ResourceReader.getNamedResource [function] [call site] 00126
4 fontTools.misc.textTools.tostr [function] [call site] 00127
4 collections.abc.MutableMapping.get [function] [call site] 00128
3 fontTools.misc.macRes.ResourceReader.getIndResource [function] [call site] 00129
3 fontTools.misc.macRes.ResourceReader.close [function] [call site] 00130
3 <builtin>.super [function] [call site] 00131
2 <builtin>.open [function] [call site] 00132
2 fontTools.ttLib.macUtils.SFNTResourceReader.__init__ [function] [call site] 00133
2 <builtin>.open [function] [call site] 00134
2 <builtin>.isinstance [function] [call site] 00135
2 <builtin>.hasattr [function] [call site] 00136
2 io.StringIO.seekable [function] [call site] 00137
2 io.BytesIO.seekable [function] [call site] 00138
2 <builtin>.hasattr [function] [call site] 00139
2 io.StringIO.seek [function] [call site] 00140
2 io.BytesIO.seek [function] [call site] 00141
2 io.StringIO.seek [function] [call site] 00142
2 io.BytesIO.seek [function] [call site] 00143
2 io.StringIO.read [function] [call site] 00144
2 io.BytesIO.read [function] [call site] 00145
2 io.BytesIO [function] [call site] 00146
2 <builtin>.hasattr [function] [call site] 00147
2 io.StringIO.close [function] [call site] 00148
2 io.BytesIO.close [function] [call site] 00149
2 fontTools.ttLib.sfnt.SFNTReader.__init__ [function] [call site] 00150
3 io.StringIO.seek [function] [call site] 00151
3 io.BytesIO.seek [function] [call site] 00152
3 io.StringIO.read [function] [call site] 00153
3 io.BytesIO.read [function] [call site] 00154
3 io.StringIO.seek [function] [call site] 00155
3 io.BytesIO.seek [function] [call site] 00156
3 fontTools.ttLib.sfnt.readTTCHeader [function] [call site] 00157
4 io.StringIO.seek [function] [call site] 00158
4 io.BytesIO.seek [function] [call site] 00159
4 io.StringIO.read [function] [call site] 00160
4 io.BytesIO.read [function] [call site] 00161
4 <builtin>.len [function] [call site] 00162
4 types.SimpleNamespace [function] [call site] 00163
4 fontTools.misc.sstruct.unpack [function] [call site] 00164
4 struct.unpack [function] [call site] 00165
4 io.StringIO.read [function] [call site] 00166
4 io.BytesIO.read [function] [call site] 00167
3 io.StringIO.seek [function] [call site] 00168
3 io.BytesIO.seek [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 io.StringIO.read [function] [call site] 00178
3 io.BytesIO.read [function] [call site] 00179
3 <builtin>.len [function] [call site] 00180
3 fontTools.misc.sstruct.unpack [function] [call site] 00181
3 <builtin>.range [function] [call site] 00182
3 fontTools.ttLib.sfnt.DirectoryEntry.__init__ [function] [call site] 00183
3 fontTools.ttLib.sfnt.DirectoryEntry.__init__ [function] [call site] 00184
3 fontTools.ttLib.sfnt.WOFFDirectoryEntry.__init__ [function] [call site] 00185
4 <builtin>.super [function] [call site] 00186
4 <builtin>.hasattr [function] [call site] 00187
3 fontTools.ttLib.woff2.WOFF2DirectoryEntry.fromFile [function] [call site] 00188
4 io.BytesIO.tell [function] [call site] 00189
4 io.StringIO.tell [function] [call site] 00190
4 io.StringIO.read [function] [call site] 00191
4 io.BytesIO.read [function] [call site] 00192
4 fontTools.ttLib.woff2.WOFF2DirectoryEntry.fromString [function] [call site] 00193
5 <builtin>.len [function] [call site] 00194
5 fontTools.misc.sstruct.unpack2 [function] [call site] 00195
6 fontTools.misc.sstruct.calcsize [function] [call site] 00196
7 fontTools.misc.sstruct.getformat [function] [call site] 00197
7 struct.calcsize [function] [call site] 00198
6 fontTools.misc.sstruct.unpack [function] [call site] 00199
5 <builtin>.len [function] [call site] 00200
5 fontTools.misc.sstruct.unpack2 [function] [call site] 00201
5 fontTools.ttLib.woff2.unpackBase128 [function] [call site] 00202
6 <builtin>.len [function] [call site] 00203
6 fontTools.misc.textTools.byteord [function] [call site] 00204
7 <builtin>.isinstance [function] [call site] 00205
7 <builtin>.ord [function] [call site] 00206
6 <builtin>.range [function] [call site] 00207
6 <builtin>.len [function] [call site] 00208
6 fontTools.misc.textTools.byteord [function] [call site] 00209
5 fontTools.ttLib.woff2.unpackBase128 [function] [call site] 00210
4 <builtin>.len [function] [call site] 00211
4 <builtin>.len [function] [call site] 00212
4 io.StringIO.seek [function] [call site] 00213
4 io.BytesIO.seek [function] [call site] 00214
3 collections.OrderedDict.items [function] [call site] 00215
3 <builtin>.sorted [function] [call site] 00216
3 collections.OrderedDict [function] [call site] 00217
3 fontTools.ttLib.sfnt.WOFFFlavorData.__init__ [function] [call site] 00218
4 io.StringIO.seek [function] [call site] 00219
4 io.BytesIO.seek [function] [call site] 00220
4 io.StringIO.read [function] [call site] 00221
4 io.BytesIO.read [function] [call site] 00222
4 <builtin>.len [function] [call site] 00223
4 fontTools.ttLib.sfnt.WOFFFlavorData._decompress [function] [call site] 00224
5 zlib.decompress [function] [call site] 00225
4 fontTools.ttLib.woff2.WOFF2FlavorData._decompress [function] [call site] 00226
5 brotli.decompress [function] [call site] 00227
5 brotlicffi.decompress [function] [call site] 00228
4 <builtin>.len [function] [call site] 00229
4 io.StringIO.seek [function] [call site] 00230
4 io.BytesIO.seek [function] [call site] 00231
4 io.StringIO.read [function] [call site] 00232
4 io.BytesIO.read [function] [call site] 00233
4 <builtin>.len [function] [call site] 00234