blob: 58ef04d1fdfeecddc427edd57fa1f7c3a504f9fe [file] [log] [blame]
Brad Bishop6e60e8b2018-02-01 10:27:11 -05001From c7c55972758a93350882c32147801a3485b010fe Mon Sep 17 00:00:00 2001
2From: Chris Liddell <chris.liddell@artifex.com>
3Date: Mon, 12 Jun 2017 13:08:40 +0100
4Subject: [PATCH] Bug 698024: bounds check zone pointer in Ins_MIRP()
5
6---
7 base/ttinterp.c | 3 ++-
8 1 file changed, 2 insertions(+), 1 deletion(-)
9
10--- end of original header
11
12CVE: CVE-2017-9611
13
14Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git]
15
16Signed-off-by: Joe Slater <joe.slater@windriver.com>
17
18diff --git a/base/ttinterp.c b/base/ttinterp.c
19index e56aec6..f6a6d95 100644
20--- a/base/ttinterp.c
21+++ b/base/ttinterp.c
22@@ -3858,7 +3858,8 @@ static int nInstrCount=0;
23 /* XXX: UNDOCUMENTED! cvt[-1] = 0 always */
24
25 if ( BOUNDS( args[0], CUR.zp1.n_points ) ||
26- BOUNDS( args[1]+1, CUR.cvtSize+1 ) )
27+ BOUNDS( args[1]+1, CUR.cvtSize+1 ) ||
28+ BOUNDS(CUR.GS.rp0, CUR.zp0.n_points) )
29 {
30 CUR.error = TT_Err_Invalid_Reference;
31 return;
32--
331.7.9.5
34