Changeset View
Changeset View
Standalone View
Standalone View
src/net_processing.cpp
Show First 20 Lines • Show All 3,119 Lines • ▼ Show 20 Lines | bool ProcessMessages(const Config &config, CNode *pfrom, CConnman &connman, | ||||
msg.SetVersion(pfrom->GetRecvVersion()); | msg.SetVersion(pfrom->GetRecvVersion()); | ||||
// Scan for message start | // Scan for message start | ||||
if (memcmp(std::begin(msg.hdr.pchMessageStart), | if (memcmp(std::begin(msg.hdr.pchMessageStart), | ||||
std::begin(chainparams.NetMagic()), | std::begin(chainparams.NetMagic()), | ||||
CMessageHeader::MESSAGE_START_SIZE) != 0) { | CMessageHeader::MESSAGE_START_SIZE) != 0) { | ||||
LogPrintf("PROCESSMESSAGE: INVALID MESSAGESTART %s peer=%d\n", | LogPrintf("PROCESSMESSAGE: INVALID MESSAGESTART %s peer=%d\n", | ||||
SanitizeString(msg.hdr.GetCommand()), pfrom->id); | SanitizeString(msg.hdr.GetCommand()), pfrom->id); | ||||
// Make sure we ban where that come from for some time. | |||||
connman.Ban(pfrom->addr, BanReasonNodeMisbehaving); | |||||
pfrom->fDisconnect = true; | pfrom->fDisconnect = true; | ||||
return false; | return false; | ||||
} | } | ||||
// Read header | // Read header | ||||
CMessageHeader &hdr = msg.hdr; | CMessageHeader &hdr = msg.hdr; | ||||
if (!hdr.IsValid(config)) { | if (!hdr.IsValid(config)) { | ||||
LogPrintf("PROCESSMESSAGE: ERRORS IN HEADER %s peer=%d\n", | LogPrintf("PROCESSMESSAGE: ERRORS IN HEADER %s peer=%d\n", | ||||
▲ Show 20 Lines • Show All 697 Lines • Show Last 20 Lines |