[FFmpeg-cvslog] avformat/scd: ensure SCD_MIN_HEADER_SIZE bytes are read
Kacper Michajłow
git at videolan.org
Fri Jul 11 02:24:48 EEST 2025
ffmpeg | branch: master | Kacper Michajłow <kasper93 at gmail.com> | Mon Jul 7 21:25:30 2025 +0200| [3334bdc6e70dfdbf753fa81da0d8321a1c5c7eeb] | committer: Michael Niedermayer
avformat/scd: ensure SCD_MIN_HEADER_SIZE bytes are read
Instead of accessing unintialized data when input is shorter than
expected size.
Fixes use of uninitialized value in MSAN build.
Found by OSS-Fuzz.
Signed-off-by: Kacper Michajłow <kasper93 at gmail.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3334bdc6e70dfdbf753fa81da0d8321a1c5c7eeb
---
libavformat/scd.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavformat/scd.c b/libavformat/scd.c
index ee118c1668..e57733a8d8 100644
--- a/libavformat/scd.c
+++ b/libavformat/scd.c
@@ -30,6 +30,7 @@
#include "libavutil/mem.h"
#include "libavformat/internal.h"
#include "avformat.h"
+#include "avio_internal.h"
#include "demux.h"
#define SCD_MAGIC ((uint64_t)MKBETAG('S', 'E', 'D', 'B') << 32 | \
@@ -243,7 +244,7 @@ static int scd_read_header(AVFormatContext *s)
SCDDemuxContext *ctx = s->priv_data;
uint8_t buf[SCD_MIN_HEADER_SIZE];
- if ((ret = avio_read(s->pb, buf, SCD_MIN_HEADER_SIZE)) < 0)
+ if ((ret = ffio_read_size(s->pb, buf, SCD_MIN_HEADER_SIZE)) < 0)
return ret;
ctx->hdr.magic = AV_RB64(buf + 0);
More information about the ffmpeg-cvslog
mailing list