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
fuzzer_seek /src/flac/oss-fuzz/seek.cc 174 85 11 15 3835 1296 seek.cc
/src/flac/oss-fuzz/seek.cc /src/flac/oss-fuzz/seek.cc 174 85 11 15 3835 1296 seek.cc
fuzzer_exo /src/fuzzer_exo.cpp 190 139 10 17 3465 1215 fuzzer_exo.cpp
/src/flac/oss-fuzz/decoder.cc /src/flac/oss-fuzz/decoder.cc 256 683 10 18 4106 1447 decoder.cc
fuzzer_decoder /src/flac/oss-fuzz/decoder.cc 256 683 10 18 4106 1447 decoder.cc
fuzzer_encoder /src/flac/oss-fuzz/encoder.cc 442 200 13 35 7569 2531 encoder.cc
/src/flac/oss-fuzz/encoder.cc /src/flac/oss-fuzz/encoder.cc 442 200 13 35 7569 2531 encoder.cc
fuzzer_encoder_v2 /src/flac/oss-fuzz/encoder_v2.cc 373 154 12 33 10665 3249 encoder_v2.cc
/src/flac/oss-fuzz/encoder_v2.cc /src/flac/oss-fuzz/encoder_v2.cc 373 154 12 33 10665 3249 encoder_v2.cc
/src/flac/oss-fuzz/metadata.cc /src/flac/oss-fuzz/metadata.cc 671 272 15 18 6752 2939 metadata.cc
fuzzer_metadata /src/flac/oss-fuzz/metadata.cc 671 272 15 18 6752 2939 metadata.cc
/src/flac/oss-fuzz/reencoder.cc /src/flac/oss-fuzz/reencoder.cc 482 317 11 37 10277 3188 reencoder.cc
fuzzer_reencoder /src/flac/oss-fuzz/reencoder.cc 482 317 11 37 10277 3188 reencoder.cc
fuzzer_tool_metaflac /src/flac/oss-fuzz/tool_metaflac.c 513 187 16 44 10406 3753 tool_metaflac.c
/src/flac/oss-fuzz/tool_metaflac.c /src/flac/oss-fuzz/tool_metaflac.c 513 187 16 44 10406 3753 tool_metaflac.c
fuzzer_tool_flac /src/flac/oss-fuzz/tool_flac.c 765 157 16 57 20015 6743 tool_flac.c
/src/flac/oss-fuzz/tool_flac.c /src/flac/oss-fuzz/tool_flac.c 765 157 16 57 20015 6743 tool_flac.c

Fuzzer details

Fuzzer: fuzzer_seek

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 43 7.70%
gold [1:9] 4 0.71%
yellow [10:29] 5 0.89%
greenyellow [30:49] 3 0.53%
lawngreen 50+ 503 90.1%
All colors 558 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
4 22 2 :

['realloc', 'ogg_stream_clear']

4 22 _os_lacing_expand call site: 00132 /src/ogg/src/framing.c:206
2 2 1 :

['get_binary_stdin_']

2 371 init_FILE_internal_ call site: 00058 /src/flac/src/libFLAC/stream_decoder.c:497
0 37 1 :

['FLAC__bitreader_read_raw_uint32']

0 37 FLAC__bitreader_skip_bits_no_crc call site: 00283 /src/flac/src/libFLAC/bitreader.c:606
0 7 2 :

['FLAC__bitreader_delete', 'free']

0 7 FLAC__stream_decoder_new call site: 00005 /src/flac/src/libFLAC/stream_decoder.c:276
0 0 None 14 813 read_metadata_ call site: 00200 /src/flac/src/libFLAC/stream_decoder.c:1398
0 0 None 6 368 read_frame_header_ call site: 00360 /src/flac/src/libFLAC/stream_decoder.c:2294
0 0 None 4 784 seek_to_absolute_sample_ogg_ call site: 00535 /src/flac/src/libFLAC/stream_decoder.c:3586
0 0 None 4 553 read_metadata_ call site: 00241 /src/flac/src/libFLAC/stream_decoder.c:1448
0 0 None 2 810 seek_to_absolute_sample_ call site: 00550 /src/flac/src/libFLAC/stream_decoder.c:3444
0 0 None 2 810 seek_to_absolute_sample_ call site: 00553 /src/flac/src/libFLAC/stream_decoder.c:3503
0 0 None 2 810 seek_to_absolute_sample_ call site: 00554 /src/flac/src/libFLAC/stream_decoder.c:3511
0 0 None 2 465 read_metadata_cuesheet_ call site: 00292 /src/flac/src/libFLAC/stream_decoder.c:1838

Runtime coverage analysis

Covered functions
160
Functions that are reachable but not covered
16
Reachable functions
174
Percentage of reachable functions covered
90.8%
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
/src/flac/oss-fuzz/seek.cc 2
/src/flac/src/libFLAC/stream_decoder.c 53
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/format.c 3
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/md5.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1

Fuzzer: /src/flac/oss-fuzz/seek.cc

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 117 20.9%
gold [1:9] 4 0.71%
yellow [10:29] 6 1.07%
greenyellow [30:49] 2 0.35%
lawngreen 50+ 429 76.8%
All colors 558 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00000 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00000 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
14
Reachable functions
174
Percentage of reachable functions covered
91.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.
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
/src/flac/oss-fuzz/seek.cc 2
/src/flac/src/libFLAC/stream_decoder.c 53
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/format.c 3
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/md5.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1

Fuzzer: fuzzer_exo

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 132 25.7%
gold [1:9] 1 0.19%
yellow [10:29] 5 0.97%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 375 73.0%
All colors 513 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
169 169 1 :

['read_callback_ogg_aspect_']

169 169 read_callback_ call site: 00081 /src/flac/src/libFLAC/stream_decoder.c:3059
53 53 1 :

['FLAC__MD5Accumulate']

53 53 write_audio_frame_to_client_ call site: 00491 /src/flac/src/libFLAC/stream_decoder.c:3261
16 16 1 :

['FLAC__ogg_decoder_aspect_reset']

16 24 FLAC__stream_decoder_reset call site: 00133 /src/flac/src/libFLAC/stream_decoder.c:938
13 13 1 :

['FLAC__ogg_decoder_aspect_flush']

13 15 FLAC__stream_decoder_flush call site: 00136 /src/flac/src/libFLAC/stream_decoder.c:912
12 12 1 :

['FLAC__ogg_decoder_aspect_finish']

16 20 FLAC__stream_decoder_finish call site: 00162 /src/flac/src/libFLAC/stream_decoder.c:644
2 2 1 :

['fclose']

4 8 FLAC__stream_decoder_finish call site: 00163 /src/flac/src/libFLAC/stream_decoder.c:648
2 2 1 :

['memcmp']

2 6 FLAC__stream_decoder_finish call site: 00166 /src/flac/src/libFLAC/stream_decoder.c:654
2 2 1 :

['abort']

2 2 write_audio_frame_to_client_ call site: 00490 /src/flac/src/libFLAC/stream_decoder.c:3216
0 7 2 :

['FLAC__bitreader_delete', 'free']

