Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: midx_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 189 91.3%
gold [1:9] 17 8.21%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 1 0.48%
All colors 207 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
72 134 git_vector_insert call site: 00134 git_midx_entry_find
60 41 git_str_try_grow call site: 00041 git_hash_buf
23 2 git_str_init call site: 00002 git_str_try_grow
21 103 git_str_dispose call site: 00103 git_midx_parse
6 34 git_str_puts call site: 00034 set_error_from_buffer
4 129 git__reallocarray call site: 00129 git_vector_insert
2 29 git_str_put call site: 00029 git_str_puts
1 0 EP call site: 00000 git_str_init

Runtime coverage analysis

Covered functions
83
Functions that are reachable but not covered
93
Reachable functions
106
Percentage of reachable functions covered
12.26%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/midx_fuzzer.c 1
src/util/str.c 9
src/util/errors.c 5
src/util/thread.c 2
src/util/alloc.h 2
src/util/str.h 2
src/util/hash.c 5
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
build/../src/util/str.h 2
src/libgit2/midx.c 9
src/libgit2/oid.h 5
/usr/include/x86_64-linux-gnu/bits/byteswap.h 1
src/util/vector.c 5
src/util/alloc.c 1
src/util/util.c 3
src/util/vector.h 2
src/libgit2/pack.c 1
src/libgit2/odb.c 2
src/libgit2/oid.c 4
src/util/futils.c 1
src/util/unix/map.c 1

Fuzzer: patch_parse_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 32 14.0%
gold [1:9] 20 8.77%
yellow [10:29] 7 3.07%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 169 74.1%
All colors 228 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
5 23 git_str_vprintf call site: 00023 git_error_set_oom
2 9 git_str_init call site: 00009 git_str_try_grow
2 32 git_str_put call site: 00032 git_str_puts
2 41 set_error_from_buffer call site: 00041 git_error_set_oom
2 44 git_str_try_grow call site: 00044 git_error_set_oom
2 187 check_patch call site: 00187 git_parse_err
2 204 patch_parsed__free call site: 00204 patch_parse_ctx_free
2 225 LLVMFuzzerTestOneInput call site: 00225 git_patch__free
1 4 git__calloc call site: 00004 threadstate_get
1 37 git_str_puts call site: 00037 __errno_location
1 47 git__calloc call site: 00047 git_error_set_oom
1 51 git__linenlen call site: 00051 git__free

Runtime coverage analysis

Covered functions
156
Functions that are reachable but not covered
12
Reachable functions
80
Percentage of reachable functions covered
85.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/patch_parse_fuzzer.c 1
src/libgit2/patch_parse.c 22
src/util/alloc.c 3
src/util/errors.c 7
src/util/thread.c 2
src/util/str.c 10
src/util/alloc.h 3
src/util/str.h 1
src/libgit2/parse.c 9
src/util/util.c 3
src/util/thread.h 2
src/libgit2/parse.h 1
src/util/integer.h 1
src/util/array.h 1
src/libgit2/oid.h 1
src/libgit2/patch.c 2

Fuzzer: config_file_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 313 75.0%
gold [1:9] 7 1.67%
yellow [10:29] 3 0.71%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 94 22.5%
All colors 417 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
243 162 git_config_iterator_new call site: 00162 git_regexp_compile
25 122 git__tsort_r call site: 00122 collapse
7 107 git_config_add_backend call site: 00107 try_remove_existing_backend
4 74 git__strdup call site: 00074 git__strdup
4 406 git_config_foreach_match call site: 00406 git_error_set_after_callback_function
3 91 config_list_free call site: 00091 git__free
2 8 git_str_init call site: 00008 git_str_try_grow
2 31 git_str_put call site: 00031 git_str_puts
2 40 set_error_from_buffer call site: 00040 git_error_set_oom
2 43 git_str_try_grow call site: 00043 git_error_set_oom
2 98 git_str_set call site: 00098 git_config_list_free
2 148 git__tsort call site: 00148 resize_vector

Runtime coverage analysis

Covered functions
166
Functions that are reachable but not covered
106
Reachable functions
164
Percentage of reachable functions covered
35.37%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/config_file_fuzzer.c 2
src/libgit2/config.c 16
src/util/alloc.c 3
src/util/errors.c 7
src/util/thread.c 2
src/util/str.c 8
src/util/alloc.h 3
src/util/str.h 1
src/util/vector.c 7
src/util/thread.h 2
src/libgit2/config_mem.c 2
src/libgit2/config_list.c 7
src/libgit2/common.h 1
src/util/tsort.c 12
src/util/util.c 1
src/util/regexp.c 1
deps/pcre2/pcre2_compile.c 26
deps/pcre2/pcre2_string_utils.c 4
deps/pcre2/pcre2_valid_utf.c 1
deps/pcre2/pcre2_newline.c 1
deps/pcre2/pcre2_compile_cgroup.c 8
deps/pcre2/pcre2_compile_class.c 22
deps/pcre2/pcre2_ord2utf.c 1
deps/pcre2/pcre2_chkdint.c 1
deps/pcre2/pcre2_find_bracket.c 1
deps/pcre2/pcre2_auto_possess.c 5
deps/pcre2/pcre2_xclass.c 2
deps/pcre2/pcre2_study.c 7
deps/pcre2/pcre2_error.c 1
src/util/errors.h 1
build/..config_backend.h 1

