[FFmpeg-devel] [PATCH 03/11] avformat/mxfdec: Check type before setting sub_descriptors_refs

Michael Niedermayer michael at niedermayer.cc
Tue Oct 20 23:56:11 EEST 2020


Fixes: memleak
Fixes: 26352/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5201158714687488

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavformat/mxfdec.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index d16a7af0df..0313cf4a28 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -1172,6 +1172,8 @@ static int mxf_read_generic_descriptor(void *arg, AVIOContext *pb, int tag, int
 
     switch(tag) {
     case 0x3F01:
+        if (descriptor->type != MultipleDescriptor)
+            return AVERROR_INVALIDDATA;
         return mxf_read_strong_ref_array(pb, &descriptor->sub_descriptors_refs,
                                              &descriptor->sub_descriptors_count);
     case 0x3002: /* ContainerDuration */
-- 
2.17.1



More information about the ffmpeg-devel mailing list