Fuzz introspector: model_load_fuzzer.cc
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
330 0 EP call site: 00000 sentencepiece::SentencePieceProcessor::EncodeOptimized

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 FuzzedDataProvider::ConsumeRandomLengthString [function] [call site] 00001
1 FuzzedDataProvider::ConsumeRemainingBytesAsString [function] [call site] 00002
1 sentencepiece::SentencePieceProcessor::SentencePieceProcessor [function] [call site] 00003
1 sentencepiece::SentencePieceProcessor::LoadFromSerializedProto [function] [call site] 00004
2 std::make_unique<ModelProto> [function] [call site] 00005
2 RET_CHECK [function] [call site] 00006
2 auto::ParseFromArray [function] [call site] 00007
2 VectorBuffer::data [function] [call site] 00008
3 VectorBuffer::data [function] [call site] 00009
4 VectorBuffer::data [function] [call site] 00010
2 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00011
2 sentencepiece::SentencePieceProcessor::Load [function] [call site] 00012
3 std::make_unique<ModelProto> [function] [call site] 00013
3 RETURN_IF_ERROR [function] [call site] 00014
3 sentencepiece::io::LoadModelProto [function] [call site] 00015
4 PyListStringViewVector::empty [function] [call site] 00016
5 PyListStringViewVector::empty [function] [call site] 00017
6 PyListStringViewVector::empty [function] [call site] 00018
4 absl::NotFoundError [function] [call site] 00019
4 sentencepiece::filesystem::NewReadableFile [function] [call site] 00020
5 std::make_unique<DefaultReadableFile> [function] [call site] 00021
4 RETURN_IF_ERROR [function] [call site] 00022
4 sentencepiece::SentencePieceProcessor::status [function] [call site] 00023
5 RET_CHECK [function] [call site] 00024
5 RET_CHECK [function] [call site] 00025
5 RETURN_IF_ERROR [function] [call site] 00026
5 sentencepiece::SentencePieceProcessor::status [function] [call site] 00027
6 RET_CHECK [function] [call site] 00028
6 RET_CHECK [function] [call site] 00029
6 RETURN_IF_ERROR [function] [call site] 00030
6 sentencepiece::SentencePieceProcessor::status [function] [call site] 00031
6 RETURN_IF_ERROR [function] [call site] 00032
6 sentencepiece::SentencePieceProcessor::status [function] [call site] 00033
6 absl::OkStatus [function] [call site] 00034
5 RETURN_IF_ERROR [function] [call site] 00035
5 sentencepiece::SentencePieceProcessor::status [function] [call site] 00036
5 absl::OkStatus [function] [call site] 00037
4 sentencepiece::filesystem::PosixReadableFile::ReadAll [function] [call site] 00038
5 std::string*::assign [function] [call site] 00040
5 std::istreambuf_iterator<char> [function] [call site] 00041
5 std::istreambuf_iterator<char> [function] [call site] 00042
4 absl::InternalError [function] [call site] 00043
4 absl::StrCat [function] [call site] 00044
4 ModelProto*::ParseFromArray [function] [call site] 00045
4 std::string::data [function] [call site] 00046
4 std::string::size [function] [call site] 00047
4 absl::InternalError [function] [call site] 00048
4 absl::StrCat [function] [call site] 00049
4 absl::OkStatus [function] [call site] 00050
3 PyThreadPool::get [function] [call site] 00051
4 PyThreadPool::get [function] [call site] 00052
5 PyThreadPool::get [function] [call site] 00053
3 sentencepiece::SentencePieceProcessor::Load [function] [call site] 00054
3 std::move [function] [call site] 00055
2 std::move [function] [call site] 00056
1 sentencepiece::SentencePieceProcessor::Encode [function] [call site] 00058
2 sentencepiece::SentencePieceProcessor::EncodeOptimized [function] [call site] 00059
3 RET_CHECK_STATUS_STL [function] [call site] 00060
3 PyListStringViewVector::empty [function] [call site] 00061
3 std::vector<T>*::clear [function] [call site] 00062
3 sentencepiece::SentencePieceProcessor::ApplyExtraOptions [function] [call site] 00063
4 std::reverse [function] [call site] 00064
4 T*::mutable_pieces [function] [call site] 00065
4 T*::mutable_pieces [function] [call site] 00066
4 std::reverse [function] [call site] 00067
4 T*::begin [function] [call site] 00068
4 Darts::Details::AutoPool::append [function] [call site] 00069
5 resize_buf [function] [call site] 00070
5 sentencepiece::TEST [function] [call site] 00071
6 sentencepiece::GetTestDataPath [function] [call site] 00072
7 sentencepiece::util::JoinPath [function] [call site] 00073
8 VectorBuffer::data [function] [call site] 00074
8 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00075
7 ::testing::SrcDir [function] [call site] 00076
6 ASSERT_TRUE [function] [call site] 00077
6 ModelProto::ParseFromIstream [function] [call site] 00078
6 sentencepiece::TrainerComponents::mutable_normalizer_spec [function] [call site] 00079
6 auto*::precompiled_charsmap [function] [call site] 00080
6 ASSERT_GE [function] [call site] 00081
6 std::string::size [function] [call site] 00082
6 absl::little_endian::Store32 [function] [call site] 00083
6 const_cast<char*> [function] [call site] 00084
6 std::string::data [function] [call site] 00085
6 auto*::set_precompiled_charsmap [function] [call site] 00086
6 sentencepiece::SentencePieceProcessor::Load [function] [call site] 00087
7 std::make_unique<ModelProto> [function] [call site] 00088
7 RETURN_IF_ERROR [function] [call site] 00089
7 sentencepiece::io::LoadModelProto [function] [call site] 00090
7 PyThreadPool::get [function] [call site] 00091
7 sentencepiece::SentencePieceProcessor::Load [function] [call site] 00092
7 std::move [function] [call site] 00093
6 EXPECT_FALSE [function] [call site] 00094
6 absl::Status::ok [function] [call site] 00095
6 EXPECT_EQ [function] [call site] 00096
6 sentencepiece::SentencePieceProcessor::Encode [function] [call site] 00097
7 sentencepiece::SentencePieceProcessor::EncodeOptimized [function] [call site] 00098
6 EXPECT_EQ [function] [call site] 00099
6 absl::Status::message [function] [call site] 00100
4 sentencepiece::SentencePieceProcessor::eos_id [function] [call site] 00101
4 T*::add_pieces [function] [call site] 00102
4 auto*::set_id [function] [call site] 00103
4 auto*::set_piece [function] [call site] 00104
4 eos_piece [function] [call site] 00105
4 eos_piece [function] [call site] 00106
4 auto*::set_begin [function] [call site] 00107
4 auto*::set_end [function] [call site] 00109
4 T*::emplace_back [function] [call site] 00111
4 T*::emplace_back [function] [call site] 00112
4 eos_piece [function] [call site] 00113
4 sentencepiece::SentencePieceProcessor::bos_id [function] [call site] 00114
4 T*::mutable_pieces [function] [call site] 00115
4 sentencepiece::unigram::BoundedPriorityQueue::Add [function] [call site] 00116
4 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00121
4 auto*::SwapElements [function] [call site] 00122
4 auto*::Mutable [function] [call site] 00123
4 auto*::set_id [function] [call site] 00124
4 auto*::set_piece [function] [call site] 00125
4 bos_piece [function] [call site] 00126
4 bos_piece [function] [call site] 00127
4 auto*::set_begin [function] [call site] 00128
4 auto*::set_end [function] [call site] 00129
4 T*::emplace [function] [call site] 00130
4 T*::begin [function] [call site] 00131
4 T*::emplace [function] [call site] 00132
4 T*::begin [function] [call site] 00133
4 bos_piece [function] [call site] 00134
4 T*::pieces_size [function] [call site] 00135
4 T*::mutable_pieces [function] [call site] 00136
4 sentencepiece::SentencePieceProcessor::IsUnknown [function] [call site] 00137
5 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00138
5 sentencepiece::SentencePieceProcessor::IsUnknown [function] [call site] 00139
4 sentencepiece::string_util::IsStructurallyValid [function] [call site] 00140
5 VectorBuffer::data [function] [call site] 00141
5 VectorBuffer::data [function] [call site] 00142
5 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00143
5 sentencepiece::string_util::DecodeUTF8 [function] [call site] 00144
6 static_cast<unsigned [call site] 00145
6 static_cast<unsigned [call site] 00146
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00147
7 static_cast<signed [call site] 00148
6 sentencepiece::string_util::IsValidCodepoint [function] [call site] 00149
7 static_cast<uint32_t> [function] [call site] 00150
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00151
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00152
6 sentencepiece::string_util::IsValidCodepoint [function] [call site] 00153
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00154
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00155
6 sentencepiece::string_util::IsTrailByte [function] [call site] 00156
6 sentencepiece::string_util::IsValidCodepoint [function] [call site] 00157
5 sentencepiece::string_util::IsValidCodepoint [function] [call site] 00158
4 auto*::set_piece [function] [call site] 00159
4 unk_piece [function] [call site] 00160
4 unk_piece [function] [call site] 00161
4 sentencepiece::unigram::Lattice::Clear [function] [call site] 00162
4 Darts::DoubleArrayImpl::clear [function] [call site] 00168
4 absl::InternalError [function] [call site] 00169
4 absl::OkStatus [function] [call site] 00170
3 RETURN_IF_ERROR [function] [call site] 00171
3 sentencepiece::SentencePieceProcessor::Normalize [function] [call site] 00172
4 RET_CHECK [function] [call site] 00173
4 sentencepiece::SentencePieceProcessor::Normalize [function] [call site] 00174
3 sentencepiece::SentencePieceProcessor::Encode [function] [call site] 00175
3 ByteFallbackEnabled [function] [call site] 00176
3 sentencepiece::SentencePieceProcessor::HasUnkPieceOption [function] [call site] 00177
3 std::vector<T>*::clear [function] [call site] 00178
3 std::vector<T>*::reserve [function] [call site] 00179
3 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00180
3 RET_CHECK [function] [call site] 00181
3 PyListStringViewVector::empty [function] [call site] 00182
4 PyListStringViewVector::empty [function] [call site] 00183
3 sentencepiece::SentencePieceProcessor::IsControl [function] [call site] 00184
4 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00185
4 sentencepiece::SentencePieceProcessor::IsControl [function] [call site] 00186
3 std::vector<T>*::emplace_back [function] [call site] 00187
3 std::vector<T>*::emplace_back [function] [call site] 00188
3 VectorBuffer::data [function] [call site] 00189
3 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00190
3 sentencepiece::SentencePieceProcessor::IsUnknown [function] [call site] 00191
3 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00192
3 sentencepiece::SentencePieceProcessor::PieceToId [function] [call site] 00193
4 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00194
4 sentencepiece::SentencePieceProcessor::PieceToId [function] [call site] 00195
3 ByteToPiece [function] [call site] 00196
3 static_cast<uint8_t> [function] [call site] 00197
3 std::vector<T>*::emplace_back [function] [call site] 00198
3 std::vector<T>*::emplace_back [function] [call site] 00199
3 ByteToPiece [function] [call site] 00200
3 static_cast<uint8_t> [function] [call site] 00201
3 std::vector<T>*::emplace_back [function] [call site] 00202
3 std::vector<T>*::emplace_back [function] [call site] 00203
3 unk_piece [function] [call site] 00204
3 std::vector<T>*::emplace_back [function] [call site] 00205
3 VectorBuffer::data [function] [call site] 00206
3 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00207
3 std::vector<T>*::back [function] [call site] 00208
3 VectorBuffer::data [function] [call site] 00209
3 sentencepiece::random::ReservoirSampler::total_size [function] [call site] 00210
3 sentencepiece::SentencePieceProcessor::ApplyExtraOptions [function] [call site] 00211
1 sentencepiece::SentencePieceProcessor::Encode [function] [call site] 00212
1 std::vector::empty [function] [call site] 00213
1 sentencepiece::SentencePieceProcessor::Decode [function] [call site] 00214
2 absl::Span<const [call site] 00215
2 Darts::Details::AutoPool::append [function] [call site] 00216
3 resize_buf [function] [call site] 00217
3 sentencepiece::TEST [function] [call site] 00218
2 sentencepiece::SentencePieceProcessor::DecodeOptimized [function] [call site] 00219
3 RET_CHECK_STATUS_STL [function] [call site] 00220
3 PyListStringViewVector::empty [function] [call site] 00221
4 PyListStringViewVector::empty [function] [call site] 00222
3 absl::OkStatus [function] [call site] 00223
3 std::vector::assign [function] [call site] 00225
3 absl::Span<const [call site] 00226
3 Darts::Details::AutoPool::append [function] [call site] 00227
4 resize_buf [function] [call site] 00228
4 sentencepiece::TEST [function] [call site] 00229
3 RETURN_IF_ERROR [function] [call site] 00230
3 sentencepiece::SentencePieceProcessor::ApplyExtraOptions [function] [call site] 00231
3 trainer_spec [function] [call site] 00232
3 trainer_spec [function] [call site] 00233
3 std::string::empty [function] [call site] 00234
3 absl::OkStatus [function] [call site] 00235
3 std::string::size [function] [call site] 00236
3 sentencepiece::string_util::IsValidDecodeUTF8 [function] [call site] 00237
4 sentencepiece::string_util::DecodeUTF8 [function] [call site] 00238
3 absl::string_view [function] [call site] 00239
3 RET_CHECK_EQ [function] [call site] 00240
3 absl::StrAppend [function] [call site] 00241
3 absl::string_view [function] [call site] 00242
3 absl::StrAppend [function] [call site] 00243
3 std::string::clear [function] [call site] 00244
3 absl::OkStatus [function] [call site] 00245
3 sentencepiece::SentencePieceProcessor::GetPieceSize [function] [call site] 00246
4 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00247
4 sentencepiece::SentencePieceProcessor::GetPieceSize [function] [call site] 00248
3 absl::Status [function] [call site] 00249
3 absl::StrCat [function] [call site] 00250
3 IdToPiece [function] [call site] 00251
3 sentencepiece::SentencePieceProcessor::PieceToId [function] [call site] 00252
3 sentencepiece::SentencePieceProcessor::IsByte [function] [call site] 00253
4 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00254
4 sentencepiece::SentencePieceProcessor::IsByte [function] [call site] 00255
3 PieceToByte [function] [call site] 00256
3 RET_CHECK_LE [function] [call site] 00257
3 std::string::append [function] [call site] 00258
3 RETURN_IF_ERROR [function] [call site] 00259
3 ProcessByteQueue [function] [call site] 00260
3 std::string*::empty [function] [call site] 00261
3 sentencepiece::SentencePieceProcessor::IsControl [function] [call site] 00262
3 normalizer_spec [function] [call site] 00263
3 normalizer_spec [function] [call site] 00264
3 absl::ConsumePrefix [function] [call site] 00265
3 normalizer_spec [function] [call site] 00266
3 sentencepiece::SentencePieceProcessor::IsUnknown [function] [call site] 00267
3 IdToPiece [function] [call site] 00268
3 absl::StrAppend [function] [call site] 00269
3 absl::StrAppend [function] [call site] 00270
3 absl::StrAppend [function] [call site] 00271
3 absl::StrReplaceAll [function] [call site] 00272
3 std::string*::empty [function] [call site] 00273
3 RETURN_IF_ERROR [function] [call site] 00274
3 ProcessByteQueue [function] [call site] 00275
3 sentencepiece::SentencePieceProcessor::Normalize [function] [call site] 00276
3 absl::OkStatus [function] [call site] 00277
1 std::vector::empty [function] [call site] 00278
1 sentencepiece::SentencePieceProcessor::Decode [function] [call site] 00279
1 sentencepiece::SentencePieceProcessor::Normalize [function] [call site] 00280
1 sentencepiece::SentencePieceProcessor::GetPieceSize [function] [call site] 00281
1 sentencepiece::SentencePieceProcessor::SafeIdToPiece [function] [call site] 00282
2 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00283
2 sentencepiece::SentencePieceProcessor::GetPieceSize [function] [call site] 00284
2 IdToPiece [function] [call site] 00285
1 sentencepiece::SentencePieceProcessor::PieceToId [function] [call site] 00286
1 sentencepiece::SentencePieceProcessor::GetScore [function] [call site] 00287
2 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00288
2 sentencepiece::SentencePieceProcessor::GetScore [function] [call site] 00289
1 sentencepiece::SentencePieceProcessor::IsUnknown [function] [call site] 00290
1 sentencepiece::SentencePieceProcessor::IsControl [function] [call site] 00291
1 sentencepiece::SentencePieceProcessor::IsUnused [function] [call site] 00292
2 RET_CHECK_OR_RETURN_DEFAULT [function] [call site] 00293
2 sentencepiece::SentencePieceProcessor::IsUnused [function] [call site] 00294
1 sentencepiece::SentencePieceProcessor::IsByte [function] [call site] 00295
1 sentencepiece::SentencePieceProcessor::PieceToId [function] [call site] 00296
1 sentencepiece::SentencePieceProcessor::unk_id [function] [call site] 00297
1 sentencepiece::SentencePieceProcessor::bos_id [function] [call site] 00298
1 sentencepiece::SentencePieceProcessor::eos_id [function] [call site] 00299
1 sentencepiece::SentencePieceProcessor::pad_id [function] [call site] 00300
1 sentencepiece::SentencePieceProcessor::NBestEncode [function] [call site] 00301
2 RET_CHECK_STATUS_STL [function] [call site] 00302
2 Arena::Create<NBestSentencePieceText> [function] [call site] 00303
2 RETURN_IF_ERROR [function] [call site] 00304
2 sentencepiece::SentencePieceProcessor::NBestEncode [function] [call site] 00305
2 std::vector<std::vector<std::string>>*::reserve [function] [call site] 00306
2 auto*::nbests [function] [call site] 00307
2 auto*::nbests [function] [call site] 00308
2 std::vector<std::vector<std::string>>*::emplace_back [function] [call site] 00309
2 emplace_back [function] [call site] 00313
2 absl::OkStatus [function] [call site] 00315
1 sentencepiece::SentencePieceProcessor::SampleEncode [function] [call site] 00316
2 RET_CHECK_STATUS_STL [function] [call site] 00317
2 Arena::Create<SentencePieceText> [function] [call site] 00318
2 RETURN_IF_ERROR [function] [call site] 00319
2 sentencepiece::SentencePieceProcessor::SampleEncode [function] [call site] 00320
2 std::vector<std::string>*::reserve [function] [call site] 00321
2 auto*::pieces [function] [call site] 00322
2 auto*::pieces [function] [call site] 00323
2 std::vector<std::string>*::emplace_back [function] [call site] 00324
2 absl::OkStatus [function] [call site] 00326
1 sentencepiece::SentencePieceProcessor::EncodeAsSerializedProto [function] [call site] 00327
1 sentencepiece::SentencePieceProcessor::SampleEncodeAsSerializedProto [function] [call site] 00328
1 sentencepiece::SentencePieceProcessor::serialized_model_proto [function] [call site] 00329
2 SerializeAsString [function] [call site] 00330