This is an automated email from the ASF dual-hosted git repository.
markt-asf pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new e4ab32c2b1 Fix back-port (record not available in Java 11)
e4ab32c2b1 is described below
commit e4ab32c2b1bdfccfad5fa11cc02c8136fdf2f6ad
Author: Mark Thomas <[email protected]>
AuthorDate: Thu Sep 3 18:08:34 2026 +0100
Fix back-port (record not available in Java 11)
---
.../catalina/authenticator/AuthenticatorBase.java | 30 ++++++++++++++++------
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
index 337db84590..de087cfadf 100644
--- a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
+++ b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
@@ -607,13 +607,13 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
authenticated = authenticationResult.getAuthenticated();
} else {
- if (jaspicContextState.serverAuthConfig() == null) {
+ if (jaspicContextState.serverAuthConfig == null) {
// JASPIC is configured but didn't initialise correctly
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
return;
}
jaspicRequestState = getJaspicRequestState(
- jaspicContextState.serverAuthConfig(), request,
response, hasAuthConstraint);
+ jaspicContextState.serverAuthConfig, request,
response, hasAuthConstraint);
if (jaspicRequestState == null) {
// getJaspicRequestState() sets the HTTP status code
return;
@@ -769,13 +769,13 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
return doAuthenticateExtended(request,
httpResponse).getAuthenticated();
} else {
Response response = request.getResponse();
- if (jaspicContextState.serverAuthConfig() == null) {
+ if (jaspicContextState.serverAuthConfig == null) {
// JASPIC is configured but didn't initialise correctly
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
return false;
}
JaspicRequestState jaspicRequestState =
-
getJaspicRequestState(jaspicContextState.serverAuthConfig(), request, response,
true);
+ getJaspicRequestState(jaspicContextState.serverAuthConfig,
request, response, true);
if (jaspicRequestState == null) {
// getJaspicRequestState() sets the HTTP status code
return false;
@@ -1315,7 +1315,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
MessageInfo messageInfo = new MessageInfoImpl(request,
request.getResponse(), true);
Subject client = (Subject)
request.getNote(Constants.REQ_JASPIC_SUBJECT_NOTE);
if (client != null) {
- ServerAuthConfig serverAuthConfig =
jaspicContextState.serverAuthConfig();
+ ServerAuthConfig serverAuthConfig =
jaspicContextState.serverAuthConfig;
if (serverAuthConfig == null) {
log.debug(sm.getString("authenticator.jaspicCleanSubjectFail"));
} else {
@@ -1453,7 +1453,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
if (result.serverAuthConfig == null) {
jaspicContextState = Optional.of(new JaspicContextState(
- result.authConfigProvider(),
createServerAuthConfig(result.authConfigProvider())));
+ result.authConfigProvider,
createServerAuthConfig(result.authConfigProvider)));
}
}
return jaspicContextState.orElse(null);
@@ -1503,11 +1503,25 @@ public abstract class AuthenticatorBase extends
ValveBase implements Authenticat
}
- private record JaspicContextState(AuthConfigProvider authConfigProvider,
ServerAuthConfig serverAuthConfig) {
+ private class JaspicContextState {
+ private final AuthConfigProvider authConfigProvider;
+ private final ServerAuthConfig serverAuthConfig;
+
+ JaspicContextState(AuthConfigProvider authConfigProvider,
ServerAuthConfig serverAuthConfig) {
+ this.authConfigProvider = authConfigProvider;
+ this.serverAuthConfig = serverAuthConfig;
+ }
}
- private record JaspicRequestState(MessageInfo messageInfo,
ServerAuthContext serverAuthContext) {
+ private class JaspicRequestState {
+ private final MessageInfo messageInfo;
+ private final ServerAuthContext serverAuthContext;
+
+ JaspicRequestState(MessageInfo messageInfo, ServerAuthContext
serverAuthContext) {
+ this.messageInfo = messageInfo;
+ this.serverAuthContext = serverAuthContext;
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]