0 7 FLAC__stream_decoder_new call site: 00010 /src/flac/src/libFLAC/stream_decoder.c:276
0 0 None 134 813 read_metadata_ call site: 00200 /src/flac/src/libFLAC/stream_decoder.c:1398
0 0 None 124 553 read_metadata_ call site: 00241 /src/flac/src/libFLAC/stream_decoder.c:1448
0 0 None 53 53 write_audio_frame_to_client_ call site: 00491 /src/flac/src/libFLAC/stream_decoder.c:3259

Runtime coverage analysis

Covered functions
133
Functions that are reachable but not covered
55
Reachable functions
190
Percentage of reachable functions covered
71.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
/src/fuzzer_exo.cpp 9
/src/ExoPlayer/extensions/flac/src/main/jni/include/data_source.h 1
/src/flac/src/libFLAC/stream_decoder.c 41
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/format.c 3
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/md5.c 6
/src/ExoPlayer/extensions/flac/src/main/jni/include/flac_parser.h 5
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1

Fuzzer: /src/flac/oss-fuzz/decoder.cc

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 133 19.6%
gold [1:9] 3 0.44%
yellow [10:29] 12 1.76%
greenyellow [30:49] 3 0.44%
lawngreen 50+ 527 77.7%
All colors 678 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00000 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00000 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
14
Reachable functions
256
Percentage of reachable functions covered
94.53%
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
/src/flac/oss-fuzz/decoder.cc 4
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 9
/src/flac/src/libFLAC++/stream_decoder.cpp 27
/src/flac/src/libFLAC/stream_decoder.c 58
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/format.c 3
/src/flac/src/libFLAC/ogg_decoder_aspect.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/md5.c 6
/src/ogg/src/framing.c 26
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1

Fuzzer: fuzzer_decoder

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 78 11.5%
gold [1:9] 0 0.0%
yellow [10:29] 8 1.17%
greenyellow [30:49] 1 0.14%
lawngreen 50+ 591 87.1%
All colors 678 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
1638 1965 4 :

['seek_to_absolute_sample_', 'FLAC__stream_decoder_get_total_samples', 'seek_to_absolute_sample_ogg_', 'FLAC__stream_decoder_process_until_end_of_metadata']

1638 1965 FLAC__stream_decoder_seek_absolute call site: 00620 /src/flac/src/libFLAC/stream_decoder.c:1149
18 20 3 :

['FLAC__bitreader_is_consumed_byte_aligned', 'FLAC__stream_decoder_get_input_bytes_unconsumed', 'abort']

18 20 FLAC__stream_decoder_get_decode_position call site: 00418 /src/flac/src/libFLAC/stream_decoder.c:882
8 262 11 :

['safe_calloc_', 'abort', 'free', 'FLAC__bitreader_get_read_crc16', 'read_zero_padding_', 'FLAC__bitreader_clear', 'write_audio_frame_to_client_', 'send_error_to_client_', 'FLAC__bitreader_rewind_to_after_last_seen_framesync', 'undo_channel_coding', 'FLAC__bitreader_read_raw_uint32']

8 262 read_frame_ call site: 00481 /src/flac/src/libFLAC/stream_decoder.c:2095
4 22 2 :

['realloc', 'ogg_stream_clear']

4 22 _os_lacing_expand call site: 00204 /src/ogg/src/framing.c:206
2 9 2 :

['safe_malloc_', 'abort']

2 9 copy_vcentry_ call site: 00000 /src/flac/src/libFLAC/metadata_object.c:133
2 2 1 :

['fclose']

4 8 FLAC__stream_decoder_finish call site: 00099 /src/flac/src/libFLAC/stream_decoder.c:648
2 2 1 :

['abort']

2 2 write_audio_frame_to_client_ call site: 00572 /src/flac/src/libFLAC/stream_decoder.c:3216
0 37 1 :

['FLAC__bitreader_read_raw_uint32']

0 37 FLAC__bitreader_skip_bits_no_crc call site: 00366 /src/flac/src/libFLAC/bitreader.c:606
0 16 1 :

['safe_realloc_mul_2op_']

0 16 FLAC__stream_decoder_set_metadata_respond_application call site: 00055 /src/flac/src/libFLAC/stream_decoder.c:725
0 16 1 :

['safe_realloc_mul_2op_']

0 16 FLAC__stream_decoder_set_metadata_ignore_application call site: 00086 /src/flac/src/libFLAC/stream_decoder.c:784
0 7 2 :

['FLAC__bitreader_delete', 'free']

0 7 FLAC__stream_decoder_new call site: 00009 /src/flac/src/libFLAC/stream_decoder.c:276
0 0 None 16 527 read_frame_ call site: 00465 /src/flac/src/libFLAC/stream_decoder.c:2061

Runtime coverage analysis

Covered functions
270
Functions that are reachable but not covered
18
Reachable functions
256
Percentage of reachable functions covered
92.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
/src/flac/oss-fuzz/decoder.cc 4
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 9
/src/flac/src/libFLAC++/stream_decoder.cpp 27
/src/flac/src/libFLAC/stream_decoder.c 58
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/format.c 3
/src/flac/src/libFLAC/ogg_decoder_aspect.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/md5.c 6
/src/ogg/src/framing.c 26
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1

Fuzzer: fuzzer_encoder

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 451 30.1%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 1 0.06%
lawngreen 50+ 1042 69.7%
All colors 1494 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
323 431 11 :

['malloc', 'FLAC__bitreader_set_limit', 'abort', 'free', 'read_metadata_picture_', 'read_metadata_vorbiscomment_', 'FLAC__bitreader_remove_limit', 'read_metadata_cuesheet_', 'FLAC__bitreader_read_byte_block_aligned_no_crc', 'send_error_to_client_', 'FLAC__bitreader_limit_remaining']

323 499 read_metadata_ call site: 00665 /src/flac/src/libFLAC/stream_decoder.c:1452
169 169 1 :

['read_callback_ogg_aspect_']

169 169 read_callback_ call site: 00516 /src/flac/src/libFLAC/stream_decoder.c:3059
89 89 4 :

['simple_ogg_page__clear', 'simple_ogg_page__get_at', 'simple_ogg_page__set_at', 'simple_ogg_page__init']

89 89 update_ogg_metadata_ call site: 01409 /src/flac/src/libFLAC/stream_encoder.c:2986
71 71 1 :

['read_metadata_seektable_']

71 85 read_metadata_ call site: 00652 /src/flac/src/libFLAC/stream_decoder.c:1414
59 59 1 :

['FLAC__bitreader_read_utf8_uint64']

71 256 read_frame_header_ call site: 00787 /src/flac/src/libFLAC/stream_decoder.c:2482
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 01269 /src/flac/src/libFLAC/stream_encoder_framing.c:356
26 26 3 :

['FLAC__format_seektable_is_legal', 'FLAC__format_seektable_sort', 'abort']

26 26 update_metadata_ call site: 01429 /src/flac/src/libFLAC/stream_encoder.c:2838
18 20 3 :

['FLAC__bitreader_is_consumed_byte_aligned', 'FLAC__stream_decoder_get_input_bytes_unconsumed', 'abort']

18 20 FLAC__stream_decoder_get_decode_position call site: 00756 /src/flac/src/libFLAC/stream_decoder.c:880
16 16 1 :

