Author: markt Date: Mon Dec 11 17:47:03 2017 New Revision: 1817800 URL: http://svn.apache.org/viewvc?rev=1817800&view=rev Log: Pre-load additional classes to prevent SecurityExceptions if the first request received when running under a security manager is an asynchronous servlet.
Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/security/SecurityClassLoad.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/security/SecurityClassLoad.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/security/SecurityClassLoad.java?rev=1817800&r1=1817799&r2=1817800&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/security/SecurityClassLoad.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/security/SecurityClassLoad.java Mon Dec 11 17:47:03 2017 @@ -163,6 +163,10 @@ public final class SecurityClassLoad { private static final void loadCoyotePackage(ClassLoader loader) throws Exception { final String basePackage = "org.apache.coyote."; + // Classes created by the Java 6 compiler because we use switch with an enum + loader.loadClass(basePackage + "http11.Http11Processor$1"); + loader.loadClass(basePackage + "http11.Http11NioProcessor$1"); + loader.loadClass(basePackage + "http11.Http11AprProcessor$1"); loader.loadClass(basePackage + "http11.AbstractOutputBuffer$1"); loader.loadClass(basePackage + "http11.Constants"); // Make sure system property is read at this point @@ -292,6 +296,7 @@ public final class SecurityClassLoad { "util.net.NioBlockingSelector$BlockPoller$2"); loader.loadClass(basePackage + "util.net.NioBlockingSelector$BlockPoller$3"); + loader.loadClass(basePackage + "util.net.SendfileState"); loader.loadClass(basePackage + "util.net.SSLSupport$CipherData"); // security loader.loadClass(basePackage + "util.security.PrivilegedGetTccl"); Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1817800&r1=1817799&r2=1817800&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Mon Dec 11 17:47:03 2017 @@ -58,6 +58,15 @@ issues do not "pop up" wrt. others). --> <section name="Tomcat 7.0.84 (violetagg)"> + <subsection name="Catalina"> + <changelog> + <fix> + Pre-load additional classes to prevent <code>SecurityException</code>s + if the first request received when running under a + <code>SecurityManager</code> is an asynchronous Servlet. (markt) + </fix> + </changelog> + </subsection> <subsection name="Web applications"> <changelog> <add> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org