Fuzz introspector: zstd_frame_info
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
0 0 None 0 2 ZSTDv01_findFrameSizeInfoLegacy call site: 00086 /src/zstd/lib/legacy/zstd_v01.c:1994
0 0 1 :

['MEM_swap32.4328']

0 0 MEM_writeLE32 call site: 00052 /src/zstd/lib/dictBuilder/../common/mem.h:336
0 0 None 0 0 ZSTD_getDecompressedSize_legacy call site: 00014 /src/zstd/lib/decompress/../legacy/zstd_legacy.h:110
0 0 None 0 0 ZSTDv02_findFrameSizeInfoLegacy call site: 00095 /src/zstd/lib/legacy/zstd_v02.c:3295
0 0 None 0 0 ZSTDv03_findFrameSizeInfoLegacy call site: 00106 /src/zstd/lib/legacy/zstd_v03.c:2934
0 0 None 0 0 ZSTDv04_findFrameSizeInfoLegacy call site: 00117 /src/zstd/lib/legacy/zstd_v04.c:3105
0 0 None 0 0 ZSTDv05_findFrameSizeInfoLegacy call site: 00128 /src/zstd/lib/legacy/zstd_v05.c:3496
0 0 None 0 0 ZSTDv06_findFrameSizeInfoLegacy call site: 00139 /src/zstd/lib/legacy/zstd_v06.c:3630
0 0 None 0 0 ZSTDv07_getFrameParams call site: 00028 /src/zstd/lib/legacy/zstd_v07.c:3101
0 0 None 0 0 ZSTDv07_findFrameSizeInfoLegacy call site: 00149 /src/zstd/lib/legacy/zstd_v07.c:3874
0 0 None 0 0 ZSTDv07_findFrameSizeInfoLegacy call site: 00151 /src/zstd/lib/legacy/zstd_v07.c:3878
0 0 1 :

['MEM_swap32.6172']