['FLAC__ogg_decoder_aspect_reset']

16 24 FLAC__stream_decoder_reset call site: 00567 /src/flac/src/libFLAC/stream_decoder.c:938
13 13 1 :

['FLAC__ogg_decoder_aspect_flush']

13 15 FLAC__stream_decoder_flush call site: 00570 /src/flac/src/libFLAC/stream_decoder.c:912
12 12 1 :

['FLAC__ogg_decoder_aspect_finish']

16 20 FLAC__stream_decoder_finish call site: 01440 /src/flac/src/libFLAC/stream_decoder.c:644
10 10 2 :

['safe_calloc_', 'free']

16 148 read_frame_ call site: 00897 /src/flac/src/libFLAC/stream_decoder.c:2153

Runtime coverage analysis

Covered functions
343
Functions that are reachable but not covered
80
Reachable functions
442
Percentage of reachable functions covered
81.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
/src/flac/oss-fuzz/encoder.cc 3
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 12
/src/flac/src/libFLAC++/stream_encoder.cpp 47
/src/flac/src/libFLAC/stream_encoder.c 73
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 5
/src/flac/src/libFLAC/format.c 14
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 10
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/stream_decoder.c 37
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5

Fuzzer: /src/flac/oss-fuzz/encoder.cc

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 245 16.3%
gold [1:9] 9 0.60%
yellow [10:29] 5 0.33%
greenyellow [30:49] 8 0.53%
lawngreen 50+ 1227 82.1%
All colors 1494 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00065 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 01269 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
27
Reachable functions
442
Percentage of reachable functions covered
93.89%
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
/src/flac/oss-fuzz/encoder.cc 3
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 12
/src/flac/src/libFLAC++/stream_encoder.cpp 47
/src/flac/src/libFLAC/stream_encoder.c 73
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 5
/src/flac/src/libFLAC/format.c 14
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 10
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/stream_decoder.c 37
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5

Fuzzer: fuzzer_encoder_v2

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 368 25.0%
gold [1:9] 3 0.20%
yellow [10:29] 3 0.20%
greenyellow [30:49] 1 0.06%
lawngreen 50+ 1092 74.4%
All colors 1467 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
323 431 11 :

['malloc', 'FLAC__bitreader_set_limit', 'abort', 'free', 'read_metadata_picture_', 'read_metadata_vorbiscomment_', 'FLAC__bitreader_remove_limit', 'read_metadata_cuesheet_', 'FLAC__bitreader_read_byte_block_aligned_no_crc', 'send_error_to_client_', 'FLAC__bitreader_limit_remaining']

323 499 read_metadata_ call site: 00563 /src/flac/src/libFLAC/stream_decoder.c:1452
169 169 1 :

['read_callback_ogg_aspect_']

169 169 read_callback_ call site: 01280 /src/flac/src/libFLAC/stream_decoder.c:3059
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00061 /src/flac/src/libFLAC/stream_encoder.c:1824
59 59 1 :

['FLAC__bitreader_read_utf8_uint64']

71 256 read_frame_header_ call site: 00686 /src/flac/src/libFLAC/stream_decoder.c:2482
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00339 /src/flac/src/libFLAC/stream_encoder_framing.c:356
18 20 3 :

['FLAC__bitreader_is_consumed_byte_aligned', 'FLAC__stream_decoder_get_input_bytes_unconsumed', 'abort']

18 20 FLAC__stream_decoder_get_decode_position call site: 00654 /src/flac/src/libFLAC/stream_decoder.c:880
17 17 1 :

['copy_vcentry_']

17 22 vorbiscomment_set_entry_ call site: 01061 /src/flac/src/libFLAC/metadata_object.c:265
16 16 1 :

['FLAC__ogg_decoder_aspect_reset']

16 24 FLAC__stream_decoder_reset call site: 01318 /src/flac/src/libFLAC/stream_decoder.c:938
14 262 11 :

['safe_calloc_', 'abort', 'free', 'FLAC__bitreader_get_read_crc16', 'read_zero_padding_', 'FLAC__bitreader_clear', 'write_audio_frame_to_client_', 'send_error_to_client_', 'FLAC__bitreader_rewind_to_after_last_seen_framesync', 'undo_channel_coding', 'FLAC__bitreader_read_raw_uint32']

14 262 read_frame_ call site: 00712 /src/flac/src/libFLAC/stream_decoder.c:2095
13 13 1 :

['FLAC__ogg_decoder_aspect_flush']

13 15 FLAC__stream_decoder_flush call site: 01321 /src/flac/src/libFLAC/stream_decoder.c:912
12 12 1 :

['FLAC__ogg_decoder_aspect_finish']

16 20 FLAC__stream_decoder_finish call site: 00888 /src/flac/src/libFLAC/stream_decoder.c:644
11 11 1 :

['copy_track_']

11 16 cuesheet_set_track_ call site: 01101 /src/flac/src/libFLAC/metadata_object.c:412

Runtime coverage analysis

Covered functions
320
Functions that are reachable but not covered
62
Reachable functions
373
Percentage of reachable functions covered
83.38%
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
/src/flac/oss-fuzz/encoder_v2.cc 2
/src/flac/src/libFLAC/stream_encoder.c 72
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 5
/src/flac/src/libFLAC/format.c 17
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 12
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/stream_decoder.c 38
/src/flac/src/libFLAC/bitreader.c 32
/src/ogg/src/framing.c 29
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/metadata_object.c 34
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Fuzzer: /src/flac/oss-fuzz/encoder_v2.cc

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 229 15.6%
gold [1:9] 6 0.40%
yellow [10:29] 7 0.47%
greenyellow [30:49] 2 0.13%
lawngreen 50+ 1223 83.3%
All colors 1467 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00061 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00339 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
24
Reachable functions
373
Percentage of reachable functions covered
93.57%
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
/src/flac/oss-fuzz/encoder_v2.cc 2
/src/flac/src/libFLAC/stream_encoder.c 72
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 5
/src/flac/src/libFLAC/format.c 17
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 12
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/stream_decoder.c 38
/src/flac/src/libFLAC/bitreader.c 32
/src/ogg/src/framing.c 29
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/src/libFLAC/metadata_object.c 34
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Fuzzer: /src/flac/oss-fuzz/metadata.cc

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 161 9.56%
gold [1:9] 17 1.01%
yellow [10:29] 24 1.42%
greenyellow [30:49] 14 0.83%
lawngreen 50+ 1467 87.1%
All colors 1683 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00000 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00000 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
43
Reachable functions
671
Percentage of reachable functions covered
93.59%
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
/src/flac/oss-fuzz/metadata.cc 4
/src/flac/src/libFLAC++/metadata.cpp 119
/src/flac/src/libFLAC/metadata_object.c 71
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/memory.c 1
/src/flac/src/libFLAC/metadata_iterators.c 112
/src/flac/src/libFLAC/stream_decoder.c 31
/src/flac/src/libFLAC/bitreader.c 23
/src/flac/src/libFLAC/format.c 9
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 2
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/md5.c 3
/src/flac/src/libFLAC++/../../include/FLAC++/metadata.h 24
/src/flac/oss-fuzz/../include/FLAC++/metadata.h 8
/src/flac/src/libFLAC++/../../include/share/alloc.h 3

