Blame SOURCES/pki-core-rhel-7-9-rhcs-9-7-bu-19.patch

947023
From b6b624d191a003f273283a1bc00278f534ff41a6 Mon Sep 17 00:00:00 2001
947023
From: Chris Kelley <ckelley@redhat.com>
947023
Date: Wed, 19 Oct 2022 16:42:43 +0100
947023
Subject: [PATCH 1/2] Use internal JAXP implementation.
947023
947023
JAXP will attempt to use xerces if the JAR is installed, so force the
947023
application to use the internal parsers instead.
947023
947023
(cherry picked from commit ce5876dae1888cae0631f039694762811d6dab94)
947023
---
947023
 .../cmscore/src/com/netscape/cmscore/apps/CMSEngine.java | 16 +++++++++++++---
947023
 1 file changed, 13 insertions(+), 3 deletions(-)
947023
947023
diff --git a/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java b/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
index db341d5..de98f74 100644
947023
--- a/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
+++ b/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
@@ -43,6 +43,8 @@ import java.util.Vector;
947023
 
947023
 import javax.servlet.ServletException;
947023
 import javax.servlet.http.HttpServlet;
947023
+import javax.xml.parsers.DocumentBuilder;
947023
+import javax.xml.parsers.DocumentBuilderFactory;
947023
 
947023
 import org.apache.commons.lang.StringUtils;
947023
 import org.apache.xerces.parsers.DOMParser;
947023
@@ -58,6 +60,7 @@ import org.mozilla.jss.crypto.PrivateKey;
947023
 import org.mozilla.jss.crypto.Signature;
947023
 import org.mozilla.jss.crypto.SignatureAlgorithm;
947023
 import org.mozilla.jss.util.PasswordCallback;
947023
+import org.w3c.dom.Document;
947023
 import org.w3c.dom.Element;
947023
 import org.w3c.dom.NodeList;
947023
 