Fuzzer: commit_graph_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 97 51.8%
gold [1:9] 12 6.41%
yellow [10:29] 6 3.20%
greenyellow [30:49] 1 0.53%
lawngreen 50+ 71 37.9%
All colors 187 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
47 132 commit_graph_parse_oid_lookup call site: 00132 git_commit_graph_entry_find
11 82 SHA1DCFinal call site: 00082 git_hash_sha256_final
7 69 SHA1DCUpdate call site: 00069 git_hash_sha256_update
6 49 git_hash_sha1_init call site: 00049 git_hash_sha256_ctx_init
5 20 git_str_vprintf call site: 00020 git_error_set_oom
4 181 git_commit_graph_file_close call site: 00181 git_futils_mmap_free
3 65 sha1_recompression_step call site: 00065 abort
3 95 git_hash_ctx_cleanup call site: 00095 git_hash_sha256_ctx_cleanup
2 2 git_str_init call site: 00002 git_str_try_grow
2 29 git_str_put call site: 00029 git_str_puts
2 38 set_error_from_buffer call site: 00038 git_error_set_oom
2 41 git_str_try_grow call site: 00041 git_error_set_oom

Runtime coverage analysis

Covered functions
121
Functions that are reachable but not covered
44
Reachable functions
91
Percentage of reachable functions covered
51.65%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/commit_graph_fuzzer.c 1
src/util/str.c 9
src/util/errors.c 5
src/util/thread.c 2
src/util/alloc.h 2
src/util/str.h 2
src/util/hash.c 5
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
build/../src/util/str.h 2
src/libgit2/commit_graph.c 9
src/libgit2/oid.h 5
/usr/include/x86_64-linux-gnu/bits/byteswap.h 1
src/libgit2/pack.c 1
src/libgit2/odb.c 2
src/libgit2/oid.c 4
src/util/futils.c 1
src/util/unix/map.c 1

Fuzzer: objects_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 70 44.5%
gold [1:9] 9 5.73%
yellow [10:29] 7 4.45%
greenyellow [30:49] 1 0.63%
lawngreen 50+ 70 44.5%
All colors 157 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
12 59 git_object_id_from_buffer call site: 00059 git_filter_list__apply_to_buffer
11 127 SHA1DCFinal call site: 00127 git_hash_sha256_final
7 114 SHA1DCUpdate call site: 00114 git_hash_sha256_update
6 94 git_hash_sha1_init call site: 00094 git_hash_sha256_ctx_init
5 8 git_str_init call site: 00008 git_str_try_grow
4 77 git__reallocarray call site: 00077 git_error_set
3 110 sha1_recompression_step call site: 00110 abort
3 150 git_cached_obj_decref call site: 00150 git_odb_object__free
2 16 git_str_try_grow call site: 00016 git_error_set_oom
2 35 git_str_put call site: 00035 git_str_puts
2 72 git_vector_insert call site: 00072 resize_vector
2 154 git_cached_obj_decref call site: 00154 git__free

Runtime coverage analysis

Covered functions
164
Functions that are reachable but not covered
35
Reachable functions
92
Percentage of reachable functions covered
61.96%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/objects_fuzzer.c 1
src/libgit2/object.c 10
src/util/errors.c 5
src/util/thread.c 2
src/util/str.c 8
src/util/alloc.h 3
src/util/str.h 1
src/util/alloc.c 2
src/libgit2/oid.h 2
src/libgit2/filter.c 8
src/util/vector.c 4
src/libgit2/odb.c 2
src/util/hash.c 5
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
src/libgit2/cache.h 1
src/util/thread.h 2
src/libgit2/cache.c 1

Fuzzer: packfile_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 844 61.7%
gold [1:9] 145 10.6%
yellow [10:29] 14 1.02%
greenyellow [30:49] 1 0.07%
lawngreen 50+ 363 26.5%
All colors 1367 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
132 909 fix_thin_pack call site: 00909 inject_object
69 1143 lock_file call site: 01143 git_futils_creat_locked_withpath
67 670 store_object call site: 00670 check_object_connectivity
66 837 git_packfile_unpack call site: 00837 packfile_unpack_compressed
65 583 inflate call site: 00583 deflate
28 502 git_oid_equal call site: 00502 pack_entry_find_offset
26 417 packfile_error call site: 00417 git_mwindow_file_register
25 199 git_odb_write call site: 00199 git_odb_open_wstream
24 1058 git__tsort_r call site: 01058 collapse
23 1110 resolve_symlink call site: 01110 git_fs_path_apply_relative
17 172 p_open call site: 00172 git_fs_path_set_error
14 396 git_packfile_unpack_header call site: 00396 pack_index_open_locked

Runtime coverage analysis

Covered functions
279
Functions that are reachable but not covered
264
Reachable functions
470
Percentage of reachable functions covered
43.83%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/packfile_fuzzer.c 1
src/libgit2/odb_mempack.c 3
src/util/alloc.h 3
src/libgit2/odb.c 28
src/util/errors.c 10
src/util/thread.c 2
src/util/str.c 18
src/util/str.h 5
src/libgit2/object.c 10
src/libgit2/oid.h 8
src/libgit2/filter.c 8
src/util/alloc.c 3
src/util/vector.c 10
src/util/hash.c 7
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
src/libgit2/oid.c 9
src/util/vector.h 2
src/libgit2/commit_graph.c 4
src/util/futils.c 14
src/util/posix.c 4
src/util/fs_path.c 10
src/util/unix/map.c 2
src/libgit2/indexer.c 43
src/util/rand.c 2
src/libgit2/pack.c 46
src/util/util.c 2
src/libgit2/mwindow.c 10
src/util/runtime.c 3
src/util/thread.h 6
/usr/include/x86_64-linux-gnu/bits/byteswap.h 1
src/util/errors.h 1
src/libgit2/hashmap_oid.h 1
src/util/zstream.c 11
deps/zlib/inflate.c 10
deps/zlib/deflate.c 16
deps/zlib/adler32.c 2
deps/zlib/trees.c 19
deps/zlib/inftrees.c 1
deps/zlib/inffast.c 1
src/libgit2/cache.h 1
src/libgit2/cache.c 20
deps/zlib/crc32.c 3
src/util/hash.h 1
src/util/filebuf.h 1
src/util/array.h 1
src/libgit2/delta.c 2
src/util/tsort.c 12
src/util/filebuf.c 12
src/util/fs_path.h 1
src/util/hashmap_str.h 7
src/util/pool.c 4
src/util/unix/posix.h 1
build/../src/util/str.h 1

