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

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
124 124 1 :

['LZ4_decompress_safe_withPrefix64k']

124 124 LZ4_decompress_safe_usingDict call site: 00122 /src/lz4/lib/lz4.c:2726
0 2 1 :

['LZ4F_returnErrorCode']

0 2 LZ4F_getBlockSize call site: 00036 /src/lz4/lib/lz4frame.c:338
0 2 1 :

['LZ4F_returnErrorCode']

0 2 LZ4F_createDecompressionContext call site: 00012 /src/lz4/lib/lz4frame.c:1323
0 0 None 32 86 LZ4_XXH32_update call site: 00057 /src/lz4/lib/xxhash.c:519
0 0 None 16 84 LZ4_XXH32 call site: 00116 /src/lz4/lib/xxhash.c:411
0 0 None 0 1585 LZ4F_decompress call site: 00049 /src/lz4/lib/lz4frame.c:1749
0 0 None 0 1585 LZ4F_decompress call site: 00052 /src/lz4/lib/lz4frame.c:1792
0 0 None 0 1585 LZ4F_decompress call site: 00062 /src/lz4/lib/lz4frame.c:1844
0 0 None 0 1585 LZ4F_decompress call site: 00062 /src/lz4/lib/lz4frame.c:1850
0 0 None 0 1585 LZ4F_decompress call site: 00070 /src/lz4/lib/lz4frame.c:1887
0 0 None 0 1585 LZ4F_decompress call site: 00106 /src/lz4/lib/lz4frame.c:1915
0 0 None 0 1585 LZ4F_decompress call site: 00151 /src/lz4/lib/lz4frame.c:1956

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 FUZZ_dataProducer_create [function] [call site] 00001
2 fprintf [call site] 00002
2 abort [call site] 00003
1 FUZZ_dataProducer_retrieve32 [function] [call site] 00004
1 FUZZ_dataProducer_retrieve32 [function] [call site] 00005
1 FUZZ_dataProducer_remainingBytes [function] [call site] 00006
1 FUZZ_getRange_from_uint32 [function] [call site] 00007
1 FUZZ_getRange_from_uint32 [function] [call site] 00008
1 LZ4F_createDecompressionContext [function] [call site] 00009
2 __assert_fail [call site] 00010
2 LZ4F_returnErrorCode [function] [call site] 00011
2 LZ4F_createDecompressionContext_advanced [function] [call site] 00012
3 LZ4F_calloc [function] [call site] 00013
4 calloc [call site] 00014
2 LZ4F_returnErrorCode [function] [call site] 00015
1 fprintf [call site] 00016
1 abort [call site] 00017
1 fprintf [call site] 00018
1 abort [call site] 00019
1 fprintf [call site] 00020
1 abort [call site] 00021
1 decompress [function] [call site] 00022
2 LZ4F_resetDecompressionContext [function] [call site] 00023
2 LZ4F_decompress [function] [call site] 00024
3 __assert_fail [call site] 00025
3 __assert_fail [call site] 00026
3 LZ4F_decodeHeader [function] [call site] 00027
4 LZ4F_returnErrorCode [function] [call site] 00028
4 LZ4F_readLE32 [function] [call site] 00029
4 LZ4F_returnErrorCode [function] [call site] 00030
4 LZ4F_returnErrorCode [function] [call site] 00031
4 LZ4F_returnErrorCode [function] [call site] 00032
4 LZ4F_returnErrorCode [function] [call site] 00033
4 LZ4F_returnErrorCode [function] [call site] 00034
4 __assert_fail [call site] 00035
4 LZ4F_getBlockSize [function] [call site] 00036
5 LZ4F_returnErrorCode [function] [call site] 00037
4 LZ4F_readLE64 [function] [call site] 00038
4 LZ4F_readLE32 [function] [call site] 00039
3 LZ4F_isError [function] [call site] 00040
3 LZ4F_decodeHeader [function] [call site] 00041
3 LZ4F_isError [function] [call site] 00042
3 LZ4_XXH32_reset [function] [call site] 00043
3 LZ4F_free [function] [call site] 00044
3 LZ4F_malloc [function] [call site] 00045
3 LZ4F_returnErrorCode [function] [call site] 00046
3 LZ4F_free [function] [call site] 00047
3 LZ4F_malloc [function] [call site] 00048
3 LZ4F_returnErrorCode [function] [call site] 00049
3 LZ4F_readLE32 [function] [call site] 00050
3 LZ4F_returnErrorCode [function] [call site] 00051
3 LZ4_XXH32_reset [function] [call site] 00052
3 LZ4_XXH32_update [function] [call site] 00053
4 XXH_isLittleEndian [function] [call site] 00054
4 XXH_memcpy [function] [call site] 00055
4 XXH_read32 [function] [call site] 00056
4 XXH_swap32 [function] [call site] 00057
4 XXH32_round [function] [call site] 00058
4 XXH_memcpy [function] [call site] 00059
4 XXH32_round [function] [call site] 00060
3 LZ4_XXH32_update [function] [call site] 00061
3 LZ4F_updateDict [function] [call site] 00062
4 __assert_fail [call site] 00063
4 __assert_fail [call site] 00064
4 __assert_fail [call site] 00065
4 __assert_fail [call site] 00066
4 __assert_fail [call site] 00067
4 __assert_fail [call site] 00068
3 LZ4F_readLE32 [function] [call site] 00069
3 LZ4_XXH32_digest [function] [call site] 00070
4 XXH_isLittleEndian [function] [call site] 00071
4 XXH32_finalize [function] [call site] 00072
5 XXH_read32 [function] [call site] 00073
5 XXH_swap32 [function] [call site] 00074
5 XXH_read32 [function] [call site] 00075
5 XXH_swap32 [function] [call site] 00076
5 XXH_read32 [function] [call site] 00077
5 XXH_swap32 [function] [call site] 00078
5 XXH32_avalanche [function] [call site] 00079
5 XXH_read32 [function] [call site] 00080
5 XXH_swap32 [function] [call site] 00081
5 XXH_read32 [function] [call site] 00082
5 XXH_swap32 [function] [call site] 00083
5 XXH_read32 [function] [call site] 00084
5 XXH_swap32 [function] [call site] 00085
5 XXH32_avalanche [function] [call site] 00086
5 XXH_read32 [function] [call site] 00087
5 XXH_swap32 [function] [call site] 00088
5 XXH_read32 [function] [call site] 00089
5 XXH_swap32 [function] [call site] 00090
5 XXH_read32 [function] [call site] 00091
5 XXH_swap32 [function] [call site] 00092
5 XXH32_avalanche [function] [call site] 00093
5 XXH_read32 [function] [call site] 00094
5 XXH_swap32 [function] [call site] 00095
5 XXH_read32 [function] [call site] 00096
5 XXH_swap32 [function] [call site] 00097
5 XXH_read32 [function] [call site] 00098
5 XXH_swap32 [function] [call site] 00099
5 XXH32_avalanche [function] [call site] 00100
5 __assert_fail [call site] 00101
4 XXH32_finalize [function] [call site] 00102
3 __assert_fail [call site] 00103
3 __assert_fail [call site] 00104
3 LZ4F_readLE32 [function] [call site] 00105
3 LZ4_XXH32 [function] [call site] 00106
4 XXH_isLittleEndian [function] [call site] 00107
4 XXH_read32 [function] [call site] 00108
4 XXH_swap32 [function] [call site] 00109
4 XXH32_round [function] [call site] 00110
4 XXH_read32 [function] [call site] 00111
4 XXH_swap32 [function] [call site] 00112
4 XXH_read32 [function] [call site] 00113
4 XXH_swap32 [function] [call site] 00114
4 XXH_read32 [function] [call site] 00115
4 XXH_swap32 [function] [call site] 00116
4 XXH32_finalize [function] [call site] 00117
4 XXH32_round [function] [call site] 00118
4 XXH32_finalize [function] [call site] 00119
3 __assert_fail [call site] 00120
3 LZ4_decompress_safe_usingDict [function] [call site] 00121
4 LZ4_decompress_safe [function] [call site] 00122
5 __assert_fail [call site] 00123
5 __assert_fail [call site] 00124
5 LZ4_readLE16 [function] [call site] 00125
6 LZ4_isLittleEndian [function] [call site] 00126
6 LZ4_read16 [function] [call site] 00127
5 __assert_fail [call site] 00128
5 __assert_fail [call site] 00129
5 __assert_fail [call site] 00130
5 LZ4_write32 [function] [call site] 00131
5 __assert_fail [call site] 00132
5 __assert_fail [call site] 00133
5 LZ4_write32 [function] [call site] 00134
4 LZ4_decompress_safe_withPrefix64k [function] [call site] 00135
5 __assert_fail [call site] 00136
5 LZ4_readLE16 [function] [call site] 00137
5 LZ4_write32 [function] [call site] 00138
4 __assert_fail [call site] 00139
4 LZ4_decompress_safe_withSmallPrefix [function] [call site] 00140
5 __assert_fail [call site] 00141
5 LZ4_readLE16 [function] [call site] 00142
5 LZ4_write32 [function] [call site] 00143
4 __assert_fail [call site] 00144
4 LZ4_decompress_safe_forceExtDict [function] [call site] 00145
5 __assert_fail [call site] 00146
5 LZ4_readLE16 [function] [call site] 00147
5 LZ4_write32 [function] [call site] 00148
3 LZ4F_returnErrorCode [function] [call site] 00149
3 LZ4_XXH32_update [function] [call site] 00150
3 LZ4F_updateDict [function] [call site] 00151
3 LZ4_decompress_safe_usingDict [function] [call site] 00152
3 LZ4F_returnErrorCode [function] [call site] 00153
3 LZ4_XXH32_update [function] [call site] 00154
3 LZ4F_updateDict [function] [call site] 00155
3 LZ4F_returnErrorCode [function] [call site] 00156
3 LZ4F_resetDecompressionContext [function] [call site] 00157
3 LZ4F_readLE32 [function] [call site] 00158
3 LZ4_XXH32_digest [function] [call site] 00159
3 LZ4F_resetDecompressionContext [function] [call site] 00160
3 LZ4F_readLE32 [function] [call site] 00161
3 LZ4F_resetDecompressionContext [function] [call site] 00162
3 __assert_fail [call site] 00163
2 LZ4F_decompress_usingDict [function] [call site] 00164
3 LZ4F_decompress [function] [call site] 00165
1 decompress [function] [call site] 00166
1 decompress [function] [call site] 00167
1 decompress [function] [call site] 00168
1 LZ4F_freeDecompressionContext [function] [call site] 00169
1 FUZZ_dataProducer_free [function] [call site] 00173