From 1f76f6ee1ba6a6f1787a2a27737e6ba81505f561 Mon Sep 17 00:00:00 2001 From: NIC619 Date: Thu, 19 Sep 2019 21:23:35 +0800 Subject: [PATCH] Raise `OpenConnectionError` when failed to open connection --- libp2p/transport/tcp/tcp.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libp2p/transport/tcp/tcp.py b/libp2p/transport/tcp/tcp.py index a63dbd0..db2dd74 100644 --- a/libp2p/transport/tcp/tcp.py +++ b/libp2p/transport/tcp/tcp.py @@ -6,6 +6,7 @@ from multiaddr import Multiaddr from libp2p.network.connection.raw_connection import RawConnection from libp2p.network.connection.raw_connection_interface import IRawConnection +from libp2p.transport.exceptions import OpenConnectionError from libp2p.transport.listener_interface import IListener from libp2p.transport.transport_interface import ITransport from libp2p.transport.typing import THandler @@ -66,7 +67,10 @@ class TCP(ITransport): self.host = maddr.value_for_protocol("ip4") self.port = int(maddr.value_for_protocol("tcp")) - reader, writer = await asyncio.open_connection(self.host, self.port) + try: + reader, writer = await asyncio.open_connection(self.host, self.port) + except (ConnectionAbortedError, ConnectionRefusedError) as error: + raise OpenConnectionError(error) return RawConnection(reader, writer, True)