Fuzzer: download_refs_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1077 55.1%
gold [1:9] 209 10.7%
yellow [10:29] 119 6.09%
greenyellow [30:49] 1 0.05%
lawngreen 50+ 546 27.9%
All colors 1952 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
68 476 compile_regex call site: 00476 compile_regex
59 415 parse_regex call site: 00415 _pcre2_check_escape_8
42 1406 git_commit_graph_new call site: 01406 git_commit_graph_file_open
29 584 pcre2_compile_8 call site: 00584 set_start_bits
29 1662 git_array__alloc call site: 01662 git_grafts_add
27 1187 p_mmap call site: 01187 git_midx_parse
26 971 dowild call site: 00971 __ctype_b_loc
25 1142 git_fs_path_set_error call site: 01142 remove_multi_pack_index
24 283 bisort call site: 00283 collapse
24 1049 git_odb_new_ext call site: 01049 git_cache_dispose
22 1218 suffixcmp call site: 01218 git_midx_free
18 374 git_config_snapshot call site: 00374 get_optional_config

Runtime coverage analysis

Covered functions
814
Functions that are reachable but not covered
258
Reachable functions
626
Percentage of reachable functions covered
58.79%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/download_refs_fuzzer.c 1
src/libgit2/remote.c 43
src/util/errors.c 10
src/util/thread.c 2
src/util/str.c 19
src/util/alloc.h 3
src/util/str.h 6
src/libgit2/common.h 1
src/libgit2/refspec.c 6
src/util/alloc.c 4
src/libgit2/refs.c 6
src/libgit2/repository.c 18
src/util/util.c 10
src/libgit2/config.c 42
src/libgit2/sysdir.c 7
src/util/fs_path.c 14
src/util/vector.c 14
src/util/thread.h 7
src/libgit2/config_file.c 1
src/util/tsort.c 12
src/util/regexp.c 1
deps/pcre2/pcre2_compile.c 26
deps/pcre2/pcre2_string_utils.c 4
deps/pcre2/pcre2_valid_utf.c 1
deps/pcre2/pcre2_newline.c 1
deps/pcre2/pcre2_compile_cgroup.c 8
deps/pcre2/pcre2_compile_class.c 22
deps/pcre2/pcre2_ord2utf.c 1
deps/pcre2/pcre2_chkdint.c 1
deps/pcre2/pcre2_find_bracket.c 1
deps/pcre2/pcre2_auto_possess.c 5
deps/pcre2/pcre2_xclass.c 2
deps/pcre2/pcre2_study.c 7
deps/pcre2/pcre2_error.c 1
src/util/errors.h 1
src/libgit2/push.c 3
src/libgit2/config_cache.c 3
build/../fuzzers/fuzzer_utils.c 1
src/util/runtime.c 3
src/libgit2/buf.c 1
src/libgit2/transport.c 3
src/libgit2/remote.h 1
src/libgit2/strarray.c 2
src/libgit2/proxy.c 3
src/libgit2/fetch.c 6
src/util/wildmatch.c 2
src/libgit2/oid.h 7
src/util/util.h 2
src/libgit2/oid.c 8
src/libgit2/odb.c 18
src/libgit2/cache.c 14
src/libgit2/object.c 1
src/util/vector.h 2
src/libgit2/odb_loose.c 2
src/libgit2/odb_pack.c 10
src/libgit2/midx.c 11
src/util/futils.c 17
src/util/posix.c 4
src/util/unix/map.c 2
/usr/include/x86_64-linux-gnu/bits/byteswap.h 1
src/libgit2/mwindow.c 12
src/libgit2/pack.c 9
src/util/hashmap_str.h 7
src/util/fs_path.h 2
src/libgit2/commit_graph.c 13
src/util/hash.c 5
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
src/libgit2/hashmap_oid.h 1
src/libgit2/cache.h 1
src/libgit2/grafts.c 21
src/libgit2/parse.c 5
src/util/array.h 1
src/util/filebuf.h 1
src/util/filebuf.c 10
deps/zlib/deflate.c 7
deps/zlib/adler32.c 2
deps/zlib/trees.c 2
src/util/rand.c 2
src/util/pool.c 4
src/util/unix/posix.h 1
src/libgit2/oidarray.c 1

