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
79 92 NamespaceResolver::set_level call site: 00092 NsReader::read_resolved_event
46 186 NamespaceResolver::pop call site: 00186 read_event_impl
21 240 NsReader::process_event call site: 00240 NsReader::read_event
21 366 fuzz_round_trip call site: 00366 SpecIter::next
21 445 ElementWriter::write_text_content call site: 00445 Writer::write_wrapped
18 21 fuzz_round_trip call site: 00021 Writer::write_wrapped
18 320 NamespaceResolver::push call site: 00320 Writer::write_wrapped
16 349 fuzz_round_trip call site: 00349 decode_into
14 474 ElementWriter::write_text_content call site: 00474 read_to_end
11 56 NamespaceResolver::push call site: 00056
11 172 NamespaceResolver::set_level call site: 00172
11 406 BytesStart::push_attr call site: 00406 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 DecodingReader::new [function] [call site] 00003
3 new_decoder_without_bom_handling [function] [call site] 00004
3 into_boxed_slice [function] [call site] 00005
3 DecodingReader::new [function] [call site] 00007
4 new_decoder_without_bom_handling [function] [call site] 00008
4 into_boxed_slice [function] [call site] 00009
4 DecodingReader::new [function] [call site] 00011
2 DecodingReader::new [function] [call site] 00012
3 new_decoder_without_bom_handling [function] [call site] 00013
3 into_boxed_slice [function] [call site] 00014
3 DecodingReader::new [function] [call site] 00016
2 to_writer [function] [call site] 00017
3 ByteBuf::deserialize [function] [call site] 00018
4 deserialize_byte_buf [function] [call site] 00019
3 Serializer::new [function] [call site] 00020
2 Writer::write_event [function] [call site] 00021
3 io::Result::into [function] [call site] 00022
4 std::str::from_utf8 [function] [call site] 00024
4 new_decoder_without_bom_handling [function] [call site] 00026
4 max_utf8_buffer_length_without_replacement [function] [call site] 00028
4 DetectedEncoding::bom_len [function] [call site] 00029
4 decode_to_string_without_replacement [function] [call site] 00031
4 EncodingError::Other [function] [call site] 00034
3 Writer::write_wrapped [function] [call site] 00035
4 write_all [function] [call site] 00036
4 write_all [function] [call site] 00037
4 Indentation::current [function] [call site] 00038
4 &str::as_bytes [function] [call site] 00039
4 Writer::write [function] [call site] 00040
5 write_all [function] [call site] 00041
4 Writer::write [function] [call site] 00043
4 Writer::write [function] [call site] 00045
3 Indentation::grow [function] [call site] 00049
4 Indentation::ensure [function] [call site] 00050
5 DetectedEncoding::bom_len [function] [call site] 00051
5 NamespaceResolver::push [function] [call site] 00052
6 checked_add [function] [call site] 00053
6 NamespaceError::TooDeeplyNested [function] [call site] 00055
6 attributes [function] [call site] 00056
7 benchmark_group [function] [call site] 00057
7 bench_function [function] [call site] 00058
7 to_writer [function] [call site] 00059
7 Reader::from_str [function] [call site] 00060
8 NsReader::from_reader [function] [call site] 00061
9 DecodingReader::new [function] [call site] 00062
10 new_decoder_without_bom_handling [function] [call site] 00063
10 into_boxed_slice [function] [call site] 00064
10 DecodingReader::new [function] [call site] 00066
9 Reader::from_reader [function] [call site] 00067
10 ReaderState::default [function] [call site] 00068
11 Config::default [function] [call site] 00069
11 DecodingReader::new [function] [call site] 00070
12 new_decoder_without_bom_handling [function] [call site] 00071
12 into_boxed_slice [function] [call site] 00072
12 DecodingReader::new [function] [call site] 00074
11 DecodingReader::new [function] [call site] 00075
11 EncodingRef::Implicit [function] [call site] 00076
8 EncodingRef::Explicit [function] [call site] 00078
8 NsReader::from_reader [function] [call site] 00079
7 Writer::config_mut [function] [call site] 00081
7 std::hint::black_box [function] [call site] 00082
7 NsReader::read_event [function] [call site] 00083
8 NsReader::read_event_impl [function] [call site] 00084
9 NsReader::pop [function] [call site] 00085
10 NamespaceResolver::pop [function] [call site] 00086
11 NamespaceResolver::set_level [function] [call site] 00087
12 to_writer [function] [call site] 00088
12 rposition [function] [call site] 00089
12 BytesPI::target [function] [call site] 00092
13 reserved_name [function] [call site] 00093
14 NsReader::from_str [function] [call site] 00094
15 DecodingReader::new [function] [call site] 00095
15 Reader::from_str [function] [call site] 00096
14 NsReader::read_resolved_event [function] [call site] 00097
15 NsReader::read_event_impl [function] [call site] 00098
15 NamespaceResolver::resolve_event [function] [call site] 00100
16 NamespaceResolver::resolve_prefix [function] [call site] 00101
17 to_writer [function] [call site] 00102
17 Result::find [function] [call site] 00104
17 namespace [function] [call site] 00105
18 NsReader::from_str [function] [call site] 00106
18 NsReader::read_resolved_event [function] [call site] 00107
18 NsReader::resolver [function] [call site] 00108
18 NamespaceResolver::max_namespace_bindings [function] [call site] 00109
18 usize::clone [function] [call site] 00110
18 NsReader::read_resolved_event [function] [call site] 00111
18 NsReader::resolver [function] [call site] 00112
18 NamespaceResolver::max_namespace_bindings [function] [call site] 00113
18 NsReader::read_resolved_event [function] [call site] 00114
18 NsReader::resolver [function] [call site] 00115
18 NamespaceResolver::max_namespace_bindings [function] [call site] 00116
18 NsReader::read_resolved_event [function] [call site] 00117
18 NsReader::resolver [function] [call site] 00118
18 NamespaceResolver::max_namespace_bindings [function] [call site] 00119
18 NsReader::read_resolved_event [function] [call site] 00120
18 NsReader::resolver [function] [call site] 00121
18 NamespaceResolver::max_namespace_bindings [function] [call site] 00122
17 Result::find [function] [call site] 00123
17 QName::prefix [function] [call site] 00124
18 Attr::map [function] [call site] 00127
19 Attr::DoubleQ [function] [call site] 00128
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00129
20 xml_decoding_reader::read_until_error [function] [call site] 00130
21 DecodingReader::new [function] [call site] 00131
21 Reader::from_reader [function] [call site] 00132
21 DecodingReader::new [function] [call site] 00133
22 new_decoder_without_bom_handling [function] [call site] 00134
22 into_boxed_slice [function] [call site] 00135
22 DecodingReader::new [function] [call site] 00137
21 Writer::config_mut [function] [call site] 00138
21 Config::trim_text [function] [call site] 00139
21 NsReader::read_event_into [function] [call site] 00140
22 NsReader::read_event_impl [function] [call site] 00141
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00142
19 Attr::SingleQ [function] [call site] 00143
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00144
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00145
19 Attr::Empty [function] [call site] 00146
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00147
19 Attr::Unquoted [function] [call site] 00148
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00149
19 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00150
17 namespace [function] [call site] 00152
17 ResolveResult::Unknown [function] [call site] 00153
17 DecodingReader::into_inner [function] [call site] 00154
17 R::to_string [function] [call site] 00155
18 DecodingReader::new [function] [call site] 00156
18 to_writer [function] [call site] 00157
19 ByteBuf::deserialize [function] [call site] 00158
19 Serializer::new [function] [call site] 00159
16 reserved_name [function] [call site] 00161
16 QName::prefix [function] [call site] 00162
16 NamespaceResolver::resolve_prefix [function] [call site] 00164
16 reserved_name [function] [call site] 00165
16 QName::prefix [function] [call site] 00166
16 NamespaceResolver::resolve_prefix [function] [call site] 00168
16 reserved_name [function] [call site] 00169
16 QName::prefix [function] [call site] 00170
12 Attr::map [function] [call site] 00172
13 Attr::DoubleQ [function] [call site] 00173
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00174
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00175
13 Attr::SingleQ [function] [call site] 00176
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00177
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00178
13 Attr::Empty [function] [call site] 00179
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00180
13 Attr::Unquoted [function] [call site] 00181
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00182
13 xml_decoding_reader::truncated_utf16_at_eof [function] [call site] 00183
12 truncate [function] [call site] 00184
12 truncate [function] [call site] 00185
11 saturating_sub [function] [call site] 00186
9 read_event_impl [function] [call site] 00187
10 detect_encoding [function] [call site] 00188
10 can_be_refined [function] [call site] 00189
10 crate::reader::EncodingRef::BomDetected [function] [call site] 00190
10 encoding [function] [call site] 00191
10 remove_utf8_bom [function] [call site] 00192
10 read_ref [function] [call site] 00193
10 Event::GeneralRef [function] [call site] 00195
10 BytesRef::wrap [function] [call site] 00196
10 Event::Text [function] [call site] 00199
10 emit_text [function] [call site] 00200
10 Error::IllFormed [function] [call site] 00202
10 Event::Text [function] [call site] 00204
10 emit_text [function] [call site] 00205
10 Error::IllFormed [function] [call site] 00207
10 Event::Text [function] [call site] 00209
10 emit_text [function] [call site] 00210
10 Error::IllFormed [function] [call site] 00212
10 skip_whitespace [function] [call site] 00214
10 read_text [function] [call site] 00215
10 Event::Text [function] [call site] 00217
10 emit_text [function] [call site] 00218
10 Event::Text [function] [call site] 00220
10 emit_text [function] [call site] 00221
10 emit_text [function] [call site] 00222
10 io::Result::is_empty [function] [call site] 00223
10 Event::Text [function] [call site] 00226
10 Event::End [function] [call site] 00229
10 close_expanded_empty [function] [call site] 00230
9 NsReader::process_event [function] [call site] 00232
10 NamespaceResolver::push [function] [call site] 00233
10 Event::Start [function] [call site] 00235
10 NamespaceResolver::push [function] [call site] 00236
10 Event::Empty [function] [call site] 00238
10 Event::End [function] [call site] 00240
7 attributes [function] [call site] 00241
7 bench_function [function] [call site] 00243
7 to_writer [function] [call site] 00244
7 Reader::from_str [function] [call site] 00245
7 Writer::config_mut [function] [call site] 00246
7 std::hint::black_box [function] [call site] 00247
7 NsReader::read_event [function] [call site] 00248
7 attributes [function] [call site] 00249
7 Attributes::with_checks [function] [call site] 00250
7 bench_function [function] [call site] 00252
7 to_writer [function] [call site] 00253
7 Reader::from_str [function] [call site] 00254
7 Writer::config_mut [function] [call site] 00255
7 std::hint::black_box [function] [call site] 00256
7 NsReader::read_event [function] [call site] 00257
7 reserved_name [function] [call site] 00258
7 quick_xml::name::QName [function] [call site] 00259
7 BytesStart::try_get_attribute [function] [call site] 00260
8 BytesStart::attributes [function] [call site] 00261
9 Attributes::wrap [function] [call site] 00262
10 IterState::new [function] [call site] 00263
11 State::Next [function] [call site] 00264
11 DecodingReader::new [function] [call site] 00265
8 Attributes::with_checks [function] [call site] 00266
8 QName::as_ref [function] [call site] 00267
7 Result::unwrap [function] [call site] 00271
7 IdentityHasher::finish [function] [call site] 00272
6 Attributes::with_checks [function] [call site] 00273
6 QName::as_namespace_binding [function] [call site] 00274
7 starts_with [function] [call site] 00275
7 BytesPI::target [function] [call site] 00277
7 PrefixDeclaration::Named [function] [call site] 00280
6 NamespaceResolver::add [function] [call site] 00281
7 DetectedEncoding::bom_len [function] [call site] 00282
7 saturating_sub [function] [call site] 00283
7 NamespaceError::TooManyBindings [function] [call site] 00285
7 DetectedEncoding::bom_len [function] [call site] 00286
7 NamespaceResolver::push [function] [call site] 00288
7 DetectedEncoding::bom_len [function] [call site] 00289
7 NamespaceError::InvalidXmlPrefixBind [function] [call site] 00291
7 to_string [function] [call site] 00292
8 DecodingReader::new [function] [call site] 00293
8 to_writer [function] [call site] 00294
7 NamespaceError::InvalidXmlnsPrefixBind [function] [call site] 00297
7 to_string [function] [call site] 00298
7 NamespaceError::InvalidPrefixForXml [function] [call site] 00300
7 Option::to_string [function] [call site] 00301
8 DecodingReader::new [function] [call site] 00302
8 to_writer [function] [call site] 00303
7 NamespaceError::InvalidPrefixForXmlns [function] [call site] 00306
7 Option::to_string [function] [call site] 00307
7 DetectedEncoding::bom_len [function] [call site] 00308
7 saturating_sub [function] [call site] 00309
7 NamespaceError::TooManyBindings [function] [call site] 00311
7 DetectedEncoding::bom_len [function] [call site] 00312
7 NamespaceResolver::push [function] [call site] 00315
7 DetectedEncoding::bom_len [function] [call site] 00316
7 DetectedEncoding::bom_len [function] [call site] 00317
6 Namespace [function] [call site] 00319
3 Indentation::shrink [function] [call site] 00322
4 saturating_sub [function] [call site] 00323
3 Writer::write_wrapped [function] [call site] 00324
3 Writer::write_wrapped [function] [call site] 00325
3 Writer::write [function] [call site] 00326
3 Writer::write_wrapped [function] [call site] 00328
3 Writer::write [function] [call site] 00329
3 Writer::write [function] [call site] 00330
3 Writer::write [function] [call site] 00332
3 Writer::write_wrapped [function] [call site] 00333
3 Writer::write_wrapped [function] [call site] 00334
3 Writer::write_wrapped [function] [call site] 00335
3 Writer::write_wrapped [function] [call site] 00336
2 io::Result::borrow [function] [call site] 00339
3 Cow::Borrowed [function] [call site] 00340
2 Writer::write_bom [function] [call site] 00341
3 Writer::write [function] [call site] 00342
2 Writer::write_indent [function] [call site] 00343
3 write_all [function] [call site] 00344
3 write_all [function] [call site] 00345
3 Indentation::current [function] [call site] 00346
3 &str::as_bytes [function] [call site] 00347
2 Writer::create_element [function] [call site] 00349
3 BytesStart::new [function] [call site] 00350
4 decode_into [function] [call site] 00351
5 std::str::from_utf8 [function] [call site] 00353
5 new_decoder_without_bom_handling [function] [call site] 00355
5 max_utf8_buffer_length_without_replacement [function] [call site] 00357
5 DetectedEncoding::bom_len [function] [call site] 00358
5 decode_to_string_without_replacement [function] [call site] 00360
5 EncodingError::Other [function] [call site] 00363
4 DetectedEncoding::bom_len [function] [call site] 00364
3 DecodingReader::new [function] [call site] 00365
2 ElementWriter::with_attributes [function] [call site] 00366
3 into_iter [function] [call site] 00367
3 SpecIter::next [function] [call site] 00368
4 to_writer [function] [call site] 00369
4 Reader::buffer_position [function] [call site] 00370
4 assert_error_matches [function] [call site] 00371
4 unwrap_or [function] [call site] 00372
4 Reader::buffer_position [function] [call site] 00374
4 std::str::from_utf8 [function] [call site] 00377
4 Reader::buffer_position [function] [call site] 00380
4 std::str::from_utf8 [function] [call site] 00383
4 xml::start_position_at_end_is_empty [function] [call site] 00385
5 Attributes::new [function] [call site] 00386
6 BytesStart::wrap [function] [call site] 00387
7 Cow::Borrowed [function] [call site] 00388
5 Attributes::html [function] [call site] 00389
6 BytesStart::wrap [function] [call site] 00390
5 Attributes::new [function] [call site] 00391
4 std::str::from_utf8 [function] [call site] 00393
3 ElementWriter::write_attr [function] [call site] 00395
4 BytesStart::push_attribute [function] [call site] 00397
5 NamespaceResolver::push [function] [call site] 00399
5 BytesStart::push_attr [function] [call site] 00400
6 QName::as_ref [function] [call site] 00403
6 NamespaceResolver::push [function] [call site] 00406
5 decode_into [function] [call site] 00407
4 AttributeIndent::Spaces [function] [call site] 00408
4 reserved_name [function] [call site] 00409
4 QName::as_ref [function] [call site] 00410
4 DetectedEncoding::bom_len [function] [call site] 00411
4 DetectedEncoding::bom_len [function] [call site] 00412
4 &str::repeat [function] [call site] 00413
4 BytesStart::push_indent [function] [call site] 00414
4 BytesStart::push_attr [function] [call site] 00417
5 QName::as_ref [function] [call site] 00420
5 NamespaceResolver::push [function] [call site] 00423
4 AttributeIndent::Spaces [function] [call site] 00424
4 BytesStart::push_attribute [function] [call site] 00425
4 AttributeIndent::Spaces [function] [call site] 00426
4 BytesStart::push_indent [function] [call site] 00427
4 Indentation::additional [function] [call site] 00428
5 Indentation::ensure [function] [call site] 00429
4 BytesStart::push_attr [function] [call site] 00430
4 AttributeIndent::Configured [function] [call site] 00431
4 BytesStart::push_attribute [function] [call site] 00432
4 AttributeIndent::Configured [function] [call site] 00433
4 BytesStart::push_attribute [function] [call site] 00434
3 decode_into [function] [call site] 00435
3 BytesStart::extend_attributes [function] [call site] 00436
4 BytesStart::push_attribute [function] [call site] 00437
5 NamespaceResolver::push [function] [call site] 00439
5 BytesStart::push_attr [function] [call site] 00440
5 decode_into [function] [call site] 00441
2 into_iter [function] [call site] 00442
2 ElementWriter::write_text_content [function] [call site] 00444
3 Writer::write_event [function] [call site] 00445
4 io::Result::into [function] [call site] 00446
4 Writer::write_wrapped [function] [call site] 00447
4 Indentation::grow [function] [call site] 00449
4 Indentation::shrink [function] [call site] 00451
4 Writer::write_wrapped [function] [call site] 00452
4 Writer::write_wrapped [function] [call site] 00453
4 Writer::write [function] [call site] 00454
4 Writer::write_wrapped [function] [call site] 00456
4 Writer::write [function] [call site] 00457
4 Writer::write [function] [call site] 00458
4 Writer::write [function] [call site] 00460
4 Writer::write_wrapped [function] [call site] 00461
4 Writer::write_wrapped [function] [call site] 00462
4 Writer::write_wrapped [function] [call site] 00463
4 Writer::write_wrapped [function] [call site] 00464
3 Event::Start [function] [call site] 00467
3 BytesStart::borrow [function] [call site] 00468
4 Cow::Borrowed [function] [call site] 00469
3 Writer::write_event [function] [call site] 00470
3 Event::Text [function] [call site] 00471
3 Writer::write_event [function] [call site] 00472
3 Event::End [function] [call site] 00473
3 NsReader::read_to_end [function] [call site] 00474
4 NamespaceResolver::pop [function] [call site] 00487
2 BytesText::from_escaped [function] [call site] 00490
3 decode_into [function] [call site] 00491
2 ElementWriter::write_cdata_content [function] [call site] 00492
3 Writer::write_event [function] [call site] 00493
3 Event::Start [function] [call site] 00494
3 BytesStart::borrow [function] [call site] 00495
3 Writer::write_event [function] [call site] 00496
3 Event::CData [function] [call site] 00497
3 Writer::write_event [function] [call site] 00498
3 Event::End [function] [call site] 00499
3 NsReader::read_to_end [function] [call site] 00500
2 BytesCData::new [function] [call site] 00502
3 decode_into [function] [call site] 00503
2 ElementWriter::write_pi_content [function] [call site] 00504
3 Writer::write_event [function] [call site] 00505
3 Event::Start [function] [call site] 00506
3 BytesStart::borrow [function] [call site] 00507
3 Writer::write_event [function] [call site] 00508
3 Event::PI [function] [call site] 00509
3 Writer::write_event [function] [call site] 00510
3 Event::End [function] [call site] 00511
3 NsReader::read_to_end [function] [call site] 00512
2 BytesPI::new [function] [call site] 00514
3 decode_into [function] [call site] 00515
3 utils::name_len [function] [call site] 00516
4 is_whitespace [function] [call site] 00517
2 ElementWriter::write_empty [function] [call site] 00519
3 Writer::write_event [function] [call site] 00520
3 Event::Empty [function] [call site] 00521
2 DecodingReader::into_inner [function] [call site] 00523
2 DecodingReader::into_inner [function] [call site] 00524
2 Reader::from_str [function] [call site] 00525
2 std::str::from_utf8 [function] [call site] 00526
2 Writer::config_mut [function] [call site] 00528
2 std::hint::black_box [function] [call site] 00530
2 NsReader::read_event [function] [call site] 00531
3 NsReader::read_event_impl [function] [call site] 00532
2 NsReader::from_reader [function] [call site] 00533
3 DecodingReader::new [function] [call site] 00534
3 Reader::from_reader [function] [call site] 00535
2 Writer::config_mut [function] [call site] 00536
2 std::hint::black_box [function] [call site] 00537
2 NsReader::read_event [function] [call site] 00538
1 std::hint::black_box [function] [call site] 00540