From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id A6B7D4D094 for ; Fri, 7 Nov 2025 10:38:49 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'sY9ULAy6e+rI6DSTp8OvJz7DKj+gcxqZMqzh0uXK7QM=', expected b'Ivxsrcc3c+XDiDsx/dGGUM16VBfo9ca97Tt+wHz4MVI=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1762511920; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=sY9ULAy6e+rI6DSTp8OvJz7DKj+gcxqZMqzh0uXK7QM=; b=KFD6XoCzz0y8HwOj2vxhdnmaJyeNv1zhkIyCb+lCy8McyExvqQW7ucPVsWxO+LGgsNM9i 9LbCK8KyEM3pzmId/4Lh7qzSbcG7MYWpXlop5sVfYknadCy2H+OaTfQT4kDtqCYsbJGNo7t AfWgPXC9tLcK0cB1oQAfvnB5EDYu1hR5jhwGasqO6dMmH1D/zcy2N3JjUcJ0Je2VxJgt1pI N3ib9ZV2PT6X4FVIutk8Pt3D/Ku2qBIRnNMGh9xnGaq0YnX8wMkcLxWVvBKe8kG2tEaxuSw g/BPn+sh1oxt1E+j2C2+o5fd3Df986XSk53VcUnZocOx/fBS0oxR0dhcUjJg== Received: from [172.19.0.2] (unknown [172.19.0.2]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id E128668FBC3; Fri, 7 Nov 2025 12:38:40 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1762511904; b=QuZP66qdJfqLV7mKNcOTv5VVCxMgCSvGbOW8lksJbqzkL+qEzqPoKVBmgT99NtqvFiOI5 NKiEM2kdaScLVC+H4ZQTY8dPv/A1N0nQZA5XQI4fywzrMopFGY0eFfEM8+PPUR9web6A1y/ ioGOTbg7uNgYxNUeiz3jLNk+OzQm1xNx3fw7miX7Ow0rT38gjWrEhUTxriovgKaEIcdBfOi N0vxsXlS8vcAM9m9c1Cg3ID3hEagIkKUc/NtxepUnGTmn63dIiVbaKX/Te5+Yfo+WsSq2Wb cX233wd3Uzqvo2oGSN0VAXYB9U4/0hh/ZsGo7RpkxoYbhgAQLqyRNRcYFrZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1762511904; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=rBBp2oXDqLEzhj38iqcA5wgjjZfjcTTJrU1WelG2o3o=; b=RAo9o4EUUBgN4tBk/x/1pD7/AyqRmdcKEr4vaLG+y7UdGjUez0/LRpOCfOI1qhvETBY+C CZM38p7PXW4fxK1dgRQjSw3QPnApSIuTKGFFJrGURLd64T5JM3f9bX6eW2iwmdGP6/Yp5RM /K/JKnHdf09CjCIc+0d3oLoZD95HnssiXMfVJcQZRjb+MKBdIEBLj4+73iQqNeXh8e2yeSa cIXYWRDN5zrfBJuJvxVFoYEWgvIe0veoSabQ240tveYWX0xk5gloudN1x50YFd4IeFt8cyS gamdg/mBwutaB8qABT8NQjvBDfrg62Ask3ncawaVOK99QypENowr/JqMZkRA== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1762511898; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=Ivxsrcc3c+XDiDsx/dGGUM16VBfo9ca97Tt+wHz4MVI=; b=lq2w7L9qqYrc+Fe6Welonc2sZooOMkNnIGVBoijBKuI5Mw6/i7mapqk6E63YJDw4gaWAE npGAE9BPxLwRO3Imr0pRDmfZ0B/rh2+NJ3GDO0S20X4e6/EbLNv40DrVRZ3JOdUSYs0aHne QH0g4KUq70x4PtywkTppi9M4Iixm04uGWjDgCxF5Xk2OTDzdxuTG8R5s0l4dLYI3Uffw2Cz 0HNZYiAB5lUoOUwO8X+/qhQxK5maMeLmIP4nf0cUV4E9bES7Hf1I3PhIBFnOVFFqobZcus8 5WNE5kE0aIMOvEM88gkClgWm47mUNQBtWAUwXaVnB3PdyBa/y55dPUQVnpIg== Received: from 188d6d40ca7a (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 3356968FA73 for ; Fri, 7 Nov 2025 12:38:18 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Fri, 07 Nov 2025 10:38:17 -0000 Message-ID: <176251189835.25.3542136572173182712@2cb04c0e5124> Message-ID-Hash: CLYOSWG33RIUM7NARMDIXTAYMKRAHYUV X-Message-ID-Hash: CLYOSWG33RIUM7NARMDIXTAYMKRAHYUV X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH] libavutil/timecodec: fix potential snprintf truncation in av_timecode_make_string (PR #20859) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: caifan via ffmpeg-devel Cc: caifan Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #20859 opened by caifan URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20859 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20859.patch ensure formatted timecode string fits in AV_TIMECODE_STR_SIZE, eliminates -Wformat-truncation compiler warning. Signed-off-by: caifan3 >>From 7301d28c814971a60da19c944ba610218ce419ed Mon Sep 17 00:00:00 2001 From: caifan3 Date: Fri, 7 Nov 2025 18:27:40 +0800 Subject: [PATCH] libavutil/timecodec: fix potential snprintf truncation in av_timecode_make_string ensure formatted timecode string fits in AV_TIMECODE_STR_SIZE, eliminates -Wformat-truncation compiler warning. Signed-off-by: caifan3 --- libavutil/timecode.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libavutil/timecode.c b/libavutil/timecode.c index bca16b6ac2..2a2bf6ddf1 100644 --- a/libavutil/timecode.c +++ b/libavutil/timecode.c @@ -32,6 +32,7 @@ #include "timecode_internal.h" #include "log.h" #include "error.h" +#include "libavutil/avassert.h" int av_timecode_adjust_ntsc_framenum2(int framenum, int fps) { @@ -105,7 +106,7 @@ char *av_timecode_make_string(const AVTimecode *tc, char *buf, int framenum_arg) { int fps = tc->fps; int drop = tc->flags & AV_TIMECODE_FLAG_DROPFRAME; - int hh, mm, ss, ff, ff_len, neg = 0; + int hh, mm, ss, ff, ff_len, len, neg = 0; int64_t framenum = framenum_arg; framenum += tc->start; @@ -122,9 +123,10 @@ char *av_timecode_make_string(const AVTimecode *tc, char *buf, int framenum_arg) if (tc->flags & AV_TIMECODE_FLAG_24HOURSMAX) hh = hh % 24; ff_len = fps > 10000 ? 5 : fps > 1000 ? 4 : fps > 100 ? 3 : fps > 10 ? 2 : 1; - snprintf(buf, AV_TIMECODE_STR_SIZE, "%s%02d:%02d:%02d%c%0*d", - neg ? "-" : "", - hh, mm, ss, drop ? ';' : ':', ff_len, ff); + len = snprintf(buf, AV_TIMECODE_STR_SIZE, "%s%02d:%02d:%02d%c%0*d", + neg ? "-" : "", + hh, mm, ss, drop ? ';' : ':', ff_len, ff); + av_assert0(len >= 0 && len < sizeof(buf)); return buf; } -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org