From 621ea321abd35565d77e92abe7242af7bbf0f269 Mon Sep 17 00:00:00 2001 From: lla-dane Date: Wed, 25 Jun 2025 00:32:33 +0530 Subject: [PATCH] Set default-negotiate-timeout = 5 sec --- libp2p/protocol_muxer/multiselect.py | 7 +++++-- libp2p/protocol_muxer/multiselect_client.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libp2p/protocol_muxer/multiselect.py b/libp2p/protocol_muxer/multiselect.py index 91c1efed..99ad37f5 100644 --- a/libp2p/protocol_muxer/multiselect.py +++ b/libp2p/protocol_muxer/multiselect.py @@ -16,7 +16,7 @@ from .exceptions import ( MULTISELECT_PROTOCOL_ID = "/multistream/1.0.0" PROTOCOL_NOT_FOUND_MSG = "na" -DEFAULT_NEGOTIATE_TIMEOUT = 60 +DEFAULT_NEGOTIATE_TIMEOUT = 5 class Multiselect(IMultiselectMuxer): @@ -63,7 +63,10 @@ class Multiselect(IMultiselectMuxer): while True: try: - command = await communicator.read() + with trio.fail_after(DEFAULT_NEGOTIATE_TIMEOUT): + command = await communicator.read() + except trio.TooSlowError: + raise MultiselectError("handshake read timeout") except MultiselectCommunicatorError as error: raise MultiselectError() from error diff --git a/libp2p/protocol_muxer/multiselect_client.py b/libp2p/protocol_muxer/multiselect_client.py index f9f4ba34..74335241 100644 --- a/libp2p/protocol_muxer/multiselect_client.py +++ b/libp2p/protocol_muxer/multiselect_client.py @@ -19,7 +19,7 @@ from .exceptions import ( MULTISELECT_PROTOCOL_ID = "/multistream/1.0.0" PROTOCOL_NOT_FOUND_MSG = "na" -DEFAULT_NEGOTIATE_TIMEOUT = 60 +DEFAULT_NEGOTIATE_TIMEOUT = 5 class MultiselectClient(IMultiselectClient):