Fuzzer: fuzzer_metadata

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 121 7.18%
gold [1:9] 10 0.59%
yellow [10:29] 33 1.96%
greenyellow [30:49] 24 1.42%
lawngreen 50+ 1495 88.8%
All colors 1683 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
14 14 1 :

['ensure_null_terminated_']

14 19 vorbiscomment_set_entry_ call site: 01356 /src/flac/src/libFLAC/metadata_object.c:265
4 22 2 :

['realloc', 'ogg_stream_clear']

4 22 _os_lacing_expand call site: 00201 /src/ogg/src/framing.c:206
2 9 2 :

['safe_malloc_', 'abort']

2 9 copy_vcentry_ call site: 00040 /src/flac/src/libFLAC/metadata_object.c:133
2 2 1 :

['strrchr']

10 10 open_tempfile_ call site: 00796 /src/flac/src/libFLAC/metadata_iterators.c:3403
2 2 1 :

['get_binary_stdin_']

2 371 init_FILE_internal_ call site: 00127 /src/flac/src/libFLAC/stream_decoder.c:497
2 2 1 :

['memcmp']

2 6 FLAC__stream_decoder_finish call site: 00250 /src/flac/src/libFLAC/stream_decoder.c:654
2 2 1 :

['abort']

2 2 FLAC::Metadata::clone(FLAC::Metadata::Prototypeconst*) call site: 00000 /src/flac/src/libFLAC++/metadata.cpp:120
0 121 1 :

['FLAC__metadata_object_vorbiscomment_append_comment']

0 121 FLAC__metadata_object_vorbiscomment_replace_comment call site: 01348 /src/flac/src/libFLAC/metadata_object.c:1306
0 37 1 :

['FLAC__bitreader_read_raw_uint32']

0 37 FLAC__bitreader_skip_bits_no_crc call site: 00366 /src/flac/src/libFLAC/bitreader.c:606
0 22 1 :

['FLAC__metadata_object_delete']

0 22 FLAC__metadata_simple_iterator_get_block call site: 00591 /src/flac/src/libFLAC/metadata_iterators.c:664
0 22 1 :

['FLAC__metadata_object_delete']

0 22 chain_prepare_for_write_ call site: 01648 /src/flac/src/libFLAC/metadata_iterators.c:1169
0 18 1 :

['set_file_stats_']

0 18 FLAC__metadata_chain_write call site: 01666 /src/flac/src/libFLAC/metadata_iterators.c:1813

Runtime coverage analysis

Covered functions
466
Functions that are reachable but not covered
54
Reachable functions
671
Percentage of reachable functions covered
91.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
/src/flac/oss-fuzz/metadata.cc 4
/src/flac/src/libFLAC++/metadata.cpp 119
/src/flac/src/libFLAC/metadata_object.c 71
/src/flac/src/libFLAC/../../include/share/alloc.h 8
/src/flac/src/libFLAC/memory.c 1
/src/flac/src/libFLAC/metadata_iterators.c 112
/src/flac/src/libFLAC/stream_decoder.c 31
/src/flac/src/libFLAC/bitreader.c 23
/src/flac/src/libFLAC/format.c 9
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 2
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/md5.c 3
/src/flac/src/libFLAC++/../../include/FLAC++/metadata.h 24
/src/flac/oss-fuzz/../include/FLAC++/metadata.h 8
/src/flac/src/libFLAC++/../../include/share/alloc.h 3

Fuzzer: /src/flac/oss-fuzz/reencoder.cc

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 241 16.0%
gold [1:9] 4 0.26%
yellow [10:29] 7 0.46%
greenyellow [30:49] 5 0.33%
lawngreen 50+ 1246 82.9%
All colors 1503 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00065 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00585 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00000 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
28
Reachable functions
482
Percentage of reachable functions covered
94.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.
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
/src/flac/oss-fuzz/reencoder.cc 4
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 10
/src/flac/src/libFLAC++/stream_encoder.cpp 46
/src/flac/src/libFLAC/stream_encoder.c 71
/src/flac/src/libFLAC/bitwriter.c 24
/src/flac/src/libFLAC/ogg_encoder_aspect.c 6
/src/flac/src/libFLAC/format.c 14
/src/flac/src/libFLAC++/stream_decoder.cpp 9
/src/flac/src/libFLAC/stream_decoder.c 41
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 10
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/libFLAC/metadata_object.c 4
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Fuzzer: fuzzer_reencoder

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 266 17.6%
gold [1:9] 8 0.53%
yellow [10:29] 12 0.79%
greenyellow [30:49] 2 0.13%
lawngreen 50+ 1215 80.8%
All colors 1503 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
89 89 4 :

['simple_ogg_page__clear', 'simple_ogg_page__get_at', 'simple_ogg_page__set_at', 'simple_ogg_page__init']

89 89 update_ogg_metadata_ call site: 01068 /src/flac/src/libFLAC/stream_encoder.c:2986
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00065 /src/flac/src/libFLAC/stream_encoder.c:1824
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00585 /src/flac/src/libFLAC/stream_encoder_framing.c:356
18 20 3 :

['FLAC__bitreader_is_consumed_byte_aligned', 'FLAC__stream_decoder_get_input_bytes_unconsumed', 'abort']

18 20 FLAC__stream_decoder_get_decode_position call site: 00888 /src/flac/src/libFLAC/stream_decoder.c:882
17 26 3 :

['FLAC__format_seektable_is_legal', 'FLAC__format_seektable_sort', 'abort']

17 26 update_metadata_ call site: 01092 /src/flac/src/libFLAC/stream_encoder.c:2838
8 262 11 :

['safe_calloc_', 'abort', 'free', 'FLAC__bitreader_get_read_crc16', 'read_zero_padding_', 'FLAC__bitreader_clear', 'write_audio_frame_to_client_', 'send_error_to_client_', 'FLAC__bitreader_rewind_to_after_last_seen_framesync', 'undo_channel_coding', 'FLAC__bitreader_read_raw_uint32']

8 262 read_frame_ call site: 00945 /src/flac/src/libFLAC/stream_decoder.c:2095
5 5 1 :

['FLAC__window_hann']

5 5 FLAC__window_tukey call site: 00429 /src/flac/src/libFLAC/window.c:203
2 9 2 :

['safe_malloc_', 'abort']

2 9 copy_vcentry_ call site: 00000 /src/flac/src/libFLAC/metadata_object.c:133
2 2 1 :

['fclose']

4 8 FLAC__stream_decoder_finish call site: 01106 /src/flac/src/libFLAC/stream_decoder.c:648
2 2 1 :

['fclose']

2 43 FLAC__stream_encoder_finish call site: 01100 /src/flac/src/libFLAC/stream_encoder.c:1531
2 2 1 :

['memcmp']

2 6 FLAC__stream_decoder_finish call site: 01109 /src/flac/src/libFLAC/stream_decoder.c:654
2 2 1 :

['abort']

2 2 FLAC__bitwriter_write_rice_signed_block call site: 00689 /src/flac/src/libFLAC/bitwriter.c:690