Fuzzer: revparse_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 3678 75.0%
gold [1:9] 373 7.60%
yellow [10:29] 172 3.50%
greenyellow [30:49] 21 0.42%
lawngreen 50+ 660 13.4%
All colors 4904 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
492 3458 git_fs_path_lstat call site: 03458 git_diff_index_to_workdir
346 3111 git_repository_open_ext call site: 03111 submodule_get_wd_status
204 4620 git_config__get_string_buf call site: 04620 git_remote_lookup
143 2177 git_path_str_is_valid call site: 02177 git_index_set_caps
131 1949 prepare_walk call site: 01949 limit_list
107 860 refresh_multi_pack_index call site: 00860 process_multi_pack_index_pack
95 1758 git_reference_name call site: 01758 git_revwalk__push_ref
93 4375 git_filebuf_commit call site: 04375 include_path_delta
92 2414 git_config_snapshot call site: 02414 handle_unmatched_old_item
86 4265 git_filebuf_write call site: 04265 git_filebuf_hash
82 2081 git_futils_filestamp_check call site: 02081 parse_index
82 2715 git_reference_owner call site: 02715 git_submodule_location

Runtime coverage analysis

Covered functions
695
Functions that are reachable but not covered
879
Reachable functions
1347
Percentage of reachable functions covered
34.74%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
build/../fuzzers/revparse_fuzzer.c 1
src/libgit2/revparse.c 31
src/util/errors.c 10
src/util/thread.c 2
src/util/str.c 28
src/util/alloc.h 3
src/util/str.h 7
src/libgit2/refs.c 30
src/libgit2/refdb_fs.c 6
src/util/futils.c 21
src/util/fs_path.c 37
src/util/posix.c 4
src/util/hash.c 6
src/util/hash/collisiondetect.c 5
src/util/hash/sha1dc/sha1.c 9
src/util/hash/builtin.c 5
src/util/hash/rfc6234/sha224-256.c 9
src/util/hash/sha1dc/ubc_check.c 1
src/util/util.c 17
src/util/alloc.c 5
src/libgit2/oid.h 12
src/libgit2/oid.c 10
src/util/util.h 5
src/libgit2/repository.c 59
src/libgit2/refdb.c 12
src/util/thread.h 8
src/libgit2/common.h 1
src/util/fs_path.h 4
src/util/hashmap_str.h 7
src/util/pool.c 10
src/util/sortedcache.c 1
src/util/vector.c 18
src/libgit2/refdb_reftable.c 1
src/libgit2/config_cache.c 3
src/libgit2/config.c 46
src/libgit2/sysdir.c 9
src/libgit2/config_file.c 1
src/util/tsort.c 12
src/libgit2/object.c 27
src/libgit2/odb.c 33
src/libgit2/cache.c 25
src/util/vector.h 5
src/libgit2/odb_loose.c 2
src/libgit2/odb_pack.c 10
src/libgit2/midx.c 11
src/util/unix/map.c 2
/usr/include/x86_64-linux-gnu/bits/byteswap.h 2
src/libgit2/mwindow.c 12
src/libgit2/pack.c 10
src/util/runtime.c 3
src/libgit2/commit_graph.c 17
src/libgit2/hashmap_oid.h 1
src/libgit2/cache.h 1
src/libgit2/filter.c 14
src/util/regexp.c 4
deps/pcre2/pcre2_compile.c 26
deps/pcre2/pcre2_string_utils.c 5
deps/pcre2/pcre2_valid_utf.c 1
deps/pcre2/pcre2_newline.c 2
deps/pcre2/pcre2_compile_cgroup.c 8
deps/pcre2/pcre2_compile_class.c 22
deps/pcre2/pcre2_ord2utf.c 1
deps/pcre2/pcre2_chkdint.c 1
deps/pcre2/pcre2_find_bracket.c 1
deps/pcre2/pcre2_auto_possess.c 5
deps/pcre2/pcre2_xclass.c 2
deps/pcre2/pcre2_study.c 7
deps/pcre2/pcre2_error.c 1
deps/pcre2/pcre2_match_data.c 3
deps/pcre2/pcre2_context.c 1
deps/pcre2/pcre2_match.c 5
deps/pcre2/pcre2_extuni.c 1
deps/pcre2/pcre2_script_run.c 1
src/libgit2/tag.c 2
src/libgit2/commit.c 10
src/libgit2/object_api.c 11
src/libgit2/revwalk.c 31
src/util/pqueue.c 5
src/libgit2/commit_list.c 10
src/util/integer.h 2
src/util/array.h 2
src/libgit2/signature.c 5
src/libgit2/grafts.c 20
src/libgit2/diff_generate.c 30
src/libgit2/pathspec.c 7
src/libgit2/iterator.c 31
src/libgit2/index.c 74
src/libgit2/index_map.c 25
src/libgit2/tree-cache.c 7
src/util/hash.h 1
src/util/varint.c 2
src/libgit2/path.h 2
src/libgit2/path.c 12
src/util/utf8.c 2
src/libgit2/tree.h 1
src/libgit2/attr_file.c 23
src/libgit2/diff.c 6
src/libgit2/iterator.h 7
src/libgit2/submodule.c 60
src/util/wildmatch.c 2
src/util/errors.h 1
src/libgit2/ignore.c 11
src/libgit2/tree.c 10
src/libgit2/repository.h 2
src/util/unix/realpath.c 1
src/libgit2/worktree.c 1
src/libgit2/refdb.h 1
src/libgit2/parse.c 5
src/libgit2/attrcache.c 32
src/libgit2/diff_driver.c 4
src/libgit2/config_backend.h 2
src/libgit2/index.h 2
src/libgit2/attr.c 13
src/libgit2/blob.c 2
src/libgit2/object.h 1
src/util/filebuf.h 1
src/util/filebuf.c 12
deps/zlib/deflate.c 7
deps/zlib/adler32.c 2
deps/zlib/trees.c 2
src/util/rand.c 2
src/util/unix/posix.h 1
src/libgit2/reflog.c 8
src/libgit2/reflog.h 1
src/libgit2/branch.c 4
src/libgit2/remote.c 17
src/libgit2/refspec.c 8
src/libgit2/push.c 3
src/util/date.c 18

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
git_submodule_update /src/libgit2/src/libgit2/submodule.c 3 ['N/A', 'int', 'N/A'] 70 0 326 60 28 1668 0 13769 3053
refdb_reftable_write /src/libgit2/src/libgit2/refdb_reftable.c 7 ['N/A', 'N/A', 'int', 'N/A', 'N/A', 'N/A', 'N/A'] 38 0 65 10 5 700 0 4236 1100
http_stream_write /src/libgit2/src/libgit2/transports/http.c 3 ['N/A', 'N/A', 'size_t'] 24 0 164 35 14 243 0 1288 945
git_merge /src/libgit2/src/libgit2/merge.c 5 ['N/A', 'N/A', 'size_t', 'N/A', 'N/A'] 77 0 202 40 18 1552 0 13061 936
local_download_pack /src/libgit2/src/libgit2/transports/local.c 3 ['N/A', 'N/A', 'N/A'] 71 0 320 51 22 1373 0 11869 757
git_email_create_from_commit /src/libgit2/src/libgit2/email.c 3 ['N/A', 'N/A', 'N/A'] 75 0 107 21 9 1239 0 10546 667
refdb_fs_backend__rename /src/libgit2/src/libgit2/refdb_fs.c 7 ['N/A', 'N/A', 'N/A', 'N/A', 'int', 'N/A', 'N/A'] 37 0 138 31 14 597 0 3655 449

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
57.9%
2596 / 4511
Cyclomatic complexity statically reachable by fuzzers
66.0%
21338 / 32419

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