947023
@@ -618,9 +621,16 @@ public class CMSEngine implements ICMSEngine {
947023
         try {
947023
             String instanceRoot = mConfig.getString("instanceRoot");
947023
             String path = instanceRoot + File.separator + "conf" + File.separator + SERVER_XML;
947023
-            DOMParser parser = new DOMParser();
947023
-            parser.parse(path);
947023
-            NodeList nodes = parser.getDocument().getElementsByTagName("Connector");
947023
+            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(
947023
+                    "com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl",
947023
+                    this.getClass().getClassLoader());
947023
+            factory.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);
947023
+            factory.setFeature("http://xml.org/sax/features/external-general-entities", false);
947023
+            factory.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
947023
+            DocumentBuilder builder = factory.newDocumentBuilder();
947023
+            Document doc = builder.parse(new File(path));
947023
+            doc.getDocumentElement().normalize();
947023
+            NodeList nodes = doc.getElementsByTagName("Connector");
947023
             String parentName = "";
947023
             String name = "";
947023
             String port = "";
947023
-- 
947023
1.8.3.1
947023
947023
947023
From 646e4eda892d17236ba67f659292ecfcb7790466 Mon Sep 17 00:00:00 2001
947023
From: Chris Kelley <ckelley@redhat.com>
947023
Date: Thu, 20 Oct 2022 15:04:40 +0100
947023
Subject: [PATCH 2/2] Remove references to Xerces JAR
947023
947023
Requesting use of the internal JAXP DocumentBuilderFactory
947023
implementation renders the JAR unnecessary (from the perspective of PKI,
947023
it is still required and installed by dependencies of PKI).
947023
---
947023
 base/CMakeLists.txt                                          |  8 --------
947023
 base/ca/shared/conf/jkconfig.manifest                        |  2 +-
947023
 base/common/src/CMakeLists.txt                               | 10 +---------
947023
 base/java-tools/src/CMakeLists.txt                           | 10 +---------
947023
 base/javadoc/CMakeLists.txt                                  |  2 +-
947023
 base/kra/shared/conf/jkconfig.manifest                       |  2 +-
947023
 base/ocsp/shared/conf/jkconfig.manifest                      |  2 +-
947023
 base/server/CMakeLists.txt                                   |  3 +--
947023
 .../cmscore/src/com/netscape/cmscore/apps/CMSEngine.java     |  1 -
947023
 base/server/share/conf/catalina.properties                   |  2 +-
947023
 base/server/test/CMakeLists.txt                              |  2 +-
947023
 base/test/src/CMakeLists.txt                                 |  2 +-
947023
 base/tks/shared/conf/jkconfig.manifest                       |  2 +-
947023
 base/tps/shared/conf/jkconfig.manifest                       |  2 +-
947023
 base/util/src/CMakeLists.txt                                 | 12 ++----------
947023
 base/util/test/CMakeLists.txt                                |  2 +-
947023
 16 files changed, 15 insertions(+), 49 deletions(-)
947023
947023
diff --git a/base/CMakeLists.txt b/base/CMakeLists.txt
947023
index 5be5b24..d5548a1 100644
947023
--- a/base/CMakeLists.txt
947023
+++ b/base/CMakeLists.txt
947023
@@ -196,14 +196,6 @@ find_file(XALAN_JAR
947023
         /usr/share/java
947023
 )
947023
 
947023
-find_file(XERCES_JAR
947023
-    NAMES
947023
-        xerces-j2.jar
947023
-    PATHS
947023
-        ${JAVA_LIB_INSTALL_DIR}
947023
-        /usr/share/java
947023
-)
947023
-
947023
 # The order is important!
947023
 if (APPLICATION_FLAVOR_PKI_CORE OR
947023
     APPLICATION_FLAVOR_PKI_CONSOLE)
947023
diff --git a/base/ca/shared/conf/jkconfig.manifest b/base/ca/shared/conf/jkconfig.manifest
947023
index 3ba1f2e..5731b47 100644
947023
--- a/base/ca/shared/conf/jkconfig.manifest
947023
+++ b/base/ca/shared/conf/jkconfig.manifest
947023
@@ -1,2 +1,2 @@
947023
 Main-Class: org.apache.jk.config.WebXml2Jk
947023
-Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xercesImpl.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
+Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
diff --git a/base/common/src/CMakeLists.txt b/base/common/src/CMakeLists.txt
947023
index 705d62c..85b3a4c 100644
947023
--- a/base/common/src/CMakeLists.txt
947023
+++ b/base/common/src/CMakeLists.txt
947023
@@ -53,14 +53,6 @@ find_file(XALAN_JAR
947023
         /usr/share/java
947023
 )
947023
 
947023
-find_file(XERCES_JAR
947023
-    NAMES
947023
-        xerces-j2.jar
947023
-    PATHS
947023
-        ${JAVA_LIB_INSTALL_DIR}
947023
-        /usr/share/java
947023
-)
947023
-
947023
 find_file(RESTEASY_JAXRS_JAR
947023
     NAMES
947023
         resteasy-jaxrs.jar
947023
@@ -102,7 +94,7 @@ javac(pki-certsrv-classes
947023
         *.java
947023
     CLASSPATH
947023
         ${SLF4J_API_JAR}
947023
-        ${LDAPJDK_JAR} ${SERVLET_JAR} ${VELOCITY_JAR} ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${LDAPJDK_JAR} ${SERVLET_JAR} ${VELOCITY_JAR} ${XALAN_JAR}
947023
         ${JSS_JAR} ${COMMONS_CODEC_JAR} ${COMMONS_HTTPCLIENT_JAR} ${COMMONS_IO_JAR}
947023
         ${APACHE_COMMONS_LANG_JAR}
947023
         ${TOMCAT_CATALINA_JAR} ${TOMCAT_UTIL_JAR} ${SYMKEY_JAR}
947023
diff --git a/base/java-tools/src/CMakeLists.txt b/base/java-tools/src/CMakeLists.txt
947023
index 7c57eaa..527aff2 100644
947023
--- a/base/java-tools/src/CMakeLists.txt
947023
+++ b/base/java-tools/src/CMakeLists.txt
947023
@@ -45,14 +45,6 @@ find_file(XALAN_JAR
947023
         /usr/share/java
947023
 )
947023
 
947023
-find_file(XERCES_JAR
947023
-    NAMES
947023
-        xerces-j2.jar
947023
-    PATHS
947023
-        ${JAVA_LIB_INSTALL_DIR}
947023
-        /usr/share/java
947023
-)
947023
-
947023
 find_file(RESTEASY_JAXRS_JAR
947023
     NAMES
947023
         resteasy-jaxrs.jar
947023
@@ -87,7 +79,7 @@ javac(pki-tools-classes
947023
         *.java
947023
     CLASSPATH
947023
         ${PKI_NSUTIL_JAR} ${PKI_CMSUTIL_JAR} ${PKI_CERTSRV_JAR}
947023
-        ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${XALAN_JAR}
947023
         ${JSS_JAR} ${LDAPJDK_JAR} ${COMMONS_CODEC_JAR} ${COMMONS_IO_JAR}
947023
         ${APACHE_COMMONS_CLI_JAR} ${APACHE_COMMONS_LANG_JAR}
947023
         ${JAXRS_API_JAR} ${RESTEASY_JAXRS_JAR} ${RESTEASY_ATOM_PROVIDER_JAR}
947023
diff --git a/base/javadoc/CMakeLists.txt b/base/javadoc/CMakeLists.txt
947023
index c477a33..8e00141 100644
947023
--- a/base/javadoc/CMakeLists.txt
947023
+++ b/base/javadoc/CMakeLists.txt
947023
@@ -89,7 +89,7 @@ javadoc(pki-javadoc
947023
         org.dogtagpki
947023
     CLASSPATH
947023
         ${SLF4J_API_JAR}
947023
-        ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${XALAN_JAR}
947023
         ${APACHE_COMMONS_CLI_JAR} ${APACHE_COMMONS_LANG_JAR}
947023
         ${COMMONS_CODEC_JAR} ${COMMONS_HTTPCLIENT_JAR} ${COMMONS_IO_JAR}
947023
         ${LDAPJDK_JAR} ${VELOCITY_JAR}
947023
diff --git a/base/kra/shared/conf/jkconfig.manifest b/base/kra/shared/conf/jkconfig.manifest
947023
index 3ba1f2e..5731b47 100644
947023
--- a/base/kra/shared/conf/jkconfig.manifest
947023
+++ b/base/kra/shared/conf/jkconfig.manifest
947023
@@ -1,2 +1,2 @@
947023
 Main-Class: org.apache.jk.config.WebXml2Jk
947023
-Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xercesImpl.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
+Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
diff --git a/base/ocsp/shared/conf/jkconfig.manifest b/base/ocsp/shared/conf/jkconfig.manifest
947023
index 3ba1f2e..5731b47 100644
947023
--- a/base/ocsp/shared/conf/jkconfig.manifest
947023
+++ b/base/ocsp/shared/conf/jkconfig.manifest
947023
@@ -1,2 +1,2 @@
947023
 Main-Class: org.apache.jk.config.WebXml2Jk
947023
-Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xercesImpl.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
+Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
diff --git a/base/server/CMakeLists.txt b/base/server/CMakeLists.txt
947023
index ec2d37b..09ded9c 100644
947023
--- a/base/server/CMakeLists.txt
947023
+++ b/base/server/CMakeLists.txt
947023
@@ -46,7 +46,7 @@ javac(pki-server-classes
947023
         ${HTTPCORE_JAR} ${HTTPCLIENT_JAR}
947023
         ${JSS_JAR} ${SYMKEY_JAR}
947023
         ${LDAPJDK_JAR}
947023
-        ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${XALAN_JAR}
947023
         ${SERVLET_JAR} ${TOMCAT_CATALINA_JAR} ${TOMCAT_UTIL_JAR}
947023
         ${TOMCATJSS_JAR} ${VELOCITY_JAR}
947023
         ${JAXRS_API_JAR} ${RESTEASY_JAXRS_JAR} ${RESTEASY_ATOM_PROVIDER_JAR}
947023
@@ -130,7 +130,6 @@ add_custom_command(
947023
     COMMAND /usr/bin/ln -sf /usr/lib/java/symkey.jar ${CMAKE_CURRENT_BINARY_DIR}/common/lib/symkey.jar
947023
     COMMAND ${CMAKE_COMMAND} -E create_symlink /usr/share/java/tomcatjss.jar common/lib/tomcatjss.jar
947023
     COMMAND ${CMAKE_COMMAND} -E create_symlink /usr/share/java/velocity.jar common/lib/velocity.jar
947023
-    COMMAND ${CMAKE_COMMAND} -E create_symlink /usr/share/java/xerces-j2.jar common/lib/xerces-j2.jar
947023
     COMMAND ${CMAKE_COMMAND} -E create_symlink /usr/share/java/xml-commons-apis.jar common/lib/xml-commons-apis.jar
947023
     COMMAND ${CMAKE_COMMAND} -E create_symlink /usr/share/java/xml-commons-resolver.jar common/lib/xml-commons-resolver.jar
947023
 )
947023
diff --git a/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java b/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
index de98f74..23beb96 100644
947023
--- a/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
+++ b/base/server/cmscore/src/com/netscape/cmscore/apps/CMSEngine.java
947023
@@ -47,7 +47,6 @@ import javax.xml.parsers.DocumentBuilder;
947023
 import javax.xml.parsers.DocumentBuilderFactory;
947023
 
947023
 import org.apache.commons.lang.StringUtils;
947023
-import org.apache.xerces.parsers.DOMParser;
947023
 import org.dogtagpki.legacy.core.policy.GeneralNameUtil;
947023
 import org.dogtagpki.legacy.policy.IGeneralNameAsConstraintsConfig;
947023
 import org.dogtagpki.legacy.policy.IGeneralNamesAsConstraintsConfig;
947023
diff --git a/base/server/share/conf/catalina.properties b/base/server/share/conf/catalina.properties
947023
index 2199a78..f7edc01 100644
947023
--- a/base/server/share/conf/catalina.properties
947023
+++ b/base/server/share/conf/catalina.properties
947023
@@ -108,7 +108,7 @@ jstl.jar,\
947023
 geronimo-spec-jaxrpc*.jar,wsdl4j*.jar,\
947023
 ant.jar,ant-junit*.jar,aspectj*.jar,jmx.jar,h2*.jar,hibernate*.jar,httpclient*.jar,\
947023
 jmx-tools.jar,jta*.jar,log4j*.jar,mail*.jar,slf4j*.jar,\
947023
-xercesImpl.jar,xmlParserAPIs.jar,xml-apis.jar,\
947023
+xmlParserAPIs.jar,xml-apis.jar,\
947023
 dnsns.jar,ldapsec.jar,localedata.jar,sunjce_provider.jar,sunmscapi.jar,\
947023
 sunpkcs11.jar,jhall.jar,tools.jar,\
947023
 sunec.jar,zipfs.jar,\
947023
diff --git a/base/server/test/CMakeLists.txt b/base/server/test/CMakeLists.txt
947023
index 707493f..ea24f86 100644
947023
--- a/base/server/test/CMakeLists.txt
947023
+++ b/base/server/test/CMakeLists.txt
947023
@@ -36,7 +36,7 @@ javac(pki-server-test-classes
947023
     CLASSPATH
947023
         ${PKI_NSUTIL_JAR} ${PKI_CMSUTIL_JAR}
947023
         ${PKI_CERTSRV_JAR} ${PKI_CMS_JAR} ${PKI_CMSCORE_JAR} ${PKI_CMSBUNDLE_JAR}
947023
-        ${LDAPJDK_JAR} ${SERVLET_JAR} ${VELOCITY_JAR} ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${LDAPJDK_JAR} ${SERVLET_JAR} ${VELOCITY_JAR} ${XALAN_JAR}
947023
         ${JSS_JAR} ${COMMONS_CODEC_JAR} ${SYMKEY_JAR}
947023
         ${HAMCREST_JAR} ${JUNIT_JAR}
947023
         ${CMAKE_BINARY_DIR}/test/classes
947023
diff --git a/base/test/src/CMakeLists.txt b/base/test/src/CMakeLists.txt
947023
index 24e72aa..4a8355a 100644
947023
--- a/base/test/src/CMakeLists.txt
947023
+++ b/base/test/src/CMakeLists.txt
947023
@@ -6,7 +6,7 @@ javac(pki-test-classes
947023
     SOURCES
947023
         *.java
947023
     CLASSPATH
947023
-        ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${XALAN_JAR}
947023
         ${HAMCREST_JAR} ${JUNIT_JAR}
947023
     OUTPUT_DIR
947023
         ${CMAKE_BINARY_DIR}/test/classes
947023
diff --git a/base/tks/shared/conf/jkconfig.manifest b/base/tks/shared/conf/jkconfig.manifest
947023
index 3ba1f2e..5731b47 100644
947023
--- a/base/tks/shared/conf/jkconfig.manifest
947023
+++ b/base/tks/shared/conf/jkconfig.manifest
947023
@@ -1,2 +1,2 @@
947023
 Main-Class: org.apache.jk.config.WebXml2Jk
947023
-Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xercesImpl.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
+Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
diff --git a/base/tps/shared/conf/jkconfig.manifest b/base/tps/shared/conf/jkconfig.manifest
947023
index 3ba1f2e..5731b47 100644
947023
--- a/base/tps/shared/conf/jkconfig.manifest
947023
+++ b/base/tps/shared/conf/jkconfig.manifest
947023
@@ -1,2 +1,2 @@
947023
 Main-Class: org.apache.jk.config.WebXml2Jk
947023
-Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xercesImpl.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
+Class-Path: tomcat-jk2.jar commons-logging.jar crimson.jar xmlApis.jar tomcat-util.jar log4j.jar log4j-core.jar
947023
diff --git a/base/util/src/CMakeLists.txt b/base/util/src/CMakeLists.txt
947023
index a2269b2..883ead0 100644
947023
--- a/base/util/src/CMakeLists.txt
947023
+++ b/base/util/src/CMakeLists.txt
947023
@@ -52,14 +52,6 @@ find_file(XALAN_JAR
947023
         /usr/share/java
947023
 )
947023
 
947023
-find_file(XERCES_JAR
947023
-    NAMES
947023
-        xerces-j2.jar
947023
-    PATHS
947023
-        ${JAVA_LIB_INSTALL_DIR}
947023
-        /usr/share/java
947023
-)
947023
-
947023
 find_file(NUXWDOG_JAR
947023
     NAMES
947023
         nuxwdog.jar
947023
@@ -73,7 +65,7 @@ javac(pki-nsutil-classes
947023
     SOURCES
947023
         netscape/*.java
947023
     CLASSPATH
947023
-        ${APACHE_COMMONS_LANG_JAR} ${LDAPJDK_JAR} ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${APACHE_COMMONS_LANG_JAR} ${LDAPJDK_JAR} ${XALAN_JAR}
947023
         ${JSS_JAR} ${COMMONS_CODEC_JAR}
947023
         ${SLF4J_API_JAR}
947023
     OUTPUT_DIR
947023
@@ -118,7 +110,7 @@ javac(pki-cmsutil-classes
947023
         com/netscape/cmsutil/*.java
947023
     CLASSPATH
947023
         ${APACHE_COMMONS_LANG_JAR} ${HTTPCORE_JAR} ${HTTPCLIENT_JAR}
947023
-        ${LDAPJDK_JAR} ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${LDAPJDK_JAR} ${XALAN_JAR}
947023
         ${JSS_JAR} ${COMMONS_CODEC_JAR} ${NUXWDOG_JAR}
947023
         ${SLF4J_API_JAR}
947023
     OUTPUT_DIR
947023
diff --git a/base/util/test/CMakeLists.txt b/base/util/test/CMakeLists.txt
947023
index cc5c07a..3267c66 100644
947023
--- a/base/util/test/CMakeLists.txt
947023
+++ b/base/util/test/CMakeLists.txt
947023
@@ -7,7 +7,7 @@ javac(pki-util-test-classes
947023
         *.java
947023
     CLASSPATH
947023
         ${PKI_NSUTIL_JAR} ${PKI_CMSUTIL_JAR}
947023
-        ${JSS_JAR} ${LDAPJDK_JAR} ${COMMONS_CODEC_JAR} ${XALAN_JAR} ${XERCES_JAR}
947023
+        ${JSS_JAR} ${LDAPJDK_JAR} ${COMMONS_CODEC_JAR} ${XALAN_JAR}
947023
         ${HAMCREST_JAR} ${JUNIT_JAR}
947023
     OUTPUT_DIR
947023
         ${CMAKE_BINARY_DIR}/test/classes
947023
-- 
947023
1.8.3.1
947023