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

Fuzzers overview

Fuzzer Fuzzer filename Functions Reached Functions unreached Fuzzer depth Files reached Basic blocks reached Cyclomatic complexity Details
fuzz_crc fuzz/fuzz_crc.c 12 0 1 2 26 30 fuzz_crc.c
fuzz_init_binary fuzz/fuzz_init_binary.c 197 629 10 26 3554 1410 fuzz_init_binary.c
fuzz_dnames fuzz/fuzz_dnames.c 224 603 10 28 4321 1713 fuzz_dnames.c
fuzz_aranges fuzz/fuzz_aranges.c 220 617 10 27 4246 1678 fuzz_aranges.c
fuzz_gdbindex fuzz/fuzz_gdbindex.c 220 627 10 27 3890 1546 fuzz_gdbindex.c
fuzz_die_cu_print fuzz/fuzz_die_cu_print.c 337 489 17 37 7395 3102 fuzz_die_cu_print.c
fuzz_die_cu_info1 fuzz/fuzz_die_cu_info1.c 334 492 17 36 7312 3069 fuzz_die_cu_info1.c
fuzz_die_cu_attrs fuzz/fuzz_die_cu_attrs.c 366 460 17 37 8283 3484 fuzz_die_cu_attrs.c
fuzz_stack_frame_access fuzz/fuzz_stack_frame_access.c 348 478 17 38 7907 3280 fuzz_stack_frame_access.c
fuzz_die_cu_attrs_loclist fuzz/fuzz_die_cu_attrs_loclist.c 382 444 17 38 9469 3871 fuzz_die_cu_attrs_loclist.c
fuzz_die_cu fuzz/fuzz_die_cu.c 335 492 17 36 7315 3072 fuzz_die_cu.c
fuzz_rng fuzz/fuzz_rng.c 208 618 10 27 4009 1578 fuzz_rng.c
fuzz_str_offsets fuzz/fuzz_str_offsets.c 213 615 10 27 3930 1562 fuzz_str_offsets.c
fuzz_die_cu_e fuzz/fuzz_die_cu_e.c 333 493 17 36 7287 3060 fuzz_die_cu_e.c
fuzz_srcfiles fuzz/fuzz_srcfiles.c 405 436 17 39 9373 3892 fuzz_srcfiles.c
fuzz_crc_32 fuzz/fuzz_crc_32.c 199 627 10 28 3598 1428 fuzz_crc_32.c
fuzz_showsectgrp fuzz/fuzz_showsectgrp.c 241 585 11 28 4224 1697 fuzz_showsectgrp.c
fuzz_debug_addr_access fuzz/fuzz_debug_addr_access.c 202 627 10 27 3735 1481 fuzz_debug_addr_access.c
fuzz_set_frame_all fuzz/fuzz_set_frame_all.c 281 559 10 32 5738 2277 fuzz_set_frame_all.c
fuzz_debug_str fuzz/fuzz_debug_str.c 201 627 10 27 3603 1433 fuzz_debug_str.c
fuzz_findfuncbypc fuzz/fuzz_findfuncbypc.c 438 404 18 33 10406 4247 fuzz_findfuncbypc.c
fuzz_xuindex fuzz/fuzz_xuindex.c 197 629 10 26 3557 1411 fuzz_xuindex.c
fuzz_die_cu_offset fuzz/fuzz_die_cu_offset.c 337 489 17 37 7353 3086 fuzz_die_cu_offset.c
fuzz_globals fuzz/fuzz_globals.c 267 563 10 32 5541 2201 fuzz_globals.c
fuzz_macro_dwarf5 fuzz/fuzz_macro_dwarf5.c 386 442 17 39 8939 3714 fuzz_macro_dwarf5.c
fuzz_macro_dwarf4 fuzz/fuzz_macro_dwarf4.c 208 625 10 28 3812 1508 fuzz_macro_dwarf4.c
fuzz_gnu_index fuzz/fuzz_gnu_index.c 224 603 10 27 4323 1709 fuzz_gnu_index.c
fuzz_init_path fuzz/fuzz_init_path.c 237 589 11 28 4167 1672 fuzz_init_path.c
fuzz_debuglink fuzz/fuzz_debuglink.c 220 606 10 26 3892 1553 fuzz_debuglink.c
fuzz_simplereader_tu fuzz/fuzz_simplereader_tu.c 212 614 17 30 4672 2070 fuzz_simplereader_tu.c
fuzz_init_b fuzz/fuzz_init_b.c 200 628 10 26 3562 1417 fuzz_init_b.c
fuzz_tie fuzz/fuzz_tie.c 198 628 10 26 3571 1416 fuzz_tie.c
fuzz_die_cu_e_print fuzz/fuzz_die_cu_e_print.c 336 490 17 37 7367 3092 fuzz_die_cu_e_print.c

Fuzzer details

Fuzzer: fuzz_crc

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 0 0.0%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 11 100.%
All colors 11 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
0 0 None 0 0 dwarf_basic_crc32 call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_crc.c:136

Runtime coverage analysis

Covered functions
2
Functions that are reachable but not covered
10
Reachable functions
12
Percentage of reachable functions covered
16.67%
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
fuzz/fuzz_crc.c 1
src/lib/libdwarf/dwarf_crc.c 1

Fuzzer: fuzz_init_binary

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 99 16.6%
gold [1:9] 20 3.35%
yellow [10:29] 23 3.85%
greenyellow [30:49] 22 3.69%
lawngreen 50+ 432 72.4%
All colors 596 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00340 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00318 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00404 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00470 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00589 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00537 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00577 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00420 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00477 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111

Runtime coverage analysis

Covered functions
185
Functions that are reachable but not covered
36
Reachable functions
197
Percentage of reachable functions covered
81.73%
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
fuzz/fuzz_init_binary.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 1
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13

Fuzzer: fuzz_dnames

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 128 16.7%
gold [1:9] 24 3.14%
yellow [10:29] 32 4.18%
greenyellow [30:49] 32 4.18%
lawngreen 50+ 548 71.7%
All colors 764 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00340 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00318 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00407 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00690 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00537 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00577 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00420 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['dwarf_dealloc_dnames']

0 216 dwarf_dnames_header call site: 00680 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:835
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00390 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 107 1 :

['_dwarf_error_string']

0 107 dwarf_dnames_sizes call site: 00698 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:929
0 107 1 :

['_dwarf_error_string']

0 107 dwarf_dnames_offsets call site: 00703 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:990

Runtime coverage analysis

Covered functions
220
Functions that are reachable but not covered
29
Reachable functions
224
Percentage of reachable functions covered
87.05%
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
fuzz/fuzz_dnames.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 3
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_debugnames.c 21
src/lib/libdwarf/dwarf_leb.c 1

Fuzzer: fuzz_aranges

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 129 16.0%
gold [1:9] 68 8.46%
yellow [10:29] 27 3.36%
greenyellow [30:49] 24 2.98%
lawngreen 50+ 555 69.1%
All colors 803 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00796 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 216 2 :

['_dwarf_error', 'free_aranges_chain']

0 216 dwarf_get_aranges call site: 00773 /src/libdwarf/src/lib/libdwarf/dwarf_arange.c:440
0 216 2 :

['_dwarf_error', 'free_aranges_chain']

0 216 _dwarf_get_aranges_list call site: 00770 /src/libdwarf/src/lib/libdwarf/dwarf_arange.c:380
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_arange_info_b call site: 00777 /src/libdwarf/src/lib/libdwarf/dwarf_arange.c:697
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00391 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390

Runtime coverage analysis

Covered functions
219
Functions that are reachable but not covered
29
Reachable functions
220
Percentage of reachable functions covered
86.82%
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
fuzz/fuzz_aranges.c 3
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 6
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_arange.c 4

Fuzzer: fuzz_gdbindex

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 107 15.7%
gold [1:9] 29 4.25%
yellow [10:29] 20 2.93%
greenyellow [30:49] 30 4.40%
lawngreen 50+ 495 72.6%
All colors 681 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00674 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 155 1 :

['emit_one_value_msg']

0 155 dwarf_gdbindex_culist_entry call site: 00628 /src/libdwarf/src/lib/libdwarf/dwarf_gdbindex.c:419
0 155 1 :

['emit_one_value_msg']

0 155 dwarf_gdbindex_types_culist_entry call site: 00634 /src/libdwarf/src/lib/libdwarf/dwarf_gdbindex.c:496
0 155 1 :

['emit_one_value_msg']

0 155 dwarf_gdbindex_addressarea_entry call site: 00642 /src/libdwarf/src/lib/libdwarf/dwarf_gdbindex.c:575
0 155 1 :

['emit_one_value_msg']

0 155 dwarf_gdbindex_symboltable_entry call site: 00649 /src/libdwarf/src/lib/libdwarf/dwarf_gdbindex.c:653

Runtime coverage analysis

Covered functions
216
Functions that are reachable but not covered
28
Reachable functions
220
Percentage of reachable functions covered
87.27%
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
fuzz/fuzz_gdbindex.c 4
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_gdbindex.c 17

