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

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


The following commit(s) were added to refs/heads/8.5.x by this push:
     new 791da44a5c Add missing strings
791da44a5c is described below

commit 791da44a5c9ed642144bc224f8f591d543c5edf3
Author: remm <r...@apache.org>
AuthorDate: Thu Oct 5 11:15:09 2023 +0200

    Add missing strings
    
    Also cleanups.
---
 .../org/apache/catalina/authenticator/BasicAuthenticator.java |  6 +++---
 .../org/apache/catalina/authenticator/LocalStrings.properties |  3 +++
 java/org/apache/catalina/realm/JNDIRealm.java                 |  4 ++--
 java/org/apache/catalina/realm/LocalStrings.properties        |  1 +
 .../org/apache/coyote/http11/filters/BufferedInputFilter.java |  8 +++++---
 java/org/apache/coyote/http11/filters/ChunkedInputFilter.java |  3 +--
 java/org/apache/coyote/http11/filters/LocalStrings.properties |  3 +++
 java/org/apache/jasper/runtime/PageContextImpl.java           |  2 +-
 java/org/apache/tomcat/util/buf/LocalStrings.properties       |  1 +
 java/org/apache/tomcat/util/buf/UDecoder.java                 |  4 ++--
 .../tomcat/util/net/openssl/ciphers/LocalStrings.properties   |  1 +
 java/org/apache/tomcat/util/threads/LocalStrings.properties   |  2 ++
 java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java   | 11 +++++------
 java/org/apache/tomcat/websocket/DigestAuthenticator.java     |  5 ++++-
 java/org/apache/tomcat/websocket/LocalStrings.properties      |  2 ++
 .../org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java |  5 -----
 16 files changed, 36 insertions(+), 25 deletions(-)

diff --git a/java/org/apache/catalina/authenticator/BasicAuthenticator.java 
b/java/org/apache/catalina/authenticator/BasicAuthenticator.java
index eb9e4dbc20..acdf084051 100644
--- a/java/org/apache/catalina/authenticator/BasicAuthenticator.java
+++ b/java/org/apache/catalina/authenticator/BasicAuthenticator.java
@@ -100,7 +100,7 @@ public class BasicAuthenticator extends AuthenticatorBase {
                 }
             } catch (IllegalArgumentException iae) {
                 if (log.isDebugEnabled()) {
-                    log.debug("Invalid Authorization" + iae.getMessage());
+                    
log.debug(sm.getString("basicAuthenticator.invalidAuthorization", 
iae.getMessage()));
                 }
             }
         }
@@ -221,7 +221,7 @@ public class BasicAuthenticator extends AuthenticatorBase {
                 base64blobLength = authorization.getLength() - METHOD.length();
             } else {
                 // is this possible, or permitted?
-                throw new IllegalArgumentException("Authorization header 
method is not \"Basic\"");
+                throw new 
IllegalArgumentException(sm.getString("basicAuthenticator.notBasic"));
             }
         }
 
