From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 5297444AA2 for ; Wed, 8 Mar 2023 15:55:40 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CCCC068BD12; Wed, 8 Mar 2023 17:55:37 +0200 (EET) Received: from gandalf.ektacom.com (gandalf.ektacom.com [62.23.45.26]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B756A68BBB1 for ; Wed, 8 Mar 2023 17:55:31 +0200 (EET) Received: from ektacom.com (82-64-203-93.subs.proxad.net [82.64.203.93]) by gandalf.ektacom.com (Postfix) with ESMTP id 5F0EE45A266 for ; Wed, 8 Mar 2023 16:55:31 +0100 (CET) Message-ID: <928dcb75-6411-4e33-caa8-5cd247f8a185@ektacom.com> Date: Wed, 8 Mar 2023 16:55:27 +0100 MIME-Version: 1.0 From: =?UTF-8?Q?C=c3=a9dric_Le_Barz?= To: ffmpeg-devel@ffmpeg.org Content-Language: en-US X-MailScanner-ID: C6A4E1ABE7E8.ADE99 X-MailScanner: Found to be clean X-MailScanner-From: clebarz@ektacom.com X-Spam-Status: No Subject: [FFmpeg-devel] [PATCH] Fix issue when invalid nb_index_entries value is read - SPONSORED BY INA (Institut National de l'Audiovisuel) X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Fix issue when invalid nb_index_entries value is read : in case of false nb_index_entries value, ffmpeg exit. This patch fix this problem. Signed-off-by: Cedric Le Barz --- ffmpeg/libavformat/mxfdec.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/ffmpeg/libavformat/mxfdec.c b/ffmpeg/libavformat/mxfdec.c index 4530617..ffc8987 100644 --- a/ffmpeg/libavformat/mxfdec.c +++ b/ffmpeg/libavformat/mxfdec.c @@ -1221,8 +1221,18 @@ static int mxf_read_index_entry_array(AVIOContext *pb, MXFIndexTableSegment *seg } for (i = 0; i < segment->nb_index_entries; i++) { - if(avio_feof(pb)) - return AVERROR_INVALIDDATA; + + if(avio_feof(pb)) { + if (i == 0) { + return AVERROR_INVALIDDATA; + } else { + /* To be more robust to invalid nb_index_entries value, + fix the index entry number according to read entries */ + segment->nb_index_entries = i; + return 0; + } + } + segment->temporal_offset_entries[i] = avio_r8(pb); avio_r8(pb); /* KeyFrameOffset */ segment->flag_entries[i] = avio_r8(pb); -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".