mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 20:03:34 -03:00
Remove oversized message detection from log and interface
This commit is contained in:
parent
b0e10ff4df
commit
6a91499496
3 changed files with 7 additions and 18 deletions
11
src/net.cpp
11
src/net.cpp
|
@ -577,12 +577,6 @@ bool CNode::ReceiveMsgBytes(const char *pch, unsigned int nBytes, bool& complete
|
|||
return false;
|
||||
}
|
||||
|
||||
if (m_deserializer->OversizedMessageDetected()) {
|
||||
LogPrint(BCLog::NET, "Oversized message from peer=%i, disconnecting\n", GetId());
|
||||
m_deserializer->Reset();
|
||||
return false;
|
||||
}
|
||||
|
||||
pch += handled;
|
||||
nBytes -= handled;
|
||||
|
||||
|
@ -655,9 +649,10 @@ int V1TransportDeserializer::readHeader(const char *pch, unsigned int nBytes)
|
|||
return -1;
|
||||
}
|
||||
|
||||
// reject messages larger than MAX_SIZE
|
||||
if (hdr.nMessageSize > MAX_SIZE)
|
||||
// reject messages larger than MAX_SIZE or MAX_PROTOCOL_MESSAGE_LENGTH
|
||||
if (hdr.nMessageSize > MAX_SIZE || hdr.nMessageSize > MAX_PROTOCOL_MESSAGE_LENGTH) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// switch state to reading message data
|
||||
in_data = true;
|
||||
|
|
|
@ -642,8 +642,6 @@ public:
|
|||
virtual void Reset() = 0;
|
||||
// returns true if the current deserialization is complete
|
||||
virtual bool Complete() const = 0;
|
||||
// checks if the potential message in deserialization is oversized
|
||||
virtual bool OversizedMessageDetected() const = 0;
|
||||
// set the serialization context version
|
||||
virtual void SetVersion(int version) = 0;
|
||||
// read and deserialize data
|
||||
|
@ -695,9 +693,6 @@ public:
|
|||
hdrbuf.SetVersion(nVersionIn);
|
||||
vRecv.SetVersion(nVersionIn);
|
||||
}
|
||||
bool OversizedMessageDetected() const {
|
||||
return (in_data && hdr.nMessageSize > MAX_PROTOCOL_MESSAGE_LENGTH);
|
||||
}
|
||||
int Read(const char *pch, unsigned int nBytes) {
|
||||
return in_data ? readData(pch, nBytes) : readHeader(pch, nBytes);
|
||||
}
|
||||
|
|
|
@ -101,11 +101,10 @@ class InvalidMessagesTest(BitcoinTestFramework):
|
|||
msg_over_size = msg_unrecognized(str_data="b" * (valid_data_limit + 1))
|
||||
assert len(msg_over_size.serialize()) == (msg_limit + 1)
|
||||
|
||||
with node.assert_debug_log(["Oversized message from peer=4, disconnecting"]):
|
||||
# An unknown message type (or *any* message type) over
|
||||
# MAX_PROTOCOL_MESSAGE_LENGTH should result in a disconnect.
|
||||
node.p2p.send_message(msg_over_size)
|
||||
node.p2p.wait_for_disconnect(timeout=4)
|
||||
# An unknown message type (or *any* message type) over
|
||||
# MAX_PROTOCOL_MESSAGE_LENGTH should result in a disconnect.
|
||||
node.p2p.send_message(msg_over_size)
|
||||
node.p2p.wait_for_disconnect(timeout=4)
|
||||
|
||||
node.disconnect_p2ps()
|
||||
conn = node.add_p2p_connection(P2PDataStore())
|
||||
|
|
Loading…
Reference in a new issue