Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Michael Niedermayer <michael@niedermayer.cc>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 5/9] avformat/mov: Check extend and base offset
Date: Fri, 21 Jun 2024 00:54:55 +0200
Message-ID: <20240620225455.GT4991@pb2> (raw)
In-Reply-To: <E96BDCF6-185B-4208-BD49-3350BCD35DBB@remlab.net>


[-- Attachment #1.1: Type: text/plain, Size: 2407 bytes --]

On Wed, Jun 19, 2024 at 03:08:58PM +0200, Rémi Denis-Courmont wrote:
> 
> 
> Le 19 juin 2024 14:34:59 GMT+02:00, James Almer <jamrial@gmail.com> a écrit :
> >On 6/18/2024 4:07 AM, Rémi Denis-Courmont wrote:
> >> 
> >> 
> >> Le 17 juin 2024 01:08:27 GMT+02:00, Michael Niedermayer <michael@niedermayer.cc> a écrit :
> >>> Fixes: signed integer overflow: 2314885530818453536 + 9151314442816847872 cannot be represented in type 'long'
> >>> Fixes: 68359/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-6571950311800832
> >>> 
> >>> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> >>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> >>> ---
> >>> libavformat/mov.c | 4 +++-
> >>> 1 file changed, 3 insertions(+), 1 deletion(-)
> >>> 
> >>> diff --git a/libavformat/mov.c b/libavformat/mov.c
> >>> index 9016cd5ad08..46cbce98040 100644
> >>> --- a/libavformat/mov.c
> >>> +++ b/libavformat/mov.c
> >>> @@ -8131,7 +8131,9 @@ static int mov_read_iloc(MOVContext *c, AVIOContext *pb, MOVAtom atom)
> >>>          }
> >>>          for (int j = 0; j < extent_count; j++) {
> >>>              if (rb_size(pb, &extent_offset, offset_size) < 0 ||
> >>> -                rb_size(pb, &extent_length, length_size) < 0)
> >>> +                rb_size(pb, &extent_length, length_size) < 0 ||
> >>> +                base_offset < 0 || extent_offset < 0 ||
> >>> +                base_offset + (uint64_t)extent_offset > INT64_MAX)
> >> 
> >> Can we please stop with the bespoke arithmetic overflow checks and add dedicated helpers instead, similar to what GCC and C23 have?
> >
> >You mean the __builtin_*_overflow() one?
> 
> I'd rather the ckd_*() stuff but the differences are mostly stylistic.

Whatever is used must be supported by all currently supported platforms
that especially also includes past releases we backport things to.

In practice that means continuing to use the classical way to check
as well as our av_sat_addXY() stuff.

We cannot backport things that depend on C23 as that was not a requirement
in the past. So I also cannot use this in bug fixes.

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The smallest minority on earth is the individual. Those who deny 
individual rights cannot claim to be defenders of minorities. - Ayn Rand

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
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".

  reply	other threads:[~2024-06-20 22:55 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-16 23:08 [FFmpeg-devel] [PATCH 1/9] avcodec/targaenc: Allocate space for the palette Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 2/9] avcodec/mpeg4audio: Check that there is enough space for the first 3 elements in ff_mpeg4audio_get_config_gb() Michael Niedermayer
2024-06-17  5:27   ` Andreas Rheinhardt
2024-06-18 22:00     ` Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 3/9] avformat/iamf_parse: Try to use less space after the array Michael Niedermayer
2024-06-18  0:35   ` James Almer
2024-06-19 10:54     ` Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 4/9] avformat/iamf_parse: Layer, thou shalt not be 0 Michael Niedermayer
2024-06-18  0:33   ` James Almer
2024-06-19 10:57     ` Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 5/9] avformat/mov: Check extend and base offset Michael Niedermayer
2024-06-18  0:41   ` James Almer
2024-06-18  7:07   ` Rémi Denis-Courmont
2024-06-18  7:10     ` Andreas Rheinhardt
2024-06-19 12:34     ` James Almer
2024-06-19 13:08       ` Rémi Denis-Courmont
2024-06-20 22:54         ` Michael Niedermayer [this message]
2024-06-20 22:58           ` James Almer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 6/9] avcodec/libvpxenc: Cleanup on error Michael Niedermayer
2024-06-17 17:10   ` James Zern via ffmpeg-devel
2024-06-19 10:59     ` Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 7/9] MAINTAINERS: Update the entries for the release maintainer for FFmpeg Michael Niedermayer
2024-06-17  7:07   ` Anton Khirnov
2024-06-17 23:48     ` Michael Niedermayer
2024-06-18 10:09       ` Anton Khirnov
2024-06-19 11:22         ` Michael Niedermayer
2024-06-17  7:26   ` Paul B Mahol
2024-06-18  7:02   ` Rémi Denis-Courmont
2024-06-18  9:53   ` Steven Liu
2024-06-18  9:56     ` Steven Liu
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 8/9] avcodec/smcenc: width < 4 is unsupported Michael Niedermayer
2024-06-17  7:50   ` Paul B Mahol
2024-06-17 23:52     ` Michael Niedermayer
2024-06-18  7:42       ` Paul B Mahol
2024-06-25 19:56         ` Michael Niedermayer
2024-06-16 23:08 ` [FFmpeg-devel] [PATCH 9/9] avcodec/r210enc: Use av_rescale for bitrate Michael Niedermayer
2024-06-25 19:54   ` Michael Niedermayer
2024-06-25 19:55 ` [FFmpeg-devel] [PATCH 1/9] avcodec/targaenc: Allocate space for the palette Michael Niedermayer

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=20240620225455.GT4991@pb2 \
    --to=michael@niedermayer.cc \
    --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