Compare commits

..

No commits in common. "c8s" and "c9-beta" have entirely different histories.
c8s ... c9-beta

14 changed files with 161 additions and 342 deletions

1
.flac.metadata Normal file
View File

@ -0,0 +1 @@
6ac2e8f1dd18c9b0214c4d81bd70cdc1e943cffe SOURCES/flac-1.3.3.tar.xz

View File

@ -1 +0,0 @@
1

3
.gitignore vendored
View File

@ -1,2 +1 @@
SOURCES/flac-1.3.2.tar.xz SOURCES/flac-1.3.3.tar.xz
/flac-1.3.2.tar.xz

View File

@ -0,0 +1,23 @@
commit 2e7931c27eb15e387da440a37f12437e35b22dd4
Author: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Mon Oct 7 12:55:58 2019 +1100
libFLAC/bitreader.c: Fix out-of-bounds read
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17069
Testcase: fuzzer_decoder-5670265022840832
diff --git a/src/libFLAC/bitreader.c b/src/libFLAC/bitreader.c
index 5e4b5918..3df4d02c 100644
--- a/src/libFLAC/bitreader.c
+++ b/src/libFLAC/bitreader.c
@@ -869,7 +869,7 @@ incomplete_lsbs:
cwords = br->consumed_words;
words = br->words;
ucbits = FLAC__BITS_PER_WORD - br->consumed_bits;
- b = br->buffer[cwords] << br->consumed_bits;
+ b = cwords < br->capacity ? br->buffer[cwords] << br->consumed_bits : 0;
} while(cwords >= words && val < end);
}

View File

