diff --git a/core/src/main/java/hudson/TcpSlaveAgentListener.java b/core/src/main/java/hudson/TcpSlaveAgentListener.java
index bd2b8a158137..07f71b7575bb 100644
--- a/core/src/main/java/hudson/TcpSlaveAgentListener.java
+++ b/core/src/main/java/hudson/TcpSlaveAgentListener.java
@@ -33,6 +33,7 @@
import javax.annotation.Nullable;
import hudson.model.AperiodicWork;
+import hudson.util.VersionNumber;
import jenkins.model.Jenkins;
import jenkins.model.identity.InstanceIdentityProvider;
import jenkins.security.stapler.StaplerAccessibleType;
@@ -153,6 +154,13 @@ public String getAgentProtocolNames() {
return StringUtils.join(Jenkins.getInstance().getAgentProtocols(), ", ");
}
+ /**
+ * Gets Remoting minimum supported version to prevent unsupported agents from connecting
+ */
+ public VersionNumber getRemotingMinimumVersion() {
+ return RemotingVersionInfo.getMinimumSupportedVersion();
+ }
+
@Override
public void run() {
try {
@@ -304,7 +312,7 @@ private void respondHello(String header, Socket s) throws IOException {
o.write("Jenkins-Session: " + Jenkins.SESSION_HASH + "\r\n");
o.write("Client: " + s.getInetAddress().getHostAddress() + "\r\n");
o.write("Server: " + s.getLocalAddress().getHostAddress() + "\r\n");
- o.write("Remoting-Minimum-Version: " + RemotingVersionInfo.getMinimumSupportedVersion() + "\r\n");
+ o.write("Remoting-Minimum-Version: " + getRemotingMinimumVersion() + "\r\n");
o.flush();
s.shutdownOutput();
} else {
diff --git a/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly b/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly
index 85471432ae05..879acdca5ad0 100644
--- a/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly
+++ b/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly
@@ -39,6 +39,8 @@ THE SOFTWARE.
+
+
Jenkins