@@ -235,7 +235,7 @@ public class BasicAuthenticator extends AuthenticatorBase {
             // restore original offset
             authorization.setOffset(initialOffset);
             if (decoded == null) {
-                throw new IllegalArgumentException("Basic Authorization 
credentials are not Base64");
+                throw new 
IllegalArgumentException(sm.getString("basicAuthenticator.notBase64"));
             }
             return decoded;
         }
diff --git a/java/org/apache/catalina/authenticator/LocalStrings.properties 
b/java/org/apache/catalina/authenticator/LocalStrings.properties
index 4be5aff94f..d66d2f2492 100644
--- a/java/org/apache/catalina/authenticator/LocalStrings.properties
+++ b/java/org/apache/catalina/authenticator/LocalStrings.properties
@@ -32,7 +32,10 @@ authenticator.sessionExpired=The time allowed for the login 
process has been exc
 authenticator.tomcatPrincipalLogoutFail=Logout with TomcatPrincipal instance 
has failed
 authenticator.unauthorized=Cannot authenticate with the provided credentials
 
+basicAuthenticator.invalidAuthorization=Invalid Authorization: [{0}]
 basicAuthenticator.invalidCharset=The only permitted values are null, the 
empty string or UTF-8
+basicAuthenticator.notBase64=Basic Authorization credentials are not Base64
+basicAuthenticator.notBasic=Authorization header method is not ''Basic''
 
 digestAuthenticator.cacheRemove=A valid entry has been removed from client 
nonce cache to make room for new entries. A replay attack is now possible. To 
prevent the possibility of replay attacks, reduce nonceValidity or increase 
nonceCacheSize. Further warnings of this type will be suppressed for 5 minutes.
 digestAuthenticator.invalidAlgorithm=Unable to configure DIGEST authentication 
to use the algorithm [{0}] as it is not permitted by RFC 7616.
diff --git a/java/org/apache/catalina/realm/JNDIRealm.java 
b/java/org/apache/catalina/realm/JNDIRealm.java
index 52cb739c8b..4ac8bceace 100644
--- a/java/org/apache/catalina/realm/JNDIRealm.java
+++ b/java/org/apache/catalina/realm/JNDIRealm.java
@@ -2943,11 +2943,11 @@ public class JNDIRealm extends RealmBase {
                 String pathComponent = userNameUri.getPath();
                 // Should not ever have an empty path component, since that is 
/{DN}
                 if (pathComponent.length() < 1) {
-                    throw new InvalidNameException("Search returned 
unparseable absolute name: " + resultName);
+                    throw new 
InvalidNameException(sm.getString("jndiRealm.invalidName", resultName));
                 }
                 name = parser.parse(pathComponent.substring(1));
             } catch (URISyntaxException e) {
-                throw new InvalidNameException("Search returned unparseable 
absolute name: " + resultName);
+                throw new 
InvalidNameException(sm.getString("jndiRealm.invalidName", resultName));
             }
         }
 
diff --git a/java/org/apache/catalina/realm/LocalStrings.properties 
b/java/org/apache/catalina/realm/LocalStrings.properties
index 7ac439ff9d..aeb49cde38 100644
--- a/java/org/apache/catalina/realm/LocalStrings.properties
+++ b/java/org/apache/catalina/realm/LocalStrings.properties
@@ -77,6 +77,7 @@ jndiRealm.emptyCipherSuites=Empty String for cipher suites 
given. Using default
 jndiRealm.exception=Exception performing authentication
 jndiRealm.exception.retry=Exception performing authentication. Retrying...
 jndiRealm.invalidHostnameVerifier=[{0}] not a valid class name for a 
HostnameVerifier
+jndiRealm.invalidName=Search returned unparsable absolute name: [{0}]
 jndiRealm.invalidSslProtocol=Given protocol [{0}] is invalid. It has to be one 
of [{1}]
 jndiRealm.invalidSslSocketFactory=[{0}] not a valid class name for an 
SSLSocketFactory
 jndiRealm.multipleEntries=User name [{0}] has multiple entries
diff --git a/java/org/apache/coyote/http11/filters/BufferedInputFilter.java 
b/java/org/apache/coyote/http11/filters/BufferedInputFilter.java
index 2f6a1ae76b..9e78cb70ab 100644
--- a/java/org/apache/coyote/http11/filters/BufferedInputFilter.java
+++ b/java/org/apache/coyote/http11/filters/BufferedInputFilter.java
@@ -26,6 +26,7 @@ import org.apache.coyote.Request;
 import org.apache.coyote.http11.InputFilter;
 import org.apache.tomcat.util.buf.ByteChunk;
 import org.apache.tomcat.util.net.ApplicationBufferHandler;
+import org.apache.tomcat.util.res.StringManager;
 
 /**
  * Input filter responsible for reading and buffering the request body, so that
@@ -33,6 +34,8 @@ import org.apache.tomcat.util.net.ApplicationBufferHandler;
  */
 public class BufferedInputFilter implements InputFilter, 
ApplicationBufferHandler {
 
+    private static final StringManager sm = 
StringManager.getManager(BufferedInputFilter.class);
+
     private static final String ENCODING_NAME = "buffered";
     private static final ByteChunk ENCODING = new ByteChunk();
 
@@ -91,7 +94,7 @@ public class BufferedInputFilter implements InputFilter, 
ApplicationBufferHandle
                     swallowed += read;
                     if (maxSwallowSize > -1 && swallowed > maxSwallowSize) {
                         // No need for i18n - this isn't going to get logged
-                        throw new IOException("Ignored body exceeded 
maxSwallowSize");
+                        throw new 
IOException(sm.getString("bufferedInputFilter.maxSwallowSize"));
                     }
                 }
             } else {
@@ -102,8 +105,7 @@ public class BufferedInputFilter implements InputFilter, 
ApplicationBufferHandle
             }
         } catch(IOException | BufferOverflowException ioe) {
             // No need for i18n - this isn't going to get logged anywhere
-            throw new IllegalStateException(
-                    "Request body too large for buffer");
+            throw new 
IllegalStateException(sm.getString("bufferedInputFilter.bodySize", 
ioe.getMessage()));
         }
     }
 
