tools/litex_server: set socket option flags separately (required for Mac OS X).
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Sat, 20 Jun 2020 20:20:29 +0000 (22:20 +0200)
committerFlorent Kermarrec <florent@enjoy-digital.fr>
Sat, 20 Jun 2020 20:20:29 +0000 (22:20 +0200)
litex/tools/litex_server.py

index e17fe115db6190a4d5a779d14343078b8a4bc604..b35bda5d64fb8be6629c6541769bd22ef8c5234b 100755 (executable)
@@ -26,13 +26,11 @@ class RemoteServer(EtherboneIPC):
     def open(self):
         if hasattr(self, "socket"):
             return
-        socket_flags = 0
+        self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         if hasattr(socket, "SO_REUSEADDR"):
-            socket_flags = socket_flags | socket.SO_REUSEADDR
+            self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
         if hasattr(socket, "SO_REUSEPORT"):
-            socket_flags = socket_flags | socket.SO_REUSEPORT
-        self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
-        self.socket.setsockopt(socket.SOL_SOCKET, socket_flags, 1)
+            self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)
         self.socket.bind((self.bind_ip, self.bind_port))
         print("tcp port: {:d}".format(self.bind_port))
         self.socket.listen(1)