@ -0,0 +1,28 @@
commit e1575e4a7c5157cbf4e4a16dbd39b74f7174c7be
Author: Neelkamal Semwal <neelkamal.semwal@ittiam.com>
Date: Fri Dec 18 22:28:36 2020 +0530
libFlac: Exit at EOS in verify mode
When verify mode is enabled, once decoder flags end of stream,
encode processing is considered complete.
CVE-2021-0561
Signed-off-by: Ralph Giles <giles@thaumas.net>
diff --git a/src/libFLAC/stream_encoder.c b/src/libFLAC/stream_encoder.c
index 4c91247f..7109802c 100644
--- a/src/libFLAC/stream_encoder.c
+++ b/src/libFLAC/stream_encoder.c
@@ -2610,7 +2610,9 @@ FLAC__bool write_bitbuffer_(FLAC__StreamEncoder *encoder, uint32_t samples, FLAC
encoder->private_->verify.needs_magic_hack = true;
}
else {
- if(!FLAC__stream_decoder_process_single(encoder->private_->verify.decoder)) {
+ if(!FLAC__stream_decoder_process_single(encoder->private_->verify.decoder)
+ || (!is_last_block
+ && (FLAC__stream_encoder_get_verify_decoder_state(encoder) == FLAC__STREAM_DECODER_END_OF_STREAM))) {
FLAC__bitwriter_release_buffer(encoder->private_->frame);
FLAC__bitwriter_clear(encoder->private_->frame);
if(encoder->protected_->state != FLAC__STREAM_ENCODER_VERIFY_MISMATCH_IN_AUDIO_DATA)

View File

@ -1,24 +1,33 @@
# Disable if you don't need xmms
%global with_xmms !0%{?rhel}
%if %{with_xmms}
%define xmms_inputdir %(xmms-config --input-plugin-dir 2>/dev/null || echo %{_libdir}/xmms/General)
%endif
Summary: An encoder/decoder for the Free Lossless Audio Codec Summary: An encoder/decoder for the Free Lossless Audio Codec
Name: flac Name: flac
Version: 1.3.2 Version: 1.3.3
Release: 11%{?dist} Release: 10%{?dist}
License: BSD and GPLv2+ and GFDL License: BSD and GPLv2+ and GFDL
Group: Applications/Multimedia Source0: https://downloads.xiph.org/releases/flac/flac-%{version}.tar.xz
Source0: http://downloads.xiph.org/releases/flac/flac-%{version}.tar.xz URL: https://www.xiph.org/flac/
URL: http://www.xiph.org/flac/
# use our CFLAGS and don't force SSE intrinsics
Patch1: flac-cflags.patch
# fix memory leak in parsing of vorbis comments
Patch2: flac-memleak.patch
# disable nasm detection
Patch3: flac-nonasm.patch
# don't free memory that is still used after realloc() error
Patch4: flac-cve-2020-22219.patch
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
BuildRequires: libogg-devel BuildRequires: libogg-devel
BuildRequires: gcc automake autoconf libtool gettext-devel doxygen BuildRequires: gcc gcc-c++ automake autoconf libtool gettext-devel doxygen
# xmms-flac subpackage was dropped in 1.3.2-8 %if %{with_xmms}
Obsoletes: xmms-%{name} < 1.3.2-8 BuildRequires: xmms-devel desktop-file-utils
Source1: xmms-flac.desktop
%endif
%ifarch %{ix86}
# 2.0 supports symbol visibility
BuildRequires: nasm >= 2.0
%endif
BuildRequires: make
Patch1: flac-cve-2020-0499.patch
# handle end-of-stream when encoding with verification
Patch2: flac-cve-2021-0561.patch
%description %description
FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC
@ -32,7 +41,6 @@ This package contains the command-line tools and documentation.
%package libs %package libs
Summary: Libraries for the Free Lossless Audio Codec Summary: Libraries for the Free Lossless Audio Codec
Group: System Environment/Libraries
Obsoletes: flac < 1.2.1-11 Obsoletes: flac < 1.2.1-11
%description libs %description libs
@ -46,7 +54,6 @@ This package contains the FLAC libraries.
%package devel %package devel
Summary: Development libraries and header files from FLAC Summary: Development libraries and header files from FLAC
Group: Development/Libraries
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: pkgconfig Requires: pkgconfig
@ -54,12 +61,23 @@ Requires: pkgconfig
This package contains all the files needed to develop applications that This package contains all the files needed to develop applications that
will use the Free Lossless Audio Codec. will use the Free Lossless Audio Codec.
%if %{with_xmms}
%package -n xmms-flac
Summary: XMMS plugin needed to play FLAC (Free Lossless Audio Codec) files
# The entire FLAC sources are covered by multiple licenses, but the xmms plugin
# is only GPLv2+
License: GPLv2+
%description -n xmms-flac
FLAC is a Free Lossless Audio Codec. The FLAC format supports streaming,
seeking, and archival, and gives 25-75% compression on typical CD audio.
This is the input plugin for XMMS to be able to read FLAC files.
%endif
%prep %prep
%setup -q %setup -q
%patch1 -p1 -b .cflags %patch1 -p1 -b .cve-2020-0499
%patch2 -p1 -b .memleak %patch2 -p1 -b .cve-2021-0561
%patch3 -p1 -b .nonasm
%patch4 -p1 -b .cve-2020-22219
%build %build
# use our libtool to avoid problems with RPATH # use our libtool to avoid problems with RPATH
@ -68,14 +86,23 @@ will use the Free Lossless Audio Codec.
# -funroll-loops makes encoding about 10% faster # -funroll-loops makes encoding about 10% faster
export CFLAGS="%{optflags} -funroll-loops" export CFLAGS="%{optflags} -funroll-loops"
%configure \ %configure \
--htmldir=%{_docdir}/flac/html \
%if %{with_xmms}
--enable-xmms-plugin \
%else
--disable-xmms-plugin \ --disable-xmms-plugin \
%endif
--disable-silent-rules \ --disable-silent-rules \
--disable-thorough-tests --disable-thorough-tests
make %{?_smp_mflags} %make_build
%install %install
make install DESTDIR=%{buildroot} %make_install
%if %{with_xmms}
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1}
%endif
# split documentation # split documentation
mv %{buildroot}%{_docdir}/flac* ./flac-doc mv %{buildroot}%{_docdir}/flac* ./flac-doc
@ -84,9 +111,12 @@ mv flac-doc{/html/api,-devel}
rm flac-doc/FLAC.tag rm flac-doc/FLAC.tag
rm %{buildroot}%{_libdir}/*.la rm %{buildroot}%{_libdir}/*.la
%if %{with_xmms}
rm %{buildroot}%{xmms_inputdir}/*.la
%endif
%check %check
make -C test check FLAC__TEST_LEVEL=0 &> /dev/null make check
%ldconfig_scriptlets libs %ldconfig_scriptlets libs
@ -98,7 +128,8 @@ make -C test check FLAC__TEST_LEVEL=0 &> /dev/null
%files libs %files libs
%doc AUTHORS COPYING* README %doc AUTHORS COPYING* README
%{_libdir}/*.so.* %{_libdir}/libFLAC.so.8*
%{_libdir}/libFLAC++.so.6*
%files devel %files devel
%doc flac-doc-devel/* %doc flac-doc-devel/*
@ -107,18 +138,61 @@ make -C test check FLAC__TEST_LEVEL=0 &> /dev/null
%{_libdir}/pkgconfig/* %{_libdir}/pkgconfig/*
%{_datadir}/aclocal/*.m4 %{_datadir}/aclocal/*.m4
%if %{with_xmms}
%files -n xmms-flac
%license COPYING.GPL
%{_datadir}/applications/xmms-flac.desktop
%{xmms_inputdir}/libxmms-flac.so
%endif
%changelog %changelog
* Mon Sep 25 2023 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-11 * Thu May 05 2022 Miroslav Lichvar <mlichvar@redhat.com> 1.3.3-10
- rebuild - handle end-of-stream when encoding with verification (CVE-2021-0561)
* Mon Sep 18 2023 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-10 * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.3.3-9
- don't free memory that is still used after realloc() error (CVE-2020-22219) - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Sep 20 2018 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-9 * Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.3.3-8
- disable nasm to avoid gaps in annobin coverage (#1630561) - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Wed May 16 2018 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-8 * Fri Feb 19 2021 Adam Jackson <ajax@redhat.com> - 1.3.3-7
- drop xmms-flac subpackage (#1578806) - Fix the previous change to actually build in RHEL
* Thu Feb 18 2021 Adam Jackson <ajax@redhat.com> - 1.3.3-6
- Disable xmms in RHEL
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Jan 07 2021 Miroslav Lichvar <mlichvar@redhat.com> 1.3.3-4
- fix out-of-bounds read in decoder (CVE-2020-0499)
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Aug 06 2019 Miroslav Lichvar <mlichvar@redhat.com> 1.3.3-1
- update to 1.3.3
- include soname in file list
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.2-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Mar 7 2019 Tim Landscheidt <tim@tim-landscheidt.de> - 1.3.2-11
- Remove obsolete requirements for %%post/%%postun scriptlets
* Tue Feb 05 2019 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-10
- rebuild again
- fix indentation in buildrequires
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed May 02 2018 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-7 * Wed May 02 2018 Miroslav Lichvar <mlichvar@redhat.com> 1.3.2-7
- fix memory leak in parsing of vorbis comments (CVE-2017-6888) - fix memory leak in parsing of vorbis comments (CVE-2017-6888)

1
ci.fmf
View File

@ -1 +0,0 @@
resultsdb-testcase: separate

View File

@ -1,31 +0,0 @@
diff -up flac-1.3.2/configure.ac.cflags flac-1.3.2/configure.ac
--- flac-1.3.2/configure.ac.cflags 2017-01-02 14:02:15.663046237 +0100
+++ flac-1.3.2/configure.ac 2017-01-02 14:04:20.718046015 +0100
@@ -390,7 +390,7 @@ if test "x$debug" = xtrue; then
else
CPPFLAGS="-DNDEBUG $CPPFLAGS"
CFLAGS=$(echo "$CFLAGS" | sed 's/-O2//')
- CFLAGS="-O3 -funroll-loops $CFLAGS"
+ CFLAGS="$user_cflags"
fi
XIPH_GCC_VERSION
@@ -400,7 +400,6 @@ if test x$ac_cv_c_compiler_gnu = xyes ;
CXXFLAGS="$CXXFLAGS -Wall -Wextra -Wcast-align -Wshadow -Wwrite-strings -Wctor-dtor-privacy -Wnon-virtual-dtor -Wreorder -Wsign-promo -Wundef " # -Wcast-qual -Wbad-function-cast -Wwrite-strings -Woverloaded-virtual -Wmissing-declarations
XIPH_ADD_CFLAGS([-Wdeclaration-after-statement])
- XIPH_ADD_CFLAGS([-D_FORTIFY_SOURCE=2])
AC_LANG_PUSH([C++])
XIPH_ADD_CXXFLAGS([-Weffc++])
@@ -426,10 +425,6 @@ if test x$ac_cv_c_compiler_gnu = xyes ;
XIPH_ADD_CFLAGS([-fno-inline-small-functions])
fi
- if test "x$asm_optimisation$sse_os" = "xyesyes" ; then
- XIPH_ADD_CFLAGS([-msse2])
- fi
-
fi
case "$host_os" in

View File

@ -1,177 +0,0 @@
Backported to 1.3.2
commit 21fe95ee828b0b9b944f6aa0bb02d24fbb981815
Author: Martijn van Beurden <mvanb1@gmail.com>
Date: Wed Aug 3 13:52:19 2022 +0200
Add and use _nofree variants of safe_realloc functions
Parts of the code use realloc like
x = safe_realloc(x, somesize);
when this is the case, the safe_realloc variant used must free the
old memory block in case it fails, otherwise it will leak. However,
there are also instances in the code where handling is different:
if (0 == (x = safe_realloc(y, somesize)))
return false
in this case, y should not be freed, as y is not set to NULL we
could encounter double frees. Here the safe_realloc_nofree
functions are used.
diff -up flac-1.3.2/include/share/alloc.h.cve-2020-22219 flac-1.3.2/include/share/alloc.h
--- flac-1.3.2/include/share/alloc.h.cve-2020-22219 2016-12-07 21:10:26.218454157 +0100
+++ flac-1.3.2/include/share/alloc.h 2023-08-31 11:32:36.335453612 +0200
@@ -161,17 +161,30 @@ static inline void *safe_realloc_(void *
free(oldptr);
return newptr;
}
-static inline void *safe_realloc_add_2op_(void *ptr, size_t size1, size_t size2)
+static inline void *safe_realloc_nofree_add_2op_(void *ptr, size_t size1, size_t size2)
+{
+ size2 += size1;
+ if(size2 < size1)
+ return 0;
+ return realloc(ptr, size2);
+}
+
+static inline void *safe_realloc_add_3op_(void *ptr, size_t size1, size_t size2, size_t size3)
{
size2 += size1;
if(size2 < size1) {
free(ptr);
return 0;
}
- return realloc(ptr, size2);
+ size3 += size2;
+ if(size3 < size2) {
+ free(ptr);
+ return 0;
+ }
+ return safe_realloc_(ptr, size3);
}
-static inline void *safe_realloc_add_3op_(void *ptr, size_t size1, size_t size2, size_t size3)
+static inline void *safe_realloc_nofree_add_3op_(void *ptr, size_t size1, size_t size2, size_t size3)
{
size2 += size1;
if(size2 < size1)
@@ -182,7 +195,7 @@ static inline void *safe_realloc_add_3op
return realloc(ptr, size3);
}
-static inline void *safe_realloc_add_4op_(void *ptr, size_t size1, size_t size2, size_t size3, size_t size4)
+static inline void *safe_realloc_nofree_add_4op_(void *ptr, size_t size1, size_t size2, size_t size3, size_t size4)
{
size2 += size1;
if(size2 < size1)
@@ -205,6 +218,15 @@ static inline void *safe_realloc_mul_2op
return safe_realloc_(ptr, size1*size2);
}
+static inline void *safe_realloc_nofree_mul_2op_(void *ptr, size_t size1, size_t size2)
+{
+ if(!size1 || !size2)
+ return realloc(ptr, 0); /* preserve POSIX realloc(ptr, 0) semantics */
+ if(size1 > SIZE_MAX / size2)
+ return 0;
+ return realloc(ptr, size1*size2);
+}
+
/* size1 * (size2 + size3) */
static inline void *safe_realloc_muladd2_(void *ptr, size_t size1, size_t size2, size_t size3)
{
@@ -216,4 +238,15 @@ static inline void *safe_realloc_muladd2
return safe_realloc_mul_2op_(ptr, size1, size2);
}
+/* size1 * (size2 + size3) */
+static inline void *safe_realloc_nofree_muladd2_(void *ptr, size_t size1, size_t size2, size_t size3)
+{
+ if(!size1 || (!size2 && !size3))
+ return realloc(ptr, 0); /* preserve POSIX realloc(ptr, 0) semantics */
+ size2 += size3;
+ if(size2 < size3)
+ return 0;
+ return safe_realloc_nofree_mul_2op_(ptr, size1, size2);
+}
+
#endif
diff -up flac-1.3.2/src/flac/encode.c.cve-2020-22219 flac-1.3.2/src/flac/encode.c
--- flac-1.3.2/src/flac/encode.c.cve-2020-22219 2016-12-07 21:10:26.218454157 +0100
+++ flac-1.3.2/src/flac/encode.c 2023-08-31 11:32:36.335453612 +0200
@@ -1744,10 +1744,10 @@ static void static_metadata_clear(static
static FLAC__bool static_metadata_append(static_metadata_t *m, FLAC__StreamMetadata *d, FLAC__bool needs_delete)
{
void *x;
- if(0 == (x = safe_realloc_muladd2_(m->metadata, sizeof(*m->metadata), /*times (*/m->num_metadata, /*+*/1/*)*/)))
+ if(0 == (x = safe_realloc_nofree_muladd2_(m->metadata, sizeof(*m->metadata), /*times (*/m->num_metadata, /*+*/1/*)*/)))
return false;
m->metadata = (FLAC__StreamMetadata**)x;
- if(0 == (x = safe_realloc_muladd2_(m->needs_delete, sizeof(*m->needs_delete), /*times (*/m->num_metadata, /*+*/1/*)*/)))
+ if(0 == (x = safe_realloc_nofree_muladd2_(m->needs_delete, sizeof(*m->needs_delete), /*times (*/m->num_metadata, /*+*/1/*)*/)))
return false;
m->needs_delete = (FLAC__bool*)x;
m->metadata[m->num_metadata] = d;
diff -up flac-1.3.2/src/flac/foreign_metadata.c.cve-2020-22219 flac-1.3.2/src/flac/foreign_metadata.c
--- flac-1.3.2/src/flac/foreign_metadata.c.cve-2020-22219 2016-12-07 21:10:26.222454288 +0100
+++ flac-1.3.2/src/flac/foreign_metadata.c 2023-08-31 11:32:36.335453612 +0200
@@ -75,7 +75,7 @@ static FLAC__bool copy_data_(FILE *fin,
static FLAC__bool append_block_(foreign_metadata_t *fm, FLAC__off_t offset, FLAC__uint32 size, const char **error)
{
- foreign_block_t *fb = safe_realloc_muladd2_(fm->blocks, sizeof(foreign_block_t), /*times (*/fm->num_blocks, /*+*/1/*)*/);
+ foreign_block_t *fb = safe_realloc_nofree_muladd2_(fm->blocks, sizeof(foreign_block_t), /*times (*/fm->num_blocks, /*+*/1/*)*/);
if(fb) {
fb[fm->num_blocks].offset = offset;
fb[fm->num_blocks].size = size;
diff -up flac-1.3.2/src/libFLAC/bitwriter.c.cve-2020-22219 flac-1.3.2/src/libFLAC/bitwriter.c
--- flac-1.3.2/src/libFLAC/bitwriter.c.cve-2020-22219 2016-12-07 21:10:26.222454288 +0100
+++ flac-1.3.2/src/libFLAC/bitwriter.c 2023-08-31 11:32:36.335453612 +0200
@@ -124,7 +124,7 @@ FLAC__bool bitwriter_grow_(FLAC__BitWrit
FLAC__ASSERT(new_capacity > bw->capacity);
FLAC__ASSERT(new_capacity >= bw->words + ((bw->bits + bits_to_add + FLAC__BITS_PER_WORD - 1) / FLAC__BITS_PER_WORD));
- new_buffer = safe_realloc_mul_2op_(bw->buffer, sizeof(bwword), /*times*/new_capacity);
+ new_buffer = safe_realloc_nofree_mul_2op_(bw->buffer, sizeof(bwword), /*times*/new_capacity);
if(new_buffer == 0)
return false;
bw->buffer = new_buffer;
diff -up flac-1.3.2/src/libFLAC/metadata_object.c.cve-2020-22219 flac-1.3.2/src/libFLAC/metadata_object.c
--- flac-1.3.2/src/libFLAC/metadata_object.c.cve-2020-22219 2023-08-31 11:32:36.336453612 +0200
+++ flac-1.3.2/src/libFLAC/metadata_object.c 2023-08-31 11:34:18.844405405 +0200
@@ -98,7 +98,7 @@ static FLAC__bool free_copy_bytes_(FLAC_
/* realloc() failure leaves entry unchanged */
static FLAC__bool ensure_null_terminated_(FLAC__byte **entry, unsigned length)
{
- FLAC__byte *x = safe_realloc_add_2op_(*entry, length, /*+*/1);
+ FLAC__byte *x = safe_realloc_nofree_add_2op_(*entry, length, /*+*/1);
if (x != NULL) {
x[length] = '\0';
*entry = x;
diff -up flac-1.3.2/src/plugin_common/tags.c.cve-2020-22219 flac-1.3.2/src/plugin_common/tags.c
--- flac-1.3.2/src/plugin_common/tags.c.cve-2020-22219 2016-12-07 21:10:26.234454678 +0100
+++ flac-1.3.2/src/plugin_common/tags.c 2023-08-31 11:32:36.336453612 +0200
@@ -317,7 +317,7 @@ FLAC__bool FLAC_plugin__tags_add_tag_utf
const size_t value_len = strlen(value);
const size_t separator_len = strlen(separator);
FLAC__byte *new_entry;
- if(0 == (new_entry = safe_realloc_add_4op_(entry->entry, entry->length, /*+*/value_len, /*+*/separator_len, /*+*/1)))
+ if(0 == (new_entry = safe_realloc_nofree_add_4op_(entry->entry, entry->length, /*+*/value_len, /*+*/separator_len, /*+*/1)))
return false;
memcpy(new_entry+entry->length, separator, separator_len);
entry->length += separator_len;
diff -up flac-1.3.2/src/share/utf8/iconvert.c.cve-2020-22219 flac-1.3.2/src/share/utf8/iconvert.c
--- flac-1.3.2/src/share/utf8/iconvert.c.cve-2020-22219 2016-12-07 21:10:26.234454678 +0100
+++ flac-1.3.2/src/share/utf8/iconvert.c 2023-08-31 11:32:36.336453612 +0200
@@ -149,7 +149,7 @@ int iconvert(const char *fromcode, const
iconv_close(cd1);
return ret;
}
- newbuf = safe_realloc_add_2op_(utfbuf, (ob - utfbuf), /*+*/1);
+ newbuf = safe_realloc_nofree_add_2op_(utfbuf, (ob - utfbuf), /*+*/1);
if (!newbuf)
goto fail;
ob = (ob - utfbuf) + newbuf;

View File

@ -1,22 +0,0 @@
commit 4f47b63e9c971e6391590caf00a0f2a5ed612e67
Author: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Sat Apr 8 18:34:49 2017 +1000
stream_decoder.c: Fix a memory leak
Leak reported by Secunia Research.
diff --git a/src/libFLAC/stream_decoder.c b/src/libFLAC/stream_decoder.c
index 14d5fe7f..a5527511 100644
--- a/src/libFLAC/stream_decoder.c
+++ b/src/libFLAC/stream_decoder.c
@@ -1753,6 +1753,9 @@ FLAC__bool read_metadata_vorbiscomment_(FLAC__StreamDecoder *decoder, FLAC__Stre
}
memset (obj->comments[i].entry, 0, obj->comments[i].length) ;
if (!FLAC__bitreader_read_byte_block_aligned_no_crc(decoder->private_->input, obj->comments[i].entry, obj->comments[i].length)) {
+ /* Current i-th entry is bad, so we delete it. */
+ free (obj->comments[i].entry) ;
+ obj->comments[i].entry = NULL ;
obj->num_comments = i;
goto skip;
}

View File

@ -1,12 +0,0 @@
diff -up flac-1.3.2/configure.ac.nonasm flac-1.3.2/configure.ac
--- flac-1.3.2/configure.ac.nonasm 2018-09-20 18:07:24.511716480 +0200
+++ flac-1.3.2/configure.ac 2018-09-20 18:21:18.727824763 +0200
@@ -377,7 +377,7 @@ if test x$have_clock_gettime = xyes; the
fi
# only matters for x86
-AC_CHECK_PROGS(NASM, nasm)
+#AC_CHECK_PROGS(NASM, nasm)
AM_CONDITIONAL(FLaC__HAS_NASM, test -n "$NASM")
if test -n "$NASM" ; then
AC_DEFINE(FLAC__HAS_NASM)

View File

@ -1,25 +0,0 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#Rawhide
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#gating rhel
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-internal.functional}

View File

@ -1,36 +0,0 @@
/tier1-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/tier1/internal
/tier1-public:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/tier1/public
/tier2-tier3-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/tier2-tier3/internal
/tier2-tier3-public:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/tier2-tier3/public
/others-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/others/internal
/others-public:
plan:
import:
url: https://src.fedoraproject.org/tests/flac.git
name: /plans/others/public

View File

@ -1 +0,0 @@
SHA512 (flac-1.3.2.tar.xz) = 63910e8ebbe508316d446ffc9eb6d02efbd5f47d29d2ea7864da9371843c8e671854db6e89ba043fe08aef1845b8ece70db80f1cce853f591ca30d56ef7c3a15