@@ -68,23 +68,27 @@ def run_test(self):
6868
6969 with self .nodes [0 ].assert_debug_log (['Unsupported message "ping" prior to verack from peer=0' ]):
7070 no_verack_node .send_message (msg_ping ())
71- with self .nodes [0 ].assert_debug_log (['non-version message before version handshake. Message "ping" from peer=1' ]):
72- no_version_node .send_message (msg_ping ())
7371
74- self .mock_forward (1 )
72+ # With v2, non-version messages before the handshake would be interpreted as part of the key exchange.
73+ # Therefore, don't execute this part of the test if v2transport is chosen.
74+ if not self .options .v2transport :
75+ with self .nodes [0 ].assert_debug_log (['non-version message before version handshake. Message "ping" from peer=1' ]):
76+ no_version_node .send_message (msg_ping ())
7577
78+ self .mock_forward (1 )
7679 assert "version" in no_verack_node .last_message
7780
7881 assert no_verack_node .is_connected
7982 assert no_version_node .is_connected
8083 assert no_send_node .is_connected
8184
8285 no_verack_node .send_message (msg_ping ())
83- no_version_node .send_message (msg_ping ())
86+ if not self .options .v2transport :
87+ no_version_node .send_message (msg_ping ())
8488
8589 expected_timeout_logs = [
8690 "version handshake timeout peer=0" ,
87- "socket no message in first 3 seconds, 1 0 peer=1" ,
91+ f "socket no message in first 3 seconds, { '0' if self . options . v2transport else '1' } 0 peer=1" ,
8892 "socket no message in first 3 seconds, 0 0 peer=2" ,
8993 ]
9094
@@ -100,5 +104,6 @@ def run_test(self):
100104 extra_args = ['-peertimeout=0' ],
101105 )
102106
107+
103108if __name__ == '__main__' :
104109 TimeoutsTest ().main ()
0 commit comments