]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Fix HTTPServer on windows, where IPPROTO_IPV6 options are not available
authorBen Darnell <ben@bendarnell.com>
Sat, 28 May 2011 20:40:38 +0000 (13:40 -0700)
committerBen Darnell <ben@bendarnell.com>
Sat, 28 May 2011 20:40:38 +0000 (13:40 -0700)
tornado/httpserver.py

index b78d05e3a9e963d3f429c3fb12b50f44c7994cb1..d361ee6dffdb3d45e4a589a1bcd64d8c3f31990c 100644 (file)
@@ -196,7 +196,10 @@ class HTTPServer(object):
                 # separate sockets *must* be used to listen for both ipv4
                 # and ipv6.  For consistency, always disable ipv4 on our
                 # ipv6 sockets and use a separate ipv4 socket when needed.
-                sock.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 1)
+                #
+                # Python 2.x on windows doesn't have IPPROTO_IPV6.
+                if hasattr(socket, "IPPROTO_IPV6"):
+                    sock.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 1)
             sock.setblocking(0)
             sock.bind(sockaddr)
             sock.listen(128)