diff --git a/mopidy/__main__.py b/mopidy/__main__.py index 1ddd76a4..05394bc2 100644 --- a/mopidy/__main__.py +++ b/mopidy/__main__.py @@ -37,7 +37,9 @@ def main(): logger.info('Starting Mopidy %s', versioning.get_version()) signal.signal(signal.SIGTERM, process.exit_handler) - signal.signal(signal.SIGUSR1, pykka.debug.log_thread_tracebacks) + # Windows does not have signal.SIGUSR1 + if hasattr(signal, 'SIGUSR1'): + signal.signal(signal.SIGUSR1, pykka.debug.log_thread_tracebacks) try: registry = ext.Registry() diff --git a/mopidy/utils/network.py b/mopidy/utils/network.py index bb1edbc4..adfe3b5f 100644 --- a/mopidy/utils/network.py +++ b/mopidy/utils/network.py @@ -43,7 +43,12 @@ def create_socket(): if has_ipv6: sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) # Explicitly configure socket to work for both IPv4 and IPv6 - sock.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0) + if (hasattr(socket, 'IPPROTO_IPV6')): + sock.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0) + else: + # Python 2.7 on windows does not have the IPPROTO_IPV6 constant + # Use values extracted from Windows Vista/7/8's header + sock.setsockopt(41, 27, 0) else: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)