From e2d640dcb3416e152638b5703ef11b8f2a8c1ae5 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Sun, 26 Feb 2017 15:24:56 +0900 Subject: [PATCH 1/2] Don't announce self if not public Show all hosts add_peer gives --- server/peers.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/server/peers.py b/server/peers.py index a085813..f0fc622 100644 --- a/server/peers.py +++ b/server/peers.py @@ -112,14 +112,17 @@ class PeerSession(JSONSession): self.peer_mgr.add_peers(peers) + # Announce ourself if not present. Don't if disabled or we + # are a non-public IP address. if not self.peer_mgr.env.peer_announce: return - - # Announce ourself if not present my = self.peer_mgr.my_clearnet_peer() + if not my.is_public: + return for peer in my.matches(peers): if peer.tcp_port == my.tcp_port and peer.ssl_port == my.ssl_port: return + self.log_info('registering ourself with server.add_peer') self.send_request(self.on_add_peer, 'server.add_peer', [my.features]) @@ -307,8 +310,9 @@ class PeerManager(util.LoggedClass): '''Add peers from an incoming connection.''' peers = Peer.peers_from_features(features, source) if peers: - self.log_info('add_peer request received from {}' - .format(peers[0].host)) + hosts = [peer.host for peer in peers] + self.log_info('add_peer request from {} for {}' + .format(source, ', '.join(hosts))) self.add_peers(peers, check_ports=True) return bool(peers) From be9569700212bbcb7c3b38680aa99b1395e6f802 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Sun, 26 Feb 2017 15:29:52 +0900 Subject: [PATCH 2/2] Prepare 0.99.2 --- README.rst | 6 ++++++ server/version.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 74650f3..7429a54 100644 --- a/README.rst +++ b/README.rst @@ -132,6 +132,12 @@ version for the release of 1.0. ChangeLog ========= +Version 0.99.2 +-------------- + +* don't announce self if a non-public IP address +* logging tweaks + Version 0.99.1 -------------- diff --git a/server/version.py b/server/version.py index 4d9138d..ffeb0d6 100644 --- a/server/version.py +++ b/server/version.py @@ -1,5 +1,5 @@ # Server name and protocol versions -VERSION = 'ElectrumX 0.99.1' +VERSION = 'ElectrumX 0.99.2' PROTOCOL_MIN = '1.0' PROTOCOL_MAX = '1.0'