From 1b2fee3ab8a3ef16cd8d865653f07f74e6d66f53 Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Fri, 5 May 2023 09:43:21 +0200 Subject: [PATCH] Fixed EPUB output --- docs/Reticulum Manual.epub | Bin 2486715 -> 2486633 bytes docs/Reticulum Manual.pdf | Bin 2383029 -> 2381767 bytes docs/manual/_sources/index.rst.txt | 7 ++++--- docs/manual/objects.inv | Bin 2441 -> 2446 bytes docs/manual/searchindex.js | 2 +- docs/source/conf.py | 3 +++ docs/source/index.rst | 7 ++++--- 7 files changed, 12 insertions(+), 7 deletions(-) diff --git a/docs/Reticulum Manual.epub b/docs/Reticulum Manual.epub index 0d7b68f9ac198afb2009ebd52adb043a3a50fffa..a0c2ce0556a8910ea0fd7847553bfdd629ce3337 100644 GIT binary patch delta 22703 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 U`Gx_25BglCfU<&4qoCUV09F3@SpWb4 delta 22648 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 delta 71779 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 and `EPUB `_ formats. + This manual is also available in `PDF `_ and `EPUB `_ formats. -.. only:: html +.. only:: builder_html Table Of Contents ================= diff --git a/docs/manual/objects.inv b/docs/manual/objects.inv index 0ece76f03cd7f8ad399e5ddeac028d99105cf2dd..62438a138be894a607774bf4dcc1682267258ad4 100644 GIT binary patch delta 16 XcmeAa?h~Hi&1#@$s%N;-+l~_eCusyz delta 10 RcmeAZ?i8Njy)nR!695z*17QFF diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js index 24025f5..ad98fd0 100644 --- a/docs/manual/searchindex.js +++ b/docs/manual/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["examples", "forhumans", "gettingstartedfast", "hardware", "index", "interfaces", "networks", "reference", "support", "understanding", "using", "whatis"], "filenames": ["examples.rst", "forhumans.rst", "gettingstartedfast.rst", "hardware.rst", "index.rst", "interfaces.rst", "networks.rst", "reference.rst", "support.rst", "understanding.rst", "using.rst", "whatis.rst"], "titles": ["Code Examples", "An Explanation of Reticulum for Human Beings", "Getting Started Fast", "Communications Hardware", "Reticulum Network Stack Manual", "Supported Interfaces", "Building Networks", "API Reference", "Support Reticulum", "Understanding Reticulum", "Using Reticulum on Your System", "What is Reticulum?"], "terms": {"A": [0, 2, 5, 6, 7, 9, 11], "number": [0, 2, 5, 6, 7, 9, 10], "ar": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11], "includ": [0, 3, 4, 5, 7, 9], "sourc": [0, 2, 3, 6, 9, 11], "distribut": [0, 2, 6, 7, 9, 10], "reticulum": [0, 5, 6, 7], "you": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "can": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "us": [0, 3, 4, 5, 6, 7, 9], "learn": [0, 2, 8, 9], "how": [0, 2, 3, 5, 6, 9, 10, 11], "write": [0, 2, 5, 7, 9], "your": [0, 2, 3, 4, 5, 6, 8, 9, 11], "own": [0, 2, 6, 7, 9, 10, 11], "program": [0, 3, 4, 5, 7, 9, 11], "The": [0, 2, 3, 4, 5, 6, 7, 11], "demonstr": [0, 5], "bare": 0, "minimum": [0, 5, 6, 9], "setup": [0, 2, 4, 5], "requir": [0, 2, 5, 6, 9, 10, 11], "connect": [0, 3, 4, 5, 6, 7, 9, 10, 11], "network": [0, 3, 5, 7, 9, 10, 11], "from": [0, 2, 3, 5, 6, 7, 9, 10, 11], "In": [0, 2, 3, 5, 6, 7, 9, 10, 11], "about": [0, 2, 3, 5, 6, 7, 9], "five": 0, "line": [0, 2, 3, 5, 6, 9, 10, 11], "have": [0, 2, 3, 5, 6, 7, 9, 10], "stack": [0, 2, 6, 7, 9, 10, 11], "initialis": [0, 7, 10], "readi": [0, 2, 3, 5, 6, 7, 11], "pass": [0, 3, 5, 6, 7, 9, 10], "traffic": [0, 2, 5, 6, 7, 9, 10], "thi": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "rn": [0, 2, 3, 7, 9, 10], "start": [0, 3, 4, 5, 7, 9, 10], "up": [0, 2, 3, 5, 6, 9, 10, 11], "gener": [0, 2, 3, 5, 6, 7, 9, 10, 11], "new": [0, 5, 6, 7, 9, 10], "destin": [0, 2, 4, 5, 6, 7, 10], "let": [0, 2, 5, 6, 9, 10], "user": [0, 2, 5, 6, 9, 10, 11], "send": [0, 5, 7, 9, 10], "an": [0, 2, 3, 5, 6, 7, 9, 10, 11], "import": [0, 2, 3, 5, 6, 7, 8, 9], "argpars": 0, "": [0, 2, 5, 6, 9, 10, 11], "defin": [0, 5, 7, 9, 10], "app": [0, 2, 7, 9], "name": [0, 4, 5, 6, 7], "we": [0, 2, 3, 5, 8, 9], "ll": [0, 2, 11], "all": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "creat": [0, 4, 5, 6, 7, 9, 10, 11], "sinc": [0, 2, 5, 6, 7, 9], "basic": [0, 2, 4, 7, 10], "i": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "part": [0, 5, 6, 7, 9], "rang": [0, 2, 3, 5, 6, 9, 10, 11], "util": [0, 3, 4, 5, 9], "put": [0, 3, 5, 10], "them": [0, 2, 3, 5, 6, 8, 9, 10, 11], "within": [0, 2, 5, 6, 7, 9], "namespac": 0, "example_util": [0, 10], "app_nam": [0, 7], "execut": [0, 2, 5, 7, 10], "when": [0, 2, 3, 5, 6, 7, 9, 10], "def": 0, "program_setup": 0, "configpath": 0, "must": [0, 2, 5, 6, 7, 9], "first": [0, 2, 5, 7, 9, 10], "randomli": [0, 9], "ident": [0, 2, 4, 7, 10, 11], "our": [0, 9], "just": [0, 2, 3, 5, 6, 9, 11], "endpoint": [0, 6, 7, 9], "address": [0, 2, 5, 6, 7, 9, 11], "commun": [0, 2, 4, 5, 6, 7, 8, 9, 10, 11], "also": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "exist": [0, 2, 3, 5, 9, 10, 11], "which": [0, 2, 5, 6, 7, 9, 10], "know": [0, 2, 3, 6, 7, 9, 11], "thei": [0, 2, 5, 6, 7, 9, 10], "reachabl": [0, 2, 5, 6, 7, 9, 10], "autoomat": 0, "path": [0, 2, 3, 5, 7, 9, 10], "anywher": [0, 5], "els": [0, 2, 6, 9], "IN": [0, 7], "singl": [0, 5, 7, 9, 10, 11], "minimalsampl": 0, "configur": [0, 2, 3, 4, 5, 6, 7, 9, 11], "automat": [0, 2, 3, 5, 6, 7, 9, 10, 11], "prove": [0, 9], "packet": [0, 2, 3, 4, 5, 6, 7, 10, 11], "adress": [0, 7, 9], "By": [0, 2, 5, 7, 9, 10], "do": [0, 2, 3, 5, 7, 9, 11], "proof": [0, 7, 9, 10], "each": [0, 2, 5, 6, 9, 10], "incom": [0, 5, 7, 10], "transmit": [0, 5, 9], "back": [0, 5, 9, 11], "sender": [0, 2, 6, 9, 10], "anyon": [0, 2, 3, 6, 7, 9, 10], "tri": 0, "whether": [0, 5, 7, 9], "wa": [0, 3, 5, 6, 7, 9, 11], "receiv": [0, 2, 5, 7, 9, 10], "correctli": 0, "set_proof_strategi": [0, 7], "prove_al": [0, 7], "everyth": [0, 6, 9], "hand": 0, "over": [0, 3, 4, 5, 7, 9, 10, 11], "control": [0, 2, 3, 4, 6, 7, 9, 11], "loop": 0, "announceloop": 0, "log": [0, 5, 10], "prettyhexrep": 0, "hash": [0, 2, 7, 9, 10], "run": [0, 2, 3, 5, 6, 7, 9, 10, 11], "hit": 0, "enter": [0, 10], "manual": [0, 2, 5, 6, 7, 10], "ctrl": 0, "c": [0, 6, 10], "quit": 0, "until": [0, 2, 5, 7], "exit": [0, 2, 7, 10], "If": [0, 2, 3, 5, 6, 7, 9, 10, 11], "server": [0, 2, 3, 4, 7, 10], "client": [0, 2, 3, 4, 7], "messag": [0, 2, 7, 9, 10], "direct": [0, 2, 3, 6, 7, 9, 10], "toward": [0, 5, 9], "while": [0, 2, 3, 5, 6, 7, 9, 11], "true": [0, 5, 7, 10], "input": [0, 10], "sent": [0, 2, 7, 9, 10], "startup": [0, 10], "get": [0, 3, 4, 5, 7, 11], "pars": 0, "desir": [0, 3, 5, 9], "mode": [0, 2, 3, 4, 9, 10, 11], "__name__": 0, "__main__": 0, "try": [0, 4, 5], "parser": 0, "argumentpars": 0, "descript": [0, 10], "add_argu": 0, "config": [0, 2, 6, 10], "action": 0, "store": [0, 3, 9, 10], "default": [0, 2, 3, 5, 6, 7, 9, 10], "none": [0, 2, 5, 7, 9, 10], "help": [0, 3, 6, 8, 9, 10, 11], "altern": [0, 5, 10], "directori": [0, 10], "type": [0, 2, 4, 5, 6, 7, 10], "str": 0, "arg": 0, "parse_arg": 0, "configarg": 0, "except": [0, 5, 7], "keyboardinterrupt": 0, "print": [0, 5, 10], "found": [0, 2, 5, 6, 9, 10], "http": [0, 2, 8], "github": [0, 2, 8], "com": [0, 2, 8], "markqvist": [0, 2, 8], "blob": [0, 9], "master": [0, 7], "py": [0, 2, 9], "build": [0, 2, 3, 4, 5, 9, 11], "upon": [0, 9], "previou": 0, "explor": [0, 9, 11], "notif": [0, 7], "relev": [0, 3, 5, 7, 9, 10], "set": [0, 2, 3, 5, 6, 7, 9, 10, 11], "callback": [0, 7], "applic": [0, 5, 6, 7, 9, 10, 11], "arriv": [0, 9], "random": [0, 7, 9], "two": [0, 2, 3, 5, 6, 7, 9], "list": [0, 2, 3, 5, 7, 9, 11], "string": [0, 7], "app_data": [0, 7], "fruit": 0, "peach": 0, "quinc": 0, "date": [0, 2], "tangerin": 0, "pomelo": 0, "carambola": 0, "grape": 0, "noble_gas": 0, "helium": 0, "neon": 0, "argon": 0, "krypton": 0, "xenon": 0, "radon": 0, "oganesson": 0, "announcesampl": 0, "space": [0, 2, 3, 6, 9, 11], "destination_1": 0, "destination_2": 0, "handler": [0, 7], "onli": [0, 2, 3, 5, 6, 7, 9, 10, 11], "ask": [0, 2, 3, 7], "chang": [0, 2, 5, 7, 9, 10, 11], "filter": [0, 6, 9], "see": [0, 2, 5, 6, 7, 9, 10, 11], "what": [0, 2, 4, 7, 9], "happen": [0, 7, 9], "announce_handl": 0, "exampleannouncehandl": 0, "aspect_filt": [0, 7], "regist": [0, 7], "transport": [0, 2, 4, 5, 6, 7, 10, 11], "register_announce_handl": [0, 7], "select": [0, 5], "randint": 0, "0": [0, 2, 5, 7, 9, 10, 11], "len": 0, "1": [0, 2, 5, 7, 9, 10], "data": [0, 2, 4, 5, 6, 7, 9, 11], "encod": [0, 7], "utf": 0, "8": [0, 5, 10], "nobl": 0, "ga": 0, "noble_ga": 0, "need": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "class": [0, 6, 7, 11], "method": [0, 2, 5, 7, 9], "take": [0, 2, 5, 9, 10, 11], "option": [0, 2, 3, 4, 6, 7, 9, 10], "argument": [0, 7, 10], "instanc": [0, 4, 5, 7, 9, 10], "some": [0, 2, 3, 5, 6, 7, 9, 10], "want": [0, 2, 3, 5, 6, 9, 10, 11], "aspect": [0, 3, 5, 7, 9], "__init__": [0, 7], "self": [0, 6, 11], "call": [0, 6, 7, 9, 11], "system": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11], "match": [0, 5, 9, 10], "specif": [0, 3, 4, 5, 7, 10, 11], "cannot": [0, 2, 11], "wildcard": 0, "received_announc": [0, 7], "destination_hash": [0, 7, 10], "announced_ident": [0, 7], "contain": [0, 6, 7, 9, 10], "follow": [0, 2, 3, 5, 7, 8, 9, 10, 11], "decod": 0, "plaintext": [0, 7], "unencrypt": [0, 7, 9], "inform": [0, 2, 4, 5, 6, 7, 9, 10], "ani": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11], "listen": [0, 5, 9, 10], "sy": 0, "did": 0, "one": [0, 2, 3, 5, 6, 7, 9, 10, 11], "public_inform": 0, "ad": [0, 3, 4, 5, 6, 7, 9, 11], "so": [0, 2, 3, 5, 6, 7, 8, 9, 11], "differ": [0, 2, 3, 5, 6, 7, 9, 10, 11], "plain": [0, 5, 7, 9], "uncencrypt": 0, "broadcast_destin": 0, "specifi": [0, 2, 3, 5, 6, 7, 10], "everi": [0, 5, 6, 7, 9], "time": [0, 2, 3, 5, 6, 7, 9, 10], "set_packet_callback": [0, 7], "packet_callback": 0, "main": 0, "broadcastloop": 0, "simpli": [0, 2, 3, 5, 6, 9, 10], "out": [0, 2, 3, 5, 6, 7, 9, 10, 11], "r": [0, 5, 9, 10], "n": [0, 9, 10], "end": [0, 5, 6, 7, 9, 11], "stdout": [0, 5, 10], "flush": 0, "text": [0, 2, 6, 9], "prompt": 0, "channelarg": 0, "between": [0, 5, 6, 7, 9], "interfac": [0, 3, 4, 6, 7, 10], "simpl": [0, 3, 7, 9, 10, 11], "respond": [0, 7], "receipt": [0, 7, 9], "choos": [0, 2, 5, 9], "global": [0, 2, 5, 6, 9, 11], "server_ident": 0, "queri": [0, 2, 7], "abl": [0, 2, 5, 6, 7, 9, 10], "verifi": [0, 7, 9], "repli": [0, 10], "encrypt": [0, 2, 6, 7, 9, 11], "wai": [0, 2, 5, 6, 7, 9], "certain": [0, 5, 6, 8, 9], "than": [0, 2, 5, 6, 7, 9, 10], "read": [0, 2, 5, 7, 9, 10], "echo_destin": 0, "tell": [0, 5], "function": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11], "server_callback": 0, "wait": [0, 5, 9, 10], "go": [0, 2, 5, 9], "handl": [0, 3, 5, 6, 7, 9, 10, 11], "reception_stat": 0, "is_connected_to_shared_inst": 0, "reception_rssi": 0, "get_packet_rssi": 0, "packet_hash": 0, "reception_snr": 0, "get_packet_snr": 0, "rssi": 0, "dbm": [0, 5, 10], "snr": 0, "db": 0, "destination_hexhash": 0, "timeout": [0, 7, 10], "binari": [0, 2, 7, 9], "represent": [0, 7], "command": [0, 2, 5, 10], "dest_len": 0, "truncated_hashlength": [0, 7], "2": [0, 5, 7, 9, 10], "rais": [0, 7], "valueerror": [0, 7], "length": [0, 5, 7, 9], "invalid": [0, 7], "hex": 0, "hexadecim": [0, 9, 10], "charact": 0, "byte": [0, 7, 9, 10, 11], "format": [0, 4, 11], "fromhex": 0, "e": [0, 6, 10], "check": [0, 2, 7, 9, 10], "overrid": 0, "loglevel": [0, 7, 10], "provid": [0, 2, 3, 4, 5, 6, 7, 9, 11], "feedback": [0, 4], "log_info": 0, "doe": [0, 2, 3, 4, 5, 6, 7, 9, 10], "load": [0, 2, 7, 10], "has_path": [0, 7], "To": [0, 2, 3, 5, 6, 9, 10, 11], "public": [0, 4, 5, 7], "kei": [0, 4, 6, 7, 11], "done": [0, 2, 5, 6, 9, 10], "recal": [0, 7], "modul": [0, 2, 3, 9, 10, 11], "known": [0, 7, 9, 10], "return": [0, 7, 10], "outgo": [0, 5, 7, 9, 10], "got": 0, "correct": [0, 9], "convent": 0, "request_destin": 0, "add": [0, 2, 5, 6, 7, 10], "echo_request": 0, "get_random_hash": [0, 7], "successfulli": [0, 9], "packetreceipt": [0, 4, 7], "packet_receipt": [0, 7], "set_timeout": [0, 7], "set_timeout_callback": [0, 7], "packet_timed_out": 0, "deliveri": [0, 2, 7, 11], "set_delivery_callback": [0, 7], "packet_deliv": 0, "yet": [0, 2, 5, 9, 11], "retri": [0, 7, 9], "onc": [0, 2, 3, 5, 6, 7, 9, 10, 11], "request_path": [0, 7], "statu": [0, 2, 4, 5, 7, 9, 10], "deliv": [0, 7], "rtt": [0, 7, 9], "get_rtt": [0, 7], "round": [0, 7, 10], "3": [0, 5, 9, 10, 11], "rttstring": 0, "second": [0, 5, 7, 9, 10, 11], "1000": 0, "millisecond": [0, 10], "proof_packet": 0, "valid": [0, 5, 7, 9, 10], "trip": [0, 7, 10], "fail": [0, 2, 7], "store_tru": 0, "t": [0, 2, 5, 6, 7, 10], "metavar": 0, "float": [0, 7], "narg": 0, "timeoutarg": 0, "print_help": 0, "establish": [0, 2, 5, 6, 7, 11], "remot": [0, 4, 7, 10], "forth": 0, "o": [0, 2, 9, 10, 11], "refer": [0, 2, 4], "latest": [0, 2, 5, 10], "latest_client_link": 0, "server_destin": 0, "linkexampl": 0, "set_link_established_callback": [0, 7], "client_connect": 0, "server_loop": 0, "set_link_closed_callback": [0, 7], "client_disconnect": 0, "server_packet_receiv": 0, "disconnect": 0, "activ": [0, 2, 5, 7, 9], "last": [0, 5, 7], "reply_text": 0, "reply_data": 0, "server_link": 0, "sleep": [0, 10], "begin": [0, 3, 7], "And": 0, "client_packet_receiv": 0, "close": [0, 6, 7, 10], "link_establish": 0, "link_clos": 0, "interact": [0, 2, 7, 9, 10], "client_loop": 0, "becom": [0, 2, 6, 9], "should_quit": 0, "fals": [0, 5, 7, 10], "should": [0, 2, 5, 6, 7, 9, 10, 11], "q": [0, 10], "teardown": [0, 7], "mdu": [0, 7], "size": [0, 2, 5, 7, 9, 10], "exce": [0, 5, 7], "log_error": 0, "error": [0, 2, 8, 10], "ha": [0, 2, 3, 5, 6, 7, 9, 11], "been": [0, 2, 3, 5, 6, 7, 9, 11], "later": [0, 2, 5, 10], "teardown_reason": 0, "now": [0, 2, 6, 9, 10], "elif": 0, "destination_clos": 0, "exit_handl": 0, "5": [0, 2, 5, 10], "_exit": 0, "identifi": [0, 5, 7, 9, 10], "intiat": 0, "initi": [0, 6, 7, 9, 11], "peer": [0, 2, 5, 7, 9, 10], "identifyexampl": 0, "set_remote_identified_callback": [0, 7], "remote_identifi": 0, "origin": [0, 6, 9], "displai": [0, 9], "remote_p": 0, "unidentifi": 0, "get_remote_ident": [0, 7], "client_ident": 0, "sendig": 0, "perform": [0, 2, 5, 6, 9], "random_text_gener": 0, "request_id": [0, 7], "link_id": [0, 7], "remote_ident": [0, 7], "requested_at": [0, 7], "look": [0, 2, 5, 9, 10], "On": [0, 2, 5, 10], "full": [0, 5, 7, 9, 10, 11], "moon": 0, "becki": 0, "upset": 0, "stai": [0, 9, 10], "awai": [0, 5, 6, 9, 10], "pet": 0, "shop": 0, "stock": 0, "requestexampl": 0, "register_request_handl": [0, 7], "response_gener": [0, 7], "allow": [0, 2, 3, 5, 6, 7, 9, 10, 11], "allow_al": [0, 7], "response_callback": [0, 7], "got_respons": 0, "failed_callback": [0, 7], "request_fail": 0, "request_receipt": [0, 7], "request_receiv": 0, "structur": [0, 7, 9, 11], "datetim": 0, "vendor": [0, 3], "umsgpack": 0, "share": [0, 2, 6, 7, 9, 10], "object": [0, 7], "subclass": [0, 7], "messagebas": [0, 4, 7], "ensur": [0, 5, 7, 9, 11], "serial": [0, 2, 3, 4, 9, 11], "deseri": 0, "multiplex": 0, "other": [0, 2, 3, 5, 6, 7, 9, 10], "both": [0, 2, 3, 5, 6, 7, 9, 10, 11], "same": [0, 2, 3, 5, 6, 7, 9, 10], "definit": [0, 9], "note": [0, 3, 4, 5, 7, 9, 10], "wish": [0, 9, 10], "make": [0, 2, 3, 5, 8, 9, 10], "stringmessag": 0, "convei": 0, "timestamp": 0, "msgtype": [0, 7], "variabl": [0, 7], "assign": [0, 9, 10], "integ": 0, "valu": [0, 5, 7, 9], "constructor": 0, "uniqu": [0, 7, 9, 11], "across": [0, 3, 6], "0xf000": [0, 7], "reserv": [0, 7, 9], "0x0101": 0, "callabl": [0, 7], "paramet": [0, 3, 5, 6, 7, 9, 10], "empti": 0, "version": [0, 2, 9, 10], "unpack": [0, 7], "final": [0, 7, 9], "implement": [0, 5, 6, 7, 8, 9, 11], "pack": [0, 7], "raw": [0, 3, 7], "payload": [0, 7, 9], "packag": [0, 2, 5, 9], "bundl": 0, "could": [0, 2, 5, 6, 7, 9, 11], "struct": 0, "python": [0, 4, 7, 9, 10, 11], "more": [0, 2, 3, 5, 6, 7, 9, 10, 11], "fit": 0, "entir": [0, 6, 7, 9, 10], "avail": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "properti": [0, 6, 7], "slightli": [0, 2], "less": [0, 5, 7, 9, 11], "due": [0, 6], "header": [0, 7, 9], "content": [0, 2, 6, 10], "stream": [0, 7, 9], "packb": 0, "unpackb": 0, "channelexampl": 0, "get_channel": [0, 7], "register_message_typ": [0, 7], "add_message_handl": [0, 7], "server_message_receiv": 0, "param": 0, "deserializ": 0, "unless": [0, 2, 5, 7, 9], "preced": 0, "indic": 0, "isinst": 0, "reply_messag": 0, "order": [0, 7, 10], "were": [0, 6], "consid": [0, 7, 9, 11], "subsequ": [0, 9], "skip": 0, "packed_s": 0, "is_ready_to_send": [0, 7], "pleas": [0, 2, 5, 7, 10, 11], "pend": 0, "complet": [0, 2, 3, 5, 6, 7, 9, 10, 11], "client_message_receiv": 0, "reader": [0, 7], "writer": [0, 7], "__future__": 0, "annot": 0, "latest_buff": 0, "bufferexampl": 0, "old": [0, 3, 8, 9], "stream_id": [0, 7], "bit": [0, 2, 5, 7, 9, 10, 11], "like": [0, 2, 3, 5, 6, 7, 9, 10, 11], "file": [0, 2, 3, 5, 6, 7, 9, 10, 11], "descriptor": 0, "actual": [0, 2, 5, 9], "separ": [0, 2, 5, 6, 9, 10], "unidirect": 0, "flow": [0, 5, 6], "opposit": [0, 5], "create_bidirectional_buff": [0, 7], "server_buffer_readi": 0, "ready_byt": [0, 7], "int": [0, 7], "otherwis": [0, 7], "forc": [0, 10], "server_client_connect": 0, "detail": [0, 2, 4, 5, 7, 10, 11], "client_buffer_readi": 0, "termin": [0, 2, 7], "download": [0, 5, 10], "resourc": [0, 2, 4, 7, 8], "effici": [0, 2, 5, 9, 11], "serv": [0, 3, 5, 6, 9, 10], "larg": [0, 3, 5, 6, 7, 9, 11], "transfer": [0, 7, 9, 10, 11], "recommend": [0, 2, 9], "compress": [0, 7, 9], "hashmap": 0, "sequenc": [0, 7, 9, 11], "long": [0, 2, 3, 5, 7, 9], "slow": [0, 5, 9], "cpu": [0, 9], "probabl": [0, 2, 6, 9, 10, 11], "result": [0, 9, 10], "befor": [0, 2, 5, 7, 9, 10], "prepar": [0, 6], "instead": [0, 2, 5, 9, 10], "slice": 0, "chunk": 0, "suitabl": [0, 2, 5, 6, 9, 11], "thread": 0, "app_timeout": 0, "45": [0, 9], "serve_path": 0, "here": [0, 2, 3, 5, 9, 10], "conveni": 0, "list_fil": 0, "entri": [0, 2, 9], "listdir": 0, "isfil": 0, "join": [0, 2, 6, 8, 9], "host": [0, 2, 5, 9, 10], "still": [0, 2, 6, 9], "isdir": 0, "list_packet": 0, "list_receipt": 0, "list_deliv": 0, "list_timeout": 0, "too": [0, 6], "mani": [0, 2, 3, 5, 6, 7, 9, 10, 11], "split": 0, "filelist": 0, "multipl": [0, 5, 6, 9, 10], "hint": 0, "alreadi": [0, 2, 3, 6, 7, 9, 10], "support": [0, 2, 4, 6, 9, 10, 11], "after": [0, 2, 5, 6, 7, 9, 10], "re": [0, 5, 7, 9], "keep": [0, 6, 7, 9, 10, 11], "open": [0, 3, 5, 6, 7, 8, 9, 10, 11], "client_request": 0, "longer": [0, 2, 6, 9, 10], "filenam": 0, "rb": 0, "file_resourc": 0, "resource_sending_conclud": 0, "somethign": 0, "went": 0, "wrong": [0, 5], "don": [0, 2, 6, 7, 10], "unknown": [0, 5, 7, 9], "conclud": [0, 7], "hasattr": 0, "server_fil": 0, "current": [0, 2, 4, 5, 7, 9], "current_download": 0, "current_filenam": 0, "statist": [0, 5, 8], "download_start": 0, "download_finish": 0, "download_tim": 0, "transfer_s": 0, "file_s": 0, "expect": [0, 5, 7, 9, 10], "normal": [0, 5, 7, 10], "accordingli": 0, "filelist_receiv": 0, "advertis": [0, 7], "set_resource_strategi": [0, 7], "accept_al": [0, 7], "set_resource_started_callback": [0, 7], "download_began": 0, "set_resource_concluded_callback": [0, 7], "download_conclud": 0, "menu": 0, "menu_mod": 0, "down": [0, 3, 5, 7], "request_packet": 0, "create_receipt": [0, 7], "print_menu": 0, "25": [0, 4, 11], "user_input": 0, "screen": 0, "variou": [0, 2, 5, 6, 9, 10], "state": 0, "It": [0, 2, 3, 5, 7, 9, 10, 11], "uninterest": 0, "won": 0, "clear_screen": 0, "print_filelist": 0, "percent": 0, "get_progress": [0, 7], "100": [0, 5, 9], "rprogress": 0, "save_error": 0, "disk": [0, 7], "hour": [0, 5], "rem": 0, "divmod": 0, "3600": [0, 5], "minut": [0, 2, 5, 9], "60": 0, "timestr": 0, "05": 0, "2f": 0, "ttime": 0, "taken": [0, 9], "tfile": 0, "size_str": 0, "tdata": 0, "teffect": 0, "rate": [0, 4, 7, 10], "suffix": 0, "b": [0, 6, 10], "ttransfer": 0, "press": 0, "index": [0, 2, 4], "enumer": 0, "filelist_data": 0, "extend": [0, 2, 7], "local": [0, 2, 5, 6, 7, 9, 10, 11], "append": [0, 9], "visibl": 0, "updat": [0, 2, 7, 9, 10], "small": [0, 5, 6, 9, 11], "job": 0, "potenti": [0, 5, 8, 9, 10, 11], "target": [0, 5, 10], "filelist_timeout_job": 0, "setdaemon": 0, "detect": 0, "shown": 0, "progress": [0, 7, 11], "total_s": 0, "saved_filenam": 0, "counter": 0, "wb": 0, "human": [0, 7, 8, 9], "readabl": [0, 7, 9], "num": 0, "unit": [0, 2, 7, 10], "ki": 0, "mi": 0, "gi": 0, "ti": [0, 9], "pi": [0, 4, 6, 9, 10, 11], "ei": 0, "zi": 0, "last_unit": 0, "yi": 0, "k": 0, "m": [0, 2, 9, 10], "g": 0, "p": [0, 10], "z": 0, "y": 0, "ab": 0, "1024": 0, "clear": [0, 7, 9, 10], "cl": 0, "nt": 0, "dir": 0, "best": [2, 9, 11], "guid": [2, 3, 9], "outlin": [2, 3, 9], "sensibl": [2, 3], "scenario": [2, 4, 9], "relat": 2, "easiest": [2, 3, 5, 9], "via": [2, 3, 5, 8, 9, 10, 11], "pip": [2, 3, 10], "manag": [2, 6, 7, 9, 10, 11], "sudo": [2, 10], "apt": 2, "python3": [2, 3], "pamac": 2, "similar": [2, 3, 5, 6, 7, 10, 11], "dowload": 2, "releas": [2, 5, 9], "wheel": 2, "channel": [2, 4, 5, 6, 7, 8, 9, 11], "offlin": 2, "4": [7, 9, 10], "6": [7, 10], "py3": 2, "whl": 2, "platform": [3, 4, 9], "mai": [2, 5, 7, 9, 10], "case": [2, 3, 5, 6, 9, 10], "usual": 2, "essenti": [2, 5, 9], "debian": [4, 9, 10], "ubuntu": [4, 10], "deriv": [2, 7, 9, 11], "arch": 2, "manjaro": 2, "devel": 2, "fedora": 2, "dnf": 2, "groupinstal": 2, "tool": [2, 3, 9, 10, 11], "librari": 2, "built": [2, 5, 9, 11], "few": [2, 3, 5, 6, 9, 10, 11], "even": [2, 5, 6, 9, 10, 11], "extrem": [2, 9, 10, 11], "low": [2, 3, 5, 6, 9, 11], "bandwidth": [2, 5, 6, 7, 9, 10, 11], "These": [2, 5, 7, 9, 10], "feel": 2, "work": [2, 3, 5, 6, 9, 10, 11], "design": [2, 3, 6, 9, 11], "well": [2, 3, 5, 6, 7, 9, 11], "lora": [2, 3, 4, 9, 11], "link": [2, 3, 4, 5, 6, 7, 10, 11], "wifi": [2, 4, 5, 6, 9, 10, 11], "wire": [2, 3, 4, 5, 11], "ethernet": [2, 3, 5, 6, 9, 11], "combin": [2, 4, 6, 9], "As": [2, 3, 5, 6, 7, 9, 11], "easi": [2, 3, 5, 9, 10, 11], "experi": [2, 9], "without": [2, 3, 6, 9, 11], "transceiv": [2, 3, 5, 9, 11], "infrastructur": [2, 3, 5, 6, 9, 10], "launch": [2, 10], "devic": [2, 3, 4, 5, 6, 7, 9, 10], "enough": [2, 3, 9], "physic": [2, 3, 5, 9, 10], "rnsh": 2, "fulli": [2, 3, 9, 10, 11], "session": [2, 9], "pipe": [2, 4, 11], "ssh": 2, "suit": [2, 3, 9, 10], "featur": [2, 8, 9, 11], "delai": [2, 5, 9, 10], "browser": 2, "page": [2, 4, 9], "dynam": [2, 10], "render": 2, "authent": [2, 5, 6, 7, 9, 10, 11], "face": [2, 5], "protocol": [2, 3, 4, 5, 11], "lxmf": 2, "anoth": [2, 7, 9, 10], "project": 2, "nomadnet": 2, "veri": [2, 3, 5, 6, 7, 8, 9, 10, 11], "might": [2, 5, 6, 9, 10], "reboot": 2, "again": [2, 5, 9, 10], "would": [2, 5, 6, 7, 9], "rather": [2, 7], "graphic": 2, "linux": [2, 9], "maco": 2, "peopl": [2, 9], "compat": [2, 3, 5, 7, 9], "i2p": [2, 4, 11], "qr": 2, "paper": 2, "anyth": [2, 5, 9, 10, 11], "interoper": [2, 3, 6, 9, 11], "come": [2, 9], "easier": [2, 5, 6, 10], "rnsd": [2, 4], "background": [2, 5], "foreground": 2, "servic": [2, 4, 6], "rnstatu": [2, 4, 5, 9], "rnpath": [2, 4, 5], "rnprobe": [2, 4], "view": [2, 5, 9, 10], "chapter": [2, 3, 5, 6, 7, 9, 10, 11], "locat": [2, 3, 6, 9, 10], "exampl": [2, 3, 4, 5, 7, 9, 10, 11], "exampleconfig": [2, 10], "broadcast": [2, 4, 5, 7, 9], "domain": [2, 5], "further": [2, 4, 5], "tcp": [2, 3, 4, 6, 9, 11], "There": [2, 6, 9, 11], "subnet": [2, 6], "rout": [2, 5, 6, 7, 9, 10, 11], "tabl": [2, 5, 6, 9, 10], "thing": 2, "discov": [2, 5], "topographi": [2, 6, 9], "situat": [2, 3, 5, 6, 9], "where": [2, 3, 4, 5, 6, 7, 9, 10], "utilis": [2, 6, 7, 10, 11], "extern": [2, 5, 7, 11], "often": [2, 5, 6, 9, 10], "suffici": [2, 5, 9, 10], "act": [2, 7, 9, 10], "gatewai": [2, 5, 6, 9], "enabl": [2, 3, 5, 6, 7, 9, 10, 11], "wider": [2, 5, 9, 10], "autointerfac": [2, 3, 5, 10], "possibli": 2, "offer": [2, 4, 5, 7, 9], "carefulli": 2, "tcpserverinterfac": [2, 5], "access": [2, 4, 5, 6, 7, 10], "ip": [2, 3, 5, 9, 10, 11], "faster": [2, 5, 9], "lower": [2, 5, 10], "latenc": [2, 9, 11], "energi": 2, "i2pinterfac": [2, 5], "howev": [2, 6, 9], "leak": 2, "reveal": [2, 7, 9, 11], "who": [2, 9], "inspect": [2, 5, 6, 9, 10], "someon": [2, 5], "determin": [2, 7, 9], "adversari": 2, "record": [2, 9], "metadata": 2, "transmiss": [2, 5, 7, 9], "though": [2, 5, 9], "publicli": 2, "most": [2, 3, 5, 6, 9, 10], "anymor": 2, "through": [2, 3, 5, 6, 7, 9, 10, 11], "invis": [2, 5], "daemon": [2, 5, 7, 10], "parallel": 2, "For": [2, 3, 5, 6, 7, 9, 10, 11], "alwai": [2, 5, 7, 9, 10], "node": [2, 4, 5, 6, 10, 11], "i2pd": [2, 5], "mix": [2, 5, 6, 10], "hide": 2, "relai": 2, "extra": [2, 5, 6, 10], "comput": [2, 9, 11], "power": [2, 3, 5, 9, 10], "attack": 2, "form": [2, 5, 6, 7, 9], "deep": 2, "much": [2, 5, 6, 9, 10], "difficult": [2, 3], "non": [2, 7, 9], "behind": [2, 9], "firewal": [2, 5], "nat": 2, "preserv": [2, 7], "anonym": [2, 6, 7, 9, 11], "care": [2, 7, 11], "experiment": [2, 11], "made": [2, 7, 9], "dublin": 2, "hub": [2, 5], "tcpclientinterfac": [2, 3, 5], "ye": [2, 5, 9, 10], "target_host": [2, 5], "target_port": [2, 5], "4965": [2, 10], "frankfurt": [2, 10], "5377": 2, "uxg5kubabakh3jtnvsipingbr5574dle7bubvip7llfvwx2tgrua": 2, "b32": [2, 5], "point": [2, 3, 5, 6, 9, 10], "absolut": [2, 8, 11], "usag": [2, 4, 5, 7, 8, 10], "occasion": 2, "test": [2, 9], "failur": [2, 5], "guarante": [2, 9], "hardwar": [2, 4, 5, 6, 7, 9, 10, 11], "wide": [2, 3, 5, 9, 11], "section": [2, 3, 5, 6, 9, 10], "easili": [2, 5, 6, 9, 10, 11], "cheapli": 2, "rnode": [2, 4, 9, 10, 11], "purpos": [2, 3, 5, 7, 9], "digit": [2, 3, 9, 11], "integr": [2, 6, 9], "yourself": [2, 9, 11], "custom": [2, 5, 7, 9, 11], "firmwar": [2, 3, 9, 10], "board": [2, 4, 9, 11], "auto": [2, 3, 4, 7, 9], "script": [2, 3], "prefer": [2, 9], "purchas": [2, 6, 9, 11], "supplier": [2, 4], "addit": [2, 3, 5, 7, 9, 10, 11], "privat": [2, 5, 7, 8, 9, 11], "secur": [2, 9, 11], "uncensor": 2, "mesh": [2, 5, 6, 11], "think": 2, "welcom": 2, "head": 2, "discuss": [2, 3, 9], "propos": 2, "pip3": [2, 10], "abov": [2, 3, 5, 9, 10], "next": [2, 6, 7, 9], "step": [2, 3], "pyseri": 2, "netifac": [], "api": [2, 4, 9, 11], "associ": [2, 7, 9], "recip": 2, "cryptographi": [2, 9, 11], "clone": 2, "repositori": [2, 8, 9], "git": 2, "move": [2, 5, 9, 10], "folder": 2, "symlink": [2, 10], "cd": 2, "ln": [2, 10], "echo": [2, 4, 10], "ve": 2, "immedi": [2, 5, 10], "necessari": [2, 3, 5, 6, 7, 9], "nano": 2, "repeat": 2, "process": [2, 3, 5, 7, 9], "h": [2, 10], "ping": [2, 10], "replac": [2, 9, 10], "below": [2, 3, 5, 10], "174a64852a75682259ad8b921b8bf416": 2, "filetransf": [2, 4, 7], "understand": [2, 4, 7, 10], "submit": 2, "pull": 2, "request": [2, 4, 5, 7, 9, 10], "good": [2, 3, 6, 9, 10], "idea": [2, 9, 10], "introduc": [2, 9], "disucss": 2, "forum": 2, "maintain": [2, 9], "place": [2, 6, 9, 10], "architectur": 2, "precompil": 2, "dev": [2, 5, 10], "64": [2, 9, 10], "32": [2, 9], "termux": 2, "f": 2, "droid": 2, "emul": 2, "environ": [2, 6, 9], "abil": [2, 3], "pkg": 2, "sure": [2, 3, 10], "upgrad": [2, 9], "Then": 2, "reason": [2, 5, 9], "attempt": [2, 3, 7], "openssl": [2, 9], "libffi": 2, "rust": 2, "compil": 2, "export": 2, "cargo_build_target": 2, "aarch64": 2, "sever": [2, 6, 7, 10], "succe": 2, "softwar": [2, 3, 5, 9, 11], "possibl": [2, 3, 5, 6, 7, 9, 10, 11], "apk": 2, "tutori": 2, "code": [2, 3, 4, 5, 10], "startig": 2, "rare": [2, 5], "obscur": 2, "unusu": 2, "rnspure": 2, "No": [2, 5, 9, 10, 11], "matter": [2, 5], "perfectli": 2, "pyca": [2, 9], "cryptograph": [2, 4, 6, 11], "primit": [2, 4], "One": [3, 7], "truli": [3, 9], "valuabl": [3, 8], "almost": [3, 5, 9, 10], "conceiv": 3, "kind": [3, 5, 6, 9], "medium": [3, 5, 6, 7, 9, 11], "flexibl": [3, 5, 11], "cover": [3, 9, 11], "wireless": [3, 6], "decad": 3, "radio": [3, 4, 5, 6, 7, 9, 10, 11], "modem": [3, 5, 6, 7, 9, 11], "modern": [3, 9], "millimet": 3, "wave": 3, "backhaul": [3, 6], "oper": [3, 5, 6, 7, 9, 10, 11], "chanc": 3, "box": 3, "glue": 3, "littl": [3, 9], "effort": 3, "pipeinterfac": [3, 5], "kiss": [3, 4, 10, 11], "simplyequip": 3, "broad": 3, "abund": 3, "sometim": 3, "especi": [3, 5], "scratch": 3, "real": [3, 6, 11], "world": [3, 6, 11], "minim": [3, 4, 9], "cost": [3, 9, 11], "fundament": [3, 9], "categori": 3, "emploi": [3, 9], "reliabl": [3, 5, 6, 7, 9, 11], "commonli": 3, "either": [3, 5, 6, 7, 9, 10], "expens": 3, "hard": 3, "hungri": 3, "allevi": 3, "particular": 3, "plaform": 3, "depend": [3, 4, 6, 7, 9, 10], "its": [3, 5, 7, 9], "compon": [3, 8, 9], "frequenc": [3, 5, 9, 10], "band": [3, 9], "scheme": 3, "limit": [3, 6, 9], "common": [3, 4, 6, 9, 10, 11], "ism": [3, 9], "avoid": [3, 9, 10], "confus": [3, 9], "layer": [3, 5, 6, 9, 11], "noth": [3, 11], "lorawan": [3, 9], "standard": [3, 9], "central": [3, 6, 9], "iot": 3, "overhead": [3, 5, 9], "high": [3, 5, 9, 11], "level": [3, 5, 9, 10], "directli": [3, 5, 7, 9, 10, 11], "replic": [3, 9], "togeth": [3, 9, 10], "exact": [3, 5, 9], "explain": [3, 7], "approach": [3, 9, 10], "develop": [3, 4, 7, 8, 9, 11], "boil": 3, "obtain": [3, 7, 9], "autom": [3, 8, 9], "provis": [3, 10], "rnodeinterfac": [3, 5, 10], "ic": 3, "semtech": 3, "sx1276": 3, "esp32": 3, "manufactur": 3, "io": [3, 10], "avr": 3, "atmega1284p": 3, "rnodeconf": [3, 4], "autoinstal": [3, 10], "seri": 3, "question": [3, 5], "port": [3, 4, 5, 6, 9, 11], "air": [3, 11], "id": [3, 5, 7, 9, 10], "itself": [3, 4, 9], "touch": [3, 11], "produc": 3, "short": [3, 9, 10], "bridg": [3, 4], "behav": 3, "mean": [3, 5, 6, 9, 10], "dhcp": [3, 5, 10], "dn": 3, "least": [3, 5, 9, 10, 11], "transpar": [3, 5, 9, 10], "capac": [3, 5, 7, 9], "distanc": [3, 9], "ubiqu": 3, "airmax": 3, "ltu": 3, "mikrotik": 3, "exhaust": [3, 9], "rel": [3, 9, 11], "cheap": [3, 9], "co": [3, 5, 11], "concurr": [3, 9, 10], "pattern": [3, 9], "gain": [3, 7, 9], "antenna": 3, "backbon": 3, "area": [3, 5, 6, 9, 11], "aim": [4, 9], "particip": [4, 6, 9], "pdf": 4, "epub": 4, "caveat": 4, "emptor": 4, "fast": [4, 5, 7, 9], "standalon": 4, "instal": [4, 5, 6, 9, 10, 11], "resolv": [4, 5], "issu": [4, 6, 8], "base": [4, 5, 6, 7, 9, 10, 11], "shell": [4, 10], "nomad": 4, "sideband": 4, "With": [4, 5, 6, 9, 10], "internet": [4, 5, 9, 11], "testnet": [4, 10], "arm64": 4, "raspberri": [4, 6, 9, 10, 11], "android": 4, "pure": [4, 9], "rncp": 4, "rnx": 4, "improv": [4, 5, 8], "fix": [4, 9], "motiv": 4, "goal": [4, 5], "introduct": 4, "announc": [4, 7, 10], "mechan": [4, 5], "reach": [4, 5, 6], "prioritis": [4, 5, 6, 7], "propag": [4, 5, 7], "rule": [4, 5], "udp": [4, 6, 9, 10, 11], "ax": [4, 11], "concept": [4, 9, 10], "overview": [4, 5, 9], "interconnect": [4, 5, 9], "site": [4, 5], "growth": 4, "converg": [4, 9], "identif": [4, 5, 11], "respons": [4, 7, 9], "buffer": [4, 5, 7], "donat": 4, "contribut": 4, "requestreceipt": [4, 7], "rawchannelread": [4, 7], "rawchannelwrit": [4, 7], "search": 4, "distinct": [5, 9], "topologi": [5, 9], "endless": 5, "describ": [5, 7, 9], "give": [5, 9, 10], "respect": [5, 11], "discover": 5, "autoconfigur": [5, 11], "ipv6": [5, 10], "router": [5, 10], "sort": [5, 9], "switch": [5, 9, 10], "os": [2, 5], "interface_en": [5, 10], "isol": [2, 5, 10], "lan": 5, "group": [5, 7, 9], "group_id": 5, "kernel": [5, 10, 11], "wlan0": 5, "eth1": 5, "Or": [5, 10, 11], "ignor": [5, 7, 9], "ones": [5, 10], "ignored_devic": 5, "tun0": 5, "eth0": 5, "multicast": 5, "autodiscov": 5, "discoveri": [5, 9, 10], "scope": 5, "admin": 5, "organis": [5, 6, 8], "custom_network_nam": 5, "discovery_scop": 5, "discovery_port": 5, "48555": 5, "data_port": 5, "49555": 5, "frequent": 5, "block": 5, "inbound": [5, 7], "portabl": [5, 9], "persist": [5, 10], "achiev": [5, 7, 9], "geti2p": 5, "net": 5, "websit": 5, "base32": 5, "comma": 5, "5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq": 5, "output": [5, 10], "event": 5, "simplest": [5, 9], "tunnel": [5, 9, 11], "interchang": 5, "degre": 5, "retain": 5, "eas": [5, 9], "simpler": 5, "4242": 5, "listen_ip": 5, "listen_port": 5, "bind": 5, "10": [5, 9, 10], "88": 5, "i2p_tunnel": 5, "127": 5, "5001": 5, "dedic": [5, 9], "natur": 5, "toler": 5, "intermitt": 5, "gracefulli": 5, "restor": 5, "reappear": 5, "hostnam": 5, "expos": [5, 7], "soundmodem": 5, "kiss_fram": 5, "tnc": [5, 7, 10, 11], "8001": 5, "caution": 5, "frame": 5, "conjunct": 5, "never": [5, 7, 9], "disabl": [5, 9, 10], "intern": [5, 7, 9], "recoveri": 5, "greatli": 5, "unreli": 5, "implic": 5, "better": 5, "udpinterfac": 5, "forward_ip": 5, "255": 5, "forward_port": 5, "assum": [5, 9], "55": 5, "72": 5, "24": 5, "equival": 5, "forward": [5, 7, 9, 11], "segment": [5, 6, 7, 9, 11], "cours": [5, 9], "15": 5, "16": [5, 9, 10], "ttyusb0": [5, 10], "867": 5, "mhz": [5, 9], "867200000": 5, "125": 5, "khz": 5, "125000": 5, "tx": [5, 10], "7": [5, 9, 10], "mw": 5, "txpower": 5, "spread": [5, 10], "factor": [5, 7, 10], "12": [5, 10], "being": [2, 5, 7, 9], "fastest": [5, 9], "longest": 5, "spreadingfactor": 5, "throough": 5, "codingr": 5, "interv": [5, 7], "id_callsign": 5, "mycal": 5, "id_interv": 5, "600": 5, "homebrew": 5, "amount": [5, 6, 7, 9, 11], "ram": 5, "flow_control": 5, "pair": [5, 7, 9, 10], "laser": 5, "serialinterfac": 5, "baud": 5, "speed": [5, 9, 10], "115200": [5, 10], "databit": [5, 10], "pariti": [5, 10], "stopbit": [5, 10], "stdin": [5, 10], "virtual": [5, 6, 9, 10, 11], "netcat": 5, "l": [5, 10], "5757": 5, "respawn": 5, "respawn_delai": 5, "continu": [5, 7, 8, 11], "scan": 5, "eof": 5, "respawn_interv": 5, "varieti": [5, 9, 10, 11], "openmodem": [5, 11], "period": [5, 7, 9], "beacon": 5, "station": 5, "kissinterfac": [5, 10], "ttyusb1": 5, "preambl": [5, 10], "150": [5, 10], "tail": 5, "txtail": [5, 10], "cdma": 5, "200": [5, 10], "slottim": [5, 10], "20": [5, 9, 10], "elaps": 5, "comment": [5, 10], "amateur": [5, 11], "spectrum": [5, 9], "encapsul": [5, 11], "callsign": 5, "ssid": 5, "realli": [5, 7], "doesn": 5, "incur": 5, "ax25kissinterfac": 5, "no1cll": 5, "ttyusb2": 5, "150m": 5, "increas": [5, 10], "squelch": 5, "rx": 5, "turnaround": 5, "kept": [5, 6, 7, 9], "wast": 5, "airtim": 5, "behaviour": [5, 10], "bring": 5, "brought": [5, 10], "access_point": 5, "shorthand": [5, 10], "ap": 5, "shorter": 5, "expiri": 5, "mostli": [5, 6, 9], "quiet": [5, 10], "momentarili": 5, "disappear": [5, 10], "network_nam": 5, "passphras": [5, 9], "alon": 5, "ifac_s": 5, "customis": 5, "carri": [5, 7, 9, 10], "512": [5, 7, 9], "announce_cap": [5, 7], "maximum": [5, 7, 9], "alloc": [5, 7, 9, 10], "given": [5, 6, 7, 9, 10], "upkeep": 5, "cap": 5, "queue": [5, 9], "nearbi": 5, "overwhelm": [5, 7], "rapidli": 5, "spam": 5, "effect": 5, "excess": 5, "benefici": [5, 10], "balanc": 5, "necesarri": 5, "bitrat": 5, "report": [5, 8], "guess": 5, "per": [5, 7, 9, 11], "affect": [2, 5], "strictli": [5, 9], "complex": [5, 9], "left": [5, 7, 9, 10], "gw": 5, "addition": [5, 9], "behalf": 5, "resid": 5, "requestor": 5, "chain": 5, "along": [5, 6, 7, 9], "boundari": 5, "remain": [5, 7, 9], "roam": 5, "mobil": [5, 9], "seen": [5, 9], "perspect": [5, 7, 9, 11], "vehicl": 5, "equip": [5, 6, 9], "side": [5, 11], "expir": 5, "significantli": 5, "impact": [5, 9], "announce_rate_target": 5, "announce_rate_grac": 5, "announce_rate_penalti": 5, "basi": [5, 7, 9, 10, 11], "moder": 5, "violat": 5, "enforc": 5, "penalti": 5, "7200": 5, "annouce_cap": 5, "mention": [5, 9], "strategi": [5, 7], "decis": [5, 9], "slower": [5, 7, 9], "hop": [5, 6, 7, 9, 10, 11], "right": [5, 6], "tend": 5, "conserv": 5, "span": [5, 9], "seamlessli": 5, "knowledg": [6, 9], "tradit": [6, 9], "worri": 6, "coordin": [6, 7, 9, 11], "evolv": 6, "futur": [6, 9], "mind": [6, 11], "autonom": [6, 9], "terminologi": [6, 9], "rest": [6, 11], "billion": [6, 9], "larger": [6, 9], "higher": [6, 11], "discrimin": 6, "ephemer": [6, 7, 9, 11], "ellipt": [6, 7, 9, 11], "curv": [6, 7, 9, 11], "diffi": [6, 9, 11], "hellman": [6, 9, 11], "exchang": [6, 7, 9, 11], "curve25519": [6, 7, 9, 11], "throttl": 6, "thu": [6, 7, 9], "agnost": [6, 9], "equal": [6, 7, 9], "keystor": 6, "degrad": 6, "term": [6, 9], "stationari": [6, 10], "candid": 6, "optim": 6, "intend": [6, 9], "trustless": [6, 9, 11], "leav": [6, 9], "free": [6, 8, 11], "unorganis": 6, "manner": 6, "far": [6, 9], "unexplor": 6, "dissolv": 6, "organ": 6, "restrict": 6, "legaci": 6, "unifi": 6, "underli": [6, 11], "carrier": [6, 11], "involv": 6, "hardlin": 6, "decid": [6, 7, 9], "illustr": [6, 9], "plan": [6, 9], "member": 6, "mainli": 6, "three": [6, 9], "hill": 6, "top": [6, 9], "chosen": [6, 9], "sight": 6, "becaus": [6, 9], "four": 6, "At": [6, 9], "usb": [6, 9, 10], "cabl": 6, "adapt": 6, "suppli": [6, 7, 9], "grow": 6, "core": [6, 9, 10, 11], "those": [6, 9], "previous": [6, 7, 9], "d": [6, 10], "island": 6, "investig": 6, "dori": 6, "willing": 6, "she": 6, "her": 6, "home": 6, "newli": [6, 7, 9], "everyon": [6, 9], "vice": [6, 11], "versa": [6, 11], "vhf": [6, 9, 11], "outli": 6, "geograph": 6, "coverag": 6, "dai": 6, "find": [6, 9], "poorli": 6, "outlier": 6, "signatur": [7, 9, 11], "configdir": 7, "logdest": 7, "verbos": [7, 10], "exactli": [7, 9], "independ": [7, 9, 11], "inter": 7, "soon": 7, "kill": [7, 9], "forcibli": [7, 10], "advantag": 7, "demand": 7, "mtu": [7, 9, 11], "500": [7, 9, 11], "adher": 7, "507": 7, "break": [7, 9, 11], "prerequisit": 7, "percentag": 7, "schedul": 7, "queu": [7, 10], "fewer": 7, "distant": 7, "smaller": 7, "eventu": 7, "drop": [7, 9, 10], "appli": [7, 9], "individu": [7, 9, 11], "static": 7, "should_use_implicit_proof": 7, "explicit": 7, "implicit": [7, 9], "transport_en": 7, "create_kei": 7, "decrypt": [7, 9], "verif": [7, 9], "sign": [7, 9], "dh": 7, "keysiz": 7, "x25519": [7, 9, 11], "concaten": 7, "256": [7, 9], "128": [7, 9, 11], "constant": 7, "truncat": [7, 9], "recall_app_data": 7, "heard": [7, 9], "full_hash": 7, "sha": [7, 9], "truncated_hash": 7, "from_byt": 7, "prv_byte": 7, "save": [7, 9], "hazard": 7, "feed": 7, "from_fil": 7, "to_fil": 7, "Be": [7, 10], "get_private_kei": 7, "get_public_kei": 7, "load_private_kei": 7, "load_public_kei": 7, "pub_byt": 7, "ciphertext": 7, "token": [7, 9], "keyerror": 7, "hold": [7, 9], "ciphertext_token": 7, "presenc": 7, "ingo": 7, "zero": [7, 11], "expand_nam": 7, "app_and_aspects_from_nam": 7, "full_nam": [7, 10], "tupl": 7, "hash_from_name_and_ident": 7, "path_respons": 7, "attached_interfac": 7, "tag": 7, "flag": [7, 9], "accepts_link": 7, "accept": [7, 8, 9, 10], "set_proof_requested_callback": 7, "proof_strategi": 7, "prove_non": 7, "prove_app": 7, "proof_requested_callback": 7, "allow_non": 7, "allowed_list": 7, "whatev": [7, 9], "funcion": 7, "allow_list": 7, "deregister_request_handl": 7, "deregist": 7, "symmetr": [7, 9], "typeerror": 7, "incompat": [7, 9], "set_default_app_data": 7, "clear_default_app_data": 7, "pre": [2, 7, 9], "ae": [7, 9, 11], "secreci": [7, 9, 11], "instanti": 7, "encrypted_mdu": 7, "383": 7, "plain_mdu": 7, "464": 7, "resend": 7, "get_statu": 7, "cull": 7, "successful": 7, "proven": [7, 9], "established_callback": 7, "closed_callback": 7, "establishment_timeout_per_hop": 7, "keepalive_timeout_factor": 7, "calcul": [7, 9], "stale_grac": 7, "grace": 7, "keepal": [7, 9], "360": 7, "aliv": [7, 9], "stale_tim": 7, "720": 7, "mark": [7, 9], "stale": 7, "torn": 7, "progress_callback": 7, "info": [7, 9, 10], "get_establishment_r": 7, "procedur": [2, 7, 9], "ocur": 7, "no_inbound_for": 7, "no_outbound_for": 7, "outbound": [7, 9], "inactive_for": 7, "purg": 7, "set_resource_callback": 7, "get_transfer_s": 7, "get_data_s": 7, "get_part": 7, "is_compress": 7, "begun": 7, "resource_strategi": 7, "accept_non": 7, "accept_app": 7, "resource_callback": 7, "unsupport": 7, "get_request_id": 7, "get_respons": 7, "get_response_tim": 7, "auto_compress": 7, "arbitrari": [7, 9, 10, 11], "checksum": [7, 11], "Will": 7, "whenev": [7, 9], "cancel": 7, "total": [7, 9, 11], "get_seg": 7, "divid": 7, "get_hash": 7, "bi": [7, 9], "neither": [7, 9], "constrain": 7, "message_class": 7, "recept": 7, "messagecallbacktyp": 7, "bool": 7, "stop": [7, 11], "remove_message_handl": 7, "remov": [7, 10], "envelop": 7, "thrown": 7, "consum": 7, "adjust": 7, "accommod": [7, 9], "abstract": [7, 9], "greater": [7, 9], "popul": 7, "bufferedread": 7, "bufferedwrit": 7, "bufferedrwpair": 7, "create_read": 7, "ready_callback": 7, "document": [7, 9], "create_writ": 7, "receive_stream_id": 7, "send_stream_id": 7, "rawiobas": 7, "add_ready_callback": 7, "cb": [7, 9], "remove_ready_callback": 7, "pathfinder_m": 7, "attribut": 7, "deregister_announce_handl": 7, "hops_to": 7, "next_hop": 7, "next_hop_interfac": 7, "on_interfac": 7, "recurs": 7, "gratefulli": 8, "monero": 8, "84fpy1qbxhcgdseepynmhthcrgmx4nffbytz2gkytoqhvvhjp8eaw1z1eedrnkd19b3b8nilcgvxzkv17ummmeescrpya5w": 8, "ethereum": 8, "0x81f7b979fea6134ba9fd5c701b3501a2e61e897a": 8, "bitcoin": 8, "3cpmacgm34qyvr6xwlvejmi2ane3pzquuq": 8, "ko": 8, "fi": 8, "roadmap": 8, "realiti": 8, "quickli": [8, 9, 11], "sponsor": [8, 11], "dysfunct": 8, "analyt": 8, "telemetri": 8, "collect": 8, "under": [8, 10, 11], "circumst": [8, 9], "reli": [8, 9], "fashion": 8, "u": [8, 9, 10], "suggest": 8, "briefli": 9, "overal": 9, "principl": [9, 11], "author": 9, "That": 9, "said": 9, "pretti": 9, "sentiment": 9, "philosophi": 9, "problem": 9, "seek": 9, "solv": 9, "solut": 9, "primari": 9, "lack": 9, "my": 9, "belief": 9, "highli": 9, "machin": 9, "censorship": [9, 11], "barrier": 9, "todai": 9, "centralis": 9, "trust": 9, "approv": 9, "gatekeep": 9, "inevit": 9, "lead": 9, "govern": 9, "alter": 9, "censor": 9, "persecut": 9, "unwant": 9, "actor": 9, "imposs": 9, "freeli": 9, "deploi": 9, "enhanc": 9, "agenc": 9, "freedom": 9, "permissionless": 9, "pick": 9, "ghz": 9, "off": [9, 10, 11], "shelf": [9, 11], "ultim": 9, "vast": 9, "myriad": 9, "thousand": 9, "surveil": 9, "disassoci": 9, "oversight": 9, "beings": 9, "usabl": 9, "useabl": 9, "critic": [9, 10], "agnostic": 9, "shall": 9, "handheld": 9, "modifi": [9, 10], "interest": 9, "strong": 9, "oneself": 9, "unlicens": 9, "licens": 9, "condit": [9, 11], "pmr": 9, "written": 9, "programm": 9, "orient": 9, "multipoint": 9, "recipi": 9, "singular": 9, "_represented_": 9, "characterist": 9, "13425ec15b621c1d928589718000d814": 9, "trade": 9, "simultan": 9, "unlik": 9, "nears": 9, "congest": 9, "galact": 9, "scale": [9, 11], "obvious": 9, "ridicul": 9, "multi": [9, 10, 11], "special": [9, 10], "ecdh": [9, 11], "creator": 9, "correspond": 9, "possess": 9, "although": [9, 11], "capabl": 9, "dot": [9, 10], "notat": [9, 10], "repres": 9, "plenti": 9, "environment": 9, "monitor": 9, "measur": 9, "environmentlogg": 9, "remotesensor": 9, "temperatur": 9, "4faf1b2e0a077e6a9d92fa051f256038": 9, "advis": 9, "expand": 9, "recap": 9, "indirectli": 9, "awar": [2, 9], "ledger": 9, "therefor": [9, 11], "messeng": 9, "nicknam": 9, "ed25519": [9, 11], "reconstruct": 9, "notic": [9, 10], "piec": 9, "intention": 9, "infer": 9, "throughout": 9, "accord": 9, "around": 9, "topic": 9, "necessarili": 9, "person": 9, "entiti": 9, "robot": 9, "sensor": 9, "someth": 9, "agent": 9, "manipul": [9, 11], "multilater": 9, "creation": [9, 11], "great": 9, "suffic": 9, "cluster": 9, "hear": 9, "But": 9, "lot": 9, "surviv": 9, "overcom": 9, "challeng": 9, "asymmetr": [9, 11], "closer": 9, "distinguish": 9, "contend": 9, "enable_transport": [9, 10], "retransmit": 9, "randomis": 9, "prioriti": 9, "invers": 9, "proport": 9, "count": 9, "insert": 9, "closest": 9, "newer": 9, "newest": 9, "discard": 9, "contact": 9, "shortest": 9, "predict": 9, "constantli": 9, "earlier": 9, "opt": 9, "against": 9, "bidirect": 9, "travers": 9, "rememb": 9, "ten": 9, "advanc": 9, "confirm": [9, 11], "insid": 9, "intermediari": 9, "moment": [9, 11], "methodologi": [9, 10], "answer": [9, 10], "malici": 9, "pretend": 9, "recreat": 9, "rotat": 9, "memori": 9, "thereaft": 9, "297": [9, 11], "practic": [9, 11], "neglig": 9, "1200": 9, "96": 9, "keypair": 9, "simplic": 9, "explan": [9, 10], "lki": 9, "laid": 9, "had": 9, "construct": [9, 11], "lkr": 9, "chose": 9, "direction": 9, "unequivoc": 9, "retransmiss": 9, "reassembl": 9, "programmat": 9, "satisfi": 9, "half": [9, 11], "duplex": [9, 11], "averag": 9, "throughput": [9, 11], "x": [9, 10], "runtim": 9, "consist": 9, "whereupon": 9, "stabl": [9, 11], "stage": 9, "year": 9, "microcontrol": 9, "430": 9, "868": 9, "900": 9, "recent": 9, "mac": 9, "tailor": 9, "treat": 9, "regard": 9, "preshar": 9, "ifac": [9, 10], "onto": [2, 9], "compos": 9, "field": 9, "context": 9, "465": 9, "vari": [9, 10], "00": [9, 10], "01": 9, "11": 9, "_______": 9, "________________": 9, "________": 9, "______": 9, "__": 9, "_": 9, "01010000": 9, "00000100": 9, "hash1": 9, "hash2": 9, "header_2": 9, "00000000": 9, "00000111": 9, "header_1": 9, "10000000": 9, "exclud": 9, "51": 9, "167": 9, "83": [9, 10], "115": 9, "99": 9, "conceptu": 9, "x22519": 9, "hkdf": 9, "fernet": [9, 11], "cbc": [9, 11], "hmac": [9, 11], "hashlib": 9, "pkcs7": [9, 11], "pad": [9, 11], "trivial": [9, 11], "consequ": 9, "backend": 9, "loss": 9, "scrutini": 9, "review": [9, 11], "risk": 9, "pose": 9, "driver": [10, 11], "privileg": 10, "light": 10, "weight": 10, "etc": 10, "boot": 10, "edit": 10, "ie": 10, "breviti": 10, "socket": 10, "turn": 10, "share_inst": 10, "shared_instance_port": 10, "37428": 10, "instance_control_port": 10, "37429": 10, "panic": 10, "unrecover": 10, "occur": [10, 11], "panic_on_interface_error": 10, "warn": 10, "debug": 10, "unus": 10, "teach": 10, "task": 10, "v": 10, "show": 10, "ifconfig": 10, "gbp": 10, "13": 10, "kb": 10, "86": 10, "mbp": 10, "63": 10, "23": 10, "80": 10, "17": 10, "tcpinterfac": 10, "unsign": 10, "187": 10, "27": 10, "74": 10, "uhf": [10, 11], "30": 10, "kbp": 10, "e702c42ba8": 10, "49": 10, "9": 10, "5245a8efe1788c6a1cd36144a270e13b": 10, "c89b4da064bf66d280f0e4d8abfd9806": 10, "f53a1c4278e0726bb73fcc623d6ce763": 10, "reticulu": 10, "w": 10, "posit": 10, "probe": 10, "2d03725b327348980d570f739a3a5708": 10, "38": 10, "469": 10, "1726dbad538775b5bf9b0ea25a4079c8": 10, "c50cc4e4f7838b6c31f60ab9032cbc62": 10, "copi": 10, "tgz": 10, "73cbd378bb0286ed11a707c13447bb1": 10, "allowed_hash": 10, "decreas": 10, "auth": 10, "941bed5e228775e5a8079fc38b1ccf3f": 10, "1b03013c25f1c2ca068a4f080b844a10": 10, "7a55144adf826958a9529a3bcf08b149": 10, "cat": 10, "proc": 10, "cpuinfo": 10, "pseudo": 10, "stderr": 10, "noauth": 10, "noid": 10, "mirror": 10, "max": 10, "fw": 10, "nocheck": 10, "freq": 10, "hz": 10, "bw": 10, "txp": 10, "sf": 10, "cr": 10, "eeprom": 10, "backup": 10, "dump": 10, "wipe": 10, "flash": 10, "attach": 10, "older": 10, "onlin": 10, "extract": 10, "cach": 10, "bluetooth": 10, "consol": 10, "unlock": 10, "perman": 10, "administr": 10, "ftdi_ft230x_basic_uart_43891ckm": 10, "if00": 10, "port0": 10, "plug": 10, "unplug": 10, "systemd": 10, "usr": 10, "bin": 10, "execstartpr": 10, "restart": 10, "restartsec": 10, "usernameher": 10, "execstart": 10, "wantedbi": 10, "systemctl": 10, "readili": 11, "advers": 11, "unforg": 11, "acknowledg": 11, "empow": 11, "autonomi": 11, "sovereignti": 11, "subject": 11, "outsid": 11, "planetari": 11, "hierarch": 11, "beaureucrat": 11, "resili": 11, "userland": 11, "beta": 11, "bug": 11, "warrant": 11, "sha256": 11, "iv": 11, "urandom": 11, "intuit": 11, "friendli": 11, "44": 11, "gigabyt": 11, "scalabl": 11, "hoc": 11, "optic": 11, "transform": 11, "fact": 11, "strength": 11, "generalis": 11, "fibr": 11, "popular": 11, "ideal": 11, "stdio": 11, "hack": 11, "foremost": 11, "audit": 11, "privaci": 11, "thorough": 11, "research": 11, "miss": 2, "rasperri": 2, "nativ": [], "quirk": 2, "worth": 2, "pipx": 2, "ensurepath": 2, "bookworm": 4, "lunar": 4, "april": 2, "2023": 2, "unfortun": 2, "neg": 2}, "objects": {"RNS": [[7, 0, 1, "", "Buffer"], [7, 0, 1, "", "Destination"], [7, 0, 1, "", "Identity"], [7, 0, 1, "", "Link"], [7, 0, 1, "", "MessageBase"], [7, 0, 1, "", "Packet"], [7, 0, 1, "", "PacketReceipt"], [7, 0, 1, "", "RawChannelReader"], [7, 0, 1, "", "RawChannelWriter"], [7, 0, 1, "", "RequestReceipt"], [7, 0, 1, "", "Resource"], [7, 0, 1, "", "Reticulum"], [7, 0, 1, "", "Transport"]], "RNS.Buffer": [[7, 1, 1, "", "create_bidirectional_buffer"], [7, 1, 1, "", "create_reader"], [7, 1, 1, "", "create_writer"]], "RNS.Channel": [[7, 0, 1, "", "Channel"]], "RNS.Channel.Channel": [[7, 2, 1, "", "MDU"], [7, 1, 1, "", "add_message_handler"], [7, 1, 1, "", "is_ready_to_send"], [7, 1, 1, "", "register_message_type"], [7, 1, 1, "", "remove_message_handler"], [7, 1, 1, "", "send"]], "RNS.Destination": [[7, 1, 1, "", "accepts_links"], [7, 1, 1, "", "announce"], [7, 1, 1, "", "app_and_aspects_from_name"], [7, 1, 1, "", "clear_default_app_data"], [7, 1, 1, "", "create_keys"], [7, 1, 1, "", "decrypt"], [7, 1, 1, "", "deregister_request_handler"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "expand_name"], [7, 1, 1, "", "get_private_key"], [7, 1, 1, "", "hash"], [7, 1, 1, "", "hash_from_name_and_identity"], [7, 1, 1, "", "load_private_key"], [7, 1, 1, "", "register_request_handler"], [7, 1, 1, "", "set_default_app_data"], [7, 1, 1, "", "set_link_established_callback"], [7, 1, 1, "", "set_packet_callback"], [7, 1, 1, "", "set_proof_requested_callback"], [7, 1, 1, "", "set_proof_strategy"], [7, 1, 1, "", "sign"]], "RNS.Identity": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "KEYSIZE"], [7, 3, 1, "", "TRUNCATED_HASHLENGTH"], [7, 1, 1, "", "decrypt"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "from_bytes"], [7, 1, 1, "", "from_file"], [7, 1, 1, "", "full_hash"], [7, 1, 1, "", "get_private_key"], [7, 1, 1, "", "get_public_key"], [7, 1, 1, "", "get_random_hash"], [7, 1, 1, "", "load_private_key"], [7, 1, 1, "", "load_public_key"], [7, 1, 1, "", "recall"], [7, 1, 1, "", "recall_app_data"], [7, 1, 1, "", "sign"], [7, 1, 1, "", "to_file"], [7, 1, 1, "", "truncated_hash"], [7, 1, 1, "", "validate"]], "RNS.Link": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "ESTABLISHMENT_TIMEOUT_PER_HOP"], [7, 3, 1, "", "KEEPALIVE"], [7, 3, 1, "", "KEEPALIVE_TIMEOUT_FACTOR"], [7, 3, 1, "", "STALE_GRACE"], [7, 3, 1, "", "STALE_TIME"], [7, 1, 1, "", "get_channel"], [7, 1, 1, "", "get_establishment_rate"], [7, 1, 1, "", "get_remote_identity"], [7, 1, 1, "", "identify"], [7, 1, 1, "", "inactive_for"], [7, 1, 1, "", "no_inbound_for"], [7, 1, 1, "", "no_outbound_for"], [7, 1, 1, "", "request"], [7, 1, 1, "", "set_link_closed_callback"], [7, 1, 1, "", "set_packet_callback"], [7, 1, 1, "", "set_remote_identified_callback"], [7, 1, 1, "", "set_resource_callback"], [7, 1, 1, "", "set_resource_concluded_callback"], [7, 1, 1, "", "set_resource_started_callback"], [7, 1, 1, "", "set_resource_strategy"], [7, 1, 1, "", "teardown"]], "RNS.MessageBase": [[7, 3, 1, "", "MSGTYPE"], [7, 1, 1, "", "pack"], [7, 1, 1, "", "unpack"]], "RNS.Packet": [[7, 3, 1, "", "ENCRYPTED_MDU"], [7, 3, 1, "", "PLAIN_MDU"], [7, 1, 1, "", "resend"], [7, 1, 1, "", "send"]], "RNS.PacketReceipt": [[7, 1, 1, "", "get_rtt"], [7, 1, 1, "", "get_status"], [7, 1, 1, "", "set_delivery_callback"], [7, 1, 1, "", "set_timeout"], [7, 1, 1, "", "set_timeout_callback"]], "RNS.RawChannelReader": [[7, 1, 1, "", "__init__"], [7, 1, 1, "", "add_ready_callback"], [7, 1, 1, "", "remove_ready_callback"]], "RNS.RawChannelWriter": [[7, 1, 1, "", "__init__"]], "RNS.RequestReceipt": [[7, 1, 1, "", "get_progress"], [7, 1, 1, "", "get_request_id"], [7, 1, 1, "", "get_response"], [7, 1, 1, "", "get_response_time"], [7, 1, 1, "", "get_status"]], "RNS.Resource": [[7, 1, 1, "", "advertise"], [7, 1, 1, "", "cancel"], [7, 1, 1, "", "get_data_size"], [7, 1, 1, "", "get_hash"], [7, 1, 1, "", "get_parts"], [7, 1, 1, "", "get_progress"], [7, 1, 1, "", "get_segments"], [7, 1, 1, "", "get_transfer_size"], [7, 1, 1, "", "is_compressed"]], "RNS.Reticulum": [[7, 3, 1, "", "ANNOUNCE_CAP"], [7, 3, 1, "", "MTU"], [7, 1, 1, "", "should_use_implicit_proof"], [7, 1, 1, "", "transport_enabled"]], "RNS.Transport": [[7, 3, 1, "", "PATHFINDER_M"], [7, 1, 1, "", "deregister_announce_handler"], [7, 1, 1, "", "has_path"], [7, 1, 1, "", "hops_to"], [7, 1, 1, "", "next_hop"], [7, 1, 1, "", "next_hop_interface"], [7, 1, 1, "", "register_announce_handler"], [7, 1, 1, "", "request_path"]]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:property", "3": "py:attribute"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "property", "Python property"], "3": ["py", "attribute", "Python attribute"]}, "titleterms": {"code": [0, 8, 9], "exampl": [0, 6], "minim": 0, "announc": [0, 5, 9], "broadcast": 0, "echo": 0, "link": [0, 9], "identif": 0, "request": 0, "respons": 0, "channel": 0, "buffer": 0, "filetransf": 0, "an": 1, "explan": 1, "reticulum": [1, 2, 3, 4, 8, 9, 10, 11], "human": 1, "Beings": 1, "get": [2, 9], "start": 2, "fast": 2, "standalon": 2, "instal": [2, 3], "resolv": 2, "depend": 2, "issu": 2, "try": 2, "us": [2, 10, 11], "base": [2, 3], "program": [2, 10], "remot": 2, "shell": 2, "nomad": 2, "network": [2, 4, 6], "sideband": 2, "includ": [2, 10], "util": [2, 10], "creat": [2, 3], "With": 2, "connect": 2, "instanc": 2, "over": [2, 6], "internet": [2, 6], "public": [2, 9], "testnet": 2, "ad": 2, "radio": 2, "interfac": [2, 5, 9, 11], "develop": 2, "particip": 2, "arm64": 2, "raspberri": 2, "pi": 2, "android": 2, "pure": 2, "python": 2, "commun": 3, "hardwar": 3, "rnode": [3, 5], "support": [3, 5, 8], "board": 3, "lilygo": 3, "lora32": 3, "v2": 3, "1": 3, "0": 3, "t": 3, "beam": 3, "heltec": 3, "unsign": 3, "x": 3, "v1": 3, "usag": 3, "supplier": 3, "wifi": 3, "combin": 3, "type": [3, 9, 11], "stack": 4, "manual": 4, "tabl": 4, "Of": 4, "content": 4, "indic": 4, "auto": 5, "i2p": 5, "tcp": 5, "server": 5, "client": 5, "udp": 5, "lora": [5, 6], "serial": [5, 10], "pipe": 5, "kiss": 5, "ax": 5, "25": 5, "common": 5, "option": 5, "mode": 5, "rate": 5, "control": 5, "build": 6, "concept": 6, "overview": 6, "scenario": 6, "interconnect": 6, "site": 6, "bridg": 6, "growth": 6, "converg": 6, "api": 7, "refer": [7, 9], "donat": 8, "provid": 8, "feedback": 8, "contribut": 8, "understand": 9, "motiv": 9, "goal": 9, "introduct": 9, "basic": 9, "function": 9, "destin": 9, "name": [9, 10], "kei": 9, "ident": 9, "further": 9, "transport": 9, "node": 9, "The": [9, 10], "mechan": 9, "detail": 9, "reach": 9, "establish": 9, "resourc": 9, "setup": 9, "protocol": 9, "specif": [2, 9], "packet": 9, "prioritis": 9, "access": 9, "wire": 9, "format": 9, "propag": 9, "rule": 9, "cryptograph": 9, "primit": 9, "your": 10, "system": 10, "configur": 10, "data": 10, "rnsd": 10, "rnstatu": 10, "rnpath": 10, "rnprobe": 10, "rncp": 10, "rnx": 10, "rnodeconf": 10, "improv": 10, "fix": 10, "port": 10, "servic": 10, "what": 11, "i": 11, "current": 11, "statu": 11, "doe": 11, "offer": 11, "where": 11, "can": 11, "devic": 11, "caveat": 11, "emptor": 11, "fedora": [], "platform": 2, "note": 2, "debian": 2, "bookworm": 2, "ubuntu": 2, "lunar": 2}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"Code Examples": [[0, "code-examples"]], "Minimal": [[0, "minimal"]], "Announce": [[0, "announce"]], "Broadcast": [[0, "broadcast"]], "Echo": [[0, "echo"]], "Link": [[0, "link"]], "Identification": [[0, "example-identify"]], "Requests & Responses": [[0, "requests-responses"]], "Channel": [[0, "channel"]], "Buffer": [[0, "buffer"]], "Filetransfer": [[0, "filetransfer"]], "An Explanation of Reticulum for Human Beings": [[1, "an-explanation-of-reticulum-for-human-beings"]], "Communications Hardware": [[3, "communications-hardware"]], "RNode": [[3, "rnode"]], "Creating RNodes": [[3, "creating-rnodes"]], "Supported Boards": [[3, "supported-boards"]], "LilyGO LoRa32 v2.1": [[3, "lilygo-lora32-v2-1"]], "LilyGO LoRa32 v2.0": [[3, "lilygo-lora32-v2-0"]], "LilyGO T-Beam": [[3, "lilygo-t-beam"]], "Heltec LoRa32 v2.0": [[3, "heltec-lora32-v2-0"]], "Unsigned RNode v2.x": [[3, "unsigned-rnode-v2-x"]], "Unsigned RNode v1.x": [[3, "unsigned-rnode-v1-x"]], "Installation": [[3, "installation"]], "Usage with Reticulum": [[3, "usage-with-reticulum"]], "Suppliers": [[3, "suppliers"]], "WiFi-based Hardware": [[3, "wifi-based-hardware"]], "Combining Hardware Types": [[3, "combining-hardware-types"]], "Reticulum Network Stack Manual": [[4, "reticulum-network-stack-manual"]], "Table Of Contents": [[4, "table-of-contents"]], "Indices and Tables": [[4, "indices-and-tables"]], "Supported Interfaces": [[5, "supported-interfaces"]], "Auto Interface": [[5, "auto-interface"]], "I2P Interface": [[5, "i2p-interface"]], "TCP Server Interface": [[5, "tcp-server-interface"]], "TCP Client Interface": [[5, "tcp-client-interface"]], "UDP Interface": [[5, "udp-interface"]], "RNode LoRa Interface": [[5, "rnode-lora-interface"]], "Serial Interface": [[5, "serial-interface"]], "Pipe Interface": [[5, "pipe-interface"]], "KISS Interface": [[5, "kiss-interface"]], "AX.25 KISS Interface": [[5, "ax-25-kiss-interface"]], "Common Interface Options": [[5, "common-interface-options"]], "Interface Modes": [[5, "interface-modes"]], "Announce Rate Control": [[5, "announce-rate-control"]], "Building Networks": [[6, "building-networks"]], "Concepts & Overview": [[6, "concepts-overview"]], "Example Scenarios": [[6, "example-scenarios"]], "Interconnected LoRa Sites": [[6, "interconnected-lora-sites"]], "Bridging Over the Internet": [[6, "bridging-over-the-internet"]], "Growth and Convergence": [[6, "growth-and-convergence"]], "API Reference": [[7, "api-reference"]], "Support Reticulum": [[8, "support-reticulum"]], "Donations": [[8, "donations"]], "Provide Feedback": [[8, "provide-feedback"]], "Contribute Code": [[8, "contribute-code"]], "Understanding Reticulum": [[9, "understanding-reticulum"]], "Motivation": [[9, "motivation"]], "Goals": [[9, "goals"]], "Introduction & Basic Functionality": [[9, "introduction-basic-functionality"]], "Destinations": [[9, "destinations"]], "Destination Naming": [[9, "destination-naming"]], "Public Key Announcements": [[9, "public-key-announcements"]], "Identities": [[9, "understanding-identities"]], "Getting Further": [[9, "getting-further"]], "Reticulum Transport": [[9, "reticulum-transport"]], "Node Types": [[9, "node-types"]], "The Announce Mechanism in Detail": [[9, "the-announce-mechanism-in-detail"]], "Reaching the Destination": [[9, "reaching-the-destination"]], "Link Establishment in Detail": [[9, "link-establishment-in-detail"]], "Resources": [[9, "resources"]], "Reference Setup": [[9, "reference-setup"]], "Protocol Specifics": [[9, "protocol-specifics"]], "Packet Prioritisation": [[9, "packet-prioritisation"]], "Interface Access Codes": [[9, "interface-access-codes"]], "Wire Format": [[9, "wire-format"]], "Announce Propagation Rules": [[9, "announce-propagation-rules"]], "Cryptographic Primitives": [[9, "cryptographic-primitives"]], "Using Reticulum on Your System": [[10, "using-reticulum-on-your-system"]], "Configuration & Data": [[10, "configuration-data"]], "Included Utility Programs": [[10, "included-utility-programs"]], "The rnsd Utility": [[10, "the-rnsd-utility"]], "The rnstatus Utility": [[10, "the-rnstatus-utility"]], "The rnpath Utility": [[10, "the-rnpath-utility"]], "The rnprobe Utility": [[10, "the-rnprobe-utility"]], "The rncp Utility": [[10, "the-rncp-utility"]], "The rnx Utility": [[10, "the-rnx-utility"]], "The rnodeconf Utility": [[10, "the-rnodeconf-utility"]], "Improving System Configuration": [[10, "improving-system-configuration"]], "Fixed Serial Port Names": [[10, "fixed-serial-port-names"]], "Reticulum as a System Service": [[10, "reticulum-as-a-system-service"]], "What is Reticulum?": [[11, "what-is-reticulum"]], "Current Status": [[11, "current-status"]], "What does Reticulum Offer?": [[11, "what-does-reticulum-offer"]], "Where can Reticulum be Used?": [[11, "where-can-reticulum-be-used"]], "Interface Types and Devices": [[11, "interface-types-and-devices"]], "Caveat Emptor": [[11, "caveat-emptor"]], "Getting Started Fast": [[2, "getting-started-fast"]], "Standalone Reticulum Installation": [[2, "standalone-reticulum-installation"]], "Resolving Dependency & Installation Issues": [[2, "resolving-dependency-installation-issues"]], "Try Using a Reticulum-based Program": [[2, "try-using-a-reticulum-based-program"]], "Remote Shell": [[2, "remote-shell"]], "Nomad Network": [[2, "nomad-network"]], "Sideband": [[2, "sideband"]], "Using the Included Utilities": [[2, "using-the-included-utilities"]], "Creating a Network With Reticulum": [[2, "creating-a-network-with-reticulum"]], "Connecting Reticulum Instances Over the Internet": [[2, "connecting-reticulum-instances-over-the-internet"]], "Connect to the Public Testnet": [[2, "connect-to-the-public-testnet"]], "Adding Radio Interfaces": [[2, "adding-radio-interfaces"]], "Develop a Program with Reticulum": [[2, "develop-a-program-with-reticulum"]], "Participate in Reticulum Development": [[2, "participate-in-reticulum-development"]], "Platform-Specific Install Notes": [[2, "platform-specific-install-notes"]], "Android": [[2, "android"]], "ARM64": [[2, "arm64"]], "Raspberry Pi": [[2, "raspberry-pi"]], "Debian Bookworm": [[2, "debian-bookworm"]], "Ubuntu Lunar": [[2, "ubuntu-lunar"]], "Pure-Python Reticulum": [[2, "pure-python-reticulum"]]}, "indexentries": {}}) \ No newline at end of file +Search.setIndex({"docnames": ["examples", "forhumans", "gettingstartedfast", "hardware", "index", "interfaces", "networks", "reference", "support", "understanding", "using", "whatis"], "filenames": ["examples.rst", "forhumans.rst", "gettingstartedfast.rst", "hardware.rst", "index.rst", "interfaces.rst", "networks.rst", "reference.rst", "support.rst", "understanding.rst", "using.rst", "whatis.rst"], "titles": ["Code Examples", "An Explanation of Reticulum for Human Beings", "Getting Started Fast", "Communications Hardware", "Reticulum Network Stack Manual", "Supported Interfaces", "Building Networks", "API Reference", "Support Reticulum", "Understanding Reticulum", "Using Reticulum on Your System", "What is Reticulum?"], "terms": {"A": [0, 2, 5, 6, 7, 9, 11], "number": [0, 2, 5, 6, 7, 9, 10], "ar": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11], "includ": [0, 3, 4, 5, 7, 9], "sourc": [0, 2, 3, 6, 9, 11], "distribut": [0, 2, 6, 7, 9, 10], "reticulum": [0, 5, 6, 7], "you": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "can": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "us": [0, 3, 4, 5, 6, 7, 9], "learn": [0, 2, 8, 9], "how": [0, 2, 3, 5, 6, 9, 10, 11], "write": [0, 2, 5, 7, 9], "your": [0, 2, 3, 4, 5, 6, 8, 9, 11], "own": [0, 2, 6, 7, 9, 10, 11], "program": [0, 3, 4, 5, 7, 9, 11], "The": [0, 2, 3, 4, 5, 6, 7, 11], "demonstr": [0, 5], "bare": 0, "minimum": [0, 5, 6, 9], "setup": [0, 2, 4, 5], "requir": [0, 2, 5, 6, 9, 10, 11], "connect": [0, 3, 4, 5, 6, 7, 9, 10, 11], "network": [0, 3, 5, 7, 9, 10, 11], "from": [0, 2, 3, 5, 6, 7, 9, 10, 11], "In": [0, 2, 3, 5, 6, 7, 9, 10, 11], "about": [0, 2, 3, 5, 6, 7, 9], "five": 0, "line": [0, 2, 3, 5, 6, 9, 10, 11], "have": [0, 2, 3, 5, 6, 7, 9, 10], "stack": [0, 2, 6, 7, 9, 10, 11], "initialis": [0, 7, 10], "readi": [0, 2, 3, 5, 6, 7, 11], "pass": [0, 3, 5, 6, 7, 9, 10], "traffic": [0, 2, 5, 6, 7, 9, 10], "thi": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "rn": [0, 2, 3, 7, 9, 10], "start": [0, 3, 4, 5, 7, 9, 10], "up": [0, 2, 3, 5, 6, 9, 10, 11], "gener": [0, 2, 3, 5, 6, 7, 9, 10, 11], "new": [0, 5, 6, 7, 9, 10], "destin": [0, 2, 4, 5, 6, 7, 10], "let": [0, 2, 5, 6, 9, 10], "user": [0, 2, 5, 6, 9, 10, 11], "send": [0, 5, 7, 9, 10], "an": [0, 2, 3, 5, 6, 7, 9, 10, 11], "import": [0, 2, 3, 5, 6, 7, 8, 9], "argpars": 0, "": [0, 2, 5, 6, 9, 10, 11], "defin": [0, 5, 7, 9, 10], "app": [0, 2, 7, 9], "name": [0, 4, 5, 6, 7], "we": [0, 2, 3, 5, 8, 9], "ll": [0, 2, 11], "all": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "creat": [0, 4, 5, 6, 7, 9, 10, 11], "sinc": [0, 2, 5, 6, 7, 9], "basic": [0, 2, 4, 7, 10], "i": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "part": [0, 5, 6, 7, 9], "rang": [0, 2, 3, 5, 6, 9, 10, 11], "util": [0, 3, 4, 5, 9], "put": [0, 3, 5, 10], "them": [0, 2, 3, 5, 6, 8, 9, 10, 11], "within": [0, 2, 5, 6, 7, 9], "namespac": 0, "example_util": [0, 10], "app_nam": [0, 7], "execut": [0, 2, 5, 7, 10], "when": [0, 2, 3, 5, 6, 7, 9, 10], "def": 0, "program_setup": 0, "configpath": 0, "must": [0, 2, 5, 6, 7, 9], "first": [0, 2, 5, 7, 9, 10], "randomli": [0, 9], "ident": [0, 2, 4, 7, 10, 11], "our": [0, 9], "just": [0, 2, 3, 5, 6, 9, 11], "endpoint": [0, 6, 7, 9], "address": [0, 2, 5, 6, 7, 9, 11], "commun": [0, 2, 4, 5, 6, 7, 8, 9, 10, 11], "also": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "exist": [0, 2, 3, 5, 9, 10, 11], "which": [0, 2, 5, 6, 7, 9, 10], "know": [0, 2, 3, 6, 7, 9, 11], "thei": [0, 2, 5, 6, 7, 9, 10], "reachabl": [0, 2, 5, 6, 7, 9, 10], "autoomat": 0, "path": [0, 2, 3, 5, 7, 9, 10], "anywher": [0, 5], "els": [0, 2, 6, 9], "IN": [0, 7], "singl": [0, 5, 7, 9, 10, 11], "minimalsampl": 0, "configur": [0, 2, 3, 4, 5, 6, 7, 9, 11], "automat": [0, 2, 3, 5, 6, 7, 9, 10, 11], "prove": [0, 9], "packet": [0, 2, 3, 4, 5, 6, 7, 10, 11], "adress": [0, 7, 9], "By": [0, 2, 5, 7, 9, 10], "do": [0, 2, 3, 5, 7, 9, 11], "proof": [0, 7, 9, 10], "each": [0, 2, 5, 6, 9, 10], "incom": [0, 5, 7, 10], "transmit": [0, 5, 9], "back": [0, 5, 9, 11], "sender": [0, 2, 6, 9, 10], "anyon": [0, 2, 3, 6, 7, 9, 10], "tri": 0, "whether": [0, 5, 7, 9], "wa": [0, 3, 5, 6, 7, 9, 11], "receiv": [0, 2, 5, 7, 9, 10], "correctli": 0, "set_proof_strategi": [0, 7], "prove_al": [0, 7], "everyth": [0, 6, 9], "hand": 0, "over": [0, 3, 4, 5, 7, 9, 10, 11], "control": [0, 2, 3, 4, 6, 7, 9, 11], "loop": 0, "announceloop": 0, "log": [0, 5, 10], "prettyhexrep": 0, "hash": [0, 2, 7, 9, 10], "run": [0, 2, 3, 5, 6, 7, 9, 10, 11], "hit": 0, "enter": [0, 10], "manual": [0, 2, 5, 6, 7, 10], "ctrl": 0, "c": [0, 6, 10], "quit": 0, "until": [0, 2, 5, 7], "exit": [0, 2, 7, 10], "If": [0, 2, 3, 5, 6, 7, 9, 10, 11], "server": [0, 2, 3, 4, 7, 10], "client": [0, 2, 3, 4, 7], "messag": [0, 2, 7, 9, 10], "direct": [0, 2, 3, 6, 7, 9, 10], "toward": [0, 5, 9], "while": [0, 2, 3, 5, 6, 7, 9, 11], "true": [0, 5, 7, 10], "input": [0, 10], "sent": [0, 2, 7, 9, 10], "startup": [0, 10], "get": [0, 3, 4, 5, 7, 11], "pars": 0, "desir": [0, 3, 5, 9], "mode": [0, 2, 3, 4, 9, 10, 11], "__name__": 0, "__main__": 0, "try": [0, 4, 5], "parser": 0, "argumentpars": 0, "descript": [0, 10], "add_argu": 0, "config": [0, 2, 6, 10], "action": 0, "store": [0, 3, 9, 10], "default": [0, 2, 3, 5, 6, 7, 9, 10], "none": [0, 2, 5, 7, 9, 10], "help": [0, 3, 6, 8, 9, 10, 11], "altern": [0, 5, 10], "directori": [0, 10], "type": [0, 2, 4, 5, 6, 7, 10], "str": 0, "arg": 0, "parse_arg": 0, "configarg": 0, "except": [0, 5, 7], "keyboardinterrupt": 0, "print": [0, 5, 10], "found": [0, 2, 5, 6, 9, 10], "http": [0, 2, 8], "github": [0, 2, 8], "com": [0, 2, 8], "markqvist": [0, 2, 8], "blob": [0, 9], "master": [0, 7], "py": [0, 2, 9], "build": [0, 2, 3, 4, 5, 9, 11], "upon": [0, 9], "previou": 0, "explor": [0, 9, 11], "notif": [0, 7], "relev": [0, 3, 5, 7, 9, 10], "set": [0, 2, 3, 5, 6, 7, 9, 10, 11], "callback": [0, 7], "applic": [0, 5, 6, 7, 9, 10, 11], "arriv": [0, 9], "random": [0, 7, 9], "two": [0, 2, 3, 5, 6, 7, 9], "list": [0, 2, 3, 5, 7, 9, 11], "string": [0, 7], "app_data": [0, 7], "fruit": 0, "peach": 0, "quinc": 0, "date": [0, 2], "tangerin": 0, "pomelo": 0, "carambola": 0, "grape": 0, "noble_gas": 0, "helium": 0, "neon": 0, "argon": 0, "krypton": 0, "xenon": 0, "radon": 0, "oganesson": 0, "announcesampl": 0, "space": [0, 2, 3, 6, 9, 11], "destination_1": 0, "destination_2": 0, "handler": [0, 7], "onli": [0, 2, 3, 5, 6, 7, 9, 10, 11], "ask": [0, 2, 3, 7], "chang": [0, 2, 5, 7, 9, 10, 11], "filter": [0, 6, 9], "see": [0, 2, 5, 6, 7, 9, 10, 11], "what": [0, 2, 4, 7, 9], "happen": [0, 7, 9], "announce_handl": 0, "exampleannouncehandl": 0, "aspect_filt": [0, 7], "regist": [0, 7], "transport": [0, 2, 4, 5, 6, 7, 10, 11], "register_announce_handl": [0, 7], "select": [0, 5], "randint": 0, "0": [0, 2, 5, 7, 9, 10, 11], "len": 0, "1": [0, 2, 5, 7, 9, 10], "data": [0, 2, 4, 5, 6, 7, 9, 11], "encod": [0, 7], "utf": 0, "8": [0, 5, 10], "nobl": 0, "ga": 0, "noble_ga": 0, "need": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "class": [0, 6, 7, 11], "method": [0, 2, 5, 7, 9], "take": [0, 2, 5, 9, 10, 11], "option": [0, 2, 3, 4, 6, 7, 9, 10], "argument": [0, 7, 10], "instanc": [0, 4, 5, 7, 9, 10], "some": [0, 2, 3, 5, 6, 7, 9, 10], "want": [0, 2, 3, 5, 6, 9, 10, 11], "aspect": [0, 3, 5, 7, 9], "__init__": [0, 7], "self": [0, 6, 11], "call": [0, 6, 7, 9, 11], "system": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11], "match": [0, 5, 9, 10], "specif": [0, 3, 4, 5, 7, 10, 11], "cannot": [0, 2, 11], "wildcard": 0, "received_announc": [0, 7], "destination_hash": [0, 7, 10], "announced_ident": [0, 7], "contain": [0, 6, 7, 9, 10], "follow": [0, 2, 3, 5, 7, 8, 9, 10, 11], "decod": 0, "plaintext": [0, 7], "unencrypt": [0, 7, 9], "inform": [0, 2, 4, 5, 6, 7, 9, 10], "ani": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11], "listen": [0, 5, 9, 10], "sy": 0, "did": 0, "one": [0, 2, 3, 5, 6, 7, 9, 10, 11], "public_inform": 0, "ad": [0, 3, 4, 5, 6, 7, 9, 11], "so": [0, 2, 3, 5, 6, 7, 8, 9, 11], "differ": [0, 2, 3, 5, 6, 7, 9, 10, 11], "plain": [0, 5, 7, 9], "uncencrypt": 0, "broadcast_destin": 0, "specifi": [0, 2, 3, 5, 6, 7, 10], "everi": [0, 5, 6, 7, 9], "time": [0, 2, 3, 5, 6, 7, 9, 10], "set_packet_callback": [0, 7], "packet_callback": 0, "main": 0, "broadcastloop": 0, "simpli": [0, 2, 3, 5, 6, 9, 10], "out": [0, 2, 3, 5, 6, 7, 9, 10, 11], "r": [0, 5, 9, 10], "n": [0, 9, 10], "end": [0, 5, 6, 7, 9, 11], "stdout": [0, 5, 10], "flush": 0, "text": [0, 2, 6, 9], "prompt": 0, "channelarg": 0, "between": [0, 5, 6, 7, 9], "interfac": [0, 3, 4, 6, 7, 10], "simpl": [0, 3, 7, 9, 10, 11], "respond": [0, 7], "receipt": [0, 7, 9], "choos": [0, 2, 5, 9], "global": [0, 2, 5, 6, 9, 11], "server_ident": 0, "queri": [0, 2, 7], "abl": [0, 2, 5, 6, 7, 9, 10], "verifi": [0, 7, 9], "repli": [0, 10], "encrypt": [0, 2, 6, 7, 9, 11], "wai": [0, 2, 5, 6, 7, 9], "certain": [0, 5, 6, 8, 9], "than": [0, 2, 5, 6, 7, 9, 10], "read": [0, 2, 5, 7, 9, 10], "echo_destin": 0, "tell": [0, 5], "function": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11], "server_callback": 0, "wait": [0, 5, 9, 10], "go": [0, 2, 5, 9], "handl": [0, 3, 5, 6, 7, 9, 10, 11], "reception_stat": 0, "is_connected_to_shared_inst": 0, "reception_rssi": 0, "get_packet_rssi": 0, "packet_hash": 0, "reception_snr": 0, "get_packet_snr": 0, "rssi": 0, "dbm": [0, 5, 10], "snr": 0, "db": 0, "destination_hexhash": 0, "timeout": [0, 7, 10], "binari": [0, 2, 7, 9], "represent": [0, 7], "command": [0, 2, 5, 10], "dest_len": 0, "truncated_hashlength": [0, 7], "2": [0, 5, 7, 9, 10], "rais": [0, 7], "valueerror": [0, 7], "length": [0, 5, 7, 9], "invalid": [0, 7], "hex": 0, "hexadecim": [0, 9, 10], "charact": 0, "byte": [0, 7, 9, 10, 11], "format": [0, 4, 11], "fromhex": 0, "e": [0, 6, 10], "check": [0, 2, 7, 9, 10], "overrid": 0, "loglevel": [0, 7, 10], "provid": [0, 2, 3, 4, 5, 6, 7, 9, 11], "feedback": [0, 4], "log_info": 0, "doe": [0, 2, 3, 4, 5, 6, 7, 9, 10], "load": [0, 2, 7, 10], "has_path": [0, 7], "To": [0, 2, 3, 5, 6, 9, 10, 11], "public": [0, 4, 5, 7], "kei": [0, 4, 6, 7, 11], "done": [0, 2, 5, 6, 9, 10], "recal": [0, 7], "modul": [0, 2, 3, 9, 10, 11], "known": [0, 7, 9, 10], "return": [0, 7, 10], "outgo": [0, 5, 7, 9, 10], "got": 0, "correct": [0, 9], "convent": 0, "request_destin": 0, "add": [0, 2, 5, 6, 7, 10], "echo_request": 0, "get_random_hash": [0, 7], "successfulli": [0, 9], "packetreceipt": [0, 4, 7], "packet_receipt": [0, 7], "set_timeout": [0, 7], "set_timeout_callback": [0, 7], "packet_timed_out": 0, "deliveri": [0, 2, 7, 11], "set_delivery_callback": [0, 7], "packet_deliv": 0, "yet": [0, 2, 5, 9, 11], "retri": [0, 7, 9], "onc": [0, 2, 3, 5, 6, 7, 9, 10, 11], "request_path": [0, 7], "statu": [0, 2, 4, 5, 7, 9, 10], "deliv": [0, 7], "rtt": [0, 7, 9], "get_rtt": [0, 7], "round": [0, 7, 10], "3": [0, 5, 9, 10, 11], "rttstring": 0, "second": [0, 5, 7, 9, 10, 11], "1000": 0, "millisecond": [0, 10], "proof_packet": 0, "valid": [0, 5, 7, 9, 10], "trip": [0, 7, 10], "fail": [0, 2, 7], "store_tru": 0, "t": [0, 2, 5, 6, 7, 10], "metavar": 0, "float": [0, 7], "narg": 0, "timeoutarg": 0, "print_help": 0, "establish": [0, 2, 5, 6, 7, 11], "remot": [0, 4, 7, 10], "forth": 0, "o": [0, 2, 9, 10, 11], "refer": [0, 2, 4], "latest": [0, 2, 5, 10], "latest_client_link": 0, "server_destin": 0, "linkexampl": 0, "set_link_established_callback": [0, 7], "client_connect": 0, "server_loop": 0, "set_link_closed_callback": [0, 7], "client_disconnect": 0, "server_packet_receiv": 0, "disconnect": 0, "activ": [0, 2, 5, 7, 9], "last": [0, 5, 7], "reply_text": 0, "reply_data": 0, "server_link": 0, "sleep": [0, 10], "begin": [0, 3, 7], "And": 0, "client_packet_receiv": 0, "close": [0, 6, 7, 10], "link_establish": 0, "link_clos": 0, "interact": [0, 2, 7, 9, 10], "client_loop": 0, "becom": [0, 2, 6, 9], "should_quit": 0, "fals": [0, 5, 7, 10], "should": [0, 2, 5, 6, 7, 9, 10, 11], "q": [0, 10], "teardown": [0, 7], "mdu": [0, 7], "size": [0, 2, 5, 7, 9, 10], "exce": [0, 5, 7], "log_error": 0, "error": [0, 2, 8, 10], "ha": [0, 2, 3, 5, 6, 7, 9, 11], "been": [0, 2, 3, 5, 6, 7, 9, 11], "later": [0, 2, 5, 10], "teardown_reason": 0, "now": [0, 2, 6, 9, 10], "elif": 0, "destination_clos": 0, "exit_handl": 0, "5": [0, 2, 5, 10], "_exit": 0, "identifi": [0, 5, 7, 9, 10], "intiat": 0, "initi": [0, 6, 7, 9, 11], "peer": [0, 2, 5, 7, 9, 10], "identifyexampl": 0, "set_remote_identified_callback": [0, 7], "remote_identifi": 0, "origin": [0, 6, 9], "displai": [0, 9], "remote_p": 0, "unidentifi": 0, "get_remote_ident": [0, 7], "client_ident": 0, "sendig": 0, "perform": [0, 2, 5, 6, 9], "random_text_gener": 0, "request_id": [0, 7], "link_id": [0, 7], "remote_ident": [0, 7], "requested_at": [0, 7], "look": [0, 2, 5, 9, 10], "On": [0, 2, 5, 10], "full": [0, 5, 7, 9, 10, 11], "moon": 0, "becki": 0, "upset": 0, "stai": [0, 9, 10], "awai": [0, 5, 6, 9, 10], "pet": 0, "shop": 0, "stock": 0, "requestexampl": 0, "register_request_handl": [0, 7], "response_gener": [0, 7], "allow": [0, 2, 3, 5, 6, 7, 9, 10, 11], "allow_al": [0, 7], "response_callback": [0, 7], "got_respons": 0, "failed_callback": [0, 7], "request_fail": 0, "request_receipt": [0, 7], "request_receiv": 0, "structur": [0, 7, 9, 11], "datetim": 0, "vendor": [0, 3], "umsgpack": 0, "share": [0, 2, 6, 7, 9, 10], "object": [0, 7], "subclass": [0, 7], "messagebas": [0, 4, 7], "ensur": [0, 5, 7, 9, 11], "serial": [0, 2, 3, 4, 9, 11], "deseri": 0, "multiplex": 0, "other": [0, 2, 3, 5, 6, 7, 9, 10], "both": [0, 2, 3, 5, 6, 7, 9, 10, 11], "same": [0, 2, 3, 5, 6, 7, 9, 10], "definit": [0, 9], "note": [0, 3, 4, 5, 7, 9, 10], "wish": [0, 9, 10], "make": [0, 2, 3, 5, 8, 9, 10], "stringmessag": 0, "convei": 0, "timestamp": 0, "msgtype": [0, 7], "variabl": [0, 7], "assign": [0, 9, 10], "integ": 0, "valu": [0, 5, 7, 9], "constructor": 0, "uniqu": [0, 7, 9, 11], "across": [0, 3, 6], "0xf000": [0, 7], "reserv": [0, 7, 9], "0x0101": 0, "callabl": [0, 7], "paramet": [0, 3, 5, 6, 7, 9, 10], "empti": 0, "version": [0, 2, 9, 10], "unpack": [0, 7], "final": [0, 7, 9], "implement": [0, 5, 6, 7, 8, 9, 11], "pack": [0, 7], "raw": [0, 3, 7], "payload": [0, 7, 9], "packag": [0, 2, 5, 9], "bundl": 0, "could": [0, 2, 5, 6, 7, 9, 11], "struct": 0, "python": [0, 4, 7, 9, 10, 11], "more": [0, 2, 3, 5, 6, 7, 9, 10, 11], "fit": 0, "entir": [0, 6, 7, 9, 10], "avail": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11], "properti": [0, 6, 7], "slightli": [0, 2], "less": [0, 5, 7, 9, 11], "due": [0, 6], "header": [0, 7, 9], "content": [0, 2, 6, 10], "stream": [0, 7, 9], "packb": 0, "unpackb": 0, "channelexampl": 0, "get_channel": [0, 7], "register_message_typ": [0, 7], "add_message_handl": [0, 7], "server_message_receiv": 0, "param": 0, "deserializ": 0, "unless": [0, 2, 5, 7, 9], "preced": 0, "indic": 0, "isinst": 0, "reply_messag": 0, "order": [0, 7, 10], "were": [0, 6], "consid": [0, 7, 9, 11], "subsequ": [0, 9], "skip": 0, "packed_s": 0, "is_ready_to_send": [0, 7], "pleas": [0, 2, 5, 7, 10, 11], "pend": 0, "complet": [0, 2, 3, 5, 6, 7, 9, 10, 11], "client_message_receiv": 0, "reader": [0, 7], "writer": [0, 7], "__future__": 0, "annot": 0, "latest_buff": 0, "bufferexampl": 0, "old": [0, 3, 8, 9], "stream_id": [0, 7], "bit": [0, 2, 5, 7, 9, 10, 11], "like": [0, 2, 3, 5, 6, 7, 9, 10, 11], "file": [0, 2, 3, 5, 6, 7, 9, 10, 11], "descriptor": 0, "actual": [0, 2, 5, 9], "separ": [0, 2, 5, 6, 9, 10], "unidirect": 0, "flow": [0, 5, 6], "opposit": [0, 5], "create_bidirectional_buff": [0, 7], "server_buffer_readi": 0, "ready_byt": [0, 7], "int": [0, 7], "otherwis": [0, 7], "forc": [0, 10], "server_client_connect": 0, "detail": [0, 2, 4, 5, 7, 10, 11], "client_buffer_readi": 0, "termin": [0, 2, 7], "download": [0, 5, 10], "resourc": [0, 2, 4, 7, 8], "effici": [0, 2, 5, 9, 11], "serv": [0, 3, 5, 6, 9, 10], "larg": [0, 3, 5, 6, 7, 9, 11], "transfer": [0, 7, 9, 10, 11], "recommend": [0, 2, 9], "compress": [0, 7, 9], "hashmap": 0, "sequenc": [0, 7, 9, 11], "long": [0, 2, 3, 5, 7, 9], "slow": [0, 5, 9], "cpu": [0, 9], "probabl": [0, 2, 6, 9, 10, 11], "result": [0, 9, 10], "befor": [0, 2, 5, 7, 9, 10], "prepar": [0, 6], "instead": [0, 2, 5, 9, 10], "slice": 0, "chunk": 0, "suitabl": [0, 2, 5, 6, 9, 11], "thread": 0, "app_timeout": 0, "45": [0, 9], "serve_path": 0, "here": [0, 2, 3, 5, 9, 10], "conveni": 0, "list_fil": 0, "entri": [0, 2, 9], "listdir": 0, "isfil": 0, "join": [0, 2, 6, 8, 9], "host": [0, 2, 5, 9, 10], "still": [0, 2, 6, 9], "isdir": 0, "list_packet": 0, "list_receipt": 0, "list_deliv": 0, "list_timeout": 0, "too": [0, 6], "mani": [0, 2, 3, 5, 6, 7, 9, 10, 11], "split": 0, "filelist": 0, "multipl": [0, 5, 6, 9, 10], "hint": 0, "alreadi": [0, 2, 3, 6, 7, 9, 10], "support": [0, 2, 4, 6, 9, 10, 11], "after": [0, 2, 5, 6, 7, 9, 10], "re": [0, 5, 7, 9], "keep": [0, 6, 7, 9, 10, 11], "open": [0, 3, 5, 6, 7, 8, 9, 10, 11], "client_request": 0, "longer": [0, 2, 6, 9, 10], "filenam": 0, "rb": 0, "file_resourc": 0, "resource_sending_conclud": 0, "somethign": 0, "went": 0, "wrong": [0, 5], "don": [0, 2, 6, 7, 10], "unknown": [0, 5, 7, 9], "conclud": [0, 7], "hasattr": 0, "server_fil": 0, "current": [0, 2, 4, 5, 7, 9], "current_download": 0, "current_filenam": 0, "statist": [0, 5, 8], "download_start": 0, "download_finish": 0, "download_tim": 0, "transfer_s": 0, "file_s": 0, "expect": [0, 5, 7, 9, 10], "normal": [0, 5, 7, 10], "accordingli": 0, "filelist_receiv": 0, "advertis": [0, 7], "set_resource_strategi": [0, 7], "accept_al": [0, 7], "set_resource_started_callback": [0, 7], "download_began": 0, "set_resource_concluded_callback": [0, 7], "download_conclud": 0, "menu": 0, "menu_mod": 0, "down": [0, 3, 5, 7], "request_packet": 0, "create_receipt": [0, 7], "print_menu": 0, "25": [0, 4, 11], "user_input": 0, "screen": 0, "variou": [0, 2, 5, 6, 9, 10], "state": 0, "It": [0, 2, 3, 5, 7, 9, 10, 11], "uninterest": 0, "won": 0, "clear_screen": 0, "print_filelist": 0, "percent": 0, "get_progress": [0, 7], "100": [0, 5, 9], "rprogress": 0, "save_error": 0, "disk": [0, 7], "hour": [0, 5], "rem": 0, "divmod": 0, "3600": [0, 5], "minut": [0, 2, 5, 9], "60": 0, "timestr": 0, "05": 0, "2f": 0, "ttime": 0, "taken": [0, 9], "tfile": 0, "size_str": 0, "tdata": 0, "teffect": 0, "rate": [0, 4, 7, 10], "suffix": 0, "b": [0, 6, 10], "ttransfer": 0, "press": 0, "index": [0, 2, 4], "enumer": 0, "filelist_data": 0, "extend": [0, 2, 7], "local": [0, 2, 5, 6, 7, 9, 10, 11], "append": [0, 9], "visibl": 0, "updat": [0, 2, 7, 9, 10], "small": [0, 5, 6, 9, 11], "job": 0, "potenti": [0, 5, 8, 9, 10, 11], "target": [0, 5, 10], "filelist_timeout_job": 0, "setdaemon": 0, "detect": 0, "shown": 0, "progress": [0, 7, 11], "total_s": 0, "saved_filenam": 0, "counter": 0, "wb": 0, "human": [0, 7, 8, 9], "readabl": [0, 7, 9], "num": 0, "unit": [0, 2, 7, 10], "ki": 0, "mi": 0, "gi": 0, "ti": [0, 9], "pi": [0, 4, 6, 9, 10, 11], "ei": 0, "zi": 0, "last_unit": 0, "yi": 0, "k": 0, "m": [0, 2, 9, 10], "g": 0, "p": [0, 10], "z": 0, "y": 0, "ab": 0, "1024": 0, "clear": [0, 7, 9, 10], "cl": 0, "nt": 0, "dir": 0, "best": [2, 9, 11], "guid": [2, 3, 9], "outlin": [2, 3, 9], "sensibl": [2, 3], "scenario": [2, 4, 9], "relat": 2, "easiest": [2, 3, 5, 9], "via": [2, 3, 5, 8, 9, 10, 11], "pip": [2, 3, 10], "manag": [2, 6, 7, 9, 10, 11], "sudo": [2, 10], "apt": 2, "python3": [2, 3], "pamac": 2, "similar": [2, 3, 5, 6, 7, 10, 11], "dowload": 2, "releas": [2, 5, 9], "wheel": 2, "channel": [2, 4, 5, 6, 7, 8, 9, 11], "offlin": 2, "py3": 2, "whl": 2, "mai": [2, 5, 7, 9, 10], "case": [2, 3, 5, 6, 9, 10], "usual": 2, "essenti": [2, 5, 9], "deriv": [2, 7, 9, 11], "arch": 2, "manjaro": 2, "devel": 2, "fedora": 2, "dnf": 2, "groupinstal": 2, "tool": [2, 3, 9, 10, 11], "librari": 2, "compil": 2, "miss": 2, "even": [2, 5, 6, 9, 10, 11], "pre": [2, 7, 9], "built": [2, 5, 9, 11], "few": [2, 3, 5, 6, 9, 10, 11], "extrem": [2, 9, 10, 11], "low": [2, 3, 5, 6, 9, 11], "bandwidth": [2, 5, 6, 7, 9, 10, 11], "These": [2, 5, 7, 9, 10], "feel": 2, "work": [2, 3, 5, 6, 9, 10, 11], "design": [2, 3, 6, 9, 11], "well": [2, 3, 5, 6, 7, 9, 11], "lora": [2, 3, 4, 9, 11], "link": [2, 3, 4, 5, 6, 7, 10, 11], "wifi": [2, 4, 5, 6, 9, 10, 11], "wire": [2, 3, 4, 5, 11], "ethernet": [2, 3, 5, 6, 9, 11], "combin": [2, 4, 6, 9], "As": [2, 3, 5, 6, 7, 9, 11], "easi": [2, 3, 5, 9, 10, 11], "experi": [2, 9], "without": [2, 3, 6, 9, 11], "transceiv": [2, 3, 5, 9, 11], "infrastructur": [2, 3, 5, 6, 9, 10], "launch": [2, 10], "devic": [2, 3, 4, 5, 6, 7, 9, 10], "enough": [2, 3, 9], "physic": [2, 3, 5, 9, 10], "rnsh": 2, "fulli": [2, 3, 9, 10, 11], "session": [2, 9], "pipe": [2, 4, 11], "ssh": 2, "suit": [2, 3, 9, 10], "featur": [2, 8, 9, 11], "delai": [2, 5, 9, 10], "browser": 2, "page": [2, 4, 9], "dynam": [2, 10], "render": 2, "authent": [2, 5, 6, 7, 9, 10, 11], "face": [2, 5], "protocol": [2, 3, 4, 5, 11], "lxmf": 2, "anoth": [2, 7, 9, 10], "project": 2, "nomadnet": 2, "veri": [2, 3, 5, 6, 7, 8, 9, 10, 11], "might": [2, 5, 6, 9, 10], "reboot": 2, "again": [2, 5, 9, 10], "would": [2, 5, 6, 7, 9], "rather": [2, 7], "graphic": 2, "linux": [2, 9], "maco": 2, "peopl": [2, 9], "compat": [2, 3, 5, 7, 9], "i2p": [2, 4, 11], "qr": 2, "paper": 2, "anyth": [2, 5, 9, 10, 11], "interoper": [2, 3, 6, 9, 11], "come": [2, 9], "easier": [2, 5, 6, 10], "rnsd": [2, 4], "background": [2, 5], "foreground": 2, "servic": [2, 4, 6], "rnstatu": [2, 4, 5, 9], "rnpath": [2, 4, 5], "rnprobe": [2, 4], "view": [2, 5, 9, 10], "chapter": [2, 3, 5, 6, 7, 9, 10, 11], "locat": [2, 3, 6, 9, 10], "exampl": [2, 3, 4, 5, 7, 9, 10, 11], "exampleconfig": [2, 10], "broadcast": [2, 4, 5, 7, 9], "domain": [2, 5], "further": [2, 4, 5], "tcp": [2, 3, 4, 6, 9, 11], "There": [2, 6, 9, 11], "subnet": [2, 6], "rout": [2, 5, 6, 7, 9, 10, 11], "tabl": [2, 5, 6, 9, 10], "thing": 2, "discov": [2, 5], "topographi": [2, 6, 9], "situat": [2, 3, 5, 6, 9], "where": [2, 3, 4, 5, 6, 7, 9, 10], "utilis": [2, 6, 7, 10, 11], "extern": [2, 5, 7, 11], "often": [2, 5, 6, 9, 10], "suffici": [2, 5, 9, 10], "act": [2, 7, 9, 10], "gatewai": [2, 5, 6, 9], "enabl": [2, 3, 5, 6, 7, 9, 10, 11], "wider": [2, 5, 9, 10], "autointerfac": [2, 3, 5, 10], "possibli": 2, "offer": [2, 4, 5, 7, 9], "carefulli": 2, "tcpserverinterfac": [2, 5], "access": [2, 4, 5, 6, 7, 10], "ip": [2, 3, 5, 9, 10, 11], "faster": [2, 5, 9], "lower": [2, 5, 10], "latenc": [2, 9, 11], "energi": 2, "i2pinterfac": [2, 5], "howev": [2, 6, 9], "leak": 2, "reveal": [2, 7, 9, 11], "who": [2, 9], "inspect": [2, 5, 6, 9, 10], "someon": [2, 5], "determin": [2, 7, 9], "adversari": 2, "record": [2, 9], "metadata": 2, "transmiss": [2, 5, 7, 9], "though": [2, 5, 9], "publicli": 2, "most": [2, 3, 5, 6, 9, 10], "anymor": 2, "through": [2, 3, 5, 6, 7, 9, 10, 11], "invis": [2, 5], "daemon": [2, 5, 7, 10], "parallel": 2, "For": [2, 3, 5, 6, 7, 9, 10, 11], "alwai": [2, 5, 7, 9, 10], "node": [2, 4, 5, 6, 10, 11], "i2pd": [2, 5], "mix": [2, 5, 6, 10], "hide": 2, "relai": 2, "extra": [2, 5, 6, 10], "comput": [2, 9, 11], "power": [2, 3, 5, 9, 10], "attack": 2, "form": [2, 5, 6, 7, 9], "deep": 2, "much": [2, 5, 6, 9, 10], "difficult": [2, 3], "non": [2, 7, 9], "behind": [2, 9], "firewal": [2, 5], "nat": 2, "preserv": [2, 7], "anonym": [2, 6, 7, 9, 11], "care": [2, 7, 11], "experiment": [2, 11], "made": [2, 7, 9], "dublin": 2, "hub": [2, 5], "tcpclientinterfac": [2, 3, 5], "ye": [2, 5, 9, 10], "target_host": [2, 5], "target_port": [2, 5], "4965": [2, 10], "frankfurt": [2, 10], "5377": 2, "uxg5kubabakh3jtnvsipingbr5574dle7bubvip7llfvwx2tgrua": 2, "b32": [2, 5], "point": [2, 3, 5, 6, 9, 10], "absolut": [2, 8, 11], "usag": [2, 4, 5, 7, 8, 10], "occasion": 2, "test": [2, 9], "failur": [2, 5], "guarante": [2, 9], "hardwar": [2, 4, 5, 6, 7, 9, 10, 11], "wide": [2, 3, 5, 9, 11], "section": [2, 3, 5, 6, 9, 10], "easili": [2, 5, 6, 9, 10, 11], "cheapli": 2, "rnode": [2, 4, 9, 10, 11], "purpos": [2, 3, 5, 7, 9], "digit": [2, 3, 9, 11], "integr": [2, 6, 9], "yourself": [2, 9, 11], "custom": [2, 5, 7, 9, 11], "firmwar": [2, 3, 9, 10], "board": [2, 4, 9, 11], "auto": [2, 3, 4, 7, 9], "script": [2, 3], "prefer": [2, 9], "purchas": [2, 6, 9, 11], "supplier": [2, 4], "addit": [2, 3, 5, 7, 9, 10, 11], "privat": [2, 5, 7, 8, 9, 11], "secur": [2, 9, 11], "uncensor": 2, "mesh": [2, 5, 6, 11], "think": 2, "welcom": 2, "head": 2, "discuss": [2, 3, 9], "propos": 2, "pip3": [2, 10], "abov": [2, 3, 5, 9, 10], "next": [2, 6, 7, 9], "step": [2, 3], "pyseri": 2, "api": [2, 4, 9, 11], "associ": [2, 7, 9], "recip": 2, "cryptographi": [2, 9, 11], "clone": 2, "repositori": [2, 8, 9], "git": 2, "move": [2, 5, 9, 10], "folder": 2, "symlink": [2, 10], "cd": 2, "ln": [2, 10], "echo": [2, 4, 10], "ve": 2, "immedi": [2, 5, 10], "necessari": [2, 3, 5, 6, 7, 9], "nano": 2, "repeat": 2, "process": [2, 3, 5, 7, 9], "h": [2, 10], "ping": [2, 10], "replac": [2, 9, 10], "below": [2, 3, 5, 10], "174a64852a75682259ad8b921b8bf416": 2, "filetransf": [2, 4, 7], "understand": [2, 4, 7, 10], "submit": 2, "pull": 2, "request": [2, 4, 5, 7, 9, 10], "good": [2, 3, 6, 9, 10], "idea": [2, 9, 10], "introduc": [2, 9], "disucss": 2, "forum": 2, "maintain": [2, 9], "place": [2, 6, 9, 10], "procedur": [2, 7, 9], "quirk": 2, "worth": 2, "being": [2, 5, 7, 9], "awar": [2, 9], "termux": 2, "f": 2, "droid": 2, "emul": 2, "environ": [2, 6, 9], "abil": [2, 3], "pkg": 2, "sure": [2, 3, 10], "upgrad": [2, 9], "Then": 2, "reason": [2, 5, 9], "attempt": [2, 3, 7], "openssl": [2, 9], "libffi": 2, "rust": 2, "export": 2, "cargo_build_target": 2, "aarch64": 2, "sever": [2, 6, 7, 10], "succe": 2, "softwar": [2, 3, 5, 9, 11], "possibl": [2, 3, 5, 6, 7, 9, 10, 11], "apk": 2, "tutori": 2, "code": [2, 3, 4, 5, 10], "startig": 2, "architectur": 2, "precompil": 2, "dev": [2, 5, 10], "64": [2, 9, 10], "32": [2, 9], "rasperri": 2, "os": [2, 5], "april": 2, "2023": 2, "onto": [2, 9], "unfortun": 2, "pipx": 2, "isol": [2, 5, 10], "neg": 2, "affect": [2, 5], "ensurepath": 2, "rare": [2, 5], "obscur": 2, "unusu": 2, "rnspure": 2, "No": [2, 5, 9, 10, 11], "matter": [2, 5], "perfectli": 2, "pyca": [2, 9], "cryptograph": [2, 4, 6, 11], "primit": [2, 4], "One": [3, 7], "truli": [3, 9], "valuabl": [3, 8], "almost": [3, 5, 9, 10], "conceiv": 3, "kind": [3, 5, 6, 9], "medium": [3, 5, 6, 7, 9, 11], "flexibl": [3, 5, 11], "cover": [3, 9, 11], "wireless": [3, 6], "decad": 3, "radio": [3, 4, 5, 6, 7, 9, 10, 11], "modem": [3, 5, 6, 7, 9, 11], "modern": [3, 9], "millimet": 3, "wave": 3, "backhaul": [3, 6], "oper": [3, 5, 6, 7, 9, 10, 11], "chanc": 3, "box": 3, "glue": 3, "littl": [3, 9], "effort": 3, "pipeinterfac": [3, 5], "kiss": [3, 4, 10, 11], "simplyequip": 3, "broad": 3, "abund": 3, "sometim": 3, "especi": [3, 5], "scratch": 3, "real": [3, 6, 11], "world": [3, 6, 11], "minim": [3, 4, 9], "cost": [3, 9, 11], "fundament": [3, 9], "categori": 3, "emploi": [3, 9], "reliabl": [3, 5, 6, 7, 9, 11], "commonli": 3, "either": [3, 5, 6, 7, 9, 10], "expens": 3, "hard": 3, "hungri": 3, "allevi": 3, "particular": 3, "plaform": 3, "depend": [3, 4, 6, 7, 9, 10], "its": [3, 5, 7, 9], "compon": [3, 8, 9], "frequenc": [3, 5, 9, 10], "band": [3, 9], "scheme": 3, "limit": [3, 6, 9], "common": [3, 4, 6, 9, 10, 11], "ism": [3, 9], "avoid": [3, 9, 10], "confus": [3, 9], "layer": [3, 5, 6, 9, 11], "noth": [3, 11], "lorawan": [3, 9], "standard": [3, 9], "central": [3, 6, 9], "iot": 3, "overhead": [3, 5, 9], "high": [3, 5, 9, 11], "level": [3, 5, 9, 10], "directli": [3, 5, 7, 9, 10, 11], "replic": [3, 9], "togeth": [3, 9, 10], "exact": [3, 5, 9], "explain": [3, 7], "approach": [3, 9, 10], "develop": [3, 4, 7, 8, 9, 11], "boil": 3, "obtain": [3, 7, 9], "autom": [3, 8, 9], "provis": [3, 10], "rnodeinterfac": [3, 5, 10], "ic": 3, "semtech": 3, "sx1276": 3, "platform": [3, 4, 9], "esp32": 3, "manufactur": 3, "io": [3, 10], "avr": 3, "atmega1284p": 3, "rnodeconf": [3, 4], "autoinstal": [3, 10], "seri": 3, "question": [3, 5], "port": [3, 4, 5, 6, 9, 11], "air": [3, 11], "id": [3, 5, 7, 9, 10], "itself": [3, 4, 9], "touch": [3, 11], "produc": 3, "short": [3, 9, 10], "bridg": [3, 4], "behav": 3, "mean": [3, 5, 6, 9, 10], "dhcp": [3, 5, 10], "dn": 3, "least": [3, 5, 9, 10, 11], "transpar": [3, 5, 9, 10], "capac": [3, 5, 7, 9], "distanc": [3, 9], "ubiqu": 3, "airmax": 3, "ltu": 3, "mikrotik": 3, "exhaust": [3, 9], "rel": [3, 9, 11], "cheap": [3, 9], "co": [3, 5, 11], "concurr": [3, 9, 10], "pattern": [3, 9], "gain": [3, 7, 9], "antenna": 3, "backbon": 3, "area": [3, 5, 6, 9, 11], "html": [], "aim": [4, 9], "particip": [4, 6, 9], "pdf": 4, "epub": 4, "caveat": 4, "emptor": 4, "fast": [4, 5, 7, 9], "standalon": 4, "instal": [4, 5, 6, 9, 10, 11], "resolv": [4, 5], "issu": [4, 6, 8], "base": [4, 5, 6, 7, 9, 10, 11], "shell": [4, 10], "nomad": 4, "sideband": 4, "With": [4, 5, 6, 9, 10], "internet": [4, 5, 9, 11], "testnet": [4, 10], "android": 4, "arm64": 4, "raspberri": [4, 6, 9, 10, 11], "debian": [4, 9, 10], "bookworm": 4, "ubuntu": [4, 10], "lunar": 4, "pure": [4, 9], "rncp": 4, "rnx": 4, "improv": [4, 5, 8], "fix": [4, 9], "motiv": 4, "goal": [4, 5], "introduct": 4, "announc": [4, 7, 10], "mechan": [4, 5], "reach": [4, 5, 6], "prioritis": [4, 5, 6, 7], "propag": [4, 5, 7], "rule": [4, 5], "udp": [4, 6, 9, 10, 11], "ax": [4, 11], "concept": [4, 9, 10], "overview": [4, 5, 9], "interconnect": [4, 5, 9], "site": [4, 5], "growth": 4, "converg": [4, 9], "identif": [4, 5, 11], "respons": [4, 7, 9], "buffer": [4, 5, 7], "donat": 4, "contribut": 4, "requestreceipt": [4, 7], "rawchannelread": [4, 7], "rawchannelwrit": [4, 7], "search": 4, "distinct": [5, 9], "topologi": [5, 9], "endless": 5, "describ": [5, 7, 9], "give": [5, 9, 10], "respect": [5, 11], "discover": 5, "autoconfigur": [5, 11], "ipv6": [5, 10], "router": [5, 10], "sort": [5, 9], "switch": [5, 9, 10], "interface_en": [5, 10], "lan": 5, "group": [5, 7, 9], "group_id": 5, "kernel": [5, 10, 11], "wlan0": 5, "eth1": 5, "Or": [5, 10, 11], "ignor": [5, 7, 9], "ones": [5, 10], "ignored_devic": 5, "tun0": 5, "eth0": 5, "multicast": 5, "autodiscov": 5, "discoveri": [5, 9, 10], "scope": 5, "admin": 5, "organis": [5, 6, 8], "custom_network_nam": 5, "discovery_scop": 5, "discovery_port": 5, "48555": 5, "data_port": 5, "49555": 5, "frequent": 5, "block": 5, "inbound": [5, 7], "portabl": [5, 9], "persist": [5, 10], "achiev": [5, 7, 9], "geti2p": 5, "net": 5, "websit": 5, "base32": 5, "comma": 5, "5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq": 5, "output": [5, 10], "event": 5, "simplest": [5, 9], "tunnel": [5, 9, 11], "interchang": 5, "degre": 5, "retain": 5, "eas": [5, 9], "simpler": 5, "4242": 5, "listen_ip": 5, "listen_port": 5, "bind": 5, "10": [5, 9, 10], "88": 5, "i2p_tunnel": 5, "127": 5, "5001": 5, "dedic": [5, 9], "natur": 5, "toler": 5, "intermitt": 5, "gracefulli": 5, "restor": 5, "reappear": 5, "hostnam": 5, "expos": [5, 7], "soundmodem": 5, "kiss_fram": 5, "tnc": [5, 7, 10, 11], "8001": 5, "caution": 5, "frame": 5, "conjunct": 5, "never": [5, 7, 9], "disabl": [5, 9, 10], "intern": [5, 7, 9], "recoveri": 5, "greatli": 5, "unreli": 5, "implic": 5, "better": 5, "udpinterfac": 5, "forward_ip": 5, "255": 5, "forward_port": 5, "assum": [5, 9], "55": 5, "72": 5, "24": 5, "equival": 5, "forward": [5, 7, 9, 11], "segment": [5, 6, 7, 9, 11], "cours": [5, 9], "15": 5, "16": [5, 9, 10], "ttyusb0": [5, 10], "867": 5, "mhz": [5, 9], "867200000": 5, "125": 5, "khz": 5, "125000": 5, "tx": [5, 10], "7": [5, 9, 10], "mw": 5, "txpower": 5, "spread": [5, 10], "factor": [5, 7, 10], "12": [5, 10], "fastest": [5, 9], "longest": 5, "spreadingfactor": 5, "throough": 5, "codingr": 5, "interv": [5, 7], "id_callsign": 5, "mycal": 5, "id_interv": 5, "600": 5, "homebrew": 5, "amount": [5, 6, 7, 9, 11], "ram": 5, "flow_control": 5, "pair": [5, 7, 9, 10], "laser": 5, "serialinterfac": 5, "baud": 5, "speed": [5, 9, 10], "115200": [5, 10], "databit": [5, 10], "pariti": [5, 10], "stopbit": [5, 10], "stdin": [5, 10], "virtual": [5, 6, 9, 10, 11], "netcat": 5, "l": [5, 10], "5757": 5, "respawn": 5, "respawn_delai": 5, "continu": [5, 7, 8, 11], "scan": 5, "eof": 5, "respawn_interv": 5, "varieti": [5, 9, 10, 11], "openmodem": [5, 11], "period": [5, 7, 9], "beacon": 5, "station": 5, "kissinterfac": [5, 10], "ttyusb1": 5, "preambl": [5, 10], "150": [5, 10], "tail": 5, "txtail": [5, 10], "cdma": 5, "200": [5, 10], "slottim": [5, 10], "20": [5, 9, 10], "elaps": 5, "comment": [5, 10], "amateur": [5, 11], "spectrum": [5, 9], "encapsul": [5, 11], "callsign": 5, "ssid": 5, "realli": [5, 7], "doesn": 5, "incur": 5, "ax25kissinterfac": 5, "no1cll": 5, "ttyusb2": 5, "150m": 5, "increas": [5, 10], "squelch": 5, "rx": 5, "turnaround": 5, "kept": [5, 6, 7, 9], "wast": 5, "airtim": 5, "behaviour": [5, 10], "bring": 5, "brought": [5, 10], "access_point": 5, "shorthand": [5, 10], "ap": 5, "shorter": 5, "expiri": 5, "mostli": [5, 6, 9], "quiet": [5, 10], "momentarili": 5, "disappear": [5, 10], "network_nam": 5, "passphras": [5, 9], "alon": 5, "ifac_s": 5, "customis": 5, "carri": [5, 7, 9, 10], "512": [5, 7, 9], "announce_cap": [5, 7], "maximum": [5, 7, 9], "alloc": [5, 7, 9, 10], "given": [5, 6, 7, 9, 10], "upkeep": 5, "cap": 5, "queue": [5, 9], "nearbi": 5, "overwhelm": [5, 7], "rapidli": 5, "spam": 5, "effect": 5, "excess": 5, "benefici": [5, 10], "balanc": 5, "necesarri": 5, "bitrat": 5, "report": [5, 8], "guess": 5, "per": [5, 7, 9, 11], "strictli": [5, 9], "complex": [5, 9], "left": [5, 7, 9, 10], "gw": 5, "addition": [5, 9], "behalf": 5, "resid": 5, "requestor": 5, "chain": 5, "along": [5, 6, 7, 9], "boundari": 5, "remain": [5, 7, 9], "roam": 5, "mobil": [5, 9], "seen": [5, 9], "perspect": [5, 7, 9, 11], "vehicl": 5, "equip": [5, 6, 9], "side": [5, 11], "expir": 5, "significantli": 5, "impact": [5, 9], "announce_rate_target": 5, "announce_rate_grac": 5, "announce_rate_penalti": 5, "basi": [5, 7, 9, 10, 11], "moder": 5, "violat": 5, "enforc": 5, "penalti": 5, "7200": 5, "annouce_cap": 5, "mention": [5, 9], "strategi": [5, 7], "decis": [5, 9], "slower": [5, 7, 9], "hop": [5, 6, 7, 9, 10, 11], "right": [5, 6], "tend": 5, "conserv": 5, "span": [5, 9], "seamlessli": 5, "knowledg": [6, 9], "tradit": [6, 9], "worri": 6, "coordin": [6, 7, 9, 11], "evolv": 6, "futur": [6, 9], "mind": [6, 11], "autonom": [6, 9], "terminologi": [6, 9], "rest": [6, 11], "billion": [6, 9], "larger": [6, 9], "higher": [6, 11], "discrimin": 6, "ephemer": [6, 7, 9, 11], "ellipt": [6, 7, 9, 11], "curv": [6, 7, 9, 11], "diffi": [6, 9, 11], "hellman": [6, 9, 11], "exchang": [6, 7, 9, 11], "curve25519": [6, 7, 9, 11], "throttl": 6, "thu": [6, 7, 9], "agnost": [6, 9], "equal": [6, 7, 9], "keystor": 6, "degrad": 6, "term": [6, 9], "stationari": [6, 10], "candid": 6, "optim": 6, "intend": [6, 9], "trustless": [6, 9, 11], "leav": [6, 9], "free": [6, 8, 11], "unorganis": 6, "manner": 6, "far": [6, 9], "unexplor": 6, "dissolv": 6, "organ": 6, "restrict": 6, "legaci": 6, "unifi": 6, "underli": [6, 11], "carrier": [6, 11], "involv": 6, "hardlin": 6, "decid": [6, 7, 9], "illustr": [6, 9], "plan": [6, 9], "member": 6, "mainli": 6, "three": [6, 9], "hill": 6, "top": [6, 9], "chosen": [6, 9], "sight": 6, "becaus": [6, 9], "four": 6, "At": [6, 9], "usb": [6, 9, 10], "cabl": 6, "adapt": 6, "suppli": [6, 7, 9], "grow": 6, "core": [6, 9, 10, 11], "those": [6, 9], "previous": [6, 7, 9], "d": [6, 10], "island": 6, "investig": 6, "dori": 6, "willing": 6, "she": 6, "her": 6, "home": 6, "newli": [6, 7, 9], "everyon": [6, 9], "vice": [6, 11], "versa": [6, 11], "vhf": [6, 9, 11], "outli": 6, "geograph": 6, "coverag": 6, "dai": 6, "find": [6, 9], "poorli": 6, "outlier": 6, "signatur": [7, 9, 11], "configdir": 7, "logdest": 7, "verbos": [7, 10], "exactli": [7, 9], "independ": [7, 9, 11], "inter": 7, "soon": 7, "kill": [7, 9], "forcibli": [7, 10], "advantag": 7, "demand": 7, "mtu": [7, 9, 11], "500": [7, 9, 11], "adher": 7, "507": 7, "break": [7, 9, 11], "prerequisit": 7, "percentag": 7, "schedul": 7, "queu": [7, 10], "fewer": 7, "distant": 7, "smaller": 7, "eventu": 7, "drop": [7, 9, 10], "appli": [7, 9], "individu": [7, 9, 11], "static": 7, "should_use_implicit_proof": 7, "explicit": 7, "implicit": [7, 9], "transport_en": 7, "create_kei": 7, "decrypt": [7, 9], "verif": [7, 9], "sign": [7, 9], "dh": 7, "keysiz": 7, "x25519": [7, 9, 11], "concaten": 7, "256": [7, 9], "128": [7, 9, 11], "constant": 7, "truncat": [7, 9], "recall_app_data": 7, "heard": [7, 9], "full_hash": 7, "sha": [7, 9], "truncated_hash": 7, "from_byt": 7, "prv_byte": 7, "save": [7, 9], "hazard": 7, "feed": 7, "from_fil": 7, "to_fil": 7, "Be": [7, 10], "get_private_kei": 7, "get_public_kei": 7, "load_private_kei": 7, "load_public_kei": 7, "pub_byt": 7, "ciphertext": 7, "token": [7, 9], "keyerror": 7, "hold": [7, 9], "ciphertext_token": 7, "presenc": 7, "ingo": 7, "zero": [7, 11], "expand_nam": 7, "app_and_aspects_from_nam": 7, "full_nam": [7, 10], "tupl": 7, "hash_from_name_and_ident": 7, "path_respons": 7, "attached_interfac": 7, "tag": 7, "flag": [7, 9], "accepts_link": 7, "accept": [7, 8, 9, 10], "set_proof_requested_callback": 7, "proof_strategi": 7, "prove_non": 7, "prove_app": 7, "proof_requested_callback": 7, "allow_non": 7, "allowed_list": 7, "whatev": [7, 9], "funcion": 7, "allow_list": 7, "deregister_request_handl": 7, "deregist": 7, "symmetr": [7, 9], "typeerror": 7, "incompat": [7, 9], "set_default_app_data": 7, "clear_default_app_data": 7, "ae": [7, 9, 11], "secreci": [7, 9, 11], "instanti": 7, "encrypted_mdu": 7, "383": 7, "plain_mdu": 7, "464": 7, "resend": 7, "get_statu": 7, "cull": 7, "successful": 7, "proven": [7, 9], "established_callback": 7, "closed_callback": 7, "establishment_timeout_per_hop": 7, "6": [7, 10], "keepalive_timeout_factor": 7, "4": [7, 9, 10], "calcul": [7, 9], "stale_grac": 7, "grace": 7, "keepal": [7, 9], "360": 7, "aliv": [7, 9], "stale_tim": 7, "720": 7, "mark": [7, 9], "stale": 7, "torn": 7, "progress_callback": 7, "info": [7, 9, 10], "get_establishment_r": 7, "ocur": 7, "no_inbound_for": 7, "no_outbound_for": 7, "outbound": [7, 9], "inactive_for": 7, "purg": 7, "set_resource_callback": 7, "get_transfer_s": 7, "get_data_s": 7, "get_part": 7, "is_compress": 7, "begun": 7, "resource_strategi": 7, "accept_non": 7, "accept_app": 7, "resource_callback": 7, "unsupport": 7, "get_request_id": 7, "get_respons": 7, "get_response_tim": 7, "auto_compress": 7, "arbitrari": [7, 9, 10, 11], "checksum": [7, 11], "Will": 7, "whenev": [7, 9], "cancel": 7, "total": [7, 9, 11], "get_seg": 7, "divid": 7, "get_hash": 7, "bi": [7, 9], "neither": [7, 9], "constrain": 7, "message_class": 7, "recept": 7, "messagecallbacktyp": 7, "bool": 7, "stop": [7, 11], "remove_message_handl": 7, "remov": [7, 10], "envelop": 7, "thrown": 7, "consum": 7, "adjust": 7, "accommod": [7, 9], "abstract": [7, 9], "greater": [7, 9], "popul": 7, "bufferedread": 7, "bufferedwrit": 7, "bufferedrwpair": 7, "create_read": 7, "ready_callback": 7, "document": [7, 9], "create_writ": 7, "receive_stream_id": 7, "send_stream_id": 7, "rawiobas": 7, "add_ready_callback": 7, "cb": [7, 9], "remove_ready_callback": 7, "pathfinder_m": 7, "attribut": 7, "deregister_announce_handl": 7, "hops_to": 7, "next_hop": 7, "next_hop_interfac": 7, "on_interfac": 7, "recurs": 7, "gratefulli": 8, "monero": 8, "84fpy1qbxhcgdseepynmhthcrgmx4nffbytz2gkytoqhvvhjp8eaw1z1eedrnkd19b3b8nilcgvxzkv17ummmeescrpya5w": 8, "ethereum": 8, "0x81f7b979fea6134ba9fd5c701b3501a2e61e897a": 8, "bitcoin": 8, "3cpmacgm34qyvr6xwlvejmi2ane3pzquuq": 8, "ko": 8, "fi": 8, "roadmap": 8, "realiti": 8, "quickli": [8, 9, 11], "sponsor": [8, 11], "dysfunct": 8, "analyt": 8, "telemetri": 8, "collect": 8, "under": [8, 10, 11], "circumst": [8, 9], "reli": [8, 9], "fashion": 8, "u": [8, 9, 10], "suggest": 8, "briefli": 9, "overal": 9, "principl": [9, 11], "author": 9, "That": 9, "said": 9, "pretti": 9, "sentiment": 9, "philosophi": 9, "problem": 9, "seek": 9, "solv": 9, "solut": 9, "primari": 9, "lack": 9, "my": 9, "belief": 9, "highli": 9, "machin": 9, "censorship": [9, 11], "barrier": 9, "todai": 9, "centralis": 9, "trust": 9, "approv": 9, "gatekeep": 9, "inevit": 9, "lead": 9, "govern": 9, "alter": 9, "censor": 9, "persecut": 9, "unwant": 9, "actor": 9, "imposs": 9, "freeli": 9, "deploi": 9, "enhanc": 9, "agenc": 9, "freedom": 9, "permissionless": 9, "pick": 9, "ghz": 9, "off": [9, 10, 11], "shelf": [9, 11], "ultim": 9, "vast": 9, "myriad": 9, "thousand": 9, "surveil": 9, "disassoci": 9, "oversight": 9, "beings": 9, "usabl": 9, "useabl": 9, "critic": [9, 10], "agnostic": 9, "shall": 9, "handheld": 9, "modifi": [9, 10], "interest": 9, "strong": 9, "oneself": 9, "unlicens": 9, "licens": 9, "condit": [9, 11], "pmr": 9, "written": 9, "programm": 9, "orient": 9, "multipoint": 9, "recipi": 9, "singular": 9, "_represented_": 9, "characterist": 9, "13425ec15b621c1d928589718000d814": 9, "trade": 9, "simultan": 9, "unlik": 9, "nears": 9, "congest": 9, "galact": 9, "scale": [9, 11], "obvious": 9, "ridicul": 9, "multi": [9, 10, 11], "special": [9, 10], "ecdh": [9, 11], "creator": 9, "correspond": 9, "possess": 9, "although": [9, 11], "capabl": 9, "dot": [9, 10], "notat": [9, 10], "repres": 9, "plenti": 9, "environment": 9, "monitor": 9, "measur": 9, "environmentlogg": 9, "remotesensor": 9, "temperatur": 9, "4faf1b2e0a077e6a9d92fa051f256038": 9, "advis": 9, "expand": 9, "recap": 9, "indirectli": 9, "ledger": 9, "therefor": [9, 11], "messeng": 9, "nicknam": 9, "ed25519": [9, 11], "reconstruct": 9, "notic": [9, 10], "piec": 9, "intention": 9, "infer": 9, "throughout": 9, "accord": 9, "around": 9, "topic": 9, "necessarili": 9, "person": 9, "entiti": 9, "robot": 9, "sensor": 9, "someth": 9, "agent": 9, "manipul": [9, 11], "multilater": 9, "creation": [9, 11], "great": 9, "suffic": 9, "cluster": 9, "hear": 9, "But": 9, "lot": 9, "surviv": 9, "overcom": 9, "challeng": 9, "asymmetr": [9, 11], "closer": 9, "distinguish": 9, "contend": 9, "enable_transport": [9, 10], "retransmit": 9, "randomis": 9, "prioriti": 9, "invers": 9, "proport": 9, "count": 9, "insert": 9, "closest": 9, "newer": 9, "newest": 9, "discard": 9, "contact": 9, "shortest": 9, "predict": 9, "constantli": 9, "earlier": 9, "opt": 9, "against": 9, "bidirect": 9, "travers": 9, "rememb": 9, "ten": 9, "advanc": 9, "confirm": [9, 11], "insid": 9, "intermediari": 9, "moment": [9, 11], "methodologi": [9, 10], "answer": [9, 10], "malici": 9, "pretend": 9, "recreat": 9, "rotat": 9, "memori": 9, "thereaft": 9, "297": [9, 11], "practic": [9, 11], "neglig": 9, "1200": 9, "96": 9, "keypair": 9, "simplic": 9, "explan": [9, 10], "lki": 9, "laid": 9, "had": 9, "construct": [9, 11], "lkr": 9, "chose": 9, "direction": 9, "unequivoc": 9, "retransmiss": 9, "reassembl": 9, "programmat": 9, "satisfi": 9, "half": [9, 11], "duplex": [9, 11], "averag": 9, "throughput": [9, 11], "x": [9, 10], "runtim": 9, "consist": 9, "whereupon": 9, "stabl": [9, 11], "stage": 9, "year": 9, "microcontrol": 9, "430": 9, "868": 9, "900": 9, "recent": 9, "mac": 9, "tailor": 9, "treat": 9, "regard": 9, "preshar": 9, "ifac": [9, 10], "compos": 9, "field": 9, "context": 9, "465": 9, "vari": [9, 10], "00": [9, 10], "01": 9, "11": 9, "_______": 9, "________________": 9, "________": 9, "______": 9, "__": 9, "_": 9, "01010000": 9, "00000100": 9, "hash1": 9, "hash2": 9, "header_2": 9, "00000000": 9, "00000111": 9, "header_1": 9, "10000000": 9, "exclud": 9, "51": 9, "167": 9, "83": [9, 10], "115": 9, "99": 9, "conceptu": 9, "x22519": 9, "hkdf": 9, "fernet": [9, 11], "cbc": [9, 11], "hmac": [9, 11], "hashlib": 9, "pkcs7": [9, 11], "pad": [9, 11], "trivial": [9, 11], "consequ": 9, "backend": 9, "loss": 9, "scrutini": 9, "review": [9, 11], "risk": 9, "pose": 9, "driver": [10, 11], "privileg": 10, "light": 10, "weight": 10, "etc": 10, "boot": 10, "edit": 10, "ie": 10, "breviti": 10, "socket": 10, "turn": 10, "share_inst": 10, "shared_instance_port": 10, "37428": 10, "instance_control_port": 10, "37429": 10, "panic": 10, "unrecover": 10, "occur": [10, 11], "panic_on_interface_error": 10, "warn": 10, "debug": 10, "unus": 10, "teach": 10, "task": 10, "v": 10, "show": 10, "ifconfig": 10, "gbp": 10, "13": 10, "kb": 10, "86": 10, "mbp": 10, "63": 10, "23": 10, "80": 10, "17": 10, "tcpinterfac": 10, "unsign": 10, "187": 10, "27": 10, "74": 10, "uhf": [10, 11], "30": 10, "kbp": 10, "e702c42ba8": 10, "49": 10, "9": 10, "5245a8efe1788c6a1cd36144a270e13b": 10, "c89b4da064bf66d280f0e4d8abfd9806": 10, "f53a1c4278e0726bb73fcc623d6ce763": 10, "reticulu": 10, "w": 10, "posit": 10, "probe": 10, "2d03725b327348980d570f739a3a5708": 10, "38": 10, "469": 10, "1726dbad538775b5bf9b0ea25a4079c8": 10, "c50cc4e4f7838b6c31f60ab9032cbc62": 10, "copi": 10, "tgz": 10, "73cbd378bb0286ed11a707c13447bb1": 10, "allowed_hash": 10, "decreas": 10, "auth": 10, "941bed5e228775e5a8079fc38b1ccf3f": 10, "1b03013c25f1c2ca068a4f080b844a10": 10, "7a55144adf826958a9529a3bcf08b149": 10, "cat": 10, "proc": 10, "cpuinfo": 10, "pseudo": 10, "stderr": 10, "noauth": 10, "noid": 10, "mirror": 10, "max": 10, "fw": 10, "nocheck": 10, "freq": 10, "hz": 10, "bw": 10, "txp": 10, "sf": 10, "cr": 10, "eeprom": 10, "backup": 10, "dump": 10, "wipe": 10, "flash": 10, "attach": 10, "older": 10, "onlin": 10, "extract": 10, "cach": 10, "bluetooth": 10, "consol": 10, "unlock": 10, "perman": 10, "administr": 10, "ftdi_ft230x_basic_uart_43891ckm": 10, "if00": 10, "port0": 10, "plug": 10, "unplug": 10, "systemd": 10, "usr": 10, "bin": 10, "execstartpr": 10, "restart": 10, "restartsec": 10, "usernameher": 10, "execstart": 10, "wantedbi": 10, "systemctl": 10, "readili": 11, "advers": 11, "unforg": 11, "acknowledg": 11, "empow": 11, "autonomi": 11, "sovereignti": 11, "subject": 11, "outsid": 11, "planetari": 11, "hierarch": 11, "beaureucrat": 11, "resili": 11, "userland": 11, "beta": 11, "bug": 11, "warrant": 11, "sha256": 11, "iv": 11, "urandom": 11, "intuit": 11, "friendli": 11, "44": 11, "gigabyt": 11, "scalabl": 11, "hoc": 11, "optic": 11, "transform": 11, "fact": 11, "strength": 11, "generalis": 11, "fibr": 11, "popular": 11, "ideal": 11, "stdio": 11, "hack": 11, "foremost": 11, "audit": 11, "privaci": 11, "thorough": 11, "research": 11}, "objects": {"RNS": [[7, 0, 1, "", "Buffer"], [7, 0, 1, "", "Destination"], [7, 0, 1, "", "Identity"], [7, 0, 1, "", "Link"], [7, 0, 1, "", "MessageBase"], [7, 0, 1, "", "Packet"], [7, 0, 1, "", "PacketReceipt"], [7, 0, 1, "", "RawChannelReader"], [7, 0, 1, "", "RawChannelWriter"], [7, 0, 1, "", "RequestReceipt"], [7, 0, 1, "", "Resource"], [7, 0, 1, "", "Reticulum"], [7, 0, 1, "", "Transport"]], "RNS.Buffer": [[7, 1, 1, "", "create_bidirectional_buffer"], [7, 1, 1, "", "create_reader"], [7, 1, 1, "", "create_writer"]], "RNS.Channel": [[7, 0, 1, "", "Channel"]], "RNS.Channel.Channel": [[7, 2, 1, "", "MDU"], [7, 1, 1, "", "add_message_handler"], [7, 1, 1, "", "is_ready_to_send"], [7, 1, 1, "", "register_message_type"], [7, 1, 1, "", "remove_message_handler"], [7, 1, 1, "", "send"]], "RNS.Destination": [[7, 1, 1, "", "accepts_links"], [7, 1, 1, "", "announce"], [7, 1, 1, "", "app_and_aspects_from_name"], [7, 1, 1, "", "clear_default_app_data"], [7, 1, 1, "", "create_keys"], [7, 1, 1, "", "decrypt"], [7, 1, 1, "", "deregister_request_handler"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "expand_name"], [7, 1, 1, "", "get_private_key"], [7, 1, 1, "", "hash"], [7, 1, 1, "", "hash_from_name_and_identity"], [7, 1, 1, "", "load_private_key"], [7, 1, 1, "", "register_request_handler"], [7, 1, 1, "", "set_default_app_data"], [7, 1, 1, "", "set_link_established_callback"], [7, 1, 1, "", "set_packet_callback"], [7, 1, 1, "", "set_proof_requested_callback"], [7, 1, 1, "", "set_proof_strategy"], [7, 1, 1, "", "sign"]], "RNS.Identity": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "KEYSIZE"], [7, 3, 1, "", "TRUNCATED_HASHLENGTH"], [7, 1, 1, "", "decrypt"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "from_bytes"], [7, 1, 1, "", "from_file"], [7, 1, 1, "", "full_hash"], [7, 1, 1, "", "get_private_key"], [7, 1, 1, "", "get_public_key"], [7, 1, 1, "", "get_random_hash"], [7, 1, 1, "", "load_private_key"], [7, 1, 1, "", "load_public_key"], [7, 1, 1, "", "recall"], [7, 1, 1, "", "recall_app_data"], [7, 1, 1, "", "sign"], [7, 1, 1, "", "to_file"], [7, 1, 1, "", "truncated_hash"], [7, 1, 1, "", "validate"]], "RNS.Link": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "ESTABLISHMENT_TIMEOUT_PER_HOP"], [7, 3, 1, "", "KEEPALIVE"], [7, 3, 1, "", "KEEPALIVE_TIMEOUT_FACTOR"], [7, 3, 1, "", "STALE_GRACE"], [7, 3, 1, "", "STALE_TIME"], [7, 1, 1, "", "get_channel"], [7, 1, 1, "", "get_establishment_rate"], [7, 1, 1, "", "get_remote_identity"], [7, 1, 1, "", "identify"], [7, 1, 1, "", "inactive_for"], [7, 1, 1, "", "no_inbound_for"], [7, 1, 1, "", "no_outbound_for"], [7, 1, 1, "", "request"], [7, 1, 1, "", "set_link_closed_callback"], [7, 1, 1, "", "set_packet_callback"], [7, 1, 1, "", "set_remote_identified_callback"], [7, 1, 1, "", "set_resource_callback"], [7, 1, 1, "", "set_resource_concluded_callback"], [7, 1, 1, "", "set_resource_started_callback"], [7, 1, 1, "", "set_resource_strategy"], [7, 1, 1, "", "teardown"]], "RNS.MessageBase": [[7, 3, 1, "", "MSGTYPE"], [7, 1, 1, "", "pack"], [7, 1, 1, "", "unpack"]], "RNS.Packet": [[7, 3, 1, "", "ENCRYPTED_MDU"], [7, 3, 1, "", "PLAIN_MDU"], [7, 1, 1, "", "resend"], [7, 1, 1, "", "send"]], "RNS.PacketReceipt": [[7, 1, 1, "", "get_rtt"], [7, 1, 1, "", "get_status"], [7, 1, 1, "", "set_delivery_callback"], [7, 1, 1, "", "set_timeout"], [7, 1, 1, "", "set_timeout_callback"]], "RNS.RawChannelReader": [[7, 1, 1, "", "__init__"], [7, 1, 1, "", "add_ready_callback"], [7, 1, 1, "", "remove_ready_callback"]], "RNS.RawChannelWriter": [[7, 1, 1, "", "__init__"]], "RNS.RequestReceipt": [[7, 1, 1, "", "get_progress"], [7, 1, 1, "", "get_request_id"], [7, 1, 1, "", "get_response"], [7, 1, 1, "", "get_response_time"], [7, 1, 1, "", "get_status"]], "RNS.Resource": [[7, 1, 1, "", "advertise"], [7, 1, 1, "", "cancel"], [7, 1, 1, "", "get_data_size"], [7, 1, 1, "", "get_hash"], [7, 1, 1, "", "get_parts"], [7, 1, 1, "", "get_progress"], [7, 1, 1, "", "get_segments"], [7, 1, 1, "", "get_transfer_size"], [7, 1, 1, "", "is_compressed"]], "RNS.Reticulum": [[7, 3, 1, "", "ANNOUNCE_CAP"], [7, 3, 1, "", "MTU"], [7, 1, 1, "", "should_use_implicit_proof"], [7, 1, 1, "", "transport_enabled"]], "RNS.Transport": [[7, 3, 1, "", "PATHFINDER_M"], [7, 1, 1, "", "deregister_announce_handler"], [7, 1, 1, "", "has_path"], [7, 1, 1, "", "hops_to"], [7, 1, 1, "", "next_hop"], [7, 1, 1, "", "next_hop_interface"], [7, 1, 1, "", "register_announce_handler"], [7, 1, 1, "", "request_path"]]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:property", "3": "py:attribute"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "property", "Python property"], "3": ["py", "attribute", "Python attribute"]}, "titleterms": {"code": [0, 8, 9], "exampl": [0, 6], "minim": 0, "announc": [0, 5, 9], "broadcast": 0, "echo": 0, "link": [0, 9], "identif": 0, "request": 0, "respons": 0, "channel": 0, "buffer": 0, "filetransf": 0, "an": 1, "explan": 1, "reticulum": [1, 2, 3, 4, 8, 9, 10, 11], "human": 1, "Beings": 1, "get": [2, 9], "start": 2, "fast": 2, "standalon": 2, "instal": [2, 3], "resolv": 2, "depend": 2, "issu": 2, "try": 2, "us": [2, 10, 11], "base": [2, 3], "program": [2, 10], "remot": 2, "shell": 2, "nomad": 2, "network": [2, 4, 6], "sideband": 2, "includ": [2, 10], "util": [2, 10], "creat": [2, 3], "With": 2, "connect": 2, "instanc": 2, "over": [2, 6], "internet": [2, 6], "public": [2, 9], "testnet": 2, "ad": 2, "radio": 2, "interfac": [2, 5, 9, 11], "develop": 2, "particip": 2, "platform": 2, "specif": [2, 9], "note": 2, "android": 2, "arm64": 2, "raspberri": 2, "pi": 2, "debian": 2, "bookworm": 2, "ubuntu": 2, "lunar": 2, "pure": 2, "python": 2, "commun": 3, "hardwar": 3, "rnode": [3, 5], "support": [3, 5, 8], "board": 3, "lilygo": 3, "lora32": 3, "v2": 3, "1": 3, "0": 3, "t": 3, "beam": 3, "heltec": 3, "unsign": 3, "x": 3, "v1": 3, "usag": 3, "supplier": 3, "wifi": 3, "combin": 3, "type": [3, 9, 11], "stack": 4, "manual": 4, "tabl": 4, "Of": 4, "content": 4, "indic": 4, "auto": 5, "i2p": 5, "tcp": 5, "server": 5, "client": 5, "udp": 5, "lora": [5, 6], "serial": [5, 10], "pipe": 5, "kiss": 5, "ax": 5, "25": 5, "common": 5, "option": 5, "mode": 5, "rate": 5, "control": 5, "build": 6, "concept": 6, "overview": 6, "scenario": 6, "interconnect": 6, "site": 6, "bridg": 6, "growth": 6, "converg": 6, "api": 7, "refer": [7, 9], "donat": 8, "provid": 8, "feedback": 8, "contribut": 8, "understand": 9, "motiv": 9, "goal": 9, "introduct": 9, "basic": 9, "function": 9, "destin": 9, "name": [9, 10], "kei": 9, "ident": 9, "further": 9, "transport": 9, "node": 9, "The": [9, 10], "mechan": 9, "detail": 9, "reach": 9, "establish": 9, "resourc": 9, "setup": 9, "protocol": 9, "packet": 9, "prioritis": 9, "access": 9, "wire": 9, "format": 9, "propag": 9, "rule": 9, "cryptograph": 9, "primit": 9, "your": 10, "system": 10, "configur": 10, "data": 10, "rnsd": 10, "rnstatu": 10, "rnpath": 10, "rnprobe": 10, "rncp": 10, "rnx": 10, "rnodeconf": 10, "improv": 10, "fix": 10, "port": 10, "servic": 10, "what": 11, "i": 11, "current": 11, "statu": 11, "doe": 11, "offer": 11, "where": 11, "can": 11, "devic": 11, "caveat": 11, "emptor": 11}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"Code Examples": [[0, "code-examples"]], "Minimal": [[0, "minimal"]], "Announce": [[0, "announce"]], "Broadcast": [[0, "broadcast"]], "Echo": [[0, "echo"]], "Link": [[0, "link"]], "Identification": [[0, "example-identify"]], "Requests & Responses": [[0, "requests-responses"]], "Channel": [[0, "channel"]], "Buffer": [[0, "buffer"]], "Filetransfer": [[0, "filetransfer"]], "An Explanation of Reticulum for Human Beings": [[1, "an-explanation-of-reticulum-for-human-beings"]], "Getting Started Fast": [[2, "getting-started-fast"]], "Standalone Reticulum Installation": [[2, "standalone-reticulum-installation"]], "Resolving Dependency & Installation Issues": [[2, "resolving-dependency-installation-issues"]], "Try Using a Reticulum-based Program": [[2, "try-using-a-reticulum-based-program"]], "Remote Shell": [[2, "remote-shell"]], "Nomad Network": [[2, "nomad-network"]], "Sideband": [[2, "sideband"]], "Using the Included Utilities": [[2, "using-the-included-utilities"]], "Creating a Network With Reticulum": [[2, "creating-a-network-with-reticulum"]], "Connecting Reticulum Instances Over the Internet": [[2, "connecting-reticulum-instances-over-the-internet"]], "Connect to the Public Testnet": [[2, "connect-to-the-public-testnet"]], "Adding Radio Interfaces": [[2, "adding-radio-interfaces"]], "Develop a Program with Reticulum": [[2, "develop-a-program-with-reticulum"]], "Participate in Reticulum Development": [[2, "participate-in-reticulum-development"]], "Platform-Specific Install Notes": [[2, "platform-specific-install-notes"]], "Android": [[2, "android"]], "ARM64": [[2, "arm64"]], "Raspberry Pi": [[2, "raspberry-pi"]], "Debian Bookworm": [[2, "debian-bookworm"]], "Ubuntu Lunar": [[2, "ubuntu-lunar"]], "Pure-Python Reticulum": [[2, "pure-python-reticulum"]], "Communications Hardware": [[3, "communications-hardware"]], "RNode": [[3, "rnode"]], "Creating RNodes": [[3, "creating-rnodes"]], "Supported Boards": [[3, "supported-boards"]], "LilyGO LoRa32 v2.1": [[3, "lilygo-lora32-v2-1"]], "LilyGO LoRa32 v2.0": [[3, "lilygo-lora32-v2-0"]], "LilyGO T-Beam": [[3, "lilygo-t-beam"]], "Heltec LoRa32 v2.0": [[3, "heltec-lora32-v2-0"]], "Unsigned RNode v2.x": [[3, "unsigned-rnode-v2-x"]], "Unsigned RNode v1.x": [[3, "unsigned-rnode-v1-x"]], "Installation": [[3, "installation"]], "Usage with Reticulum": [[3, "usage-with-reticulum"]], "Suppliers": [[3, "suppliers"]], "WiFi-based Hardware": [[3, "wifi-based-hardware"]], "Combining Hardware Types": [[3, "combining-hardware-types"]], "Supported Interfaces": [[5, "supported-interfaces"]], "Auto Interface": [[5, "auto-interface"]], "I2P Interface": [[5, "i2p-interface"]], "TCP Server Interface": [[5, "tcp-server-interface"]], "TCP Client Interface": [[5, "tcp-client-interface"]], "UDP Interface": [[5, "udp-interface"]], "RNode LoRa Interface": [[5, "rnode-lora-interface"]], "Serial Interface": [[5, "serial-interface"]], "Pipe Interface": [[5, "pipe-interface"]], "KISS Interface": [[5, "kiss-interface"]], "AX.25 KISS Interface": [[5, "ax-25-kiss-interface"]], "Common Interface Options": [[5, "common-interface-options"]], "Interface Modes": [[5, "interface-modes"]], "Announce Rate Control": [[5, "announce-rate-control"]], "Building Networks": [[6, "building-networks"]], "Concepts & Overview": [[6, "concepts-overview"]], "Example Scenarios": [[6, "example-scenarios"]], "Interconnected LoRa Sites": [[6, "interconnected-lora-sites"]], "Bridging Over the Internet": [[6, "bridging-over-the-internet"]], "Growth and Convergence": [[6, "growth-and-convergence"]], "API Reference": [[7, "api-reference"]], "Support Reticulum": [[8, "support-reticulum"]], "Donations": [[8, "donations"]], "Provide Feedback": [[8, "provide-feedback"]], "Contribute Code": [[8, "contribute-code"]], "Understanding Reticulum": [[9, "understanding-reticulum"]], "Motivation": [[9, "motivation"]], "Goals": [[9, "goals"]], "Introduction & Basic Functionality": [[9, "introduction-basic-functionality"]], "Destinations": [[9, "destinations"]], "Destination Naming": [[9, "destination-naming"]], "Public Key Announcements": [[9, "public-key-announcements"]], "Identities": [[9, "understanding-identities"]], "Getting Further": [[9, "getting-further"]], "Reticulum Transport": [[9, "reticulum-transport"]], "Node Types": [[9, "node-types"]], "The Announce Mechanism in Detail": [[9, "the-announce-mechanism-in-detail"]], "Reaching the Destination": [[9, "reaching-the-destination"]], "Link Establishment in Detail": [[9, "link-establishment-in-detail"]], "Resources": [[9, "resources"]], "Reference Setup": [[9, "reference-setup"]], "Protocol Specifics": [[9, "protocol-specifics"]], "Packet Prioritisation": [[9, "packet-prioritisation"]], "Interface Access Codes": [[9, "interface-access-codes"]], "Wire Format": [[9, "wire-format"]], "Announce Propagation Rules": [[9, "announce-propagation-rules"]], "Cryptographic Primitives": [[9, "cryptographic-primitives"]], "Using Reticulum on Your System": [[10, "using-reticulum-on-your-system"]], "Configuration & Data": [[10, "configuration-data"]], "Included Utility Programs": [[10, "included-utility-programs"]], "The rnsd Utility": [[10, "the-rnsd-utility"]], "The rnstatus Utility": [[10, "the-rnstatus-utility"]], "The rnpath Utility": [[10, "the-rnpath-utility"]], "The rnprobe Utility": [[10, "the-rnprobe-utility"]], "The rncp Utility": [[10, "the-rncp-utility"]], "The rnx Utility": [[10, "the-rnx-utility"]], "The rnodeconf Utility": [[10, "the-rnodeconf-utility"]], "Improving System Configuration": [[10, "improving-system-configuration"]], "Fixed Serial Port Names": [[10, "fixed-serial-port-names"]], "Reticulum as a System Service": [[10, "reticulum-as-a-system-service"]], "What is Reticulum?": [[11, "what-is-reticulum"]], "Current Status": [[11, "current-status"]], "What does Reticulum Offer?": [[11, "what-does-reticulum-offer"]], "Where can Reticulum be Used?": [[11, "where-can-reticulum-be-used"]], "Interface Types and Devices": [[11, "interface-types-and-devices"]], "Caveat Emptor": [[11, "caveat-emptor"]], "Reticulum Network Stack Manual": [[4, "reticulum-network-stack-manual"]], "Table Of Contents": [[4, "table-of-contents"]], "Indices and Tables": [[4, "indices-and-tables"]]}, "indexentries": {}}) \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index 9c2456b..00bff97 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -13,6 +13,9 @@ project = 'Reticulum Network Stack' copyright = '2023, Mark Qvist' author = 'Mark Qvist' +exec(open("../../RNS/_version.py", "r").read()) +version = __version__ + # The full version, including alpha/beta/rc tags import RNS release = RNS._version.__version__+" beta" diff --git a/docs/source/index.rst b/docs/source/index.rst index 28d133c..867a1e2 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,15 +1,16 @@ ****************************** Reticulum Network Stack Manual ****************************** + This manual aims to provide you with all the information you need to understand Reticulum, build networks or develop programs using it, or to participate in the development of Reticulum itself. -.. only:: html +.. only:: builder_html -This manual is also available in `PDF `_ and `EPUB `_ formats. + This manual is also available in `PDF `_ and `EPUB `_ formats. -.. only:: html +.. only:: builder_html Table Of Contents =================