diff --git a/lib/jsonrpc.py b/lib/jsonrpc.py index d334d4f..e8e4210 100644 --- a/lib/jsonrpc.py +++ b/lib/jsonrpc.py @@ -79,16 +79,12 @@ class JSONRPC(asyncio.Protocol, LoggedClass): self.send_count = 0 self.send_size = 0 self.error_count = 0 + self.peer_info = None def connection_made(self, transport): '''Handle an incoming client connection.''' self.transport = transport - - def peer_info(self): - '''Return peer info.''' - if self.transport: - return self.transport.get_extra_info('peername') - return None + self.peer_info = transport.get_extra_info('peername') def connection_lost(self, exc): '''Handle client disconnection.''' diff --git a/server/protocol.py b/server/protocol.py index fb55466..e77b045 100644 --- a/server/protocol.py +++ b/server/protocol.py @@ -224,7 +224,7 @@ class Session(JSONRPC): self.manager.add_task(self, self.handle_json_request(request)) def peername(self): - info = self.peer_info() + info = self.peer_info return 'unknown' if not info else '{}:{}'.format(info[0], info[1]) def tx_hash_from_param(self, param):