Fuzz introspector: roundtrip_binary
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
172 306 thrift::protocol::prealloc_size call site: 00306 TestUnion::read_from_in_protocol
52 253 BasicTypes::read_from_in_protocol call site: 00253 Containers::read_from_in_protocol
25 22 TCompactInputProtocol::read_varint32 call site: 00022 TCompactInputProtocol::read_binary_len
17 51 TConfiguration::default call site: 00051
13 106 TBufferChannel::set_readable_bytes call site: 00106 FuzzTest::read_from_in_protocol
11 70 Option::build call site: 00070
10 3 TConfiguration::builder call site: 00003 TCompactInputProtocol::read_binary_len
7 203 TInputProtocol::skip_till_depth call site: 00203
4 14 TCompactInputProtocol::read_varint32 call site: 00014
4 95 TBufferChannel::empty_read_buffer call site: 00095
4 170 BasicTypes::read_from_in_protocol call site: 00170
3 89 TBufferChannel::with_capacity call site: 00089 TCompactInputProtocol::read_binary_len

Fuzzer calltree

0 fuzz_target [function] [call site] 00000
1 run [function] [call site] 00001
2 TConfiguration::builder [function] [call site] 00002
3 CalculatorServer::default [function] [call site] 00003
4 SharedStruct::new [function] [call site] 00004
5 PrivateKeyDer::into [function] [call site] 00005
5 BTreeMap::into [function] [call site] 00006
4 SharedStruct::new [function] [call site] 00007
5 PrivateKeyDer::into [function] [call site] 00008
5 BTreeMap::into [function] [call site] 00009
2 TConfigurationBuilder::max_message_size [function] [call site] 00010
2 TCompactInputProtocol::read_binary_len [function] [call site] 00012
3 TCompactInputProtocol::read_varint32 [function] [call site] 00013
4 TCompactInputProtocol::read_byte [function] [call site] 00014
5 read_exact [function] [call site] 00015
5 ThriftTestSyncHandlerImpl::handle_test_map [function] [call site] 00017
4 crate::Error::Protocol [function] [call site] 00021
4 ProtocolError::new [function] [call site] 00022
5 crate::Result::into [function] [call site] 00023
3 TConfiguration::max_string_size [function] [call site] 00024
3 crate::Error::Protocol [function] [call site] 00026
3 ProtocolError::new [function] [call site] 00027
2 TConfiguration::max_frame_size [function] [call site] 00029
2 TCompactInputProtocol::read_binary_len [function] [call site] 00031
2 TConfiguration::max_container_size [function] [call site] 00032
2 TConfiguration::max_string_size [function] [call site] 00034
2 TCompactInputProtocol::read_binary_len [function] [call site] 00036
2 Option::build [function] [call site] 00037
3 TTlsClientChannel::split [function] [call site] 00038
4 ReadHalf::new [function] [call site] 00040
4 TSharedChannel::clone [function] [call site] 00041
5 TSharedChannel::clone [function] [call site] 00042
6 TSharedChannel::clone [function] [call site] 00043
4 WriteHalf::new [function] [call site] 00044
3 TFramedReadTransport::new [function] [call site] 00045
4 TFramedReadTransport::with_capacity [function] [call site] 00046
3 TFramedWriteTransport::new [function] [call site] 00052
4 TFramedWriteTransport::with_capacity [function] [call site] 00053
5 TBufferedReadTransport::with_capacity [function] [call site] 00054
6 into_boxed_slice [function] [call site] 00055
3 SharedStruct::new [function] [call site] 00056
4 PrivateKeyDer::into [function] [call site] 00057
4 BTreeMap::into [function] [call site] 00058
3 TBinaryInputProtocol::new [function] [call site] 00059
4 TCompactInputProtocol::with_config [function] [call site] 00060
5 SharedStruct::new [function] [call site] 00061
6 PrivateKeyDer::into [function] [call site] 00062
6 BTreeMap::into [function] [call site] 00063
4 TConfiguration::default [function] [call site] 00064
3 SharedStruct::new [function] [call site] 00065
3 TBinaryOutputProtocol::new [function] [call site] 00066
4 TCompactInputProtocol::with_config [function] [call site] 00067
4 TConfiguration::default [function] [call site] 00068
3 SharedStruct::new [function] [call site] 00069
3 TCompactInputProtocol::new [function] [call site] 00070
4 TCompactInputProtocol::with_config [function] [call site] 00071
4 TConfiguration::default [function] [call site] 00072
3 SharedStruct::new [function] [call site] 00073
3 TCompactOutputProtocol::new [function] [call site] 00074
4 TCompactInputProtocol::with_config [function] [call site] 00075
4 TConfiguration::default [function] [call site] 00076
2 thrift::Result::unwrap [function] [call site] 00080
2 TBufferChannel::with_capacity [function] [call site] 00081
3 SharedStruct::new [function] [call site] 00082
4 PrivateKeyDer::into [function] [call site] 00083
4 BTreeMap::into [function] [call site] 00084
3 SharedStruct::new [function] [call site] 00085
3 into_boxed_slice [function] [call site] 00086
3 SharedStruct::new [function] [call site] 00087
3 SharedStruct::new [function] [call site] 00088
3 into_boxed_slice [function] [call site] 00089
2 TCompactInputProtocol::read_binary_len [function] [call site] 00090
2 TCompactInputProtocol::read_binary_len [function] [call site] 00091
2 TBufferChannel::set_readable_bytes [function] [call site] 00092
3 TBufferChannel::empty_read_buffer [function] [call site] 00093
4 TSharedChannel::lock [function] [call site] 00095
5 TSharedChannel::lock [function] [call site] 00096
5 io::Error::new [function] [call site] 00098
6 crate::Result::into [function] [call site] 00099
3 TSharedChannel::lock [function] [call site] 00102
3 TCompactInputProtocol::read_binary_len [function] [call site] 00105
3 clone_from_slice [function] [call site] 00106
2 TCompactInputProtocol::with_config [function] [call site] 00107
3 SharedStruct::new [function] [call site] 00108
2 FuzzTest::read_from_in_protocol [function] [call site] 00109
3 TStoredInputProtocol::read_struct_begin [function] [call site] 00110
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00111
5 TStoredInputProtocol::read_struct_begin [function] [call site] 00112
3 SharedStruct::new [function] [call site] 00115
3 TStoredInputProtocol::read_field_begin [function] [call site] 00116
4 TStoredInputProtocol::read_field_begin [function] [call site] 00117
5 TStoredInputProtocol::read_field_begin [function] [call site] 00118
3 thrift::protocol::field_id [function] [call site] 00119
4 ok_or_else [function] [call site] 00120
4 crate::Error::Protocol [function] [call site] 00121
3 BasicTypes::read_from_in_protocol [function] [call site] 00122
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00123
4 Operation::from [function] [call site] 00130
5 Operation::from [function] [call site] 00131
6 Operation::from [function] [call site] 00132
4 &str::to_owned [function] [call site] 00134
4 SharedStruct::new [function] [call site] 00136
4 uuid::Uuid::nil [function] [call site] 00138
4 TStoredInputProtocol::read_field_begin [function] [call site] 00139
4 thrift::protocol::field_id [function] [call site] 00140
4 TStoredInputProtocol::read_bool [function] [call site] 00141
5 TStoredInputProtocol::read_bool [function] [call site] 00142
6 TStoredInputProtocol::read_bool [function] [call site] 00143
4 TStoredInputProtocol::read_i8 [function] [call site] 00145
5 TStoredInputProtocol::read_i8 [function] [call site] 00146
6 TStoredInputProtocol::read_i8 [function] [call site] 00147
4 TStoredInputProtocol::read_i16 [function] [call site] 00149
5 TStoredInputProtocol::read_i16 [function] [call site] 00150
6 TStoredInputProtocol::read_i16 [function] [call site] 00151
4 TStoredInputProtocol::read_i32 [function] [call site] 00153
5 TStoredInputProtocol::read_i32 [function] [call site] 00154
6 TStoredInputProtocol::read_i32 [function] [call site] 00155
4 TStoredInputProtocol::read_i64 [function] [call site] 00157
5 TStoredInputProtocol::read_i64 [function] [call site] 00158
6 TStoredInputProtocol::read_i64 [function] [call site] 00159
4 Operation::from [function] [call site] 00161
4 TStoredInputProtocol::read_double [function] [call site] 00162
5 TStoredInputProtocol::read_double [function] [call site] 00163
6 TStoredInputProtocol::read_double [function] [call site] 00164
4 TStoredInputProtocol::read_string [function] [call site] 00166
5 TStoredInputProtocol::read_string [function] [call site] 00167
6 TStoredInputProtocol::read_string [function] [call site] 00168
4 TBufferChannel::read_bytes [function] [call site] 00170
5 TSharedChannel::lock [function] [call site] 00172
5 copy_from_slice [function] [call site] 00174
4 TStoredInputProtocol::read_uuid [function] [call site] 00176
5 TStoredInputProtocol::read_uuid [function] [call site] 00177
6 TStoredInputProtocol::read_uuid [function] [call site] 00178
4 TInputProtocol::skip [function] [call site] 00180
5 TInputProtocol::skip_till_depth [function] [call site] 00181
6 crate::Error::Protocol [function] [call site] 00183
6 TStoredInputProtocol::read_bool [function] [call site] 00184
7 TStoredInputProtocol::read_bool [function] [call site] 00185
6 crate::Result::map [function] [call site] 00186
6 TStoredInputProtocol::read_i8 [function] [call site] 00188
7 TStoredInputProtocol::read_i8 [function] [call site] 00189
6 crate::Result::map [function] [call site] 00190
6 TStoredInputProtocol::read_i16 [function] [call site] 00191
7 TStoredInputProtocol::read_i16 [function] [call site] 00192
6 crate::Result::map [function] [call site] 00193
6 TStoredInputProtocol::read_i32 [function] [call site] 00194
7 TStoredInputProtocol::read_i32 [function] [call site] 00195
6 crate::Result::map [function] [call site] 00196
6 TStoredInputProtocol::read_i64 [function] [call site] 00197
7 TStoredInputProtocol::read_i64 [function] [call site] 00198
6 crate::Result::map [function] [call site] 00199
6 TStoredInputProtocol::read_double [function] [call site] 00200
7 TStoredInputProtocol::read_double [function] [call site] 00201
6 crate::Result::map [function] [call site] 00202
6 TInputProtocol::skip_binary [function] [call site] 00203
7 TBufferChannel::read_bytes [function] [call site] 00204
8 TSharedChannel::lock [function] [call site] 00206
8 copy_from_slice [function] [call site] 00208
7 ThriftTestSyncHandlerImpl::handle_test_map [function] [call site] 00209
6 TStoredInputProtocol::read_uuid [function] [call site] 00211
7 TStoredInputProtocol::read_uuid [function] [call site] 00212
6 crate::Result::map [function] [call site] 00213
6 TStoredInputProtocol::read_struct_begin [function] [call site] 00214
7 TStoredInputProtocol::read_struct_begin [function] [call site] 00215
6 TStoredInputProtocol::read_field_begin [function] [call site] 00216
7 TStoredInputProtocol::read_field_begin [function] [call site] 00217
6 TInputProtocol::skip_till_depth [function] [call site] 00218
6 TStoredInputProtocol::read_struct_end [function] [call site] 00219
7 TStoredInputProtocol::read_struct_end [function] [call site] 00220
8 TStoredInputProtocol::read_struct_end [function] [call site] 00221
6 TStoredInputProtocol::read_list_begin [function] [call site] 00222
7 TStoredInputProtocol::read_list_begin [function] [call site] 00223
8 TStoredInputProtocol::read_list_begin [function] [call site] 00224
6 TInputProtocol::skip_till_depth [function] [call site] 00225
6 TStoredInputProtocol::read_list_end [function] [call site] 00226
7 TStoredInputProtocol::read_list_end [function] [call site] 00227
8 TStoredInputProtocol::read_list_end [function] [call site] 00228
6 TStoredInputProtocol::read_set_begin [function] [call site] 00229
7 TStoredInputProtocol::read_set_begin [function] [call site] 00230
8 TStoredInputProtocol::read_set_begin [function] [call site] 00231
6 TInputProtocol::skip_till_depth [function] [call site] 00232
6 TStoredInputProtocol::read_set_end [function] [call site] 00233
7 TStoredInputProtocol::read_set_end [function] [call site] 00234
8 TStoredInputProtocol::read_set_end [function] [call site] 00235
6 TStoredInputProtocol::read_map_begin [function] [call site] 00236
7 TStoredInputProtocol::read_map_begin [function] [call site] 00237
8 TStoredInputProtocol::read_map_begin [function] [call site] 00238
6 TInputProtocol::skip_till_depth [function] [call site] 00241
6 TInputProtocol::skip_till_depth [function] [call site] 00242
6 TStoredInputProtocol::read_map_end [function] [call site] 00243
7 TStoredInputProtocol::read_map_end [function] [call site] 00244
8 TStoredInputProtocol::read_map_end [function] [call site] 00245
6 crate::Error::Protocol [function] [call site] 00247
4 TStoredInputProtocol::read_field_end [function] [call site] 00248
5 TStoredInputProtocol::read_field_end [function] [call site] 00249
6 TStoredInputProtocol::read_field_end [function] [call site] 00250
4 TStoredInputProtocol::read_struct_end [function] [call site] 00251
5 TStoredInputProtocol::read_struct_end [function] [call site] 00252
3 Requiredness::read_from_in_protocol [function] [call site] 00255
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00256
4 TStoredInputProtocol::read_field_begin [function] [call site] 00258
4 thrift::protocol::field_id [function] [call site] 00259
4 TStoredInputProtocol::read_i32 [function] [call site] 00260
4 TStoredInputProtocol::read_i32 [function] [call site] 00262
4 TStoredInputProtocol::read_i32 [function] [call site] 00264
4 TStoredInputProtocol::read_string [function] [call site] 00266
4 TStoredInputProtocol::read_bool [function] [call site] 00268
4 TInputProtocol::skip [function] [call site] 00270
4 TStoredInputProtocol::read_field_end [function] [call site] 00271
4 TStoredInputProtocol::read_struct_end [function] [call site] 00272
4 thrift::protocol::verify_required_field_exists [function] [call site] 00273
4 thrift::protocol::verify_required_field_exists [function] [call site] 00277
4 None::expect [function] [call site] 00278
4 None::expect [function] [call site] 00279
3 Containers::read_from_in_protocol [function] [call site] 00282
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00283
4 SharedStruct::new [function] [call site] 00285
4 SharedStruct::new [function] [call site] 00287
5 PrivateKeyDer::into [function] [call site] 00288
5 BTreeMap::into [function] [call site] 00289
4 SharedStruct::new [function] [call site] 00291
5 PrivateKeyDer::into [function] [call site] 00292
5 BTreeMap::into [function] [call site] 00293
4 SharedStruct::new [function] [call site] 00295
4 SharedStruct::new [function] [call site] 00297
4 SharedStruct::new [function] [call site] 00299
4 TStoredInputProtocol::read_field_begin [function] [call site] 00300
4 thrift::protocol::field_id [function] [call site] 00301
4 TStoredInputProtocol::read_list_begin [function] [call site] 00302
5 TStoredInputProtocol::read_list_begin [function] [call site] 00303
4 TBufferedReadTransport::with_capacity [function] [call site] 00304
4 thrift::protocol::prealloc_size [function] [call site] 00305
5 std::cmp::min [function] [call site] 00306
4 TStoredInputProtocol::read_i32 [function] [call site] 00307
4 TBufferedReadTransport::push [function] [call site] 00308
4 TStoredInputProtocol::read_list_end [function] [call site] 00309
5 TStoredInputProtocol::read_list_end [function] [call site] 00310
4 TStoredInputProtocol::read_set_begin [function] [call site] 00312
5 TStoredInputProtocol::read_set_begin [function] [call site] 00313
4 SharedStruct::new [function] [call site] 00314
4 TStoredInputProtocol::read_string [function] [call site] 00315
4 SharedStruct::insert [function] [call site] 00316
4 TStoredInputProtocol::read_set_end [function] [call site] 00317
5 TStoredInputProtocol::read_set_end [function] [call site] 00318
4 TStoredInputProtocol::read_map_begin [function] [call site] 00320
5 TStoredInputProtocol::read_map_begin [function] [call site] 00321
4 SharedStruct::new [function] [call site] 00322
4 TStoredInputProtocol::read_i32 [function] [call site] 00323
4 TStoredInputProtocol::read_string [function] [call site] 00324
4 SharedStruct::insert [function] [call site] 00325
4 TStoredInputProtocol::read_map_end [function] [call site] 00326
5 TStoredInputProtocol::read_map_end [function] [call site] 00327
4 TStoredInputProtocol::read_list_begin [function] [call site] 00329
4 TBufferedReadTransport::with_capacity [function] [call site] 00330
4 thrift::protocol::prealloc_size [function] [call site] 00331
4 BasicTypes::read_from_in_protocol [function] [call site] 00332
4 TBufferedReadTransport::push [function] [call site] 00333
4 TStoredInputProtocol::read_list_end [function] [call site] 00334
4 TStoredInputProtocol::read_map_begin [function] [call site] 00336
4 SharedStruct::new [function] [call site] 00337
4 TStoredInputProtocol::read_string [function] [call site] 00338
4 TStoredInputProtocol::read_list_begin [function] [call site] 00339
4 TBufferedReadTransport::with_capacity [function] [call site] 00340
4 thrift::protocol::prealloc_size [function] [call site] 00341
4 TStoredInputProtocol::read_i32 [function] [call site] 00342
4 TBufferedReadTransport::push [function] [call site] 00343
4 TStoredInputProtocol::read_list_end [function] [call site] 00344
4 SharedStruct::insert [function] [call site] 00345
4 TStoredInputProtocol::read_map_end [function] [call site] 00346
4 TStoredInputProtocol::read_set_begin [function] [call site] 00348
4 SharedStruct::new [function] [call site] 00349
4 TStoredInputProtocol::read_i64 [function] [call site] 00350
4 SharedStruct::insert [function] [call site] 00351
4 TStoredInputProtocol::read_set_end [function] [call site] 00352
4 TInputProtocol::skip [function] [call site] 00354
4 TStoredInputProtocol::read_field_end [function] [call site] 00355
4 TStoredInputProtocol::read_struct_end [function] [call site] 00356
3 TestUnion::read_from_in_protocol [function] [call site] 00359
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00360
4 TStoredInputProtocol::read_field_begin [function] [call site] 00361
4 thrift::protocol::field_id [function] [call site] 00362
4 TStoredInputProtocol::read_i32 [function] [call site] 00363
4 None::is_none [function] [call site] 00364
4 TestUnion::IntField [function] [call site] 00366
4 TStoredInputProtocol::read_string [function] [call site] 00367
4 None::is_none [function] [call site] 00368
4 TestUnion::StringField [function] [call site] 00370
4 BasicTypes::read_from_in_protocol [function] [call site] 00371
4 None::is_none [function] [call site] 00372
4 TestUnion::StructField [function] [call site] 00374
4 TBufferChannel::read_bytes [function] [call site] 00375
4 None::is_none [function] [call site] 00376
4 TestUnion::BinaryField [function] [call site] 00378
4 TInputProtocol::skip [function] [call site] 00379
4 TStoredInputProtocol::read_field_end [function] [call site] 00380
4 TStoredInputProtocol::read_struct_end [function] [call site] 00381
4 thrift::Error::Protocol [function] [call site] 00383
4 ProtocolError::new [function] [call site] 00384
4 thrift::Error::Protocol [function] [call site] 00386
4 ProtocolError::new [function] [call site] 00387
4 thrift::Error::Protocol [function] [call site] 00389
4 ProtocolError::new [function] [call site] 00390
4 thrift::Error::Protocol [function] [call site] 00393
4 ProtocolError::new [function] [call site] 00394
3 RecursiveStruct::read_from_in_protocol [function] [call site] 00396
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00397
4 TStoredInputProtocol::read_field_begin [function] [call site] 00399
4 thrift::protocol::field_id [function] [call site] 00400
4 SharedStruct::new [function] [call site] 00401
4 RecursiveStruct::read_from_in_protocol [function] [call site] 00402
4 TStoredInputProtocol::read_i32 [function] [call site] 00404
4 TStoredInputProtocol::read_list_begin [function] [call site] 00406
4 TBufferedReadTransport::with_capacity [function] [call site] 00407
4 thrift::protocol::prealloc_size [function] [call site] 00408
4 SharedStruct::new [function] [call site] 00409
4 RecursiveStruct::read_from_in_protocol [function] [call site] 00410
4 TBufferedReadTransport::push [function] [call site] 00411
4 TStoredInputProtocol::read_list_end [function] [call site] 00412
4 TInputProtocol::skip [function] [call site] 00414
4 TStoredInputProtocol::read_field_end [function] [call site] 00415
4 TStoredInputProtocol::read_struct_end [function] [call site] 00416
3 EmptyStruct::read_from_in_protocol [function] [call site] 00419
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00420
4 TStoredInputProtocol::read_field_begin [function] [call site] 00421
4 TInputProtocol::skip [function] [call site] 00422
4 TStoredInputProtocol::read_field_end [function] [call site] 00423
4 TStoredInputProtocol::read_struct_end [function] [call site] 00424
3 FieldIDTest::read_from_in_protocol [function] [call site] 00427
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00428
4 TStoredInputProtocol::read_field_begin [function] [call site] 00433
4 thrift::protocol::field_id [function] [call site] 00434
4 TStoredInputProtocol::read_i32 [function] [call site] 00435
4 TStoredInputProtocol::read_i32 [function] [call site] 00437
4 TStoredInputProtocol::read_i32 [function] [call site] 00439
4 TStoredInputProtocol::read_i32 [function] [call site] 00441
4 TInputProtocol::skip [function] [call site] 00443
4 TStoredInputProtocol::read_field_end [function] [call site] 00444
4 TStoredInputProtocol::read_struct_end [function] [call site] 00445
3 TestEnum::read_from_in_protocol [function] [call site] 00448
4 TStoredInputProtocol::read_i32 [function] [call site] 00449
4 TestEnum::from [function] [call site] 00451
5 TestEnum::from [function] [call site] 00452
3 TStoredInputProtocol::read_map_begin [function] [call site] 00454
3 SharedStruct::new [function] [call site] 00455
3 TestEnum::read_from_in_protocol [function] [call site] 00456
3 TStoredInputProtocol::read_string [function] [call site] 00457
3 SharedStruct::insert [function] [call site] 00458
3 TStoredInputProtocol::read_map_end [function] [call site] 00459
3 TStoredInputProtocol::read_i64 [function] [call site] 00461
3 TBufferChannel::read_bytes [function] [call site] 00463
3 TInputProtocol::skip [function] [call site] 00465
3 TStoredInputProtocol::read_field_end [function] [call site] 00466
3 TStoredInputProtocol::read_struct_end [function] [call site] 00467
3 thrift::protocol::verify_required_field_exists [function] [call site] 00468
3 thrift::protocol::verify_required_field_exists [function] [call site] 00469
3 thrift::protocol::verify_required_field_exists [function] [call site] 00470
3 thrift::protocol::verify_required_field_exists [function] [call site] 00471
3 thrift::protocol::verify_required_field_exists [function] [call site] 00472
3 None::expect [function] [call site] 00473
3 None::expect [function] [call site] 00474
3 None::expect [function] [call site] 00475
3 None::expect [function] [call site] 00476
3 None::expect [function] [call site] 00477