diff --git a/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java 
b/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java
index c8349923cb..d19b4eaa13 100644
--- a/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java
+++ b/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java
@@ -42,8 +42,7 @@ import org.apache.tomcat.util.res.StringManager;
  */
 public class ChunkedInputFilter implements InputFilter, 
ApplicationBufferHandler {
 
-    private static final StringManager sm = StringManager.getManager(
-            ChunkedInputFilter.class.getPackage().getName());
+    private static final StringManager sm = 
StringManager.getManager(ChunkedInputFilter.class);
 
 
     // -------------------------------------------------------------- Constants
diff --git a/java/org/apache/coyote/http11/filters/LocalStrings.properties 
b/java/org/apache/coyote/http11/filters/LocalStrings.properties
index c0dc9d1b10..72dc788bc5 100644
--- a/java/org/apache/coyote/http11/filters/LocalStrings.properties
+++ b/java/org/apache/coyote/http11/filters/LocalStrings.properties
@@ -13,6 +13,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+bufferedInputFilter.bodySize=Request body too large for buffer: [{0}]
+bufferedInputFilter.maxSwallowSize=Ignored body exceeded maxSwallowSize
+
 chunkedInputFilter.eos=Unexpected end of stream while reading request body
 chunkedInputFilter.eosTrailer=Unexpected end of stream while reading trailer 
headers
 chunkedInputFilter.error=No data available due to previous error
diff --git a/java/org/apache/jasper/runtime/PageContextImpl.java 
b/java/org/apache/jasper/runtime/PageContextImpl.java
index 0c57f853af..fa142f2d20 100644
--- a/java/org/apache/jasper/runtime/PageContextImpl.java
+++ b/java/org/apache/jasper/runtime/PageContextImpl.java
@@ -338,7 +338,7 @@ public class PageContextImpl extends PageContext {
                 break;
 
             default:
-                throw new IllegalArgumentException("Invalid scope");
+                throw new 
IllegalArgumentException(Localizer.getMessage("jsp.error.page.invalid.scope"));
             }
         } else {
             removeAttribute(name, scope);
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings.properties 
b/java/org/apache/tomcat/util/buf/LocalStrings.properties
index 52e8efd906..97337c3260 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings.properties
@@ -30,6 +30,7 @@ hexUtils.fromHex.oddDigits=The input must consist of an even 
number of hex digit
 messageBytes.illegalCharacter=The Unicode character [{0}] at code point [{1}] 
cannot be encoded as it is outside the permitted range of 0 to 255
 
 uDecoder.eof=End of file (EOF)
+uDecoder.isHexDigit=The hexadecimal encoding is invalid
 uDecoder.noSlash=The encoded slash character is not allowed
 uDecoder.urlDecode.conversionError=Failed to decode [{0}] using character set 
[{1}]
 uDecoder.urlDecode.iae=It is practical to %nn decode a byte array since how 
the %nn is encoded will vary by character set
diff --git a/java/org/apache/tomcat/util/buf/UDecoder.java 
b/java/org/apache/tomcat/util/buf/UDecoder.java
index 1c46a6f566..79ec992c75 100644
--- a/java/org/apache/tomcat/util/buf/UDecoder.java
+++ b/java/org/apache/tomcat/util/buf/UDecoder.java
@@ -62,10 +62,10 @@ public final class UDecoder {
     private static final IOException EXCEPTION_EOF = new 
DecodeException(sm.getString("uDecoder.eof"));
 
     /** %xx with not-hex digit */
-    private static final IOException EXCEPTION_NOT_HEX_DIGIT = new 
DecodeException("isHexDigit");
+    private static final IOException EXCEPTION_NOT_HEX_DIGIT = new 
DecodeException(sm.getString("uDecoder.isHexDigit"));
 
     /** %-encoded slash is forbidden in resource path */
-    private static final IOException EXCEPTION_SLASH = new 
DecodeException("noSlash");
+    private static final IOException EXCEPTION_SLASH = new 
DecodeException(sm.getString("uDecoder.noSlash"));
 
 
     /**
diff --git 
a/java/org/apache/tomcat/util/net/openssl/ciphers/LocalStrings.properties 
b/java/org/apache/tomcat/util/net/openssl/ciphers/LocalStrings.properties
index 7de7e453ad..27c7e49d52 100644
--- a/java/org/apache/tomcat/util/net/openssl/ciphers/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/net/openssl/ciphers/LocalStrings.properties
@@ -15,3 +15,4 @@
 
 opensslCipherConfigurationParser.effectiveCiphers=Ciphers used: [{0}]
 opensslCipherConfigurationParser.unknownElement=Unknown element in cipher 
string: [{0}]
+opensslCipherConfigurationParser.unknownProfile=Cannot use OpenSSL to resolve 
profile [{0}], it will be passed along as the cipher suite
diff --git a/java/org/apache/tomcat/util/threads/LocalStrings.properties 
b/java/org/apache/tomcat/util/threads/LocalStrings.properties
index 312449119d..4b28c96f84 100644
--- a/java/org/apache/tomcat/util/threads/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/threads/LocalStrings.properties
@@ -15,5 +15,7 @@
 
 taskQueue.notRunning=Executor not running, can't force a command into the queue
 
+threadPoolExecutor.invalidKeepAlive=Core threads must have positive keep alive 
times
 threadPoolExecutor.queueFull=Queue capacity is full
+threadPoolExecutor.taskRejected=Task [{0}] rejected from [{1}]
 threadPoolExecutor.threadStoppedToAvoidPotentialLeak=Stopping thread [{0}] to 
avoid potential memory leaks after a context was stopped.
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java 
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index 7ea4c91ad7..6f6f381578 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -1762,7 +1762,7 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
      */
     public void allowCoreThreadTimeOut(boolean value) {
         if (value && keepAliveTime <= 0) {
-            throw new IllegalArgumentException("Core threads must have nonzero 
keep alive times");
+            throw new 
IllegalArgumentException(sm.getString("threadPoolExecutor.invalidKeepAlive"));
         }
         if (value != allowCoreThreadTimeOut) {
             allowCoreThreadTimeOut = value;
@@ -1822,10 +1822,10 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
      */
     public void setKeepAliveTime(long time, TimeUnit unit) {
         if (time < 0) {
-            throw new IllegalArgumentException();
+            throw new 
IllegalArgumentException(sm.getString("threadPoolExecutor.invalidKeepAlive"));
         }
         if (time == 0 && allowsCoreThreadTimeOut()) {
-            throw new IllegalArgumentException("Core threads must have nonzero 
keep alive times");
+            throw new 
IllegalArgumentException(sm.getString("threadPoolExecutor.invalidKeepAlive"));
         }
         long keepAliveTime = unit.toNanos(time);
         long delta = keepAliveTime - this.keepAliveTime;
@@ -2290,9 +2290,8 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
          */
         @Override
         public void rejectedExecution(Runnable r, ThreadPoolExecutor e) {
-            throw new RejectedExecutionException("Task " + r.toString() +
-                                                 " rejected from " +
-                                                 e.toString());
+            throw new RejectedExecutionException(
+                    sm.getString("threadPoolExecutor.taskRejected", 
r.toString(), e.toString()));
         }
     }
 
diff --git a/java/org/apache/tomcat/websocket/DigestAuthenticator.java 
b/java/org/apache/tomcat/websocket/DigestAuthenticator.java
index 54d8aa579d..dd67f3faed 100644
--- a/java/org/apache/tomcat/websocket/DigestAuthenticator.java
+++ b/java/org/apache/tomcat/websocket/DigestAuthenticator.java
@@ -23,12 +23,15 @@ import java.security.SecureRandom;
 import java.util.Map;
 
 import org.apache.tomcat.util.buf.HexUtils;
+import org.apache.tomcat.util.res.StringManager;
 
 /**
  * Authenticator supporting the DIGEST authentication method.
  */
 public class DigestAuthenticator extends Authenticator {
 
+    private static final StringManager sm = 
StringManager.getManager(DigestAuthenticator.class);
+
     public static final String schemeName = "digest";
     private static final Object cnonceGeneratorLock = new Object();
     private static volatile SecureRandom cnonceGenerator;
@@ -80,7 +83,7 @@ public class DigestAuthenticator extends Authenticator {
         }
 
         catch (NoSuchAlgorithmException e) {
-            throw new AuthenticationException("Unable to generate request 
digest " + e.getMessage());
+            throw new 
AuthenticationException(sm.getString("digestAuthenticator.algorithm", 
e.getMessage()));
         }
 
         challenge.append("algorithm=" + algorithm + ",");
diff --git a/java/org/apache/tomcat/websocket/LocalStrings.properties 
b/java/org/apache/tomcat/websocket/LocalStrings.properties
index e7123980b0..47af443304 100644
--- a/java/org/apache/tomcat/websocket/LocalStrings.properties
+++ b/java/org/apache/tomcat/websocket/LocalStrings.properties
@@ -40,6 +40,8 @@ caseInsensitiveKeyMap.nullKey=Null keys are not permitted
 clientEndpointHolder.instanceCreationFailed=Failed to create WebSocketEndpoint
 clientEndpointHolder.instanceRegistrationFailed=Failed to register Endpoint 
instance with the InstanceManager
 
+digestAuthenticator.algorithm=Unable to generate request digest [{0}]
+
 futureToSendHandler.timeout=Operation timed out after waiting [{0}] [{1}] to 
complete
 
 perMessageDeflate.alreadyClosed=The transformer has been closed and may no 
longer be used
diff --git a/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java 
b/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
index e605105013..b8031526d0 100644
--- a/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
+++ b/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
@@ -1231,11 +1231,6 @@ public abstract class WsRemoteEndpointImplBase 
implements RemoteEndpoint {
                     // NO-OP. Leave state as is.
                 } else if (state == State.STREAM_WRITING) {
                     // NO-OP. Leave state as is.
-                } else {
-                    // Should never happen
-                    // The if ... else ... blocks above should cover all states
-                    // permitted by the preceding checkState() call
-                    throw new IllegalStateException("BUG: This code should 
never be called");
                 }
             }
         }


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

Reply via email to