0 0 MEM_readLE32 call site: 00006 /src/zstd/lib/legacy/zstd_v07.c:351

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 ZSTD_getFrameContentSize [function] [call site] 00001
2 ZSTD_isLegacy [function] [call site] 00002
3 MEM_readLE32 [function] [call site] 00003
4 MEM_isLittleEndian [function] [call site] 00004
4 MEM_read32 [function] [call site] 00005
4 MEM_read32 [function] [call site] 00006
2 ZSTD_getDecompressedSize_legacy [function] [call site] 00007
3 ZSTD_isLegacy [function] [call site] 00008
3 ZSTDv05_getFrameParams [function] [call site] 00009
4 MEM_readLE32 [function] [call site] 00010
5 MEM_isLittleEndian [function] [call site] 00011
5 MEM_read32 [function] [call site] 00012
5 MEM_read32 [function] [call site] 00013
3 ZSTDv06_getFrameParams [function] [call site] 00014
4 MEM_readLE32 [function] [call site] 00015
5 MEM_isLittleEndian [function] [call site] 00016
5 MEM_read32 [function] [call site] 00017
5 MEM_read32 [function] [call site] 00018
4 ZSTDv06_frameHeaderSize [function] [call site] 00019
4 MEM_readLE16 [function] [call site] 00020
5 MEM_isLittleEndian [function] [call site] 00021
5 MEM_read16 [function] [call site] 00022
4 MEM_readLE64 [function] [call site] 00023
5 MEM_isLittleEndian [function] [call site] 00024
5 MEM_read64 [function] [call site] 00025
5 MEM_read64 [function] [call site] 00026
3 ZSTDv07_getFrameParams [function] [call site] 00027
4 MEM_readLE32 [function] [call site] 00028
5 MEM_isLittleEndian [function] [call site] 00029
5 MEM_read32 [function] [call site] 00030
5 MEM_read32 [function] [call site] 00031
4 MEM_readLE32 [function] [call site] 00032
4 MEM_readLE32 [function] [call site] 00033
4 ZSTDv07_frameHeaderSize [function] [call site] 00034
4 MEM_32bits [function] [call site] 00035
4 MEM_32bits [function] [call site] 00036
4 MEM_readLE16 [function] [call site] 00037
5 MEM_isLittleEndian [function] [call site] 00038
5 MEM_read16 [function] [call site] 00039
4 MEM_readLE32 [function] [call site] 00040
4 MEM_readLE16 [function] [call site] 00041
4 MEM_readLE32 [function] [call site] 00042
4 MEM_readLE64 [function] [call site] 00043
5 MEM_isLittleEndian [function] [call site] 00044
5 MEM_read64 [function] [call site] 00045
5 MEM_read64 [function] [call site] 00046
2 ZSTD_getFrameHeader [function] [call site] 00047
3 ZSTD_getFrameHeader_advanced [function] [call site] 00048
4 ZSTD_startingInputLength [function] [call site] 00049
5 __assert_fail [call site] 00050
4 MEM_writeLE32 [function] [call site] 00051
5 MEM_isLittleEndian [function] [call site] 00052
5 MEM_write32 [function] [call site] 00053
5 MEM_swap32 [function] [call site] 00054
4 __assert_fail [call site] 00055
4 MEM_readLE32 [function] [call site] 00056
4 MEM_writeLE32 [function] [call site] 00057
4 MEM_readLE32 [function] [call site] 00058
4 MEM_readLE32 [function] [call site] 00059
4 MEM_readLE32 [function] [call site] 00060
4 MEM_readLE32 [function] [call site] 00061
4 ZSTD_frameHeaderSize_internal [function] [call site] 00062
5 ZSTD_startingInputLength [function] [call site] 00063
4 __assert_fail [call site] 00064
4 MEM_readLE16 [function] [call site] 00065
5 MEM_isLittleEndian [function] [call site] 00066
5 MEM_read16 [function] [call site] 00067
4 MEM_readLE32 [function] [call site] 00068
4 __assert_fail [call site] 00069
4 MEM_readLE16 [function] [call site] 00070
4 MEM_readLE32 [function] [call site] 00071
4 MEM_readLE64 [function] [call site] 00072
5 MEM_isLittleEndian [function] [call site] 00073
5 MEM_read64 [function] [call site] 00074
5 MEM_read64 [function] [call site] 00075
1 ZSTD_getDecompressedSize [function] [call site] 00076
2 ZSTD_getFrameContentSize [function] [call site] 00077
1 ZSTD_findFrameCompressedSize [function] [call site] 00078
2 ZSTD_findFrameCompressedSize_advanced [function] [call site] 00079
3 ZSTD_findFrameSizeInfo [function] [call site] 00080
4 ZSTD_isLegacy [function] [call site] 00081
4 ZSTD_findFrameSizeInfoLegacy [function] [call site] 00082
5 ZSTD_isLegacy [function] [call site] 00083
5 ZSTDv01_findFrameSizeInfoLegacy [function] [call site] 00084
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00085
6 ZSTD_readBE32 [function] [call site] 00086
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00087
6 ZSTDv01_getcBlockSize [function] [call site] 00088
6 ZSTDv01_isError [function] [call site] 00089
7 ERR_isError [function] [call site] 00090
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00091
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00092
5 ZSTDv02_findFrameSizeInfoLegacy [function] [call site] 00093
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00094
6 MEM_readLE32 [function] [call site] 00095
7 MEM_isLittleEndian [function] [call site] 00096
7 MEM_read32 [function] [call site] 00097
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00098
6 ZSTD_getcBlockSize [function] [call site] 00099
6 ZSTD_isError [function] [call site] 00100
7 ERR_isError [function] [call site] 00101
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00102
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00103
5 ZSTDv03_findFrameSizeInfoLegacy [function] [call site] 00104
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00105
6 MEM_readLE32 [function] [call site] 00106
7 MEM_isLittleEndian [function] [call site] 00107
7 MEM_read32 [function] [call site] 00108
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00109
6 ZSTD_getcBlockSize [function] [call site] 00110
6 ZSTD_isError [function] [call site] 00111
7 ERR_isError [function] [call site] 00112
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00113
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00114
5 ZSTDv04_findFrameSizeInfoLegacy [function] [call site] 00115
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00116
6 MEM_readLE32 [function] [call site] 00117
7 MEM_isLittleEndian [function] [call site] 00118
7 MEM_read32 [function] [call site] 00119
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00120
6 ZSTD_getcBlockSize [function] [call site] 00121
6 ZSTD_isError [function] [call site] 00122
7 ERR_isError [function] [call site] 00123
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00124
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00125
5 ZSTDv05_findFrameSizeInfoLegacy [function] [call site] 00126
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00127
6 MEM_readLE32 [function] [call site] 00128
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00129
6 ZSTDv05_getcBlockSize [function] [call site] 00130
6 ZSTDv05_isError [function] [call site] 00131
7 ERR_isError [function] [call site] 00132
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00133
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00134
5 ZSTDv06_findFrameSizeInfoLegacy [function] [call site] 00135
6 ZSTDv06_frameHeaderSize [function] [call site] 00136
6 ERR_isError [function] [call site] 00137
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00138
6 MEM_readLE32 [function] [call site] 00139
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00140
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00141
6 ZSTDv06_getcBlockSize [function] [call site] 00142
6 ERR_isError [function] [call site] 00143
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00144
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00145
5 ZSTDv07_findFrameSizeInfoLegacy [function] [call site] 00146
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00147
6 ZSTDv07_frameHeaderSize [function] [call site] 00148
6 ERR_isError [function] [call site] 00149
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00150
6 MEM_readLE32 [function] [call site] 00151
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00152
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00153
6 ZSTDv07_getcBlockSize [function] [call site] 00154
6 ERR_isError [function] [call site] 00155
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00156
6 ZSTD_errorFrameSizeInfoLegacy [function] [call site] 00157
5 ERR_isError [function] [call site] 00158
5 __assert_fail [call site] 00159
4 MEM_readLE32 [function] [call site] 00160
4 readSkippableFrameSize [function] [call site] 00161
5 MEM_readLE32 [function] [call site] 00162
4 ERR_isError [function] [call site] 00163
4 __assert_fail [call site] 00164
4 ZSTD_getFrameHeader_advanced [function] [call site] 00165
4 ERR_isError [function] [call site] 00166
4 ZSTD_errorFrameSizeInfo [function] [call site] 00167
4 ZSTD_errorFrameSizeInfo [function] [call site] 00168
4 ZSTD_getcBlockSize [function] [call site] 00169
5 MEM_readLE24 [function] [call site] 00170
6 MEM_readLE16 [function] [call site] 00171
4 ERR_isError [function] [call site] 00172
4 ZSTD_errorFrameSizeInfo [function] [call site] 00173
4 ZSTD_errorFrameSizeInfo [function] [call site] 00174
4 ZSTD_errorFrameSizeInfo [function] [call site] 00175
1 ZSTD_getDictID_fromFrame [function] [call site] 00176
2 ZSTD_getFrameHeader [function] [call site] 00177
2 ERR_isError [function] [call site] 00178
1 ZSTD_findDecompressedSize [function] [call site] 00179
2 ZSTD_startingInputLength [function] [call site] 00180
2 MEM_readLE32 [function] [call site] 00181
2 readSkippableFrameSize [function] [call site] 00182
2 ERR_isError [function] [call site] 00183
2 __assert_fail [call site] 00184
2 ZSTD_getFrameContentSize [function] [call site] 00185
2 ZSTD_findFrameCompressedSize [function] [call site] 00186
2 ERR_isError [function] [call site] 00187
2 __assert_fail [call site] 00188
1 ZSTD_decompressBound [function] [call site] 00189
2 ZSTD_findFrameSizeInfo [function] [call site] 00190
2 ERR_isError [function] [call site] 00191
2 __assert_fail [call site] 00192
1 ZSTD_frameHeaderSize [function] [call site] 00193
2 ZSTD_frameHeaderSize_internal [function] [call site] 00194
1 ZSTD_isFrame [function] [call site] 00195
2 MEM_readLE32 [function] [call site] 00196
2 ZSTD_isLegacy [function] [call site] 00197
1 ZSTD_getFrameHeader [function] [call site] 00198
1 ZSTD_getFrameHeader_advanced [function] [call site] 00199