Onionr/onionr/communicatorutils
Kevin Froman 7830484760 * started refactoring onionrusers into a full module instead of a class
* now use daemon threads to prevent process hanging
2019-06-23 02:00:27 -05:00
..
__init__.py corrected permissions again 2019-06-16 13:20:54 -05:00
announcenode.py corrected permissions again 2019-06-16 13:20:54 -05:00
connectnewpeers.py improved logging messages to be less spammy 2019-06-19 15:29:27 -05:00
cooldownpeer.py corrected permissions again 2019-06-16 13:20:54 -05:00
daemonqueuehandler.py corrected permissions again 2019-06-16 13:20:54 -05:00
deniableinserts.py * bumped nacl and unpaddedbase32 verison 2019-06-19 01:57:13 -05:00
downloadblocks.py * Major core refactoring 2019-06-22 16:16:12 -05:00
housekeeping.py corrected permissions again 2019-06-16 13:20:54 -05:00
lookupadders.py corrected permissions again 2019-06-16 13:20:54 -05:00
lookupblocks.py log to terminal again in places where it should 2019-06-19 19:59:05 -05:00
netcheck.py corrected permissions again 2019-06-16 13:20:54 -05:00
onionrcommunicatortimers.py * started refactoring onionrusers into a full module instead of a class 2019-06-23 02:00:27 -05:00
proxypicker.py corrected permissions again 2019-06-16 13:20:54 -05:00
README.md corrected permissions again 2019-06-16 13:20:54 -05:00
servicecreator.py corrected permissions again 2019-06-16 13:20:54 -05:00
uploadblocks.py corrected permissions again 2019-06-16 13:20:54 -05:00

communicatorutils

The files in this submodule handle various subtasks and utilities for the onionr communicator.

Files:

announcenode.py: Uses a communicator instance to announce our transport address to connected nodes

connectnewpeers.py: takes a communicator instance and has it connect to as many peers as needed, and/or to a new specified peer.

cooldownpeer.py: randomly selects a connected peer in a communicator and disconnects them for the purpose of security and network balancing.

daemonqueuehandler.py: checks for new commands in the daemon queue and processes them accordingly.

deniableinserts.py: insert fake blocks with the communicator for plausible deniability

downloadblocks.py: iterates a communicator instance's block download queue and attempts to download the blocks from online peers

housekeeping.py: cleans old blocks and forward secrecy keys

lookupadders.py: ask connected peers to share their list of peer transport addresses

lookupblocks.py: lookup new blocks from connected peers from the communicator

netcheck.py: check if the node is online based on communicator status and onion server ping results

onionrcommunicataortimers.py: create a timer for a function to be launched on an interval. Control how many possible instances of a timer may be running a function at once and control if the timer should be ran in a thread or not.

proxypicker.py: returns a string name for the appropriate proxy to be used with a particular peer transport address.

servicecreator.py: iterate connection blocks and create new direct connection servers for them.

uploadblocks.py: iterate a communicator's upload queue and upload the blocks to connected peers