diff --git a/src/gossip/connectpeer.py b/src/gossip/connectpeer.py index 22aae214..2432a891 100644 --- a/src/gossip/connectpeer.py +++ b/src/gossip/connectpeer.py @@ -1,11 +1,16 @@ +from gossip.commands import GossipCommands, command_to_byte import logger def connect_peer(peer_set, peer): + if peer in peer_set: + return try: - peer.get_socket() + s = peer.get_socket() except Exception: logger.warn(f"Could not connect to {peer.transport_address}") else: + s.sendall(command_to_byte(GossipCommands.CLOSE)) + s.close() peer_set.add(peer) logger.info(f"connected to {peer.transport_address}")