diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2025-08-03 14:34:59 +0200 |
---|---|---|
committer | michaelni <michael@niedermayer.cc> | 2025-08-03 13:19:25 +0000 |
commit | ea3851bebf91a96b11d16be2b36bf88111e30e36 (patch) | |
tree | 22dbc98a6ae46a81e10fd8fe3a67ea964f2dea69 | |
parent | d9bf3c141bb96dd285477278400b8349e9f964b0 (diff) | |
download | ffmpeg-ea3851bebf91a96b11d16be2b36bf88111e30e36.tar.gz |
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@niedermayer.cc>
-rw-r--r-- | libavcodec/cri.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/cri.c b/libavcodec/cri.c index 7ce460e278..f380597238 100644 --- a/libavcodec/cri.c +++ b/libavcodec/cri.c @@ -220,7 +220,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; |