From 1de73f4e19fe789abb636afdb48a165a6fd31009 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Thu, 3 Aug 2017 15:52:37 -0400 Subject: [PATCH] Disconnect network service bits 6 and 8 until Aug 1, 2018 These have been used to indicate incompatible consensus rules instead of changing network magic, so we're stuck disconnecting them. --- src/net_processing.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/net_processing.cpp b/src/net_processing.cpp index a743f04dd..6fabfcf0a 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -1260,6 +1260,17 @@ bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStr return false; } + if (nServices & ((1 << 7) | (1 << 5))) { + if (GetTime() < 1533096000) { + // Immediately disconnect peers that use service bits 6 or 8 until August 1st, 2018 + // These bits have been used as a flag to indicate that a node is running incompatible + // consensus rules instead of changing the network magic, so we're stuck disconnecting + // based on these service bits, at least for a while. + pfrom->fDisconnect = true; + return false; + } + } + if (nVersion < MIN_PEER_PROTO_VERSION) { // disconnect from peers older than this proto version