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

Fuzzer details

Fuzzer: fuzzer

Call tree

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

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 77 21.6%
gold [1:9] 4 1.12%
yellow [10:29] 4 1.12%
greenyellow [30:49] 2 0.56%
lawngreen 50+ 268 75.4%
All colors 355 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
17 17 1 :

['write_tag_blockout']

17 17 WavpackWriteTag call site: 00345 /src/wavpack/src/tag_utils.c:228
6 6 3 :

['pthread_cond_wait', 'pthread_mutex_unlock', 'pthread_mutex_lock']

6 6 worker_threads_finish call site: 00300 /src/wavpack/src/unpack_utils.c:565
2 64 2 :

['WavpackCloseFile', 'strcpy']

2 64 WavpackOpenFileInputEx64 call site: 00115 /src/wavpack/src/open_utils.c:207
2 2 1 :

['strncpy']

2 2 get_id3_tag_item call site: 00198 /src/wavpack/src/tag_utils.c:313
2 2 1 :

['strncpy']

2 2 get_id3_tag_item_indexed call site: 00177 /src/wavpack/src/tag_utils.c:396
0 47 1 :

['find_sample']

78 2762 WavpackSeekSample64 call site: 00318 /src/wavpack/src/unpack_seek.c:77
0 5 1 :

['WavpackLittleEndianToNative']

78 2648 WavpackSeekSample64 call site: 00325 /src/wavpack/src/unpack_seek.c:115
0 0 None 182 2230 WavpackUnpackSamples call site: 00220 /src/wavpack/src/unpack_utils.c:117
0 0 None 182 2230 WavpackUnpackSamples call site: 00279 /src/wavpack/src/unpack_utils.c:156
0 0 None 182 2230 WavpackUnpackSamples call site: 00280 /src/wavpack/src/unpack_utils.c:178
0 0 None 182 2230 WavpackUnpackSamples call site: 00286 /src/wavpack/src/unpack_utils.c:273
0 0 None 182 2230 WavpackUnpackSamples call site: 00286 /src/wavpack/src/unpack_utils.c:278

Runtime coverage analysis

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

Files reached

filename functions hit
fuzzing/fuzzer.cc 1
src/common_utils.c 35
src/open_utils.c 27
src/tags.c 4
src/unpack_dsd.c 12
src/decorr_utils.c 4
src/entropy_utils.c 6
src/tag_utils.c 18
src/unpack_utils.c 7
src/unpack.c 4
src/read_words.c 3
src/unpack_floats.c 2
src/unpack_seek.c 3