Fuzz introspector: fuzz_gitdb
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
48 66 gitdb.db.mem.MemoryDB.stream_copy call site: 00066 gitdb.fun.write_object
16 116 gitdb.util._retry call site: 00116 gitdb.db.base.FileDBBase.db_path
15 7 ...fuzz_gitdb.fuzz_decompression_map_reader call site: 00007 gitdb.stream.DecompressMemMapReader.read
15 173 ...fuzz_gitdb.fuzz_pack_file call site: 00173 gitdb.pack.PackFile.stream_iter
14 134 ...fuzz_gitdb.fuzz_loose_obj_db call site: 00134 gitdb.db.loose.LooseObjectDB._map_loose_object
12 189 gitdb.pack.pack_object_at call site: 00189 gitdb.fun.stream_copy
11 31 ...fuzz_gitdb.fuzz_loose_obj_db call site: 00031 gitdb.db.loose.LooseObjectDB.sha_iter
7 149 gitdb.util._RandomAccessBytesIO.__init__ call site: 00149 gitdb.util.file_contents_ro_filepath
6 44 gitdb.db.mem.MemoryDB.__init__ call site: 00044 gitdb.db.mem.MemoryDB.stream_copy
6 53 gitdb.db.loose.LooseObjectDB.readable_db_object_path call site: 00053 gitdb.utils.encoding.force_text
5 166 gitdb.stream.DecompressMemMapReader._parse_header_info call site: 00166 gitdb.base.OStream.__init__
4 160 ...fuzz_gitdb.fuzz_loose_obj_db call site: 00160 gitdb.db.loose.LooseObjectDB._map_loose_object

Fuzzer calltree

