diff mbox series

[FFmpeg-devel,3/3] avformat/flvdec: Check for EOF in index reading

Message ID 20220712184322.22814-3-michael@niedermayer.cc
State Accepted
Commit ceff5d7b74cd9ae6055957979d27d289c70a9e1b
Headers show
Series [FFmpeg-devel,1/3] avcodec/lagarith: Check dst/src in zero run code | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Michael Niedermayer July 12, 2022, 6:43 p.m. UTC
Fixes: Timeout
Fixes: 47992/clusterfuzz-testcase-minimized-ffmpeg_dem_LIVE_FLV_fuzzer-6020443879899136

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavformat/flvdec.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Michael Niedermayer July 21, 2022, 5:37 p.m. UTC | #1
On Tue, Jul 12, 2022 at 08:43:22PM +0200, Michael Niedermayer wrote:
> Fixes: Timeout
> Fixes: 47992/clusterfuzz-testcase-minimized-ffmpeg_dem_LIVE_FLV_fuzzer-6020443879899136
> 
> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> ---
>  libavformat/flvdec.c | 2 ++
>  1 file changed, 2 insertions(+)

will apply

[...]
diff mbox series

Patch

diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c
index c5d3c63bd0..8dba92661b 100644
--- a/libavformat/flvdec.c
+++ b/libavformat/flvdec.c
@@ -463,6 +463,8 @@  static int parse_keyframes_index(AVFormatContext *s, AVIOContext *ioc, int64_t m
                 goto invalid;
             if (current_array == &times && (d <= INT64_MIN / 1000 || d >= INT64_MAX / 1000))
                 goto invalid;
+            if (avio_feof(ioc))
+                goto invalid;
             current_array[0][i] = d;
         }
         if (times && filepositions) {