aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-11-22 16:37:50 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-11-22 17:02:00 +0100
commitba992711f79ccfba4ff0b305215d7056faf0ed0d (patch)
treeafd06987a6b7805afe090a72a6e36b166a46fbac
parent7865759409b27089b444bc029b2b76b06161b2cf (diff)
downloadffmpeg-ba992711f79ccfba4ff0b305215d7056faf0ed0d.tar.gz
avcodec/hnm4video: check that packetsize is at least 8
Fixes integer overflow and assertion failure Fixes: signal_sigabrt_7ffff7126425_1243_CASSE.HNM Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/hnm4video.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/hnm4video.c b/libavcodec/hnm4video.c
index 1e3c0fdecb..d2c4ce3a4c 100644
--- a/libavcodec/hnm4video.c
+++ b/libavcodec/hnm4video.c
@@ -359,6 +359,11 @@ static int hnm_decode_frame(AVCodecContext *avctx, void *data,
int ret;
uint16_t chunk_id;
+ if (avpkt->size < 8) {
+ av_log(avctx, AV_LOG_ERROR, "packet too small\n");
+ return AVERROR_INVALIDDATA;
+ }
+
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;