Blame SOURCES/ghostscript-cve-2019-3838.patch

5e8686
From ed9fcd95bb01f0768bf273b2526732e381202319 Mon Sep 17 00:00:00 2001
5e8686
From: Chris Liddell <chris.liddell@artifex.com>
5e8686
Date: Wed, 20 Feb 2019 09:54:28 +0000
5e8686
Subject: [PATCH 1/2] Bug 700576: Make a transient proc executeonly (in
5e8686
 DefineResource).
5e8686
5e8686
This prevents access to .forceput
5e8686
5e8686
Solution originally suggested by cbuissar@redhat.com.
5e8686
---
5e8686
 Resource/Init/gs_res.ps | 2 +-
5e8686
 1 file changed, 1 insertion(+), 1 deletion(-)
5e8686
5e8686
diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps
5e8686
index d9b3459..b646329 100644
5e8686
--- a/Resource/Init/gs_res.ps
5e8686
+++ b/Resource/Init/gs_res.ps
5e8686
@@ -425,7 +425,7 @@ status {
5e8686
                         % so we have to use .forcedef here.
5e8686
                   /.Instances 1 index .forcedef	% Category dict is read-only
5e8686
                 } executeonly if
5e8686
-              }
5e8686
+              } executeonly
5e8686
               { .LocalInstances dup //.emptydict eq
5e8686
                  { pop 3 dict localinstancedict Category 2 index put
5e8686
                  }
5e8686
-- 
5e8686
2.20.1
5e8686
5e8686
5e8686
From a82601e8f95a2f2147f3b3b9e44ec2b8f3a6be8b Mon Sep 17 00:00:00 2001
5e8686
From: Chris Liddell <chris.liddell@artifex.com>
5e8686
Date: Fri, 22 Feb 2019 12:28:23 +0000
5e8686
Subject: [PATCH 2/2] Bug 700576(redux): an extra transient proc needs
5e8686
 executeonly'ed.
5e8686
5e8686
---
5e8686
 Resource/Init/gs_res.ps | 2 +-
5e8686
 1 file changed, 1 insertion(+), 1 deletion(-)
5e8686
5e8686
diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps
5e8686
index b646329..8c1f29f 100644
5e8686
--- a/Resource/Init/gs_res.ps
5e8686
+++ b/Resource/Init/gs_res.ps
5e8686
@@ -437,7 +437,7 @@ status {
5e8686
                         % Now make the resource value read-only.
5e8686
              0 2 copy get { readonly } .internalstopped pop
5e8686
              dup 4 1 roll put exch pop exch pop
5e8686
-           }
5e8686
+           } executeonly
5e8686
            { /defineresource cvx /typecheck signaloperror
5e8686
            }
5e8686
         ifelse
5e8686
-- 
5e8686
2.20.1
5e8686