[FFmpeg-cvslog] avcodec/cri: Check bytestream2_get_buffer() for end
Michael Niedermayer
git at videolan.org
Mon Aug 4 19:38:19 EEST 2025
ffmpeg | branch: release/6.1 | Michael Niedermayer <michael at niedermayer.cc> | Sun Aug 3 14:34:59 2025 +0200| [9d719c6779f6f88f79e877ba951360d828f2a6f6] | committer: Michael Niedermayer
avcodec/cri: Check bytestream2_get_buffer() for end
Fixes: use of uninintialized memory
Fixes: 423673969/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CRI_fuzzer-5910856640823296
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit ea3851bebf91a96b11d16be2b36bf88111e30e36)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9d719c6779f6f88f79e877ba951360d828f2a6f6
---
libavcodec/cri.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavcodec/cri.c b/libavcodec/cri.c
index 7dea9c689c..bb34cbea6b 100644
--- a/libavcodec/cri.c
+++ b/libavcodec/cri.c
@@ -223,7 +223,8 @@ static int cri_decode_frame(AVCodecContext *avctx, AVFrame *p,
break;
case 102:;
int read_len = FFMIN(length, sizeof(codec_name) - 1);
- bytestream2_get_buffer(gb, codec_name, read_len))
+ if (read_len != bytestream2_get_buffer(gb, codec_name, read_len))
+ return AVERROR_INVALIDDATA;
length -= read_len;
if (strncmp(codec_name, "cintel_craw", read_len))
return AVERROR_INVALIDDATA;
More information about the ffmpeg-cvslog
mailing list