[FFmpeg-cvslog] avcodec/truemotion2: Check len in tm2_read_stream()

Michael Niedermayer git at videolan.org
Wed Jul 4 14:57:32 EEST 2018


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Sun Jul  1 21:19:57 2018 +0200| [4423085ca5009cd4c713798ce34fa3daeee0f27d] | committer: Michael Niedermayer

avcodec/truemotion2: Check len in tm2_read_stream()

Fixes: Timeout
Fixes: 8774/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEMOTION2_fuzzer-5942199639343104

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4423085ca5009cd4c713798ce34fa3daeee0f27d
---

 libavcodec/truemotion2.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/truemotion2.c b/libavcodec/truemotion2.c
index b689efdb99..58a577f53c 100644
--- a/libavcodec/truemotion2.c
+++ b/libavcodec/truemotion2.c
@@ -377,6 +377,10 @@ static int tm2_read_stream(TM2Context *ctx, const uint8_t *buf, int stream_id, i
             }
         }
     } else {
+        if (len < 0) {
+            ret = AVERROR_INVALIDDATA;
+            goto end;
+        }
         for (i = 0; i < toks; i++) {
             ctx->tokens[stream_id][i] = codes.recode[0];
             if (stream_id <= TM2_MOT && ctx->tokens[stream_id][i] >= TM2_DELTAS) {



More information about the ffmpeg-cvslog mailing list