From 8d261b03dcc3255863a730bac54aae12df0a7ad8 Mon Sep 17 00:00:00 2001 From: Kevin Froman Date: Tue, 3 Apr 2018 19:34:15 -0500 Subject: [PATCH] work on pm and fixed broken pex when none --- onionr/api.py | 7 ++++--- onionr/core.py | 6 ++++-- onionr/onionr.py | 2 +- onionr/onionrutils.py | 10 +++++++++- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/onionr/api.py b/onionr/api.py index 7ff3a002..c7592750 100755 --- a/onionr/api.py +++ b/onionr/api.py @@ -155,9 +155,10 @@ class API: response = 'none' resp = Response(response) elif action == 'kex': - response = ','.join(self._core.listPeers()) - if len(response) == 0: - response = 'none' + peers = self._core.listPeers() + response = '' + if type(peers) != None: + response = ','.join(self._core.listPeers()) resp = Response(response) else: resp = Response("") diff --git a/onionr/core.py b/onionr/core.py index a920a03d..8832812e 100644 --- a/onionr/core.py +++ b/onionr/core.py @@ -137,7 +137,8 @@ class Core: forwardKey text, dateSeen not null, bytesStored int, - trust int); + trust int, + pubkeyExchanged int); ''') conn.commit() conn.close() @@ -377,11 +378,12 @@ class Core: dateSeen not null, 5 bytesStored int, 6 trust int 7 + pubkeyExchanged int 8 ''' conn = sqlite3.connect(self.peerDB) c = conn.cursor() command = (peer,) - infoNumbers = {'id': 0, 'name': 1, 'pubkey': 2, 'adders': 3, 'forwardKey': 4, 'dateSeen': 5, 'bytesStored': 6, 'trust': 7} + infoNumbers = {'id': 0, 'name': 1, 'pubkey': 2, 'adders': 3, 'forwardKey': 4, 'dateSeen': 5, 'bytesStored': 6, 'trust': 7, 'pubkeyExchanged': 8} info = infoNumbers[info] iterCount = 0 retVal = '' diff --git a/onionr/onionr.py b/onionr/onionr.py index f0ddc7f7..4dbef11b 100755 --- a/onionr/onionr.py +++ b/onionr/onionr.py @@ -256,7 +256,7 @@ class Onionr: except KeyboardInterrupt: break else: - if self.onionrUtils.validateID(peer): + if self.onionrUtils.validatePubKey(peer): break else: logger.error('Invalid peer ID') diff --git a/onionr/onionrutils.py b/onionr/onionrutils.py index 2289672a..e2096a8b 100644 --- a/onionr/onionrutils.py +++ b/onionr/onionrutils.py @@ -37,9 +37,17 @@ class OnionrUtils: self._core = coreInstance return - def sendPM(self, user, message): + def sendPM(self, pubkey, message): '''High level function to encrypt a message to a peer and insert it as a block''' + forwardKey = self._core.getPeerInfo(pubkey, 'forwardKey') + + if self._core.getPeerInfo(pubkey, 'pubkeyExchanged'): + pass + + if len(forwardKey) > 0: + pass + return def incrementAddressSuccess(self, address):