From: Leo Izen <leo.izen@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH] avformat/hls: use av_strlcopy instead of strncpy
Date: Thu, 26 Oct 2023 08:01:49 -0400
Message-ID: <4e372186-3b34-4df3-a0be-79d15054adb9@gmail.com> (raw)
In-Reply-To: <AS8P250MB07449220F987CEB3BC253E9F8FDDA@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM>
On 10/26/23 07:32, Andreas Rheinhardt wrote:
>
> This case can't happen here, because it only copies
> "sizeof(rend->language) - langlen - 2" bytes at most from position where
> sizeof(rend->language) - langlen - 1 are available, so the initial
> trailing \0 never gets touched. You did not touch the size part of the
> call, so you effectively only use sizeof(rend->language) - 1 bytes of
> the buffer, thereby making the truncation issue worse. And even if you
> fixed this part, you would still just have silenced the truncation
> instead of fixing it.
>
> - Andreas
>
Truncation can happen if info->assoc_language is very long, i.e. uses
the full buffer (63 chars plus a 64th for nul).
In that case, strncpy will truncate, but because there's a -2 in the
size argument, instead of -1, the resulting buffer will still be
nul-terminated. The compiler doesn't know this, so it produces a warning.
It seems the appropriate fix here is to change strncpy to av_strlcpy but
also change the -2 to a -1. This will produce identical behavior to
before, but it won't cause the compiler to produce a warning that the
string might not be nul-terminated (cause it will always be).
- Leo Izen (Traneptora)
_______________________________________________
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".
prev parent reply other threads:[~2023-10-26 12:02 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-26 3:14 Leo Izen
2023-10-26 3:23 ` Steven Liu
2023-10-26 10:54 ` Andreas Rheinhardt
2023-10-26 11:08 ` Leo Izen
2023-10-26 11:32 ` Andreas Rheinhardt
2023-10-26 12:01 ` Leo Izen [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4e372186-3b34-4df3-a0be-79d15054adb9@gmail.com \
--to=leo.izen@gmail.com \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git