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

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

commit 45bdbcd37bf7fd6f22a4b94084894c2bd230741e
Author: Mark Thomas <[email protected]>
AuthorDate: Fri Oct 23 11:21:49 2026 +0100

    Fix backports
---
 .../tribes/group/interceptors/TcpFailureDetector.java       |  2 +-
 .../tribes/membership/StaticMembershipProvider.java         |  2 +-
 java/org/apache/catalina/tribes/transport/ReceiverBase.java |  4 ++--
 .../catalina/tribes/transport/ReplicationTransmitter.java   |  6 +++---
 .../apache/catalina/tribes/transport/nio/NioReceiver.java   | 13 +++++++------
 .../apache/catalina/tribes/transport/nio/TlsChannel.java    | 10 ++++++----
 .../apache/tomcat/util/net/SSLHostConfigPreSharedKey.java   |  2 --
 7 files changed, 20 insertions(+), 19 deletions(-)

diff --git 
a/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java 
b/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
index ee10f0962e..f0c0b9f1e4 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
+++ b/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
@@ -686,7 +686,7 @@ public class TcpFailureDetector extends 
ChannelInterceptorBase implements TcpFai
             return false;
         }
 
-        boolean channelSecure = getChannel() instanceof GroupChannel 
groupChannel && groupChannel.getSecure();
+        boolean channelSecure = getChannel() instanceof GroupChannel && 
((GroupChannel) getChannel()).getSecure();
         boolean useSecurePort = channelSecure || mbr.getSecurePort() >= 0 && 
