audiofile: patch CVE-2018-13440 and CVE-2018-17059

Details:
https://nvd.nist.gov/vuln/detail/CVE-2018-13440
https://nvd.nist.gov/vuln/detail/CVE-2018-17059

The patches have been backported from Debian - upstream
has been inactive for almost a decade by now.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Gyorgy Sarvari 2025-11-14 09:24:49 +01:00 committed by Khem Raj
parent 6c98db2449
commit e16a7d11d1
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 73 additions and 0 deletions

View File

@ -22,6 +22,8 @@ SRC_URI = " \
file://test-for-CVE-2015-7747.patch \
file://CVE-2019-13147.patch \
file://CVE-2022-24599.patch \
file://CVE-2018-13440.patch \
file://CVE-2018-17059.patch \
"
SRC_URI[sha256sum] = "ea2449ad3f201ec590d811db9da6d02ffc5e87a677d06b92ab15363d8cb59782"

View File

@ -0,0 +1,36 @@
From fde6d79fb8363c4a329a184ef0b107156602b225 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Thu, 27 Sep 2018 10:48:45 +0200
Subject: [PATCH] ModuleState: handle compress/decompress init failure
When the unit initcompress or initdecompress function fails,
m_fileModule is NULL. Return AF_FAIL in that case instead of
causing NULL pointer dereferences later.
Fixes #49
This patch has been backported from Debian:
https://sources.debian.org/src/audiofile/0.3.6-7/debian/patches/11_CVE-2018-13440.patch
CVE: CVE-2018-13440
Upstream-Status: Inactive-Upstream [lastcommit: 2016-Aug-30]
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
libaudiofile/modules/ModuleState.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libaudiofile/modules/ModuleState.cpp b/libaudiofile/modules/ModuleState.cpp
index 0c29d7a..070fd9b 100644
--- a/libaudiofile/modules/ModuleState.cpp
+++ b/libaudiofile/modules/ModuleState.cpp
@@ -75,6 +75,9 @@ status ModuleState::initFileModule(AFfilehandle file, Track *track)
m_fileModule = unit->initcompress(track, file->m_fh, file->m_seekok,
file->m_fileFormat == AF_FILE_RAWDATA, &chunkFrames);
+ if (!m_fileModule)
+ return AF_FAIL;
+
if (unit->needsRebuffer)
{
assert(unit->nativeSampleFormat == AF_SAMPFMT_TWOSCOMP);

View File

@ -0,0 +1,35 @@
From 822b732fd31ffcb78f6920001e9b1fbd815fa712 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Thu, 27 Sep 2018 12:11:12 +0200
Subject: [PATCH] SimpleModule: set output chunk framecount after pull
After pulling the data, set the output chunk to the amount of
frames we pulled so that the next module in the chain has the correct
frame count.
Fixes #50 and #51
This patch has been backported from Debian:
https://sources.debian.org/src/audiofile/0.3.6-7/debian/patches/12_CVE-2018-17095.patch
CVE: CVE-2018-17095
Upstream-Status: Inactive-Upstream [lastcommit: 2016-Aug-30]
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
libaudiofile/modules/SimpleModule.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/libaudiofile/modules/SimpleModule.cpp b/libaudiofile/modules/SimpleModule.cpp
index 2bae1eb..e87932c 100644
--- a/libaudiofile/modules/SimpleModule.cpp
+++ b/libaudiofile/modules/SimpleModule.cpp
@@ -26,6 +26,7 @@
void SimpleModule::runPull()
{
pull(m_outChunk->frameCount);
+ m_outChunk->frameCount = m_inChunk->frameCount;
run(*m_inChunk, *m_outChunk);
}