]> git.sesse.net Git - ffmpeg/commitdiff
avformat/mpegts: Limit copied data to space
authorMichael Niedermayer <michael@niedermayer.cc>
Wed, 4 Nov 2020 00:06:47 +0000 (01:06 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 7 Nov 2020 19:10:51 +0000 (20:10 +0100)
Fixes: out of array access
Fixes: 26816/clusterfuzz-testcase-minimized-ffmpeg_dem_MPEGTSRAW_fuzzer-6282861159907328.fuzz
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavformat/mpegts.c

index ebb09991dc8a54098141520da3452f7fcb68ab87..80d010db6cfebb971a092545de446fb6ef99ac9b 100644 (file)
@@ -3169,7 +3169,7 @@ static int mpegts_raw_read_packet(AVFormatContext *s, AVPacket *pkt)
         return ret;
     }
     if (data != pkt->data)
-        memcpy(pkt->data, data, ts->raw_packet_size);
+        memcpy(pkt->data, data, TS_PACKET_SIZE);
     finished_reading_packet(s, ts->raw_packet_size);
     if (ts->mpeg2ts_compute_pcr) {
         /* compute exact PCR for each packet */