lavc/mjpeg2jpeg: Check for jpeg file header.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 12 Jan 2016 15:13:27 +0000 (16:13 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 12 Jan 2016 15:13:27 +0000 (16:13 +0100)
libavcodec/mjpeg2jpeg_bsf.c

index 68640db..71f0154 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "libavutil/error.h"
 #include "libavutil/mem.h"
+#include "libavutil/intreadwrite.h"
 
 #include "avcodec.h"
 #include "jpegtables.h"
@@ -88,6 +89,10 @@ static int mjpeg2jpeg_filter(AVBitStreamFilterContext *bsfc,
         av_log(avctx, AV_LOG_ERROR, "input is truncated\n");
         return AVERROR_INVALIDDATA;
     }
+    if (AV_RB16(buf) != 0xffd8) {
+        av_log(avctx, AV_LOG_ERROR, "input is not MJPEG\n");
+        return AVERROR_INVALIDDATA;
+    }
     if (memcmp("AVI1", buf + 6, 4)) {
         av_log(avctx, AV_LOG_ERROR, "input is not MJPEG/AVI1\n");
         return AVERROR_INVALIDDATA;