Fuzzer: fuzz_die_cu_print

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 443 28.8%
gold [1:9] 101 6.58%
yellow [10:29] 76 4.95%
greenyellow [30:49] 32 2.08%
lawngreen 50+ 881 57.4%
All colors 1533 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01221 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00740 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01486 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00813 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01308 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01220 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01219 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01522 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497

Runtime coverage analysis

Covered functions
311
Functions that are reachable but not covered
54
Reachable functions
337
Percentage of reachable functions covered
83.98%
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
fuzz/fuzz_die_cu_print.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_query.c 19
src/lib/libdwarf/dwarf_frame.c 1
src/lib/libdwarf/dwarf_die_deliv.c 34
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5

Fuzzer: fuzz_die_cu_info1

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 419 27.8%
gold [1:9] 105 6.97%
yellow [10:29] 78 5.18%
greenyellow [30:49] 50 3.32%
lawngreen 50+ 853 56.6%
All colors 1505 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01217 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01498 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434

Runtime coverage analysis

Covered functions
314
Functions that are reachable but not covered
48
Reachable functions
334
Percentage of reachable functions covered
85.63%
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
fuzz/fuzz_die_cu_info1.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 33
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5

Fuzzer: fuzz_die_cu_attrs

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 463 27.6%
gold [1:9] 144 8.58%
yellow [10:29] 65 3.87%
greenyellow [30:49] 48 2.86%
lawngreen 50+ 957 57.0%
All colors 1677 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
329 979 8 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarfstring_append_printf_u', '_dwarf_error_string', 'dwarfstring_destructor', 'dw_read_str_index_val_itself', 'dwarf_dealloc_error', 'dwarfstring_constructor', 'dwarfstring_string']

329 979 _dwarf_extract_string_offset_via_str_offsets call site: 01295 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1811
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
64 64 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

66 162 dwarfstring_append_printf_i call site: 01511 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:611
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 1939 2 :

['_dwarf_calculate_next_cu_context_offset', '_dwarf_create_a_new_cu_context_record_on_list']

4 3523 dwarf_offdie_b call site: 01232 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:3260
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01600 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434

Runtime coverage analysis

Covered functions
344
Functions that are reachable but not covered
51
Reachable functions
366
Percentage of reachable functions covered
86.07%
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
fuzz/fuzz_die_cu_attrs.c 1
src/lib/libdwarf/dwarf_generic_init.c 4
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 13
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 20
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 38
src/lib/libdwarf/dwarf_query.c 36
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 22
src/lib/libdwarf/dwarf_names.c 3
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_dsc.c 2

Fuzzer: fuzz_stack_frame_access

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 536 32.0%
gold [1:9] 121 7.24%
yellow [10:29] 85 5.08%
greenyellow [30:49] 46 2.75%
lawngreen 50+ 883 52.8%
All colors 1671 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00735 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
346 474 5 :

['dwarfstring_append_printf_u', '_dwarf_read_encoded_ptr', 'dwarfstring_destructor', 'dwarfstring_constructor', 'dwarfstring_string']

346 2941 _dwarf_create_fde_from_after_start call site: 01535 /src/libdwarf/src/lib/libdwarf/dwarf_frame2.c:1114
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01481 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00808 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01303 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
109 109 1 :

['regerror']

109 109 _dwarf_validate_register_numbers call site: 01518 /src/libdwarf/src/lib/libdwarf/dwarf_frame.c:168
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01214 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00318 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00407 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969

Runtime coverage analysis

Covered functions
319
Functions that are reachable but not covered
58
Reachable functions
348
Percentage of reachable functions covered
83.33%
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
fuzz/fuzz_stack_frame_access.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 33
src/lib/libdwarf/dwarf_query.c 19
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 20
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_frame.c 4
src/lib/libdwarf/dwarf_frame2.c 8

Fuzzer: fuzz_die_cu_attrs_loclist

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 669 33.9%
gold [1:9] 160 8.10%
yellow [10:29] 76 3.85%
greenyellow [30:49] 50 2.53%
lawngreen 50+ 1018 51.5%
All colors 1973 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1948 1948 1 :

['cook_loclists_contents']

1948 2065 dwarf_get_loclist_c call site: 01815 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:1719
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01217 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
707 1147 6 :

