Fuzz introspector: structured_roundtrip
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
59 255 NsReader::process_event call site: 00255 NsReader::read_resolved_event
49 198 NamespaceResolver::pop call site: 00198 read_event_impl
44 132 Reader::from_str call site: 00132 NsReader::read_resolved_event
23 88 fuzz_round_trip call site: 00088 SpecIter::next
21 42 Writer::write_wrapped call site: 00042 Writer::write_wrapped
19 410 ElementWriter::write_text_content call site: 00410 Writer::write_wrapped
14 73 fuzz_round_trip call site: 00073 Decoder::decode_into
13 437 ElementWriter::write_text_content call site: 00437 read_to_end
12 184 NamespaceResolver::pop call site: 00184 trivial::byte_buf
12 386 BytesStart::push_attr call site: 00386 Decoder::decode_into
11 14 fuzz_round_trip call site: 00014 decode_into
11 368 BytesStart::push_attr call site: 00368 Decoder::decode_into

Fuzzer calltree

0 fuzz_target [function] [call site] 00000
1 fuzz_round_trip [function] [call site] 00001
2 Writer::new [function] [call site] 00002
2 Writer::new [function] [call site] 00003
2 Writer::new [function] [call site] 00004
2 to_writer [function] [call site] 00005
3 ByteBuf::deserialize [function] [call site] 00006
4 SimpleTypeDeserializer::deserialize_byte_buf [function] [call site] 00007
5 SimpleTypeDeserializer::deserialize_bytes [function] [call site] 00008
6 CowRef::deserialize_str [function] [call site] 00009
7 V::visit_borrowed_str [function] [call site] 00010
7 V::visit_str [function] [call site] 00011
7 V::visit_string [function] [call site] 00012
3 Serializer::new [function] [call site] 00013
2 Writer::write_event [function] [call site] 00014
3 io::Result::into [function] [call site] 00015
4 std::str::from_utf8 [function] [call site] 00017
4 decode_into [function] [call site] 00018
5 std::str::from_utf8 [function] [call site] 00020
5 new_decoder_without_bom_handling [function] [call site] 00022
5 Decoder::max_utf8_buffer_length_without_replacement [function] [call site] 00024
5 name_len [function] [call site] 00025
6 is_whitespace [function] [call site] 00026
5 Decoder::decode_to_string_without_replacement [function] [call site] 00028
5 EncodingError::Other [function] [call site] 00031
3 Writer::write_wrapped [function] [call site] 00033
4 write_all [function] [call site] 00034
4 write_all [function] [call site] 00035
4 Indentation::current [function] [call site] 00036
4 Writer::write [function] [call site] 00037
4 Writer::write [function] [call site] 00040
4 Writer::write [function] [call site] 00041
3 Indentation::grow [function] [call site] 00044
4 Indentation::ensure [function] [call site] 00045
3 Indentation::shrink [function] [call site] 00049
4 saturating_sub [function] [call site] 00050
3 Writer::write_wrapped [function] [call site] 00051
3 Writer::write_wrapped [function] [call site] 00052
3 Writer::write [function] [call site] 00053
3 Writer::write_wrapped [function] [call site] 00054
3 Writer::write [function] [call site] 00055
3 Writer::write [function] [call site] 00056
3 Writer::write [function] [call site] 00057
3 Writer::write_wrapped [function] [call site] 00058
3 Writer::write_wrapped [function] [call site] 00059
3 Writer::write_wrapped [function] [call site] 00060
3 Writer::write_wrapped [function] [call site] 00061
2 io::Result::borrow [function] [call site] 00064
3 Cow::Borrowed [function] [call site] 00065
2 Writer::write_bom [function] [call site] 00066
3 Writer::write [function] [call site] 00067
2 Writer::write_indent [function] [call site] 00068
3 write_all [function] [call site] 00069
3 write_all [function] [call site] 00070
3 Indentation::current [function] [call site] 00071
2 Writer::create_element [function] [call site] 00073
3 BytesStart::new [function] [call site] 00074
4 str_cow_to_bytes [function] [call site] 00075
5 Decoder::decode_into [function] [call site] 00076
6 std::str::from_utf8 [function] [call site] 00078
6 decode_into [function] [call site] 00079
5 Cow::Borrowed [function] [call site] 00081
5 Cow::Owned [function] [call site] 00083
5 into_bytes [function] [call site] 00084
4 Decoder::utf8 [function] [call site] 00086
3 Writer::new [function] [call site] 00087
2 ElementWriter::with_attributes [function] [call site] 00088
3 into_iter [function] [call site] 00089
3 SpecIter::next [function] [call site] 00090
4 to_writer [function] [call site] 00091
4 Reader::buffer_position [function] [call site] 00092
4 assert_error_matches [function] [call site] 00093
4 unwrap_or [function] [call site] 00094
4 Reader::buffer_position [function] [call site] 00096
4 std::str::from_utf8 [function] [call site] 00099
4 Reader::buffer_position [function] [call site] 00102
4 std::str::from_utf8 [function] [call site] 00105
4 XmlReader::is_empty [function] [call site] 00107
4 std::str::from_utf8 [function] [call site] 00109
3 ElementWriter::write_attr [function] [call site] 00111
4 BytesStart::push_attribute [function] [call site] 00113
5 NamespaceResolver::push [function] [call site] 00115
6 attributes [function] [call site] 00116
7 benchmark_group [function] [call site] 00117
7 bench_function [function] [call site] 00118
7 to_writer [function] [call site] 00119
7 Reader::from_str [function] [call site] 00120
8 NsReader::from_reader [function] [call site] 00121
9 Writer::new [function] [call site] 00122
9 Reader::from_reader [function] [call site] 00123
10 ReaderState::default [function] [call site] 00124
11 Config::default [function] [call site] 00125
11 Writer::new [function] [call site] 00126
11 Writer::new [function] [call site] 00127
11 EncodingRef::Implicit [function] [call site] 00128
8 EncodingRef::Explicit [function] [call site] 00130
8 NsReader::from_reader [function] [call site] 00131
7 NsReader::config_mut [function] [call site] 00133
8 NsReader::config_mut [function] [call site] 00134
7 std::hint::black_box [function] [call site] 00135
7 read_event [function] [call site] 00136
8 benchmark_group [function] [call site] 00137
8 bench_function [function] [call site] 00138
8 to_writer [function] [call site] 00139
8 Reader::from_str [function] [call site] 00140
8 NsReader::config_mut [function] [call site] 00141
8 std::hint::black_box [function] [call site] 00142
8 read_event [function] [call site] 00143
8 bench_function [function] [call site] 00144
8 to_writer [function] [call site] 00145
8 Reader::from_str [function] [call site] 00146
8 NsReader::config_mut [function] [call site] 00147
8 Config::trim_text [function] [call site] 00148
8 std::hint::black_box [function] [call site] 00149
8 read_event [function] [call site] 00150
7 attributes [function] [call site] 00152
7 bench_function [function] [call site] 00154
7 to_writer [function] [call site] 00155
7 Reader::from_str [function] [call site] 00156
7 NsReader::config_mut [function] [call site] 00157
7 std::hint::black_box [function] [call site] 00158
7 read_event [function] [call site] 00159
7 attributes [function] [call site] 00160
7 Attributes::with_checks [function] [call site] 00161
7 bench_function [function] [call site] 00163
7 to_writer [function] [call site] 00164
7 Reader::from_str [function] [call site] 00165
7 NsReader::config_mut [function] [call site] 00166
7 std::hint::black_box [function] [call site] 00167
7 read_event [function] [call site] 00168
7 reserved_name [function] [call site] 00169
8 NsReader::from_str [function] [call site] 00170
9 Writer::new [function] [call site] 00171
9 Reader::from_str [function] [call site] 00172
8 NsReader::read_resolved_event [function] [call site] 00173
9 NsReader::read_event_impl [function] [call site] 00174
10 NsReader::pop [function] [call site] 00175
11 NamespaceResolver::pop [function] [call site] 00176
12 saturating_sub [function] [call site] 00177
12 to_writer [function] [call site] 00178
12 rposition [function] [call site] 00179
12 BytesPI::target [function] [call site] 00182
13 reserved_name [function] [call site] 00183
12 Attr::map [function] [call site] 00184
13 Attr::DoubleQ [function] [call site] 00185
13 trivial::byte_buf [function] [call site] 00186
14 from_str::<Trivial<ByteBuf>> [function] [call site] 00187
13 trivial::byte_buf [function] [call site] 00188
13 Attr::SingleQ [function] [call site] 00189
13 trivial::byte_buf [function] [call site] 00190
13 trivial::byte_buf [function] [call site] 00191
13 Attr::Empty [function] [call site] 00192
13 trivial::byte_buf [function] [call site] 00193
13 Attr::Unquoted [function] [call site] 00194
13 trivial::byte_buf [function] [call site] 00195
13 trivial::byte_buf [function] [call site] 00196
12 truncate [function] [call site] 00197
12 truncate [function] [call site] 00198
10 read_event_impl [function] [call site] 00199
11 detect_encoding [function] [call site] 00200
11 can_be_refined [function] [call site] 00201
11 crate::reader::EncodingRef::BomDetected [function] [call site] 00202
11 remove_utf8_bom [function] [call site] 00203
11 read_ref [function] [call site] 00204
11 Event::GeneralRef [function] [call site] 00206
11 BytesRef::wrap [function] [call site] 00207
11 Event::Text [function] [call site] 00210
11 emit_text [function] [call site] 00211
11 Error::IllFormed [function] [call site] 00213
11 Event::Text [function] [call site] 00215
11 emit_text [function] [call site] 00216
11 Error::IllFormed [function] [call site] 00218
11 Event::Text [function] [call site] 00220
11 emit_text [function] [call site] 00221
11 Error::IllFormed [function] [call site] 00223
11 Error::Io [function] [call site] 00225
11 skip_whitespace [function] [call site] 00227
11 read_text [function] [call site] 00228
11 Event::Text [function] [call site] 00230
11 emit_text [function] [call site] 00231
11 Event::Text [function] [call site] 00233
11 emit_text [function] [call site] 00234
11 emit_text [function] [call site] 00235
11 io::Result::is_empty [function] [call site] 00236
11 Event::Text [function] [call site] 00239
11 Error::Io [function] [call site] 00241
11 Event::End [function] [call site] 00244
11 close_expanded_empty [function] [call site] 00245
10 NsReader::process_event [function] [call site] 00247
11 NamespaceResolver::push [function] [call site] 00248
11 Event::Start [function] [call site] 00250
11 NamespaceResolver::push [function] [call site] 00251
11 Event::Empty [function] [call site] 00253
11 Event::End [function] [call site] 00255
9 NamespaceResolver::resolve_event [function] [call site] 00257
10 NamespaceResolver::resolve_prefix [function] [call site] 00258
11 to_writer [function] [call site] 00259
11 Result::find [function] [call site] 00261
11 namespace [function] [call site] 00262
12 NsReader::from_str [function] [call site] 00263
12 NsReader::read_resolved_event [function] [call site] 00264
12 NsReader::resolver [function] [call site] 00265
12 NamespaceResolver::bindings [function] [call site] 00266
12 NamespaceBindingsIter::clone [function] [call site] 00267
12 NsReader::read_resolved_event [function] [call site] 00268
12 NsReader::resolver [function] [call site] 00269
12 NamespaceResolver::bindings [function] [call site] 00270
12 NsReader::read_resolved_event [function] [call site] 00271
12 NsReader::resolver [function] [call site] 00272
12 NamespaceResolver::bindings [function] [call site] 00273
12 NsReader::read_resolved_event [function] [call site] 00274
12 NsReader::resolver [function] [call site] 00275
12 NamespaceResolver::bindings [function] [call site] 00276
12 NsReader::read_resolved_event [function] [call site] 00277
12 NsReader::resolver [function] [call site] 00278
12 NamespaceResolver::bindings [function] [call site] 00279
11 Result::find [function] [call site] 00280
11 QName::prefix [function] [call site] 00281
12 QName::index [function] [call site] 00282
13 memchr::memchr [function] [call site] 00283
12 Attr::map [function] [call site] 00284
13 Attr::DoubleQ [function] [call site] 00285
13 trivial::byte_buf [function] [call site] 00286
13 trivial::byte_buf [function] [call site] 00287
13 Attr::SingleQ [function] [call site] 00288
13 trivial::byte_buf [function] [call site] 00289
13 trivial::byte_buf [function] [call site] 00290
13 Attr::Empty [function] [call site] 00291
13 trivial::byte_buf [function] [call site] 00292
13 Attr::Unquoted [function] [call site] 00293
13 trivial::byte_buf [function] [call site] 00294
13 trivial::byte_buf [function] [call site] 00295
11 namespace [function] [call site] 00297
11 ResolveResult::Unknown [function] [call site] 00298
11 Writer::into_inner [function] [call site] 00299
11 W::to_vec [function] [call site] 00300
10 reserved_name [function] [call site] 00301
10 QName::prefix [function] [call site] 00302
10 NamespaceResolver::resolve_prefix [function] [call site] 00304
10 reserved_name [function] [call site] 00305
10 QName::prefix [function] [call site] 00306
10 NamespaceResolver::resolve_prefix [function] [call site] 00308
10 reserved_name [function] [call site] 00309
10 QName::prefix [function] [call site] 00310
7 quick_xml::name::QName [function] [call site] 00312
7 BytesStart::try_get_attribute [function] [call site] 00313
8 BytesStart::attributes [function] [call site] 00314
9 Attributes::wrap [function] [call site] 00315
10 IterState::new [function] [call site] 00316
11 State::Next [function] [call site] 00317
11 Writer::new [function] [call site] 00318
8 Attributes::with_checks [function] [call site] 00319
8 QName::as_ref [function] [call site] 00320
8 QName::as_ref [function] [call site] 00321
7 Result::unwrap [function] [call site] 00325
6 Attributes::with_checks [function] [call site] 00327
6 QName::as_namespace_binding [function] [call site] 00328
7 starts_with [function] [call site] 00329
7 BytesPI::target [function] [call site] 00330
7 PrefixDeclaration::Named [function] [call site] 00333
6 NamespaceResolver::add [function] [call site] 00334
7 extend_from_slice [function] [call site] 00336
7 NamespaceResolver::push [function] [call site] 00337
7 NamespaceError::InvalidXmlPrefixBind [function] [call site] 00340
7 NamespaceError::InvalidXmlnsPrefixBind [function] [call site] 00343
7 NamespaceError::InvalidPrefixForXml [function] [call site] 00346
7 Option::to_vec [function] [call site] 00347
7 NamespaceError::InvalidPrefixForXmlns [function] [call site] 00349
7 Option::to_vec [function] [call site] 00350
7 extend_from_slice [function] [call site] 00352
7 extend_from_slice [function] [call site] 00353
7 NamespaceResolver::push [function] [call site] 00354
7 Option::len [function] [call site] 00355
8 is_whitespace [function] [call site] 00356
6 Namespace [function] [call site] 00359
5 BytesStart::push_attr [function] [call site] 00361
6 extend_from_slice [function] [call site] 00363
6 QName::as_ref [function] [call site] 00364
6 extend_from_slice [function] [call site] 00365
6 extend_from_slice [function] [call site] 00366
6 QName::as_ref [function] [call site] 00367
6 NamespaceResolver::push [function] [call site] 00368
5 Decoder::decode_into [function] [call site] 00369
4 AttributeIndent::Spaces [function] [call site] 00370
4 reserved_name [function] [call site] 00371
4 QName::as_ref [function] [call site] 00372
4 BytesStart::push_indent [function] [call site] 00376
5 extend_from_slice [function] [call site] 00378
4 BytesStart::push_attr [function] [call site] 00379
5 extend_from_slice [function] [call site] 00381
5 QName::as_ref [function] [call site] 00382
5 extend_from_slice [function] [call site] 00383
5 extend_from_slice [function] [call site] 00384
5 QName::as_ref [function] [call site] 00385
5 NamespaceResolver::push [function] [call site] 00386
4 Decoder::decode_into [function] [call site] 00387
4 AttributeIndent::Spaces [function] [call site] 00388
4 BytesStart::push_attribute [function] [call site] 00389
4 AttributeIndent::Spaces [function] [call site] 00390
4 BytesStart::push_indent [function] [call site] 00391
4 Indentation::additional [function] [call site] 00392
5 Indentation::ensure [function] [call site] 00393
4 BytesStart::push_attr [function] [call site] 00394
4 Decoder::decode_into [function] [call site] 00395
4 AttributeIndent::Configured [function] [call site] 00396
4 BytesStart::push_attribute [function] [call site] 00397
4 AttributeIndent::Configured [function] [call site] 00398
4 BytesStart::push_attribute [function] [call site] 00399
3 Decoder::decode_into [function] [call site] 00400
3 BytesStart::extend_attributes [function] [call site] 00401
4 BytesStart::push_attribute [function] [call site] 00402
5 NamespaceResolver::push [function] [call site] 00404
5 BytesStart::push_attr [function] [call site] 00405
5 Decoder::decode_into [function] [call site] 00406
2 into_iter [function] [call site] 00407
2 ElementWriter::write_text_content [function] [call site] 00409
3 Writer::write_event [function] [call site] 00410
4 io::Result::into [function] [call site] 00411
4 Writer::write_wrapped [function] [call site] 00412
4 Indentation::grow [function] [call site] 00414
4 Indentation::shrink [function] [call site] 00416
4 Writer::write_wrapped [function] [call site] 00417
4 Writer::write_wrapped [function] [call site] 00418
4 Writer::write [function] [call site] 00419
4 Writer::write_wrapped [function] [call site] 00420
4 Writer::write [function] [call site] 00421
4 Writer::write [function] [call site] 00422
4 Writer::write [function] [call site] 00423
4 Writer::write_wrapped [function] [call site] 00424
4 Writer::write_wrapped [function] [call site] 00425
4 Writer::write_wrapped [function] [call site] 00426
4 Writer::write_wrapped [function] [call site] 00427
3 Event::Start [function] [call site] 00430
3 BytesStart::borrow [function] [call site] 00431
4 Cow::Borrowed [function] [call site] 00432
3 Writer::write_event [function] [call site] 00433
3 Event::Text [function] [call site] 00434
3 Writer::write_event [function] [call site] 00435
3 Event::End [function] [call site] 00436
3 NsReader::read_to_end [function] [call site] 00437
2 BytesText::from_escaped [function] [call site] 00452
3 BytesStart::wrap [function] [call site] 00453
4 Cow::Borrowed [function] [call site] 00454
3 str_cow_to_bytes [function] [call site] 00455
3 Decoder::utf8 [function] [call site] 00456
2 ElementWriter::write_cdata_content [function] [call site] 00457
3 Writer::write_event [function] [call site] 00458
3 Event::Start [function] [call site] 00459
3 BytesStart::borrow [function] [call site] 00460
3 Writer::write_event [function] [call site] 00461
3 Event::CData [function] [call site] 00462
3 Writer::write_event [function] [call site] 00463
3 Event::End [function] [call site] 00464
3 NsReader::read_to_end [function] [call site] 00465
2 BytesCData::new [function] [call site] 00467
3 BytesStart::wrap [function] [call site] 00468
3 str_cow_to_bytes [function] [call site] 00469
3 Decoder::utf8 [function] [call site] 00470
2 ElementWriter::write_pi_content [function] [call site] 00471
3 Writer::write_event [function] [call site] 00472
3 Event::Start [function] [call site] 00473
3 BytesStart::borrow [function] [call site] 00474
3 Writer::write_event [function] [call site] 00475
3 Event::PI [function] [call site] 00476
3 Writer::write_event [function] [call site] 00477
3 Event::End [function] [call site] 00478
3 NsReader::read_to_end [function] [call site] 00479
2 BytesPI::new [function] [call site] 00481
3 str_cow_to_bytes [function] [call site] 00482
3 utils::name_len [function] [call site] 00483
4 is_whitespace [function] [call site] 00484
3 Decoder::utf8 [function] [call site] 00485
2 ElementWriter::write_empty [function] [call site] 00486
3 Writer::write_event [function] [call site] 00487
3 Event::Empty [function] [call site] 00488
2 Writer::into_inner [function] [call site] 00490
2 Writer::into_inner [function] [call site] 00491
2 Reader::from_str [function] [call site] 00492
2 std::str::from_utf8 [function] [call site] 00493
2 NsReader::config_mut [function] [call site] 00495
3 NsReader::config_mut [function] [call site] 00496
2 std::hint::black_box [function] [call site] 00498
2 NsReader::read_event [function] [call site] 00499
3 NsReader::read_event_impl [function] [call site] 00500
2 NsReader::from_reader [function] [call site] 00501
3 Writer::new [function] [call site] 00502
3 Reader::from_reader [function] [call site] 00503
2 NsReader::config_mut [function] [call site] 00504
2 std::hint::black_box [function] [call site] 00505
2 NsReader::read_event [function] [call site] 00506
1 std::hint::black_box [function] [call site] 00508
1 debug_format [function] [call site] 00509
2 std::hint::black_box [function] [call site] 00510
2 debug_format [function] [call site] 00511