@ -4616,6 +4616,15 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
{
addrman . SetServices ( pfrom - > addr , pfrom - > nServices ) ;
}
if ( pfrom - > nServicesExpected & ~ pfrom - > nServices )
{
LogPrint ( " net " , " peer=%d does not offer the expected services (%08x offered, %08x expected); disconnecting \n " , pfrom - > id , pfrom - > nServices , pfrom - > nServicesExpected ) ;
pfrom - > PushMessage ( NetMsgType : : REJECT , strCommand , REJECT_NONSTANDARD ,
strprintf ( " Expected to offer services %08x " , pfrom - > nServicesExpected ) ) ;
pfrom - > fDisconnect = true ;
return false ;
}
if ( pfrom - > nVersion < MIN_PEER_PROTO_VERSION )
{
// disconnect from peers older than this proto version