0 ...fuzz_gitdb.TestOneInput [function] [call site] 00000
1 ...fuzz_gitdb.fuzz_decompression_map_reader [function] [call site] 00001
2 atheris.FuzzedDataProvider [function] [call site] 00002
2 zlib.compress [function] [call site] 00003
2 gitdb.stream.DecompressMemMapReader.__init__ [function] [call site] 00004
3 zlib.decompressobj [function] [call site] 00005
2 fdp.ConsumeIntInRange [function] [call site] 00006
2 gitdb.stream.DecompressMemMapReader.read [function] [call site] 00007
3 <builtin>.min [function] [call site] 00008
3 io.BytesIO.read [function] [call site] 00009
3 io.BytesIO.read [function] [call site] 00010
3 <builtin>.len [function] [call site] 00011
3 <builtin>.len [function] [call site] 00012
3 <builtin>.getattr [function] [call site] 00013
3 <builtin>.len [function] [call site] 00014
3 <builtin>.len [function] [call site] 00015
3 <builtin>.len [function] [call site] 00016
3 <builtin>.len [function] [call site] 00017
3 <builtin>.len [function] [call site] 00018
3 <builtin>.len [function] [call site] 00019
3 <builtin>.len [function] [call site] 00020
3 <builtin>.len [function] [call site] 00021
3 gitdb.stream.DecompressMemMapReader.read [function] [call site] 00022
1 ...fuzz_gitdb.fuzz_loose_obj_db [function] [call site] 00023
2 <builtin>.open [function] [call site] 00024
2 os.path.isfile [function] [call site] 00026
2 gitdb.db.loose.LooseObjectDB.__init__ [function] [call site] 00027
3 <builtin>.super [function] [call site] 00028
3 <builtin>.dict [function] [call site] 00029
3 <builtin>.getattr [function] [call site] 00030
2 gitdb.db.loose.LooseObjectDB.size [function] [call site] 00031
3 gitdb.db.loose.LooseObjectDB.sha_iter [function] [call site] 00032
4 gitdb.db.base.FileDBBase.root_path [function] [call site] 00033
4 os.path.basename [function] [call site] 00035
4 <builtin>.len [function] [call site] 00036
4 <builtin>.len [function] [call site] 00037
4 binascii.a2b_hex [function] [call site] 00038
3 <builtin>.tuple [function] [call site] 00039
3 <builtin>.len [function] [call site] 00040
2 gitdb.db.mem.MemoryDB.__init__ [function] [call site] 00041
3 <builtin>.super [function] [call site] 00042
3 gitdb.db.loose.LooseObjectDB.__init__ [function] [call site] 00043
3 <builtin>.dict [function] [call site] 00044
2 gitdb.db.mem.MemoryDB.sha_iter [function] [call site] 00045
2 gitdb.db.mem.MemoryDB.stream_copy [function] [call site] 00046
3 gitdb.db.loose.LooseObjectDB.has_object [function] [call site] 00047
4 binascii.b2a_hex [function] [call site] 00048
4 gitdb.db.loose.LooseObjectDB.readable_db_object_path [function] [call site] 00049
5 contextlib.suppress [function] [call site] 00050
5 gitdb.db.loose.LooseObjectDB.object_path [function] [call site] 00051
6 os.path.join [function] [call site] 00052
5 gitdb.db.base.FileDBBase.db_path [function] [call site] 00053
6 gitdb.utils.encoding.force_text [function] [call site] 00054
7 <builtin>.isinstance [function] [call site] 00055
7 <builtin>.isinstance [function] [call site] 00056
7 <builtin>.str [function] [call site] 00057
6 os.path.join [function] [call site] 00058
5 os.path.exists [function] [call site] 00059
3 gitdb.db.mem.MemoryDB.stream [function] [call site] 00060
4 ostream.stream.seek [function] [call site] 00061
3 ostream.stream.data [function] [call site] 00062
3 io.BytesIO [function] [call site] 00063
3 gitdb.base.IStream.__init__ [function] [call site] 00064
4 list.__init__ [function] [call site] 00065
3 gitdb.db.loose.LooseObjectDB.store [function] [call site] 00066
4 gitdb.db.git.GitDB.ostream [function] [call site] 00067
4 tempfile.mkstemp [function] [call site] 00068
4 gitdb.stream.FDCompressedSha1Writer.__init__ [function] [call site] 00069
5 <builtin>.super [function] [call site] 00070
5 zlib.compressobj [function] [call site] 00071
4 gitdb.stream.FDStream.__init__ [function] [call site] 00072
4 gitdb.fun.stream_copy [function] [call site] 00073
5 <builtin>.min [function] [call site] 00074
5 gitdb.base.IStream.read [function] [call site] 00075
5 gitdb.base.OStream.read [function] [call site] 00076
5 <builtin>.len [function] [call site] 00077
5 gitdb.stream.ZippedStoreShaWriter.write [function] [call site] 00078
6 gitdb.stream.ZippedStoreShaWriter.write [function] [call site] 00079
6 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00080
7 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00081
7 <builtin>.len [function] [call site] 00082
7 <builtin>.len [function] [call site] 00083
6 gitdb.stream.FlexibleSha1Writer.write [function] [call site] 00084
7 gitdb.stream.ZippedStoreShaWriter.write [function] [call site] 00085
7 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00086
7 gitdb.stream.FlexibleSha1Writer.write [function] [call site] 00087
7 gitdb.pack.PackEntity.create.<lambda1> [function] [call site] 00088
7 gitdb.pack.PackEntity.create.<lambda2> [function] [call site] 00090
6 io.BytesIO.write [function] [call site] 00092
5 gitdb.stream.NullStream.write [function] [call site] 00093
6 <builtin>.len [function] [call site] 00094
5 gitdb.stream.FlexibleSha1Writer.write [function] [call site] 00095
5 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00096
5 gitdb.stream.FDStream.write [function] [call site] 00097
6 <builtin>.len [function] [call site] 00098
4 gitdb.fun.write_object [function] [call site] 00100
5 gitdb.fun.loose_object_header [function] [call site] 00101
6 gitdb.utils.encoding.force_text [function] [call site] 00102
5 gitdb.stream.ZippedStoreShaWriter.write [function] [call site] 00103
5 gitdb.stream.FlexibleSha1Writer.write [function] [call site] 00104
5 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00105
5 gitdb.stream.FDStream.write [function] [call site] 00106
5 gitdb.fun.stream_copy [function] [call site] 00107
4 gitdb.stream.FDStream.close [function] [call site] 00108
5 gitdb.stream.FDStream.close [function] [call site] 00109
4 gitdb.stream.FDCompressedSha1Writer.close [function] [call site] 00110
5 gitdb.stream.FDCompressedSha1Writer.write [function] [call site] 00111
5 <builtin>.len [function] [call site] 00112
5 gitdb.stream.FDCompressedSha1Writer.close [function] [call site] 00113
4 gitdb.util.remove [function] [call site] 00114
5 gitdb.util._retry [function] [call site] 00115
6 <builtin>.range [function] [call site] 00116
6 os.remove [function] [call site] 00117
6 time.sleep [function] [call site] 00118
6 os.remove [function] [call site] 00119
6 os.remove [function] [call site] 00120
4 gitdb.stream.Sha1Writer.sha [function] [call site] 00121
4 gitdb.db.loose.LooseObjectDB.object_path [function] [call site] 00122
4 gitdb.db.base.FileDBBase.db_path [function] [call site] 00123
4 os.path.dirname [function] [call site] 00124
4 os.makedirs [function] [call site] 00125
4 os.path.isfile [function] [call site] 00126
4 gitdb.util.remove [function] [call site] 00127
4 os.rename [function] [call site] 00128
4 contextlib.suppress [function] [call site] 00129
4 time.sleep [function] [call site] 00131
4 binascii.a2b_hex [function] [call site] 00132
2 gitdb.db.loose.LooseObjectDB.sha_iter [function] [call site] 00133
2 gitdb.db.loose.LooseObjectDB.info [function] [call site] 00134
3 gitdb.db.loose.LooseObjectDB._map_loose_object [function] [call site] 00135
4 binascii.b2a_hex [function] [call site] 00136
4 gitdb.db.loose.LooseObjectDB.object_path [function] [call site] 00137
4 gitdb.db.base.FileDBBase.db_path [function] [call site] 00138
4 gitdb.util.file_contents_ro_filepath [function] [call site] 00139
5 <builtin>.getattr [function] [call site] 00140
5 gitdb.util.file_contents_ro [function] [call site] 00142
6 mmap.mmap [function] [call site] 00143
6 mmap.mmap [function] [call site] 00145
6 gitdb.util._RandomAccessBytesIO.__init__ [function] [call site] 00148
7 io.BytesIO [function] [call site] 00149
4 gitdb.util.file_contents_ro_filepath [function] [call site] 00151
3 gitdb.fun.loose_object_header_info [function] [call site] 00152
4 zlib.decompressobj [function] [call site] 00153
4 <builtin>.int [function] [call site] 00155
3 gitdb.base.OInfo.__init__ [function] [call site] 00156
4 tuple.__init__ [function] [call site] 00157
3 <builtin>.hasattr [function] [call site] 00158
2 gitdb.db.loose.LooseObjectDB.stream [function] [call site] 00160
3 gitdb.db.loose.LooseObjectDB._map_loose_object [function] [call site] 00161
3 gitdb.stream.DecompressMemMapReader.new [function] [call site] 00162
4 gitdb.stream.DecompressMemMapReader.__init__ [function] [call site] 00163
4 gitdb.stream.DecompressMemMapReader._parse_header_info [function] [call site] 00164
5 gitdb.stream.DecompressMemMapReader.read [function] [call site] 00165
5 <builtin>.int [function] [call site] 00167
5 io.BytesIO [function] [call site] 00168
5 <builtin>.len [function] [call site] 00169
3 gitdb.base.OStream.__init__ [function] [call site] 00170
4 tuple.__init__ [function] [call site] 00171
1 ...fuzz_gitdb.fuzz_pack_file [function] [call site] 00172
2 <builtin>.len [function] [call site] 00173
2 <builtin>.open [function] [call site] 00174
2 os.path.isfile [function] [call site] 00176
2 gitdb.pack.PackFile.__init__ [function] [call site] 00177
2 gitdb.pack.PackFile.version [function] [call site] 00178
2 gitdb.pack.PackFile.size [function] [call site] 00179
2 gitdb.pack.PackFile.stream_iter [function] [call site] 00180
3 gitdb.pack.PackFile._iter_objects [function] [call site] 00181
4 c.file_size [function] [call site] 00182
4 gitdb.pack.pack_object_at [function] [call site] 00183
5 cursor.use_region [function] [call site] 00184
5 gitdb.fun.pack_object_header_info [function] [call site] 00185
6 gitdb.util.byte_ord [function] [call site] 00186
7 <builtin>.ord [function] [call site] 00187
6 gitdb.util.byte_ord [function] [call site] 00188
5 gitdb.util.byte_ord [function] [call site] 00189
5 gitdb.util.byte_ord [function] [call site] 00190
5 gitdb.stream.DecompressMemMapReader.__init__ [function] [call site] 00191
5 gitdb.base.OPackInfo.__init__ [function] [call site] 00192
6 tuple.__init__ [function] [call site] 00193
5 gitdb.base.OPackInfo.__init__ [function] [call site] 00194
5 gitdb.base.OPackInfo.__init__ [function] [call site] 00195
5 gitdb.base.OPackInfo.__init__ [function] [call site] 00196
4 gitdb.fun.stream_copy [function] [call site] 00197
4 ostream.stream.compressed_bytes_read [function] [call site] 00198
4 ostream.stream.seek [function] [call site] 00199
2 gitdb.pack.PackFile.info [function] [call site] 00200
3 gitdb.pack.pack_object_at [function] [call site] 00201