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 249 NsReader::process_event call site: 00249 NsReader::read_resolved_event
49 192 NamespaceResolver::pop call site: 00192 read_event_impl
44 126 Reader::from_str call site: 00126 NsReader::read_resolved_event
23 82 fuzz_round_trip call site: 00082 SpecIter::next
21 36 Writer::write_wrapped call site: 00036 Writer::write_wrapped
19 402 ElementWriter::write_text_content call site: 00402 Writer::write_wrapped
14 67 fuzz_round_trip call site: 00067 Decoder::decode_into
13 429 ElementWriter::write_text_content call site: 00429 read_to_end
12 178 NamespaceResolver::pop call site: 00178 trivial::byte_buf
11 9 fuzz_round_trip call site: 00009 decode_into
11 362 BytesStart::push_attr call site: 00362 Decoder::decode_into
10 21 name_len call site: 00021 Writer::write_wrapped

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 CDataIterator::new [function] [call site] 00003
2 CDataIterator::new [function] [call site] 00004
2 to_writer [function] [call site] 00005
3 ByteBuf::deserialize [function] [call site] 00006
4 deserialize_byte_buf [function] [call site] 00007
3 Serializer::new [function] [call site] 00008
2 Writer::write_event [function] [call site] 00009
3 io::Result::into [function] [call site] 00010
4 std::str::from_utf8 [function] [call site] 00012
4 decode_into [function] [call site] 00013
5 std::str::from_utf8 [function] [call site] 00015
5 new_decoder_without_bom_handling [function] [call site] 00017
5 Decoder::max_utf8_buffer_length_without_replacement [function] [call site] 00019
5 name_len [function] [call site] 00020
6 is_whitespace [function] [call site] 00021
5 Decoder::decode_to_string_without_replacement [function] [call site] 00023
5 EncodingError::Other [function] [call site] 00026
3 Writer::write_wrapped [function] [call site] 00028
4 write_all [function] [call site] 00029
4 write_all [function] [call site] 00030
4 Indentation::current [function] [call site] 00031
4 Writer::write [function] [call site] 00032
5 write_all [function] [call site] 00033
4 Writer::write [function] [call site] 00034
4 Writer::write [function] [call site] 00035
3 Indentation::grow [function] [call site] 00038
4 Indentation::ensure [function] [call site] 00039
3 Indentation::shrink [function] [call site] 00043
4 saturating_sub [function] [call site] 00044
3 Writer::write_wrapped [function] [call site] 00045
3 Writer::write_wrapped [function] [call site] 00046
3 Writer::write [function] [call site] 00047
3 Writer::write_wrapped [function] [call site] 00048
3 Writer::write [function] [call site] 00049
3 Writer::write [function] [call site] 00050
3 Writer::write [function] [call site] 00051
3 Writer::write_wrapped [function] [call site] 00052
3 Writer::write_wrapped [function] [call site] 00053
3 Writer::write_wrapped [function] [call site] 00054
3 Writer::write_wrapped [function] [call site] 00055
2 io::Result::borrow [function] [call site] 00058
3 Cow::Borrowed [function] [call site] 00059
2 Writer::write_bom [function] [call site] 00060
3 Writer::write [function] [call site] 00061
2 Writer::write_indent [function] [call site] 00062
3 write_all [function] [call site] 00063
3 write_all [function] [call site] 00064
3 Indentation::current [function] [call site] 00065
2 Writer::create_element [function] [call site] 00067
3 BytesStart::new [function] [call site] 00068
4 str_cow_to_bytes [function] [call site] 00069
5 Decoder::decode_into [function] [call site] 00070
6 std::str::from_utf8 [function] [call site] 00072
6 decode_into [function] [call site] 00073
5 Cow::Borrowed [function] [call site] 00075
5 Cow::Owned [function] [call site] 00077
5 into_bytes [function] [call site] 00078
4 Decoder::utf8 [function] [call site] 00080
3 CDataIterator::new [function] [call site] 00081
2 ElementWriter::with_attributes [function] [call site] 00082
3 into_iter [function] [call site] 00083
3 SpecIter::next [function] [call site] 00084
4 to_writer [function] [call site] 00085
4 Reader::buffer_position [function] [call site] 00086
4 assert_error_matches [function] [call site] 00087
4 unwrap_or [function] [call site] 00088
4 Reader::buffer_position [function] [call site] 00090
4 std::str::from_utf8 [function] [call site] 00093
4 Reader::buffer_position [function] [call site] 00096
4 std::str::from_utf8 [function] [call site] 00099
4 XmlReader::is_empty [function] [call site] 00101
4 std::str::from_utf8 [function] [call site] 00103
3 ElementWriter::write_attr [function] [call site] 00105
4 BytesStart::push_attribute [function] [call site] 00107
5 NamespaceResolver::push [function] [call site] 00109
6 attributes [function] [call site] 00110
7 benchmark_group [function] [call site] 00111
7 bench_function [function] [call site] 00112
7 to_writer [function] [call site] 00113
7 Reader::from_str [function] [call site] 00114
8 NsReader::from_reader [function] [call site] 00115
9 CDataIterator::new [function] [call site] 00116
9 Reader::from_reader [function] [call site] 00117
10 ReaderState::default [function] [call site] 00118
11 Config::default [function] [call site] 00119
11 CDataIterator::new [function] [call site] 00120
11 CDataIterator::new [function] [call site] 00121
11 EncodingRef::Implicit [function] [call site] 00122
8 EncodingRef::Explicit [function] [call site] 00124
8 NsReader::from_reader [function] [call site] 00125
7 NsReader::config_mut [function] [call site] 00127
8 NsReader::config_mut [function] [call site] 00128
7 std::hint::black_box [function] [call site] 00129
7 read_event [function] [call site] 00130
8 benchmark_group [function] [call site] 00131
8 bench_function [function] [call site] 00132
8 to_writer [function] [call site] 00133
8 Reader::from_str [function] [call site] 00134
8 NsReader::config_mut [function] [call site] 00135
8 std::hint::black_box [function] [call site] 00136
8 read_event [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 Config::trim_text [function] [call site] 00142
8 std::hint::black_box [function] [call site] 00143
8 read_event [function] [call site] 00144
7 attributes [function] [call site] 00146
7 bench_function [function] [call site] 00148
7 to_writer [function] [call site] 00149
7 Reader::from_str [function] [call site] 00150
7 NsReader::config_mut [function] [call site] 00151
7 std::hint::black_box [function] [call site] 00152
7 read_event [function] [call site] 00153
7 attributes [function] [call site] 00154
7 Attributes::with_checks [function] [call site] 00155
7 bench_function [function] [call site] 00157
7 to_writer [function] [call site] 00158
7 Reader::from_str [function] [call site] 00159
7 NsReader::config_mut [function] [call site] 00160
7 std::hint::black_box [function] [call site] 00161
7 read_event [function] [call site] 00162
7 reserved_name [function] [call site] 00163
8 NsReader::from_str [function] [call site] 00164
9 CDataIterator::new [function] [call site] 00165
9 Reader::from_str [function] [call site] 00166
8 NsReader::read_resolved_event [function] [call site] 00167
9 NsReader::read_event_impl [function] [call site] 00168
10 NsReader::pop [function] [call site] 00169
11 NamespaceResolver::pop [function] [call site] 00170
12 saturating_sub [function] [call site] 00171
12 to_writer [function] [call site] 00172
12 rposition [function] [call site] 00173
12 BytesPI::target [function] [call site] 00176
13 reserved_name [function] [call site] 00177
12 Attr::map [function] [call site] 00178
13 Attr::DoubleQ [function] [call site] 00179
13 trivial::byte_buf [function] [call site] 00180
14 from_str::<Trivial<ByteBuf>> [function] [call site] 00181
13 trivial::byte_buf [function] [call site] 00182
13 Attr::SingleQ [function] [call site] 00183
13 trivial::byte_buf [function] [call site] 00184
13 trivial::byte_buf [function] [call site] 00185
13 Attr::Empty [function] [call site] 00186
13 trivial::byte_buf [function] [call site] 00187
13 Attr::Unquoted [function] [call site] 00188
13 trivial::byte_buf [function] [call site] 00189
13 trivial::byte_buf [function] [call site] 00190
12 truncate [function] [call site] 00191
12 truncate [function] [call site] 00192
10 read_event_impl [function] [call site] 00193
11 detect_encoding [function] [call site] 00194
11 can_be_refined [function] [call site] 00195
11 crate::reader::EncodingRef::BomDetected [function] [call site] 00196
11 remove_utf8_bom [function] [call site] 00197
11 read_ref [function] [call site] 00198
11 Event::GeneralRef [function] [call site] 00200
11 BytesRef::wrap [function] [call site] 00201
11 Event::Text [function] [call site] 00204
11 emit_text [function] [call site] 00205
11 Error::IllFormed [function] [call site] 00207
11 Event::Text [function] [call site] 00209
11 emit_text [function] [call site] 00210
11 Error::IllFormed [function] [call site] 00212
11 Event::Text [function] [call site] 00214
11 emit_text [function] [call site] 00215
11 Error::IllFormed [function] [call site] 00217
11 Error::Io [function] [call site] 00219
11 skip_whitespace [function] [call site] 00221
11 read_text [function] [call site] 00222
11 Event::Text [function] [call site] 00224
11 emit_text [function] [call site] 00225
11 Event::Text [function] [call site] 00227
11 emit_text [function] [call site] 00228
11 emit_text [function] [call site] 00229
11 io::Result::is_empty [function] [call site] 00230
11 Event::Text [function] [call site] 00233
11 Error::Io [function] [call site] 00235
11 Event::End [function] [call site] 00238
11 close_expanded_empty [function] [call site] 00239
10 NsReader::process_event [function] [call site] 00241
11 NamespaceResolver::push [function] [call site] 00242
11 Event::Start [function] [call site] 00244
11 NamespaceResolver::push [function] [call site] 00245
11 Event::Empty [function] [call site] 00247
11 Event::End [function] [call site] 00249
9 NamespaceResolver::resolve_event [function] [call site] 00251
10 NamespaceResolver::resolve_prefix [function] [call site] 00252
11 to_writer [function] [call site] 00253
11 Result::find [function] [call site] 00255
11 namespace [function] [call site] 00256
12 NsReader::from_str [function] [call site] 00257
12 NsReader::read_resolved_event [function] [call site] 00258
12 NsReader::resolver [function] [call site] 00259
12 NamespaceResolver::bindings [function] [call site] 00260
12 NamespaceBindingsIter::clone [function] [call site] 00261
12 NsReader::read_resolved_event [function] [call site] 00262
12 NsReader::resolver [function] [call site] 00263
12 NamespaceResolver::bindings [function] [call site] 00264
12 NsReader::read_resolved_event [function] [call site] 00265
12 NsReader::resolver [function] [call site] 00266
12 NamespaceResolver::bindings [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
11 Result::find [function] [call site] 00274
11 QName::prefix [function] [call site] 00275
12 QName::index [function] [call site] 00276
13 memchr::memchr [function] [call site] 00277
12 Attr::map [function] [call site] 00278
13 Attr::DoubleQ [function] [call site] 00279
13 trivial::byte_buf [function] [call site] 00280
13 trivial::byte_buf [function] [call site] 00281
13 Attr::SingleQ [function] [call site] 00282
13 trivial::byte_buf [function] [call site] 00283
13 trivial::byte_buf [function] [call site] 00284
13 Attr::Empty [function] [call site] 00285
13 trivial::byte_buf [function] [call site] 00286
13 Attr::Unquoted [function] [call site] 00287
13 trivial::byte_buf [function] [call site] 00288
13 trivial::byte_buf [function] [call site] 00289
11 namespace [function] [call site] 00291
11 ResolveResult::Unknown [function] [call site] 00292
11 Writer::into_inner [function] [call site] 00293
11 W::to_vec [function] [call site] 00294
10 reserved_name [function] [call site] 00295
10 QName::prefix [function] [call site] 00296
10 NamespaceResolver::resolve_prefix [function] [call site] 00298
10 reserved_name [function] [call site] 00299
10 QName::prefix [function] [call site] 00300
10 NamespaceResolver::resolve_prefix [function] [call site] 00302
10 reserved_name [function] [call site] 00303
10 QName::prefix [function] [call site] 00304
7 quick_xml::name::QName [function] [call site] 00306
7 BytesStart::try_get_attribute [function] [call site] 00307
8 BytesStart::attributes [function] [call site] 00308
9 Attributes::wrap [function] [call site] 00309
10 IterState::new [function] [call site] 00310
11 State::Next [function] [call site] 00311
11 CDataIterator::new [function] [call site] 00312
8 Attributes::with_checks [function] [call site] 00313
8 QName::as_ref [function] [call site] 00314
8 QName::as_ref [function] [call site] 00315
7 Result::unwrap [function] [call site] 00319
6 Attributes::with_checks [function] [call site] 00321
6 QName::as_namespace_binding [function] [call site] 00322
7 starts_with [function] [call site] 00323
7 BytesPI::target [function] [call site] 00324
7 PrefixDeclaration::Named [function] [call site] 00327
6 NamespaceResolver::add [function] [call site] 00328
7 extend_from_slice [function] [call site] 00330
7 NamespaceResolver::push [function] [call site] 00331
7 NamespaceError::InvalidXmlPrefixBind [function] [call site] 00334
7 NamespaceError::InvalidXmlnsPrefixBind [function] [call site] 00337
7 NamespaceError::InvalidPrefixForXml [function] [call site] 00340
7 Option::to_vec [function] [call site] 00341
7 NamespaceError::InvalidPrefixForXmlns [function] [call site] 00343
7 Option::to_vec [function] [call site] 00344
7 extend_from_slice [function] [call site] 00346
7 extend_from_slice [function] [call site] 00347
7 NamespaceResolver::push [function] [call site] 00348
7 Option::len [function] [call site] 00349
8 is_whitespace [function] [call site] 00350
6 Namespace [function] [call site] 00353
5 BytesStart::push_attr [function] [call site] 00355
6 extend_from_slice [function] [call site] 00357
6 QName::as_ref [function] [call site] 00358
6 extend_from_slice [function] [call site] 00359
6 extend_from_slice [function] [call site] 00360
6 QName::as_ref [function] [call site] 00361
6 NamespaceResolver::push [function] [call site] 00362
5 Decoder::decode_into [function] [call site] 00363
4 AttributeIndent::Spaces [function] [call site] 00364
4 reserved_name [function] [call site] 00365
4 QName::as_ref [function] [call site] 00366
4 BytesStart::push_indent [function] [call site] 00370
5 extend_from_slice [function] [call site] 00372
4 BytesStart::push_attr [function] [call site] 00373
5 extend_from_slice [function] [call site] 00375
5 QName::as_ref [function] [call site] 00376
5 extend_from_slice [function] [call site] 00377
5 extend_from_slice [function] [call site] 00378
5 QName::as_ref [function] [call site] 00379
5 NamespaceResolver::push [function] [call site] 00380
4 AttributeIndent::Spaces [function] [call site] 00381
4 BytesStart::push_attribute [function] [call site] 00382
4 AttributeIndent::Spaces [function] [call site] 00383
4 BytesStart::push_indent [function] [call site] 00384
4 Indentation::additional [function] [call site] 00385
5 Indentation::ensure [function] [call site] 00386
4 BytesStart::push_attr [function] [call site] 00387
4 AttributeIndent::Configured [function] [call site] 00388
4 BytesStart::push_attribute [function] [call site] 00389
4 AttributeIndent::Configured [function] [call site] 00390
4 BytesStart::push_attribute [function] [call site] 00391
3 Decoder::decode_into [function] [call site] 00392
3 BytesStart::extend_attributes [function] [call site] 00393
4 BytesStart::push_attribute [function] [call site] 00394
5 NamespaceResolver::push [function] [call site] 00396
5 BytesStart::push_attr [function] [call site] 00397
5 Decoder::decode_into [function] [call site] 00398
2 into_iter [function] [call site] 00399
2 ElementWriter::write_text_content [function] [call site] 00401
3 Writer::write_event [function] [call site] 00402
4 io::Result::into [function] [call site] 00403
4 Writer::write_wrapped [function] [call site] 00404
4 Indentation::grow [function] [call site] 00406
4 Indentation::shrink [function] [call site] 00408
4 Writer::write_wrapped [function] [call site] 00409
4 Writer::write_wrapped [function] [call site] 00410
4 Writer::write [function] [call site] 00411
4 Writer::write_wrapped [function] [call site] 00412
4 Writer::write [function] [call site] 00413
4 Writer::write [function] [call site] 00414
4 Writer::write [function] [call site] 00415
4 Writer::write_wrapped [function] [call site] 00416
4 Writer::write_wrapped [function] [call site] 00417
4 Writer::write_wrapped [function] [call site] 00418
4 Writer::write_wrapped [function] [call site] 00419
3 Event::Start [function] [call site] 00422
3 BytesStart::borrow [function] [call site] 00423
4 Cow::Borrowed [function] [call site] 00424
3 Writer::write_event [function] [call site] 00425
3 Event::Text [function] [call site] 00426
3 Writer::write_event [function] [call site] 00427
3 Event::End [function] [call site] 00428
3 NsReader::read_to_end [function] [call site] 00429
2 BytesText::from_escaped [function] [call site] 00444
3 BytesStart::wrap [function] [call site] 00445
4 Cow::Borrowed [function] [call site] 00446
3 str_cow_to_bytes [function] [call site] 00447
3 Decoder::utf8 [function] [call site] 00448
2 ElementWriter::write_cdata_content [function] [call site] 00449
3 Writer::write_event [function] [call site] 00450
3 Event::Start [function] [call site] 00451
3 BytesStart::borrow [function] [call site] 00452
3 Writer::write_event [function] [call site] 00453
3 Event::CData [function] [call site] 00454
3 Writer::write_event [function] [call site] 00455
3 Event::End [function] [call site] 00456
3 NsReader::read_to_end [function] [call site] 00457
2 BytesCData::new [function] [call site] 00459
3 BytesStart::wrap [function] [call site] 00460
3 str_cow_to_bytes [function] [call site] 00461
3 Decoder::utf8 [function] [call site] 00462
2 ElementWriter::write_pi_content [function] [call site] 00463
3 Writer::write_event [function] [call site] 00464
3 Event::Start [function] [call site] 00465
3 BytesStart::borrow [function] [call site] 00466
3 Writer::write_event [function] [call site] 00467
3 Event::PI [function] [call site] 00468
3 Writer::write_event [function] [call site] 00469
3 Event::End [function] [call site] 00470
3 NsReader::read_to_end [function] [call site] 00471
2 BytesPI::new [function] [call site] 00473
3 str_cow_to_bytes [function] [call site] 00474
3 utils::name_len [function] [call site] 00475
4 is_whitespace [function] [call site] 00476
3 Decoder::utf8 [function] [call site] 00477
2 ElementWriter::write_empty [function] [call site] 00478
3 Writer::write_event [function] [call site] 00479
3 Event::Empty [function] [call site] 00480
2 Writer::into_inner [function] [call site] 00482
2 Writer::into_inner [function] [call site] 00483
2 Reader::from_str [function] [call site] 00484
2 std::str::from_utf8 [function] [call site] 00485
2 NsReader::config_mut [function] [call site] 00487
3 NsReader::config_mut [function] [call site] 00488
2 std::hint::black_box [function] [call site] 00490
2 NsReader::read_event [function] [call site] 00491
3 NsReader::read_event_impl [function] [call site] 00492
2 NsReader::from_reader [function] [call site] 00493
3 CDataIterator::new [function] [call site] 00494
3 Reader::from_reader [function] [call site] 00495
2 NsReader::config_mut [function] [call site] 00496
2 std::hint::black_box [function] [call site] 00497
2 NsReader::read_event [function] [call site] 00498
1 std::hint::black_box [function] [call site] 00500