build/../fuzzers/midx_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['git_vector_insert', 'git_str_try_grow', 'git_str_init', 'git_str_dispose', 'git_str_puts', 'git__reallocarray', 'git_str_put']

build/../fuzzers/patch_parse_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['git_str_vprintf', 'git_str_init', 'git_str_put', 'set_error_from_buffer', 'git_str_try_grow', 'check_patch', 'patch_parsed__free', 'LLVMFuzzerTestOneInput', 'git__calloc', 'git_str_puts']

build/../fuzzers/config_file_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['git_config_iterator_new', 'git__tsort_r', 'git_config_add_backend', 'git__strdup', 'git_config_foreach_match', 'config_list_free', 'git_str_init', 'git_str_put', 'set_error_from_buffer', 'git_str_try_grow']

build/../fuzzers/commit_graph_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['commit_graph_parse_oid_lookup', 'SHA1DCFinal', 'SHA1DCUpdate', 'git_hash_sha1_init', 'git_str_vprintf', 'git_commit_graph_file_close', 'sha1_recompression_step', 'git_hash_ctx_cleanup', 'git_str_init', 'git_str_put']

build/../fuzzers/objects_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['git_object_id_from_buffer', 'SHA1DCFinal', 'SHA1DCUpdate', 'git_hash_sha1_init', 'git_str_init', 'git__reallocarray', 'sha1_recompression_step', 'git_cached_obj_decref', 'git_str_try_grow', 'git_str_put']

build/../fuzzers/packfile_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['fix_thin_pack', 'lock_file', 'store_object', 'git_packfile_unpack', 'inflate', 'git_oid_equal', 'packfile_error', 'git_odb_write', 'git__tsort_r', 'resolve_symlink']

build/../fuzzers/download_refs_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['compile_regex', 'parse_regex', 'git_commit_graph_new', 'pcre2_compile_8', 'git_array__alloc', 'p_mmap', 'dowild', 'git_fs_path_set_error', 'bisort', 'git_odb_new_ext']

