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]