Fuzz introspector: fuzz_bundle
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
53 12 dulwich.pack.pack_objects_to_data call site: {node_id} dulwich.pack.deltify_pack_objects
20 84 dulwich.pack.PackChunkGenerator._pack_data_chunks call site: {node_id} dulwich.pack.pack_object_chunks
16 163 ...dulwich.fuzzing.fuzz-targets.fuzz_bundle.TestOneInput call site: {node_id} dulwich.bundle._read_bundle
10 126 dulwich.pack.read_pack_header call site: {node_id} dulwich.pack.PackStreamReader._buf_len
6 66 dulwich.pack.pack_objects_to_data call site: {node_id} dulwich.pack.full_unpacked_object
6 156 dulwich.bundle.write_bundle call site: {node_id} dulwich.pack.write_pack_data
4 137 dulwich.pack.read_pack_header call site: {node_id} dulwich.contrib.swift.SwiftPackReader.read
2 6 ...dulwich.fuzzing.fuzz-targets.fuzz_bundle.TestOneInput call site: {node_id} test_utils.EnhancedFuzzedDataProvider.ConsumeRandomString
1 73 dulwich.pack.write_pack_objects call site: {node_id} dulwich.pack.PackChunkGenerator.__iter__
1 77 dulwich.pack.PackChunkGenerator.__init__ call site: {node_id} .len
1 113 dulwich.pack.PackData.from_file call site: {node_id} dulwich.file.GitFile
1 117 dulwich.file._GitFile.__init__ call site: {node_id} .getattr

Fuzzer calltree