Runtime coverage analysis

Covered functions
425
Functions that are reachable but not covered
71
Reachable functions
482
Percentage of reachable functions covered
85.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
/src/flac/oss-fuzz/reencoder.cc 4
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp 10
/src/flac/src/libFLAC++/stream_encoder.cpp 46
/src/flac/src/libFLAC/stream_encoder.c 71
/src/flac/src/libFLAC/bitwriter.c 24
/src/flac/src/libFLAC/ogg_encoder_aspect.c 6
/src/flac/src/libFLAC/format.c 14
/src/flac/src/libFLAC++/stream_decoder.cpp 9
/src/flac/src/libFLAC/stream_decoder.c 41
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/flac/oss-fuzz/./fuzzing/memory.hpp 1
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/../../include/share/alloc.h 10
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/libFLAC/metadata_object.c 4
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Fuzzer: fuzzer_tool_metaflac

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 250 11.7%
gold [1:9] 289 13.5%
yellow [10:29] 49 2.29%
greenyellow [30:49] 65 3.05%
lawngreen 50+ 1478 69.3%
All colors 2131 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
813 813 1 :

['chain_read_ogg_cb_']

815 815 chain_read_ call site: 00655 /src/flac/src/libFLAC/metadata_iterators.c:1613
169 169 1 :

['read_callback_ogg_aspect_']

169 169 read_callback_ call site: 00710 /src/flac/src/libFLAC/stream_decoder.c:3059
53 53 1 :

['FLAC__MD5Accumulate']

53 53 write_audio_frame_to_client_ call site: 01976 /src/flac/src/libFLAC/stream_decoder.c:3261
16 16 1 :

['FLAC__ogg_decoder_aspect_reset']

16 24 FLAC__stream_decoder_reset call site: 00754 /src/flac/src/libFLAC/stream_decoder.c:938
14 14 1 :

['ensure_null_terminated_']

14 19 vorbiscomment_set_entry_ call site: 01600 /src/flac/src/libFLAC/metadata_object.c:265
13 13 1 :

['FLAC__ogg_decoder_aspect_flush']

13 15 FLAC__stream_decoder_flush call site: 00757 /src/flac/src/libFLAC/stream_decoder.c:912
12 12 1 :

['FLAC__ogg_decoder_aspect_finish']

16 20 FLAC__stream_decoder_finish call site: 00779 /src/flac/src/libFLAC/stream_decoder.c:644
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00043 /src/flac/src/share/getopt/getopt.c:785
8 8 1 :

['die']

93 311 set_vc_field call site: 01570 /src/flac/oss-fuzz/../src/metaflac/operations_shorthand_vorbiscomment.c:255
8 8 1 :

['die']

42 42 parse_block_type call site: 00321 /src/flac/oss-fuzz/../src/metaflac/options.c:1045
8 8 1 :

['die']

20 4016 do_major_operation_on_file call site: 00634 /src/flac/oss-fuzz/../src/metaflac/operations.c:120
8 8 1 :

['die']

18 18 parse_block_number call site: 00307 /src/flac/oss-fuzz/../src/metaflac/options.c:1006

Runtime coverage analysis

Covered functions
397
Functions that are reachable but not covered
121
Reachable functions
513
Percentage of reachable functions covered
76.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
/src/flac/oss-fuzz/tool_metaflac.c 1
/src/flac/oss-fuzz/./../src/metaflac/main.c 1
/src/flac/oss-fuzz/../src/metaflac/options.c 24
/src/flac/src/share/getopt/getopt1.c 1
/src/flac/src/share/getopt/getopt.c 3
/src/flac/oss-fuzz/../src/metaflac/utils.c 9
/src/flac/oss-fuzz/../include/share/alloc.h 5
/src/flac/src/libFLAC/format.c 12
/src/flac/oss-fuzz/../include/share/safe_str.h 1
/src/flac/src/share/grabbag/alloc.c 1
/src/flac/oss-fuzz/../src/metaflac/usage.c 4
/src/flac/oss-fuzz/../src/metaflac/operations.c 16
/src/flac/src/libFLAC/metadata_iterators.c 79
/src/flac/src/libFLAC/metadata_object.c 44
/src/flac/src/libFLAC/stream_decoder.c 48
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/../../include/share/alloc.h 11
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/share/utf8/utf8.c 3
/src/flac/src/libFLAC/bitwriter.c 14
/src/flac/src/libFLAC/stream_encoder_framing.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_streaminfo.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_vorbiscomment.c 8
/src/flac/src/share/grabbag/file.c 3
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_cuesheet.c 3
/src/flac/src/share/grabbag/cuesheet.c 9
/src/flac/src/share/../../include/share/safe_str.h 1
/src/flac/src/share/grabbag/snprintf.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_picture.c 3
/src/flac/src/share/grabbag/picture.c 7
/src/flac/src/share/../../include/share/alloc.h 4
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_seektable.c 3
/src/flac/src/share/grabbag/seektable.c 1
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/share/grabbag/replaygain.c 17
/src/flac/src/share/replaygain_analysis/replaygain_analysis.c 10

Fuzzer: /src/flac/oss-fuzz/tool_metaflac.c

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 490 22.9%
gold [1:9] 260 12.2%
yellow [10:29] 22 1.03%
greenyellow [30:49] 15 0.70%
lawngreen 50+ 1344 63.0%
All colors 2131 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 00000 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 00000 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 00000 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 00000 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00045 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 00000 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

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

Files reached

filename functions hit
/src/flac/oss-fuzz/tool_metaflac.c 1
/src/flac/oss-fuzz/./../src/metaflac/main.c 1
/src/flac/oss-fuzz/../src/metaflac/options.c 24
/src/flac/src/share/getopt/getopt1.c 1
/src/flac/src/share/getopt/getopt.c 3
/src/flac/oss-fuzz/../src/metaflac/utils.c 9
/src/flac/oss-fuzz/../include/share/alloc.h 5
/src/flac/src/libFLAC/format.c 12
/src/flac/oss-fuzz/../include/share/safe_str.h 1
/src/flac/src/share/grabbag/alloc.c 1
/src/flac/oss-fuzz/../src/metaflac/usage.c 4
/src/flac/oss-fuzz/../src/metaflac/operations.c 16
/src/flac/src/libFLAC/metadata_iterators.c 79
/src/flac/src/libFLAC/metadata_object.c 44
/src/flac/src/libFLAC/stream_decoder.c 48
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 6
/src/ogg/src/framing.c 26
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 3
/src/flac/src/libFLAC/crc.c 1
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/libFLAC/../../include/share/alloc.h 11
/src/flac/src/libFLAC/memory.c 3
/src/flac/src/share/utf8/utf8.c 3
/src/flac/src/libFLAC/bitwriter.c 14
/src/flac/src/libFLAC/stream_encoder_framing.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_streaminfo.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_vorbiscomment.c 8
/src/flac/src/share/grabbag/file.c 3
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_cuesheet.c 3
/src/flac/src/share/grabbag/cuesheet.c 9
/src/flac/src/share/../../include/share/safe_str.h 1
/src/flac/src/share/grabbag/snprintf.c 1
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_picture.c 3
/src/flac/src/share/grabbag/picture.c 7
/src/flac/src/share/../../include/share/alloc.h 4
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_seektable.c 3
/src/flac/src/share/grabbag/seektable.c 1
/src/flac/src/libFLAC/fixed.c 3
/src/flac/src/libFLAC/lpc.c 5
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/src/share/grabbag/replaygain.c 17
/src/flac/src/share/replaygain_analysis/replaygain_analysis.c 10

