libvorbis: CVE-2018-10392

Sanity check number of channels in setup.

Fixes #2335.
Link: https://gitlab.xiph.org/xiph/vorbis/issues/2335

(From OE-Core rev: a8e6ce64d4561826f2f5926c2dc67939c95a8626)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jagadeesh Krishnanjanappa 2018-07-28 10:20:08 +05:30 committed by Richard Purdie
parent 6f7c2da540
commit a47d077ff4
2 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,29 @@
From 112d3bd0aaacad51305e1464d4b381dabad0e88b Mon Sep 17 00:00:00 2001
From: Thomas Daede <daede003@umn.edu>
Date: Thu, 17 May 2018 16:19:19 -0700
Subject: [PATCH] Sanity check number of channels in setup.
Fixes #2335.
CVE: CVE-2018-10392
Upstream-Status: Backport [https://gitlab.xiph.org/xiph/vorbis/commit/112d3bd0aaacad51305e1464d4b381dabad0e88b]
Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
---
lib/vorbisenc.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/vorbisenc.c b/lib/vorbisenc.c
index 4fc7b62..64a51b5 100644
--- a/lib/vorbisenc.c
+++ b/lib/vorbisenc.c
@@ -684,6 +684,7 @@ int vorbis_encode_setup_init(vorbis_info *vi){
highlevel_encode_setup *hi=&ci->hi;
if(ci==NULL)return(OV_EINVAL);
+ if(vi->channels<1||vi->channels>255)return(OV_EINVAL);
if(!hi->impulse_block_p)i0=1;
/* too low/high an ATH floater is nonsensical, but doesn't break anything */
--
2.13.3

View File

@ -17,6 +17,7 @@ SRC_URI = "http://downloads.xiph.org/releases/vorbis/${BP}.tar.xz \
file://CVE-2017-14632.patch \
file://CVE-2018-5146.patch \
file://CVE-2017-14160.patch \
file://CVE-2018-10392.patch \
"
SRC_URI[md5sum] = "28cb28097c07a735d6af56e598e1c90f"
SRC_URI[sha256sum] = "54f94a9527ff0a88477be0a71c0bab09a4c3febe0ed878b24824906cd4b0e1d1"