blob: b7936b4b4d4c04f1604d4bfb80f59b4d185d5819 [file] [log] [blame]
Brad Bishop220d5532018-08-14 00:59:39 +01001From 112d3bd0aaacad51305e1464d4b381dabad0e88b Mon Sep 17 00:00:00 2001
2From: Thomas Daede <daede003@umn.edu>
3Date: Thu, 17 May 2018 16:19:19 -0700
4Subject: [PATCH] Sanity check number of channels in setup.
5
6Fixes #2335.
Brad Bishop220d5532018-08-14 00:59:39 +01007
Brad Bishop220d5532018-08-14 00:59:39 +01008---
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08009CVE: CVE-2018-10392
10
11Upstream-Status: Backport [gitlab.com/Xiph.Org/Vorbis/Commits/112d3bd...]
12
13Signed-off-by: Joe Slater <joe.slater@windriver.com>
14---
15
16 lib/vorbisenc.c | 1 +
Brad Bishop220d5532018-08-14 00:59:39 +010017 1 file changed, 1 insertion(+)
18
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080019
Brad Bishop220d5532018-08-14 00:59:39 +010020diff --git a/lib/vorbisenc.c b/lib/vorbisenc.c
21index 4fc7b62..64a51b5 100644
22--- a/lib/vorbisenc.c
23+++ b/lib/vorbisenc.c
24@@ -684,6 +684,7 @@ int vorbis_encode_setup_init(vorbis_info *vi){
25 highlevel_encode_setup *hi=&ci->hi;
26
27 if(ci==NULL)return(OV_EINVAL);
28+ if(vi->channels<1||vi->channels>255)return(OV_EINVAL);
29 if(!hi->impulse_block_p)i0=1;
30
31 /* too low/high an ATH floater is nonsensical, but doesn't break anything */
32--
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800331.7.9.5
Brad Bishop220d5532018-08-14 00:59:39 +010034