[libav-stable] wavpack: validate samples size parsed in wavpack_decode_block

Luca Barbato git at libav.org
Sat May 18 21:02:27 CEST 2013


Module: libav
Branch: master
Commit: ed50673066956d6f2201a57c3254569f2ab08d9d

Author:    Luca Barbato <lu_zero at gentoo.org>
Committer: Luca Barbato <lu_zero at gentoo.org>
Date:      Fri May 17 18:29:15 2013 +0200

wavpack: validate samples size parsed in wavpack_decode_block

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org

---

 libavcodec/wavpack.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c
index 38fc26b..8d7c82b 100644
--- a/libavcodec/wavpack.c
+++ b/libavcodec/wavpack.c
@@ -796,6 +796,9 @@ static int wavpack_decode_block(AVCodecContext *avctx, int block_no,
     if (!wc->mkv_mode) {
         s->samples = AV_RL32(buf);
         buf       += 4;
+        if (s->samples != wc->samples)
+            return AVERROR_INVALIDDATA;
+
         if (!s->samples) {
             *got_frame_ptr = 0;
             return 0;



More information about the libav-stable mailing list