This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat-tck.git
commit 25b4974f095a43db733aaa9cc83feb8ba0548209 Author: Mark Thomas <ma...@apache.org> AuthorDate: Fri Mar 29 16:37:42 2024 +0000 Tabs to 4 spaces --- .../tck/servlet/TomcatServletTckConfiguration.java | 178 ++++++++++----------- .../websocket/TomcatWebSocketTckConfiguration.java | 60 +++---- 2 files changed, 119 insertions(+), 119 deletions(-) diff --git a/servlet-tck/src/test/java/org/apache/tomcat/tck/servlet/TomcatServletTckConfiguration.java b/servlet-tck/src/test/java/org/apache/tomcat/tck/servlet/TomcatServletTckConfiguration.java index f682bef..43e2c1a 100644 --- a/servlet-tck/src/test/java/org/apache/tomcat/tck/servlet/TomcatServletTckConfiguration.java +++ b/servlet-tck/src/test/java/org/apache/tomcat/tck/servlet/TomcatServletTckConfiguration.java @@ -57,77 +57,77 @@ public class TomcatServletTckConfiguration implements LoadableExtension { public void configureTomcat(@Observes final AfterStart afterStart) { Tomcat10EmbeddedContainer container = (Tomcat10EmbeddedContainer) afterStart.getDeployableContainer(); try { - // Obtain reference to Tomcat instance + // Obtain reference to Tomcat instance Field tomcatField = Tomcat10EmbeddedContainer.class.getDeclaredField("tomcat"); tomcatField.setAccessible(true); Tomcat tomcat = (Tomcat) tomcatField.get(container); Connector connectorHttp = tomcat.getConnector(); int localPort; - if ("https".equals(System.getProperty("arquillian.launch"))) { - // Need to enabled HTTPS - only used for client-cert tests - Connector connectorHttps = new Connector(); - connectorHttps.setPort(0); - connectorHttps.setSecure(true); - connectorHttps.setProperty("SSLEnabled", "true"); - - SSLHostConfig sslHostConfig = new SSLHostConfig(); - SSLHostConfigCertificate certificateConfig = new SSLHostConfigCertificate(sslHostConfig, Type.UNDEFINED); - sslHostConfig.addCertificate(certificateConfig); - connectorHttps.addSslHostConfig(sslHostConfig); - - // Can't use TLSv1.3 else certificate authentication won't work - sslHostConfig.setSslProtocol("TLS"); - sslHostConfig.setProtocols("TLSv1.2"); - - // Server trust store needs to contain server root and client certificate - KeyStore trustStore = KeyStore.getInstance("JKS"); - trustStore.load(null, null); - importKeyStore("/ca.jks", trustStore); - importKeyStore("/certificates/clientcert.jks", trustStore); - sslHostConfig.setTrustStore(trustStore); - - // Server certificate - certificateConfig.setCertificateKeystoreFile( - this.getClass().getResource("/localhost-rsa.jks").toExternalForm()); - - tomcat.getService().addConnector(connectorHttps); - localPort = connectorHttps.getLocalPort(); - - // Configure the client - // Copy the client certificate from the TCK JAR - File clientCertCopy = new File("target/clientcert.jks"); - if (!clientCertCopy.exists()) { - try (InputStream clientCertInputStream = - this.getClass().getResourceAsStream("/certificates/clientcert.jks"); - OutputStream clientCertOutputStream = new FileOutputStream(clientCertCopy) - ) { - IOTools.flow(clientCertInputStream, clientCertOutputStream); - } - } - System.setProperty("javax.net.ssl.keyStore", clientCertCopy.getAbsolutePath()); - System.setProperty("javax.net.ssl.keyStorePassword", "changeit"); - URL trustStoreUrl = this.getClass().getResource("/ca.jks"); - System.setProperty("javax.net.ssl.trustStore", trustStoreUrl.getFile()); - - // Create the user - tomcat.addUser("CN=CTS, OU=Java Software, O=Sun Microsystems Inc., L=Burlington, ST=MA, C=US", "must-be-non-null"); - tomcat.addRole("CN=CTS, OU=Java Software, O=Sun Microsystems Inc., L=Burlington, ST=MA, C=US", "Administrator"); - } else { - // HTTP used for all tests apart from CLIENT-CERT - - // Add trailer headers used in TCK to allow list - connectorHttp.setProperty("allowedTrailerHeaders", "myTrailer,myTrailer2"); - localPort = connectorHttp.getLocalPort(); - - // Add expected users - tomcat.addUser("j2ee", "j2ee"); - tomcat.addRole("j2ee", "Administrator"); - tomcat.addRole("j2ee", "Employee"); - tomcat.addUser("javajoe", "javajoe"); - tomcat.addRole("javajoe", "VP"); - tomcat.addRole("javajoe", "Manager"); - } + if ("https".equals(System.getProperty("arquillian.launch"))) { + // Need to enabled HTTPS - only used for client-cert tests + Connector connectorHttps = new Connector(); + connectorHttps.setPort(0); + connectorHttps.setSecure(true); + connectorHttps.setProperty("SSLEnabled", "true"); + + SSLHostConfig sslHostConfig = new SSLHostConfig(); + SSLHostConfigCertificate certificateConfig = new SSLHostConfigCertificate(sslHostConfig, Type.UNDEFINED); + sslHostConfig.addCertificate(certificateConfig); + connectorHttps.addSslHostConfig(sslHostConfig); + + // Can't use TLSv1.3 else certificate authentication won't work + sslHostConfig.setSslProtocol("TLS"); + sslHostConfig.setProtocols("TLSv1.2"); + + // Server trust store needs to contain server root and client certificate + KeyStore trustStore = KeyStore.getInstance("JKS"); + trustStore.load(null, null); + importKeyStore("/ca.jks", trustStore); + importKeyStore("/certificates/clientcert.jks", trustStore); + sslHostConfig.setTrustStore(trustStore); + + // Server certificate + certificateConfig.setCertificateKeystoreFile( + this.getClass().getResource("/localhost-rsa.jks").toExternalForm()); + + tomcat.getService().addConnector(connectorHttps); + localPort = connectorHttps.getLocalPort(); + + // Configure the client + // Copy the client certificate from the TCK JAR + File clientCertCopy = new File("target/clientcert.jks"); + if (!clientCertCopy.exists()) { + try (InputStream clientCertInputStream = + this.getClass().getResourceAsStream("/certificates/clientcert.jks"); + OutputStream clientCertOutputStream = new FileOutputStream(clientCertCopy) + ) { + IOTools.flow(clientCertInputStream, clientCertOutputStream); + } + } + System.setProperty("javax.net.ssl.keyStore", clientCertCopy.getAbsolutePath()); + System.setProperty("javax.net.ssl.keyStorePassword", "changeit"); + URL trustStoreUrl = this.getClass().getResource("/ca.jks"); + System.setProperty("javax.net.ssl.trustStore", trustStoreUrl.getFile()); + + // Create the user + tomcat.addUser("CN=CTS, OU=Java Software, O=Sun Microsystems Inc., L=Burlington, ST=MA, C=US", "must-be-non-null"); + tomcat.addRole("CN=CTS, OU=Java Software, O=Sun Microsystems Inc., L=Burlington, ST=MA, C=US", "Administrator"); + } else { + // HTTP used for all tests apart from CLIENT-CERT + + // Add trailer headers used in TCK to allow list + connectorHttp.setProperty("allowedTrailerHeaders", "myTrailer,myTrailer2"); + localPort = connectorHttp.getLocalPort(); + + // Add expected users + tomcat.addUser("j2ee", "j2ee"); + tomcat.addRole("j2ee", "Administrator"); + tomcat.addRole("j2ee", "Employee"); + tomcat.addUser("javajoe", "javajoe"); + tomcat.addRole("javajoe", "VP"); + tomcat.addRole("javajoe", "Manager"); + } // Update Arquillian configuration with port being used by Tomcat Field configurationField = Tomcat10EmbeddedContainer.class.getDeclaredField("configuration"); @@ -144,14 +144,14 @@ public class TomcatServletTckConfiguration implements LoadableExtension { private void importKeyStore(String resourcePath, KeyStore destination) throws Exception { try (InputStream caInputStream = this.getClass().getResourceAsStream(resourcePath)) { - KeyStore caStore = KeyStore.getInstance("JKS"); - caStore.load(caInputStream, "changeit".toCharArray()); - Enumeration<String> aliases = caStore.aliases(); - while (aliases.hasMoreElements()) { - String alias = aliases.nextElement(); - Certificate certificate = caStore.getCertificate(alias); - destination.setCertificateEntry(alias, certificate); - } + KeyStore caStore = KeyStore.getInstance("JKS"); + caStore.load(caInputStream, "changeit".toCharArray()); + Enumeration<String> aliases = caStore.aliases(); + while (aliases.hasMoreElements()) { + String alias = aliases.nextElement(); + Certificate certificate = caStore.getCertificate(alias); + destination.setCertificateEntry(alias, certificate); + } } } @@ -159,7 +159,7 @@ public class TomcatServletTckConfiguration implements LoadableExtension { public void configureContext(@Observes final AfterDeploy afterDeploy) { Tomcat10EmbeddedContainer container = (Tomcat10EmbeddedContainer) afterDeploy.getDeployableContainer(); try { - // Obtain reference to Tomcat instance + // Obtain reference to Tomcat instance Field tomcatField = Tomcat10EmbeddedContainer.class.getDeclaredField("tomcat"); tomcatField.setAccessible(true); Tomcat tomcat = (Tomcat) tomcatField.get(container); @@ -168,21 +168,21 @@ public class TomcatServletTckConfiguration implements LoadableExtension { Container contexts[] = tomcat.getHost().findChildren(); for (Container context : contexts) { - // Configure expected encoding mapping unless application has defined one explicitly - StandardContext stdContext = (StandardContext) context; - if (stdContext.getCharsetMapper().getCharset(Locale.forLanguageTag("ja")) == null) { - stdContext.addLocaleEncodingMappingParameter("ja", "Shift_JIS"); - } - - // Enable cross-context dispatches - stdContext.setCrossContext(true); - - // Subset of STRICT_SERVLET_COMPLIANCE required by TCK - stdContext.setAlwaysAccessSession(true); - stdContext.setContextGetResourceRequiresSlash(true); - stdContext.setUseRelativeRedirects(false); - stdContext.getManager().setSessionActivityCheck(true); - stdContext.getManager().setSessionLastAccessAtStart(true); + // Configure expected encoding mapping unless application has defined one explicitly + StandardContext stdContext = (StandardContext) context; + if (stdContext.getCharsetMapper().getCharset(Locale.forLanguageTag("ja")) == null) { + stdContext.addLocaleEncodingMappingParameter("ja", "Shift_JIS"); + } + + // Enable cross-context dispatches + stdContext.setCrossContext(true); + + // Subset of STRICT_SERVLET_COMPLIANCE required by TCK + stdContext.setAlwaysAccessSession(true); + stdContext.setContextGetResourceRequiresSlash(true); + stdContext.setUseRelativeRedirects(false); + stdContext.getManager().setSessionActivityCheck(true); + stdContext.getManager().setSessionLastAccessAtStart(true); } } catch (ReflectiveOperationException e) { throw new RuntimeException(e); diff --git a/websocket-tck/src/test/java/org/apache/tomcat/tck/websocket/TomcatWebSocketTckConfiguration.java b/websocket-tck/src/test/java/org/apache/tomcat/tck/websocket/TomcatWebSocketTckConfiguration.java index dabd35b..13de86c 100644 --- a/websocket-tck/src/test/java/org/apache/tomcat/tck/websocket/TomcatWebSocketTckConfiguration.java +++ b/websocket-tck/src/test/java/org/apache/tomcat/tck/websocket/TomcatWebSocketTckConfiguration.java @@ -44,7 +44,7 @@ public class TomcatWebSocketTckConfiguration implements LoadableExtension { public void configureContext(@Observes final BeforeDeploy beforeDeploy) { Tomcat10EmbeddedContainer container = (Tomcat10EmbeddedContainer) beforeDeploy.getDeployableContainer(); try { - // Obtain reference to Tomcat instance + // Obtain reference to Tomcat instance Field tomcatField = Tomcat10EmbeddedContainer.class.getDeclaredField("tomcat"); tomcatField.setAccessible(true); Tomcat tomcat = (Tomcat) tomcatField.get(container); @@ -55,35 +55,35 @@ public class TomcatWebSocketTckConfiguration implements LoadableExtension { tomcat.addUser("j2ee", "j2ee"); tomcat.addRole("j2ee", "staff"); - if ("https".equals(System.getProperty("arquillian.launch"))) { - // Need to enabled HTTPS - only used for client-cert tests - Connector connectorHttps = new Connector(); - connectorHttps.setPort(0); - connectorHttps.setSecure(true); - connectorHttps.setProperty("SSLEnabled", "true"); - - SSLHostConfig sslHostConfig = new SSLHostConfig(); - SSLHostConfigCertificate certificateConfig = new SSLHostConfigCertificate(sslHostConfig, Type.UNDEFINED); - sslHostConfig.addCertificate(certificateConfig); - connectorHttps.addSslHostConfig(sslHostConfig); - - // Can't use TLSv1.3 else certificate authentication won't work - sslHostConfig.setSslProtocol("TLS"); - sslHostConfig.setProtocols("TLSv1.2"); - - // Server certificate - certificateConfig.setCertificateKeystoreFile( - this.getClass().getResource("/localhost-rsa.jks").toExternalForm()); - - tomcat.getService().addConnector(connectorHttps); - localPort = connectorHttps.getLocalPort(); - - // Configure the client - URL trustStoreUrl = this.getClass().getResource("/ca.jks"); - System.setProperty("javax.net.ssl.trustStore", trustStoreUrl.getFile()); - } else { - localPort = connectorHttp.getLocalPort(); - } + if ("https".equals(System.getProperty("arquillian.launch"))) { + // Need to enabled HTTPS - only used for client-cert tests + Connector connectorHttps = new Connector(); + connectorHttps.setPort(0); + connectorHttps.setSecure(true); + connectorHttps.setProperty("SSLEnabled", "true"); + + SSLHostConfig sslHostConfig = new SSLHostConfig(); + SSLHostConfigCertificate certificateConfig = new SSLHostConfigCertificate(sslHostConfig, Type.UNDEFINED); + sslHostConfig.addCertificate(certificateConfig); + connectorHttps.addSslHostConfig(sslHostConfig); + + // Can't use TLSv1.3 else certificate authentication won't work + sslHostConfig.setSslProtocol("TLS"); + sslHostConfig.setProtocols("TLSv1.2"); + + // Server certificate + certificateConfig.setCertificateKeystoreFile( + this.getClass().getResource("/localhost-rsa.jks").toExternalForm()); + + tomcat.getService().addConnector(connectorHttps); + localPort = connectorHttps.getLocalPort(); + + // Configure the client + URL trustStoreUrl = this.getClass().getResource("/ca.jks"); + System.setProperty("javax.net.ssl.trustStore", trustStoreUrl.getFile()); + } else { + localPort = connectorHttp.getLocalPort(); + } // Configure JAR scanner Host host = tomcat.getHost(); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org