keep trying to connect to new peers eagerly if we have no outgoing connections
parent
6738eaf222
commit
7f8e63f19b
|
@ -55,6 +55,10 @@ def get_online_peers(comm_inst: 'OnionrCommunicatorDaemon'):
|
||||||
if len(comm_inst.onlinePeers) == 0:
|
if len(comm_inst.onlinePeers) == 0:
|
||||||
logger.debug('Couldn\'t connect to any peers.' +
|
logger.debug('Couldn\'t connect to any peers.' +
|
||||||
f' Last node seen {last_seen} ago.')
|
f' Last node seen {last_seen} ago.')
|
||||||
|
try:
|
||||||
|
get_online_peers(comm_inst)
|
||||||
|
except RecursionError:
|
||||||
|
pass
|
||||||
else:
|
else:
|
||||||
comm_inst.lastNodeSeen = time.time()
|
comm_inst.lastNodeSeen = time.time()
|
||||||
comm_inst.decrementThreadCount('get_online_peers')
|
comm_inst.decrementThreadCount('get_online_peers')
|
||||||
|
|
|
@ -1,9 +1,14 @@
|
||||||
'''
|
"""Onionr - Private P2P Communication.
|
||||||
Onionr - Private P2P Communication
|
|
||||||
|
|
||||||
Connect a new peer to our communicator instance. Does so randomly if no peer is specified
|
Connect a new peer to our communicator instance. Does so randomly if no peer is specified
|
||||||
'''
|
"""
|
||||||
'''
|
import time, sys, secrets
|
||||||
|
import onionrexceptions, logger, onionrpeers
|
||||||
|
from utils import networkmerger, gettransports
|
||||||
|
from onionrutils import stringvalidators, epoch
|
||||||
|
from communicator import peeraction, bootstrappeers
|
||||||
|
from coredb import keydb
|
||||||
|
"""
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
@ -16,13 +21,9 @@
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
'''
|
"""
|
||||||
import time, sys, secrets
|
|
||||||
import onionrexceptions, logger, onionrpeers
|
|
||||||
from utils import networkmerger, gettransports
|
|
||||||
from onionrutils import stringvalidators, epoch
|
|
||||||
from communicator import peeraction, bootstrappeers
|
|
||||||
from coredb import keydb
|
|
||||||
def connect_new_peer_to_communicator(comm_inst, peer='', useBootstrap=False):
|
def connect_new_peer_to_communicator(comm_inst, peer='', useBootstrap=False):
|
||||||
config = comm_inst.config
|
config = comm_inst.config
|
||||||
retData = False
|
retData = False
|
||||||
|
|
Loading…
Reference in New Issue