build/../fuzzers/revparse_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['git_fs_path_lstat', 'git_repository_open_ext', 'git_config__get_string_buf', 'git_path_str_is_valid', 'prepare_walk', 'refresh_multi_pack_index', 'git_reference_name', 'git_filebuf_commit', 'git_config_snapshot', 'git_filebuf_write']

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
getseed 35 11 31.42% ['revparse_fuzzer', 'config_file_fuzzer', 'download_refs_fuzzer', 'midx_fuzzer', 'commit_graph_fuzzer', 'patch_parse_fuzzer', 'objects_fuzzer', 'packfile_fuzzer']
fix_thin_pack 46 24 52.17% ['packfile_fuzzer']
git_mwindow_file_register 41 18 43.90% ['packfile_fuzzer', 'download_refs_fuzzer']
git_packfile_unpack 115 55 47.82% ['packfile_fuzzer']
packfile_unpack_compressed 50 24 48.0% ['packfile_fuzzer']
git_libgit2_opts 255 12 4.705% ['revparse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
resolve_symlink 57 22 38.59% ['revparse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
lock_file 44 11 25.0% ['revparse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
git_odb_mempack_oidmap__put_idx 62 31 50.0% ['packfile_fuzzer']
_pcre2_check_escape_8 222 115 51.80% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
pcre2_match_8 615 291 47.31% ['revparse_fuzzer', 'download_refs_fuzzer']
iterator_init_common 41 22 53.65% ['revparse_fuzzer', 'download_refs_fuzzer']
filesystem_iterator_examine_path 35 11 31.42% ['revparse_fuzzer', 'download_refs_fuzzer']
git_midx_open 40 10 25.0% ['revparse_fuzzer', 'download_refs_fuzzer']
git_mwindow_get_pack 34 18 52.94% ['revparse_fuzzer', 'download_refs_fuzzer']
git_odb__add_default_backends 52 28 53.84% ['revparse_fuzzer', 'download_refs_fuzzer']
load_alternates 34 12 35.29% ['revparse_fuzzer', 'download_refs_fuzzer']
refresh_multi_pack_index 35 13 37.14% ['revparse_fuzzer', 'download_refs_fuzzer']
packfile_open_locked 43 23 53.48% ['packfile_fuzzer', 'download_refs_fuzzer']
packed_reload 71 15 21.12% ['revparse_fuzzer', 'download_refs_fuzzer']
iter_load_paths 42 18 42.85% ['revparse_fuzzer', 'download_refs_fuzzer']
git_remote_create_with_opts 86 41 47.67% ['download_refs_fuzzer']
find_repo 47 16 34.04% ['revparse_fuzzer', 'download_refs_fuzzer']
load_workdir 65 9 13.84% ['revparse_fuzzer', 'download_refs_fuzzer']
validate_ownership 32 17 53.12% ['revparse_fuzzer', 'download_refs_fuzzer']
load_config 53 29 54.71% ['revparse_fuzzer', 'download_refs_fuzzer']
repo_init_config 60 30 50.0% ['revparse_fuzzer', 'download_refs_fuzzer']
repo_init_structure 67 26 38.80% ['revparse_fuzzer', 'download_refs_fuzzer']
prepare_walk 57 8 14.03% ['revparse_fuzzer', 'download_refs_fuzzer']
git_smart__negotiate_fetch 143 41 28.67% ['download_refs_fuzzer']
git_fs_path_dirname_r 47 25 53.19% ['revparse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
git_fs_path_owner_is 34 11 32.35% ['revparse_fuzzer', 'download_refs_fuzzer']
git_futils_writebuffer 31 15 48.38% ['revparse_fuzzer', 'download_refs_fuzzer']
mkdir_validate_dir 33 8 24.24% ['revparse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
git_mwindow_packmap__put_idx 62 31 50.0% ['revparse_fuzzer', 'download_refs_fuzzer']
git_sortedcache_lockandload 33 9 27.27% ['revparse_fuzzer', 'download_refs_fuzzer']
binsearch 35 17 48.57% ['download_refs_fuzzer', 'revparse_fuzzer', 'packfile_fuzzer', 'config_file_fuzzer']
dowild 181 50 27.62% ['revparse_fuzzer', 'download_refs_fuzzer']
get_ucp 114 13 11.40% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
find_recurse 104 43 41.34% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
_pcre2_compile_class_not_nested_8 83 42 50.60% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
ptype=(posix_class==PC_GRAPH)?PT_PXGRAPH 349 159 45.55%
_pcre2_find_bracket_8 115 54 46.95% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
match 4691 292 6.224% ['revparse_fuzzer']
set_table_bit 33 18 54.54% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
_pcre2_valid_utf_8 144 12 8.333% ['download_refs_fuzzer', 'revparse_fuzzer', 'config_file_fuzzer']
odb_read_1 57 24 42.10% ['revparse_fuzzer', 'packfile_fuzzer']
read_prefix_1 75 25 33.33% ['revparse_fuzzer']
locate_object_short_oid 47 17 36.17% ['revparse_fuzzer']
pack_entry_find_prefix 52 16 30.76% ['revparse_fuzzer']
packed_lookup 60 7 11.66% ['revparse_fuzzer']
packed_map_check 47 15 31.91% ['revparse_fuzzer']
reflog_parse 40 6 15.0% ['revparse_fuzzer']
retrieve_previously_checked_out_branch_or_revision 47 25 53.19% ['revparse_fuzzer']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/libgit2/src/libgit2/tree.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/reftable/iter.c [] []
/src/libgit2/src/libgit2/merge_file.c [] []
/src/libgit2/src/util/hash/sha1dc/ubc_check.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/libgit2/attr.c ['revparse_fuzzer'] []
/src/libgit2/deps/pcre2/pcre2_extuni.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/filter.c ['objects_fuzzer', 'packfile_fuzzer', 'revparse_fuzzer'] ['objects_fuzzer', 'packfile_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/xdiff/xpatience.c [] []
/src/libgit2/src/util/pool.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/hash/builtin.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/util.c ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/commit_graph.c ['commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['commit_graph_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/submodule.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/object_api.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/patch_parse.c ['patch_parse_fuzzer'] ['patch_parse_fuzzer']
/src/libgit2/src/libgit2/path.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/filebuf.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/pack.c ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/libgit2/diff_tform.c [] []
/src/libgit2/src/libgit2/worktree.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/parse.c ['patch_parse_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['patch_parse_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/tree.h ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/iterator.h ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/push.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/util/hash.h ['packfile_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer']
/src/libgit2/src/libgit2/transports/local.c [] []
/src/libgit2/src/libgit2/common.h ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/diff_xdiff.c [] []
/src/libgit2/deps/reftable/table.c [] []
/src/libgit2/src/libgit2/proxy.c ['download_refs_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/libgit2/transport.c ['download_refs_fuzzer'] []
/src/libgit2/src/libgit2/streams/openssl.c [] []
/src/libgit2/src/libgit2/hashmap_oid.h ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/libgit2/clone.c [] []
/src/libgit2/src/util/varint.c ['revparse_fuzzer'] []
/src/libgit2/build/../fuzzers/patch_parse_fuzzer.c ['patch_parse_fuzzer'] []
/src/libgit2/src/util/thread.c ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/record.h [] []
/src/libgit2/src/util/unix/map.c ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/alloc.h ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_xclass.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/src/util/strlist.c [] []
/src/libgit2/src/libgit2/indexer.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/deps/zlib/adler32.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/libgit2/repository.h ['revparse_fuzzer'] []
/src/libgit2/src/util/errors.h ['config_file_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/src/util/rand.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/refdb.h ['revparse_fuzzer'] []
/src/libgit2/deps/pcre2/pcre2_compile.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/revwalk.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/iterator.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/xdiff/xhistogram.c [] []
/src/libgit2/deps/xdiff/xemit.c [] []
/src/libgit2/src/libgit2/merge.h [] []
/src/libgit2/build/../fuzzers/midx_fuzzer.c ['midx_fuzzer'] []
/src/libgit2/src/libgit2/config_backend.h ['revparse_fuzzer'] []
/src/libgit2/deps/pcre2/pcre2_chkdint.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/utf8.c ['revparse_fuzzer'] []
/src/libgit2/src/util/net.c [] []
/src/libgit2/src/libgit2/path.h ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/pool.h [] []
/src/libgit2/src/libgit2/ident.c [] []
/src/libgit2/src/util/runtime.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/odb_pack.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_match_data.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/build/../fuzzers/objects_fuzzer.c ['objects_fuzzer'] []
/src/libgit2/src/libgit2/config_snapshot.c [] []
/src/libgit2/src/libgit2/email.c [] []
/src/libgit2/src/util/regexp.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/util.h ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/sysdir.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/crlf.c [] []
/src/libgit2/src/libgit2/repository.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/llhttp/llhttp.c [] []
/src/libgit2/src/libgit2/transports/credential.c [] []
/src/libgit2/build/../fuzzers/fuzzer_utils.c ['download_refs_fuzzer'] []
/src/libgit2/src/libgit2/index.h ['revparse_fuzzer'] []
/src/libgit2/src/util/errors.c ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/midx.c ['midx_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/zstream.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/src/libgit2/cache.c ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/cache.h ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['objects_fuzzer']
/src/libgit2/deps/pcre2/pcre2_study.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/grafts.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/tag.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/reflog.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/attrcache.c ['revparse_fuzzer'] []
/src/libgit2/src/util/fs_path.h ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/diff_generate.h [] []
/src/libgit2/src/libgit2/delta.c ['packfile_fuzzer'] []
/src/libgit2/src/util/vector.c ['midx_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/xdiff/xprepare.c [] []
/src/libgit2/src/libgit2/delta.h [] []
/src/libgit2/deps/reftable/block.c [] []
/src/libgit2/src/libgit2/diff_print.c [] []
/src/libgit2/src/libgit2/transports/httpclient.c [] []
/src/libgit2/deps/reftable/merged.c [] []
/src/libgit2/src/libgit2/signature.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/refs.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/array.h ['patch_parse_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['patch_parse_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/system.c [] []
/src/libgit2/src/libgit2/transports/smart_pkt.c [] []
/src/libgit2/src/util/filebuf.h ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/libgit2/object.c ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_match.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/fetch.c ['download_refs_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/deps/reftable/blocksource.c [] []
/src/libgit2/src/libgit2/graph.c [] []
/src/libgit2/deps/zlib/crc32.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/src/libgit2/buf.c ['download_refs_fuzzer'] []
/src/libgit2/src/libgit2/trace.h [] []
/src/libgit2/src/util/pqueue.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/vector.h ['midx_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/basics.c [] []
/src/libgit2/deps/pcre2/pcre2_context.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_newline.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_error.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/pack-objects.c [] []
/src/libgit2/src/libgit2/merge.c [] []
/src/libgit2/src/libgit2/config_list.c ['config_file_fuzzer'] ['config_file_fuzzer']
/src/libgit2/src/libgit2/blob.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/remote.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/deps/zlib/inffast.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/deps/llhttp/api.c [] []
/src/libgit2/src/util/date.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/refspec.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/deps/pcre2/pcre2_auto_possess.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/attr_file.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/build/../fuzzers/config_file_fuzzer.c ['config_file_fuzzer'] []
/src/libgit2/src/libgit2/odb_mempack.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/src/libgit2/fetchhead.c [] []
/src/libgit2/src/libgit2/config_mem.c ['config_file_fuzzer'] ['config_file_fuzzer']
/src/libgit2/src/libgit2/config_parse.c [] []
/src/libgit2/src/libgit2/mwindow.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/mailmap.c [] []
/src/libgit2/src/libgit2/config_file.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/oid.c ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/record.c [] []
/src/libgit2/src/util/allocators/stdalloc.c [] []
/src/libgit2/src/libgit2/stream.h [] []
/src/libgit2/src/libgit2/transports/httpparser.c [] []
/src/libgit2/src/libgit2/patch.c ['patch_parse_fuzzer'] ['patch_parse_fuzzer']
/src/libgit2/src/libgit2/branch.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/commit_list.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/refdb.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_compile_cgroup.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/checkout.c [] []
/src/libgit2/deps/pcre2/pcre2_compile_class.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/hash/collisiondetect.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/index.c ['revparse_fuzzer'] []
/src/libgit2/build/../fuzzers/commit_graph_fuzzer.c ['commit_graph_fuzzer'] []
/src/libgit2/src/util/unix/realpath.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/reftable/tree.c [] []
/src/libgit2/src/util/fs_path.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/pq.c [] []
/src/libgit2/src/libgit2/oidarray.c ['download_refs_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/libgit2/patch_generate.c [] []
/src/libgit2/src/libgit2/pathspec.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/transports/auth.c [] []
/src/libgit2/src/libgit2/refdb_reftable.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/transports/smart.c [] []
/src/libgit2/deps/zlib/inflate.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/build/../fuzzers/revparse_fuzzer.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/revparse.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/hashsig.c [] []
/src/libgit2/deps/reftable/writer.c [] []
/src/libgit2/deps/pcre2/pcre2_ord2utf.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/src/libgit2/merge_driver.c [] []
/src/libgit2/src/libgit2/transports/smart_protocol.c [] []
/src/libgit2/src/libgit2/index_map.c ['revparse_fuzzer'] []
/src/libgit2/build/../fuzzers/packfile_fuzzer.c ['packfile_fuzzer'] []
/src/libgit2/deps/zlib/trees.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/src/libgit2/reflog.h ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/ignore.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_valid_utf.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/zlib/zutil.c [] []
/src/libgit2/src/util/integer.h ['patch_parse_fuzzer', 'revparse_fuzzer'] ['patch_parse_fuzzer']
/src/libgit2/src/util/str.h ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/streams/registry.c [] []
/src/libgit2/src/util/posix.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/annotated_commit.c [] []
/src/libgit2/deps/zlib/deflate.c ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/deps/pcre2/pcre2_string_utils.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/trace.c [] []
/src/libgit2/src/libgit2/transports/ssh_libssh2.c [] []
/src/libgit2/src/libgit2/streams/socket.c [] []
/src/libgit2/src/libgit2/oid.h ['midx_fuzzer', 'patch_parse_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['patch_parse_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_script_run.c ['revparse_fuzzer'] []
/src/libgit2/src/util/hash/rfc6234/sha224-256.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/unix/pthread.h [] []
/src/libgit2/src/util/hash.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/reftable/pq.h [] []
/src/libgit2/src/libgit2/commit.c ['revparse_fuzzer'] []
/usr/include/x86_64-linux-gnu/bits/byteswap.h ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/deps/reftable/error.c [] []
/src/libgit2/src/util/wildmatch.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/libgit2/config.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/transaction.c [] []
/src/libgit2/src/libgit2/diff_stats.c [] []
/src/libgit2/src/libgit2/strarray.c ['download_refs_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/util/hash/sha1dc/sha1.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer']
/src/libgit2/src/util/tsort.c ['config_file_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['config_file_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/pcre2/pcre2_find_bracket.c ['config_file_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/util/unix/posix.h ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] []
/src/libgit2/deps/xdiff/xmerge.c [] []
/src/libgit2/src/libgit2/odb.c ['midx_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/tree-cache.c ['revparse_fuzzer'] []
/src/libgit2/deps/llhttp/http.c [] []
/src/libgit2/src/libgit2/libgit2.c [] []
/src/libgit2/src/libgit2/diff_driver.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/diff_generate.c ['revparse_fuzzer'] []
/src/libgit2/deps/reftable/basics.h [] []
/src/libgit2/src/libgit2/settings.c [] []
/src/libgit2/deps/reftable/stack.c [] []
/src/libgit2/src/util/hashmap_str.h ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/build/../fuzzers/download_refs_fuzzer.c ['download_refs_fuzzer'] []
/src/libgit2/src/libgit2/object.h ['revparse_fuzzer'] []
/src/libgit2/src/util/thread.h ['patch_parse_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['patch_parse_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/xdiff/xdiffi.c [] []
/src/libgit2/src/libgit2/refdb_fs.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/deps/zlib/inftrees.c ['packfile_fuzzer'] ['packfile_fuzzer']
/src/libgit2/src/libgit2/odb_loose.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/util/str.c ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'commit_graph_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/deps/xdiff/xutils.c [] []
/src/libgit2/src/util/bitvec.h [] []
/src/libgit2/src/util/alloc.c ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['midx_fuzzer', 'patch_parse_fuzzer', 'config_file_fuzzer', 'objects_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/transports/http.c [] []
/src/libgit2/src/util/allocators/failalloc.c [] []
/src/libgit2/src/libgit2/diff.c ['revparse_fuzzer'] []
/src/libgit2/src/libgit2/parse.h ['patch_parse_fuzzer'] ['patch_parse_fuzzer']
/src/libgit2/src/util/futils.c ['midx_fuzzer', 'commit_graph_fuzzer', 'packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer'] ['packfile_fuzzer', 'download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/config_cache.c ['download_refs_fuzzer', 'revparse_fuzzer'] ['download_refs_fuzzer', 'revparse_fuzzer']
/src/libgit2/src/libgit2/streams/mbedtls.c [] []
/src/libgit2/src/libgit2/transports/git.c [] []
/src/libgit2/src/util/sortedcache.c ['revparse_fuzzer'] ['revparse_fuzzer']
/src/libgit2/src/libgit2/remote.h ['download_refs_fuzzer'] ['download_refs_fuzzer']
/src/libgit2/src/libgit2/streams/tls.c [] []
/src/libgit2/src/libgit2/diff_file.c [] []

Directories in report

Directory
/src/libgit2/deps/llhttp/
/src/libgit2/src/util/hash/sha1dc/
/src/libgit2/src/libgit2/
/src/libgit2/deps/pcre2/
/src/libgit2/src/libgit2/streams/
/src/libgit2/src/util/hash/
/src/libgit2/src/util/unix/
/usr/include/x86_64-linux-gnu/bits/
/src/libgit2/deps/zlib/
/src/libgit2/deps/reftable/
/src/libgit2/build/../fuzzers/
/src/libgit2/src/libgit2/transports/
/src/libgit2/deps/xdiff/
/src/libgit2/src/util/
/src/libgit2/src/util/allocators/
/src/libgit2/src/util/hash/rfc6234/