Fuzzer: fuzzer_tool_flac

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 949 29.1%
gold [1:9] 105 3.22%
yellow [10:29] 62 1.90%
greenyellow [30:49] 34 1.04%
lawngreen 50+ 2108 64.7%
All colors 3258 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
1044 1044 3 :

['chain_read_cb_', 'chain_read_ogg_cb_', 'fclose']

1044 1044 chain_read_ call site: 02933 /src/flac/src/libFLAC/metadata_iterators.c:1607
483 516 3 :

['grabbag__replaygain_store_to_vorbiscomment_reference', 'store_to_file_post_', 'FLAC__metadata_chain_delete']

483 516 grabbag__replaygain_store_to_file_reference call site: 02918 /src/flac/src/share/grabbag/replaygain.c:528
379 379 3 :

['FLAC__format_cuesheet_is_legal', 'grabbag__cuesheet_parse', 'fclose']

379 379 parse_cuesheet call site: 02250 /src/flac/oss-fuzz/../src/flac/encode.c:2587
156 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 02470 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 01531 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00550 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 01357 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 01758 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00823 /src/flac/oss-fuzz/../src/flac/decode.c:1258
19 19 1 :

['FLAC__memory_alloc_aligned_uint32_array']

161 209 resize_buffers_ call site: 01604 /src/flac/src/libFLAC/stream_encoder.c:2572
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144

Runtime coverage analysis

Covered functions
551
Functions that are reachable but not covered
246
Reachable functions
765
Percentage of reachable functions covered
67.84%
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
/src/flac/oss-fuzz/tool_flac.c 1
/src/flac/oss-fuzz/./../src/flac/main.c 25
/src/flac/src/libFLAC/metadata_object.c 49
/src/flac/src/libFLAC/../../include/share/alloc.h 12
/src/flac/oss-fuzz/../src/flac/utils.c 15
/src/flac/src/share/getopt/getopt1.c 1
/src/flac/src/share/getopt/getopt.c 3
/src/flac/src/share/grabbag/picture.c 7
/src/flac/src/share/../../include/share/alloc.h 4
/src/flac/src/share/grabbag/file.c 7
/src/flac/oss-fuzz/../src/flac/vorbiscomment.c 6
/src/flac/src/share/utf8/utf8.c 2
/src/flac/src/libFLAC/format.c 17
/src/flac/src/share/grabbag/snprintf.c 2
/src/flac/src/share/grabbag/replaygain.c 15
/src/flac/src/share/replaygain_analysis/replaygain_analysis.c 9
/src/flac/oss-fuzz/../src/flac/local_string_utils.c 2
/src/flac/oss-fuzz/../src/flac/foreign_metadata.c 22
/src/flac/src/libFLAC/metadata_iterators.c 83
/src/flac/oss-fuzz/../include/share/alloc.h 5
/src/flac/oss-fuzz/../src/flac/decode.c 21
/src/flac/oss-fuzz/../src/flac/analyze.c 7
/src/flac/src/libFLAC/stream_decoder.c 58
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 7
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/share/replaygain_synthesis/replaygain_synthesis.c 7
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/oss-fuzz/../src/flac/encode.c 33
/src/flac/src/libFLAC/stream_encoder.c 69
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 6
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/share/grabbag/cuesheet.c 7
/src/flac/src/share/../../include/share/safe_str.h 1
/src/flac/src/share/grabbag/seektable.c 1
/src/flac/oss-fuzz/../include/share/safe_str.h 1
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Fuzzer: /src/flac/oss-fuzz/tool_flac.c

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 571 17.5%
gold [1:9] 125 3.83%
yellow [10:29] 70 2.14%
greenyellow [30:49] 32 0.98%
lawngreen 50+ 2460 75.5%
All colors 3258 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 263 2 :

['FLAC__metadata_object_clone', 'flac__utils_set_channel_mask_tag']

160 1800 EncoderSession_init_encoder call site: 02470 /src/flac/oss-fuzz/../src/flac/encode.c:1909
74 74 4 :

['strchr', 'strncmp', 'strlen', 'strtod']

74 74 FLAC__stream_encoder_set_apodization call site: 01531 /src/flac/src/libFLAC/stream_encoder.c:1824
48 122 11 :

['FLAC__metadata_simple_iterator_next', 'FLAC__metadata_simple_iterator_get_block_length', 'FLAC__metadata_simple_iterator_get_application_id', 'abort', 'fread', 'unpack32be_', 'memcmp', 'FLAC__metadata_simple_iterator_get_block_type', 'FLAC__metadata_simple_iterator_get_block_offset', 'append_block_', 'fseeko']

48 122 read_from_flac_ call site: 00550 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:603
42 42 1 :

['write_to_iff_']

46 46 flac__foreign_metadata_write_to_iff call site: 01357 /src/flac/oss-fuzz/../src/flac/foreign_metadata.c:924
41 41 1 :

['FLAC__bitwriter_write_utf8_uint64']

41 255 FLAC__frame_add_header call site: 01758 /src/flac/src/libFLAC/stream_encoder_framing.c:356
28 28 1 :

['FLAC__replaygain_synthesis__apply_gain']

32 32 write_callback call site: 00823 /src/flac/oss-fuzz/../src/flac/decode.c:1258
18 18 1 :

['flac__utils_canonicalize_cue_specification']

34 34 metadata_callback call site: 00000 /src/flac/oss-fuzz/../src/flac/decode.c:1515
18 18 4 :

['__errno_location', 'safe_malloc_add_2op_.552', 'iconv', 'realloc']

26 26 iconvert call site: 00000 /src/flac/src/share/utf8/iconvert.c:144
17 17 1 :

['print_verify_error']

19 2082 EncoderSession_finish_ok call site: 02881 /src/flac/oss-fuzz/../src/flac/encode.c:1514
17 17 1 :

['print_verify_error']

17 1941 EncoderSession_finish_error call site: 02029 /src/flac/oss-fuzz/../src/flac/encode.c:1556
12 12 2 :

['strncmp', 'strlen']

12 12 share___getopt_internal call site: 00059 /src/flac/src/share/getopt/getopt.c:801
9 9 1 :

['format_mistake']

1404 16449 encode_file call site: 01419 /src/flac/oss-fuzz/./../src/flac/main.c:1804

Runtime coverage analysis

