diff --git a/server.py b/server.py index b797fe19643a6ab4849f10ce4f7ee26d03976f0d..42d17e89cbbf99390a9049360b6b280608338f34 100644 --- a/server.py +++ b/server.py @@ -40,6 +40,7 @@ class Server(multiprocessing.Process): self.active_interface = self.get_active_interface() self.server_address = self.get_local_ip_address() self.subnet_mask = self.get_subnet_mask(self.active_interface) + self.broadcast_address = self.get_broadcast_address() print(self.active_interface) self.last_heartbeat_timestamp = last_heartbeat_timestamp self.ring_socket = ring_socket @@ -127,7 +128,7 @@ class Server(multiprocessing.Process): print("I'm alive") # Get the broadcast address from the existing server_instance - broadcast_address = self.get_broadcast_address() + broadcast_address = self.broadcast_address if broadcast_address is None: print("Failed to obtain broadcast address. Exiting.") exit(1) @@ -371,7 +372,7 @@ class Server(multiprocessing.Process): def listen_for_servers(self): BROADCAST_PORT = 49154 - BROADCAST_ADDRESS = self.get_broadcast_address() + BROADCAST_ADDRESS = self.broadcast_address # Create a UDP socket listen_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) @@ -419,7 +420,7 @@ class Server(multiprocessing.Process): def listen_for_clients(self): BROADCAST_PORT = 49153 - BROADCAST_ADDRESS = self.get_broadcast_address() + BROADCAST_ADDRESS = self.broadcast_address # Create a UDP socket listen_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) @@ -527,7 +528,7 @@ class Server(multiprocessing.Process): # send updated group view/servers cache to all server def updateCacheList(self): PORT = 5980 - BROADCAST_ADDRESS = self.get_broadcast_address() + BROADCAST_ADDRESS = self.broadcast_address servers_cache_as_string = json.dumps(self.local_servers_cache, indent=2).encode('utf-8') clients_cache_as_string = json.dumps(self.local_clients_cache, indent=2).encode('utf-8') group_cache_as_string = json.dumps(self.local_group_cache, indent=2).encode('utf-8') @@ -537,7 +538,7 @@ class Server(multiprocessing.Process): broadcast_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) broadcast_socket.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) broadcast_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - time.sleep(3) + time.sleep(2) if self.os == "macOS": broadcast_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) @@ -549,7 +550,7 @@ class Server(multiprocessing.Process): # listen for update of the groupview/server cache by MAIN server def listen_for_cache_update(self): - BROADCAST_ADDRESS = self.get_broadcast_address() + BROADCAST_ADDRESS = self.broadcast_address BROADCAST_PORT = 5980 # Local host information