0 ...dulwich.fuzzing.fuzz-targets.fuzz_bundle.TestOneInput [function] [call site] 00000
1 test_utils.EnhancedFuzzedDataProvider [function] [call site] 00001
1 test_utils.EnhancedFuzzedDataProvider.PickValueInList [function] [call site] 00002
1 test_utils.EnhancedFuzzedDataProvider.ConsumeRandomString [function] [call site] 00003
1 test_utils.EnhancedFuzzedDataProvider.ConsumeBytes [function] [call site] 00004
1 test_utils.EnhancedFuzzedDataProvider.ConsumeBytes [function] [call site] 00005
1 test_utils.EnhancedFuzzedDataProvider.ConsumeRandomBytes [function] [call site] 00006
1 test_utils.EnhancedFuzzedDataProvider.ConsumeRandomString [function] [call site] 00007
1 test_utils.EnhancedFuzzedDataProvider.ConsumeRandomString [function] [call site] 00008
1 io.BytesIO [function] [call site] 00009
1 dulwich.pack.write_pack_objects [function] [call site] 00010
2 dulwich.pack.pack_objects_to_data [function] [call site] 00011
3 <builtin>.len [function] [call site] 00012
3 dulwich.pack.deltify_pack_objects [function] [call site] 00013
4 dulwich.pack.deltas_from_sorted_objects [function] [call site] 00014
5 collections.deque [function] [call site] 00015
5 <builtin>.enumerate [function] [call site] 00016
5 o.as_raw_chunks [function] [call site] 00017
5 <builtin>.map [function] [call site] 00018
5 <builtin>.sum [function] [call site] 00019
5 dulwich.pack.create_delta [function] [call site] 00020
6 <builtin>.isinstance [function] [call site] 00021
6 <builtin>.isinstance [function] [call site] 00022
6 <builtin>.isinstance [function] [call site] 00023
6 <builtin>.isinstance [function] [call site] 00024
6 <builtin>.len [function] [call site] 00025
6 dulwich.pack._delta_encode_size [function] [call site] 00026
7 <builtin>.bytearray [function] [call site] 00027
7 ret.append [function] [call site] 00028
7 ret.append [function] [call site] 00029
7 <builtin>.bytes [function] [call site] 00030
6 <builtin>.len [function] [call site] 00031
6 dulwich.pack._delta_encode_size [function] [call site] 00032
6 difflib.SequenceMatcher [function] [call site] 00033
6 cdifflib.CSequenceMatcher [function] [call site] 00034
6 difflib.SequenceMatcher.get_opcodes [function] [call site] 00035
6 <builtin>.min [function] [call site] 00036
6 dulwich.pack._encode_copy_operation [function] [call site] 00037
7 <builtin>.bytearray [function] [call site] 00038
7 <builtin>.range [function] [call site] 00039
7 scratch.append [function] [call site] 00040
7 <builtin>.range [function] [call site] 00041
7 scratch.append [function] [call site] 00042
7 <builtin>.bytes [function] [call site] 00043
6 <builtin>.bytes [function] [call site] 00044
6 <builtin>.memoryview [function] [call site] 00045
6 <builtin>.bytes [function] [call site] 00046
6 <builtin>.memoryview [function] [call site] 00047
5 <builtin>.len [function] [call site] 00048
5 delta.append [function] [call site] 00049
5 dulwich.pack.UnpackedObject.__init__ [function] [call site] 00050
6 <builtin>.map [function] [call site] 00051
6 <builtin>.sum [function] [call site] 00052
5 possible_bases.appendleft [function] [call site] 00055
5 <builtin>.len [function] [call site] 00056
5 possible_bases.pop [function] [call site] 00057
4 dulwich.pack.deltify_pack_objects.objects_with_hints [function] [call site] 00058
5 <builtin>.isinstance [function] [call site] 00059
4 dulwich.pack.sort_objects_for_delta [function] [call site] 00060
5 <builtin>.isinstance [function] [call site] 00061
5 obj.raw_length [function] [call site] 00062
5 magic.append [function] [call site] 00063
5 magic.sort [function] [call site] 00064
3 <builtin>.iter [function] [call site] 00065
3 dulwich.pack.pack_objects_to_data.iter_without_path [function] [call site] 00066
4 <builtin>.isinstance [function] [call site] 00067
4 dulwich.pack.full_unpacked_object [function] [call site] 00068
5 dulwich.pack.UnpackedObject.__init__ [function] [call site] 00069
5 o.as_raw_chunks [function] [call site] 00070
4 dulwich.pack.full_unpacked_object [function] [call site] 00072
2 dulwich.pack.write_pack_data [function] [call site] 00073
3 dulwich.pack.PackChunkGenerator.__iter__ [function] [call site] 00074
3 dulwich.pack.PackChunkGenerator.__init__ [function] [call site] 00075
4 hashlib.sha1 [function] [call site] 00076
4 dulwich.pack.PackChunkGenerator._pack_data_chunks [function] [call site] 00077
5 <builtin>.len [function] [call site] 00078
5 dulwich.pack.pack_header_chunks [function] [call site] 00079
6 struct.pack [function] [call site] 00080
6 struct.pack [function] [call site] 00081
5 hashlib.sha1.update [function] [call site] 00082
5 <builtin>.len [function] [call site] 00083
5 <builtin>.enumerate [function] [call site] 00084
5 <builtin>.isinstance [function] [call site] 00085
5 dulwich.pack.pack_object_chunks [function] [call site] 00086
6 <builtin>.isinstance [function] [call site] 00087
6 <builtin>.map [function] [call site] 00088
6 <builtin>.sum [function] [call site] 00089
6 dulwich.pack.pack_object_header [function] [call site] 00090
7 header.append [function] [call site] 00091
7 header.append [function] [call site] 00092
7 ret.insert [function] [call site] 00093
7 header.extend [function] [call site] 00094
7 <builtin>.len [function] [call site] 00095
7 <builtin>.bytearray [function] [call site] 00096
6 <builtin>.bytes [function] [call site] 00097
6 zlib.compressobj [function] [call site] 00098
6 compressor.compress [function] [call site] 00099
6 compressor.flush [function] [call site] 00100
5 binascii.crc32 [function] [call site] 00101
5 hashlib.sha1.update [function] [call site] 00102
5 <builtin>.len [function] [call site] 00103
5 unpacked.sha [function] [call site] 00104
5 hashlib.sha1.digest [function] [call site] 00105
3 functools.partial [function] [call site] 00106
3 io.BytesIO.write [function] [call site] 00107
3 dulwich.pack.PackChunkGenerator.sha1digest [function] [call site] 00108
4 hashlib.sha1.digest [function] [call site] 00109
1 io.BytesIO.seek [function] [call site] 00110
1 dulwich.pack.PackData.from_file [function] [call site] 00111
2 <builtin>.str [function] [call site] 00112
2 dulwich.pack.PackData.__init__ [function] [call site] 00113
3 dulwich.file.GitFile [function] [call site] 00114
4 dulwich.file._GitFile.__init__ [function] [call site] 00115
5 <builtin>.isinstance [function] [call site] 00116
5 <builtin>.getattr [function] [call site] 00118
5 os.fdopen [function] [call site] 00119
5 <builtin>.getattr [function] [call site] 00120
5 <builtin>.setattr [function] [call site] 00121
4 <builtin>.open [function] [call site] 00122
3 dulwich.pack.read_pack_header [function] [call site] 00123
4 tempfile.SpooledTemporaryFile.read [function] [call site] 00124
4 io.BytesIO.read [function] [call site] 00125
4 dulwich.pack.PackStreamReader.read [function] [call site] 00126
5 dulwich.pack.PackStreamReader._buf_len [function] [call site] 00127
6 io.BytesIO.tell [function] [call site] 00128
6 io.BytesIO.seek [function] [call site] 00129
6 io.BytesIO.tell [function] [call site] 00130
6 io.BytesIO.seek [function] [call site] 00131
5 io.BytesIO.read [function] [call site] 00132
5 io.BytesIO.read [function] [call site] 00133
5 io.BytesIO [function] [call site] 00134
5 dulwich.pack.PackStreamCopier._read [function] [call site] 00135
6 <builtin>.super [function] [call site] 00136
4 dulwich.contrib.swift.SwiftPackReader.read [function] [call site] 00137
5 <builtin>.len [function] [call site] 00138
5 dulwich.contrib.swift.SwiftPackReader._read [function] [call site] 00139
6 <builtin>.min [function] [call site] 00140
5 dulwich.contrib.swift.SwiftPackReader.read [function] [call site] 00141
4 struct.unpack_from [function] [call site] 00142
4 struct.unpack_from [function] [call site] 00143
1 <builtin>.repr [function] [call site] 00144
1 io.BytesIO [function] [call site] 00145
1 dulwich.bundle.write_bundle [function] [call site] 00146
2 io.BytesIO.write [function] [call site] 00147
2 io.BytesIO.write [function] [call site] 00148
2 bundle.capabilities.items [function] [call site] 00149
2 key.encode [function] [call site] 00150
2 io.BytesIO.write [function] [call site] 00151
2 value.encode [function] [call site] 00152
2 io.BytesIO.write [function] [call site] 00153
2 io.BytesIO.write [function] [call site] 00154
2 comment.encode [function] [call site] 00155
2 io.BytesIO.write [function] [call site] 00156
2 bundle.references.items [function] [call site] 00157
2 io.BytesIO.write [function] [call site] 00158
2 io.BytesIO.write [function] [call site] 00159
2 dulwich.pack.write_pack_data [function] [call site] 00160
2 <builtin>.len [function] [call site] 00161
2 bundle.pack_data.iter_unpacked [function] [call site] 00162
1 dulwich.bundle.read_bundle [function] [call site] 00163
2 io.BytesIO.readline [function] [call site] 00164
2 dulwich.bundle._read_bundle [function] [call site] 00165
3 io.BytesIO.readline [function] [call site] 00166
3 line.startswith [function] [call site] 00167
3 line.split [function] [call site] 00168
3 value.decode [function] [call site] 00169
3 key.decode [function] [call site] 00170
3 io.BytesIO.readline [function] [call site] 00171
3 line.startswith [function] [call site] 00172
3 comment.decode [function] [call site] 00173
3 prerequisites.append [function] [call site] 00174
3 io.BytesIO.readline [function] [call site] 00175
3 line.rstrip [function] [call site] 00176
3 io.BytesIO.readline [function] [call site] 00177
3 dulwich.pack.PackData.from_file [function] [call site] 00178
2 dulwich.bundle._read_bundle [function] [call site] 00179
1 test_utils.is_expected_exception [function] [call site] 00180