From aadfadd784bb1b50f0fd7444a06b2895c7fe87a3 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 23 Aug 2013 19:12:54 +0200 Subject: [PATCH] avformat/redspark: check coef_off Fixes out of array reads Found-by: Laurent Butti Reviewed-by: Paul B Mahol Signed-off-by: Michael Niedermayer --- libavformat/redspark.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavformat/redspark.c b/libavformat/redspark.c index 44d5da77fb..3963261b9a 100644 --- a/libavformat/redspark.c +++ b/libavformat/redspark.c @@ -108,6 +108,11 @@ static int redspark_read_header(AVFormatContext *s) if (bytestream2_get_byteu(&gbc)) // Loop flag coef_off += 16; + if (coef_off + codec->channels * (32 + 14) > HEADER_SIZE) { + ret = AVERROR_INVALIDDATA; + goto fail; + } + codec->extradata_size = 32 * codec->channels; codec->extradata = av_malloc(codec->extradata_size); if (!codec->extradata) {