Fuzz introspector: fuzz/librawspeed/decompressors/Cr2Decompressor.cpp
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
249 13 LLVMFuzzerTestOneInput call site: 00013 createPrefixCodeDecoder
5 0 EP call site: 00000
1 6 LLVMFuzzerTestOneInput call site: 00006
1 10 LLVMFuzzerTestOneInput call site: 00010

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 rawspeed::ByteStream::getI32 [function] [call site] 00002
2 rawspeed::ByteStream::get [function] [call site] 00003
3 rawspeed::ByteStream::peek [function] [call site] 00004
4 DataBuffer::get<T> [function] [call site] 00005
1 rawspeed::ByteStream::getI32 [function] [call site] 00006
1 rawspeed::ByteStream::getI32 [function] [call site] 00007
1 rawspeed::ByteStream::getI32 [function] [call site] 00008
1 rawspeed::ByteStream::getI32 [function] [call site] 00009
1 rawspeed::ByteStream::get [function] [call site] 00010
1 rawspeed::ByteStream::get [function] [call site] 00011
1 rawspeed::ByteStream::get [function] [call site] 00012
1 rawspeed::ByteStream::getU32 [function] [call site] 00013
2 rawspeed::ByteStream::get [function] [call site] 00014
1 rawspeed::ByteStream::getU32 [function] [call site] 00015
1 std::generate_n [function] [call site] 00016
1 std::back_inserter [function] [call site] 00017
1 createPrefixCodeDecoder [function] [call site] 00018
2 rawspeed::Optional::Optional [function] [call site] 00019
2 createHuffmanPrefixCodeDecoderImpl [function] [call site] 00021
3 createHuffmanCode [function] [call site] 00022
4 rawspeed::HuffmanCode::HuffmanCode [function] [call site] 00023
4 rawspeed::HuffmanCode::setNCodesPerLength [function] [call site] 00024
5 invariant [function] [call site] 00025
5 rawspeed::Buffer::getSize [function] [call site] 00026
5 std::copy [function] [call site] 00028
5 rawspeed::Buffer::begin [function] [call site] 00029
6 rawspeed::Buffer::getAsArray1DRef [function] [call site] 00030
7 implicit_cast<int> [function] [call site] 00031
5 rawspeed::Buffer::end [function] [call site] 00032
6 rawspeed::Buffer::getAsArray1DRef [function] [call site] 00033
5 rawspeed::HuffmanCode::maxCodesCount [function] [call site] 00042
5 invariant [function] [call site] 00046
4 getBuffer [function] [call site] 00051
4 getStream [function] [call site] 00052
4 getCodeValues [function] [call site] 00053
5 std::vector::reserve [function] [call site] 00054
5 std::generate_n [function] [call site] 00055
5 std::back_inserter [function] [call site] 00056
5 std::vector::size [function] [call site] 00060
4 rawspeed::HuffmanCode::setCodeValues [function] [call site] 00061
5 invariant [function] [call site] 00062
5 rawspeed::NORangesSet::size [function] [call site] 00063
6 rawspeed::NORangesSet::size [function] [call site] 00064
7 rawspeed::NORangesSet::size [function] [call site] 00065
5 invariant [function] [call site] 00066
5 static_cast<unsigned> [function] [call site] 00067
5 rawspeed::NORangesSet::size [function] [call site] 00068
5 rawspeed::HuffmanCode::maxCodesCount [function] [call site] 00069
5 rawspeed::HuffmanCode::codeValues::clear [function] [call site] 00070
5 rawspeed::HuffmanCode::codeValues::reserve [function] [call site] 00071
5 rawspeed::HuffmanCode::maxCodesCount [function] [call site] 00072
5 std::copy [function] [call site] 00073
5 rawspeed::Buffer::begin [function] [call site] 00074
6 rawspeed::Buffer::getAsArray1DRef [function] [call site] 00075
5 rawspeed::Buffer::end [function] [call site] 00076
6 rawspeed::Buffer::getAsArray1DRef [function] [call site] 00077
5 std::back_inserter [function] [call site] 00078
5 rawspeed::NORangesSet::size [function] [call site] 00080
6 rawspeed::NORangesSet::size [function] [call site] 00081
5 rawspeed::HuffmanCode::maxCodesCount [function] [call site] 00082
4 rawspeed::Array1DRef<const [call site] 00084
4 rawspeed_test::Pattern<BitStreamerMSB16, [call site] 00085
5 GenOnesBE [function] [call site] 00086
4 rawspeed::implicit_cast<rawspeed::Buffer::size_type> [function] [call site] 00087
4 rawspeed::NORangesSet::size [function] [call site] 00088
5 rawspeed::NORangesSet::size [function] [call site] 00089
3 std::move [function] [call site] 00091
2 createSimplePrefixCodeDecoderImpl [function] [call site] 00092
2 rawspeed::DngOpcodes::DngOpcode::setup [function] [call site] 00096
3 getImageCropAsRectangle [function] [call site] 00098
2 std::move [function] [call site] 00099
1 std::generate_n [function] [call site] 00100
1 std::back_inserter [function] [call site] 00101
1 rawspeed::ByteStream::getU32 [function] [call site] 00102
1 std::vector::size [function] [call site] 00103
1 rawspeed::ByteStream::check [function] [call site] 00105
2 getSubView [function] [call site] 00108
2 rawspeed::Buffer::getSize [function] [call site] 00110
2 rawspeed::ASan::RegionIsPoisoned [function] [call site] 00112
3 const_cast<void*> [function] [call site] 00113
3 __asan_region_is_poisoned [function] [call site] 00114
2 rawspeed::Buffer::begin [function] [call site] 00115
2 rawspeed::Buffer::getSize [function] [call site] 00116
1 std::vector::reserve [function] [call site] 00117
1 std::generate_n [function] [call site] 00118
1 std::back_inserter [function] [call site] 00119
1 rawspeed::ByteStream::get [function] [call site] 00120
1 std::vector::reserve [function] [call site] 00121
1 std::generate_n [function] [call site] 00122
1 std::back_inserter [function] [call site] 00123
1 rawspeed::implicit_cast<int> [function] [call site] 00124
1 std::vector::size [function] [call site] 00125
1 rawspeed::ByteStream::getSubStream [function] [call site] 00126
2 rawspeed::ByteStream::ByteStream [function] [call site] 00127
2 DataBuffer [function] [call site] 00128
2 getSubView [function] [call site] 00129
2 getByteOrder [function] [call site] 00130
1 rawspeed::RawImageData::createData [function] [call site] 00131
2 rawspeed::RawImageData::isAllocated [function] [call site] 00135
2 implicit_cast<int> [function] [call site] 00138
2 static_cast<size_t> [function] [call site] 00140
2 isAligned [function] [call site] 00142
2 __has_feature [function] [call site] 00143
2 isAligned [function] [call site] 00145
2 __has_feature [function] [call site] 00146
2 static_cast<size_t> [function] [call site] 00149
2 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00150
3 rawspeed::RawImageData::getU16DataAsUncroppedArray2DRef [function] [call site] 00151
4 reinterpret_cast<uint16_t*> [function] [call site] 00155
4 static_cast<int> [function] [call site] 00157
3 rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef [function] [call site] 00158
4 reinterpret_cast<float*> [function] [call site] 00162
4 static_cast<int> [function] [call site] 00164
3 __builtin_unreachable [function] [call site] 00165
2 isAligned [function] [call site] 00167
2 rawspeed::RawImageData::poisonPadding [function] [call site] 00169
3 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00170
3 rawspeed::ASan::PoisonMemoryRegion [function] [call site] 00171
4 __asan_poison_memory_region [function] [call site] 00172
1 rawspeed::PanasonicV7Decompressor::decompress [function] [call site] 00174
2 rawspeed::PanasonicV7Decompressor::decompressRow [function] [call site] 00175
3 getU16DataAsUncroppedArray2DRef [function] [call site] 00176
3 invariant [function] [call site] 00177
3 rawspeed::NORangesSet::size [function] [call site] 00178
4 rawspeed::NORangesSet::size [function] [call site] 00179
3 rawspeed::NORangesSet::size [function] [call site] 00180
3 getSubStream [function] [call site] 00181
3 rawspeed::ByteStream::getStream [function] [call site] 00182
4 rawspeed::ByteStream::peekStream [function] [call site] 00183
5 rawspeed::ByteStream::getSubStream [function] [call site] 00184
3 rawspeed::PanasonicV7Decompressor::decompressBlock [function] [call site] 00185
4 invariant [function] [call site] 00186
4 rawspeed::NORangesSet::size [function] [call site] 00187
5 rawspeed::NORangesSet::size [function] [call site] 00188
4 rawspeed::ByteStream::peekRemainingBuffer [function] [call site] 00189
5 getSubView [function] [call site] 00190
5 rawspeed::ByteStream::getRemainSize [function] [call site] 00191
6 invariant [function] [call site] 00192
6 rawspeed::ByteStream::check [function] [call site] 00194
4 implicit_cast<uint16_t> [function] [call site] 00197
4 rawspeed::BitStreamer::getBits [function] [call site] 00198
5 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00199
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00200
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00201
5 invariant [function] [call site] 00202
5 invariant [function] [call site] 00203
5 invariant [function] [call site] 00204
5 rawspeed::BitStreamer::fill [function] [call site] 00205
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00206
6 invariant [function] [call site] 00207
6 invariant [function] [call site] 00208
6 invariant [function] [call site] 00209
6 static_cast<Derived*> [function] [call site] 00211
6 markNumBytesAsConsumed [function] [call site] 00212
6 invariant [function] [call site] 00213
5 rawspeed::BitStreamer::getBitsNoFill [function] [call site] 00214
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00215
6 invariant [function] [call site] 00216
6 invariant [function] [call site] 00217
6 invariant [function] [call site] 00218
6 rawspeed::BitStreamer::peekBitsNoFill [function] [call site] 00219
7 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00220
7 invariant [function] [call site] 00221
7 invariant [function] [call site] 00222
7 invariant [function] [call site] 00223
6 rawspeed::BitStreamer::skipBitsNoFill [function] [call site] 00225
7 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00226
7 invariant [function] [call site] 00227
7 invariant [function] [call site] 00228
3 rawspeed::CroppedArray1DRef<T>::getBlock [function] [call site] 00230
4 rawspeed::CroppedArray1DRef<T>::establishClassInvariants [function] [call site] 00231
5 rawspeed::CroppedArray1DRef<T>::establishClassInvariants [function] [call site] 00232
5 invariant [function] [call site] 00233
5 invariant [function] [call site] 00234
5 invariant [function] [call site] 00235
5 rawspeed::CroppedArray1DRef<T>::size [function] [call site] 00236
6 rawspeed::CroppedArray1DRef<T>::establishClassInvariants [function] [call site] 00237
5 invariant [function] [call site] 00238
5 rawspeed::CroppedArray1DRef<T>::size [function] [call site] 00239
5 invariant [function] [call site] 00240
5 rawspeed::CroppedArray1DRef<T>::size [function] [call site] 00241
4 invariant [function] [call site] 00242
4 invariant [function] [call site] 00243
4 invariant [function] [call site] 00244
4 invariant [function] [call site] 00245
4 invariant [function] [call site] 00246
4 invariant [function] [call site] 00247
4 rawspeed::CroppedArray1DRef<T>::getCrop [function] [call site] 00248
5 rawspeed::CroppedArray1DRef<T>::establishClassInvariants [function] [call site] 00249
5 invariant [function] [call site] 00250
5 invariant [function] [call site] 00251
5 invariant [function] [call site] 00252
5 invariant [function] [call site] 00253
5 invariant [function] [call site] 00254
5 rawspeed::CroppedArray1DRef<T>::getCrop [function] [call site] 00255
2 __builtin_unreachable [function] [call site] 00256
1 rawspeed::MSan::CheckMemIsInitialized [function] [call site] 00257
2 __msan_check_mem_is_initialized [function] [call site] 00258
1 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00259
2 rawspeed::RawImageData::getU16DataAsUncroppedArray2DRef [function] [call site] 00260
2 rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef [function] [call site] 00261
2 __builtin_unreachable [function] [call site] 00262