test: Log when the garbage is actually sent to transport layer

Currently, we log the number of bytes of garbage when it is
generated. The log is a better fit for when the garbage
actually gets sent to the transport layer.
This commit is contained in:
stratospher 2024-05-17 09:40:38 +05:30
parent 86cca2cba2
commit c642b08c4e
2 changed files with 2 additions and 3 deletions

View File

@ -223,6 +223,7 @@ class P2PConnection(asyncio.Protocol):
# send the initial handshake immediately # send the initial handshake immediately
if self.supports_v2_p2p and self.v2_state.initiating and not self.v2_state.tried_v2_handshake: if self.supports_v2_p2p and self.v2_state.initiating and not self.v2_state.tried_v2_handshake:
send_handshake_bytes = self.v2_state.initiate_v2_handshake() send_handshake_bytes = self.v2_state.initiate_v2_handshake()
logger.debug(f"sending {len(self.v2_state.sent_garbage)} bytes of garbage data")
self.send_raw_message(send_handshake_bytes) self.send_raw_message(send_handshake_bytes)
# for v1 outbound connections, send version message immediately after opening # for v1 outbound connections, send version message immediately after opening
# (for v2 outbound connections, send it after the initial v2 handshake) # (for v2 outbound connections, send it after the initial v2 handshake)
@ -262,6 +263,7 @@ class P2PConnection(asyncio.Protocol):
self.v2_state = None self.v2_state = None
return return
elif send_handshake_bytes: elif send_handshake_bytes:
logger.debug(f"sending {len(self.v2_state.sent_garbage)} bytes of garbage data")
self.send_raw_message(send_handshake_bytes) self.send_raw_message(send_handshake_bytes)
elif send_handshake_bytes == b"": elif send_handshake_bytes == b"":
return # only after send_handshake_bytes are sent can `complete_handshake()` be done return # only after send_handshake_bytes are sent can `complete_handshake()` be done

View File

@ -4,7 +4,6 @@
# file COPYING or http://www.opensource.org/licenses/mit-license.php. # file COPYING or http://www.opensource.org/licenses/mit-license.php.
"""Class for v2 P2P protocol (see BIP 324)""" """Class for v2 P2P protocol (see BIP 324)"""
import logging
import random import random
from .crypto.bip324_cipher import FSChaCha20Poly1305 from .crypto.bip324_cipher import FSChaCha20Poly1305
@ -14,7 +13,6 @@ from .crypto.hkdf import hkdf_sha256
from .key import TaggedHash from .key import TaggedHash
from .messages import MAGIC_BYTES from .messages import MAGIC_BYTES
logger = logging.getLogger("TestFramework.v2_p2p")
CHACHA20POLY1305_EXPANSION = 16 CHACHA20POLY1305_EXPANSION = 16
HEADER_LEN = 1 HEADER_LEN = 1
@ -116,7 +114,6 @@ class EncryptedP2PState:
self.privkey_ours, self.ellswift_ours = ellswift_create() self.privkey_ours, self.ellswift_ours = ellswift_create()
garbage_len = random.randrange(MAX_GARBAGE_LEN + 1) garbage_len = random.randrange(MAX_GARBAGE_LEN + 1)
self.sent_garbage = random.randbytes(garbage_len) self.sent_garbage = random.randbytes(garbage_len)
logger.debug(f"sending {garbage_len} bytes of garbage data")
return self.ellswift_ours + self.sent_garbage return self.ellswift_ours + self.sent_garbage
def initiate_v2_handshake(self): def initiate_v2_handshake(self):