This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit dde2b9d4e6feaea80687b7e5d4996efa27193c14
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Tue Oct 22 08:17:50 2024 +0100

    Case conversion should always specify a Locale
---
 java/org/apache/jasper/EmbeddedServletOptions.java         | 3 ++-
 java/org/apache/tomcat/buildutil/CheckEol.java             | 3 ++-
 java/org/apache/tomcat/websocket/AuthenticatorFactory.java | 3 ++-
 java/org/apache/tomcat/websocket/DigestAuthenticator.java  | 3 ++-
 java/org/apache/tomcat/websocket/FutureToSendHandler.java  | 5 +++--
 java/org/apache/tomcat/websocket/WsWebSocketContainer.java | 2 +-
 webapps/docs/rewrite.xml                                   | 2 +-
 7 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/java/org/apache/jasper/EmbeddedServletOptions.java 
b/java/org/apache/jasper/EmbeddedServletOptions.java
index 814a21b92d..f0ac9fb79c 100644
--- a/java/org/apache/jasper/EmbeddedServletOptions.java
+++ b/java/org/apache/jasper/EmbeddedServletOptions.java
@@ -18,6 +18,7 @@ package org.apache.jasper;
 
 import java.io.File;
 import java.util.Enumeration;
+import java.util.Locale;
 import java.util.Map;
 import java.util.Properties;
 
@@ -430,7 +431,7 @@ public final class EmbeddedServletOptions implements 
Options {
         String trimsp = config.getInitParameter("trimSpaces");
         if (trimsp != null) {
             try {
-                trimSpaces = TrimSpacesOption.valueOf(trimsp.toUpperCase());
+                trimSpaces = 
TrimSpacesOption.valueOf(trimsp.toUpperCase(Locale.ENGLISH));
             } catch (IllegalArgumentException iae) {
                 if (log.isWarnEnabled()) {
                     log.warn(Localizer.getMessage("jsp.warning.trimspaces"), 
iae);
diff --git a/java/org/apache/tomcat/buildutil/CheckEol.java 
b/java/org/apache/tomcat/buildutil/CheckEol.java
index 96dd39fe7d..4021d337f2 100644
--- a/java/org/apache/tomcat/buildutil/CheckEol.java
+++ b/java/org/apache/tomcat/buildutil/CheckEol.java
@@ -22,6 +22,7 @@ import java.io.FileInputStream;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Locale;
 
 import org.apache.tools.ant.BuildException;
 import org.apache.tools.ant.DirectoryScanner;
@@ -61,7 +62,7 @@ public class CheckEol extends Task {
      * @param mode The line ending mode (either LF or CRLF)
      */
     public void setMode( String mode ) {
-        this.mode = Mode.valueOf( mode.toUpperCase() );
+        this.mode = Mode.valueOf( mode.toUpperCase(Locale.ENGLISH) );
     }
 
     private Mode getMode() {
diff --git a/java/org/apache/tomcat/websocket/AuthenticatorFactory.java 
b/java/org/apache/tomcat/websocket/AuthenticatorFactory.java
index 9718db43a0..aaac7d6caf 100644
--- a/java/org/apache/tomcat/websocket/AuthenticatorFactory.java
+++ b/java/org/apache/tomcat/websocket/AuthenticatorFactory.java
@@ -16,6 +16,7 @@
  */
 package org.apache.tomcat.websocket;
 
+import java.util.Locale;
 import java.util.ServiceLoader;
 
 /**
@@ -33,7 +34,7 @@ public class AuthenticatorFactory {
     public static Authenticator getAuthenticator(String authScheme) {
 
         Authenticator auth = null;
-        switch (authScheme.toLowerCase()) {
+        switch (authScheme.toLowerCase(Locale.ENGLISH)) {
 
             case BasicAuthenticator.schemeName:
                 auth = new BasicAuthenticator();
diff --git a/java/org/apache/tomcat/websocket/DigestAuthenticator.java 
b/java/org/apache/tomcat/websocket/DigestAuthenticator.java
index dd67f3faed..76a9c89b40 100644
--- a/java/org/apache/tomcat/websocket/DigestAuthenticator.java
+++ b/java/org/apache/tomcat/websocket/DigestAuthenticator.java
@@ -20,6 +20,7 @@ import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
 import java.security.SecureRandom;
+import java.util.Locale;
 import java.util.Map;
 
 import org.apache.tomcat.util.buf.HexUtils;
@@ -127,7 +128,7 @@ public class DigestAuthenticator extends Authenticator {
         preDigest.append(':');
         preDigest.append(nonce);
 
-        if (qop.toLowerCase().contains("auth")) {
+        if (qop.toLowerCase(Locale.ENGLISH).contains("auth")) {
             preDigest.append(':');
             preDigest.append(String.format("%08X", 
Integer.valueOf(nonceCount)));
             preDigest.append(':');
diff --git a/java/org/apache/tomcat/websocket/FutureToSendHandler.java 
b/java/org/apache/tomcat/websocket/FutureToSendHandler.java
index 4b3ba0b240..4cedaa109e 100644
--- a/java/org/apache/tomcat/websocket/FutureToSendHandler.java
+++ b/java/org/apache/tomcat/websocket/FutureToSendHandler.java
@@ -16,6 +16,7 @@
  */
 package org.apache.tomcat.websocket;
 
+import java.util.Locale;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Future;
@@ -98,8 +99,8 @@ class FutureToSendHandler implements Future<Void>, 
SendHandler {
 
         }
         if (retval == false) {
-            throw new TimeoutException(
-                    sm.getString("futureToSendHandler.timeout", 
Long.valueOf(timeout), unit.toString().toLowerCase()));
+            throw new 
TimeoutException(sm.getString("futureToSendHandler.timeout", 
Long.valueOf(timeout),
+                    unit.toString().toLowerCase(Locale.ENGLISH)));
         }
         if (result.get().getException() != null) {
             throw new ExecutionException(result.get().getException());
diff --git a/java/org/apache/tomcat/websocket/WsWebSocketContainer.java 
b/java/org/apache/tomcat/websocket/WsWebSocketContainer.java
index 23211dbf82..6feecad9d8 100644
--- a/java/org/apache/tomcat/websocket/WsWebSocketContainer.java
+++ b/java/org/apache/tomcat/websocket/WsWebSocketContainer.java
@@ -357,7 +357,7 @@ public class WsWebSocketContainer implements 
WebSocketContainer, BackgroundProce
                         redirectLocation = path.resolve(redirectLocation);
                     }
 
-                    String redirectScheme = 
redirectLocation.getScheme().toLowerCase();
+                    String redirectScheme = 
redirectLocation.getScheme().toLowerCase(Locale.ENGLISH);
 
                     if (redirectScheme.startsWith("http")) {
                         redirectLocation = new 
URI(redirectScheme.replace("http", "ws"), redirectLocation.getUserInfo(),
diff --git a/webapps/docs/rewrite.xml b/webapps/docs/rewrite.xml
index 14d7908384..f153f9d018 100644
--- a/webapps/docs/rewrite.xml
+++ b/webapps/docs/rewrite.xml
@@ -457,7 +457,7 @@ public class UpperCaseMap implements RewriteMap {
     if (key == null) {
       return null;
     }
-    return key.toUpperCase();
+    return key.toUpperCase(Locale.ENGLISH);
   }
 
 }]]></source>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to