['dwarfstring_append_printf_u', 'dwarfstring_destructor', 'build_array_of_lle', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string']

707 1147 _dwarf_loclists_fill_in_lle_head call site: 01826 /src/libdwarf/src/lib/libdwarf/dwarf_loclists.c:1323
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01304 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 01611 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:454
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 01618 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:469
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953

Runtime coverage analysis

Covered functions
341
Functions that are reachable but not covered
71
Reachable functions
382
Percentage of reachable functions covered
81.41%
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
fuzz/fuzz_die_cu_attrs_loclist.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 13
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 21
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 15
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 34
src/lib/libdwarf/dwarf_query.c 25
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 21
src/lib/libdwarf/dwarf_names.c 3
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_loc.c 24
src/lib/libdwarf/dwarf_locationop_read.c 2

Fuzzer: fuzz_die_cu

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 452 29.9%
gold [1:9] 103 6.83%
yellow [10:29] 80 5.30%
greenyellow [30:49] 36 2.38%
lawngreen 50+ 836 55.4%
All colors 1507 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01217 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01304 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01500 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497

Runtime coverage analysis

Covered functions
307
Functions that are reachable but not covered
56
Reachable functions
335
Percentage of reachable functions covered
83.28%
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
fuzz/fuzz_die_cu.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 33
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5

Fuzzer: fuzz_rng

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 136 18.6%
gold [1:9] 45 6.17%
yellow [10:29] 17 2.33%
greenyellow [30:49] 34 4.66%
lawngreen 50+ 497 68.1%
All colors 729 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00405 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00471 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00686 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 226 5 :

['dwarfstring_append_printf_u', '_dwarf_error_string', 'dwarfstring_destructor', 'dwarfstring_constructor', 'dwarfstring_string']

0 226 dwarf_get_rnglist_rle call site: 00696 /src/libdwarf/src/lib/libdwarf/dwarf_rnglists.c:1015
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00478 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00391 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390

Runtime coverage analysis

Covered functions
202
Functions that are reachable but not covered
34
Reachable functions
208
Percentage of reachable functions covered
83.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.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_rng.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 3
src/lib/libdwarf/dwarf_rnglists.c 10
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_leb.c 1

Fuzzer: fuzz_str_offsets

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 116 16.9%
gold [1:9] 27 3.94%
yellow [10:29] 17 2.48%
greenyellow [30:49] 26 3.80%
lawngreen 50+ 498 72.8%
All colors 684 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
64 64 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

66 162 dwarfstring_append_printf_i call site: 00608 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:611
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00678 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00013 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00392 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 103 1 :

['dwarf_dealloc_error']

0 272 string_offsets_example call site: 00669 /src/libdwarf/fuzz/fuzz_str_offsets.c:114

Runtime coverage analysis

Covered functions
207
Functions that are reachable but not covered
30
Reachable functions
213
Percentage of reachable functions covered
85.92%
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
fuzz/fuzz_str_offsets.c 2
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 11
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_str_offsets.c 11

Fuzzer: fuzz_die_cu_e

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 443 29.5%
gold [1:9] 114 7.59%
yellow [10:29] 77 5.12%
greenyellow [30:49] 36 2.39%
lawngreen 50+ 831 55.3%
All colors 1501 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01217 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01494 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267

Runtime coverage analysis

Covered functions
308
Functions that are reachable but not covered
53
Reachable functions
333
Percentage of reachable functions covered
84.08%
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
fuzz/fuzz_die_cu_e.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 32
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5

Fuzzer: fuzz_srcfiles

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 654 26.9%
gold [1:9] 152 6.25%
yellow [10:29] 109 4.48%
greenyellow [30:49] 48 1.97%
lawngreen 50+ 1468 60.3%
All colors 2431 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01304 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 02424 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 1939 2 :

['_dwarf_calculate_next_cu_context_offset', '_dwarf_create_a_new_cu_context_record_on_list']

0 3523 dwarf_offdie_b call site: 01232 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:3260
0 532 1 :

['_dwarf_siblingof_internal']

0 532 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2099

Runtime coverage analysis

Covered functions
387
Functions that are reachable but not covered
48
Reachable functions
405
Percentage of reachable functions covered
88.15%
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
fuzz/fuzz_srcfiles.c 3
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 15
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 22
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 3
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 34
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 20
src/lib/libdwarf/dwarf_names.c 3
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_line.c 38
src/lib/libdwarf/dwarf_line_table_reader_common.h 6
src/lib/libdwarf/dwarf_print_lines.c 12

Fuzzer: fuzz_crc_32

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 93 15.3%
gold [1:9] 11 1.81%
yellow [10:29] 12 1.97%
greenyellow [30:49] 30 4.94%
lawngreen 50+ 461 75.9%
All colors 607 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00601 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00013 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00392 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00469 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200

Runtime coverage analysis

Covered functions
192
Functions that are reachable but not covered
31
Reachable functions
199
Percentage of reachable functions covered
84.42%
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
fuzz/fuzz_crc_32.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 1
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_crc32.c 1
src/lib/libdwarf/dwarf_crc.c 1

Fuzzer: fuzz_showsectgrp

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 326 38.5%
gold [1:9] 17 2.00%
yellow [10:29] 17 2.00%
greenyellow [30:49] 11 1.30%
lawngreen 50+ 475 56.1%
All colors 846 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
113 113 1 :

['dwarf_object_detector_path_dSYM']

113 7062 dwarf_init_path_dl_a call site: 00033 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:253
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00194 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00650 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00076 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00706 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00109 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00713 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111
0 109 1 :

['_dwarf_error']

0 109 dwarf_sec_group_map call site: 00838 /src/libdwarf/src/lib/libdwarf/dwarf_groups.c:293
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00693 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390

Runtime coverage analysis

Covered functions
195
Functions that are reachable but not covered
70
Reachable functions
241
Percentage of reachable functions covered
70.95%
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
fuzz/fuzz_showsectgrp.c 1
src/lib/libdwarf/dwarf_generic_init.c 5
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 18
src/lib/libdwarf/dwarf_seekr.c 4
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_debuglink.c 20
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_groups.c 14
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_crc32.c 1
src/lib/libdwarf/dwarf_crc.c 1
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_setup_sections.c 3

Fuzzer: fuzz_debug_addr_access

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 113 17.2%
gold [1:9] 31 4.73%
yellow [10:29] 21 3.20%
greenyellow [30:49] 35 5.34%
lawngreen 50+ 455 69.4%
All colors 655 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00340 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00318 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00404 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00470 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00589 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00537 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00577 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00420 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00477 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00390 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390

Runtime coverage analysis

Covered functions
193
Functions that are reachable but not covered
37
Reachable functions
202
Percentage of reachable functions covered
81.68%
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
fuzz/fuzz_debug_addr_access.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_debugaddr.c 3

Fuzzer: fuzz_set_frame_all

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 246 19.0%
gold [1:9] 29 2.24%
yellow [10:29] 49 3.79%
greenyellow [30:49] 17 1.31%
lawngreen 50+ 950 73.5%
All colors 1291 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 115 2 :

['_dwarf_skip_leb128', '_dwarf_error_string']

8 224 _dwarf_get_gcc_eh_augmentation call site: 00680 /src/libdwarf/src/lib/libdwarf/dwarf_frame2.c:1985
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00010 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01284 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 327 6 :

['dwarfstring_append_printf_u', 'dwarf_dealloc', '_dwarf_error_string', 'dwarfstring_destructor', 'dwarfstring_constructor', 'dwarfstring_string']

0 330 _dwarf_exec_frame_instr call site: 01104 /src/libdwarf/src/lib/libdwarf/dwarf_frame.c:1866
0 210 2 :

['_dwarf_error', 'dwarf_dealloc']

0 210 _dwarf_create_cie_from_after_start call site: 00717 /src/libdwarf/src/lib/libdwarf/dwarf_frame2.c:1056
0 210 2 :

['_dwarf_error', 'dwarf_dealloc']

0 210 _dwarf_create_fde_from_after_start call site: 00783 /src/libdwarf/src/lib/libdwarf/dwarf_frame2.c:1359
0 109 1 :

['_dwarf_error']

0 215 _dwarf_get_fde_list_internal call site: 00791 /src/libdwarf/src/lib/libdwarf/dwarf_frame2.c:584

Runtime coverage analysis

Covered functions
279
Functions that are reachable but not covered
34
Reachable functions
281
Percentage of reachable functions covered
87.9%
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
fuzz/fuzz_set_frame_all.c 11
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 6
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_frame.c 36
src/lib/libdwarf/dwarf_frame2.c 17
src/lib/libdwarf/dwarf_die_deliv.c 1
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_safe_arithmetic.c 2
src/lib/libdwarf/dwarf_names.c 1

Fuzzer: fuzz_debug_str

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 89 14.6%
gold [1:9] 12 1.97%
yellow [10:29] 27 4.43%
greenyellow [30:49] 19 3.11%
lawngreen 50+ 462 75.8%
All colors 609 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00603 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00013 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00392 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00469 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200

Runtime coverage analysis

Covered functions
195
Functions that are reachable but not covered
30
Reachable functions
201
Percentage of reachable functions covered
85.07%
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
fuzz/fuzz_debug_str.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_stringsection.c 1

Fuzzer: fuzz_findfuncbypc

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 706 39.5%
gold [1:9] 165 9.24%
yellow [10:29] 106 5.94%
greenyellow [30:49] 51 2.85%
lawngreen 50+ 756 42.3%
All colors 1784 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1948 1948 1 :

['cook_loclists_contents']

1948 2065 dwarf_get_loclist_c call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:1719
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00297 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
707 1147 6 :

['dwarfstring_append_printf_u', 'dwarfstring_destructor', 'build_array_of_lle', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string']

707 1147 _dwarf_loclists_fill_in_lle_head call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loclists.c:1323
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:454
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:469
15 1555 7 :

['dwarf_gnu_debuglink', 'dwarf_crc32', '_dwarf_get_suppress_debuglink_crc', 'match_buildid', 'dwarfstring_append', 'free', 'dwarf_finish']

15 1864 _dwarf_debuglink_finder_newpath call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_object_detector.c:736
5 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

5 60 dwarf_dealloc call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
4 4 2 :

['strlen', 'strdup']

4 4 dwarf_gnu_debuglink call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:987
2 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

2 91 _dwarf_error_string call site: 00099 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00046 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 1947 1 :

['dwarf_offdie_b']

0 1947 _dwarf_internal_find_die_given_sig8 call site: 00799 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
0 1939 2 :

['_dwarf_calculate_next_cu_context_offset', '_dwarf_create_a_new_cu_context_record_on_list']

0 3523 dwarf_offdie_b call site: 00814 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:3260

Runtime coverage analysis

Covered functions
689
Functions that are reachable but not covered
57
Reachable functions
438
Percentage of reachable functions covered
86.99%
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
fuzz/fuzz_findfuncbypc.c 11
src/lib/libdwarf/dwarf_generic_init.c 2
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_string.c 15
src/lib/libdwarf/dwarf_tsearchhash.c 10
src/lib/libdwarf/dwarf_elfread.c 1
src/lib/libdwarf/dwarf_seekr.c 1
src/lib/libdwarf/dwarf_machoread.c 2
src/lib/libdwarf/dwarf_peread.c 1
src/lib/libdwarf/dwarf_init_finish.c 2
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_xu_index.c 10
src/lib/libdwarf/dwarf_util.c 22
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_groups.c 2
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_die_deliv.c 35
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_query.c 24
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 23
src/lib/libdwarf/dwarf_names.c 3
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_ranges.c 4
src/lib/libdwarf/dwarf_line.c 27
src/lib/libdwarf/dwarf_line_table_reader_common.h 6
src/lib/libdwarf/dwarf_debuglink.c 2

Fuzzer: fuzz_xuindex

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 99 16.5%
gold [1:9] 12 2.00%
yellow [10:29] 28 4.68%
greenyellow [30:49] 19 3.17%
lawngreen 50+ 440 73.5%
All colors 598 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00405 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00471 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00591 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00478 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111

Runtime coverage analysis

Covered functions
186
Functions that are reachable but not covered
35
Reachable functions
197
Percentage of reachable functions covered
82.23%
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
fuzz/fuzz_xuindex.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 1
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13

Fuzzer: fuzz_die_cu_offset

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 447 29.4%
gold [1:9] 107 7.05%
yellow [10:29] 73 4.81%
greenyellow [30:49] 33 2.17%
lawngreen 50+ 856 56.4%
All colors 1516 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
256 359 2 :

['_dwarf_read_str_offsets_header', 'dwarf_dealloc_error']

256 359 load_xu_str_offsets_into_cucontext call site: 01482 /src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c:132
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00809 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01304 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01216 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01215 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 1939 2 :

['_dwarf_calculate_next_cu_context_offset', '_dwarf_create_a_new_cu_context_record_on_list']

4 3523 dwarf_offdie_b call site: 01232 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:3260
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01505 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497

Runtime coverage analysis

Covered functions
311
Functions that are reachable but not covered
54
Reachable functions
337
Percentage of reachable functions covered
83.98%
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
fuzz/fuzz_die_cu_offset.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 33
src/lib/libdwarf/dwarf_query.c 19
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_global.c 2

Fuzzer: fuzz_globals

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 237 21.7%
gold [1:9] 77 7.07%
yellow [10:29] 36 3.30%
greenyellow [30:49] 32 2.93%
lawngreen 50+ 707 64.9%
All colors 1089 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
119 119 1 :

['get_hash_value_number']

119 1223 dwarf_dnames_name call site: 00921 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:1505
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:517
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01082 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['dwarf_dealloc_dnames']

0 216 dwarf_dnames_header call site: 00910 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:835
0 109 1 :

['_dwarf_error']

0 109 dwarf_dnames_entrypool call site: 00955 /src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c:1666

Runtime coverage analysis

Covered functions
258
Functions that are reachable but not covered
34
Reachable functions
267
Percentage of reachable functions covered
87.27%
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
fuzz/fuzz_globals.c 3
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 11
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 7
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_global.c 20
src/lib/libdwarf/dwarf_debugnames.c 21
src/lib/libdwarf/dwarf_leb.c 2
src/lib/libdwarf/dwarf_form.c 5
src/lib/libdwarf/dwarf_query.c 1
src/lib/libdwarf/dwarf_names.c 1

Fuzzer: fuzz_macro_dwarf5

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 615 31.4%
gold [1:9] 158 8.06%
yellow [10:29] 98 5.00%
greenyellow [30:49] 68 3.47%
lawngreen 50+ 1019 52.0%
All colors 1958 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1948 1948 1 :

['cook_loclists_contents']

1948 2065 dwarf_get_loclist_c call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:1719
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00736 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
707 1147 6 :

['dwarfstring_append_printf_u', 'dwarfstring_destructor', 'build_array_of_lle', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string']

707 1147 _dwarf_loclists_fill_in_lle_head call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loclists.c:1323
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:454
70 203 6 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string', '_dwarf_lkind_name']

70 203 _dwarf_loc_block_sanity_check call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_loc.c:469
15 1555 7 :

['dwarf_gnu_debuglink', 'dwarf_crc32', '_dwarf_get_suppress_debuglink_crc', 'match_buildid', 'dwarfstring_append', 'free', 'dwarf_finish']

15 1864 _dwarf_debuglink_finder_newpath call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_object_detector.c:736
5 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

5 60 dwarf_dealloc call site: 00405 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
4 4 2 :

['strlen', 'strdup']

4 4 dwarf_gnu_debuglink call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:987
2 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

2 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 1947 1 :

['dwarf_offdie_b']

0 1947 _dwarf_internal_find_die_given_sig8 call site: 01217 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
0 1939 2 :

['_dwarf_calculate_next_cu_context_offset', '_dwarf_create_a_new_cu_context_record_on_list']

0 3523 dwarf_offdie_b call site: 01232 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:3260

Runtime coverage analysis

Covered functions
689
Functions that are reachable but not covered
58
Reachable functions
386
Percentage of reachable functions covered
84.97%
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
fuzz/fuzz_macro_dwarf5.c 2
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 15
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 21
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 3
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_die_deliv.c 34
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 20
src/lib/libdwarf/dwarf_names.c 3
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_macro5.c 21
src/lib/libdwarf/dwarf_line.c 13
src/lib/libdwarf/dwarf_line_table_reader_common.h 4

Fuzzer: fuzz_macro_dwarf4

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 105 15.5%
gold [1:9] 39 5.76%
yellow [10:29] 16 2.36%
greenyellow [30:49] 15 2.21%
lawngreen 50+ 502 74.1%
All colors 677 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00670 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00392 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00469 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200
0 8 1 :

['_dwarf_error_destructor']

0 8 dwarf_dealloc call site: 00406 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:951
0 0 None 54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:506

Runtime coverage analysis

Covered functions
204
Functions that are reachable but not covered
28
Reachable functions
208
Percentage of reachable functions covered
86.54%
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
fuzz/fuzz_macro_dwarf4.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 3
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_macro.c 5
src/lib/libdwarf/dwarf_leb.c 2

Fuzzer: fuzz_gnu_index

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 122 15.5%
gold [1:9] 55 6.98%
yellow [10:29] 30 3.81%
greenyellow [30:49] 40 5.08%
lawngreen 50+ 540 68.6%
All colors 787 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00342 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00320 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00409 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00009 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00780 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00539 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00579 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00422 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00392 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00469 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200
0 8 1 :

['_dwarf_error_destructor']

0 8 dwarf_dealloc call site: 00406 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:951
0 0 None 56 111 dwarf_dealloc call site: 00403 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:877

Runtime coverage analysis

Covered functions
224
Functions that are reachable but not covered
29
Reachable functions
224
Percentage of reachable functions covered
87.05%
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
fuzz/fuzz_gnu_index.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 4
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_gnu_index.c 13

Fuzzer: fuzz_init_path

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 146 17.6%
gold [1:9] 11 1.33%
yellow [10:29] 11 1.33%
greenyellow [30:49] 7 0.84%
lawngreen 50+ 651 78.8%
All colors 826 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
156 1555 7 :

['dwarf_gnu_debuglink', 'dwarf_crc32', '_dwarf_get_suppress_debuglink_crc', 'match_buildid', 'dwarfstring_append', 'free', 'dwarf_finish']

156 1864 _dwarf_debuglink_finder_newpath call site: 00347 /src/libdwarf/src/lib/libdwarf/dwarf_object_detector.c:736
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00650 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00080 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00109 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 171 5 :

['dwarfstring_append_printf_u', 'dwarfstring_destructor', 'dwarfstring_constructor', '_dwarf_error_string', 'dwarfstring_string']

0 171 _dwarf_extract_buildid call site: 00208 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:913
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00693 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 89 2 :

['_dwarf_closer', 'dwarf_object_detector_fd']

0 89 dwarf_object_detector_path_dSYM call site: 00040 /src/libdwarf/src/lib/libdwarf/dwarf_object_detector.c:639
0 17 1 :

['dwarfstring_append']

0 33 transform_leading_windowsletter call site: 00253 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:206
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00156 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200
0 8 1 :

['_dwarf_error_destructor']

0 8 dwarf_dealloc call site: 00076 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:951

Runtime coverage analysis

Covered functions
227
Functions that are reachable but not covered
34
Reachable functions
237
Percentage of reachable functions covered
85.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.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_init_path.c 1
src/lib/libdwarf/dwarf_generic_init.c 6
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 18
src/lib/libdwarf/dwarf_seekr.c 4
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_debuglink.c 20
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_crc32.c 1
src/lib/libdwarf/dwarf_crc.c 1
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_setup_sections.c 3

Fuzzer: fuzz_debuglink

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 127 17.0%
gold [1:9] 23 3.08%
yellow [10:29] 10 1.34%
greenyellow [30:49] 44 5.90%
lawngreen 50+ 541 72.6%
All colors 745 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
35 35 1 :

['transform_leading_windowsletter']

35 426 _dwarf_construct_linkedto_path call site: 00650 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:653
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00405 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00471 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00738 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 2 :

['strlen', 'strdup']

4 4 dwarf_gnu_debuglink call site: 00590 /src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c:987
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141

Runtime coverage analysis

Covered functions
206
Functions that are reachable but not covered
38
Reachable functions
220
Percentage of reachable functions covered
82.73%
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
fuzz/fuzz_debuglink.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 2
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 20
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13

Fuzzer: fuzz_simplereader_tu

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 1075 97.9%
gold [1:9] 22 2.00%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 1 0.09%
All colors 1098 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
2177 2391 5 :

['generate_form_error', '_dwarf_look_in_local_and_tied', '_dwarf_calculate_info_section_end_ptr', '_dwarf_error_string', 'dwarf_addr_form_is_indexed']

2177 2391 dwarf_formaddr call site: 00922 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1305
62 62 1 :

['_dwarf_get_alloc']

62 62 _dwarf_error_string call site: 00023 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:184
29 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

91 91 _dwarf_error_string call site: 00007 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
0 0 None 126 126 dwarf_dealloc call site: 00046 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:856
0 0 None 0 323 get_attr_dbg call site: 00656 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:112
0 0 None 0 0 dwarf_errmsg_by_number call site: 00029 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:215

Runtime coverage analysis

Covered functions
11
Functions that are reachable but not covered
201
Reachable functions
212
Percentage of reachable functions covered
5.19%
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
fuzz/fuzz_simplereader_tu.c 1
src/lib/libdwarf/dwarf_die_deliv.c 32
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 10
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_util.c 20
src/lib/libdwarf/dwarf_init_finish.c 2
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_xu_index.c 10
src/lib/libdwarf/dwarf_global.c 1
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_query.c 18
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_fission_to_cu.c 5
src/lib/libdwarf/dwarf_generic_init.c 1
src/lib/libdwarf/dwarf_elfread.c 1
src/lib/libdwarf/dwarf_seekr.c 1
src/lib/libdwarf/dwarf_machoread.c 2
src/lib/libdwarf/dwarf_peread.c 1
src/lib/libdwarf/dwarf_groups.c 2

Fuzzer: fuzz_init_b

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 87 14.4%
gold [1:9] 17 2.81%
yellow [10:29] 4 0.66%
greenyellow [30:49] 32 5.29%
lawngreen 50+ 464 76.8%
All colors 604 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00343 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00321 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00410 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 6 2 :

['dwarf_errmsg_by_number', 'fflush']

4 68 _dwarf_error_string call site: 00010 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00597 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00540 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00580 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00014 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00423 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 109 1 :

['_dwarf_error']

0 109 dwarf_get_xu_index_header call site: 00393 /src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c:390
0 11 1 :

['_dwarf_tdestroy']

0 11 _dwarf_free_all_of_one_debug call site: 00470 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1200

Runtime coverage analysis

Covered functions
192
Functions that are reachable but not covered
32
Reachable functions
200
Percentage of reachable functions covered
84.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.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_init_b.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 17
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 1
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13

Fuzzer: fuzz_tie

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 99 16.5%
gold [1:9] 12 2.00%
yellow [10:29] 25 4.17%
greenyellow [30:49] 15 2.50%
lawngreen 50+ 448 74.7%
All colors 599 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
54 54 1 :

['apply_rela_entries']

54 54 elf_relocations_nolibelf call site: 00000 /src/libdwarf/src/lib/libdwarf/dwarf_elfread.c:492
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
13 13 2 :

['_dwarf_error_destructor', '_dwarf_remove_from_staticerrlist']

13 60 dwarf_dealloc call site: 00405 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:948
10 128 4 :

['dwarf_errno', 'dwarf_errmsg', 'dwarfstring_append', 'dwarf_dealloc']

10 418 dwarf_object_init_b call site: 00471 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1094
10 29 5 :

['dwarfstring_append', '_dwarf_add_to_static_err_list', 'calloc', 'dwarfstring_constructor', '_dwarf_special_no_dbg_error_malloc']

10 91 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:122
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 00592 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_pe_access call site: 00578 /src/libdwarf/src/lib/libdwarf/dwarf_peread.c:434
3 3 1 :

['allocate_ts_entry']

3 3 _tsearch_inner call site: 00012 /src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c:479
2 2 1 :

['fclose']

2 394 _dwarf_free_all_of_one_debug call site: 00421 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:1141
0 114 3 :

['dwarfstring_destructor', '_dwarf_error_string', 'dwarfstring_string']

0 114 dwarf_object_init_b call site: 00478 /src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c:1111

Runtime coverage analysis

Covered functions
186
Functions that are reachable but not covered
36
Reachable functions
198
Percentage of reachable functions covered
81.82%
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
fuzz/fuzz_tie.c 1
src/lib/libdwarf/dwarf_generic_init.c 4
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 16
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 10
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 3
src/lib/libdwarf/dwarf_harmless.c 2
src/lib/libdwarf/dwarf_util.c 1
src/lib/libdwarf/dwarf_rnglists.c 2
src/lib/libdwarf/dwarf_loclists.c 2
src/lib/libdwarf/dwarf_tied.c 1
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13

Fuzzer: fuzz_die_cu_e_print

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 458 29.9%
gold [1:9] 120 7.84%
yellow [10:29] 78 5.10%
greenyellow [30:49] 42 2.74%
lawngreen 50+ 831 54.3%
All colors 1529 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1947 1947 1 :

['dwarf_offdie_b']

1947 1947 _dwarf_internal_find_die_given_sig8 call site: 01221 /src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c:211
1940 1940 1 :

['_dwarf_merge_all_base_attrs_of_cu_die']

1940 2684 _dwarf_next_cu_header_internal call site: 00740 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:2083
217 217 1 :

['_dwarf_get_debugfission_for_offset']

217 324 fill_in_dwp_offsets_if_present call site: 00813 /src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c:619
186 289 2 :

['_dwarf_trial_read_dwarf_five_hdr', 'dwarf_dealloc_error']

186 729 _dwarf_extract_string_offset_via_str_offsets call site: 01308 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:1853
127 345 2 :

['dwarf_dealloc_die', 'dwarf_die_offsets']

127 345 find_sig8_target_as_global_offset call site: 01220 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:681
32 32 2 :

['_dwarfstring_append_zeros', '_dwarfstring_append_spaces']

34 70 dwarfstring_append_printf_u call site: 00341 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:866
24 307 7 :

['dwarfstring_destructor', 'dwarfstring_append', 'dwarf_dealloc_error', 'dwarf_errmsg', '_dwarf_error_string', 'dwarfstring_string', 'dwarfstring_constructor_fixed']

24 307 _dwarf_internal_global_formref_b call site: 01219 /src/libdwarf/src/lib/libdwarf/dwarf_form.c:953
16 16 1 :

['_dwarfstring_append_spaces']

18 42 dwarfstring_append_printf_s call site: 00319 /src/libdwarf/src/lib/libdwarf/dwarf_string.c:346
8 8 2 :

['_dwarf_special_no_dbg_error_malloc', '_dwarf_add_to_static_err_list']

10 29 _dwarf_error_string call site: 00008 /src/libdwarf/src/lib/libdwarf/dwarf_error.c:125
5 5 1 :

['_dwarf_remove_from_staticerrlist']

5 52 dwarf_dealloc call site: 00408 /src/libdwarf/src/lib/libdwarf/dwarf_alloc.c:969
4 4 1 :

['_dwarf_closer']

4 182 dwarf_finish call site: 01518 /src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c:497
4 4 1 :

['_dwarf_closer']

4 4 _dwarf_destruct_macho_internals call site: 00538 /src/libdwarf/src/lib/libdwarf/dwarf_machoread.c:267

Runtime coverage analysis

Covered functions
306
Functions that are reachable but not covered
58
Reachable functions
336
Percentage of reachable functions covered
82.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
fuzz/fuzz_die_cu_e_print.c 1
src/lib/libdwarf/dwarf_generic_init.c 3
src/lib/libdwarf/dwarf_error.c 5
src/lib/libdwarf/dwarf_alloc.c 19
src/lib/libdwarf/dwarf_tsearchhash.c 12
src/lib/libdwarf/dwarf_string.c 12
src/lib/libdwarf/dwarf_object_detector.c 8
src/lib/libdwarf/dwarf_seekr.c 3
src/lib/libdwarf/dwarf_object_read_common.c 1
src/lib/libdwarf/dwarf_elfread.c 4
src/lib/libdwarf/dwarf_elf_load_headers.c 39
src/lib/libdwarf/dwarf_memcpy_swap.c 1
src/lib/libdwarf/dwarf_secname_ck.c 3
src/lib/libdwarf/dwarf_init_finish.c 13
src/lib/libdwarf/dwarf_groups.c 10
src/lib/libdwarf/dwarf_setup_sections.c 3
src/lib/libdwarf/dwarf_xu_index.c 12
src/lib/libdwarf/dwarf_harmless.c 3
src/lib/libdwarf/dwarf_util.c 19
src/lib/libdwarf/dwarf_rnglists.c 6
src/lib/libdwarf/dwarf_loclists.c 6
src/lib/libdwarf/dwarf_tied.c 6
src/lib/libdwarf/dwarf_debuglink.c 1
src/lib/libdwarf/dwarf_machoread.c 22
src/lib/libdwarf/dwarf_safe_strcpy.c 1
src/lib/libdwarf/dwarf_peread.c 13
src/lib/libdwarf/dwarf_query.c 19
src/lib/libdwarf/dwarf_frame.c 1
src/lib/libdwarf/dwarf_die_deliv.c 33
src/lib/libdwarf/dwarf_leb.c 3
src/lib/libdwarf/dwarf_abbrev.c 1
src/lib/libdwarf/dwarf_fill_in_attr_form.c 2
src/lib/libdwarf/dwarf_form.c 19
src/lib/libdwarf/dwarf_names.c 2
src/lib/libdwarf/dwarf_find_sigref.c 2
src/lib/libdwarf/dwarf_str_offsets.c 5
src/lib/libdwarf/dwarf_fission_to_cu.c 5

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.

fuzz/fuzz_crc.c

Dictionary

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


fuzz/fuzz_init_binary.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_get_alloc', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_dnames.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=['dwarf_dnames_name', 'dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_dealloc', 'LLVMFuzzerTestOneInput']

fuzz/fuzz_aranges.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=['_dwarf_get_aranges_list', 'dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', '_dwarf_read_unaligned_ck_wrapper', 'internal_load_rnglists_contexts', 'dwarf_dealloc']

fuzz/fuzz_gdbindex.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=['dwarfstring_append_printf_s', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarfstring_append_printf_u', 'dwarf_dealloc', 'examplewgdbindex', '_dwarf_load_section', 'examplew']

fuzz/fuzz_die_cu_print.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_next_die_info_ptr', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', 'fill_in_dwp_offsets_if_present', '_dwarf_make_CU_Context', '_dwarf_get_string_from_tied']

fuzz/fuzz_die_cu_info1.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_get_size_of_val', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_leb128_sword_wrapper', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', '_dwarf_make_CU_Context', '_dwarf_get_string_from_tied', '_dwarf_next_cu_header_internal', '_dwarf_count_abbrev_entries']

fuzz/fuzz_die_cu_attrs.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=['_dwarf_extract_string_offset_via_str_offsets', '_dwarf_next_die_info_ptr', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_find_all_offsets_via_fission', 'dwarf_get_xu_section_offset', 'dwarf_die_CU_offset', 'dwarf_get_debugfission_for_key', 'dwarf_offdie_b', 'fill_in_dwp_offsets_if_present', 'dwarf_discr_list']

fuzz/fuzz_stack_frame_access.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_get_size_of_val', 'dwarf_get_fde_for_die', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_create_cie_from_after_start', '_dwarf_leb128_sword_wrapper', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', '_dwarf_create_fde_from_after_start']

fuzz/fuzz_die_cu_attrs_loclist.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=['_dwarf_loclists_fill_in_lle_head', '_dwarf_create_a_new_cu_context_record_on_list', 'dwarf_highpc_b', '_dwarf_get_size_of_val', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_leb128_sword_wrapper', 'dwarf_get_loclist_c', '_dwarf_fill_in_locdesc_op_c', 'dwarf_get_debugfission_for_key']

fuzz/fuzz_die_cu.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_get_size_of_val', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_leb128_sword_wrapper', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', 'fill_in_dwp_offsets_if_present', '_dwarf_make_CU_Context', '_dwarf_get_string_from_tied']

fuzz/fuzz_rng.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=['dwarf_get_rnglist_rle', 'dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_get_alloc', '_dwarf_read_unaligned_ck_wrapper', 'internal_load_rnglists_contexts', 'dwarf_get_rnglist_offset_index_value']

fuzz/fuzz_str_offsets.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=['dwarfstring_append_printf_i', 'dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_die_cu_e.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_get_size_of_val', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_leb128_sword_wrapper', '_dwarf_trial_read_dwarf_five_hdr', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', 'fill_in_dwp_offsets_if_present', '_dwarf_make_CU_Context', '_dwarf_get_string_from_tied']

fuzz/fuzz_srcfiles.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=['_dwarf_get_size_of_val', 'read_line_table_program', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_leb128_sword_wrapper', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', '_dwarf_filename', 'fill_in_dwp_offsets_if_present']

fuzz/fuzz_crc_32.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=['dwarf_crc32', 'dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_showsectgrp.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=['dwarfstring_append_printf_u', '_dwarf_load_section', '_dwarf_error_string', 'dwarf_object_init_b', '_dwarf_get_alloc', 'dwarf_init_path_dl_a', '_dwarf_free_all_of_one_debug', 'dwarfstring_append_printf_s']

fuzz/fuzz_debug_addr_access.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=['dwarfstring_append_printf_s', 'dwarf_debug_addr_table', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_get_alloc', 'dwarf_dealloc', 'LLVMFuzzerTestOneInput']

fuzz/fuzz_set_frame_all.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=['_dwarf_exec_frame_instr', '_dwarf_create_fde_from_after_start', 'dwarfstring_append_printf_s', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarfstring_append_printf_u', 'print_fde_selected_regs', 'dwarf_dealloc']

fuzz/fuzz_debug_str.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_dealloc', '_dwarf_load_section', 'resize_table']

fuzz/fuzz_findfuncbypc.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=['dwarf_diename', '_dwarf_internal_srclines', '_dwarf_next_die_info_ptr', 'dwarf_formsdata', 'read_line_table_program', '_dwarf_initialize_search_hash', 'dwarf_get_xu_section_offset', '_dwarf_filename', 'dwarf_get_debugfission_for_key']

fuzz/fuzz_xuindex.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_get_alloc', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_die_cu_offset.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=['_dwarf_get_size_of_val', 'dwarf_offdie_b', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_leb128_sword_wrapper', 'dwarf_get_debugfission_for_key', 'dwarf_get_xu_section_offset', 'fill_in_dwp_offsets_if_present', '_dwarf_make_CU_Context', '_dwarf_get_string_from_tied']

fuzz/fuzz_globals.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=['_dwarf_formudata_internal', 'dwarf_dnames_name', 'dwarfstring_append_printf_s', '_dwarf_internal_get_debug_names_globals', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_globals_by_type', '_dwarf_internal_get_pubnames_like', 'dwarfstring_append_length']

fuzz/fuzz_macro_dwarf5.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=['dwarf_srcfiles', '_dwarf_next_die_info_ptr', '_dwarf_look_in_local_and_tied_by_index', 'dwarf_get_xu_section_offset', 'dwarf_get_debugfission_for_key', '_dwarf_make_CU_Context', 'dwarfstring_constructor_fixed', '_dwarf_get_string_from_tied', '_dwarf_next_cu_header_internal']

fuzz/fuzz_macro_dwarf4.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_get_macro_details', '_dwarf_load_section']

fuzz/fuzz_gnu_index.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', '_dwarf_count_entries_in_block', 'dwarfstring_append_length', '_dwarf_read_unaligned_ck_wrapper', 'internal_load_rnglists_contexts', 'dwarf_dealloc']

fuzz/fuzz_init_path.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=['_dwarf_debuglink_finder_newpath', 'dwarfstring_append_printf_u', 'dwarfstring_append_printf_s', 'dwarf_add_debuglink_global_path', 'dwarf_object_detector_path_b', 'dwarf_get_xu_index_header', '_dwarf_tfind']

fuzz/fuzz_debuglink.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=['_dwarf_extract_buildid', 'dwarfstring_append_printf_s', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_construct_linkedto_path', '_dwarf_get_alloc', 'dwarfstring_append_printf_u', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_simplereader_tu.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=['dwarf_get_debugfission_for_key', 'get_attr_dbg', '_dwarf_error', 'dwarf_formaddr', 'dwarf_finish', 'dwarf_die_from_hash_signature', '_dwarf_error_string']

fuzz/fuzz_init_b.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarfstring_append_length', 'dwarf_dealloc', '_dwarf_load_section', 'LLVMFuzzerTestOneInput']

fuzz/fuzz_tie.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=['dwarfstring_append_printf_s', 'dwarfstring_append_printf_u', 'dwarf_get_xu_index_header', 'dwarf_object_init_b', '_dwarf_get_alloc', 'dwarf_dealloc', '_dwarf_load_section']

fuzz/fuzz_die_cu_e_print.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=['_dwarf_create_a_new_cu_context_record_on_list', '_dwarf_next_die_info_ptr', '_dwarf_look_in_local_and_tied_by_index', '_dwarf_extract_string_offset_via_str_offsets', '_dwarf_find_all_offsets_via_fission', 'dwarf_get_xu_section_offset', 'dwarf_get_debugfission_for_key', 'fill_in_dwp_offsets_if_present', '_dwarf_make_CU_Context']

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
dwarf_dnames_cu_table 67 34 50.74% ['fuzz_dnames', 'fuzz_globals']
dwarf_dnames_abbrevtable 36 8 22.22% ['fuzz_dnames']
_dwarf_fill_in_attr_form 33 12 36.36% ['fuzz_dnames', 'fuzz_globals']
insert_into_cu_context_list 45 20 44.44% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
_dwarf_fill_in_attr_form_abtable 101 48 47.52% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
load_xu_loclists_into_cucontext 44 16 36.36% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
load_xu_rnglists_into_cucontext 39 14 35.89% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
load_xu_str_offsets_into_cucontext 56 11 19.64% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
_dwarf_get_string_from_tied 50 12 24.0% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
dwarf_get_xu_section_names 33 15 45.45% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
_dwarf_search_fission_for_key 71 34 47.88% ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
get_dsc_leb_entries 87 39 44.82% ['fuzz_die_cu_attrs']
dwarf_get_TAG_name 366 6 1.639% ['fuzz_die_cu_attrs']
_dwarf_loc_block_sanity_check 48 16 33.33% ['fuzz_die_cu_attrs_loclist']
validate_lle_value 59 21 35.59% ['fuzz_die_cu_attrs_loclist']
cook_original_loclist_contents 40 21 52.5% ['fuzz_die_cu_attrs_loclist']
_dwarf_loclists_fill_in_lle_head 132 52 39.39% ['fuzz_die_cu_attrs_loclist']
_dwarf_which_loclists_context 92 12 13.04% ['fuzz_die_cu_attrs_loclist']
dwarf_get_OP_name 588 18 3.061% ['fuzz_die_cu_attrs_loclist']
dwarf_lowpc 49 13 26.53% ['fuzz_die_cu_attrs_loclist', 'fuzz_findfuncbypc']
dwarf_highpc_b 88 11 12.5% ['fuzz_die_cu_attrs_loclist', 'fuzz_findfuncbypc']
dwarf_get_rnglist_offset_index_value 57 31 54.38% ['fuzz_rng']
dwarf_get_rnglist_rle 66 29 43.93% ['fuzz_rng']
dwarf_srclines_two_level_from_linecontext 40 17 42.5% ['fuzz_srcfiles']
dwarf_srclines_files_indexes 45 18 40.0% ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5']
_dwarf_print_header_issue 40 7 17.5% ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5']
_dwarf_filename 117 59 50.42% ['fuzz_srcfiles', 'fuzz_findfuncbypc']
dwarf_crc32 73 14 19.17% ['fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_findfuncbypc', 'fuzz_init_path']
dwarf_debug_addr_by_index 36 16 44.44% ['fuzz_debug_addr_access']
dwarf_die_from_hash_signature 77 4 5.194% ['fuzz_simplereader_tu']
transform_leading_windowsletter 36 15 41.66% ['fuzz_showsectgrp', 'fuzz_findfuncbypc', 'fuzz_init_path', 'fuzz_debuglink']
dwarf_object_detector_path_dSYM 46 23 50.0% ['fuzz_showsectgrp', 'fuzz_findfuncbypc', 'fuzz_init_path']
_dwarf_debuglink_finder_newpath 86 27 31.39% ['fuzz_showsectgrp', 'fuzz_findfuncbypc', 'fuzz_init_path']

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/libdwarf/src/lib/libdwarf/dwarf_secname_ck.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_locationop_read.c ['fuzz_die_cu_attrs_loclist'] ['fuzz_die_cu_attrs_loclist']
/src/libdwarf/fuzz/fuzz_die_cu_info1.c ['fuzz_die_cu_info1'] ['fuzz_die_cu_info1']
/src/libdwarf/fuzz/fuzz_debug_addr_access.c ['fuzz_debug_addr_access'] ['fuzz_debug_addr_access']
/src/libdwarf/src/lib/libdwarf/dwarf_object_detector.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_abbrev.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_globals.c ['fuzz_globals'] ['fuzz_globals']
/src/libdwarf/src/lib/libdwarf/dwarf_peread.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_dsc.c ['fuzz_die_cu_attrs'] ['fuzz_die_cu_attrs']
/src/libdwarf/src/lib/libdwarf/dwarf_debuglink.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_showsectgrp.c ['fuzz_showsectgrp'] ['fuzz_showsectgrp']
/src/libdwarf/fuzz/fuzz_die_cu_e_print.c ['fuzz_die_cu_e_print'] ['fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_gnu_index.c ['fuzz_gnu_index'] ['fuzz_gnu_index']
/src/libdwarf/src/lib/libdwarf/dwarf_machoread.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_stack_frame_access.c ['fuzz_stack_frame_access'] ['fuzz_stack_frame_access']
/src/libdwarf/src/lib/libdwarf/dwarf_frame.c ['fuzz_die_cu_print', 'fuzz_stack_frame_access', 'fuzz_set_frame_all', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_stack_frame_access', 'fuzz_set_frame_all', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_die_cu.c ['fuzz_die_cu'] ['fuzz_die_cu']
/src/libdwarf/src/lib/libdwarf/dwarf_memcpy_swap.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_tied.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] []
/src/libdwarf/src/lib/libdwarf/dwarf_error.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_dnames.c ['fuzz_dnames'] ['fuzz_dnames']
/src/libdwarf/fuzz/fuzz_die_cu_attrs.c ['fuzz_die_cu_attrs'] ['fuzz_die_cu_attrs']
/src/libdwarf/src/lib/libdwarf/dwarf_query.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_fill_in_attr_form.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_harmless.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_debug_str.c ['fuzz_debug_str'] ['fuzz_debug_str']
/src/libdwarf/fuzz/fuzz_crc.c ['fuzz_crc'] ['fuzz_crc']
/src/libdwarf/src/lib/libdwarf/dwarf_leb.c ['fuzz_dnames', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_dnames', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_line.c ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5'] ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5']
/src/libdwarf/src/lib/libdwarf/dwarf_frame2.c ['fuzz_stack_frame_access', 'fuzz_set_frame_all'] ['fuzz_stack_frame_access', 'fuzz_set_frame_all']
/src/libdwarf/src/lib/libdwarf/dwarf_tsearchhash.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_debuglink.c ['fuzz_debuglink'] ['fuzz_debuglink']
/src/libdwarf/src/lib/libdwarf/dwarf_arange.c ['fuzz_aranges'] ['fuzz_aranges']
/src/libdwarf/src/lib/libdwarf/dwarf_debugnames.c ['fuzz_dnames', 'fuzz_globals'] ['fuzz_dnames', 'fuzz_globals']
/src/libdwarf/src/lib/libdwarf/dwarf_str_offsets.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_info1', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5']
/src/libdwarf/src/lib/libdwarf/dwarf_macro5.c ['fuzz_macro_dwarf5'] []
/src/libdwarf/fuzz/fuzz_init_path.c ['fuzz_init_path'] ['fuzz_init_path']
/src/libdwarf/src/lib/libdwarf/dwarf_xu_index.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_generic_init.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_die_cu_e.c ['fuzz_die_cu_e'] ['fuzz_die_cu_e']
/src/libdwarf/src/lib/libdwarf/dwarf_safe_arithmetic.c ['fuzz_set_frame_all'] ['fuzz_set_frame_all']
/src/libdwarf/fuzz/fuzz_init_binary.c ['fuzz_init_binary'] ['fuzz_init_binary']
/src/libdwarf/src/lib/libdwarf/dwarf_find_sigref.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_loclists.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_init_b.c ['fuzz_init_b'] ['fuzz_init_b']
/src/libdwarf/src/lib/libdwarf/dwarf_names.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_print_lines.c ['fuzz_srcfiles'] ['fuzz_srcfiles']
/src/libdwarf/fuzz/fuzz_gdbindex.c ['fuzz_gdbindex'] ['fuzz_gdbindex']
/src/libdwarf/fuzz/fuzz_macro_dwarf5.c ['fuzz_macro_dwarf5'] ['fuzz_macro_dwarf5']
/src/libdwarf/src/lib/libdwarf/dwarf_gdbindex.c ['fuzz_gdbindex'] ['fuzz_gdbindex']
/src/libdwarf/fuzz/fuzz_simplereader_tu.c ['fuzz_simplereader_tu'] ['fuzz_simplereader_tu']
/src/libdwarf/fuzz/fuzz_gnu_index.c ['fuzz_gnu_index'] ['fuzz_gnu_index']
/src/libdwarf/src/lib/libdwarf/dwarf_rnglists.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_str_offsets.c ['fuzz_str_offsets'] ['fuzz_str_offsets']
/src/libdwarf/fuzz/fuzz_tie.c ['fuzz_tie'] ['fuzz_tie']
/src/libdwarf/src/lib/libdwarf/dwarf_safe_strcpy.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_debugaddr.c ['fuzz_debug_addr_access'] ['fuzz_debug_addr_access']
/src/libdwarf/src/lib/libdwarf/dwarf_init_finish.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_fission_to_cu.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_loc.c ['fuzz_die_cu_attrs_loclist'] ['fuzz_die_cu_attrs_loclist']
/src/libdwarf/src/lib/libdwarf/dwarf_elf_rel_detector.c [] []
/src/libdwarf/src/lib/libdwarf/dwarf_global.c ['fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_simplereader_tu'] ['fuzz_die_cu_offset', 'fuzz_globals']
/src/libdwarf/src/lib/libdwarf/dwarf_crc.c ['fuzz_crc', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_init_path'] ['fuzz_crc']
/src/libdwarf/src/lib/libdwarf/dwarf_macro.c ['fuzz_macro_dwarf4'] ['fuzz_macro_dwarf4']
/src/libdwarf/src/lib/libdwarf/dwarf_crc32.c ['fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_init_path'] ['fuzz_crc_32']
/src/libdwarf/src/lib/libdwarf/dwarf_ranges.c ['fuzz_findfuncbypc'] []
/src/libdwarf/fuzz/fuzz_macro_dwarf4.c ['fuzz_macro_dwarf4'] ['fuzz_macro_dwarf4']
/src/libdwarf/src/lib/libdwarf/dwarf_seekr.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_groups.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_rng.c ['fuzz_rng'] ['fuzz_rng']
/src/libdwarf/fuzz/fuzz_set_frame_all.c ['fuzz_set_frame_all'] ['fuzz_set_frame_all']
/src/libdwarf/fuzz/fuzz_xuindex.c ['fuzz_xuindex'] ['fuzz_xuindex']
/src/libdwarf/src/lib/libdwarf/dwarf_elf_load_headers.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_aranges.c ['fuzz_aranges'] ['fuzz_aranges']
/src/libdwarf/src/lib/libdwarf/dwarf_elfread.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_srcfiles.c ['fuzz_srcfiles'] ['fuzz_srcfiles']
/src/libdwarf/src/lib/libdwarf/dwarf_alloc.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_line_table_reader_common.h ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5'] ['fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_macro_dwarf5']
/src/libdwarf/fuzz/fuzz_findfuncbypc.c ['fuzz_findfuncbypc'] ['fuzz_findfuncbypc']
/src/libdwarf/fuzz/fuzz_die_cu_offset.c ['fuzz_die_cu_offset'] ['fuzz_die_cu_offset']
/src/libdwarf/src/lib/libdwarf/dwarf_setup_sections.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_form.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_string.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_die_deliv.c ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print'] ['fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_set_frame_all', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_macro_dwarf5', 'fuzz_simplereader_tu', 'fuzz_die_cu_e_print']
/src/libdwarf/src/lib/libdwarf/dwarf_object_read_common.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print']
/src/libdwarf/fuzz/fuzz_die_cu_print.c ['fuzz_die_cu_print'] ['fuzz_die_cu_print']
/src/libdwarf/fuzz/fuzz_crc_32.c ['fuzz_crc_32'] ['fuzz_crc_32']
/src/libdwarf/fuzz/fuzz_die_cu_attrs_loclist.c ['fuzz_die_cu_attrs_loclist'] ['fuzz_die_cu_attrs_loclist']
/src/libdwarf/src/lib/libdwarf/dwarf_stringsection.c ['fuzz_debug_str'] ['fuzz_debug_str']
/src/libdwarf/src/lib/libdwarf/dwarf_util.c ['fuzz_init_binary', 'fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_crc_32', 'fuzz_showsectgrp', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_xuindex', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_simplereader_tu', 'fuzz_init_b', 'fuzz_tie', 'fuzz_die_cu_e_print'] ['fuzz_dnames', 'fuzz_aranges', 'fuzz_gdbindex', 'fuzz_die_cu_print', 'fuzz_die_cu_info1', 'fuzz_die_cu_attrs', 'fuzz_stack_frame_access', 'fuzz_die_cu_attrs_loclist', 'fuzz_die_cu', 'fuzz_rng', 'fuzz_str_offsets', 'fuzz_die_cu_e', 'fuzz_srcfiles', 'fuzz_debug_addr_access', 'fuzz_set_frame_all', 'fuzz_debug_str', 'fuzz_findfuncbypc', 'fuzz_die_cu_offset', 'fuzz_globals', 'fuzz_macro_dwarf5', 'fuzz_macro_dwarf4', 'fuzz_gnu_index', 'fuzz_init_path', 'fuzz_debuglink', 'fuzz_die_cu_e_print']

Directories in report

Directory
/src/libdwarf/src/lib/libdwarf/
/src/libdwarf/fuzz/

Metadata section

This sections shows the raw data that is used to produce this report. This is mainly used for further processing and developer debugging.

Fuzzer Calltree file Program data file Coverage file
fuzz_crc fuzzerLogFile-0-JpKoeDxZth.data fuzzerLogFile-0-JpKoeDxZth.data.yaml fuzz_crc.covreport
fuzz_init_binary fuzzerLogFile-0-qpeplWtDV7.data fuzzerLogFile-0-qpeplWtDV7.data.yaml fuzz_init_binary.covreport
fuzz_dnames fuzzerLogFile-0-GOwu5zqac8.data fuzzerLogFile-0-GOwu5zqac8.data.yaml fuzz_dnames.covreport
fuzz_aranges fuzzerLogFile-0-DyuWE7Avp7.data fuzzerLogFile-0-DyuWE7Avp7.data.yaml fuzz_aranges.covreport
fuzz_gdbindex fuzzerLogFile-0-Dp3ZEYqx5w.data fuzzerLogFile-0-Dp3ZEYqx5w.data.yaml fuzz_gdbindex.covreport
fuzz_die_cu_print fuzzerLogFile-0-6kJE256kIr.data fuzzerLogFile-0-6kJE256kIr.data.yaml fuzz_die_cu_print.covreport
fuzz_die_cu_info1 fuzzerLogFile-0-0Gh5yLlpsN.data fuzzerLogFile-0-0Gh5yLlpsN.data.yaml fuzz_die_cu_info1.covreport
fuzz_die_cu_attrs fuzzerLogFile-0-QjN7OiQ3Qi.data fuzzerLogFile-0-QjN7OiQ3Qi.data.yaml fuzz_die_cu_attrs.covreport
fuzz_stack_frame_access fuzzerLogFile-0-yb54K9xE4z.data fuzzerLogFile-0-yb54K9xE4z.data.yaml fuzz_stack_frame_access.covreport
fuzz_die_cu_attrs_loclist fuzzerLogFile-0-uBppRZATsK.data fuzzerLogFile-0-uBppRZATsK.data.yaml fuzz_die_cu_attrs_loclist.covreport
fuzz_die_cu fuzzerLogFile-0-SckJaJdsJm.data fuzzerLogFile-0-SckJaJdsJm.data.yaml fuzz_die_cu.covreport
fuzz_rng fuzzerLogFile-0-ndKSWgGUHQ.data fuzzerLogFile-0-ndKSWgGUHQ.data.yaml fuzz_rng.covreport
fuzz_str_offsets fuzzerLogFile-0-wRuN6vucga.data fuzzerLogFile-0-wRuN6vucga.data.yaml fuzz_str_offsets.covreport
fuzz_die_cu_e fuzzerLogFile-0-SPAY4eCVIV.data fuzzerLogFile-0-SPAY4eCVIV.data.yaml fuzz_die_cu_e.covreport
fuzz_srcfiles fuzzerLogFile-0-OI9wUedcoo.data fuzzerLogFile-0-OI9wUedcoo.data.yaml fuzz_srcfiles.covreport
fuzz_crc_32 fuzzerLogFile-0-KwIx4dze7B.data fuzzerLogFile-0-KwIx4dze7B.data.yaml fuzz_crc_32.covreport
fuzz_showsectgrp fuzzerLogFile-0-tKF5JQS74J.data fuzzerLogFile-0-tKF5JQS74J.data.yaml fuzz_showsectgrp.covreport
fuzz_debug_addr_access fuzzerLogFile-0-qeNM7IzVig.data fuzzerLogFile-0-qeNM7IzVig.data.yaml fuzz_debug_addr_access.covreport
fuzz_set_frame_all fuzzerLogFile-0-mK1bmpGGJB.data fuzzerLogFile-0-mK1bmpGGJB.data.yaml fuzz_set_frame_all.covreport
fuzz_debug_str fuzzerLogFile-0-bJeAIwhN6U.data fuzzerLogFile-0-bJeAIwhN6U.data.yaml fuzz_debug_str.covreport
fuzz_findfuncbypc fuzzerLogFile-0-wDz7oNmovz.data fuzzerLogFile-0-wDz7oNmovz.data.yaml fuzz_die_cu_attrs.covreport , fuzz_die_cu_offset.covreport , fuzz_showsectgrp.covreport , fuzz_die_cu_e.covreport , fuzz_xuindex.covreport , fuzz_die_cu_attrs_loclist.covreport , fuzz_gdbindex.covreport , fuzz_die_cu_info1.covreport , fuzz_macro_dwarf4.covreport , fuzz_debug_addr_access.covreport , fuzz_crc.covreport , fuzz_srcfiles.covreport , fuzz_gnu_index.covreport , fuzz_init_b.covreport , fuzz_tie.covreport , fuzz_die_cu.covreport , fuzz_stack_frame_access.covreport , fuzz_simplereader_tu.covreport , fuzz_set_frame_all.covreport , fuzz_die_cu_print.covreport , fuzz_dnames.covreport , fuzz_init_path.covreport , fuzz_init_binary.covreport , fuzz_debug_str.covreport , fuzz_rng.covreport , fuzz_str_offsets.covreport , fuzz_die_cu_e_print.covreport , fuzz_aranges.covreport , fuzz_globals.covreport , fuzz_crc_32.covreport , fuzz_debuglink.covreport
fuzz_xuindex fuzzerLogFile-0-sGr8HmuN7H.data fuzzerLogFile-0-sGr8HmuN7H.data.yaml fuzz_xuindex.covreport
fuzz_die_cu_offset fuzzerLogFile-0-44TNnWR9GS.data fuzzerLogFile-0-44TNnWR9GS.data.yaml fuzz_die_cu_offset.covreport
fuzz_globals fuzzerLogFile-0-6BwdIDJo5P.data fuzzerLogFile-0-6BwdIDJo5P.data.yaml fuzz_globals.covreport
fuzz_macro_dwarf5 fuzzerLogFile-0-LgM7lvrEz3.data fuzzerLogFile-0-LgM7lvrEz3.data.yaml fuzz_die_cu_attrs.covreport , fuzz_die_cu_offset.covreport , fuzz_showsectgrp.covreport , fuzz_die_cu_e.covreport , fuzz_xuindex.covreport , fuzz_die_cu_attrs_loclist.covreport , fuzz_gdbindex.covreport , fuzz_die_cu_info1.covreport , fuzz_macro_dwarf4.covreport , fuzz_debug_addr_access.covreport , fuzz_crc.covreport , fuzz_srcfiles.covreport , fuzz_gnu_index.covreport , fuzz_init_b.covreport , fuzz_tie.covreport , fuzz_die_cu.covreport , fuzz_stack_frame_access.covreport , fuzz_simplereader_tu.covreport , fuzz_set_frame_all.covreport , fuzz_die_cu_print.covreport , fuzz_dnames.covreport , fuzz_init_path.covreport , fuzz_init_binary.covreport , fuzz_debug_str.covreport , fuzz_rng.covreport , fuzz_str_offsets.covreport , fuzz_die_cu_e_print.covreport , fuzz_aranges.covreport , fuzz_globals.covreport , fuzz_crc_32.covreport , fuzz_debuglink.covreport
fuzz_macro_dwarf4 fuzzerLogFile-0-3wV8jw8oZl.data fuzzerLogFile-0-3wV8jw8oZl.data.yaml fuzz_macro_dwarf4.covreport
fuzz_gnu_index fuzzerLogFile-0-HoVdM4IQEo.data fuzzerLogFile-0-HoVdM4IQEo.data.yaml fuzz_gnu_index.covreport
fuzz_init_path fuzzerLogFile-0-j7lU1P0Wt6.data fuzzerLogFile-0-j7lU1P0Wt6.data.yaml fuzz_init_path.covreport
fuzz_debuglink fuzzerLogFile-0-fSV0kpCajU.data fuzzerLogFile-0-fSV0kpCajU.data.yaml fuzz_debuglink.covreport
fuzz_simplereader_tu fuzzerLogFile-0-e3DuJHZwWh.data fuzzerLogFile-0-e3DuJHZwWh.data.yaml fuzz_simplereader_tu.covreport
fuzz_init_b fuzzerLogFile-0-UMYPOLTvcv.data fuzzerLogFile-0-UMYPOLTvcv.data.yaml fuzz_init_b.covreport
fuzz_tie fuzzerLogFile-0-Sm12m5b219.data fuzzerLogFile-0-Sm12m5b219.data.yaml fuzz_tie.covreport
fuzz_die_cu_e_print fuzzerLogFile-0-Y7xRvgJswi.data fuzzerLogFile-0-Y7xRvgJswi.data.yaml fuzz_die_cu_e_print.covreport