Fuzz introspector: structured_roundtrip_compact
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
221 263 BasicTypes::read_from_in_protocol call site: 00263 Containers::read_from_in_protocol
59 3 TConfiguration::builder call site: 00003 TTcpChannel::read_timeout
17 66 TConfiguration::default call site: 00066
13 117 TBufferChannel::set_readable_bytes call site: 00117 FuzzTest::read_from_in_protocol
11 85 Option::build call site: 00085
4 181 BasicTypes::read_from_in_protocol call site: 00181
4 214 TInputProtocol::skip_till_depth call site: 00214
3 104 TBufferChannel::with_capacity call site: 00104
2 0 EP call site: 00000 run
2 97 TBufferChannel::with_capacity call site: 00097
2 131 thrift::protocol::field_id call site: 00131 BasicTypes::read_from_in_protocol
2 141 BasicTypes::read_from_in_protocol call site: 00141

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 BTreeMap::into [function] [call site] 00006
4 SharedStruct::new [function] [call site] 00007
5 BTreeMap::into [function] [call site] 00009
2 TConfigurationBuilder::max_message_size [function] [call site] 00010
2 &[u8]::len [function] [call site] 00012
2 TConfiguration::max_frame_size [function] [call site] 00013
2 &[u8]::len [function] [call site] 00015
2 TConfiguration::max_container_size [function] [call site] 00016
2 TConfiguration::max_string_size [function] [call site] 00018
2 &[u8]::len [function] [call site] 00020
2 Option::build [function] [call site] 00021
3 TTcpChannel::split [function] [call site] 00022
4 Result::try_clone [function] [call site] 00025
4 ThriftTestSyncHandlerImpl::handle_test_map [function] [call site] 00027
4 thrift::Result::read_timeout [function] [call site] 00031
5 TTcpChannel::read_timeout [function] [call site] 00032
6 TTcpChannel::read_timeout [function] [call site] 00033
6 crate::Result::map_err [function] [call site] 00034
5 crate::Result::map_err [function] [call site] 00036
4 crate::Result::ok [function] [call site] 00038
4 unwrap_or [function] [call site] 00039
4 thrift::Result::write_timeout [function] [call site] 00042
5 TTcpChannel::write_timeout [function] [call site] 00043
6 TTcpChannel::write_timeout [function] [call site] 00044
6 crate::Result::map_err [function] [call site] 00045
5 crate::Result::map_err [function] [call site] 00047
4 crate::Result::ok [function] [call site] 00049
4 unwrap_or [function] [call site] 00050
4 ReadHalf::new [function] [call site] 00051
4 WriteHalf::new [function] [call site] 00053
4 ok_or_else [function] [call site] 00055
4 new_transport_error [function] [call site] 00056
5 Error::Transport [function] [call site] 00057
5 TransportError::new [function] [call site] 00058
6 crate::Result::into [function] [call site] 00059
3 TFramedReadTransport::new [function] [call site] 00060
4 TFramedReadTransport::with_capacity [function] [call site] 00061
3 TFramedWriteTransport::new [function] [call site] 00067
4 TFramedWriteTransport::with_capacity [function] [call site] 00068
5 TBufferedReadTransport::with_capacity [function] [call site] 00069
6 into_boxed_slice [function] [call site] 00070
3 SharedStruct::new [function] [call site] 00071
4 BTreeMap::into [function] [call site] 00073
3 TBinaryInputProtocol::new [function] [call site] 00074
4 TCompactInputProtocol::with_config [function] [call site] 00075
5 SharedStruct::new [function] [call site] 00076
6 BTreeMap::into [function] [call site] 00078
4 TConfiguration::default [function] [call site] 00079
3 SharedStruct::new [function] [call site] 00080
3 TBinaryOutputProtocol::new [function] [call site] 00081
4 TCompactInputProtocol::with_config [function] [call site] 00082
4 TConfiguration::default [function] [call site] 00083
3 SharedStruct::new [function] [call site] 00084
3 TCompactInputProtocol::new [function] [call site] 00085
4 TCompactInputProtocol::with_config [function] [call site] 00086
4 TConfiguration::default [function] [call site] 00087
3 SharedStruct::new [function] [call site] 00088
3 TCompactOutputProtocol::new [function] [call site] 00089
4 TCompactInputProtocol::with_config [function] [call site] 00090
4 TConfiguration::default [function] [call site] 00091
2 thrift::Result::unwrap [function] [call site] 00095
2 TBufferChannel::with_capacity [function] [call site] 00096
3 SharedStruct::new [function] [call site] 00097
4 BTreeMap::into [function] [call site] 00099
3 SharedStruct::new [function] [call site] 00100
3 into_boxed_slice [function] [call site] 00101
3 SharedStruct::new [function] [call site] 00102
3 SharedStruct::new [function] [call site] 00103
3 into_boxed_slice [function] [call site] 00104
2 &[u8]::len [function] [call site] 00105
2 &[u8]::len [function] [call site] 00106
2 TBufferChannel::set_readable_bytes [function] [call site] 00107
3 TBufferChannel::empty_read_buffer [function] [call site] 00108
3 &[u8]::len [function] [call site] 00116
3 clone_from_slice [function] [call site] 00117
2 TCompactInputProtocol::with_config [function] [call site] 00118
3 SharedStruct::new [function] [call site] 00119
2 FuzzTest::read_from_in_protocol [function] [call site] 00120
3 TStoredInputProtocol::read_struct_begin [function] [call site] 00121
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00122
5 TStoredInputProtocol::read_struct_begin [function] [call site] 00123
3 SharedStruct::new [function] [call site] 00126
3 TStoredInputProtocol::read_field_begin [function] [call site] 00127
4 TStoredInputProtocol::read_field_begin [function] [call site] 00128
5 TStoredInputProtocol::read_field_begin [function] [call site] 00129
3 thrift::protocol::field_id [function] [call site] 00130
4 ok_or_else [function] [call site] 00131
4 crate::Error::Protocol [function] [call site] 00132
3 BasicTypes::read_from_in_protocol [function] [call site] 00133
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00134
4 Operation::from [function] [call site] 00141
5 Operation::from [function] [call site] 00142
6 Operation::from [function] [call site] 00143
4 &str::to_owned [function] [call site] 00145
4 SharedStruct::new [function] [call site] 00147
4 uuid::Uuid::nil [function] [call site] 00149
4 TStoredInputProtocol::read_field_begin [function] [call site] 00150
4 thrift::protocol::field_id [function] [call site] 00151
4 TStoredInputProtocol::read_bool [function] [call site] 00152
5 TStoredInputProtocol::read_bool [function] [call site] 00153
6 TStoredInputProtocol::read_bool [function] [call site] 00154
4 TStoredInputProtocol::read_i8 [function] [call site] 00156
5 TStoredInputProtocol::read_i8 [function] [call site] 00157
6 TStoredInputProtocol::read_i8 [function] [call site] 00158
4 TStoredInputProtocol::read_i16 [function] [call site] 00160
5 TStoredInputProtocol::read_i16 [function] [call site] 00161
6 TStoredInputProtocol::read_i16 [function] [call site] 00162
4 TStoredInputProtocol::read_i32 [function] [call site] 00164
5 TStoredInputProtocol::read_i32 [function] [call site] 00165
6 TStoredInputProtocol::read_i32 [function] [call site] 00166
4 TStoredInputProtocol::read_i64 [function] [call site] 00168
5 TStoredInputProtocol::read_i64 [function] [call site] 00169
6 TStoredInputProtocol::read_i64 [function] [call site] 00170
4 Operation::from [function] [call site] 00172
4 TStoredInputProtocol::read_double [function] [call site] 00173
5 TStoredInputProtocol::read_double [function] [call site] 00174
6 TStoredInputProtocol::read_double [function] [call site] 00175
4 TStoredInputProtocol::read_string [function] [call site] 00177
5 TStoredInputProtocol::read_string [function] [call site] 00178
6 TStoredInputProtocol::read_string [function] [call site] 00179
4 TBufferChannel::read_bytes [function] [call site] 00181
4 TStoredInputProtocol::read_uuid [function] [call site] 00187
5 TStoredInputProtocol::read_uuid [function] [call site] 00188
6 TStoredInputProtocol::read_uuid [function] [call site] 00189
4 TInputProtocol::skip [function] [call site] 00191
5 TInputProtocol::skip_till_depth [function] [call site] 00192
6 crate::Error::Protocol [function] [call site] 00194
6 TStoredInputProtocol::read_bool [function] [call site] 00195
7 TStoredInputProtocol::read_bool [function] [call site] 00196
6 crate::Result::map [function] [call site] 00197
6 TStoredInputProtocol::read_i8 [function] [call site] 00199
7 TStoredInputProtocol::read_i8 [function] [call site] 00200
6 crate::Result::map [function] [call site] 00201
6 TStoredInputProtocol::read_i16 [function] [call site] 00202
7 TStoredInputProtocol::read_i16 [function] [call site] 00203
6 crate::Result::map [function] [call site] 00204
6 TStoredInputProtocol::read_i32 [function] [call site] 00205
7 TStoredInputProtocol::read_i32 [function] [call site] 00206
6 crate::Result::map [function] [call site] 00207
6 TStoredInputProtocol::read_i64 [function] [call site] 00208
7 TStoredInputProtocol::read_i64 [function] [call site] 00209
6 crate::Result::map [function] [call site] 00210
6 TStoredInputProtocol::read_double [function] [call site] 00211
7 TStoredInputProtocol::read_double [function] [call site] 00212
6 crate::Result::map [function] [call site] 00213
6 TBufferChannel::read_bytes [function] [call site] 00214
6 ThriftTestSyncHandlerImpl::handle_test_map [function] [call site] 00219
6 TStoredInputProtocol::read_uuid [function] [call site] 00221
7 TStoredInputProtocol::read_uuid [function] [call site] 00222
6 crate::Result::map [function] [call site] 00223
6 TStoredInputProtocol::read_struct_begin [function] [call site] 00224
7 TStoredInputProtocol::read_struct_begin [function] [call site] 00225
6 TStoredInputProtocol::read_field_begin [function] [call site] 00226
7 TStoredInputProtocol::read_field_begin [function] [call site] 00227
6 TInputProtocol::skip_till_depth [function] [call site] 00228
6 TStoredInputProtocol::read_struct_end [function] [call site] 00229
7 TStoredInputProtocol::read_struct_end [function] [call site] 00230
8 TStoredInputProtocol::read_struct_end [function] [call site] 00231
6 TStoredInputProtocol::read_list_begin [function] [call site] 00232
7 TStoredInputProtocol::read_list_begin [function] [call site] 00233
8 TStoredInputProtocol::read_list_begin [function] [call site] 00234
6 TInputProtocol::skip_till_depth [function] [call site] 00235
6 TStoredInputProtocol::read_list_end [function] [call site] 00236
7 TStoredInputProtocol::read_list_end [function] [call site] 00237
8 TStoredInputProtocol::read_list_end [function] [call site] 00238
6 TStoredInputProtocol::read_set_begin [function] [call site] 00239
7 TStoredInputProtocol::read_set_begin [function] [call site] 00240
8 TStoredInputProtocol::read_set_begin [function] [call site] 00241
6 TInputProtocol::skip_till_depth [function] [call site] 00242
6 TStoredInputProtocol::read_set_end [function] [call site] 00243
7 TStoredInputProtocol::read_set_end [function] [call site] 00244
8 TStoredInputProtocol::read_set_end [function] [call site] 00245
6 TStoredInputProtocol::read_map_begin [function] [call site] 00246
7 TStoredInputProtocol::read_map_begin [function] [call site] 00247
8 TStoredInputProtocol::read_map_begin [function] [call site] 00248
6 TInputProtocol::skip_till_depth [function] [call site] 00251
6 TInputProtocol::skip_till_depth [function] [call site] 00252
6 TStoredInputProtocol::read_map_end [function] [call site] 00253
7 TStoredInputProtocol::read_map_end [function] [call site] 00254
8 TStoredInputProtocol::read_map_end [function] [call site] 00255
6 crate::Error::Protocol [function] [call site] 00257
4 TStoredInputProtocol::read_field_end [function] [call site] 00258
5 TStoredInputProtocol::read_field_end [function] [call site] 00259
6 TStoredInputProtocol::read_field_end [function] [call site] 00260
4 TStoredInputProtocol::read_struct_end [function] [call site] 00261
5 TStoredInputProtocol::read_struct_end [function] [call site] 00262
3 Requiredness::read_from_in_protocol [function] [call site] 00265
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00266
4 TStoredInputProtocol::read_field_begin [function] [call site] 00268
4 thrift::protocol::field_id [function] [call site] 00269
4 TStoredInputProtocol::read_i32 [function] [call site] 00270
4 TStoredInputProtocol::read_i32 [function] [call site] 00272
4 TStoredInputProtocol::read_i32 [function] [call site] 00274
4 TStoredInputProtocol::read_string [function] [call site] 00276
4 TStoredInputProtocol::read_bool [function] [call site] 00278
4 TInputProtocol::skip [function] [call site] 00280
4 TStoredInputProtocol::read_field_end [function] [call site] 00281
4 TStoredInputProtocol::read_struct_end [function] [call site] 00282
4 thrift::protocol::verify_required_field_exists [function] [call site] 00283
4 thrift::protocol::verify_required_field_exists [function] [call site] 00287
4 None::expect [function] [call site] 00288
4 None::expect [function] [call site] 00289
3 Containers::read_from_in_protocol [function] [call site] 00292
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00293
4 SharedStruct::new [function] [call site] 00295
4 SharedStruct::new [function] [call site] 00297
5 BTreeMap::into [function] [call site] 00299
4 SharedStruct::new [function] [call site] 00301
5 BTreeMap::into [function] [call site] 00303
4 SharedStruct::new [function] [call site] 00305
4 SharedStruct::new [function] [call site] 00307
4 SharedStruct::new [function] [call site] 00309
4 TStoredInputProtocol::read_field_begin [function] [call site] 00310
4 thrift::protocol::field_id [function] [call site] 00311
4 TStoredInputProtocol::read_list_begin [function] [call site] 00312
5 TStoredInputProtocol::read_list_begin [function] [call site] 00313
4 TBufferedReadTransport::with_capacity [function] [call site] 00314
4 TStoredInputProtocol::read_i32 [function] [call site] 00315
4 TBufferedReadTransport::push [function] [call site] 00316
4 TStoredInputProtocol::read_list_end [function] [call site] 00317
5 TStoredInputProtocol::read_list_end [function] [call site] 00318
4 TStoredInputProtocol::read_set_begin [function] [call site] 00320
5 TStoredInputProtocol::read_set_begin [function] [call site] 00321
4 SharedStruct::new [function] [call site] 00322
4 TStoredInputProtocol::read_string [function] [call site] 00323
4 SharedStruct::insert [function] [call site] 00324
4 TStoredInputProtocol::read_set_end [function] [call site] 00325
5 TStoredInputProtocol::read_set_end [function] [call site] 00326
4 TStoredInputProtocol::read_map_begin [function] [call site] 00328
5 TStoredInputProtocol::read_map_begin [function] [call site] 00329
4 SharedStruct::new [function] [call site] 00330
4 TStoredInputProtocol::read_i32 [function] [call site] 00331
4 TStoredInputProtocol::read_string [function] [call site] 00332
4 SharedStruct::insert [function] [call site] 00333
4 TStoredInputProtocol::read_map_end [function] [call site] 00334
5 TStoredInputProtocol::read_map_end [function] [call site] 00335
4 TStoredInputProtocol::read_list_begin [function] [call site] 00337
4 TBufferedReadTransport::with_capacity [function] [call site] 00338
4 BasicTypes::read_from_in_protocol [function] [call site] 00339
4 TBufferedReadTransport::push [function] [call site] 00340
4 TStoredInputProtocol::read_list_end [function] [call site] 00341
4 TStoredInputProtocol::read_map_begin [function] [call site] 00343
4 SharedStruct::new [function] [call site] 00344
4 TStoredInputProtocol::read_string [function] [call site] 00345
4 TStoredInputProtocol::read_list_begin [function] [call site] 00346
4 TBufferedReadTransport::with_capacity [function] [call site] 00347
4 TStoredInputProtocol::read_i32 [function] [call site] 00348
4 TBufferedReadTransport::push [function] [call site] 00349
4 TStoredInputProtocol::read_list_end [function] [call site] 00350
4 SharedStruct::insert [function] [call site] 00351
4 TStoredInputProtocol::read_map_end [function] [call site] 00352
4 TStoredInputProtocol::read_set_begin [function] [call site] 00354
4 SharedStruct::new [function] [call site] 00355
4 TStoredInputProtocol::read_i64 [function] [call site] 00356
4 SharedStruct::insert [function] [call site] 00357
4 TStoredInputProtocol::read_set_end [function] [call site] 00358
4 TInputProtocol::skip [function] [call site] 00360
4 TStoredInputProtocol::read_field_end [function] [call site] 00361
4 TStoredInputProtocol::read_struct_end [function] [call site] 00362
3 TestUnion::read_from_in_protocol [function] [call site] 00365
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00366
4 TStoredInputProtocol::read_field_begin [function] [call site] 00367
4 thrift::protocol::field_id [function] [call site] 00368
4 TStoredInputProtocol::read_i32 [function] [call site] 00369
4 None::is_none [function] [call site] 00370
4 TestUnion::IntField [function] [call site] 00372
4 TStoredInputProtocol::read_string [function] [call site] 00373
4 None::is_none [function] [call site] 00374
4 TestUnion::StringField [function] [call site] 00376
4 BasicTypes::read_from_in_protocol [function] [call site] 00377
4 None::is_none [function] [call site] 00378
4 TestUnion::StructField [function] [call site] 00380
4 TBufferChannel::read_bytes [function] [call site] 00381
4 None::is_none [function] [call site] 00382
4 TestUnion::BinaryField [function] [call site] 00384
4 TInputProtocol::skip [function] [call site] 00385
4 TStoredInputProtocol::read_field_end [function] [call site] 00386
4 TStoredInputProtocol::read_struct_end [function] [call site] 00387
4 thrift::Error::Protocol [function] [call site] 00389
4 ProtocolError::new [function] [call site] 00390
5 crate::Result::into [function] [call site] 00391
4 thrift::Error::Protocol [function] [call site] 00393
4 ProtocolError::new [function] [call site] 00394
4 thrift::Error::Protocol [function] [call site] 00396
4 ProtocolError::new [function] [call site] 00397
4 thrift::Error::Protocol [function] [call site] 00400
4 ProtocolError::new [function] [call site] 00401
3 RecursiveStruct::read_from_in_protocol [function] [call site] 00403
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00404
4 TStoredInputProtocol::read_field_begin [function] [call site] 00406
4 thrift::protocol::field_id [function] [call site] 00407
4 SharedStruct::new [function] [call site] 00408
4 RecursiveStruct::read_from_in_protocol [function] [call site] 00409
4 TStoredInputProtocol::read_i32 [function] [call site] 00411
4 TStoredInputProtocol::read_list_begin [function] [call site] 00413
4 TBufferedReadTransport::with_capacity [function] [call site] 00414
4 SharedStruct::new [function] [call site] 00415
4 RecursiveStruct::read_from_in_protocol [function] [call site] 00416
4 TBufferedReadTransport::push [function] [call site] 00417
4 TStoredInputProtocol::read_list_end [function] [call site] 00418
4 TInputProtocol::skip [function] [call site] 00420
4 TStoredInputProtocol::read_field_end [function] [call site] 00421
4 TStoredInputProtocol::read_struct_end [function] [call site] 00422
3 EmptyStruct::read_from_in_protocol [function] [call site] 00425
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00426
4 TStoredInputProtocol::read_field_begin [function] [call site] 00427
4 TInputProtocol::skip [function] [call site] 00428
4 TStoredInputProtocol::read_field_end [function] [call site] 00429
4 TStoredInputProtocol::read_struct_end [function] [call site] 00430
3 FieldIDTest::read_from_in_protocol [function] [call site] 00433
4 TStoredInputProtocol::read_struct_begin [function] [call site] 00434
4 TStoredInputProtocol::read_field_begin [function] [call site] 00439
4 thrift::protocol::field_id [function] [call site] 00440
4 TStoredInputProtocol::read_i32 [function] [call site] 00441
4 TStoredInputProtocol::read_i32 [function] [call site] 00443
4 TStoredInputProtocol::read_i32 [function] [call site] 00445
4 TStoredInputProtocol::read_i32 [function] [call site] 00447
4 TInputProtocol::skip [function] [call site] 00449
4 TStoredInputProtocol::read_field_end [function] [call site] 00450
4 TStoredInputProtocol::read_struct_end [function] [call site] 00451
3 TestEnum::read_from_in_protocol [function] [call site] 00454
4 TStoredInputProtocol::read_i32 [function] [call site] 00455
4 TestEnum::from [function] [call site] 00457
5 TestEnum::from [function] [call site] 00458
3 TStoredInputProtocol::read_map_begin [function] [call site] 00460
3 SharedStruct::new [function] [call site] 00461
3 TestEnum::read_from_in_protocol [function] [call site] 00462
3 TStoredInputProtocol::read_string [function] [call site] 00463
3 SharedStruct::insert [function] [call site] 00464
3 TStoredInputProtocol::read_map_end [function] [call site] 00465
3 TStoredInputProtocol::read_i64 [function] [call site] 00467
3 TBufferChannel::read_bytes [function] [call site] 00469
3 TInputProtocol::skip [function] [call site] 00471
3 TStoredInputProtocol::read_field_end [function] [call site] 00472
3 TStoredInputProtocol::read_struct_end [function] [call site] 00473
3 thrift::protocol::verify_required_field_exists [function] [call site] 00474
3 thrift::protocol::verify_required_field_exists [function] [call site] 00475
3 thrift::protocol::verify_required_field_exists [function] [call site] 00476
3 thrift::protocol::verify_required_field_exists [function] [call site] 00477
3 thrift::protocol::verify_required_field_exists [function] [call site] 00478
3 None::expect [function] [call site] 00479
3 None::expect [function] [call site] 00480
3 None::expect [function] [call site] 00481
3 None::expect [function] [call site] 00482
3 None::expect [function] [call site] 00483