Covered functions
1178
Functions that are reachable but not covered
113
Reachable functions
765
Percentage of reachable functions covered
85.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.
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
/src/flac/oss-fuzz/tool_flac.c 1
/src/flac/oss-fuzz/./../src/flac/main.c 25
/src/flac/src/libFLAC/metadata_object.c 49
/src/flac/src/libFLAC/../../include/share/alloc.h 12
/src/flac/oss-fuzz/../src/flac/utils.c 15
/src/flac/src/share/getopt/getopt1.c 1
/src/flac/src/share/getopt/getopt.c 3
/src/flac/src/share/grabbag/picture.c 7
/src/flac/src/share/../../include/share/alloc.h 4
/src/flac/src/share/grabbag/file.c 7
/src/flac/oss-fuzz/../src/flac/vorbiscomment.c 6
/src/flac/src/share/utf8/utf8.c 2
/src/flac/src/libFLAC/format.c 17
/src/flac/src/share/grabbag/snprintf.c 2
/src/flac/src/share/grabbag/replaygain.c 15
/src/flac/src/share/replaygain_analysis/replaygain_analysis.c 9
/src/flac/oss-fuzz/../src/flac/local_string_utils.c 2
/src/flac/oss-fuzz/../src/flac/foreign_metadata.c 22
/src/flac/src/libFLAC/metadata_iterators.c 83
/src/flac/oss-fuzz/../include/share/alloc.h 5
/src/flac/oss-fuzz/../src/flac/decode.c 21
/src/flac/oss-fuzz/../src/flac/analyze.c 7
/src/flac/src/libFLAC/stream_decoder.c 58
/src/flac/src/libFLAC/bitreader.c 32
/src/flac/src/libFLAC/ogg_decoder_aspect.c 7
/src/ogg/src/framing.c 31
/src/flac/src/libFLAC/cpu.c 5
/src/flac/src/libFLAC/./include/private/bitmath.h 5
/src/flac/src/libFLAC/crc.c 3
/src/flac/src/libFLAC/md5.c 6
/src/flac/src/share/replaygain_synthesis/replaygain_synthesis.c 7
/src/flac/src/libFLAC/memory.c 7
/src/flac/src/libFLAC/fixed.c 10
/src/flac/src/libFLAC/lpc.c 19
/src/flac/src/libFLAC/bitmath.c 1
/src/flac/oss-fuzz/../src/flac/encode.c 33
/src/flac/src/libFLAC/stream_encoder.c 69
/src/flac/src/libFLAC/bitwriter.c 25
/src/flac/src/libFLAC/ogg_encoder_aspect.c 6
/src/flac/src/libFLAC/window.c 17
/src/flac/src/libFLAC/stream_encoder_framing.c 8
/src/flac/src/libFLAC/ogg_helper.c 5
/src/flac/src/share/grabbag/cuesheet.c 7
/src/flac/src/share/../../include/share/safe_str.h 1
/src/flac/src/share/grabbag/seektable.c 1
/src/flac/oss-fuzz/../include/share/safe_str.h 1
/src/flac/src/libFLAC/lpc_intrin_sse2.c 4
/src/flac/src/libFLAC/lpc_intrin_sse41.c 1
/src/flac/src/libFLAC/lpc_intrin_avx2.c 3
/src/flac/src/libFLAC/lpc_intrin_fma.c 3
/src/flac/src/libFLAC/fixed_intrin_sse2.c 1
/src/flac/src/libFLAC/fixed_intrin_ssse3.c 1
/src/flac/src/libFLAC/fixed_intrin_sse42.c 1
/src/flac/src/libFLAC/fixed_intrin_avx2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c 2
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c 1
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c 1

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

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

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
FLAC::Decoder::FuzzerStream::metadata_callback(FLAC__StreamMetadataconst*) /src/flac/oss-fuzz/decoder.cc 2 ['class.FLAC::Decoder::FuzzerStream *', 'struct.FLAC__StreamMetadata *'] 7 0 351 67 11 79 0 342 37
FLAC::Metadata::Chain::write(bool,void*,FLAC__IOCallbacks,void*,FLAC__IOCallbacks) /src/flac/src/libFLAC++/metadata.cpp 6 ['class.FLAC::Metadata::Chain *', 'N/A', 'char *', 'struct.FLAC__IOCallbacks *', 'char *', 'struct.FLAC__IOCallbacks *'] 7 0 55 5 2 43 0 245 36
FLACParser::metadata_callback(FLAC__StreamDecoderconst*,FLAC__StreamMetadataconst*,void*) /src/fuzzer_exo.cpp 3 ['struct.FLAC__StreamDecoder *', 'struct.FLAC__StreamMetadata *', 'char *'] 1 0 24 3 2 6 0 35 35

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

Functions statically reachable by fuzzers
83.0%
1159 / 1402
Cyclomatic complexity statically reachable by fuzzers
93.0%
9205 / 9917

