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 4909c71e7d Complete securePort support for DNS membership (untested)
4909c71e7d is described below

commit 4909c71e7d00ccf4c7397cf5e520cb1dc82f707b
Author: Mark Thomas <[email protected]>
AuthorDate: Thu Sep 24 14:54:17 2026 +0100

    Complete securePort support for DNS membership (untested)
---
 .../catalina/tribes/membership/cloud/CloudMembershipProvider.java | 6 ++++++
 .../catalina/tribes/membership/cloud/DNSMembershipProvider.java   | 8 ++++----
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git 
a/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipProvider.java 
b/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipProvider.java
index ba2054b295..ef9ead8532 100644
--- 
a/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipProvider.java
+++ 
b/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipProvider.java
@@ -93,6 +93,11 @@ public abstract class CloudMembershipProvider extends 
MembershipProviderBase imp
      */
     protected int port;
 
+    /**
+     * The local secure port number.
+     */
+    protected int securePort;
+
     /**
      * Member expiration time in milliseconds.
      */
@@ -180,6 +185,7 @@ public abstract class CloudMembershipProvider extends 
MembershipProviderBase imp
 
         localIp = InetAddress.getLocalHost().getHostAddress();
         port = Integer.parseInt(properties.getProperty("tcpListenPort"));
+        securePort = Integer.parseInt(properties.getProperty("tcpSecurePort"));
     }
 
     @Override
diff --git 
a/java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java 
b/java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
index 46ed70df74..05b7eb7c90 100644
--- 
a/java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
+++ 
b/java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
@@ -41,10 +41,8 @@ import org.apache.juli.logging.LogFactory;
  * cluster member in DNS and adds that node to the cluster. The DNS entry is, 
effectively, used by new nodes to identify
  * the other nodes in the cluster to which cluster messages should be sent.
  * <p>
- * If more control is required over cluster membership, users are strongly 
encouraged to use
- * {@link KubernetesMembershipProvider} instead. Alternatively, the
- * {@link org.apache.catalina.tribes.group.interceptors.EncryptInterceptor} 
may be used to ensure that only nodes with
- * knowledge of the shared key are able to participate in the cluster.
+ * If more control is required over cluster membership, users are strongly 
encouraged to configure a securePort and use
+ * TLS to ensure that only nodes with knowledge of the shared key are able to 
participate in the cluster.
  * <p>
  * TODO: Make the "accept messages from any node and add that node to the 
cluster" behaviour optional.
  * <p>
@@ -185,6 +183,7 @@ public class DNSMembershipProvider extends 
CloudMembershipProvider {
                 MemberImpl member = null;
                 try {
                     member = new MemberImpl(ip, port, aliveTime);
+                    member.setSecurePort(securePort);
                 } catch (IOException ioe) {
                     
log.error(sm.getString("dnsMembershipProvider.memberError"), ioe);
                     continue;
@@ -214,6 +213,7 @@ public class DNSMembershipProvider extends 
CloudMembershipProvider {
             MemberImpl member = new MemberImpl();
             member.setHost(sender.getHost());
             member.setPort(sender.getPort());
+            member.setSecurePort(sender.getSecurePort());
             byte[] host = sender.getHost();
             int i = 0;
             StringBuilder buf = new StringBuilder();


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

Reply via email to