From d4eec490c3e57f3aee75427eccb871ad5fd1e4fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= <sybren@stuvel.eu> Date: Wed, 6 Sep 2017 14:36:38 +0200 Subject: [PATCH] SSDP discovery: allow multicast TTL setting to fail Apparently it's not supported on Windows when using IPv6. --- flamenco_worker/ssdp_discover.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/flamenco_worker/ssdp_discover.py b/flamenco_worker/ssdp_discover.py index 8f1bdc12..0804bbaa 100644 --- a/flamenco_worker/ssdp_discover.py +++ b/flamenco_worker/ssdp_discover.py @@ -60,7 +60,11 @@ def find_flamenco_manager(timeout=1, retries=5): sock = socket.socket(family, socket.SOCK_DGRAM, socket.IPPROTO_UDP) sock.settimeout(timeout) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 2) + try: + sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 32) + except OSError: + # Not supported on Windows and AF_INET6. + pass sock.bind(('', 1901)) try: -- GitLab