]> git.sesse.net Git - ffmpeg/commitdiff
smacker: check buffer size before reading output size
authorJustin Ruggles <justin.ruggles@gmail.com>
Wed, 21 Sep 2011 15:42:55 +0000 (11:42 -0400)
committerJustin Ruggles <justin.ruggles@gmail.com>
Tue, 11 Oct 2011 11:48:16 +0000 (07:48 -0400)
libavcodec/smacker.c

index f3dec7f675e3d0b72e4f352db6482e82a32f07de..20ddc15915b475a98c4bb6efb65b2f8c9af84752 100644 (file)
@@ -586,6 +586,11 @@ static int smka_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
     int bits, stereo;
     int pred[2] = {0, 0};
 
+    if (buf_size <= 4) {
+        av_log(avctx, AV_LOG_ERROR, "packet is too small\n");
+        return AVERROR(EINVAL);
+    }
+
     unp_size = AV_RL32(buf);
 
     init_get_bits(&gb, buf + 4, (buf_size - 4) * 8);