Debian Patches

Status for ffmpeg/7:4.3.8-0+deb11u2

Patch Description Author Forwarded Bugs Origin Last update
0001-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch avcodec/arm/sbcenc: avoid callee preserved vfp registers
When compiling FFmpeg with GCC-9, some very random segfaults were
observed in code which had previously called down into the SBC encoder
NEON assembly routines. This was caused by these functions clobbering
some of the vfp callee saved registers (d8 - d15 aka q4 - q7). GCC was
using these registers to save local variables, but after these
functions returned, they would contain garbage.

Fix by reallocating the registers in the two affected functions in
the following way:
ff_sbc_analyze_4_neon: q2-q5 => q8-q11, then q1-q4 => q8-q11
ff_sbc_analyze_8_neon: q2-q9 => q8-q15

The reason for using these replacements is to keep closely related
sets of registers consecutively numbered which hopefully makes the
code more easy to follow. Since this commit only reallocates
registers, it should have no performance impact.
James Cowgill <jcowgill@debian.org> no 2019-08-11
0002-Fix-build-on-powerpc-and-ppc64.patch Fix build on powerpc and ppc64 John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> no 2021-01-19
CVE-2023-49502.patch [PATCH] avfilter/bwdif: account for chroma sub-sampling in min size calculation

The current logic for detecting frames that are too small for the
algorithm does not account for chroma sub-sampling, and so a sample
where the luma plane is large enough, but the chroma planes are not
will not be rejected. In that event, a heap overflow will occur.

This change adjusts the logic to consider the chroma planes and makes
the change to all three bwdif implementations.

Fixes #10688
Cosmin Stejerean <cosmin@cosmin.at> no 2023-12-06
CVE-2024-31578.patch [PATCH] avutil/hwcontext: Don't assume frames_uninit is reentrant
Fix heap use after free when vulkan_frames_init failed.
Zhao Zhili <zhilizhao@tencent.com> no 2024-02-20
CVE-2024-36618.patch commit 7a089ed8e049e3bfcb22de1250b86f2106060857

avformat/avidec: Fix integer overflow iff ULONG_MAX < INT64_MAX

Affects many FATE-tests, see
https://fate.ffmpeg.org/report.cgi?time=20240312011016&slot=ppc-linux-gcc-13.2-ubsan-altivec-qemu

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>

===================================================================
Andreas Rheinhardt <andreas.rheinhardt@outlook.com> no 2024-03-12
CVE-2024-35368.patch commit 4513300989502090c4fd6560544dce399a8cd53c

avcodec/rkmppdec: Fix double-free on error

After having created the AVBuffer that is put into frame->buf[0],
ownership of several objects (namely an AVDRMFrameDescriptor,
an MppFrame and some AVBufferRefs framecontextref and decoder_ref)
has passed to the AVBuffer and therefore to the frame.
Yet it has nevertheless been freed manually on error
afterwards, which would lead to a double-free as soon
as the AVFrame is unreferenced.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>

===================================================================
Andreas Rheinhardt <andreas.rheinhardt@outlook.com> no 2023-09-24
CVE-2024-35367.patch commit 09e6840cf7a3ee07a73c3ae88a020bf27ca1a667

avcodec/ppc/vp8dsp_altivec: Fix out-of-bounds access

h_subpel_filters_inner[i] and h_subpel_filters_outer[i / 2]
belong together and the former allows the range 0..6,
so the latter needs to support 0..3. But it has only three
elements. Add another one.
The value for the last element has been guesstimated
from subpel_filters in libavcodec/vp8dsp.c.

This is also intended to fix FATE-failures with UBSan here:
https://fate.ffmpeg.org/report.cgi?time=20240312011016&slot=ppc-linux-gcc-13.2-ubsan-altivec-qemu

Tested-by: Sean McGovern <gseanmcg@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>

===================================================================
Andreas Rheinhardt <andreas.rheinhardt@outlook.com> no 2024-03-13

All known versions for source package 'ffmpeg'

Links