diff --git a/gns3server/compute/base_node.py b/gns3server/compute/base_node.py index 65330bae..9a522d6e 100644 --- a/gns3server/compute/base_node.py +++ b/gns3server/compute/base_node.py @@ -408,7 +408,8 @@ class BaseNode: if self._wrapper_telnet_server: self._wrap_console_writer.close() - await self._wrap_console_writer.wait_closed() + if sys.version_info >= (3, 7, 0): + await self._wrap_console_writer.wait_closed() self._wrapper_telnet_server.close() await self._wrapper_telnet_server.wait_closed() self._wrapper_telnet_server = None diff --git a/gns3server/utils/asyncio/telnet_server.py b/gns3server/utils/asyncio/telnet_server.py index e6f85199..043d5370 100644 --- a/gns3server/utils/asyncio/telnet_server.py +++ b/gns3server/utils/asyncio/telnet_server.py @@ -15,6 +15,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import sys import socket import asyncio import asyncio.subprocess @@ -202,7 +203,8 @@ class AsyncioTelnetServer: except ConnectionError: async with self._lock: network_writer.close() - await network_writer.wait_closed() + if sys.version_info >= (3, 7, 0): + await network_writer.wait_closed() if self._reader_process == network_reader: self._reader_process = None # Cancel current read from this reader @@ -218,7 +220,8 @@ class AsyncioTelnetServer: writer.write_eof() await writer.drain() writer.close() - await writer.wait_closed() + if sys.version_info >= (3, 7, 0): + await writer.wait_closed() except (AttributeError, ConnectionError): continue