From adc08088aac7ddd7a77a118cce3debad72848cfd Mon Sep 17 00:00:00 2001 From: sowle Date: Thu, 10 Oct 2019 23:47:15 +0300 Subject: [PATCH] p2p: fix for filtering old clients mechanism #128 --- src/p2p/net_node.inl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl index 93ee7a61..4fa28d74 100644 --- a/src/p2p/net_node.inl +++ b/src/p2p/net_node.inl @@ -485,7 +485,7 @@ namespace nodetool if (!tools::check_remote_client_version(rsp.payload_data.client_version)) { - LOG_PRINT_CCONTEXT_L2("COMMAND_HANDSHAKE Failed, wrong client version: " << rsp.payload_data.client_version << ", closing connection."); + LOG_ERROR_CCONTEXT("COMMAND_HANDSHAKE Failed, wrong client version: " << rsp.payload_data.client_version << ", closing connection."); return; } @@ -1310,6 +1310,14 @@ namespace nodetool return 1; } + if (!tools::check_remote_client_version(rsp.payload_data.client_version)) + { + LOG_PRINT_CCONTEXT_L2("COMMAND_HANDSHAKE: wrong client version: " << rsp.payload_data.client_version << ", closing connection."); + drop_connection(context); + add_ip_fail(context.m_remote_ip); + return 1; + } + if(!handle_maintainers_entry(arg.maintrs_entry)) { LOG_ERROR_CCONTEXT("COMMAND_HANDSHAKE Failed, wrong maintainers entry!, closing connection.");