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 257 get_indice_table call site: 00257 mp4parse_get_track_audio_info
18 201 get_track_audio_info call site: 00201 mp4parse_new_common
17 431 mp4parse_is_fragmented call site: 00431 mp4parse_get_track_audio_info
16 71 sample_to_chunk_iter call site: 00071 fuzz_target
13 339 SampleToChunkIterator::locate call site: 00339 TimeOffsetIterator::next
11 463 mp4parse_get_pssh_info call site: 00463 mp4parse_get_track_audio_info
10 50 get_pssh_info call site: 00050 fuzz_target
10 414 mp4parse_get_indice_table call site: 00414 fuzz_target
9 380 TimeOffsetIterator::next_offset_time call site: 00380 TimeOffsetIterator::next
8 97 mp4parse_get_track_info call site: 00097
7 289 get_indice_table call site: 00289 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] 00042
4 mp4parse_new_common [function] [call site] 00043
3 TryVec::new [function] [call site] 00047
3 write_u32::<byteorder::NativeEndian> [function] [call site] 00048
3 Mp4parseStatus::extend_from_slice [function] [call site] 00049
3 AvifContext::item_as_slice [function] [call site] 00050
4 fuzz_target [function] [call site] 00051
5 std::io::Cursor::new [function] [call site] 00052
5 std::ptr::null_mut [function] [call site] 00054
5 mp4parse_new [function] [call site] 00055
5 Mp4parseByteData::default [function] [call site] 00056
5 mp4parse_get_fragment_info [function] [call site] 00057
5 Mp4parseByteData::default [function] [call site] 00058
5 mp4parse_get_pssh_info [function] [call site] 00059
5 mp4parse_get_track_count [function] [call site] 00060
5 mp4parse_is_fragmented [function] [call site] 00066
6 Mp4parseParser::context_mut [function] [call site] 00068
6 sample_to_chunk_iter [function] [call site] 00070
7 AvifContext::item_as_slice [function] [call site] 00071
8 fuzz_target [function] [call site] 00072
8 Self::get [function] [call site] 00075
9 std::io::Cursor::new [function] [call site] 00076
9 std::ptr::null_mut [function] [call site] 00078
9 mp4parse_new [function] [call site] 00079
9 Mp4parseByteData::default [function] [call site] 00080
9 mp4parse_get_fragment_info [function] [call site] 00081
9 Mp4parseByteData::default [function] [call site] 00082
9 mp4parse_get_pssh_info [function] [call site] 00083
9 mp4parse_get_track_count [function] [call site] 00084
9 mp4parse_is_fragmented [function] [call site] 00085
9 Mp4parseByteData::default [function] [call site] 00086
9 mp4parse_get_track_info [function] [call site] 00087
10 (*mut [call site] 00089
10 Mp4parseByteData::default [function] [call site] 00090
10 Mp4parseParser::context_mut [function] [call site] 00091
10 mp4parse::unstable::rational_scale [function] [call site] 00098
11 T::is_zero [function] [call site] 00099
11 num_traits::cast [function] [call site] 00100
11 and_then [function] [call site] 00101
11 checked_mul [function] [call site] 00102
11 checked_mul [function] [call site] 00103
11 and_then [function] [call site] 00104
11 checked_add [function] [call site] 00105
10 mp4parse::unstable::CheckedInteger [function] [call site] 00106
10 mp4parse::unstable::rational_scale [function] [call site] 00107
9 Mp4parseTrackVideoInfo::default [function] [call site] 00108
10 std::ptr::null [function] [call site] 00109
9 mp4parse_get_track_video_info [function] [call site] 00110
10 (*mut [call site] 00112
10 Mp4parseByteData::default [function] [call site] 00113
10 mp4parse_get_track_video_info_safe [function] [call site] 00114
11 Mp4parseParser::context [function] [call site] 00115
11 sample_to_chunk_iter [function] [call site] 00120
11 fuzz_target [function] [call site] 00121
11 UnsupportedFeatures::is_empty [function] [call site] 00123
11 std::ptr::null [function] [call site] 00124
11 UnsupportedFeatures::is_empty [function] [call site] 00128
11 TryVec::with_capacity [function] [call site] 00130
11 sample_to_chunk_iter [function] [call site] 00132
11 Mp4parseByteData::default [function] [call site] 00133
12 std::ptr::null [function] [call site] 00134
12 std::ptr::null [function] [call site] 00135
11 Mp4parseByteData::set_data [function] [call site] 00137
12 Self::len [function] [call site] 00138
12 UnsupportedFeatures::is_empty [function] [call site] 00139
12 std::ptr::null [function] [call site] 00140
12 Self::as_ptr [function] [call site] 00141
11 Mp4parseByteData::set_data [function] [call site] 00142
11 sample_to_chunk_iter [function] [call site] 00143
11 OptionalFourCc::Some [function] [call site] 00146
11 Mp4parseByteData::set_data [function] [call site] 00148
11 unwrap_or [function] [call site] 00149
11 unwrap_or [function] [call site] 00150
11 Mp4parseByteData::set_data [function] [call site] 00153
11 UnsupportedFeatures::insert [function] [call site] 00155
12 UnsupportedFeatures::feature_to_bitfield [function] [call site] 00156
11 fuzz_target [function] [call site] 00157
11 Self::len [function] [call site] 00158
11 Self::len [function] [call site] 00160
11 UnsupportedFeatures::is_empty [function] [call site] 00161
11 std::ptr::null [function] [call site] 00162
11 Self::as_ptr [function] [call site] 00163
10 Result::into [function] [call site] 00166
9 Mp4parseByteData::default [function] [call site] 00167
9 mp4parse_get_track_audio_info [function] [call site] 00168
10 (*mut [call site] 00170
10 Mp4parseByteData::default [function] [call site] 00171
10 get_track_audio_info [function] [call site] 00172
11 fuzz_target [function] [call site] 00173
11 UnsupportedFeatures::is_empty [function] [call site] 00175
11 std::ptr::null [function] [call site] 00176
11 UnsupportedFeatures::is_empty [function] [call site] 00183
11 TryVec::with_capacity [function] [call site] 00185
11 sample_to_chunk_iter [function] [call site] 00187
11 enumerate [function] [call site] 00188
11 Mp4parseByteData::default [function] [call site] 00189
12 std::ptr::null [function] [call site] 00190
12 std::ptr::null [function] [call site] 00191
11 Mp4parseByteData::set_data [function] [call site] 00195
11 Mp4parseByteData::set_data [function] [call site] 00196
11 Mp4parseByteData::set_data [function] [call site] 00199
11 TryVec::new [function] [call site] 00200
11 mp4parse::serialize_opus_header [function] [call site] 00201
12 Vec::<u8>::new [function] [call site] 00202
13 mp4parse_new_common [function] [call site] 00203
12 super::serialize_opus_header [function] [call site] 00204
13 Vec::<u8>::new [function] [call site] 00205
13 super::serialize_opus_header [function] [call site] 00206
13 Vec::<u8>::new [function] [call site] 00210
13 super::serialize_opus_header [function] [call site] 00211
12 Vec::<u8>::new [function] [call site] 00216
12 super::serialize_opus_header [function] [call site] 00217
11 UnsupportedFeatures::insert [function] [call site] 00220
11 fuzz_target [function] [call site] 00221
11 Mp4parseByteData::set_data [function] [call site] 00224
11 Mp4parseByteData::set_data [function] [call site] 00225
11 sample_to_chunk_iter [function] [call site] 00226
11 OptionalFourCc::Some [function] [call site] 00229
11 Mp4parseByteData::set_data [function] [call site] 00231
11 unwrap_or [function] [call site] 00232
11 unwrap_or [function] [call site] 00233
11 Mp4parseByteData::set_data [function] [call site] 00236
11 UnsupportedFeatures::insert [function] [call site] 00238
11 fuzz_target [function] [call site] 00239
11 Self::len [function] [call site] 00240
11 Self::len [function] [call site] 00242
11 UnsupportedFeatures::is_empty [function] [call site] 00243
11 std::ptr::null [function] [call site] 00244
11 Self::as_ptr [function] [call site] 00245
10 Result::into [function] [call site] 00248
9 Mp4parseByteData::default [function] [call site] 00249
9 mp4parse_get_indice_table [function] [call site] 00250
10 Mp4parseByteData::default [function] [call site] 00252
10 get_indice_table [function] [call site] 00253
11 sample_to_chunk_iter [function] [call site] 00254
11 &mut [call site] 00258
12 std::io::Cursor::new [function] [call site] 00259
12 std::ptr::null_mut [function] [call site] 00261
12 mp4parse_new [function] [call site] 00262
12 Mp4parseByteData::default [function] [call site] 00263
12 mp4parse_get_fragment_info [function] [call site] 00264
12 Mp4parseByteData::default [function] [call site] 00265
12 mp4parse_get_pssh_info [function] [call site] 00266
12 mp4parse_get_track_count [function] [call site] 00267
12 mp4parse_is_fragmented [function] [call site] 00268
12 Mp4parseByteData::default [function] [call site] 00269
12 mp4parse_get_track_info [function] [call site] 00270
12 Mp4parseTrackVideoInfo::default [function] [call site] 00271
12 mp4parse_get_track_video_info [function] [call site] 00272
12 Mp4parseByteData::default [function] [call site] 00273
12 mp4parse_get_track_audio_info [function] [call site] 00274
12 Mp4parseByteData::default [function] [call site] 00275
12 mp4parse_get_indice_table [function] [call site] 00276
12 mp4parse_free [function] [call site] 00277
13 TryBox::from_raw [function] [call site] 00278
11 Mp4parseByteData::set_indices [function] [call site] 00279
12 Self::len [function] [call site] 00280
12 UnsupportedFeatures::is_empty [function] [call site] 00281
12 std::ptr::null [function] [call site] 00282
12 Self::as_ptr [function] [call site] 00283
11 Feature::try_from [function] [call site] 00285
11 Result::ok [function] [call site] 00289
12 parse_minimal_mp4 [function] [call site] 00290
13 std::fs::File::open [function] [call site] 00291
13 std::ptr::null_mut [function] [call site] 00294
13 mp4parse_new [function] [call site] 00295
12 mp4parse_free [function] [call site] 00296
11 Feature::try_from [function] [call site] 00298
11 Result::ok [function] [call site] 00299
11 mp4parse::unstable::create_sample_table [function] [call site] 00304
12 sample_to_chunk_iter [function] [call site] 00306
12 sample_to_chunk_iter [function] [call site] 00307
13 AvifContext::item_as_slice [function] [call site] 00308
13 &'a [call site] 00309
14 AvifContext::item_as_slice [function] [call site] 00310
14 &'a [call site] 00311
14 SampleToChunkIterator::peekable [function] [call site] 00312
14 &'a [call site] 00313
14 try_into [function] [call site] 00314
13 SampleToChunkIterator::peekable [function] [call site] 00316
13 &'a [call site] 00317
13 try_into [function] [call site] 00318
12 SampleToChunkIterator::map [function] [call site] 00320
12 to_usize [function] [call site] 00321
12 try_fold [function] [call site] 00322
12 TryVec::with_capacity [function] [call site] 00323
12 minimal_mp4_parse_ok [function] [call site] 00324
13 parse_minimal_mp4 [function] [call site] 00325
13 mp4parse_free [function] [call site] 00326
12 sample_to_chunk_iter [function] [call site] 00327
12 fuzz_target [function] [call site] 00328
12 TimeOffsetIterator::next [function] [call site] 00330
13 TimeOffsetIterator::next [function] [call site] 00331
13 SampleToChunkIterator::next [function] [call site] 00333
14 TimeOffsetIterator::next [function] [call site] 00334
14 SampleToChunkIterator::locate [function] [call site] 00336
15 TimeOffsetIterator::next [function] [call site] 00337
15 checked_add [function] [call site] 00339
14 checked_sub [function] [call site] 00340
14 try_into [function] [call site] 00342
14 and_then [function] [call site] 00344
14 TimeOffsetIterator::next [function] [call site] 00345
13 TimeOffsetVersion::Version0 [function] [call site] 00347
13 i64::from [function] [call site] 00348
13 i64::from [function] [call site] 00349
13 TimeOffsetIterator::next [function] [call site] 00350
12 Mp4parseByteData::default [function] [call site] 00355
12 minimal_mp4_parse_ok [function] [call site] 00356
12 SampleToChunkIterator::checked_sub [function] [call site] 00357
12 and_then [function] [call site] 00358
12 AvifContext::item_as_slice [function] [call site] 00362
12 sample_to_chunk_iter [function] [call site] 00363
12 AvifContext::item_as_slice [function] [call site] 00364
12 sample_to_chunk_iter [function] [call site] 00365
12 TrackScaledTime::<i64> [function] [call site] 00366
12 as_mut_slice [function] [call site] 00367
12 TimeToSampleIterator::next_delta [function] [call site] 00368
13 TimeToSampleIterator::next [function] [call site] 00369
14 TimeOffsetIterator::next [function] [call site] 00370
14 TimeOffsetIterator::next [function] [call site] 00372
14 TimeOffsetIterator::next [function] [call site] 00373
13 TrackScaledTime::<i64> [function] [call site] 00376
13 i64::from [function] [call site] 00377
13 TrackScaledTime::<i64> [function] [call site] 00378
12 TimeOffsetIterator::next_offset_time [function] [call site] 00379
13 TimeOffsetIterator::next [function] [call site] 00380
14 TimeOffsetIterator::next [function] [call site] 00381
14 SampleToChunkIterator::next [function] [call site] 00383
14 TimeOffsetVersion::Version0 [function] [call site] 00384
14 i64::from [function] [call site] 00385
14 i64::from [function] [call site] 00386
14 TimeOffsetIterator::next [function] [call site] 00387
13 TrackScaledTime::<i64> [function] [call site] 00390
13 TrackScaledTime::<i64> [function] [call site] 00391
12 CheckedInteger [function] [call site] 00392
12 checked_add [function] [call site] 00393
12 CheckedInteger [function] [call site] 00394
12 checked_add [function] [call site] 00395
12 CheckedInteger [function] [call site] 00396
12 UnsupportedFeatures::is_empty [function] [call site] 00397
12 TryVec::with_capacity [function] [call site] 00398
12 minimal_mp4_parse_ok [function] [call site] 00400
12 minimal_mp4_parse_ok [function] [call site] 00403
12 sort_by_key [function] [call site] 00404
12 fuzz_target [function] [call site] 00405
11 Mp4parseByteData::set_indices [function] [call site] 00409
11 UnsupportedFeatures::insert [function] [call site] 00410
12 UnsupportedFeatures::feature_to_bitfield [function] [call site] 00411
10 Result::into [function] [call site] 00414
9 mp4parse_free [function] [call site] 00415
8 unwrap_or_else [function] [call site] 00416
8 AvifContext::item_as_slice [function] [call site] 00417
9 fuzz_target [function] [call site] 00418
9 Self::get [function] [call site] 00421
9 unwrap_or_else [function] [call site] 00422
9 AvifContext::item_as_slice [function] [call site] 00423
7 &'a [call site] 00424
7 SampleToChunkIterator::peekable [function] [call site] 00425
7 &'a [call site] 00426
6 SampleToChunkIterator::find [function] [call site] 00429
6 UnsupportedFeatures::is_empty [function] [call site] 00432
6 UnsupportedFeatures::is_empty [function] [call site] 00433
6 UnsupportedFeatures::is_empty [function] [call site] 00434
5 Mp4parseByteData::default [function] [call site] 00435
5 mp4parse_get_track_info [function] [call site] 00436
5 Mp4parseTrackVideoInfo::default [function] [call site] 00437
5 mp4parse_get_track_video_info [function] [call site] 00438
5 Mp4parseByteData::default [function] [call site] 00439
5 mp4parse_get_track_audio_info [function] [call site] 00440
5 Mp4parseByteData::default [function] [call site] 00441
5 mp4parse_get_indice_table [function] [call site] 00442
5 mp4parse_free [function] [call site] 00443
4 Self::get [function] [call site] 00446
4 unwrap_or_else [function] [call site] 00447
4 AvifContext::item_as_slice [function] [call site] 00448
3 Mp4parseStatus::extend_from_slice [function] [call site] 00449
3 AvifContext::item_as_slice [function] [call site] 00450
4 fuzz_target [function] [call site] 00451
4 Self::get [function] [call site] 00454
4 unwrap_or_else [function] [call site] 00455
4 AvifContext::item_as_slice [function] [call site] 00456
3 Mp4parseStatus::extend_from_slice [function] [call site] 00457
3 AvifContext::item_as_slice [function] [call site] 00458
3 Mp4parseByteData::set_data [function] [call site] 00460
3 Mp4parseByteData::default [function] [call site] 00461
2 Result::into [function] [call site] 00463
1 mp4parse_get_track_count [function] [call site] 00464
1 mp4parse_is_fragmented [function] [call site] 00465
1 Mp4parseByteData::default [function] [call site] 00466
1 mp4parse_get_track_info [function] [call site] 00467
1 Mp4parseTrackVideoInfo::default [function] [call site] 00468
1 mp4parse_get_track_video_info [function] [call site] 00469
1 Mp4parseByteData::default [function] [call site] 00470
1 mp4parse_get_track_audio_info [function] [call site] 00471
1 Mp4parseByteData::default [function] [call site] 00472
1 mp4parse_get_indice_table [function] [call site] 00473
1 mp4parse_free [function] [call site] 00474