mbr.getPort() < 0;
         int port = useSecurePort ? mbr.getSecurePort() : mbr.getPort();
         if (port < 0) {
diff --git 
a/java/org/apache/catalina/tribes/membership/StaticMembershipProvider.java 
b/java/org/apache/catalina/tribes/membership/StaticMembershipProvider.java
index 6a19941f1f..0701e2064a 100644
--- a/java/org/apache/catalina/tribes/membership/StaticMembershipProvider.java
+++ b/java/org/apache/catalina/tribes/membership/StaticMembershipProvider.java
@@ -436,7 +436,7 @@ public class StaticMembershipProvider extends 
MembershipProviderBase
     }
 
     private Member[] getAliveMembers(Member[] members) {
-        boolean channelSecure = channel instanceof GroupChannel groupChannel 
&& groupChannel.getSecure();
+        boolean channelSecure = channel instanceof GroupChannel && 
((GroupChannel) channel).getSecure();
         List<Member> aliveMembers = new ArrayList<>();
         for (Member member : members) {
             boolean useSecurePort = channelSecure || member.getSecurePort() >= 
0 && member.getPort() < 0;
diff --git a/java/org/apache/catalina/tribes/transport/ReceiverBase.java 
b/java/org/apache/catalina/tribes/transport/ReceiverBase.java
index 0c379d6136..b48601dbdf 100644
--- a/java/org/apache/catalina/tribes/transport/ReceiverBase.java
+++ b/java/org/apache/catalina/tribes/transport/ReceiverBase.java
@@ -281,8 +281,8 @@ public abstract class ReceiverBase implements 
ChannelReceiver, ListenCallback, R
                     String type;
                     if (secure) {
                         setSecurePort(port);
-                        if (getChannel() instanceof GroupChannel groupChannel) 
{
-                            type = 
groupChannel.getSslContext().getImplementationName();
+                        if (getChannel() instanceof GroupChannel) {
+                            type = ((GroupChannel) 
getChannel()).getSslContext().getImplementationName();
                         } else {
                             type = "secure";
                         }
diff --git 
a/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java 
b/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
index 7a58edf22f..4b58f2b7df 100644
--- a/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
+++ b/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
@@ -71,7 +71,7 @@ public class ReplicationTransmitter implements ChannelSender {
 
     @Override
     public void sendMessage(ChannelMessage message, Member[] destination) 
throws ChannelException {
-        if (channel instanceof GroupChannel groupChannel && 
groupChannel.getSecure()) {
+        if (channel instanceof GroupChannel && ((GroupChannel) 
channel).getSecure()) {
             message.setOptions(message.getOptions() | 
Channel.SEND_OPTIONS_SECURE);
         }
         MultiPointSender sender = getTransport();
@@ -152,8 +152,8 @@ public class ReplicationTransmitter implements 
ChannelSender {
     @Override
     public void setChannel(Channel channel) {
         this.channel = channel;
-        if (transport instanceof AbstractSender sender && channel instanceof 
GroupChannel groupChannel) {
-            sender.setSslContext(groupChannel.getSslContext());
+        if (transport instanceof AbstractSender && channel instanceof 
GroupChannel) {
+            ((AbstractSender) transport).setSslContext(((GroupChannel) 
channel).getSslContext());
         }
     }
 
diff --git a/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java 
b/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
index 42a17b0232..f1cb27a0be 100644
--- a/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
+++ b/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
@@ -87,11 +87,11 @@ public class NioReceiver extends ReceiverBase implements 
Runnable, NioReceiverMB
         if (getSecurePort() < 0) {
             return;
         }
-        if (!(getChannel() instanceof GroupChannel groupChannel)) {
+        if (!(getChannel() instanceof GroupChannel)) {
             return;
         }
-        if (groupChannel.getSslContext() == null) {
-            if (groupChannel.getSecure()) {
+        if (((GroupChannel) getChannel()).getSslContext() == null) {
+            if (((GroupChannel) getChannel()).getSecure()) {
                 throw new 
IOException(sm.getString("nioReceiver.tlsUnavailable"));
             }
             setSecurePort(-1);
@@ -100,7 +100,8 @@ public class NioReceiver extends ReceiverBase implements 
Runnable, NioReceiverMB
         secureServerChannel = ServerSocketChannel.open();
         bind(secureServerChannel.socket(), getSecurePort(), getAutoBind(), 
true);
         secureConnectionSlots = new Semaphore(Math.max(1, getMaxTasks()));
-        Thread thread = new Thread(() -> 
runSecureListener(groupChannel.getSslContext()), "NioReceiver-TLS");
+        Thread thread =
+                new Thread(() -> runSecureListener(((GroupChannel) 
getChannel()).getSslContext()), "NioReceiver-TLS");
         thread.setDaemon(true);
         thread.start();
     }
@@ -211,7 +212,7 @@ public class NioReceiver extends ReceiverBase implements 
Runnable, NioReceiverMB
         secureSockets.clear();
         secureConnectionSlots = null;
         super.stop();
-        if ((getChannel() instanceof GroupChannel groupChannel) && 
groupChannel.getSecure()) {
+        if (getChannel() instanceof GroupChannel && ((GroupChannel) 
getChannel()).getSecure()) {
             try {
                 // Should stop a lot faster than this as all the sockets have 
been closed.
                 if (!getExecutor().awaitTermination(60, TimeUnit.SECONDS)) {
@@ -239,7 +240,7 @@ public class NioReceiver extends ReceiverBase implements 
Runnable, NioReceiverMB
         try {
             resolveBind();
             getBind();
-            boolean tlsOnly = getChannel() instanceof GroupChannel 
groupChannel && groupChannel.getSecure();
+            boolean tlsOnly = getChannel() instanceof GroupChannel && 
((GroupChannel) getChannel()).getSecure();
             if (!tlsOnly) {
                 bind();
             }
diff --git a/java/org/apache/catalina/tribes/transport/nio/TlsChannel.java 
b/java/org/apache/catalina/tribes/transport/nio/TlsChannel.java
index 55fb277761..8fb323d565 100644
--- a/java/org/apache/catalina/tribes/transport/nio/TlsChannel.java
+++ b/java/org/apache/catalina/tribes/transport/nio/TlsChannel.java
@@ -59,13 +59,14 @@ final class TlsChannel implements ByteChannel {
         HandshakeStatus status = engine.getHandshakeStatus();
         while (status != HandshakeStatus.FINISHED && status != 
HandshakeStatus.NOT_HANDSHAKING) {
             switch (status) {
-                case NEED_TASK -> {
+                case NEED_TASK: {
                     Runnable task;
                     while ((task = engine.getDelegatedTask()) != null) {
                         task.run();
                     }
+                    break;
                 }
-                case NEED_WRAP -> {
+                case NEED_WRAP: {
                     networkOutput.clear();
                     SSLEngineResult result = engine.wrap(EMPTY, networkOutput);
                     if (result.getStatus() == Status.BUFFER_OVERFLOW) {
@@ -80,11 +81,12 @@ final class TlsChannel implements ByteChannel {
                     status = result.getHandshakeStatus();
                     continue;
                 }
-                case NEED_UNWRAP, NEED_UNWRAP_AGAIN -> {
+                case NEED_UNWRAP:
+                case NEED_UNWRAP_AGAIN: {
                     status = unwrapHandshake();
                     continue;
                 }
-                default -> {
+                default: {
                     // FINISHED and NOT_HANDSHAKING are handled by the loop 
condition.
                 }
             }
diff --git a/java/org/apache/tomcat/util/net/SSLHostConfigPreSharedKey.java 
b/java/org/apache/tomcat/util/net/SSLHostConfigPreSharedKey.java
index 545b90a5c9..f455778054 100644
--- a/java/org/apache/tomcat/util/net/SSLHostConfigPreSharedKey.java
+++ b/java/org/apache/tomcat/util/net/SSLHostConfigPreSharedKey.java
@@ -16,7 +16,6 @@
  */
 package org.apache.tomcat.util.net;
 
-import java.io.Serial;
 import java.io.Serializable;
 import java.util.Locale;
 
@@ -28,7 +27,6 @@ import 
org.apache.tomcat.util.net.openssl.ciphers.MessageDigest;
  */
 public class SSLHostConfigPreSharedKey implements Serializable {
 
-    @Serial
     private static final long serialVersionUID = 1L;
 
     /**


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to