From 544ea8ac6ff2e830a16a9d79db8b051998d6aba9 Mon Sep 17 00:00:00 2001 From: Navid Rahimi Date: Thu, 21 May 2026 20:28:11 +0100 Subject: [PATCH] fix: send server.version handshake before any ElectrumX request --- lib/electrumx_rpc/electrumx_client.dart | 2 ++ .../connection_check/electrum_connection_check.dart | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/electrumx_rpc/electrumx_client.dart b/lib/electrumx_rpc/electrumx_client.dart index b7c52b7d5..abcb01296 100644 --- a/lib/electrumx_rpc/electrumx_client.dart +++ b/lib/electrumx_rpc/electrumx_client.dart @@ -314,6 +314,8 @@ class ElectrumXClient { ); } + await newClient.request('server.version'); + await ClientManager.sharedInstance.addClient( newClient, cryptoCurrency: cryptoCurrency, diff --git a/lib/utilities/connection_check/electrum_connection_check.dart b/lib/utilities/connection_check/electrum_connection_check.dart index 24bd87124..8d845aa01 100644 --- a/lib/utilities/connection_check/electrum_connection_check.dart +++ b/lib/utilities/connection_check/electrum_connection_check.dart @@ -57,9 +57,9 @@ Future checkElectrumServer({ ), ); - await client.ping().timeout( - Duration(seconds: (proxyInfo == null ? 5 : 30)), - ); + await client + .request('server.version') + .timeout(Duration(seconds: (proxyInfo == null ? 5 : 30))); return true; } catch (e, s) {