From a9be2adf06a4332168878f8b84c837caf8ed0651 Mon Sep 17 00:00:00 2001 From: Steven Looman Date: Fri, 30 Dec 2022 15:30:29 +0100 Subject: [PATCH] Actually try port when finding next available port for ssdp server (#84206) fixes undefined --- homeassistant/components/ssdp/__init__.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/ssdp/__init__.py b/homeassistant/components/ssdp/__init__.py index 77065818369..18ed063c8bc 100644 --- a/homeassistant/components/ssdp/__init__.py +++ b/homeassistant/components/ssdp/__init__.py @@ -706,11 +706,12 @@ async def _async_find_next_available_port(source: AddressTupleVXType) -> int: test_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) for port in range(UPNP_SERVER_MIN_PORT, UPNP_SERVER_MAX_PORT): + addr = (source[0],) + (port,) + source[2:] try: - test_socket.bind(source) + test_socket.bind(addr) return port except OSError: - if port == UPNP_SERVER_MAX_PORT: + if port == UPNP_SERVER_MAX_PORT - 1: raise raise RuntimeError("unreachable")