From 1e81b3320ccbe0e808edb94b54ce8c105577e1bf Mon Sep 17 00:00:00 2001 From: smilexs4 Date: Thu, 25 Jul 2024 22:41:52 +0300 Subject: [PATCH 1/2] Update ModbusTLS.h Pass host to WiFiClientSecure->connect() without converting it to IPAddress in order to avoid TLS error in case the server certificate has a hostname in its CN subject field. --- src/ModbusTLS.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/ModbusTLS.h b/src/ModbusTLS.h index 7f0fdf8..906c2d3 100644 --- a/src/ModbusTLS.h +++ b/src/ModbusTLS.h @@ -86,13 +86,13 @@ class ModbusTLS : public ModbusAPI= 0) @@ -113,7 +113,11 @@ class ModbusTLS : public ModbusAPIconnect(ip, port); - if (!tcpclient[p]->connect(ip, port)) + if (host) + if (!tcpclient[p]->connect(host, port)) + return false; + else + if (!tcpclient[p]->connect(ip, port)) return false; return true; } From 2a38ca1d8c3971ff1ab9c7f13db66dafe6f1a4ed Mon Sep 17 00:00:00 2001 From: smilexs4 Date: Sat, 27 Jul 2024 16:58:29 +0300 Subject: [PATCH 2/2] Update ModbusTLS.h --- src/ModbusTLS.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ModbusTLS.h b/src/ModbusTLS.h index 906c2d3..bd4c616 100644 --- a/src/ModbusTLS.h +++ b/src/ModbusTLS.h @@ -113,12 +113,14 @@ class ModbusTLS : public ModbusAPIconnect(ip, port); - if (host) + if (host) { if (!tcpclient[p]->connect(host, port)) return false; - else + } + else { if (!tcpclient[p]->connect(ip, port)) return false; + } return true; } };