Fuzz introspector: mp4
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
23 0 EP call site: 00000 mp4parse_new_common
20 241 get_indice_table call site: 00241 mp4parse_get_track_audio_info
18 185 get_track_audio_info call site: 00185 mp4parse_new_common
17 411 mp4parse_is_fragmented call site: 00411 mp4parse_get_track_audio_info
16 70 sample_to_chunk_iter call site: 00070 fuzz_target
13 321 SampleToChunkIterator::locate call site: 00321 TimeOffsetIterator::next
11 441 mp4parse_get_pssh_info call site: 00441 mp4parse_get_track_audio_info
10 49 get_pssh_info call site: 00049 fuzz_target
10 394 mp4parse_get_indice_table call site: 00394 fuzz_target
9 362 TimeOffsetIterator::next_offset_time call site: 00362 TimeOffsetIterator::next
8 96 mp4parse_get_track_info call site: 00096
7 271 get_indice_table call site: 00271 parse_minimal_mp4

Fuzzer calltree

0 fuzz_target [function] [call site] 00000
1 std::io::Cursor::new [function] [call site] 00001
2 mp4parse_new_common [function] [call site] 00002
3 *const [call site] 00003
3 *mut [call site] 00006
3 mp4parse_new_common_safe [function] [call site] 00008
4 P::read [function] [call site] 00009
5 std::slice::from_raw_parts_mut [function] [call site] 00010
5 buf_read [function] [call site] 00011
6 std::slice::from_raw_parts_mut [function] [call site] 00012
4 isize::map [function] [call site] 00014
4 TryBox::try_new [function] [call site] 00016
1 std::ptr::null_mut [function] [call site] 00022
1 mp4parse_new [function] [call site] 00023
2 mp4parse_new_common [function] [call site] 00024
1 Mp4parseByteData::default [function] [call site] 00025
2 std::ptr::null [function] [call site] 00026
2 std::ptr::null [function] [call site] 00029
1 mp4parse_get_fragment_info [function] [call site] 00030
2 (*mut [call site] 00032
2 Mp4parseByteData::default [function] [call site] 00033
2 Mp4parseParser::context [function] [call site] 00034
1 Mp4parseByteData::default [function] [call site] 00035
1 mp4parse_get_pssh_info [function] [call site] 00036
2 (*mut [call site] 00038
2 Mp4parseByteData::default [function] [call site] 00039
2 get_pssh_info [function] [call site] 00040
3 TryVec::new [function] [call site] 00045
4 mp4parse_new_common [function] [call site] 00046
3 write_u32::<byteorder::NativeEndian> [function] [call site] 00047
3 extend_from_slice [function] [call site] 00048
3 AvifContext::item_as_slice [function] [call site] 00049
4 fuzz_target [function] [call site] 00050
5 std::io::Cursor::new [function] [call site] 00051
5 std::ptr::null_mut [function] [call site] 00053
5 mp4parse_new [function] [call site] 00054
5 Mp4parseByteData::default [function] [call site] 00055
5 mp4parse_get_fragment_info [function] [call site] 00056
5 Mp4parseByteData::default [function] [call site] 00057
5 mp4parse_get_pssh_info [function] [call site] 00058
5 mp4parse_get_track_count [function] [call site] 00059
5 mp4parse_is_fragmented [function] [call site] 00065
6 Mp4parseParser::context_mut [function] [call site] 00067
6 sample_to_chunk_iter [function] [call site] 00069
7 AvifContext::item_as_slice [function] [call site] 00070
8 fuzz_target [function] [call site] 00071
8 Self::get [function] [call site] 00074
9 std::io::Cursor::new [function] [call site] 00075
9 std::ptr::null_mut [function] [call site] 00077
9 mp4parse_new [function] [call site] 00078
9 Mp4parseByteData::default [function] [call site] 00079
9 mp4parse_get_fragment_info [function] [call site] 00080
9 Mp4parseByteData::default [function] [call site] 00081
9 mp4parse_get_pssh_info [function] [call site] 00082
9 mp4parse_get_track_count [function] [call site] 00083
9 mp4parse_is_fragmented [function] [call site] 00084
9 Mp4parseByteData::default [function] [call site] 00085
9 mp4parse_get_track_info [function] [call site] 00086
10 (*mut [call site] 00088
10 Mp4parseByteData::default [function] [call site] 00089
10 Mp4parseParser::context_mut [function] [call site] 00090
10 mp4parse::unstable::rational_scale [function] [call site] 00097
11 T::is_zero [function] [call site] 00098
11 num_traits::cast [function] [call site] 00099
11 and_then [function] [call site] 00100
11 checked_mul [function] [call site] 00101
11 checked_mul [function] [call site] 00102
11 and_then [function] [call site] 00103
11 checked_add [function] [call site] 00104
10 mp4parse::unstable::CheckedInteger [function] [call site] 00105
10 mp4parse::unstable::rational_scale [function] [call site] 00106
9 Mp4parseTrackVideoInfo::default [function] [call site] 00107
10 std::ptr::null [function] [call site] 00108
9 mp4parse_get_track_video_info [function] [call site] 00109
10 (*mut [call site] 00111
10 Mp4parseByteData::default [function] [call site] 00112
10 mp4parse_get_track_video_info_safe [function] [call site] 00113
11 Mp4parseParser::context [function] [call site] 00114
11 UnsupportedFeatures::is_empty [function] [call site] 00120
11 TryVec::with_capacity [function] [call site] 00122
11 sample_to_chunk_iter [function] [call site] 00124
11 Mp4parseByteData::default [function] [call site] 00125
12 std::ptr::null [function] [call site] 00126
12 std::ptr::null [function] [call site] 00127
11 Mp4parseByteData::set_data [function] [call site] 00129
12 Self::len [function] [call site] 00130
12 Self::as_ptr [function] [call site] 00131
11 Mp4parseByteData::set_data [function] [call site] 00132
11 sample_to_chunk_iter [function] [call site] 00133
11 OptionalFourCc::Some [function] [call site] 00136
11 Mp4parseByteData::set_data [function] [call site] 00138
11 unwrap_or [function] [call site] 00139
11 unwrap_or [function] [call site] 00140
11 Mp4parseByteData::set_data [function] [call site] 00143
11 UnsupportedFeatures::insert [function] [call site] 00145
12 UnsupportedFeatures::feature_to_bitfield [function] [call site] 00146
11 fuzz_target [function] [call site] 00147
11 Self::len [function] [call site] 00148
11 Self::len [function] [call site] 00150
11 Self::as_ptr [function] [call site] 00151
10 Result::into [function] [call site] 00154
9 Mp4parseByteData::default [function] [call site] 00155
9 mp4parse_get_track_audio_info [function] [call site] 00156
10 (*mut [call site] 00158
10 Mp4parseByteData::default [function] [call site] 00159
10 get_track_audio_info [function] [call site] 00160
11 UnsupportedFeatures::is_empty [function] [call site] 00165
11 TryVec::with_capacity [function] [call site] 00167
11 sample_to_chunk_iter [function] [call site] 00169
11 Mp4parseByteData::default [function] [call site] 00170
12 std::ptr::null [function] [call site] 00171
12 std::ptr::null [function] [call site] 00172
11 TryVec::new [function] [call site] 00184
11 mp4parse::serialize_opus_header [function] [call site] 00185
12 Vec::<u8>::new [function] [call site] 00186
13 mp4parse_new_common [function] [call site] 00187
12 super::serialize_opus_header [function] [call site] 00188
13 Vec::<u8>::new [function] [call site] 00189
13 super::serialize_opus_header [function] [call site] 00190
13 Vec::<u8>::new [function] [call site] 00194
13 super::serialize_opus_header [function] [call site] 00195
12 Vec::<u8>::new [function] [call site] 00200
12 super::serialize_opus_header [function] [call site] 00201
11 UnsupportedFeatures::insert [function] [call site] 00204
11 fuzz_target [function] [call site] 00205
11 sample_to_chunk_iter [function] [call site] 00212
11 OptionalFourCc::Some [function] [call site] 00215
11 Mp4parseByteData::set_data [function] [call site] 00217
11 unwrap_or [function] [call site] 00218
11 unwrap_or [function] [call site] 00219
11 Mp4parseByteData::set_data [function] [call site] 00222
11 UnsupportedFeatures::insert [function] [call site] 00224
11 fuzz_target [function] [call site] 00225
11 Self::len [function] [call site] 00226
11 Self::len [function] [call site] 00228
11 Self::as_ptr [function] [call site] 00229
10 Result::into [function] [call site] 00232
9 Mp4parseByteData::default [function] [call site] 00233
9 mp4parse_get_indice_table [function] [call site] 00234
10 Mp4parseByteData::default [function] [call site] 00236
10 get_indice_table [function] [call site] 00237
11 sample_to_chunk_iter [function] [call site] 00238
11 &mut [call site] 00242
12 std::io::Cursor::new [function] [call site] 00243
12 std::ptr::null_mut [function] [call site] 00245
12 mp4parse_new [function] [call site] 00246
12 Mp4parseByteData::default [function] [call site] 00247
12 mp4parse_get_fragment_info [function] [call site] 00248
12 Mp4parseByteData::default [function] [call site] 00249
12 mp4parse_get_pssh_info [function] [call site] 00250
12 mp4parse_get_track_count [function] [call site] 00251
12 mp4parse_is_fragmented [function] [call site] 00252
12 Mp4parseByteData::default [function] [call site] 00253
12 mp4parse_get_track_info [function] [call site] 00254
12 Mp4parseTrackVideoInfo::default [function] [call site] 00255
12 mp4parse_get_track_video_info [function] [call site] 00256
12 Mp4parseByteData::default [function] [call site] 00257
12 mp4parse_get_track_audio_info [function] [call site] 00258
12 Mp4parseByteData::default [function] [call site] 00259
12 mp4parse_get_indice_table [function] [call site] 00260
12 mp4parse_free [function] [call site] 00261
13 TryBox::from_raw [function] [call site] 00262
11 Mp4parseByteData::set_indices [function] [call site] 00263
12 Self::len [function] [call site] 00264
12 Self::as_ptr [function] [call site] 00265
11 Feature::try_from [function] [call site] 00267
11 Result::ok [function] [call site] 00271
12 parse_minimal_mp4 [function] [call site] 00272
13 std::fs::File::open [function] [call site] 00273
13 std::ptr::null_mut [function] [call site] 00276
13 mp4parse_new [function] [call site] 00277
12 mp4parse_free [function] [call site] 00278
11 Feature::try_from [function] [call site] 00280
11 Result::ok [function] [call site] 00281
11 mp4parse::unstable::create_sample_table [function] [call site] 00286
12 sample_to_chunk_iter [function] [call site] 00288
12 sample_to_chunk_iter [function] [call site] 00289
13 AvifContext::item_as_slice [function] [call site] 00290
13 &'a [call site] 00291
14 AvifContext::item_as_slice [function] [call site] 00292
14 &'a [call site] 00293
14 SampleToChunkIterator::peekable [function] [call site] 00294
14 &'a [call site] 00295
14 try_into [function] [call site] 00296
13 SampleToChunkIterator::peekable [function] [call site] 00298
13 &'a [call site] 00299
13 try_into [function] [call site] 00300
12 SampleToChunkIterator::map [function] [call site] 00302
12 to_usize [function] [call site] 00303
12 try_fold [function] [call site] 00304
12 TryVec::with_capacity [function] [call site] 00305
12 minimal_mp4_parse_ok [function] [call site] 00306
13 parse_minimal_mp4 [function] [call site] 00307
13 mp4parse_free [function] [call site] 00308
12 sample_to_chunk_iter [function] [call site] 00309
12 fuzz_target [function] [call site] 00310
12 TimeOffsetIterator::next [function] [call site] 00312
13 TimeOffsetIterator::next [function] [call site] 00313
13 SampleToChunkIterator::next [function] [call site] 00315
14 TimeOffsetIterator::next [function] [call site] 00316
14 SampleToChunkIterator::locate [function] [call site] 00318
15 TimeOffsetIterator::next [function] [call site] 00319
15 checked_add [function] [call site] 00321
14 checked_sub [function] [call site] 00322
14 try_into [function] [call site] 00324
14 and_then [function] [call site] 00326
14 TimeOffsetIterator::next [function] [call site] 00327
13 TimeOffsetVersion::Version0 [function] [call site] 00329
13 i64::from [function] [call site] 00330
13 i64::from [function] [call site] 00331
13 TimeOffsetIterator::next [function] [call site] 00332
12 Mp4parseByteData::default [function] [call site] 00337
12 minimal_mp4_parse_ok [function] [call site] 00338
12 SampleToChunkIterator::checked_sub [function] [call site] 00339
12 and_then [function] [call site] 00340
12 AvifContext::item_as_slice [function] [call site] 00344
12 sample_to_chunk_iter [function] [call site] 00345
12 AvifContext::item_as_slice [function] [call site] 00346
12 sample_to_chunk_iter [function] [call site] 00347
12 TrackScaledTime::<i64> [function] [call site] 00348
12 as_mut_slice [function] [call site] 00349
12 TimeToSampleIterator::next_delta [function] [call site] 00350
13 TimeToSampleIterator::next [function] [call site] 00351
14 TimeOffsetIterator::next [function] [call site] 00352
14 TimeOffsetIterator::next [function] [call site] 00354
14 TimeOffsetIterator::next [function] [call site] 00355
13 TrackScaledTime::<i64> [function] [call site] 00358
13 i64::from [function] [call site] 00359
13 TrackScaledTime::<i64> [function] [call site] 00360
12 TimeOffsetIterator::next_offset_time [function] [call site] 00361
13 TimeOffsetIterator::next [function] [call site] 00362
14 TimeOffsetIterator::next [function] [call site] 00363
14 SampleToChunkIterator::next [function] [call site] 00365
14 TimeOffsetVersion::Version0 [function] [call site] 00366
14 i64::from [function] [call site] 00367
14 i64::from [function] [call site] 00368
14 TimeOffsetIterator::next [function] [call site] 00369
13 TrackScaledTime::<i64> [function] [call site] 00372
13 TrackScaledTime::<i64> [function] [call site] 00373
12 CheckedInteger [function] [call site] 00374
12 CheckedInteger [function] [call site] 00375
12 CheckedInteger [function] [call site] 00376
12 UnsupportedFeatures::is_empty [function] [call site] 00377
12 TryVec::with_capacity [function] [call site] 00378
12 minimal_mp4_parse_ok [function] [call site] 00380
12 minimal_mp4_parse_ok [function] [call site] 00383
12 sort_by_key [function] [call site] 00384
12 fuzz_target [function] [call site] 00385
11 Mp4parseByteData::set_indices [function] [call site] 00389
11 UnsupportedFeatures::insert [function] [call site] 00390
12 UnsupportedFeatures::feature_to_bitfield [function] [call site] 00391
10 Result::into [function] [call site] 00394
9 mp4parse_free [function] [call site] 00395
8 unwrap_or_else [function] [call site] 00396
8 AvifContext::item_as_slice [function] [call site] 00397
9 fuzz_target [function] [call site] 00398
9 Self::get [function] [call site] 00401
9 unwrap_or_else [function] [call site] 00402
9 AvifContext::item_as_slice [function] [call site] 00403
7 &'a [call site] 00404
7 SampleToChunkIterator::peekable [function] [call site] 00405
7 &'a [call site] 00406
6 SampleToChunkIterator::find [function] [call site] 00409
6 UnsupportedFeatures::is_empty [function] [call site] 00412
6 UnsupportedFeatures::is_empty [function] [call site] 00413
6 UnsupportedFeatures::is_empty [function] [call site] 00414
5 Mp4parseByteData::default [function] [call site] 00415
5 mp4parse_get_track_info [function] [call site] 00416
5 Mp4parseTrackVideoInfo::default [function] [call site] 00417
5 mp4parse_get_track_video_info [function] [call site] 00418
5 Mp4parseByteData::default [function] [call site] 00419
5 mp4parse_get_track_audio_info [function] [call site] 00420
5 Mp4parseByteData::default [function] [call site] 00421
5 mp4parse_get_indice_table [function] [call site] 00422
5 mp4parse_free [function] [call site] 00423
4 Self::get [function] [call site] 00426
4 unwrap_or_else [function] [call site] 00427
4 AvifContext::item_as_slice [function] [call site] 00428
3 extend_from_slice [function] [call site] 00429
3 AvifContext::item_as_slice [function] [call site] 00430
4 fuzz_target [function] [call site] 00431
4 Self::get [function] [call site] 00434
4 unwrap_or_else [function] [call site] 00435
4 AvifContext::item_as_slice [function] [call site] 00436
3 extend_from_slice [function] [call site] 00437
3 AvifContext::item_as_slice [function] [call site] 00438
3 Mp4parseByteData::set_data [function] [call site] 00439
2 Result::into [function] [call site] 00441
1 mp4parse_get_track_count [function] [call site] 00442
1 mp4parse_is_fragmented [function] [call site] 00443
1 Mp4parseByteData::default [function] [call site] 00444
1 mp4parse_get_track_info [function] [call site] 00445
1 Mp4parseTrackVideoInfo::default [function] [call site] 00446
1 mp4parse_get_track_video_info [function] [call site] 00447
1 Mp4parseByteData::default [function] [call site] 00448
1 mp4parse_get_track_audio_info [function] [call site] 00449
1 Mp4parseByteData::default [function] [call site] 00450
1 mp4parse_get_indice_table [function] [call site] 00451
1 mp4parse_free [function] [call site] 00452