[FFmpeg-devel] [PATCH 3/3] avformat/mov: Check creation_time for overflow
Michael Niedermayer
michael at niedermayer.cc
Sat Apr 1 20:18:36 EEST 2017
Fixes integer overflow
Fixes: 701640
Found-by: Found-by: Thomas Guilbert <tguilbert at google.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
libavformat/mov.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libavformat/mov.c b/libavformat/mov.c
index c9d076ee21..9c1c36c4be 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -1186,6 +1186,12 @@ static void mov_metadata_creation_time(AVDictionary **metadata, int64_t time)
if (time) {
if(time >= 2082844800)
time -= 2082844800; /* seconds between 1904-01-01 and Epoch */
+
+ if ((int64_t)(time * 1000000ULL) / 1000000 != time) {
+ av_log(NULL, AV_LOG_DEBUG, "creation_time is not representable\n");
+ return;
+ }
+
avpriv_dict_set_timestamp(metadata, "creation_time", time * 1000000);
}
}
--
2.11.0
More information about the ffmpeg-devel
mailing list