Skip to content

Commit 199ed7c

Browse files
committed
Treat EndOfRLPException as invalid packet in peer discovery
When processing peer discovery packets, EndOfRLPException from malformed RLP-encoded ENR responses should be treated as invalid packets and discarded with debug-level logging, similar to DecodeException and PeerDiscoveryPacketDecodingException. This prevents log pollution from malformed packets received from the network, which currently get logged as ERROR instead of being quietly discarded. Fixes #9596 Signed-off-by: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 4e088d6 commit 199ed7c

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

ethereum/p2p/src/main/java/org/hyperledger/besu/ethereum/p2p/discovery/VertxPeerDiscoveryAgent.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
import io.vertx.core.datagram.DatagramPacket;
5959
import io.vertx.core.datagram.DatagramSocket;
6060
import io.vertx.core.datagram.DatagramSocketOptions;
61+
import org.apache.tuweni.rlp.EndOfRLPException;
6162
import org.ethereum.beacon.discovery.util.DecodeException;
6263
import org.slf4j.Logger;
6364
import org.slf4j.LoggerFactory;
@@ -342,7 +343,8 @@ private void handlePacket(final DatagramPacket datagram) {
342343
handleIncomingPacket(endpoint, event.result());
343344
} else {
344345
if (event.cause() instanceof PeerDiscoveryPacketDecodingException
345-
|| event.cause() instanceof DecodeException) {
346+
|| event.cause() instanceof DecodeException
347+
|| event.cause() instanceof EndOfRLPException) {
346348
LOG.debug(
347349
"Discarding invalid peer discovery packet: {}, {}",
348350
event.cause().getMessage(),

0 commit comments

Comments
 (0)