3321eef6f2
mapping0_forward in mapping0.c in Xiph.Org libvorbis 1.3.6 does not validate the number of channels, which allows remote attackers to cause a denial of service (heap-based buffer overflow or over-read) or possibly have unspecified other impact via a crafted file. Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
29 lines
891 B
Diff
29 lines
891 B
Diff
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.
|
|
[Retrieved from:
|
|
https://gitlab.xiph.org/xiph/vorbis/commit/112d3bd0aaacad51305e1464d4b381dabad0e88b]
|
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.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.24.1
|
|
|