All functions overview

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

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

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/flac/oss-fuzz/../src/flac/analyze.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/ExoPlayer/extensions/flac/src/main/jni/include/flac_parser.h ['fuzzer_exo'] ['fuzzer_exo']
/src/flac/src/libFLAC++/stream_decoder.cpp ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder'] ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder']
/src/flac/src/share/utf8/utf8.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/reencoder.cc ['/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder'] ['/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder']
/src/flac/src/share/replaygain_analysis/replaygain_analysis.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/replaygain_synthesis/replaygain_synthesis.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/encoder.cc ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc']
/src/flac/src/libFLAC/format.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../include/share/safe_str.h ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/ogg/src/framing.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/ExoPlayer/extensions/flac/src/main/jni/include/data_source.h ['fuzzer_exo'] ['fuzzer_exo']
/src/flac/oss-fuzz/./../src/flac/main.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/libFLAC/stream_encoder_intrin_avx2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/utf8/iconvert.c [] []
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_streaminfo.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/src/libFLAC/stream_encoder_framing.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/bitwriter.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/./include/private/bitmath.h ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/libFLAC/md5.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/lpc_intrin_fma.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/tool_metaflac.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c']
/src/flac/src/libFLAC/fixed_intrin_avx2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/flac/vorbiscomment.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/tool_flac.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/memory.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/metaflac/operations.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/oss-fuzz/../include/FLAC++/encoder.h [] []
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_picture.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/usr/local/bin/../include/c++/v1/stdexcept [] []
/src/flac/src/share/grabbag/alloc.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c']
/src/flac/src/libFLAC/fixed_intrin_sse42.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/grabbag/seektable.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/cpu.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC++/metadata.cpp ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata'] ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata']
/src/flac/oss-fuzz/./fuzzing/exception.hpp [] []
/src/flac/src/libFLAC++/../../include/share/alloc.h ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata'] []
/src/flac/src/share/grabbag/snprintf.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/flac/utils.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/libFLAC++/stream_encoder.cpp ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder']
/src/flac/oss-fuzz/decoder.cc ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder'] ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder']
/src/flac/oss-fuzz/metadata.cc ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata'] ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata']
/src/flac/src/libFLAC/fixed.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC++/../../include/FLAC++/decoder.h [] []
/src/flac/oss-fuzz/../src/metaflac/utils.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/oss-fuzz/../src/flac/foreign_metadata.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/share/../../include/share/safe_str.h ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/share/grabbag/picture.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/metaflac/usage.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/src/libFLAC/fixed_intrin_ssse3.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/./fuzzing/types.hpp [] []
/src/flac/src/libFLAC/crc.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/metaflac/options.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_cuesheet.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_seektable.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/oss-fuzz/../src/flac/decode.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/./../src/metaflac/main.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/src/libFLAC/fixed_intrin_sse2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/./fuzzing/datasource/datasource.hpp ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder'] []
/src/flac/src/libFLAC++/../../include/FLAC++/metadata.h ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata'] []
/src/flac/oss-fuzz/encoder_v2.cc ['fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc'] ['fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc']
/src/flac/src/libFLAC/lpc.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/stream_encoder_intrin_sse2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']
/usr/local/bin/../include/c++/v1/exception [] []
/src/flac/oss-fuzz/./fuzzing/memory.hpp ['/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder'] []
/src/flac/src/libFLAC/metadata_object.c ['fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/fuzzer_exo.cpp ['fuzzer_exo'] ['fuzzer_exo']
/src/flac/src/share/getopt/getopt1.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/stream_encoder_intrin_ssse3.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/metadata_iterators.c ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/seek.cc ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc']
/src/flac/src/libFLAC/lpc_intrin_avx2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/grabbag/cuesheet.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/stream_decoder.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/bitreader.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/ogg_encoder_aspect.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/ogg_decoder_aspect.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/getopt/getopt.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/lpc_intrin_sse2.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/ogg_helper.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/metaflac/operations_shorthand_vorbiscomment.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c'] []
/src/flac/src/libFLAC/window.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/grabbag/replaygain.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/share/grabbag/file.c ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC/stream_encoder.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/src/libFLAC++/../../include/FLAC++/encoder.h [] []
/src/flac/src/libFLAC/../../include/share/alloc.h ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/../src/flac/local_string_utils.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/../include/share/alloc.h ['fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/src/libFLAC/bitmath.c ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['fuzzer_seek', '/src/flac/oss-fuzz/seek.cc', 'fuzzer_exo', '/src/flac/oss-fuzz/decoder.cc', 'fuzzer_decoder', 'fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_metaflac', '/src/flac/oss-fuzz/tool_metaflac.c', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c']
/src/flac/oss-fuzz/../src/flac/encode.c ['fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] []
/src/flac/oss-fuzz/../include/FLAC++/metadata.h ['/src/flac/oss-fuzz/metadata.cc', 'fuzzer_metadata'] []
/src/flac/src/libFLAC/lpc_intrin_sse41.c ['fuzzer_encoder', '/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', 'fuzzer_reencoder', 'fuzzer_tool_flac', '/src/flac/oss-fuzz/tool_flac.c'] ['/src/flac/oss-fuzz/encoder.cc', 'fuzzer_encoder_v2', '/src/flac/oss-fuzz/encoder_v2.cc', '/src/flac/oss-fuzz/reencoder.cc', '/src/flac/oss-fuzz/tool_flac.c']

Directories in report

Directory
/src/flac/oss-fuzz/./../src/metaflac/
/src/flac/src/libFLAC/./include/private/
/src/flac/oss-fuzz/./../src/flac/
/src/flac/src/libFLAC++/../../include/FLAC++/
/src/flac/src/libFLAC/
/src/flac/oss-fuzz/./fuzzing/datasource/
/src/flac/oss-fuzz/../src/metaflac/
/src/
/src/flac/src/share/replaygain_analysis/
/usr/local/bin/../include/c++/v1/
/src/flac/src/share/utf8/
/src/flac/src/libFLAC++/
/src/flac/oss-fuzz/./fuzzing/
/src/flac/src/libFLAC/../../include/share/
/src/flac/oss-fuzz/../include/FLAC++/
/src/flac/src/libFLAC++/../../include/share/
/src/ExoPlayer/extensions/flac/src/main/jni/include/
/src/flac/oss-fuzz/../src/flac/
/src/ogg/src/
/src/flac/src/share/../../include/share/
/src/flac/oss-fuzz/
/src/flac/src/share/grabbag/
/src/flac/oss-fuzz/../include/share/
/src/flac/src/share/getopt/
/src/flac/src/share/replaygain_synthesis/

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
fuzzer_seek fuzzerLogFile-0-XKkXqAl4Kh.data fuzzerLogFile-0-XKkXqAl4Kh.data.yaml fuzzer_seek.covreport
/src/flac/oss-fuzz/seek.cc fuzzerLogFile-0-eDhygC4u2z.data fuzzerLogFile-0-eDhygC4u2z.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_exo fuzzerLogFile-0-YPTKCxUTzn.data fuzzerLogFile-0-YPTKCxUTzn.data.yaml fuzzer_exo.covreport
/src/flac/oss-fuzz/decoder.cc fuzzerLogFile-0-CoTXLeQfwF.data fuzzerLogFile-0-CoTXLeQfwF.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_decoder fuzzerLogFile-0-tF6Ledewc3.data fuzzerLogFile-0-tF6Ledewc3.data.yaml fuzzer_decoder.covreport
fuzzer_encoder fuzzerLogFile-0-uRawpDDTVC.data fuzzerLogFile-0-uRawpDDTVC.data.yaml fuzzer_encoder.covreport
/src/flac/oss-fuzz/encoder.cc fuzzerLogFile-0-7aplwpjxeO.data fuzzerLogFile-0-7aplwpjxeO.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_encoder_v2 fuzzerLogFile-0-6eK7mseAWj.data fuzzerLogFile-0-6eK7mseAWj.data.yaml fuzzer_encoder_v2.covreport
/src/flac/oss-fuzz/encoder_v2.cc fuzzerLogFile-0-yzZqHn6L0B.data fuzzerLogFile-0-yzZqHn6L0B.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
/src/flac/oss-fuzz/metadata.cc fuzzerLogFile-0-gPLiVYEMKs.data fuzzerLogFile-0-gPLiVYEMKs.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_metadata fuzzerLogFile-0-twhU8lc5tg.data fuzzerLogFile-0-twhU8lc5tg.data.yaml fuzzer_metadata.covreport
/src/flac/oss-fuzz/reencoder.cc fuzzerLogFile-0-vw6luqyDcm.data fuzzerLogFile-0-vw6luqyDcm.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_reencoder fuzzerLogFile-0-cbLGiphtj8.data fuzzerLogFile-0-cbLGiphtj8.data.yaml fuzzer_reencoder.covreport
fuzzer_tool_metaflac fuzzerLogFile-0-ibDWaSDj8u.data fuzzerLogFile-0-ibDWaSDj8u.data.yaml fuzzer_tool_metaflac.covreport
/src/flac/oss-fuzz/tool_metaflac.c fuzzerLogFile-0-kYWXCLHZO8.data fuzzerLogFile-0-kYWXCLHZO8.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport
fuzzer_tool_flac fuzzerLogFile-0-tktdsNkVj8.data fuzzerLogFile-0-tktdsNkVj8.data.yaml fuzzer_tool_flac.covreport
/src/flac/oss-fuzz/tool_flac.c fuzzerLogFile-0-HjlX1LE1Be.data fuzzerLogFile-0-HjlX1LE1Be.data.yaml fuzzer_exo.covreport , fuzzer_tool_metaflac.covreport , fuzzer_metadata.covreport , fuzzer_reencoder.covreport , fuzzer_tool_flac.covreport , fuzzer_encoder.covreport , fuzzer_decoder.covreport , fuzzer_seek.covreport , fuzzer_encoder_v2.covreport