From 40f9b2106a37e67f2713a15e7a6db6cb6cc96c56 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Dec 2025 00:16:22 +0000 Subject: [PATCH 1/2] Initial plan From 87979865caa8dfa8f30b7b1e30edc1479dc20b2f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Dec 2025 00:21:54 +0000 Subject: [PATCH 2/2] Fix Netty Bootstrap connect to resolve hostname immediately Co-authored-by: kevinherron <340273+kevinherron@users.noreply.github.com> --- .../modbus/tcp/client/NettyRtuClientTransport.java | 3 ++- .../modbus/tcp/client/NettyTcpClientTransport.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyRtuClientTransport.java b/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyRtuClientTransport.java index 5fd8966..3a324cc 100644 --- a/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyRtuClientTransport.java +++ b/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyRtuClientTransport.java @@ -26,6 +26,7 @@ import io.netty.handler.ssl.SslContext; import io.netty.handler.ssl.SslContextBuilder; import io.netty.handler.ssl.SslProtocols; +import java.net.InetSocketAddress; import java.util.List; import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; @@ -248,7 +249,7 @@ protected void initChannel(SocketChannel channel) throws Exception { var future = new CompletableFuture(); bootstrap - .connect(config.hostname(), config.port()) + .connect(new InetSocketAddress(config.hostname(), config.port())) .addListener( (ChannelFutureListener) channelFuture -> { diff --git a/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyTcpClientTransport.java b/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyTcpClientTransport.java index e91fa49..c9e9e66 100644 --- a/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyTcpClientTransport.java +++ b/modbus-tcp/src/main/java/com/digitalpetri/modbus/tcp/client/NettyTcpClientTransport.java @@ -21,6 +21,7 @@ import io.netty.handler.ssl.SslContextBuilder; import io.netty.handler.ssl.SslHandler; import io.netty.handler.ssl.SslProtocols; +import java.net.InetSocketAddress; import java.util.List; import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; @@ -195,7 +196,7 @@ public CompletableFuture connect(FsmContext fsmContext) { var future = new CompletableFuture(); bootstrap - .connect(config.hostname(), config.port()) + .connect(new InetSocketAddress(config.hostname(), config.port())) .addListener( (ChannelFutureListener) channelFuture -> {