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

Fuzzer details

Fuzzer: FuzzDecode

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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
6 99 [org.brotli.dec.BitReader].readBits(org.brotli.dec.State,int) call site: 00099
4 176 [org.brotli.dec.Decode].decompress(org.brotli.dec.State) call site: 00176
3 1 [FuzzDecode].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider) call site: 00001
2 23 [org.brotli.dec.Decode].decodeWindowBits(org.brotli.dec.State) call site: 00023
2 139 [org.brotli.dec.Decode].readMetablockHuffmanCodesAndContextMaps(org.brotli.dec.State) call site: 00139
2 186 [org.brotli.dec.Decode].doUseDictionary(org.brotli.dec.State,int) call site: 00186
2 209 [org.brotli.dec.Decode].decompress(org.brotli.dec.State) call site: 00209
1 18 [org.brotli.dec.Decode].decodeWindowBits(org.brotli.dec.State) call site: 00018
1 156 [org.brotli.dec.Decode].decompress(org.brotli.dec.State) call site: 00156
1 181 [org.brotli.dec.Decode].doUseDictionary(org.brotli.dec.State,int) call site: 00181
1 195 [org.brotli.dec.Decode].copyUncompressedData(org.brotli.dec.State) call site: 00195
1 213 [org.brotli.dec.Decode].decompress(org.brotli.dec.State) call site: 00213

Runtime coverage analysis

Covered functions
69
Functions that are reachable but not covered
89
Reachable functions
146
Percentage of reachable functions covered
39.04%
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
FuzzDecode 1
org.brotli.dec.BrotliInputStream 3
org.brotli.dec.State 1
org.brotli.dec.Decode 35
org.brotli.dec.BitReader 17
org.brotli.dec.BrotliRuntimeException 2
org.brotli.dec.Utils 5
org.brotli.dec.Huffman 4
org.brotli.dec.Dictionary 1
org.brotli.dec.Transform 1