Fuzz introspector: fuzz/librawspeed/decompressors/SonyArw2Decompressor.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
162 0 EP call site: 00000 rawspeed::RawImageData::createData

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 rawspeed::ByteStream::getStream [function] [call site] 00002
2 rawspeed::ByteStream::peekStream [function] [call site] 00003
3 rawspeed::ByteStream::getSubStream [function] [call site] 00004
4 rawspeed::ByteStream::ByteStream [function] [call site] 00005
4 DataBuffer [function] [call site] 00006
4 getSubView [function] [call site] 00007
4 getByteOrder [function] [call site] 00008
1 rawspeed::ByteStream::getRemainSize [function] [call site] 00009
2 invariant [function] [call site] 00010
2 rawspeed::ByteStream::check [function] [call site] 00012
3 getSubView [function] [call site] 00015
3 rawspeed::Buffer::getSize [function] [call site] 00017
3 rawspeed::ASan::RegionIsPoisoned [function] [call site] 00019
4 const_cast<void*> [function] [call site] 00020
4 __asan_region_is_poisoned [function] [call site] 00021
3 rawspeed::Buffer::begin [function] [call site] 00022
4 rawspeed::Buffer::getAsArray1DRef [function] [call site] 00023
5 implicit_cast<int> [function] [call site] 00024
3 rawspeed::Buffer::getSize [function] [call site] 00025
1 rawspeed::RawImageData::createData [function] [call site] 00027
2 rawspeed::RawImageData::isAllocated [function] [call site] 00031
2 implicit_cast<int> [function] [call site] 00034
2 static_cast<size_t> [function] [call site] 00036
2 isAligned [function] [call site] 00038
2 __has_feature [function] [call site] 00039
2 isAligned [function] [call site] 00041
2 __has_feature [function] [call site] 00042
2 static_cast<size_t> [function] [call site] 00045
2 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00046
3 rawspeed::RawImageData::getU16DataAsUncroppedArray2DRef [function] [call site] 00047
4 reinterpret_cast<uint16_t*> [function] [call site] 00051
4 static_cast<int> [function] [call site] 00053
3 rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef [function] [call site] 00054
4 reinterpret_cast<float*> [function] [call site] 00058
4 static_cast<int> [function] [call site] 00060
3 __builtin_unreachable [function] [call site] 00061
2 isAligned [function] [call site] 00063
2 rawspeed::RawImageData::poisonPadding [function] [call site] 00065
3 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00066
3 rawspeed::ASan::PoisonMemoryRegion [function] [call site] 00067
4 __asan_poison_memory_region [function] [call site] 00068
1 rawspeed::SonyArw2Decompressor::decompress [function] [call site] 00070
2 rawspeed::SonyArw2Decompressor::decompressThread [function] [call site] 00071
3 invariant [function] [call site] 00072
3 invariant [function] [call site] 00073
3 invariant [function] [call site] 00074
3 rawspeed::SonyArw2Decompressor::decompressRow [function] [call site] 00075
4 getU16DataAsUncroppedArray2DRef [function] [call site] 00076
4 invariant [function] [call site] 00077
4 rawspeed::Array2DRef<T>::width [function] [call site] 00078
5 rawspeed::Array2DRef<T>::establishClassInvariants [function] [call site] 00079
6 rawspeed::Array2DRef<T>::establishClassInvariants [function] [call site] 00080
6 invariant [function] [call site] 00081
6 invariant [function] [call site] 00082
6 invariant [function] [call site] 00083
6 invariant [function] [call site] 00084
6 invariant [function] [call site] 00085
6 invariant [function] [call site] 00086
6 invariant [function] [call site] 00087
4 invariant [function] [call site] 00089
4 rawspeed::Array2DRef<T>::width [function] [call site] 00090
4 reinterpret_cast<RawImageDataU16&> [function] [call site] 00091
4 rawspeed::ByteStream::skipBytes [function] [call site] 00092
5 rawspeed::ByteStream::check [function] [call site] 00093
4 rawspeed::Array2DRef<T>::width [function] [call site] 00094
4 rawspeed::ByteStream::peekStream [function] [call site] 00095
5 rawspeed::ByteStream::getSubStream [function] [call site] 00096
4 rawspeed::Array2DRef<T>::width [function] [call site] 00097
4 rawspeed::ByteStream::peekRemainingBuffer [function] [call site] 00098
5 getSubView [function] [call site] 00099
5 rawspeed::ByteStream::getRemainSize [function] [call site] 00100
4 rawspeed::BitStreamer::peekBits [function] [call site] 00101
5 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00102
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00103
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00104
5 invariant [function] [call site] 00105
5 invariant [function] [call site] 00106
5 invariant [function] [call site] 00107
5 rawspeed::BitStreamer::fill [function] [call site] 00108
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00109
6 invariant [function] [call site] 00110
6 invariant [function] [call site] 00111
6 invariant [function] [call site] 00112
6 static_cast<Derived*> [function] [call site] 00114
6 markNumBytesAsConsumed [function] [call site] 00115
6 invariant [function] [call site] 00116
5 rawspeed::BitStreamer::peekBitsNoFill [function] [call site] 00117
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00118
6 invariant [function] [call site] 00119
6 invariant [function] [call site] 00120
6 invariant [function] [call site] 00121
4 rawspeed::Array2DRef<T>::width [function] [call site] 00123
4 rawspeed::BitStreamer::getBits [function] [call site] 00124
5 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00125
5 invariant [function] [call site] 00126
5 invariant [function] [call site] 00127
5 invariant [function] [call site] 00128
5 rawspeed::BitStreamer::fill [function] [call site] 00129
5 rawspeed::BitStreamer::getBitsNoFill [function] [call site] 00130
6 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00131
6 invariant [function] [call site] 00132
6 invariant [function] [call site] 00133
6 invariant [function] [call site] 00134
6 rawspeed::BitStreamer::peekBitsNoFill [function] [call site] 00135
6 rawspeed::BitStreamer::skipBitsNoFill [function] [call site] 00136
7 rawspeed::BitStreamer::establishClassInvariants [function] [call site] 00137
7 invariant [function] [call site] 00138
7 invariant [function] [call site] 00139
4 rawspeed::BitStreamer::getBits [function] [call site] 00141
4 rawspeed::BitStreamer::getBits [function] [call site] 00142
4 rawspeed::BitStreamer::getBits [function] [call site] 00143
4 rawspeed::BitStreamer::getBits [function] [call site] 00145
4 setWithLookUp [function] [call site] 00147
4 implicit_cast<uint16_t> [function] [call site] 00148
4 reinterpret_cast<std::byte*> [function] [call site] 00149
3 __builtin_unreachable [function] [call site] 00153
2 isTooManyErrors [function] [call site] 00154
2 std::string::c_str [function] [call site] 00156
1 rawspeed::MSan::CheckMemIsInitialized [function] [call site] 00157
2 __msan_check_mem_is_initialized [function] [call site] 00158
1 rawspeed::RawImageData::getByteDataAsUncroppedArray2DRef [function] [call site] 00159
2 rawspeed::RawImageData::getU16DataAsUncroppedArray2DRef [function] [call site] 00160
2 rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef [function] [call site] 00161
2 __builtin_unreachable [function] [call site] 00162