On Tue, Jul 16, 2024 at 10:31:54AM -0300, James Almer wrote: > On 7/16/2024 10:19 AM, Michael Niedermayer wrote: > > Fixes: Timeout > > Fixes: 69230/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-6540512101203968 > > > > Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > > Signed-off-by: Michael Niedermayer > > --- > > libavformat/mov.c | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/libavformat/mov.c b/libavformat/mov.c > > index ce95842ce58..9042753d221 100644 > > --- a/libavformat/mov.c > > +++ b/libavformat/mov.c > > @@ -8925,6 +8925,11 @@ static int mov_read_iprp(MOVContext *c, AVIOContext *pb, MOVAtom atom) > > flags = avio_rb24(pb); > > count = avio_rb32(pb); > > + if (count * 5LL > a.size) { > > + ret = AVERROR_INVALIDDATA; > > + goto fail; > > + } > > a.size is also read from the aviocontext, so i think it'd be better to add > an avio_feof() check inside the for loop below, after assoc_count is read. ok will apply with that solution thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Those who would give up essential Liberty, to purchase a little temporary Safety, deserve neither Liberty nor Safety -- Benjamin Franklin