From 7221becd3516f6029f8da2c0d4a29c101c4a7dbf Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Sun, 19 Jan 2025 21:09:50 +0100 Subject: [PATCH] Updated manual --- docs/Reticulum Manual.epub | Bin 3594539 -> 3594459 bytes docs/Reticulum Manual.pdf | Bin 3671580 -> 3671680 bytes docs/manual/examples.html | 61 ++++++++++++++++++------------------- docs/manual/searchindex.js | 2 +- 4 files changed, 30 insertions(+), 33 deletions(-) diff --git a/docs/Reticulum Manual.epub b/docs/Reticulum Manual.epub index 66adba01760831da1ea485395ed6ab7b083a082c..cd8ac75c4f2c29dee0e30575db87447af243e82a 100644 GIT binary patch delta 38857 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

&@GU_+1a?5Iv4%mUngQ5^V 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 Rb^xTG5Nw3lj|lLm{{ua6nrZ+5 delta 38949 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 z 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 diff --git a/docs/Reticulum Manual.pdf b/docs/Reticulum Manual.pdf index a998dfbaaf33182bc51be20714cc41abb8b71cd3..3718e7a9631d54054965306015e513e591e86961 100644 GIT binary patch delta 114294 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 delta 114121 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

g#@--h43lEL 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

  • ZY$Jhf+smG&{1Gi$Y1s9_v^Yz8Sbbp)WocY>SMBdzG%OM4ox4| zPjivBiR^~2!sEBM8gcZdqaJhURD)|r%;%a}>>tSP*{_WMy*`DPr$*=}h&-Ml=YbZ7Gv&O7F<6;2JB?}$3;p}#{ITa)LnL)oJUOX5?cC8H&7 zt`k_9@qph9`OJS)AYB3Z!kj0q(g(guw6Qb-N?h~18Cnlb0$5sSOhTAi-AqE*T943J zG^Ct?HxiCA^IuqL9_OLZ<*=!c`WqYa@}~!plpfhT=S)IaLOe`BAxzYG;J*}2rionS;h5cz`~HM(P-LEbsCNpF-qf z6vSZJ8KigH{4At*-+U>28>Yr02-I<8b}_0-dK7f;mU{N@HpU~Z>e78l(tuDj|r*OtZTlR86s9;q4%lB3|@l z2)cYoUE&A=Ya~GD(mZvmRL?NXK6h^cNAR>pYcxSfcu`Jm+LwSsv ze|9l?dZb5jxalPkSWK32Pq#C#Ir9r4+0fax!~Tx<(_5*c zbI%GR7}8hbvY$m_$hzV{ZkHT7T+s`j3&FS2#p);(@HoCRIn zzXspn3jPr!3qRxC_*i0j@MZ6)3@`m+D(N<4Sg&RKm>eF>;;wDyx zC|9@I5m-!{o=_u3d7e?tP9cbo#u{sl@Vz#;^F64uraLCO!K#xuV1uO@ z`Hve2BvkPG>ఞ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

    |7&cnl2(*L@KNDx zk7G0cGdH^bnOlkPh=}|)W#(jCpd*34#GJ>7cba(JGLvZv&BpHRm~2w z%98uLX~M&ljd};9Iu55XRF(`AbTKafTc(IAq~}kg8YrQT8V7ix`kE^Uq2D!2;Ic|f zXFaSc=7z#1e#Wwpfgp3&7G1NvL{5>d$j}K{# zWtOAVXdeFMxwEtf#{`O690?_ef*mC`5R)BgsE6-c@ZL5IA0k-4LXeu+76+bNb0P;8XWN^|ne`T&ATS_Rj^p!7Wqvp!9}F;R@Vi>SGy4 zL+HVPF}RS;2=|uh6zO#%DQhptU_zL2FD21Y@lN9Z7@&IVr8fT&fF_(}7_%TP17pK^ zp*k?vYe(R_E2m8214<}Z94dA8FP#8lORT=7LFxv$!Y)I~O^EzUw>W{GRV_ zX;NGem4&i!UflilILH!zFi>}kTBTnQLAobkg^S>Q5Cc@#14PM!D74sWbD@}DvIr2E zO|oFCw3c{O`!fYlF1PYKU{2?J?R~t*oS0Q9Ir?kpExpPwCYfOf)tGQ%?g-1A{$8Y% zTbQOW2T`Im;r~E4TYa1IvWDuoasFUrEuok%{R@}n*X-}~aS-083~HW$NRx}jjPQ%j z3Ra%Gz2NU!;P{nwLDZE>LuFXiYC-tFAN7Lid}yBKQ{{>kb-<}#nN{XNM#&mRnhrDj z-9U*dB4KU!Tq&8Y#1fvE0ZSql0jDDfKFVm=dTNn1)0u`+Kp<6pIHbi$;*)K=6kZF! z2j)INWZG_K0fY`LNW)f5QhI23$K7ZxMtn;wo*6A+e#w!xTBejQX`sUO``nv7_NfPO z>jCETzFkC{@rzrZW*-&-m>pfD*1;ffhWqNgh!X$lfQZG}gs zt?$2wA<(|;2FGWjjrwcD0(T@C`KgagGNiUz^F-Gs3m1f@L@XgZ0^?259|KJv99oWD z(kavnH;idga?_+Q!jnChfi!}+#oRihn>K{sZ}L}dW=VMTWV26sZ5t8~Yk*%TCEaGI z`PFmRLH0CvHP+2ZMy?r{k?1~^W>S-A3xY}eDjOUgfhxirA_xmR4|=019``2PL#K{q z?~dzo{wy_-jT#$i)89HzB2qfeK5@z?G>m@Lm7@z&+pU)8mM;K@ti26l*d_VQHOO8= z`sOs>+b$y(h*dTFU7F95FX4B*);8{#2ov5NL6g>hM2a0Z-D5so2He39&rMOgZ?YPr z7q8boi)ZS&J0GNCSar_gM5{0-5z{Jn3Ja0gTtYP~Pl_L*jWv~-*E{ya|Al@I(x-U)Lv=+?{ExpGLAw%s1ih#0)e z2Bm32&I@S~|`8%nBG@<8>E}>mL^j>?#YlnA>_g;uuHgP*w zH5&$*$dVVKju)DNlg)p`ehpSYO_0Kcw-RdM&p6n*>G>|D0oI_8Tbg5oAmgF@a2;A@ z$RdL&98pkoJ37^{`;BpmdLstga~B8jL41(3Jx1tv7FRQ%gYvVB=!P|m=S ztVh@1U33OvFW-2&?q?F*sSgQ4k&%k`nx-c_eJi(s^P@ACkHMv)i^CAUS0Rg$ie3kp zeW5Mm8@h^nez#}q2|bpNd!OQ_K&tK9!ERw%#q2-2mrBv1J~e>1M7q~!)5-2vNUPHx zSzl7FeRyVn8#!!5C14EZ$`sxND88L5Q2aKX0`zy6EhmKsYN*$V-Qq@T(gvz~|3>;F zWYFj{3(%2}3niu3aT5TjOdMwPvQ5Zsep-9aoCe`7{=7XBn;~j3T7uae`4RT!C7&!z zX-8@t_7+4_-pv-{RxRW|YScJzNnQ4U z%aF}FyM4l$zYhWS?B&pcEOoxR*xbgv%jS_4Ahs&fb7&vtIc=+BH@)2&(zGG(Nug-&J35w|305ltc34`LoAcj*Mf*eLU@LiF&?BZ5m+!Npbi?*f z8hdkq6K)nXUQZT{zvEHmWH60N<6d;}EN<_AfH)CKI|6-3DZwuPBi*V1o4n%zUee@} zL75n{&I0VM9JN+7R|9+P-86JrD!uiyF=sfrnW#(V&O#}cXZ0HCFL{3x{~?BI16okk zb)7$%W@~|Hf`_1HJ@8$DRfopN@ko<#DUG1{DY5(Coo@YX8hG8}3#ccymbFC5t;A;d z?e29E`I2siDo8K{DX)b3%?5^LJCDY)n^CbsL0ugzOqZpNuO^ZwK+q+exlMqfio|%B z7f;b!-Rs1DH>*6rBQM-@rC(xq^fcAdKF;|C@6DOdD|B{EL9%#26K?8a*4VeMo zan1+ms=%WKSj&GXD&(%gp7z?;!k@#wia{@o0;ut!5#_r;*JJ`>|L>AZPIXKhRS~14mqDdb>JpM< zn~x7tDF`JUA}JtcGlfCE3s8Zs988c$W3HR=g@u}lL03csUK?O&BIRk0Sc}$CkD~o< z(1wz{04x7-bSH3&qz$Xp%Uuh%*b82H+Cu2>?jW!su?L3}2qhj#F+aO}fc#Q@Jp21` zNt>^0L&I5w{&3U~8pEM;dAg;Z3Kxn}-H`G>eru7r?eLc0^jB{%+v*1xQjy<~Mm~P) zkl7Vh*xSKFNA}e2A%ZQM5i~0+cOoe#F-Arw^8_z5doW33uN_0esf37kb`X>+HncbU zQ4H5rxm^TEWgi?P!Rl;5J0{5JdY;RD;3(gR$}t(%dp-ZXSvaOfsHVZAcR6!N-SZ zt{c+!k2(RpC8=C42`NoBHBx!9>RA1xiF1ikzc374nG-qXH2ROfozP) z92jj(pbynJ%h7q&26dkrKD-5fRlE{XXIo&}CkwS_?H4|OX=jWJ#4J;L;Z{Tl( z>S{ei?I4%YM)?v0&Wl7V4?6M<))RNxmT38PZ!r)!3Urm|nKsZ~G(+>sy5a%m)7-F7 zx=1d@m3Or^>t?qqYu~Dh&uZrg&{%g5aM7>7O7u%RZ>OFggkr^YtP7BzG;qEog{9u4 zIbw}T`UPXQ^*=dX@(%{*d$CaeCmu|{VTE(@%0EbS!6R!0mqi@?4@cTOG@q~zSe~~> zY1C0B?udV&D_-(DuKdQEq~ce*Cp|a9onR;t`fYFvWYZgQNHU!HW8fEDGMsC1@$u@X zya05hr@Xvag8v}E#Q$z;#qvG1o~P~n4j|KjFnsJFQh7h>3Wu|%`F;nhdCRhzjnePk z#UEC`q-E^bZ%PSKm$!Y;fH*C^4!+ujA*lcSj0%fT{Vp_ORC(4{3TN_AbKeuBC3$?O z(76elcSL;@3V-mt{r+i)U$;Xy1|V$ODK(5;zFyj5-aToF@;oHzw6kb1mVQNV+{s%F zb9gTV(Jm7w&x~&ns@U|mSvE0!Upw|B5~&haKd(y9fh-MtP_deuXHJKUlGC#I(RJT?83d?f(Y+M|4XjN40iCCb>WR+wH=e2dyBh@=&kIhE0w_ z`yb%Kvy=a$rg?(T7SeGUa8QfcZ!#RzKP2}bf*u`74lgm!CjWV(%d*towfonNd=95& z{e#+HVk diff --git a/docs/manual/examples.html b/docs/manual/examples.html index 269df74..fda6a0d 100644 --- a/docs/manual/examples.html +++ b/docs/manual/examples.html @@ -238,6 +238,7 @@ program.

    ########################################################## import argparse +import sys import RNS # Let's define an app name. We'll use this for all @@ -331,7 +332,7 @@ program.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Minimal.py.

    @@ -349,6 +350,7 @@ notifications about announces from relevant destinations.

    import argparse import random +import sys import RNS # Let's define an app name. We'll use this for all @@ -511,7 +513,7 @@ notifications about announces from relevant destinations.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Announce.py.

    @@ -640,7 +642,7 @@ over the network.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Broadcast.py.

    @@ -657,6 +659,7 @@ the Packet interface.

    ########################################################## import argparse +import sys import RNS # Let's define an app name. We'll use this for all @@ -781,7 +784,7 @@ the Packet interface.

    except Exception as e: RNS.log("Invalid destination entered. Check your input!") RNS.log(str(e)+"\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -979,7 +982,7 @@ the Packet interface.

    client(args.destination, configarg, timeout=timeoutarg) except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Echo.py.

    @@ -1109,7 +1112,7 @@ destination, and passing traffic back and forth over the link.

    destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -1212,9 +1215,8 @@ destination, and passing traffic back and forth over the link.

    else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) # When a packet is received over the link, we # simply print out the data. @@ -1278,7 +1280,7 @@ destination, and passing traffic back and forth over the link.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Link.py.

    @@ -1422,7 +1424,7 @@ the link has been established.

    destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -1534,9 +1536,8 @@ the link has been established.

    else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) # When a packet is received over the link, we # simply print out the data. @@ -1600,7 +1601,7 @@ the link has been established.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Identify.py.

    @@ -1729,7 +1730,7 @@ the link has been established.

    destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -1836,9 +1837,8 @@ the link has been established.

    else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) ########################################################## @@ -1894,7 +1894,7 @@ the link has been established.

    except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Request.py.

    @@ -2029,7 +2029,7 @@ data between peers of a def server_loop(destination): # Let the user know that everything is ready RNS.log( - "Link example "+ + "Channel example "+ RNS.prettyhexrep(destination.hash)+ " running, waiting for a connection." ) @@ -2117,7 +2117,7 @@ data between peers of a destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -2181,7 +2181,7 @@ data between peers of a packed_size = len(message.pack()) channel = server_link.get_channel() if channel.is_ready_to_send(): - if packed_size <= channel.MDU: + if packed_size <= channel.mdu: channel.send(message) else: RNS.log( @@ -2226,9 +2226,8 @@ data between peers of a else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) # When a packet is received over the channel, we # simply print out the data. @@ -2292,7 +2291,7 @@ data between peers of a except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Channel.py.

    @@ -2460,7 +2459,7 @@ binary data between peers of a destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -2557,9 +2556,8 @@ binary data between peers of a else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) # When the buffer has new data, read it and write it to the terminal. def client_buffer_ready(ready_bytes: int): @@ -2623,7 +2621,7 @@ binary data between peers of a except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Buffer.py.

    @@ -2859,7 +2857,7 @@ interface to efficiently pass files of any size over a Reticulum destination_hash = bytes.fromhex(destination_hexhash) except: RNS.log("Invalid destination entered. Check your input!\n") - exit() + sys.exit(0) # We must first initialise Reticulum reticulum = RNS.Reticulum(configpath) @@ -3097,7 +3095,7 @@ interface to efficiently pass files of any size over a Reticulum global server_files if len(server_files) == 0: RNS.log("Timed out waiting for filelist, exiting") - os._exit(0) + sys.exit(0) # When a link is closed, we'll inform the @@ -3110,9 +3108,8 @@ interface to efficiently pass files of any size over a Reticulum else: RNS.log("Link closed, exiting now") - RNS.Reticulum.exit_handler() time.sleep(1.5) - os._exit(0) + sys.exit(0) # When RNS detects that the download has # started, we'll update our menu state @@ -3236,7 +3233,7 @@ interface to efficiently pass files of any size over a Reticulum except KeyboardInterrupt: print("") - exit() + sys.exit(0)

    This example can also be found at https://github.com/markqvist/Reticulum/blob/master/Examples/Filetransfer.py.

    diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js index 1111731..bb50c40 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", "Configuring 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, 10], "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, 11], "sourc": [0, 2, 3, 6, 9, 11], "distribut": [0, 2, 6, 7, 9, 10, 11], "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, 10], "your": [0, 2, 3, 4, 5, 6, 7, 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, 5], "minimum": [0, 5, 6, 7, 9], "setup": [0, 2, 4, 5, 10], "requir": [0, 2, 5, 6, 7, 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, 4, 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, 7, 9, 10, 11], "gener": [0, 2, 3, 5, 6, 7, 9, 10, 11], "new": [0, 4, 6, 7, 9, 10], "destin": [0, 2, 4, 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, 2, 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, 5, 7, 10], "i": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "part": [0, 5, 6, 7, 9, 10], "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, "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, 10], "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, 10, 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], "automat": [0, 2, 5, 6, 7, 9, 10, 11], "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, 6, 7, 9, 11], "prove": [0, 9], "packet": [0, 2, 4, 5, 6, 7, 10, 11], "By": [0, 2, 5, 7, 9, 10], "do": [0, 2, 3, 5, 7, 9, 10, 11], "proof": [0, 7, 9, 10], "each": [0, 2, 5, 6, 7, 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, 5, 6, 7, 9, 10], "tri": 0, "whether": [0, 2, 5, 7, 9], "wa": [0, 3, 5, 6, 7, 9, 10, 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, 2, 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, 2], "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, 10], "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, 2, 5, 7, 10], "input": [0, 10], "sent": [0, 2, 7, 9, 10], "startup": [0, 2, 10], "get": [0, 3, 4, 5, 7, 10, 11], "pars": 0, "desir": [0, 3, 5, 9], "mode": [0, 2, 3, 4, 9, 10, 11], "__name__": 0, "__main__": 0, "try": [0, 4, 5, 7], "parser": 0, "argumentpars": 0, "descript": [0, 10], "add_argu": 0, "config": [0, 2, 5, 6, 10], "action": 0, "store": [0, 7, 9, 10], "default": [0, 2, 3, 5, 6, 7, 9, 10], "none": [0, 2, 5, 7, 9, 10], "help": [0, 2, 6, 8, 9, 10, 11], "altern": [0, 2, 5, 10], "directori": [0, 2, 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, 10], "build": [0, 2, 3, 4, 5, 9, 11], "upon": [0, 5, 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, 2, 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, 10], "see": [0, 2, 5, 6, 7, 9, 10, 11], "what": [0, 2, 4, 5, 7, 9], "happen": [0, 2, 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, 3, 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, 5, 6, 9, 10, 11], "aspect": [0, 3, 5, 7, 9, 10], "__init__": [0, 7], "self": [0, 6, 11], "call": [0, 2, 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], "cannot": [0, 2, 5, 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, 10, 11], "differ": [0, 2, 3, 5, 6, 7, 9, 10, 11], "plain": [0, 3, 5, 7, 9], "uncencrypt": 0, "broadcast_destin": 0, "specifi": [0, 2, 3, 5, 6, 7, 10], "everi": [0, 2, 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, 2], "channelarg": 0, "between": [0, 5, 6, 7, 9, 10], "simpl": [0, 3, 7, 9, 10, 11], "respond": [0, 7, 10], "receipt": [0, 7, 9], "choos": [0, 2, 5, 9], "global": [0, 2, 5, 6, 7, 9, 11], "server_ident": 0, "queri": [0, 2, 7, 10], "abl": [0, 2, 5, 6, 7, 9, 10], "verifi": [0, 2, 7, 9, 10, 11], "repli": [0, 10], "encrypt": [0, 2, 6, 7, 9, 10, 11], "wai": [0, 2, 5, 6, 7, 9, 10], "certain": [0, 5, 6, 8, 9], "than": [0, 2, 5, 6, 7, 9, 10, 11], "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, 7, 10], "dbm": [0, 5, 10], "snr": [0, 7, 10], "db": [0, 10], "destination_hexhash": 0, "timeout": [0, 7, 10], "binari": [0, 2, 7, 9, 10], "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, 10], "hexadecim": [0, 9, 10], "charact": 0, "byte": [0, 7, 9, 10, 11], "format": [0, 4, 10, 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, 11], "has_path": [0, 7], "To": [0, 2, 3, 5, 6, 9, 10, 11], "public": [0, 4, 5, 7, 10], "kei": [0, 4, 6, 7, 10, 11], "done": [0, 2, 5, 6, 9, 10], "recal": [0, 7, 10], "modul": [0, 2, 3, 5, 9, 10, 11], "known": [0, 5, 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, 7, 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, 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, 2, 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], "forth": 0, "o": [0, 2, 9, 10, 11], "refer": [0, 2, 4], "latest": [0, 2, 5, 7, 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, 5], "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, 7, 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, 7, 9, 10, 11], "_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, 10], "remote_p": 0, "unidentifi": 0, "get_remote_ident": [0, 7], "client_ident": 0, "sendig": 0, "perform": [0, 2, 5, 6, 7, 9, 10], "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, 2, 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, 11], "umsgpack": 0, "share": [0, 2, 6, 7, 9, 10], "object": [0, 7], "subclass": [0, 7], "messagebas": [0, 4, 7], "ensur": [0, 5, 7, 9, 10, 11], "serial": [0, 2, 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, 11], "stringmessag": 0, "convei": 0, "timestamp": [0, 9], "msgtype": [0, 7], "variabl": [0, 2, 7], "assign": [0, 9, 10], "integ": 0, "valu": [0, 5, 7, 9], "constructor": 0, "uniqu": [0, 5, 7, 9, 11], "across": [0, 3, 6, 7], "0xf000": [0, 7], "reserv": [0, 7], "0x0101": 0, "callabl": [0, 7], "paramet": [0, 3, 5, 6, 7, 9, 10], "empti": 0, "version": [0, 2, 7, 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, 10], "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, 2, 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, 7], "isinst": 0, "reply_messag": 0, "order": [0, 7, 10], "were": [0, 6], "consid": [0, 5, 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, 2, 5, 10], "resourc": [0, 2, 4, 5, 7, 8], "effici": [0, 2, 5, 7, 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, 11], "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, 7, 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, 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, 5, 6, 9, 10], "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, 5, 6, 7, 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, 2, 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, 10], "conclud": [0, 7], "hasattr": 0, "server_fil": 0, "current": [0, 2, 4, 5, 7, 9], "current_download": 0, "current_filenam": 0, "statist": [0, 5, 7, 8], "download_start": 0, "download_finish": 0, "download_tim": 0, "transfer_s": 0, "file_s": 0, "expect": [0, 2, 5, 7, 9, 10], "normal": [0, 2, 5, 7, 10], "accordingli": [0, 5], "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, 11], "state": 0, "It": [0, 2, 3, 5, 7, 9, 10, 11], "uninterest": 0, "won": 0, "clear_screen": 0, "print_filelist": 0, "percent": [0, 5], "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, 5], "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, 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, 7, 9, 11], "job": 0, "potenti": [0, 2, 5, 8, 9, 10, 11], "target": [0, 5, 10], "filelist_timeout_job": 0, "daemon": [0, 2, 5, 7, 10], "detect": 0, "shown": 0, "progress": [0, 7, 10, 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, 10], "m": [0, 2, 9, 10], "g": [0, 10], "p": [0, 10], "z": 0, "y": 0, "ab": 0, "1024": 0, "clear": [0, 5, 7, 9, 10], "cl": 0, "nt": 0, "dir": 0, "exampleinterfac": 0, "utilis": [0, 2, 5, 6, 7, 10, 11], "fulli": [0, 2, 3, 5, 9, 10, 11], "par": [0, 2], "nativ": 0, "common": [0, 3, 4, 6, 9, 10, 11], "mit": 0, "licens": [0, 9], "copyright": 0, "2024": 0, "mark": [0, 7, 9], "qvist": 0, "unsign": 0, "io": [0, 3], "illustr": [0, 6, 9], "runtim": [0, 9], "place": [0, 2, 5, 6, 9, 10], "folder": [0, 2], "similar": [0, 2, 3, 5, 6, 7, 10, 11], "enabl": [0, 2, 3, 5, 6, 7, 9, 10, 11], "gatewai": [0, 2, 5, 6, 9], "port": [0, 3, 4, 5, 6, 9, 11], "dev": [0, 2, 5, 10], "ttyusb0": [0, 5, 10], "speed": [0, 5, 7, 9, 10], "115200": [0, 5, 10], "databit": [0, 5, 10], "pariti": [0, 5, 10], "stopbit": [0, 5, 10], "hdlc": 0, "helper": 0, "delimit": 0, "physic": [0, 2, 3, 5, 7, 9, 10, 11], "medium": [0, 3, 5, 6, 7, 9, 11], "case": [0, 2, 3, 5, 6, 9, 10], "simplifi": 0, "frame": [0, 5], "ppp": 0, "flag": [0, 2, 7, 9], "0x7e": 0, "esc": 0, "0x7d": 0, "esc_mask": 0, "0x20": 0, "staticmethod": 0, "escap": 0, "replac": [0, 2, 7, 9, 10], "sub": [0, 5], "ifac": [0, 9, 10], "default_ifac_s": 0, "particular": [0, 3], "owner": 0, "posit": [0, 10], "dict": 0, "depend": [0, 3, 4, 6, 7, 9, 10], "importlib": 0, "find_spec": 0, "instal": [0, 4, 5, 6, 9, 10, 11], "log_crit": 0, "python3": [0, 2, 3], "pip": [0, 2, 3, 10], "pyseri": [0, 2], "panic": [0, 10], "super": 0, "sure": [0, 2, 3, 10], "through": [0, 2, 3, 5, 6, 7, 9, 10, 11], "step": [0, 2, 3], "compat": [0, 2, 3, 5, 7, 9], "platform": [0, 3, 4, 9, 10], "ifconf": 0, "get_config_obj": 0, "suppli": [0, 5, 6, 7, 9, 11], "miss": [0, 2], "9600": 0, "abort": 0, "f": [0, 2, 10], "No": [0, 2, 5, 9, 10, 11], "hardwar": [0, 2, 4, 5, 6, 7, 9, 10, 11], "mtu": [0, 7, 9, 11], "maximum": [0, 5, 7, 9, 10], "underli": [0, 6, 11], "capabl": [0, 9], "without": [0, 2, 3, 5, 6, 9, 10, 11], "segment": [0, 5, 6, 7, 9, 11], "hw_mtu": 0, "564": 0, "onlin": [0, 10], "bitrat": [0, 5, 7], "intern": [0, 5, 7, 9], "accord": [0, 2, 9], "parity_non": 0, "lower": [0, 2, 5, 10], "even": [0, 2, 5, 6, 7, 9, 10, 11], "parity_even": 0, "odd": 0, "parity_odd": 0, "open_port": 0, "succeed": [0, 7], "post": 0, "is_open": 0, "configure_devic": 0, "ioerror": 0, "log_verbos": 0, "baudrat": 0, "bytes": 0, "xonxoff": 0, "rtsct": 0, "inter_byte_timeout": 0, "write_timeout": 0, "dsrdtr": 0, "thing": [0, 2], "amount": [0, 5, 6, 7, 9, 11], "devic": [0, 2, 4, 5, 6, 7, 9, 10], "read_loop": 0, "whenev": [0, 7, 9], "process_incom": 0, "rxb": 0, "process": [0, 2, 3, 5, 7, 9], "inbound": [0, 5, 7], "process_outgo": 0, "Then": [0, 2], "written": [0, 9], "txb": 0, "wrote": [0, 5], "contin": 0, "meth": 0, "turn": [0, 10], "in_fram": 0, "data_buff": 0, "last_read_m": 0, "in_wait": 0, "ord": 0, "time_since_last": 0, "08": [0, 10], "occur": [0, 5, 10, 11], "experienc": 0, "unrecover": [0, 10], "offlin": [0, 2], "panic_on_interface_error": [0, 10], "attempt": [0, 2, 3, 7], "reconnect": 0, "period": [0, 5, 7, 9], "reconnect_port": 0, "signal": [0, 7, 9], "ingress": [0, 5], "limit": [0, 3, 4, 6, 9], "should_ingress_limit": 0, "extern": [0, 2, 5, 7, 11], "__str__": 0, "interface_class": 0, "best": [2, 9, 11], "guid": [2, 3, 9], "outlin": [2, 3, 9], "sensibl": [2, 3, 5], "scenario": [2, 4, 9], "relat": 2, "easiest": [2, 3, 5, 9], "via": [2, 3, 5, 8, 9, 10, 11], "manag": [2, 4, 6, 7, 9, 11], "sudo": [2, 10], "apt": 2, "pamac": 2, "dowload": 2, "releas": [2, 5, 7, 9], "wheel": 2, "channel": [2, 4, 5, 6, 7, 8, 9, 11], "py3": 2, "whl": 2, "For": [2, 5, 6, 7, 9, 10, 11], "instruct": 2, "section": [2, 3, 5, 6, 9, 10], "might": [2, 5, 6, 9, 10], "chapter": [2, 3, 5, 6, 7, 9, 10, 11], "mai": [2, 5, 7, 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, "pre": [2, 7, 9], "built": [2, 5, 9, 10, 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, 10, 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, 4, 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], "transceiv": [2, 3, 5, 9, 11], "infrastructur": [2, 3, 5, 6, 9, 10], "launch": [2, 10], "enough": [2, 3, 9], "rnsh": [2, 10], "session": [2, 9], "pipe": [2, 4, 11], "ssh": 2, "veri": [2, 3, 5, 6, 7, 8, 9, 10, 11], "facilit": 2, "suit": [2, 3, 9, 10], "featur": [2, 7, 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, 10], "anoth": [2, 7, 9, 10], "project": 2, "nomadnet": 2, "reboot": 2, "again": [2, 5, 9, 10], "environ": [2, 6, 9], "would": [2, 5, 6, 7, 9], "rather": [2, 7], "graphic": 2, "linux": [2, 3, 9], "peopl": [2, 9], "i2p": [2, 4, 11], "qr": 2, "paper": 2, "anyth": [2, 3, 5, 9, 10, 11], "interoper": [2, 3, 6, 9, 11], "friendli": 2, "voic": 2, "interest": [2, 9], "cours": [2, 5, 9], "come": [2, 9], "easier": [2, 5, 6, 10, 11], "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], "locat": [2, 5, 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, 3, 5, 6, 7, 9, 10, 11], "tabl": [2, 5, 6, 9, 10], "discov": [2, 5], "topographi": [2, 6, 9], "situat": [2, 3, 5, 6, 9], "where": [2, 3, 4, 5, 6, 7, 9, 10], "often": [2, 5, 6, 9, 10], "suffici": [2, 5, 9, 10], "act": [2, 7, 9, 10], "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], "latenc": [2, 9, 11], "energi": 2, "i2pinterfac": [2, 5], "howev": [2, 6, 9], "leak": 2, "reveal": [2, 7, 9, 11], "who": [2, 5, 9], "inspect": [2, 5, 6, 9, 10], "someon": [2, 5], "determin": [2, 7, 9], "adversari": 2, "record": [2, 9], "metadata": [2, 9], "transmiss": [2, 5, 7, 9], "though": [2, 5, 9], "publicli": [2, 5], "most": [2, 3, 5, 6, 7, 9, 10], "anymor": 2, "invis": [2, 5], "parallel": 2, "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, 11], "attack": 2, "form": [2, 5, 6, 7, 9], "deep": 2, "much": [2, 5, 6, 9, 10, 11], "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], "amsterdam": 2, "hub": [2, 5], "tcpclientinterfac": [2, 3, 5], "ye": [2, 5, 9, 10], "target_host": [2, 5], "target_port": [2, 5], "4965": [2, 10], "betweenthebord": 2, "4242": [2, 5], "g3br23bvx3lq5uddcsjii74xgmn6y5q325ovrkq2zw2wbzbqgbuq": 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, 10], "failur": [2, 5, 7], "guarante": [2, 9], "weird": 2, "goe": 2, "sai": 2, "hardcod": 2, "ship": 2, "practic": [2, 9, 11], "solut": [2, 9, 10], "leav": [2, 6, 9], "wide": [2, 3, 5, 9, 10, 11], "easili": [2, 5, 6, 9, 10, 11], "cheapli": 2, "rnode": [2, 4, 9, 10, 11], "purpos": [2, 3, 5, 7, 9, 10], "digit": [2, 3, 9, 11], "integr": [2, 6, 9], "yourself": [2, 9, 11], "firmwar": [2, 3, 9, 10], "board": [2, 4, 5, 9, 11], "auto": [2, 3, 4, 7, 9], "script": [2, 3], "prefer": [2, 9], "purchas": [2, 6, 9, 11], "supplier": 2, "addit": [2, 3, 5, 7, 9, 10, 11], "privat": [2, 5, 7, 8, 9, 10, 11], "secur": [2, 9, 11], "uncensor": 2, "mesh": [2, 5, 6, 11], "think": 2, "welcom": 2, "head": 2, "discuss": [2, 3, 9], "propos": 2, "flexibl": [2, 3, 5, 11], "broad": [2, 3], "cover": [2, 3, 9, 11], "conceiv": [2, 3], "therefor": [2, 9, 11], "possibl": [2, 3, 5, 6, 7, 9, 10, 11], "subject": [2, 11], "code": [2, 3, 4, 5, 10], "abov": [2, 3, 5, 9, 10], "next": [2, 6, 7, 9], "api": [2, 4, 9, 11], "document": [2, 7, 9], "associ": [2, 7, 9], "recip": 2, "cryptographi": [2, 9, 11], "clone": 2, "repositori": [2, 8, 9], "git": 2, "move": [2, 5, 9, 10], "symlink": [2, 10], "cd": 2, "ln": [2, 10], "echo": [2, 4], "ve": 2, "immedi": [2, 5, 10], "necessari": [2, 3, 5, 6, 7, 9], "nano": 2, "repeat": 2, "h": [2, 10], "ping": [2, 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, 11], "good": [2, 3, 6, 9, 10], "idea": [2, 9, 10], "introduc": [2, 9], "disucss": 2, "forum": 2, "maintain": [2, 9], "procedur": [2, 7, 9], "quirk": 2, "worth": 2, "being": [2, 5, 7, 9], "awar": [2, 5, 9], "termux": 2, "droid": 2, "emul": 2, "abil": [2, 3, 11], "pkg": 2, "upgrad": [2, 7, 9], "reason": [2, 5, 9], "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], "apk": 2, "tutori": 2, "architectur": 2, "precompil": 2, "april": 2, "2023": [2, 10], "onto": [2, 9], "unfortun": 2, "pipx": 2, "isol": [2, 5, 10], "neg": 2, "affect": [2, 5], "ensurepath": 2, "restor": [2, 5], "behaviour": [2, 5, 10], "edit": [2, 10], "conf": 2, "break": [2, 7, 9, 11], "shot": 2, "somewhat": 2, "mislead": 2, "choic": 2, "word": 2, "rare": [2, 5], "lead": [2, 9], "conflict": 2, "pose": [2, 9], "problem": [2, 9], "especi": [2, 3, 5], "vari": [2, 5, 9, 10], "doubt": 2, "pip3": 2, "addition": [2, 3, 5, 9], "init": 2, "zshrc": 2, "9": [2, 7, 10], "bin": [2, 10], "adjust": [2, 7], "storag": 2, "memori": [2, 9], "opkg": 2, "At": [2, 6, 9], "underwai": 2, "uci": 2, "feed": [2, 7], "debug": [2, 10], "vvv": 2, "21": 2, "02": 2, "alter": [2, 7, 9], "free": [2, 6, 8, 11], "overlai": 2, "ram": [2, 5], "rule": [2, 4, 5], "proper": 2, "laucnh": 2, "boot": [2, 10], "ipv6": [2, 5, 10], "intend": [2, 6, 9], "show": [2, 10], "fe80": 2, "question": [2, 3, 5], "64": [2, 9, 10], "32": [2, 7, 9], "rasperri": 2, "os": [2, 5], "oper": [2, 3, 5, 6, 7, 9, 10, 11], "either": [2, 3, 6, 7, 9, 10], "powershel": 2, "12": [2, 5, 10], "7": [2, 5, 9, 10], "directli": [2, 3, 5, 7, 9, 10, 11], "rnspure": 2, "pyca": [2, 9], "cryptograph": [2, 4, 6, 10, 11], "primit": [2, 4], "obscur": 2, "matter": [2, 5], "perfectli": 2, "One": [3, 7], "truli": [3, 9], "valuabl": [3, 8], "almost": [3, 5, 9, 10], "kind": [3, 5, 6, 9], "interfac": [3, 4, 6, 7, 10], "wireless": [3, 6], "decad": 3, "modern": [3, 9], "millimet": 3, "wave": 3, "backhaul": [3, 6], "chanc": 3, "box": 3, "glue": 3, "littl": [3, 9], "effort": 3, "pipeinterfac": [3, 5], "kiss": [3, 4, 10, 11], "simplyequip": 3, "abund": 3, "sometim": 3, "scratch": 3, "real": [3, 6, 11], "world": [3, 5, 6, 11], "minim": [3, 4, 9], "cost": [3, 9, 11], "fundament": [3, 9], "categori": 3, "briefli": [3, 9], "describ": [3, 5, 7, 9], "emploi": [3, 9], "pattern": [3, 9], "high": [3, 5, 9, 11], "capac": [3, 5, 7, 9], "gain": [3, 7, 9], "antenna": 3, "backbon": 3, "area": [3, 5, 6, 9, 11], "reliabl": [3, 5, 6, 7, 9, 11], "commonli": 3, "expens": 3, "hard": 3, "hungri": 3, "allevi": 3, "plaform": 3, "its": [3, 5, 7, 9], "compon": [3, 8, 9], "frequenc": [3, 5, 9, 10], "band": [3, 9], "scheme": 3, "ism": [3, 9], "avoid": [3, 9, 10], "confus": [3, 9], "layer": [3, 5, 6, 7, 9, 11], "noth": [3, 11], "lorawan": [3, 9], "standard": [3, 9], "central": [3, 6, 9], "iot": 3, "overhead": [3, 5, 9], "level": [3, 5, 9, 10], "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, "sx1262": 3, "sx1268": 3, "esp32": 3, "manufactur": [3, 5], "sx1276": 3, "sx1278": 3, "nrf52": 3, "rak": 3, "avr": 3, "atmega1284p": 3, "rnodeconf": [3, 4], "autoinstal": [3, 10], "seri": 3, "configuraion": 3, "air": 3, "short": [3, 5, 9, 10], "bridg": [3, 4], "behav": 3, "mean": [3, 5, 6, 7, 9, 10], "dhcp": [3, 5, 10], "dn": 3, "least": [3, 5, 9, 10, 11], "transpar": [3, 5, 9, 10], "distanc": [3, 9], "ubiqu": 3, "airmax": 3, "ltu": 3, "mikrotik": 3, "exhaust": [3, 9], "rel": [3, 9], "cheap": [3, 9], "co": [3, 5, 11], "concurr": [3, 9, 10], "switch": [3, 5, 9, 10], "fiber": 3, "optic": [3, 11], "virtual": [3, 5, 6, 9, 10, 11], "adapt": [3, 6], "tun": [3, 5], "tap": 3, "serialinterfac": [3, 5], "usb": [3, 6, 9, 10], "freedv": 3, "tnc": [3, 5, 7, 10, 11], "dire": 3, "wolf": 3, "aim": [4, 9], "particip": [4, 6, 9], "itself": [4, 9], "pdf": 4, "epub": 4, "caveat": 4, "emptor": 4, "fast": [4, 5, 7, 9], "standalon": 4, "resolv": [4, 5, 10], "issu": [4, 6, 8], "base": [4, 5, 6, 7, 9, 10, 11], "shell": [4, 10], "nomad": 4, "sideband": 4, "meshchat": 4, "With": [4, 5, 6, 9, 10], "internet": [4, 5, 9, 11], "testnet": [4, 10], "radio": [4, 5, 6, 7, 9, 10, 11], "custom": [4, 7, 9, 11], "android": [4, 10], "arm64": 4, "debian": [4, 9, 10], "bookworm": 4, "maco": 4, "openwrt": 4, "raspberri": [4, 6, 9, 10, 11], "risc": 4, "v": [4, 10], "ubuntu": [4, 10], "lunar": 4, "window": [4, 5], "pure": [4, 9], "rnid": 4, "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, 11], "reach": [4, 5, 6], "prioritis": [4, 5, 6, 7], "propag": [4, 5, 7], "modem": [4, 5, 6, 7, 9, 11], "udp": [4, 6, 9, 10, 11], "multi": [4, 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, 5, 7, 9, 11], "buffer": [4, 5, 7, 11], "donat": 4, "contribut": 4, "requestreceipt": [4, 7], "rawchannelread": [4, 7], "rawchannelwrit": [4, 7], "search": 4, "distinct": [5, 9], "topologi": [5, 9, 11], "endless": 5, "give": [5, 9, 10], "respect": [5, 11], "extens": [5, 11], "straightforward": 5, "discover": 5, "autoconfigur": [5, 11], "router": [5, 10], "sort": [5, 9, 10], "communica": 5, "tion": 5, "usabl": [5, 9], "interface_en": [5, 10], "spe": 5, "cific": 5, "lan": 5, "group": [5, 7, 9], "id": [5, 7, 9, 10], "group_id": 5, "multicast": 5, "temporari": 5, "perman": [5, 10], "multicast_address_typ": 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, "autodiscov": 5, "discoveri": [5, 7, 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, "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, 7], "eas": [5, 9], "simpler": [5, 11], "ipv4": 5, "listen_ip": 5, "listen_port": 5, "bind": 5, "10": [5, 9, 10], "88": 5, "prefer_ipv6": 5, "yggdrasil": 5, "4343": 5, "i2p_tunnel": 5, "127": 5, "5001": 5, "dedic": [5, 9], "natur": 5, "toler": 5, "intermitt": 5, "gracefulli": 5, "reappear": 5, "hostnam": 5, "201": 5, "5d78": 5, "af73": 5, "5caf": 5, "a4d": 5, "a79f": 5, "3278": 5, "71e5": 5, "expos": [5, 7], "soundmodem": 5, "kiss_fram": 5, "8001": 5, "caution": 5, "conjunct": 5, "never": [5, 7, 9], "disabl": [5, 9, 10], "recoveri": 5, "greatli": 5, "unreli": 5, "implic": 5, "better": 5, "udpinterfac": 5, "forward_ip": 5, "255": [5, 10], "forward_port": 5, "assum": [5, 9], "55": 5, "72": 5, "24": 5, "equival": 5, "forward": [5, 7, 9, 11], "15": 5, "16": [5, 9, 10], "spectrum": [5, 9], "legal": 5, "legisl": 5, "around": [5, 9], "regul": 5, "decis": [5, 9], "ble": 5, "pair": [5, 7, 9, 10], "mac": [5, 9], "3b87": 5, "f4": 5, "73": [5, 10], "29": 5, "4e": 5, "89": 5, "867": 5, "mhz": [5, 9], "867200000": 5, "125": 5, "khz": 5, "125000": 5, "tx": [5, 10], "mw": 5, "txpower": 5, "spread": [5, 10], "factor": [5, 7, 10], "fastest": [5, 9], "longest": 5, "spreadingfactor": 5, "throough": 5, "codingr": 5, "interv": [5, 7, 10], "id_callsign": 5, "mycal": 5, "id_interv": 5, "600": 5, "homebrew": 5, "flow_control": 5, "airtim": 5, "term": [5, 6, 9], "appli": [5, 7, 9], "approxim": 5, "enforc": [5, 7], "roll": 5, "airtime_limit_long": 5, "airtime_limit_short": 5, "33": 5, "individu": [5, 7, 9, 11], "rnodemultiinterfac": 5, "ttyacm0": 5, "subinterfac": 5, "datar": 5, "themselv": 5, "4ghz": 5, "2400000000": 5, "1625": 5, "1625000": 5, "person": [5, 9], "vport": 5, "865": 5, "6": [5, 7, 10], "865600000": 5, "laser": 5, "baud": [5, 10], "stdin": [5, 10], "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], "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], "encapsul": [5, 11], "callsign": 5, "ssid": 5, "realli": [5, 7], "doesn": 5, "incur": 5, "ax25kissinterfac": 5, "no1cll": 5, "ttyusb2": 5, "150m": 5, "increas": [5, 7, 10], "squelch": 5, "rx": [5, 10], "turnaround": 5, "kept": [5, 6, 7, 9], "wast": 5, "bring": 5, "brought": [5, 10], "access_point": 5, "shorthand": [5, 10], "ap": 5, "shorter": 5, "expiri": [5, 7], "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, 11], "512": [5, 7, 9, 11], "announce_cap": [5, 7], "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, "report": [5, 7, 8, 10], "guess": 5, "per": [5, 7, 9, 10, 11], "strictli": [5, 9], "complex": [5, 9], "left": [5, 7, 9, 10], "gw": 5, "behalf": 5, "resid": 5, "requestor": 5, "chain": 5, "along": [5, 6, 7, 9, 10], "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, 7], "impact": [5, 7, 9], "announce_rate_target": 5, "announce_rate_grac": 5, "announce_rate_penalti": 5, "basi": [5, 7, 9, 10, 11], "moder": 5, "violat": 5, "penalti": 5, "7200": 5, "annouce_cap": 5, "mention": [5, 9], "strategi": [5, 7], "slower": [5, 7, 9], "hop": [5, 6, 7, 9, 10, 11], "right": [5, 6], "tend": 5, "conserv": 5, "span": [5, 9], "seamlessli": 5, "influx": 5, "newli": [5, 6, 7, 9], "previous": [5, 6, 7, 9], "hold": [5, 7, 9], "interrupt": 5, "burst": 5, "subsid": 5, "held": [5, 10], "decid": [5, 6, 7, 9], "bogu": 5, "retransmit": [5, 9], "disrupt": 5, "neccessari": 5, "modifi": [5, 9, 10], "ingress_control": 5, "ic_new_tim": 5, "spawn": 5, "ic_burst_freq_new": 5, "ic_burst_freq": 5, "temporarili": 5, "ic_max_held_announc": 5, "drop": [5, 7, 9, 10], "256": [5, 7, 9, 10], "ic_burst_hold": 5, "threshold": 5, "ic_burst_penalti": 5, "ic_held_release_interv": 5, "30": [5, 7, 10], "knowledg": [6, 9], "tradit": [6, 9], "worri": 6, "coordin": [6, 7, 9, 11], "evolv": 6, "futur": [6, 7, 9], "mind": [6, 11], "autonom": [6, 9], "terminologi": [6, 9], "rest": [6, 11], "billion": [6, 9], "larger": [6, 9, 10], "higher": [6, 11], "discrimin": 6, "ephemer": [6, 7, 9, 11], "ellipt": [6, 7, 9, 11], "curv": [6, 7, 9, 11], "diffi": [6, 9], "hellman": [6, 9], "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, "stationari": [6, 10], "candid": 6, "optim": 6, "trustless": [6, 9, 11], "unorganis": 6, "manner": 6, "far": [6, 9], "unexplor": 6, "dissolv": 6, "organ": 6, "restrict": [6, 10], "legaci": 6, "unifi": 6, "carrier": [6, 11], "involv": 6, "hardlin": 6, "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, "cabl": 6, "grow": 6, "core": [6, 9, 10, 11], "those": [6, 9], "d": [6, 10], "island": 6, "investig": 6, "dori": 6, "willing": 6, "she": 6, "her": 6, "home": [6, 10], "everyon": [6, 9], "vice": [6, 11], "versa": [6, 11], "vhf": [6, 9, 11], "outli": 6, "geograph": 6, "coverag": 6, "dai": [6, 7], "find": [6, 9], "poorli": 6, "outlier": 6, "signatur": [7, 9, 10, 11], "configdir": 7, "logdest": 7, "verbos": [7, 10], "require_shared_inst": 7, "exactli": [7, 9], "independ": [7, 9, 11], "inter": 7, "soon": 7, "kill": [7, 9], "forcibli": [7, 10], "advantag": 7, "demand": 7, "500": [7, 9, 11], "adher": 7, "prerequisit": 7, "link_mtu_discoveri": 7, "throughput": [7, 9, 11], "intermediari": [7, 9], "percentag": 7, "schedul": 7, "queu": [7, 10], "fewer": 7, "distant": 7, "smaller": 7, "eventu": 7, "minimum_bitr": 7, "static": 7, "get_inst": 7, "should_use_implicit_proof": 7, "explicit": 7, "implicit": [7, 9], "transport_en": 7, "highest": 7, "remote_management_en": 7, "create_kei": 7, "decrypt": [7, 9, 10], "verif": [7, 9, 10], "sign": [7, 9, 10], "dh": 7, "keysiz": 7, "x": [7, 9, 10], "25519": 7, "concaten": 7, "ratchets": 7, "ratchet": [7, 9], "ratchet_expiri": 7, "2592000": 7, "recent": [7, 9], "rememb": [7, 9], "discard": [7, 9], "newer": [7, 9], "meantim": 7, "128": [7, 9, 11], "constant": 7, "truncat": [7, 9, 10], "recall_app_data": 7, "heard": [7, 9], "full_hash": 7, "sha": [7, 9], "truncated_hash": 7, "current_ratchet_id": 7, "from_byt": 7, "prv_byte": 7, "save": [7, 9], "hazard": 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, 11], "keyerror": 7, "ciphertext_token": 7, "enforce_ratchet": 7, "ratchet_id_receiv": 7, "presenc": 7, "ingo": 7, "zero": [7, 11], "ratchet_count": 7, "ratchet_interv": 7, "1800": 7, "rotat": [7, 9], "expand_nam": 7, "app_and_aspects_from_nam": 7, "full_nam": [7, 10], "tupl": 7, "hash_from_name_and_ident": 7, "adress": [7, 9], "path_respons": 7, "attached_interfac": 7, "tag": 7, "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, "enable_ratchet": 7, "ratchets_path": 7, "secreci": [7, 9, 11], "outsid": [7, 11], "set_retained_ratchet": 7, "retained_ratchet": 7, "set_ratchet_interv": 7, "symmetr": [7, 9], "typeerror": 7, "incompat": [7, 9], "set_default_app_data": 7, "clear_default_app_data": 7, "ae": [7, 9, 11], "instanti": 7, "encrypted_mdu": 7, "383": 7, "plain_mdu": 7, "464": 7, "resend": 7, "get_rssi": 7, "strength": [7, 11], "get_snr": 7, "nois": 7, "ratio": 7, "get_q": 7, "qualiti": 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, "4": [7, 9, 10], "calcul": [7, 9, 10], "stale_grac": 7, "grace": 7, "keepal": [7, 9], "360": 7, "aliv": [7, 9], "stale_tim": 7, "720": 7, "stale": 7, "torn": 7, "progress_callback": 7, "info": [7, 9, 10], "track_phy_stat": 7, "track": 7, "retriev": 7, "stat": [7, 10], "get_establishment_r": 7, "ocur": 7, "get_ag": 7, "no_inbound_for": 7, "no_outbound_for": 7, "outbound": [7, 9], "no_data_for": 7, "travers": [7, 9], "exclud": [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, "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, "accommod": [7, 9], "abstract": [7, 9], "greater": [7, 9, 11], "popul": 7, "bufferedread": 7, "bufferedwrit": 7, "bufferedrwpair": 7, "create_read": 7, "ready_callback": 7, "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, "announce_packet_hash": 7, "receive_path_respons": 7, "live": 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, "overal": 9, "principl": [9, 11], "author": 9, "That": 9, "said": 9, "pretti": 9, "sentiment": 9, "philosophi": 9, "seek": 9, "solv": 9, "primari": 9, "lack": 9, "my": 9, "belief": 9, "highli": 9, "machin": 9, "censorship": [9, 11], "barrier": 9, "todai": 9, "centralis": 9, "trust": [9, 10], "approv": 9, "gatekeep": 9, "inevit": 9, "govern": 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, "useabl": 9, "critic": [9, 10], "agnostic": 9, "shall": 9, "handheld": 9, "strong": 9, "oneself": 9, "unlicens": 9, "condit": [9, 11], "pmr": 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, "asymmetr": [9, 10, 11], "special": [9, 10], "ecdh": [9, 11], "creator": 9, "correspond": 9, "possess": 9, "although": [9, 11], "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, 11], "recap": 9, "indirectli": 9, "ledger": 9, "messeng": 9, "nicknam": 9, "ed25519": [9, 11], "reconstruct": 9, "notic": [9, 10], "piec": 9, "intention": 9, "infer": 9, "throughout": 9, "topic": 9, "necessarili": 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, "closer": 9, "distinguish": 9, "contend": 9, "enable_transport": [9, 10], "randomis": 9, "prioriti": 9, "invers": 9, "proport": 9, "count": 9, "insert": 9, "closest": 9, "newest": 9, "contact": 9, "shortest": 9, "predict": 9, "constantli": 9, "earlier": 9, "opt": 9, "against": 9, "bidirect": 9, "ten": 9, "advanc": 9, "confirm": [9, 11], "insid": 9, "moment": [9, 11], "methodologi": [9, 10], "answer": [9, 10], "malici": 9, "pretend": 9, "recreat": 9, "thereaft": 9, "297": [9, 11], "neglig": 9, "1200": 9, "96": 9, "x25519": [9, 11], "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, "consist": 9, "whereupon": 9, "stabl": [9, 11], "stage": 9, "year": 9, "microcontrol": 9, "430": 9, "868": 9, "900": 9, "tailor": 9, "treat": 9, "regard": 9, "preshar": 9, "compos": 9, "field": 9, "context": 9, "465": 9, "unset": 9, "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, "51": 9, "167": 9, "83": [9, 10], "115": 9, "99": 9, "conceptu": 9, "hkdf": 9, "fernet": 9, "spec": 9, "cbc": [9, 11], "pkcs7": [9, 11], "pad": [9, 11], "hmac": [9, 11], "sha256": [9, 11], "iv": [9, 11], "urandom": [9, 11], "hashlib": 9, "trivial": [9, 11], "consequ": 9, "backend": 9, "loss": 9, "scrutini": 9, "review": [9, 11], "risk": 9, "driver": [10, 11], "privileg": 10, "light": 10, "weight": 10, "etc": 10, "ie": 10, "breviti": 10, "socket": [10, 11], "share_inst": 10, "shared_instance_port": 10, "37428": 10, "instance_control_port": 10, "37429": 10, "rpc": 10, "rpc_kei": 10, "e5c032d3ec4e64a6aca9927ba8ab73336780f6d71790": 10, "probe": 10, "respond_to_prob": 10, "warn": 10, "unus": 10, "teach": 10, "task": 10, "18": 10, "17": 10, "59": 10, "56": 10, "ifconfig": 10, "gbp": 10, "13": 10, "kb": 10, "86": 10, "mbp": 10, "63": 10, "23": 10, "80": 10, "tcpinterfac": 10, "dublin": 10, "187": 10, "27": 10, "74": 10, "uhf": [10, 11], "kbp": 10, "e702c42ba8": 10, "49": 10, "5245a8efe1788c6a1cd36144a270e13b": 10, "j": 10, "w": 10, "arx": 10, "atx": 10, "revers": 10, "json": 10, "new_ident": 10, "984b74a3f768bef236af4371e6f248cd": 10, "new_id": 10, "0f4259fef4521ab75a3409e353fe9073eb10783b4912a6a9937c57bf44a62c1": 10, "hidden": 10, "8dd57a738226809646089335a6b03695": 10, "my_fil": 10, "txt": 10, "bc7291552be7a58f361522990465165c": 10, "rfe": 10, "fetch": 10, "30602def3b3506a28ed33db6f60cc6c9": 10, "2b489d06eaf7c543808c76a5332a447d": 10, "my_ident": 10, "2225fdeecaf6e2db4556c3c2d7637294": 10, "decreas": 10, "overwrit": 10, "c89b4da064bf66d280f0e4d8abfd9806": 10, "f53a1c4278e0726bb73fcc623d6ce763": 10, "max": 10, "rnstransport": 10, "2d03725b327348980d570f739a3a5708": 10, "38": 10, "469": 10, "781": 10, "e7536ee90bd4a440e130490b87a25124": 10, "809": 10, "1726dbad538775b5bf9b0ea25a4079c8": 10, "c50cc4e4f7838b6c31f60ab9032cbc62": 10, "allowed_ident": 10, "copi": 10, "tgz": 10, "73cbd378bb0286ed11a707c13447bb1": 10, "allowed_hash": 10, "silent": 10, "jail": 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, "fw": 10, "url": 10, "nocheck": 10, "flash": 10, "baud_flash": 10, "addr": 10, "freq": 10, "hz": 10, "bw": 10, "txp": 10, "sf": 10, "cr": 10, "eeprom": 10, "backup": 10, "dump": 10, "wipe": 10, "hexbyt": 10, "firmware_hash": 10, "product": 10, "model": 10, "hwrev": 10, "revis": 10, "attach": 10, "older": 10, "extract": 10, "cach": 10, "921600": 10, "bluetooth": 10, "intens": 10, "ff": 10, "consol": 10, "unlock": 10, "bootstrap": 10, "rom": 10, "enable_remote_manag": 10, "remote_management_allow": 10, "9fb6d773498fb3feda407ed8ef2c3229": 10, "2d882c5586e548d79b5af27bca1776dc": 10, "administr": 10, "ftdi_ft230x_basic_uart_43891ckm": 10, "if00": 10, "port0": 10, "plug": 10, "unplug": 10, "systemd": 10, "usr": 10, "execstartpr": 10, "restart": 10, "restartsec": 10, "usernameher": 10, "execstart": 10, "wantedbi": 10, "systemctl": 10, "whole": 10, "regular": 10, "rns_bin_dir": 10, "eg": 10, "reload": 10, "loginctl": 10, "linger": 10, "readili": 11, "advers": 11, "unforg": 11, "acknowledg": 11, "empow": 11, "autonomi": 11, "sovereignti": 11, "planetari": 11, "hierarch": 11, "bureaucrat": 11, "resili": 11, "userland": 11, "beta": 11, "bug": 11, "warrant": 11, "heterogen": 11, "scalabl": 11, "mixtur": 11, "foundat": 11, "keyset": 11, "intuit": 11, "decentralis": 11, "gigabyt": 11, "lightweight": 11, "44": 11, "sequenti": 11, "hoc": 11, "transform": 11, "fact": 11, "generalis": 11, "fibr": 11, "popular": 11, "ideal": 11, "stdio": 11, "hack": 11, "foremost": 11, "audit": 11, "privaci": 11, "thorough": 11, "research": 11, "touch": 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, 1, 1, "", "add_message_handler"], [7, 1, 1, "", "is_ready_to_send"], [7, 2, 1, "", "mdu"], [7, 1, 1, "", "register_message_type"], [7, 1, 1, "", "remove_message_handler"], [7, 1, 1, "", "send"]], "RNS.Destination": [[7, 3, 1, "", "RATCHET_COUNT"], [7, 3, 1, "", "RATCHET_INTERVAL"], [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, "", "enable_ratchets"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "enforce_ratchets"], [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, "", "set_ratchet_interval"], [7, 1, 1, "", "set_retained_ratchets"], [7, 1, 1, "", "sign"]], "RNS.Identity": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "KEYSIZE"], [7, 3, 1, "", "RATCHETSIZE"], [7, 3, 1, "", "RATCHET_EXPIRY"], [7, 3, 1, "", "TRUNCATED_HASHLENGTH"], [7, 1, 1, "", "current_ratchet_id"], [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_age"], [7, 1, 1, "", "get_channel"], [7, 1, 1, "", "get_establishment_rate"], [7, 1, 1, "", "get_q"], [7, 1, 1, "", "get_remote_identity"], [7, 1, 1, "", "get_rssi"], [7, 1, 1, "", "get_snr"], [7, 1, 1, "", "identify"], [7, 1, 1, "", "inactive_for"], [7, 1, 1, "", "no_data_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"], [7, 1, 1, "", "track_phy_stats"]], "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, "", "get_q"], [7, 1, 1, "", "get_rssi"], [7, 1, 1, "", "get_snr"], [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, "", "concluded"], [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, "", "LINK_MTU_DISCOVERY"], [7, 3, 1, "", "MINIMUM_BITRATE"], [7, 3, 1, "", "MTU"], [7, 1, 1, "", "get_instance"], [7, 1, 1, "", "link_mtu_discovery"], [7, 1, 1, "", "remote_management_enabled"], [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, "custom": [0, 2, 5], "interfac": [0, 2, 5, 9, 11], "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, 10], "shell": 2, "nomad": 2, "network": [2, 4, 6], "sideband": 2, "meshchat": 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, 3], "develop": 2, "particip": 2, "platform": 2, "specif": [2, 9], "note": 2, "android": 2, "arm64": 2, "debian": 2, "bookworm": 2, "maco": 2, "openwrt": 2, "raspberri": 2, "pi": 2, "risc": 2, "v": 2, "ubuntu": 2, "lunar": 2, "window": 2, "pure": 2, "python": 2, "commun": 3, "hardwar": 3, "combin": 3, "type": [3, 9, 11], "rnode": [3, 5], "support": [3, 8], "board": 3, "devic": [3, 11], "lilygo": 3, "t": 3, "beam": 3, "suprem": 3, "t3s3": 3, "rak4631": 3, "unsign": 3, "v2": 3, "x": 3, "lora32": 3, "1": 3, "0": 3, "v1": 3, "deck": 3, "heltec": 3, "v3": 3, "usag": 3, "wifi": 3, "ethernet": 3, "serial": [3, 5, 10], "line": 3, "packet": [3, 9], "modem": 3, "stack": 4, "manual": 4, "tabl": 4, "Of": 4, "content": 4, "indic": 4, "configur": [5, 10], "auto": 5, "i2p": 5, "tcp": 5, "server": 5, "client": 5, "udp": 5, "lora": [5, 6], "multi": 5, "pipe": 5, "kiss": 5, "ax": 5, "25": 5, "common": 5, "option": 5, "mode": 5, "rate": 5, "control": 5, "new": 5, "destin": [5, 9], "limit": 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, "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, "prioritis": 9, "access": 9, "wire": 9, "format": 9, "propag": 9, "rule": 9, "cryptograph": 9, "primit": 9, "your": 10, "system": 10, "data": 10, "rnsd": 10, "rnstatu": 10, "rnid": 10, "rnpath": 10, "rnprobe": 10, "rncp": 10, "rnx": 10, "rnodeconf": 10, "manag": 10, "improv": 10, "fix": 10, "port": 10, "servic": 10, "systemwid": 10, "userspac": 10, "what": 11, "i": 11, "current": 11, "statu": 11, "doe": 11, "offer": 11, "where": 11, "can": 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"]], "Custom Interfaces": [[0, "custom-interfaces"], [5, "custom-interfaces"]], "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"]], "MeshChat": [[2, "meshchat"]], "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"]], "Creating and Using Custom Interfaces": [[2, "creating-and-using-custom-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"]], "Debian Bookworm": [[2, "debian-bookworm"]], "MacOS": [[2, "macos"]], "OpenWRT": [[2, "openwrt"]], "Raspberry Pi": [[2, "raspberry-pi"]], "RISC-V": [[2, "risc-v"]], "Ubuntu Lunar": [[2, "ubuntu-lunar"]], "Windows": [[2, "windows"]], "Pure-Python Reticulum": [[2, "pure-python-reticulum"]], "Communications Hardware": [[3, "communications-hardware"]], "Combining Hardware Types": [[3, "combining-hardware-types"]], "RNode": [[3, "rnode"]], "Creating RNodes": [[3, "creating-rnodes"]], "Supported Boards and Devices": [[3, "supported-boards-and-devices"]], "LilyGO T-Beam Supreme": [[3, "lilygo-t-beam-supreme"]], "LilyGO T-Beam": [[3, "lilygo-t-beam"]], "LilyGO T3S3": [[3, "lilygo-t3s3"]], "RAK4631-based Boards": [[3, "rak4631-based-boards"]], "Unsigned RNode v2.x": [[3, "unsigned-rnode-v2-x"]], "LilyGO LoRa32 v2.1": [[3, "lilygo-lora32-v2-1"]], "LilyGO LoRa32 v2.0": [[3, "lilygo-lora32-v2-0"]], "LilyGO LoRa32 v1.0": [[3, "lilygo-lora32-v1-0"]], "LilyGO T-Deck": [[3, "lilygo-t-deck"]], "Heltec LoRa32 v3.0": [[3, "heltec-lora32-v3-0"]], "Heltec LoRa32 v2.0": [[3, "heltec-lora32-v2-0"]], "Unsigned RNode v1.x": [[3, "unsigned-rnode-v1-x"]], "Installation": [[3, "installation"]], "Usage with Reticulum": [[3, "usage-with-reticulum"]], "WiFi-based Hardware": [[3, "wifi-based-hardware"]], "Ethernet-based Hardware": [[3, "ethernet-based-hardware"]], "Serial Lines & Devices": [[3, "serial-lines-devices"]], "Packet Radio Modems": [[3, "packet-radio-modems"]], "Reticulum Network Stack Manual": [[4, "reticulum-network-stack-manual"]], "Table Of Contents": [[4, "table-of-contents"]], "Indices and Tables": [[4, "indices-and-tables"]], "Configuring Interfaces": [[5, "configuring-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"]], "RNode Multi Interface": [[5, "rnode-multi-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"]], "New Destination Rate Limiting": [[5, "new-destination-rate-limiting"]], "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 rnid Utility": [[10, "the-rnid-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"]], "Remote Management": [[10, "remote-management"]], "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"]], "Systemwide Service": [[10, "systemwide-service"]], "Userspace Service": [[10, "userspace-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"]]}, "indexentries": {"announce_cap (rns.reticulum attribute)": [[7, "RNS.Reticulum.ANNOUNCE_CAP"]], "buffer (class in rns)": [[7, "RNS.Buffer"]], "curve (rns.identity attribute)": [[7, "RNS.Identity.CURVE"]], "curve (rns.link attribute)": [[7, "RNS.Link.CURVE"]], "channel (class in rns.channel)": [[7, "RNS.Channel.Channel"]], "destination (class in rns)": [[7, "RNS.Destination"]], "encrypted_mdu (rns.packet attribute)": [[7, "RNS.Packet.ENCRYPTED_MDU"]], "establishment_timeout_per_hop (rns.link attribute)": [[7, "RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP"]], "identity (class in rns)": [[7, "RNS.Identity"]], "keepalive (rns.link attribute)": [[7, "RNS.Link.KEEPALIVE"]], "keepalive_timeout_factor (rns.link attribute)": [[7, "RNS.Link.KEEPALIVE_TIMEOUT_FACTOR"]], "keysize (rns.identity attribute)": [[7, "RNS.Identity.KEYSIZE"]], "link_mtu_discovery (rns.reticulum attribute)": [[7, "RNS.Reticulum.LINK_MTU_DISCOVERY"]], "link (class in rns)": [[7, "RNS.Link"]], "minimum_bitrate (rns.reticulum attribute)": [[7, "RNS.Reticulum.MINIMUM_BITRATE"]], "msgtype (rns.messagebase attribute)": [[7, "RNS.MessageBase.MSGTYPE"]], "mtu (rns.reticulum attribute)": [[7, "RNS.Reticulum.MTU"]], "messagebase (class in rns)": [[7, "RNS.MessageBase"]], "pathfinder_m (rns.transport attribute)": [[7, "RNS.Transport.PATHFINDER_M"]], "plain_mdu (rns.packet attribute)": [[7, "RNS.Packet.PLAIN_MDU"]], "packet (class in rns)": [[7, "RNS.Packet"]], "packetreceipt (class in rns)": [[7, "RNS.PacketReceipt"]], "ratchetsize (rns.identity attribute)": [[7, "RNS.Identity.RATCHETSIZE"]], "ratchet_count (rns.destination attribute)": [[7, "RNS.Destination.RATCHET_COUNT"]], "ratchet_expiry (rns.identity attribute)": [[7, "RNS.Identity.RATCHET_EXPIRY"]], "ratchet_interval (rns.destination attribute)": [[7, "RNS.Destination.RATCHET_INTERVAL"]], "rawchannelreader (class in rns)": [[7, "RNS.RawChannelReader"]], "rawchannelwriter (class in rns)": [[7, "RNS.RawChannelWriter"]], "requestreceipt (class in rns)": [[7, "RNS.RequestReceipt"]], "resource (class in rns)": [[7, "RNS.Resource"]], "reticulum (class in rns)": [[7, "RNS.Reticulum"]], "stale_grace (rns.link attribute)": [[7, "RNS.Link.STALE_GRACE"]], "stale_time (rns.link attribute)": [[7, "RNS.Link.STALE_TIME"]], "truncated_hashlength (rns.identity attribute)": [[7, "RNS.Identity.TRUNCATED_HASHLENGTH"]], "transport (class in rns)": [[7, "RNS.Transport"]], "__init__() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.__init__"]], "__init__() (rns.rawchannelwriter method)": [[7, "RNS.RawChannelWriter.__init__"]], "accepts_links() (rns.destination method)": [[7, "RNS.Destination.accepts_links"]], "add_message_handler() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.add_message_handler"]], "add_ready_callback() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.add_ready_callback"]], "advertise() (rns.resource method)": [[7, "RNS.Resource.advertise"]], "announce() (rns.destination method)": [[7, "RNS.Destination.announce"]], "app_and_aspects_from_name() (rns.destination static method)": [[7, "RNS.Destination.app_and_aspects_from_name"]], "cancel() (rns.resource method)": [[7, "RNS.Resource.cancel"]], "clear_default_app_data() (rns.destination method)": [[7, "RNS.Destination.clear_default_app_data"]], "concluded() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.concluded"]], "create_bidirectional_buffer() (rns.buffer static method)": [[7, "RNS.Buffer.create_bidirectional_buffer"]], "create_keys() (rns.destination method)": [[7, "RNS.Destination.create_keys"]], "create_reader() (rns.buffer static method)": [[7, "RNS.Buffer.create_reader"]], "create_writer() (rns.buffer static method)": [[7, "RNS.Buffer.create_writer"]], "current_ratchet_id() (rns.identity static method)": [[7, "RNS.Identity.current_ratchet_id"]], "decrypt() (rns.destination method)": [[7, "RNS.Destination.decrypt"]], "decrypt() (rns.identity method)": [[7, "RNS.Identity.decrypt"]], "deregister_announce_handler() (rns.transport static method)": [[7, "RNS.Transport.deregister_announce_handler"]], "deregister_request_handler() (rns.destination method)": [[7, "RNS.Destination.deregister_request_handler"]], "enable_ratchets() (rns.destination method)": [[7, "RNS.Destination.enable_ratchets"]], "encrypt() (rns.destination method)": [[7, "RNS.Destination.encrypt"]], "encrypt() (rns.identity method)": [[7, "RNS.Identity.encrypt"]], "enforce_ratchets() (rns.destination method)": [[7, "RNS.Destination.enforce_ratchets"]], "expand_name() (rns.destination static method)": [[7, "RNS.Destination.expand_name"]], "from_bytes() (rns.identity static method)": [[7, "RNS.Identity.from_bytes"]], "from_file() (rns.identity static method)": [[7, "RNS.Identity.from_file"]], "full_hash() (rns.identity static method)": [[7, "RNS.Identity.full_hash"]], "get_age() (rns.link method)": [[7, "RNS.Link.get_age"]], "get_channel() (rns.link method)": [[7, "RNS.Link.get_channel"]], "get_data_size() (rns.resource method)": [[7, "RNS.Resource.get_data_size"]], "get_establishment_rate() (rns.link method)": [[7, "RNS.Link.get_establishment_rate"]], "get_hash() (rns.resource method)": [[7, "RNS.Resource.get_hash"]], "get_instance() (rns.reticulum static method)": [[7, "RNS.Reticulum.get_instance"]], "get_parts() (rns.resource method)": [[7, "RNS.Resource.get_parts"]], "get_private_key() (rns.destination method)": [[7, "RNS.Destination.get_private_key"]], "get_private_key() (rns.identity method)": [[7, "RNS.Identity.get_private_key"]], "get_progress() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_progress"]], "get_progress() (rns.resource method)": [[7, "RNS.Resource.get_progress"]], "get_public_key() (rns.identity method)": [[7, "RNS.Identity.get_public_key"]], "get_q() (rns.link method)": [[7, "RNS.Link.get_q"]], "get_q() (rns.packet method)": [[7, "RNS.Packet.get_q"]], "get_random_hash() (rns.identity static method)": [[7, "RNS.Identity.get_random_hash"]], "get_remote_identity() (rns.link method)": [[7, "RNS.Link.get_remote_identity"]], "get_request_id() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_request_id"]], "get_response() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_response"]], "get_response_time() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_response_time"]], "get_rssi() (rns.link method)": [[7, "RNS.Link.get_rssi"]], "get_rssi() (rns.packet method)": [[7, "RNS.Packet.get_rssi"]], "get_rtt() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.get_rtt"]], "get_segments() (rns.resource method)": [[7, "RNS.Resource.get_segments"]], "get_snr() (rns.link method)": [[7, "RNS.Link.get_snr"]], "get_snr() (rns.packet method)": [[7, "RNS.Packet.get_snr"]], "get_status() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.get_status"]], "get_status() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_status"]], "get_transfer_size() (rns.resource method)": [[7, "RNS.Resource.get_transfer_size"]], "has_path() (rns.transport static method)": [[7, "RNS.Transport.has_path"]], "hash() (rns.destination static method)": [[7, "RNS.Destination.hash"]], "hash_from_name_and_identity() (rns.destination static method)": [[7, "RNS.Destination.hash_from_name_and_identity"]], "hops_to() (rns.transport static method)": [[7, "RNS.Transport.hops_to"]], "identify() (rns.link method)": [[7, "RNS.Link.identify"]], "inactive_for() (rns.link method)": [[7, "RNS.Link.inactive_for"]], "is_compressed() (rns.resource method)": [[7, "RNS.Resource.is_compressed"]], "is_ready_to_send() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.is_ready_to_send"]], "link_mtu_discovery() (rns.reticulum static method)": [[7, "RNS.Reticulum.link_mtu_discovery"]], "load_private_key() (rns.destination method)": [[7, "RNS.Destination.load_private_key"]], "load_private_key() (rns.identity method)": [[7, "RNS.Identity.load_private_key"]], "load_public_key() (rns.identity method)": [[7, "RNS.Identity.load_public_key"]], "mdu (rns.channel.channel property)": [[7, "RNS.Channel.Channel.mdu"]], "next_hop() (rns.transport static method)": [[7, "RNS.Transport.next_hop"]], "next_hop_interface() (rns.transport static method)": [[7, "RNS.Transport.next_hop_interface"]], "no_data_for() (rns.link method)": [[7, "RNS.Link.no_data_for"]], "no_inbound_for() (rns.link method)": [[7, "RNS.Link.no_inbound_for"]], "no_outbound_for() (rns.link method)": [[7, "RNS.Link.no_outbound_for"]], "pack() (rns.messagebase method)": [[7, "RNS.MessageBase.pack"]], "recall() (rns.identity static method)": [[7, "RNS.Identity.recall"]], "recall_app_data() (rns.identity static method)": [[7, "RNS.Identity.recall_app_data"]], "register_announce_handler() (rns.transport static method)": [[7, "RNS.Transport.register_announce_handler"]], "register_message_type() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.register_message_type"]], "register_request_handler() (rns.destination method)": [[7, "RNS.Destination.register_request_handler"]], "remote_management_enabled() (rns.reticulum static method)": [[7, "RNS.Reticulum.remote_management_enabled"]], "remove_message_handler() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.remove_message_handler"]], "remove_ready_callback() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.remove_ready_callback"]], "request() (rns.link method)": [[7, "RNS.Link.request"]], "request_path() (rns.transport static method)": [[7, "RNS.Transport.request_path"]], "resend() (rns.packet method)": [[7, "RNS.Packet.resend"]], "send() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.send"]], "send() (rns.packet method)": [[7, "RNS.Packet.send"]], "set_default_app_data() (rns.destination method)": [[7, "RNS.Destination.set_default_app_data"]], "set_delivery_callback() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_delivery_callback"]], "set_link_closed_callback() (rns.link method)": [[7, "RNS.Link.set_link_closed_callback"]], "set_link_established_callback() (rns.destination method)": [[7, "RNS.Destination.set_link_established_callback"]], "set_packet_callback() (rns.destination method)": [[7, "RNS.Destination.set_packet_callback"]], "set_packet_callback() (rns.link method)": [[7, "RNS.Link.set_packet_callback"]], "set_proof_requested_callback() (rns.destination method)": [[7, "RNS.Destination.set_proof_requested_callback"]], "set_proof_strategy() (rns.destination method)": [[7, "RNS.Destination.set_proof_strategy"]], "set_ratchet_interval() (rns.destination method)": [[7, "RNS.Destination.set_ratchet_interval"]], "set_remote_identified_callback() (rns.link method)": [[7, "RNS.Link.set_remote_identified_callback"]], "set_resource_callback() (rns.link method)": [[7, "RNS.Link.set_resource_callback"]], "set_resource_concluded_callback() (rns.link method)": [[7, "RNS.Link.set_resource_concluded_callback"]], "set_resource_started_callback() (rns.link method)": [[7, "RNS.Link.set_resource_started_callback"]], "set_resource_strategy() (rns.link method)": [[7, "RNS.Link.set_resource_strategy"]], "set_retained_ratchets() (rns.destination method)": [[7, "RNS.Destination.set_retained_ratchets"]], "set_timeout() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_timeout"]], "set_timeout_callback() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_timeout_callback"]], "should_use_implicit_proof() (rns.reticulum static method)": [[7, "RNS.Reticulum.should_use_implicit_proof"]], "sign() (rns.destination method)": [[7, "RNS.Destination.sign"]], "sign() (rns.identity method)": [[7, "RNS.Identity.sign"]], "teardown() (rns.link method)": [[7, "RNS.Link.teardown"]], "to_file() (rns.identity method)": [[7, "RNS.Identity.to_file"]], "track_phy_stats() (rns.link method)": [[7, "RNS.Link.track_phy_stats"]], "transport_enabled() (rns.reticulum static method)": [[7, "RNS.Reticulum.transport_enabled"]], "truncated_hash() (rns.identity static method)": [[7, "RNS.Identity.truncated_hash"]], "unpack() (rns.messagebase method)": [[7, "RNS.MessageBase.unpack"]], "validate() (rns.identity method)": [[7, "RNS.Identity.validate"]]}}) \ 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", "Configuring 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, 10], "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, 11], "sourc": [0, 2, 3, 6, 9, 11], "distribut": [0, 2, 6, 7, 9, 10, 11], "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, 10], "your": [0, 2, 3, 4, 5, 6, 7, 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, 5], "minimum": [0, 5, 6, 7, 9], "setup": [0, 2, 4, 5, 10], "requir": [0, 2, 5, 6, 7, 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, 4, 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, 7, 9, 10, 11], "gener": [0, 2, 3, 5, 6, 7, 9, 10, 11], "new": [0, 4, 6, 7, 9, 10], "destin": [0, 2, 4, 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, "sy": 0, "": [0, 2, 5, 6, 9, 10, 11], "defin": [0, 5, 7, 9, 10], "app": [0, 2, 7, 9], "name": [0, 2, 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, 5, 7, 10], "i": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10], "part": [0, 5, 6, 7, 9, 10], "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, "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, 10], "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, 10, 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], "automat": [0, 2, 5, 6, 7, 9, 10, 11], "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, 6, 7, 9, 11], "prove": [0, 9], "packet": [0, 2, 4, 5, 6, 7, 10, 11], "By": [0, 2, 5, 7, 9, 10], "do": [0, 2, 3, 5, 7, 9, 10, 11], "proof": [0, 7, 9, 10], "each": [0, 2, 5, 6, 7, 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, 5, 6, 7, 9, 10], "tri": 0, "whether": [0, 2, 5, 7, 9], "wa": [0, 3, 5, 6, 7, 9, 10, 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, 2, 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, 2], "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, 10], "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, 2, 5, 7, 10], "input": [0, 10], "sent": [0, 2, 7, 9, 10], "startup": [0, 2, 10], "get": [0, 3, 4, 5, 7, 10, 11], "pars": 0, "desir": [0, 3, 5, 9], "mode": [0, 2, 3, 4, 9, 10, 11], "__name__": 0, "__main__": 0, "try": [0, 4, 5, 7], "parser": 0, "argumentpars": 0, "descript": [0, 10], "add_argu": 0, "config": [0, 2, 5, 6, 10], "action": 0, "store": [0, 7, 9, 10], "default": [0, 2, 3, 5, 6, 7, 9, 10], "none": [0, 2, 5, 7, 9, 10], "help": [0, 2, 6, 8, 9, 10, 11], "altern": [0, 2, 5, 10], "directori": [0, 2, 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], "0": [0, 2, 5, 7, 9, 10, 11], "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, 10], "build": [0, 2, 3, 4, 5, 9, 11], "upon": [0, 5, 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, 2, 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, 10], "see": [0, 2, 5, 6, 7, 9, 10, 11], "what": [0, 2, 4, 5, 7, 9], "happen": [0, 2, 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, "len": 0, "1": [0, 2, 5, 7, 9, 10], "data": [0, 2, 3, 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, 5, 6, 9, 10, 11], "aspect": [0, 3, 5, 7, 9, 10], "__init__": [0, 7], "self": [0, 6, 11], "call": [0, 2, 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], "cannot": [0, 2, 5, 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], "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, 10, 11], "differ": [0, 2, 3, 5, 6, 7, 9, 10, 11], "plain": [0, 3, 5, 7, 9], "uncencrypt": 0, "broadcast_destin": 0, "specifi": [0, 2, 3, 5, 6, 7, 10], "everi": [0, 2, 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, 2], "channelarg": 0, "between": [0, 5, 6, 7, 9, 10], "simpl": [0, 3, 7, 9, 10, 11], "respond": [0, 7, 10], "receipt": [0, 7, 9], "choos": [0, 2, 5, 9], "global": [0, 2, 5, 6, 7, 9, 11], "server_ident": 0, "queri": [0, 2, 7, 10], "abl": [0, 2, 5, 6, 7, 9, 10], "verifi": [0, 2, 7, 9, 10, 11], "repli": [0, 10], "encrypt": [0, 2, 6, 7, 9, 10, 11], "wai": [0, 2, 5, 6, 7, 9, 10], "certain": [0, 5, 6, 8, 9], "than": [0, 2, 5, 6, 7, 9, 10, 11], "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, 7, 10], "dbm": [0, 5, 10], "snr": [0, 7, 10], "db": [0, 10], "destination_hexhash": 0, "timeout": [0, 7, 10], "binari": [0, 2, 7, 9, 10], "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, 10], "hexadecim": [0, 9, 10], "charact": 0, "byte": [0, 7, 9, 10, 11], "format": [0, 4, 10, 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, 11], "has_path": [0, 7], "To": [0, 2, 3, 5, 6, 9, 10, 11], "public": [0, 4, 5, 7, 10], "kei": [0, 4, 6, 7, 10, 11], "done": [0, 2, 5, 6, 9, 10], "recal": [0, 7, 10], "modul": [0, 2, 3, 5, 9, 10, 11], "known": [0, 5, 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, 7, 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, 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, 2, 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], "forth": 0, "o": [0, 2, 9, 10, 11], "refer": [0, 2, 4], "latest": [0, 2, 5, 7, 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, 5], "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, 7, 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, "5": [0, 2, 5, 7, 9, 10, 11], "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, 10], "remote_p": 0, "unidentifi": 0, "get_remote_ident": [0, 7], "client_ident": 0, "sendig": 0, "perform": [0, 2, 5, 6, 7, 9, 10], "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, 2, 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, 11], "umsgpack": 0, "share": [0, 2, 6, 7, 9, 10], "object": [0, 7], "subclass": [0, 7], "messagebas": [0, 4, 7], "ensur": [0, 5, 7, 9, 10, 11], "serial": [0, 2, 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, 11], "stringmessag": 0, "convei": 0, "timestamp": [0, 9], "msgtype": [0, 7], "variabl": [0, 2, 7], "assign": [0, 9, 10], "integ": 0, "valu": [0, 5, 7, 9], "constructor": 0, "uniqu": [0, 5, 7, 9, 11], "across": [0, 3, 6, 7], "0xf000": [0, 7], "reserv": [0, 7], "0x0101": 0, "callabl": [0, 7], "paramet": [0, 3, 5, 6, 7, 9, 10], "empti": 0, "version": [0, 2, 7, 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, 10], "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, 2, 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, 7], "isinst": 0, "reply_messag": 0, "order": [0, 7, 10], "were": [0, 6], "consid": [0, 5, 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, 2, 5, 10], "resourc": [0, 2, 4, 5, 7, 8], "effici": [0, 2, 5, 7, 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, 11], "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, 7, 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, 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, 5, 6, 9, 10], "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, 5, 6, 7, 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, 2, 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, 10], "conclud": [0, 7], "hasattr": 0, "server_fil": 0, "current": [0, 2, 4, 5, 7, 9], "current_download": 0, "current_filenam": 0, "statist": [0, 5, 7, 8], "download_start": 0, "download_finish": 0, "download_tim": 0, "transfer_s": 0, "file_s": 0, "expect": [0, 2, 5, 7, 9, 10], "normal": [0, 2, 5, 7, 10], "accordingli": [0, 5], "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, 11], "state": 0, "It": [0, 2, 3, 5, 7, 9, 10, 11], "uninterest": 0, "won": 0, "clear_screen": 0, "print_filelist": 0, "percent": [0, 5], "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, 5], "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, 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, 7, 9, 11], "job": 0, "potenti": [0, 2, 5, 8, 9, 10, 11], "target": [0, 5, 10], "filelist_timeout_job": 0, "daemon": [0, 2, 5, 7, 10], "detect": 0, "shown": 0, "progress": [0, 7, 10, 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, 10], "m": [0, 2, 9, 10], "g": [0, 10], "p": [0, 10], "z": 0, "y": 0, "ab": 0, "1024": 0, "clear": [0, 5, 7, 9, 10], "cl": 0, "nt": 0, "dir": 0, "exampleinterfac": 0, "utilis": [0, 2, 5, 6, 7, 10, 11], "fulli": [0, 2, 3, 5, 9, 10, 11], "par": [0, 2], "nativ": 0, "common": [0, 3, 4, 6, 9, 10, 11], "mit": 0, "licens": [0, 9], "copyright": 0, "2024": 0, "mark": [0, 7, 9], "qvist": 0, "unsign": 0, "io": [0, 3], "illustr": [0, 6, 9], "runtim": [0, 9], "place": [0, 2, 5, 6, 9, 10], "folder": [0, 2], "similar": [0, 2, 3, 5, 6, 7, 10, 11], "enabl": [0, 2, 3, 5, 6, 7, 9, 10, 11], "gatewai": [0, 2, 5, 6, 9], "port": [0, 3, 4, 5, 6, 9, 11], "dev": [0, 2, 5, 10], "ttyusb0": [0, 5, 10], "speed": [0, 5, 7, 9, 10], "115200": [0, 5, 10], "databit": [0, 5, 10], "pariti": [0, 5, 10], "stopbit": [0, 5, 10], "hdlc": 0, "helper": 0, "delimit": 0, "physic": [0, 2, 3, 5, 7, 9, 10, 11], "medium": [0, 3, 5, 6, 7, 9, 11], "case": [0, 2, 3, 5, 6, 9, 10], "simplifi": 0, "frame": [0, 5], "ppp": 0, "flag": [0, 2, 7, 9], "0x7e": 0, "esc": 0, "0x7d": 0, "esc_mask": 0, "0x20": 0, "staticmethod": 0, "escap": 0, "replac": [0, 2, 7, 9, 10], "sub": [0, 5], "ifac": [0, 9, 10], "default_ifac_s": 0, "particular": [0, 3], "owner": 0, "posit": [0, 10], "dict": 0, "depend": [0, 3, 4, 6, 7, 9, 10], "importlib": 0, "find_spec": 0, "instal": [0, 4, 5, 6, 9, 10, 11], "log_crit": 0, "python3": [0, 2, 3], "pip": [0, 2, 3, 10], "pyseri": [0, 2], "panic": [0, 10], "super": 0, "sure": [0, 2, 3, 10], "through": [0, 2, 3, 5, 6, 7, 9, 10, 11], "step": [0, 2, 3], "compat": [0, 2, 3, 5, 7, 9], "platform": [0, 3, 4, 9, 10], "ifconf": 0, "get_config_obj": 0, "suppli": [0, 5, 6, 7, 9, 11], "miss": [0, 2], "9600": 0, "abort": 0, "f": [0, 2, 10], "No": [0, 2, 5, 9, 10, 11], "hardwar": [0, 2, 4, 5, 6, 7, 9, 10, 11], "mtu": [0, 7, 9, 11], "maximum": [0, 5, 7, 9, 10], "underli": [0, 6, 11], "capabl": [0, 9], "without": [0, 2, 3, 5, 6, 9, 10, 11], "segment": [0, 5, 6, 7, 9, 11], "hw_mtu": 0, "564": 0, "onlin": [0, 10], "bitrat": [0, 5, 7], "intern": [0, 5, 7, 9], "accord": [0, 2, 9], "parity_non": 0, "lower": [0, 2, 5, 10], "even": [0, 2, 5, 6, 7, 9, 10, 11], "parity_even": 0, "odd": 0, "parity_odd": 0, "open_port": 0, "succeed": [0, 7], "post": 0, "is_open": 0, "configure_devic": 0, "ioerror": 0, "log_verbos": 0, "baudrat": 0, "bytes": 0, "xonxoff": 0, "rtsct": 0, "inter_byte_timeout": 0, "write_timeout": 0, "dsrdtr": 0, "thing": [0, 2], "amount": [0, 5, 6, 7, 9, 11], "devic": [0, 2, 4, 5, 6, 7, 9, 10], "read_loop": 0, "whenev": [0, 7, 9], "process_incom": 0, "rxb": 0, "process": [0, 2, 3, 5, 7, 9], "inbound": [0, 5, 7], "process_outgo": 0, "Then": [0, 2], "written": [0, 9], "txb": 0, "wrote": [0, 5], "contin": 0, "meth": 0, "turn": [0, 10], "in_fram": 0, "data_buff": 0, "last_read_m": 0, "in_wait": 0, "ord": 0, "time_since_last": 0, "08": [0, 10], "occur": [0, 5, 10, 11], "experienc": 0, "unrecover": [0, 10], "offlin": [0, 2], "panic_on_interface_error": [0, 10], "attempt": [0, 2, 3, 7], "reconnect": 0, "period": [0, 5, 7, 9], "reconnect_port": 0, "signal": [0, 7, 9], "ingress": [0, 5], "limit": [0, 3, 4, 6, 9], "should_ingress_limit": 0, "extern": [0, 2, 5, 7, 11], "__str__": 0, "interface_class": 0, "best": [2, 9, 11], "guid": [2, 3, 9], "outlin": [2, 3, 9], "sensibl": [2, 3, 5], "scenario": [2, 4, 9], "relat": 2, "easiest": [2, 3, 5, 9], "via": [2, 3, 5, 8, 9, 10, 11], "manag": [2, 4, 6, 7, 9, 11], "sudo": [2, 10], "apt": 2, "pamac": 2, "dowload": 2, "releas": [2, 5, 7, 9], "wheel": 2, "channel": [2, 4, 5, 6, 7, 8, 9, 11], "py3": 2, "whl": 2, "For": [2, 5, 6, 7, 9, 10, 11], "instruct": 2, "section": [2, 3, 5, 6, 9, 10], "might": [2, 5, 6, 9, 10], "chapter": [2, 3, 5, 6, 7, 9, 10, 11], "mai": [2, 5, 7, 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, "pre": [2, 7, 9], "built": [2, 5, 9, 10, 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, 10, 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, 4, 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], "transceiv": [2, 3, 5, 9, 11], "infrastructur": [2, 3, 5, 6, 9, 10], "launch": [2, 10], "enough": [2, 3, 9], "rnsh": [2, 10], "session": [2, 9], "pipe": [2, 4, 11], "ssh": 2, "veri": [2, 3, 5, 6, 7, 8, 9, 10, 11], "facilit": 2, "suit": [2, 3, 9, 10], "featur": [2, 7, 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, 10], "anoth": [2, 7, 9, 10], "project": 2, "nomadnet": 2, "reboot": 2, "again": [2, 5, 9, 10], "environ": [2, 6, 9], "would": [2, 5, 6, 7, 9], "rather": [2, 7], "graphic": 2, "linux": [2, 3, 9], "peopl": [2, 9], "i2p": [2, 4, 11], "qr": 2, "paper": 2, "anyth": [2, 3, 5, 9, 10, 11], "interoper": [2, 3, 6, 9, 11], "friendli": 2, "voic": 2, "interest": [2, 9], "cours": [2, 5, 9], "come": [2, 9], "easier": [2, 5, 6, 10, 11], "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], "locat": [2, 5, 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, 3, 5, 6, 7, 9, 10, 11], "tabl": [2, 5, 6, 9, 10], "discov": [2, 5], "topographi": [2, 6, 9], "situat": [2, 3, 5, 6, 9], "where": [2, 3, 4, 5, 6, 7, 9, 10], "often": [2, 5, 6, 9, 10], "suffici": [2, 5, 9, 10], "act": [2, 7, 9, 10], "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], "latenc": [2, 9, 11], "energi": 2, "i2pinterfac": [2, 5], "howev": [2, 6, 9], "leak": 2, "reveal": [2, 7, 9, 11], "who": [2, 5, 9], "inspect": [2, 5, 6, 9, 10], "someon": [2, 5], "determin": [2, 7, 9], "adversari": 2, "record": [2, 9], "metadata": [2, 9], "transmiss": [2, 5, 7, 9], "though": [2, 5, 9], "publicli": [2, 5], "most": [2, 3, 5, 6, 7, 9, 10], "anymor": 2, "invis": [2, 5], "parallel": 2, "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, 11], "attack": 2, "form": [2, 5, 6, 7, 9], "deep": 2, "much": [2, 5, 6, 9, 10, 11], "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], "amsterdam": 2, "hub": [2, 5], "tcpclientinterfac": [2, 3, 5], "ye": [2, 5, 9, 10], "target_host": [2, 5], "target_port": [2, 5], "4965": [2, 10], "betweenthebord": 2, "4242": [2, 5], "g3br23bvx3lq5uddcsjii74xgmn6y5q325ovrkq2zw2wbzbqgbuq": 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, 10], "failur": [2, 5, 7], "guarante": [2, 9], "weird": 2, "goe": 2, "sai": 2, "hardcod": 2, "ship": 2, "practic": [2, 9, 11], "solut": [2, 9, 10], "leav": [2, 6, 9], "wide": [2, 3, 5, 9, 10, 11], "easili": [2, 5, 6, 9, 10, 11], "cheapli": 2, "rnode": [2, 4, 9, 10, 11], "purpos": [2, 3, 5, 7, 9, 10], "digit": [2, 3, 9, 11], "integr": [2, 6, 9], "yourself": [2, 9, 11], "firmwar": [2, 3, 9, 10], "board": [2, 4, 5, 9, 11], "auto": [2, 3, 4, 7, 9], "script": [2, 3], "prefer": [2, 9], "purchas": [2, 6, 9, 11], "supplier": 2, "addit": [2, 3, 5, 7, 9, 10, 11], "privat": [2, 5, 7, 8, 9, 10, 11], "secur": [2, 9, 11], "uncensor": 2, "mesh": [2, 5, 6, 11], "think": 2, "welcom": 2, "head": 2, "discuss": [2, 3, 9], "propos": 2, "flexibl": [2, 3, 5, 11], "broad": [2, 3], "cover": [2, 3, 9, 11], "conceiv": [2, 3], "therefor": [2, 9, 11], "possibl": [2, 3, 5, 6, 7, 9, 10, 11], "subject": [2, 11], "code": [2, 3, 4, 5, 10], "abov": [2, 3, 5, 9, 10], "next": [2, 6, 7, 9], "api": [2, 4, 9, 11], "document": [2, 7, 9], "associ": [2, 7, 9], "recip": 2, "cryptographi": [2, 9, 11], "clone": 2, "repositori": [2, 8, 9], "git": 2, "move": [2, 5, 9, 10], "symlink": [2, 10], "cd": 2, "ln": [2, 10], "echo": [2, 4], "ve": 2, "immedi": [2, 5, 10], "necessari": [2, 3, 5, 6, 7, 9], "nano": 2, "repeat": 2, "h": [2, 10], "ping": [2, 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, 11], "good": [2, 3, 6, 9, 10], "idea": [2, 9, 10], "introduc": [2, 9], "disucss": 2, "forum": 2, "maintain": [2, 9], "procedur": [2, 7, 9], "quirk": 2, "worth": 2, "being": [2, 5, 7, 9], "awar": [2, 5, 9], "termux": 2, "droid": 2, "emul": 2, "abil": [2, 3, 11], "pkg": 2, "upgrad": [2, 7, 9], "reason": [2, 5, 9], "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], "apk": 2, "tutori": 2, "architectur": 2, "precompil": 2, "april": 2, "2023": [2, 10], "onto": [2, 9], "unfortun": 2, "pipx": 2, "isol": [2, 5, 10], "neg": 2, "affect": [2, 5], "ensurepath": 2, "restor": [2, 5], "behaviour": [2, 5, 10], "edit": [2, 10], "conf": 2, "break": [2, 7, 9, 11], "shot": 2, "somewhat": 2, "mislead": 2, "choic": 2, "word": 2, "rare": [2, 5], "lead": [2, 9], "conflict": 2, "pose": [2, 9], "problem": [2, 9], "especi": [2, 3, 5], "vari": [2, 5, 9, 10], "doubt": 2, "pip3": 2, "addition": [2, 3, 5, 9], "init": 2, "zshrc": 2, "9": [2, 7, 10], "bin": [2, 10], "adjust": [2, 7], "storag": 2, "memori": [2, 9], "opkg": 2, "At": [2, 6, 9], "underwai": 2, "uci": 2, "feed": [2, 7], "debug": [2, 10], "vvv": 2, "21": 2, "02": 2, "alter": [2, 7, 9], "free": [2, 6, 8, 11], "overlai": 2, "ram": [2, 5], "rule": [2, 4, 5], "proper": 2, "laucnh": 2, "boot": [2, 10], "ipv6": [2, 5, 10], "intend": [2, 6, 9], "show": [2, 10], "fe80": 2, "question": [2, 3, 5], "64": [2, 9, 10], "32": [2, 7, 9], "rasperri": 2, "os": [2, 5], "oper": [2, 3, 5, 6, 7, 9, 10, 11], "either": [2, 3, 6, 7, 9, 10], "powershel": 2, "12": [2, 5, 10], "7": [2, 5, 9, 10], "directli": [2, 3, 5, 7, 9, 10, 11], "rnspure": 2, "pyca": [2, 9], "cryptograph": [2, 4, 6, 10, 11], "primit": [2, 4], "obscur": 2, "matter": [2, 5], "perfectli": 2, "One": [3, 7], "truli": [3, 9], "valuabl": [3, 8], "almost": [3, 5, 9, 10], "kind": [3, 5, 6, 9], "interfac": [3, 4, 6, 7, 10], "wireless": [3, 6], "decad": 3, "modern": [3, 9], "millimet": 3, "wave": 3, "backhaul": [3, 6], "chanc": 3, "box": 3, "glue": 3, "littl": [3, 9], "effort": 3, "pipeinterfac": [3, 5], "kiss": [3, 4, 10, 11], "simplyequip": 3, "abund": 3, "sometim": 3, "scratch": 3, "real": [3, 6, 11], "world": [3, 5, 6, 11], "minim": [3, 4, 9], "cost": [3, 9, 11], "fundament": [3, 9], "categori": 3, "briefli": [3, 9], "describ": [3, 5, 7, 9], "emploi": [3, 9], "pattern": [3, 9], "high": [3, 5, 9, 11], "capac": [3, 5, 7, 9], "gain": [3, 7, 9], "antenna": 3, "backbon": 3, "area": [3, 5, 6, 9, 11], "reliabl": [3, 5, 6, 7, 9, 11], "commonli": 3, "expens": 3, "hard": 3, "hungri": 3, "allevi": 3, "plaform": 3, "its": [3, 5, 7, 9], "compon": [3, 8, 9], "frequenc": [3, 5, 9, 10], "band": [3, 9], "scheme": 3, "ism": [3, 9], "avoid": [3, 9, 10], "confus": [3, 9], "layer": [3, 5, 6, 7, 9, 11], "noth": [3, 11], "lorawan": [3, 9], "standard": [3, 9], "central": [3, 6, 9], "iot": 3, "overhead": [3, 5, 9], "level": [3, 5, 9, 10], "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, "sx1262": 3, "sx1268": 3, "esp32": 3, "manufactur": [3, 5], "sx1276": 3, "sx1278": 3, "nrf52": 3, "rak": 3, "avr": 3, "atmega1284p": 3, "rnodeconf": [3, 4], "autoinstal": [3, 10], "seri": 3, "configuraion": 3, "air": 3, "short": [3, 5, 9, 10], "bridg": [3, 4], "behav": 3, "mean": [3, 5, 6, 7, 9, 10], "dhcp": [3, 5, 10], "dn": 3, "least": [3, 5, 9, 10, 11], "transpar": [3, 5, 9, 10], "distanc": [3, 9], "ubiqu": 3, "airmax": 3, "ltu": 3, "mikrotik": 3, "exhaust": [3, 9], "rel": [3, 9], "cheap": [3, 9], "co": [3, 5, 11], "concurr": [3, 9, 10], "switch": [3, 5, 9, 10], "fiber": 3, "optic": [3, 11], "virtual": [3, 5, 6, 9, 10, 11], "adapt": [3, 6], "tun": [3, 5], "tap": 3, "serialinterfac": [3, 5], "usb": [3, 6, 9, 10], "freedv": 3, "tnc": [3, 5, 7, 10, 11], "dire": 3, "wolf": 3, "aim": [4, 9], "particip": [4, 6, 9], "itself": [4, 9], "pdf": 4, "epub": 4, "caveat": 4, "emptor": 4, "fast": [4, 5, 7, 9], "standalon": 4, "resolv": [4, 5, 10], "issu": [4, 6, 8], "base": [4, 5, 6, 7, 9, 10, 11], "shell": [4, 10], "nomad": 4, "sideband": 4, "meshchat": 4, "With": [4, 5, 6, 9, 10], "internet": [4, 5, 9, 11], "testnet": [4, 10], "radio": [4, 5, 6, 7, 9, 10, 11], "custom": [4, 7, 9, 11], "android": [4, 10], "arm64": 4, "debian": [4, 9, 10], "bookworm": 4, "maco": 4, "openwrt": 4, "raspberri": [4, 6, 9, 10, 11], "risc": 4, "v": [4, 10], "ubuntu": [4, 10], "lunar": 4, "window": [4, 5], "pure": [4, 9], "rnid": 4, "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, 11], "reach": [4, 5, 6], "prioritis": [4, 5, 6, 7], "propag": [4, 5, 7], "modem": [4, 5, 6, 7, 9, 11], "udp": [4, 6, 9, 10, 11], "multi": [4, 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, 5, 7, 9, 11], "buffer": [4, 5, 7, 11], "donat": 4, "contribut": 4, "requestreceipt": [4, 7], "rawchannelread": [4, 7], "rawchannelwrit": [4, 7], "search": 4, "distinct": [5, 9], "topologi": [5, 9, 11], "endless": 5, "give": [5, 9, 10], "respect": [5, 11], "extens": [5, 11], "straightforward": 5, "discover": 5, "autoconfigur": [5, 11], "router": [5, 10], "sort": [5, 9, 10], "communica": 5, "tion": 5, "usabl": [5, 9], "interface_en": [5, 10], "spe": 5, "cific": 5, "lan": 5, "group": [5, 7, 9], "id": [5, 7, 9, 10], "group_id": 5, "multicast": 5, "temporari": 5, "perman": [5, 10], "multicast_address_typ": 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, "autodiscov": 5, "discoveri": [5, 7, 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, "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, 7], "eas": [5, 9], "simpler": [5, 11], "ipv4": 5, "listen_ip": 5, "listen_port": 5, "bind": 5, "10": [5, 9, 10], "88": 5, "prefer_ipv6": 5, "yggdrasil": 5, "4343": 5, "i2p_tunnel": 5, "127": 5, "5001": 5, "dedic": [5, 9], "natur": 5, "toler": 5, "intermitt": 5, "gracefulli": 5, "reappear": 5, "hostnam": 5, "201": 5, "5d78": 5, "af73": 5, "5caf": 5, "a4d": 5, "a79f": 5, "3278": 5, "71e5": 5, "expos": [5, 7], "soundmodem": 5, "kiss_fram": 5, "8001": 5, "caution": 5, "conjunct": 5, "never": [5, 7, 9], "disabl": [5, 9, 10], "recoveri": 5, "greatli": 5, "unreli": 5, "implic": 5, "better": 5, "udpinterfac": 5, "forward_ip": 5, "255": [5, 10], "forward_port": 5, "assum": [5, 9], "55": 5, "72": 5, "24": 5, "equival": 5, "forward": [5, 7, 9, 11], "15": 5, "16": [5, 9, 10], "spectrum": [5, 9], "legal": 5, "legisl": 5, "around": [5, 9], "regul": 5, "decis": [5, 9], "ble": 5, "pair": [5, 7, 9, 10], "mac": [5, 9], "3b87": 5, "f4": 5, "73": [5, 10], "29": 5, "4e": 5, "89": 5, "867": 5, "mhz": [5, 9], "867200000": 5, "125": 5, "khz": 5, "125000": 5, "tx": [5, 10], "mw": 5, "txpower": 5, "spread": [5, 10], "factor": [5, 7, 10], "fastest": [5, 9], "longest": 5, "spreadingfactor": 5, "throough": 5, "codingr": 5, "interv": [5, 7, 10], "id_callsign": 5, "mycal": 5, "id_interv": 5, "600": 5, "homebrew": 5, "flow_control": 5, "airtim": 5, "term": [5, 6, 9], "appli": [5, 7, 9], "approxim": 5, "enforc": [5, 7], "roll": 5, "airtime_limit_long": 5, "airtime_limit_short": 5, "33": 5, "individu": [5, 7, 9, 11], "rnodemultiinterfac": 5, "ttyacm0": 5, "subinterfac": 5, "datar": 5, "themselv": 5, "4ghz": 5, "2400000000": 5, "1625": 5, "1625000": 5, "person": [5, 9], "vport": 5, "865": 5, "6": [5, 7, 10], "865600000": 5, "laser": 5, "baud": [5, 10], "stdin": [5, 10], "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], "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], "encapsul": [5, 11], "callsign": 5, "ssid": 5, "realli": [5, 7], "doesn": 5, "incur": 5, "ax25kissinterfac": 5, "no1cll": 5, "ttyusb2": 5, "150m": 5, "increas": [5, 7, 10], "squelch": 5, "rx": [5, 10], "turnaround": 5, "kept": [5, 6, 7, 9], "wast": 5, "bring": 5, "brought": [5, 10], "access_point": 5, "shorthand": [5, 10], "ap": 5, "shorter": 5, "expiri": [5, 7], "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, 11], "512": [5, 7, 9, 11], "announce_cap": [5, 7], "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, "report": [5, 7, 8, 10], "guess": 5, "per": [5, 7, 9, 10, 11], "strictli": [5, 9], "complex": [5, 9], "left": [5, 7, 9, 10], "gw": 5, "behalf": 5, "resid": 5, "requestor": 5, "chain": 5, "along": [5, 6, 7, 9, 10], "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, 7], "impact": [5, 7, 9], "announce_rate_target": 5, "announce_rate_grac": 5, "announce_rate_penalti": 5, "basi": [5, 7, 9, 10, 11], "moder": 5, "violat": 5, "penalti": 5, "7200": 5, "annouce_cap": 5, "mention": [5, 9], "strategi": [5, 7], "slower": [5, 7, 9], "hop": [5, 6, 7, 9, 10, 11], "right": [5, 6], "tend": 5, "conserv": 5, "span": [5, 9], "seamlessli": 5, "influx": 5, "newli": [5, 6, 7, 9], "previous": [5, 6, 7, 9], "hold": [5, 7, 9], "interrupt": 5, "burst": 5, "subsid": 5, "held": [5, 10], "decid": [5, 6, 7, 9], "bogu": 5, "retransmit": [5, 9], "disrupt": 5, "neccessari": 5, "modifi": [5, 9, 10], "ingress_control": 5, "ic_new_tim": 5, "spawn": 5, "ic_burst_freq_new": 5, "ic_burst_freq": 5, "temporarili": 5, "ic_max_held_announc": 5, "drop": [5, 7, 9, 10], "256": [5, 7, 9, 10], "ic_burst_hold": 5, "threshold": 5, "ic_burst_penalti": 5, "ic_held_release_interv": 5, "30": [5, 7, 10], "knowledg": [6, 9], "tradit": [6, 9], "worri": 6, "coordin": [6, 7, 9, 11], "evolv": 6, "futur": [6, 7, 9], "mind": [6, 11], "autonom": [6, 9], "terminologi": [6, 9], "rest": [6, 11], "billion": [6, 9], "larger": [6, 9, 10], "higher": [6, 11], "discrimin": 6, "ephemer": [6, 7, 9, 11], "ellipt": [6, 7, 9, 11], "curv": [6, 7, 9, 11], "diffi": [6, 9], "hellman": [6, 9], "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, "stationari": [6, 10], "candid": 6, "optim": 6, "trustless": [6, 9, 11], "unorganis": 6, "manner": 6, "far": [6, 9], "unexplor": 6, "dissolv": 6, "organ": 6, "restrict": [6, 10], "legaci": 6, "unifi": 6, "carrier": [6, 11], "involv": 6, "hardlin": 6, "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, "cabl": 6, "grow": 6, "core": [6, 9, 10, 11], "those": [6, 9], "d": [6, 10], "island": 6, "investig": 6, "dori": 6, "willing": 6, "she": 6, "her": 6, "home": [6, 10], "everyon": [6, 9], "vice": [6, 11], "versa": [6, 11], "vhf": [6, 9, 11], "outli": 6, "geograph": 6, "coverag": 6, "dai": [6, 7], "find": [6, 9], "poorli": 6, "outlier": 6, "signatur": [7, 9, 10, 11], "configdir": 7, "logdest": 7, "verbos": [7, 10], "require_shared_inst": 7, "exactli": [7, 9], "independ": [7, 9, 11], "inter": 7, "soon": 7, "kill": [7, 9], "forcibli": [7, 10], "advantag": 7, "demand": 7, "500": [7, 9, 11], "adher": 7, "prerequisit": 7, "link_mtu_discoveri": 7, "throughput": [7, 9, 11], "intermediari": [7, 9], "percentag": 7, "schedul": 7, "queu": [7, 10], "fewer": 7, "distant": 7, "smaller": 7, "eventu": 7, "minimum_bitr": 7, "static": 7, "get_inst": 7, "should_use_implicit_proof": 7, "explicit": 7, "implicit": [7, 9], "transport_en": 7, "highest": 7, "remote_management_en": 7, "create_kei": 7, "decrypt": [7, 9, 10], "verif": [7, 9, 10], "sign": [7, 9, 10], "dh": 7, "keysiz": 7, "x": [7, 9, 10], "25519": 7, "concaten": 7, "ratchets": 7, "ratchet": [7, 9], "ratchet_expiri": 7, "2592000": 7, "recent": [7, 9], "rememb": [7, 9], "discard": [7, 9], "newer": [7, 9], "meantim": 7, "128": [7, 9, 11], "constant": 7, "truncat": [7, 9, 10], "recall_app_data": 7, "heard": [7, 9], "full_hash": 7, "sha": [7, 9], "truncated_hash": 7, "current_ratchet_id": 7, "from_byt": 7, "prv_byte": 7, "save": [7, 9], "hazard": 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, 11], "keyerror": 7, "ciphertext_token": 7, "enforce_ratchet": 7, "ratchet_id_receiv": 7, "presenc": 7, "ingo": 7, "zero": [7, 11], "ratchet_count": 7, "ratchet_interv": 7, "1800": 7, "rotat": [7, 9], "expand_nam": 7, "app_and_aspects_from_nam": 7, "full_nam": [7, 10], "tupl": 7, "hash_from_name_and_ident": 7, "adress": [7, 9], "path_respons": 7, "attached_interfac": 7, "tag": 7, "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, "enable_ratchet": 7, "ratchets_path": 7, "secreci": [7, 9, 11], "outsid": [7, 11], "set_retained_ratchet": 7, "retained_ratchet": 7, "set_ratchet_interv": 7, "symmetr": [7, 9], "typeerror": 7, "incompat": [7, 9], "set_default_app_data": 7, "clear_default_app_data": 7, "ae": [7, 9, 11], "instanti": 7, "encrypted_mdu": 7, "383": 7, "plain_mdu": 7, "464": 7, "resend": 7, "get_rssi": 7, "strength": [7, 11], "get_snr": 7, "nois": 7, "ratio": 7, "get_q": 7, "qualiti": 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, "4": [7, 9, 10], "calcul": [7, 9, 10], "stale_grac": 7, "grace": 7, "keepal": [7, 9], "360": 7, "aliv": [7, 9], "stale_tim": 7, "720": 7, "stale": 7, "torn": 7, "progress_callback": 7, "info": [7, 9, 10], "track_phy_stat": 7, "track": 7, "retriev": 7, "stat": [7, 10], "get_establishment_r": 7, "ocur": 7, "get_ag": 7, "no_inbound_for": 7, "no_outbound_for": 7, "outbound": [7, 9], "no_data_for": 7, "travers": [7, 9], "exclud": [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, "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, "accommod": [7, 9], "abstract": [7, 9], "greater": [7, 9, 11], "popul": 7, "bufferedread": 7, "bufferedwrit": 7, "bufferedrwpair": 7, "create_read": 7, "ready_callback": 7, "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, "announce_packet_hash": 7, "receive_path_respons": 7, "live": 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, "overal": 9, "principl": [9, 11], "author": 9, "That": 9, "said": 9, "pretti": 9, "sentiment": 9, "philosophi": 9, "seek": 9, "solv": 9, "primari": 9, "lack": 9, "my": 9, "belief": 9, "highli": 9, "machin": 9, "censorship": [9, 11], "barrier": 9, "todai": 9, "centralis": 9, "trust": [9, 10], "approv": 9, "gatekeep": 9, "inevit": 9, "govern": 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, "useabl": 9, "critic": [9, 10], "agnostic": 9, "shall": 9, "handheld": 9, "strong": 9, "oneself": 9, "unlicens": 9, "condit": [9, 11], "pmr": 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, "asymmetr": [9, 10, 11], "special": [9, 10], "ecdh": [9, 11], "creator": 9, "correspond": 9, "possess": 9, "although": [9, 11], "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, 11], "recap": 9, "indirectli": 9, "ledger": 9, "messeng": 9, "nicknam": 9, "ed25519": [9, 11], "reconstruct": 9, "notic": [9, 10], "piec": 9, "intention": 9, "infer": 9, "throughout": 9, "topic": 9, "necessarili": 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, "closer": 9, "distinguish": 9, "contend": 9, "enable_transport": [9, 10], "randomis": 9, "prioriti": 9, "invers": 9, "proport": 9, "count": 9, "insert": 9, "closest": 9, "newest": 9, "contact": 9, "shortest": 9, "predict": 9, "constantli": 9, "earlier": 9, "opt": 9, "against": 9, "bidirect": 9, "ten": 9, "advanc": 9, "confirm": [9, 11], "insid": 9, "moment": [9, 11], "methodologi": [9, 10], "answer": [9, 10], "malici": 9, "pretend": 9, "recreat": 9, "thereaft": 9, "297": [9, 11], "neglig": 9, "1200": 9, "96": 9, "x25519": [9, 11], "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, "consist": 9, "whereupon": 9, "stabl": [9, 11], "stage": 9, "year": 9, "microcontrol": 9, "430": 9, "868": 9, "900": 9, "tailor": 9, "treat": 9, "regard": 9, "preshar": 9, "compos": 9, "field": 9, "context": 9, "465": 9, "unset": 9, "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, "51": 9, "167": 9, "83": [9, 10], "115": 9, "99": 9, "conceptu": 9, "hkdf": 9, "fernet": 9, "spec": 9, "cbc": [9, 11], "pkcs7": [9, 11], "pad": [9, 11], "hmac": [9, 11], "sha256": [9, 11], "iv": [9, 11], "urandom": [9, 11], "hashlib": 9, "trivial": [9, 11], "consequ": 9, "backend": 9, "loss": 9, "scrutini": 9, "review": [9, 11], "risk": 9, "driver": [10, 11], "privileg": 10, "light": 10, "weight": 10, "etc": 10, "ie": 10, "breviti": 10, "socket": [10, 11], "share_inst": 10, "shared_instance_port": 10, "37428": 10, "instance_control_port": 10, "37429": 10, "rpc": 10, "rpc_kei": 10, "e5c032d3ec4e64a6aca9927ba8ab73336780f6d71790": 10, "probe": 10, "respond_to_prob": 10, "warn": 10, "unus": 10, "teach": 10, "task": 10, "18": 10, "17": 10, "59": 10, "56": 10, "ifconfig": 10, "gbp": 10, "13": 10, "kb": 10, "86": 10, "mbp": 10, "63": 10, "23": 10, "80": 10, "tcpinterfac": 10, "dublin": 10, "187": 10, "27": 10, "74": 10, "uhf": [10, 11], "kbp": 10, "e702c42ba8": 10, "49": 10, "5245a8efe1788c6a1cd36144a270e13b": 10, "j": 10, "w": 10, "arx": 10, "atx": 10, "revers": 10, "json": 10, "new_ident": 10, "984b74a3f768bef236af4371e6f248cd": 10, "new_id": 10, "0f4259fef4521ab75a3409e353fe9073eb10783b4912a6a9937c57bf44a62c1": 10, "hidden": 10, "8dd57a738226809646089335a6b03695": 10, "my_fil": 10, "txt": 10, "bc7291552be7a58f361522990465165c": 10, "rfe": 10, "fetch": 10, "30602def3b3506a28ed33db6f60cc6c9": 10, "2b489d06eaf7c543808c76a5332a447d": 10, "my_ident": 10, "2225fdeecaf6e2db4556c3c2d7637294": 10, "decreas": 10, "overwrit": 10, "c89b4da064bf66d280f0e4d8abfd9806": 10, "f53a1c4278e0726bb73fcc623d6ce763": 10, "max": 10, "rnstransport": 10, "2d03725b327348980d570f739a3a5708": 10, "38": 10, "469": 10, "781": 10, "e7536ee90bd4a440e130490b87a25124": 10, "809": 10, "1726dbad538775b5bf9b0ea25a4079c8": 10, "c50cc4e4f7838b6c31f60ab9032cbc62": 10, "allowed_ident": 10, "copi": 10, "tgz": 10, "73cbd378bb0286ed11a707c13447bb1": 10, "allowed_hash": 10, "silent": 10, "jail": 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, "fw": 10, "url": 10, "nocheck": 10, "flash": 10, "baud_flash": 10, "addr": 10, "freq": 10, "hz": 10, "bw": 10, "txp": 10, "sf": 10, "cr": 10, "eeprom": 10, "backup": 10, "dump": 10, "wipe": 10, "hexbyt": 10, "firmware_hash": 10, "product": 10, "model": 10, "hwrev": 10, "revis": 10, "attach": 10, "older": 10, "extract": 10, "cach": 10, "921600": 10, "bluetooth": 10, "intens": 10, "ff": 10, "consol": 10, "unlock": 10, "bootstrap": 10, "rom": 10, "enable_remote_manag": 10, "remote_management_allow": 10, "9fb6d773498fb3feda407ed8ef2c3229": 10, "2d882c5586e548d79b5af27bca1776dc": 10, "administr": 10, "ftdi_ft230x_basic_uart_43891ckm": 10, "if00": 10, "port0": 10, "plug": 10, "unplug": 10, "systemd": 10, "usr": 10, "execstartpr": 10, "restart": 10, "restartsec": 10, "usernameher": 10, "execstart": 10, "wantedbi": 10, "systemctl": 10, "whole": 10, "regular": 10, "rns_bin_dir": 10, "eg": 10, "reload": 10, "loginctl": 10, "linger": 10, "readili": 11, "advers": 11, "unforg": 11, "acknowledg": 11, "empow": 11, "autonomi": 11, "sovereignti": 11, "planetari": 11, "hierarch": 11, "bureaucrat": 11, "resili": 11, "userland": 11, "beta": 11, "bug": 11, "warrant": 11, "heterogen": 11, "scalabl": 11, "mixtur": 11, "foundat": 11, "keyset": 11, "intuit": 11, "decentralis": 11, "gigabyt": 11, "lightweight": 11, "44": 11, "sequenti": 11, "hoc": 11, "transform": 11, "fact": 11, "generalis": 11, "fibr": 11, "popular": 11, "ideal": 11, "stdio": 11, "hack": 11, "foremost": 11, "audit": 11, "privaci": 11, "thorough": 11, "research": 11, "touch": 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, 1, 1, "", "add_message_handler"], [7, 1, 1, "", "is_ready_to_send"], [7, 2, 1, "", "mdu"], [7, 1, 1, "", "register_message_type"], [7, 1, 1, "", "remove_message_handler"], [7, 1, 1, "", "send"]], "RNS.Destination": [[7, 3, 1, "", "RATCHET_COUNT"], [7, 3, 1, "", "RATCHET_INTERVAL"], [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, "", "enable_ratchets"], [7, 1, 1, "", "encrypt"], [7, 1, 1, "", "enforce_ratchets"], [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, "", "set_ratchet_interval"], [7, 1, 1, "", "set_retained_ratchets"], [7, 1, 1, "", "sign"]], "RNS.Identity": [[7, 3, 1, "", "CURVE"], [7, 3, 1, "", "KEYSIZE"], [7, 3, 1, "", "RATCHETSIZE"], [7, 3, 1, "", "RATCHET_EXPIRY"], [7, 3, 1, "", "TRUNCATED_HASHLENGTH"], [7, 1, 1, "", "current_ratchet_id"], [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_age"], [7, 1, 1, "", "get_channel"], [7, 1, 1, "", "get_establishment_rate"], [7, 1, 1, "", "get_q"], [7, 1, 1, "", "get_remote_identity"], [7, 1, 1, "", "get_rssi"], [7, 1, 1, "", "get_snr"], [7, 1, 1, "", "identify"], [7, 1, 1, "", "inactive_for"], [7, 1, 1, "", "no_data_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"], [7, 1, 1, "", "track_phy_stats"]], "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, "", "get_q"], [7, 1, 1, "", "get_rssi"], [7, 1, 1, "", "get_snr"], [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, "", "concluded"], [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, "", "LINK_MTU_DISCOVERY"], [7, 3, 1, "", "MINIMUM_BITRATE"], [7, 3, 1, "", "MTU"], [7, 1, 1, "", "get_instance"], [7, 1, 1, "", "link_mtu_discovery"], [7, 1, 1, "", "remote_management_enabled"], [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, "custom": [0, 2, 5], "interfac": [0, 2, 5, 9, 11], "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, 10], "shell": 2, "nomad": 2, "network": [2, 4, 6], "sideband": 2, "meshchat": 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, 3], "develop": 2, "particip": 2, "platform": 2, "specif": [2, 9], "note": 2, "android": 2, "arm64": 2, "debian": 2, "bookworm": 2, "maco": 2, "openwrt": 2, "raspberri": 2, "pi": 2, "risc": 2, "v": 2, "ubuntu": 2, "lunar": 2, "window": 2, "pure": 2, "python": 2, "commun": 3, "hardwar": 3, "combin": 3, "type": [3, 9, 11], "rnode": [3, 5], "support": [3, 8], "board": 3, "devic": [3, 11], "lilygo": 3, "t": 3, "beam": 3, "suprem": 3, "t3s3": 3, "rak4631": 3, "unsign": 3, "v2": 3, "x": 3, "lora32": 3, "1": 3, "0": 3, "v1": 3, "deck": 3, "heltec": 3, "v3": 3, "usag": 3, "wifi": 3, "ethernet": 3, "serial": [3, 5, 10], "line": 3, "packet": [3, 9], "modem": 3, "stack": 4, "manual": 4, "tabl": 4, "Of": 4, "content": 4, "indic": 4, "configur": [5, 10], "auto": 5, "i2p": 5, "tcp": 5, "server": 5, "client": 5, "udp": 5, "lora": [5, 6], "multi": 5, "pipe": 5, "kiss": 5, "ax": 5, "25": 5, "common": 5, "option": 5, "mode": 5, "rate": 5, "control": 5, "new": 5, "destin": [5, 9], "limit": 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, "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, "prioritis": 9, "access": 9, "wire": 9, "format": 9, "propag": 9, "rule": 9, "cryptograph": 9, "primit": 9, "your": 10, "system": 10, "data": 10, "rnsd": 10, "rnstatu": 10, "rnid": 10, "rnpath": 10, "rnprobe": 10, "rncp": 10, "rnx": 10, "rnodeconf": 10, "manag": 10, "improv": 10, "fix": 10, "port": 10, "servic": 10, "systemwid": 10, "userspac": 10, "what": 11, "i": 11, "current": 11, "statu": 11, "doe": 11, "offer": 11, "where": 11, "can": 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"]], "Custom Interfaces": [[0, "custom-interfaces"], [5, "custom-interfaces"]], "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"]], "MeshChat": [[2, "meshchat"]], "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"]], "Creating and Using Custom Interfaces": [[2, "creating-and-using-custom-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"]], "Debian Bookworm": [[2, "debian-bookworm"]], "MacOS": [[2, "macos"]], "OpenWRT": [[2, "openwrt"]], "Raspberry Pi": [[2, "raspberry-pi"]], "RISC-V": [[2, "risc-v"]], "Ubuntu Lunar": [[2, "ubuntu-lunar"]], "Windows": [[2, "windows"]], "Pure-Python Reticulum": [[2, "pure-python-reticulum"]], "Communications Hardware": [[3, "communications-hardware"]], "Combining Hardware Types": [[3, "combining-hardware-types"]], "RNode": [[3, "rnode"]], "Creating RNodes": [[3, "creating-rnodes"]], "Supported Boards and Devices": [[3, "supported-boards-and-devices"]], "LilyGO T-Beam Supreme": [[3, "lilygo-t-beam-supreme"]], "LilyGO T-Beam": [[3, "lilygo-t-beam"]], "LilyGO T3S3": [[3, "lilygo-t3s3"]], "RAK4631-based Boards": [[3, "rak4631-based-boards"]], "Unsigned RNode v2.x": [[3, "unsigned-rnode-v2-x"]], "LilyGO LoRa32 v2.1": [[3, "lilygo-lora32-v2-1"]], "LilyGO LoRa32 v2.0": [[3, "lilygo-lora32-v2-0"]], "LilyGO LoRa32 v1.0": [[3, "lilygo-lora32-v1-0"]], "LilyGO T-Deck": [[3, "lilygo-t-deck"]], "Heltec LoRa32 v3.0": [[3, "heltec-lora32-v3-0"]], "Heltec LoRa32 v2.0": [[3, "heltec-lora32-v2-0"]], "Unsigned RNode v1.x": [[3, "unsigned-rnode-v1-x"]], "Installation": [[3, "installation"]], "Usage with Reticulum": [[3, "usage-with-reticulum"]], "WiFi-based Hardware": [[3, "wifi-based-hardware"]], "Ethernet-based Hardware": [[3, "ethernet-based-hardware"]], "Serial Lines & Devices": [[3, "serial-lines-devices"]], "Packet Radio Modems": [[3, "packet-radio-modems"]], "Reticulum Network Stack Manual": [[4, "reticulum-network-stack-manual"]], "Table Of Contents": [[4, "table-of-contents"]], "Indices and Tables": [[4, "indices-and-tables"]], "Configuring Interfaces": [[5, "configuring-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"]], "RNode Multi Interface": [[5, "rnode-multi-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"]], "New Destination Rate Limiting": [[5, "new-destination-rate-limiting"]], "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 rnid Utility": [[10, "the-rnid-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"]], "Remote Management": [[10, "remote-management"]], "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"]], "Systemwide Service": [[10, "systemwide-service"]], "Userspace Service": [[10, "userspace-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"]]}, "indexentries": {"announce_cap (rns.reticulum attribute)": [[7, "RNS.Reticulum.ANNOUNCE_CAP"]], "buffer (class in rns)": [[7, "RNS.Buffer"]], "curve (rns.identity attribute)": [[7, "RNS.Identity.CURVE"]], "curve (rns.link attribute)": [[7, "RNS.Link.CURVE"]], "channel (class in rns.channel)": [[7, "RNS.Channel.Channel"]], "destination (class in rns)": [[7, "RNS.Destination"]], "encrypted_mdu (rns.packet attribute)": [[7, "RNS.Packet.ENCRYPTED_MDU"]], "establishment_timeout_per_hop (rns.link attribute)": [[7, "RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP"]], "identity (class in rns)": [[7, "RNS.Identity"]], "keepalive (rns.link attribute)": [[7, "RNS.Link.KEEPALIVE"]], "keepalive_timeout_factor (rns.link attribute)": [[7, "RNS.Link.KEEPALIVE_TIMEOUT_FACTOR"]], "keysize (rns.identity attribute)": [[7, "RNS.Identity.KEYSIZE"]], "link_mtu_discovery (rns.reticulum attribute)": [[7, "RNS.Reticulum.LINK_MTU_DISCOVERY"]], "link (class in rns)": [[7, "RNS.Link"]], "minimum_bitrate (rns.reticulum attribute)": [[7, "RNS.Reticulum.MINIMUM_BITRATE"]], "msgtype (rns.messagebase attribute)": [[7, "RNS.MessageBase.MSGTYPE"]], "mtu (rns.reticulum attribute)": [[7, "RNS.Reticulum.MTU"]], "messagebase (class in rns)": [[7, "RNS.MessageBase"]], "pathfinder_m (rns.transport attribute)": [[7, "RNS.Transport.PATHFINDER_M"]], "plain_mdu (rns.packet attribute)": [[7, "RNS.Packet.PLAIN_MDU"]], "packet (class in rns)": [[7, "RNS.Packet"]], "packetreceipt (class in rns)": [[7, "RNS.PacketReceipt"]], "ratchetsize (rns.identity attribute)": [[7, "RNS.Identity.RATCHETSIZE"]], "ratchet_count (rns.destination attribute)": [[7, "RNS.Destination.RATCHET_COUNT"]], "ratchet_expiry (rns.identity attribute)": [[7, "RNS.Identity.RATCHET_EXPIRY"]], "ratchet_interval (rns.destination attribute)": [[7, "RNS.Destination.RATCHET_INTERVAL"]], "rawchannelreader (class in rns)": [[7, "RNS.RawChannelReader"]], "rawchannelwriter (class in rns)": [[7, "RNS.RawChannelWriter"]], "requestreceipt (class in rns)": [[7, "RNS.RequestReceipt"]], "resource (class in rns)": [[7, "RNS.Resource"]], "reticulum (class in rns)": [[7, "RNS.Reticulum"]], "stale_grace (rns.link attribute)": [[7, "RNS.Link.STALE_GRACE"]], "stale_time (rns.link attribute)": [[7, "RNS.Link.STALE_TIME"]], "truncated_hashlength (rns.identity attribute)": [[7, "RNS.Identity.TRUNCATED_HASHLENGTH"]], "transport (class in rns)": [[7, "RNS.Transport"]], "__init__() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.__init__"]], "__init__() (rns.rawchannelwriter method)": [[7, "RNS.RawChannelWriter.__init__"]], "accepts_links() (rns.destination method)": [[7, "RNS.Destination.accepts_links"]], "add_message_handler() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.add_message_handler"]], "add_ready_callback() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.add_ready_callback"]], "advertise() (rns.resource method)": [[7, "RNS.Resource.advertise"]], "announce() (rns.destination method)": [[7, "RNS.Destination.announce"]], "app_and_aspects_from_name() (rns.destination static method)": [[7, "RNS.Destination.app_and_aspects_from_name"]], "cancel() (rns.resource method)": [[7, "RNS.Resource.cancel"]], "clear_default_app_data() (rns.destination method)": [[7, "RNS.Destination.clear_default_app_data"]], "concluded() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.concluded"]], "create_bidirectional_buffer() (rns.buffer static method)": [[7, "RNS.Buffer.create_bidirectional_buffer"]], "create_keys() (rns.destination method)": [[7, "RNS.Destination.create_keys"]], "create_reader() (rns.buffer static method)": [[7, "RNS.Buffer.create_reader"]], "create_writer() (rns.buffer static method)": [[7, "RNS.Buffer.create_writer"]], "current_ratchet_id() (rns.identity static method)": [[7, "RNS.Identity.current_ratchet_id"]], "decrypt() (rns.destination method)": [[7, "RNS.Destination.decrypt"]], "decrypt() (rns.identity method)": [[7, "RNS.Identity.decrypt"]], "deregister_announce_handler() (rns.transport static method)": [[7, "RNS.Transport.deregister_announce_handler"]], "deregister_request_handler() (rns.destination method)": [[7, "RNS.Destination.deregister_request_handler"]], "enable_ratchets() (rns.destination method)": [[7, "RNS.Destination.enable_ratchets"]], "encrypt() (rns.destination method)": [[7, "RNS.Destination.encrypt"]], "encrypt() (rns.identity method)": [[7, "RNS.Identity.encrypt"]], "enforce_ratchets() (rns.destination method)": [[7, "RNS.Destination.enforce_ratchets"]], "expand_name() (rns.destination static method)": [[7, "RNS.Destination.expand_name"]], "from_bytes() (rns.identity static method)": [[7, "RNS.Identity.from_bytes"]], "from_file() (rns.identity static method)": [[7, "RNS.Identity.from_file"]], "full_hash() (rns.identity static method)": [[7, "RNS.Identity.full_hash"]], "get_age() (rns.link method)": [[7, "RNS.Link.get_age"]], "get_channel() (rns.link method)": [[7, "RNS.Link.get_channel"]], "get_data_size() (rns.resource method)": [[7, "RNS.Resource.get_data_size"]], "get_establishment_rate() (rns.link method)": [[7, "RNS.Link.get_establishment_rate"]], "get_hash() (rns.resource method)": [[7, "RNS.Resource.get_hash"]], "get_instance() (rns.reticulum static method)": [[7, "RNS.Reticulum.get_instance"]], "get_parts() (rns.resource method)": [[7, "RNS.Resource.get_parts"]], "get_private_key() (rns.destination method)": [[7, "RNS.Destination.get_private_key"]], "get_private_key() (rns.identity method)": [[7, "RNS.Identity.get_private_key"]], "get_progress() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_progress"]], "get_progress() (rns.resource method)": [[7, "RNS.Resource.get_progress"]], "get_public_key() (rns.identity method)": [[7, "RNS.Identity.get_public_key"]], "get_q() (rns.link method)": [[7, "RNS.Link.get_q"]], "get_q() (rns.packet method)": [[7, "RNS.Packet.get_q"]], "get_random_hash() (rns.identity static method)": [[7, "RNS.Identity.get_random_hash"]], "get_remote_identity() (rns.link method)": [[7, "RNS.Link.get_remote_identity"]], "get_request_id() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_request_id"]], "get_response() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_response"]], "get_response_time() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_response_time"]], "get_rssi() (rns.link method)": [[7, "RNS.Link.get_rssi"]], "get_rssi() (rns.packet method)": [[7, "RNS.Packet.get_rssi"]], "get_rtt() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.get_rtt"]], "get_segments() (rns.resource method)": [[7, "RNS.Resource.get_segments"]], "get_snr() (rns.link method)": [[7, "RNS.Link.get_snr"]], "get_snr() (rns.packet method)": [[7, "RNS.Packet.get_snr"]], "get_status() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.get_status"]], "get_status() (rns.requestreceipt method)": [[7, "RNS.RequestReceipt.get_status"]], "get_transfer_size() (rns.resource method)": [[7, "RNS.Resource.get_transfer_size"]], "has_path() (rns.transport static method)": [[7, "RNS.Transport.has_path"]], "hash() (rns.destination static method)": [[7, "RNS.Destination.hash"]], "hash_from_name_and_identity() (rns.destination static method)": [[7, "RNS.Destination.hash_from_name_and_identity"]], "hops_to() (rns.transport static method)": [[7, "RNS.Transport.hops_to"]], "identify() (rns.link method)": [[7, "RNS.Link.identify"]], "inactive_for() (rns.link method)": [[7, "RNS.Link.inactive_for"]], "is_compressed() (rns.resource method)": [[7, "RNS.Resource.is_compressed"]], "is_ready_to_send() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.is_ready_to_send"]], "link_mtu_discovery() (rns.reticulum static method)": [[7, "RNS.Reticulum.link_mtu_discovery"]], "load_private_key() (rns.destination method)": [[7, "RNS.Destination.load_private_key"]], "load_private_key() (rns.identity method)": [[7, "RNS.Identity.load_private_key"]], "load_public_key() (rns.identity method)": [[7, "RNS.Identity.load_public_key"]], "mdu (rns.channel.channel property)": [[7, "RNS.Channel.Channel.mdu"]], "next_hop() (rns.transport static method)": [[7, "RNS.Transport.next_hop"]], "next_hop_interface() (rns.transport static method)": [[7, "RNS.Transport.next_hop_interface"]], "no_data_for() (rns.link method)": [[7, "RNS.Link.no_data_for"]], "no_inbound_for() (rns.link method)": [[7, "RNS.Link.no_inbound_for"]], "no_outbound_for() (rns.link method)": [[7, "RNS.Link.no_outbound_for"]], "pack() (rns.messagebase method)": [[7, "RNS.MessageBase.pack"]], "recall() (rns.identity static method)": [[7, "RNS.Identity.recall"]], "recall_app_data() (rns.identity static method)": [[7, "RNS.Identity.recall_app_data"]], "register_announce_handler() (rns.transport static method)": [[7, "RNS.Transport.register_announce_handler"]], "register_message_type() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.register_message_type"]], "register_request_handler() (rns.destination method)": [[7, "RNS.Destination.register_request_handler"]], "remote_management_enabled() (rns.reticulum static method)": [[7, "RNS.Reticulum.remote_management_enabled"]], "remove_message_handler() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.remove_message_handler"]], "remove_ready_callback() (rns.rawchannelreader method)": [[7, "RNS.RawChannelReader.remove_ready_callback"]], "request() (rns.link method)": [[7, "RNS.Link.request"]], "request_path() (rns.transport static method)": [[7, "RNS.Transport.request_path"]], "resend() (rns.packet method)": [[7, "RNS.Packet.resend"]], "send() (rns.channel.channel method)": [[7, "RNS.Channel.Channel.send"]], "send() (rns.packet method)": [[7, "RNS.Packet.send"]], "set_default_app_data() (rns.destination method)": [[7, "RNS.Destination.set_default_app_data"]], "set_delivery_callback() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_delivery_callback"]], "set_link_closed_callback() (rns.link method)": [[7, "RNS.Link.set_link_closed_callback"]], "set_link_established_callback() (rns.destination method)": [[7, "RNS.Destination.set_link_established_callback"]], "set_packet_callback() (rns.destination method)": [[7, "RNS.Destination.set_packet_callback"]], "set_packet_callback() (rns.link method)": [[7, "RNS.Link.set_packet_callback"]], "set_proof_requested_callback() (rns.destination method)": [[7, "RNS.Destination.set_proof_requested_callback"]], "set_proof_strategy() (rns.destination method)": [[7, "RNS.Destination.set_proof_strategy"]], "set_ratchet_interval() (rns.destination method)": [[7, "RNS.Destination.set_ratchet_interval"]], "set_remote_identified_callback() (rns.link method)": [[7, "RNS.Link.set_remote_identified_callback"]], "set_resource_callback() (rns.link method)": [[7, "RNS.Link.set_resource_callback"]], "set_resource_concluded_callback() (rns.link method)": [[7, "RNS.Link.set_resource_concluded_callback"]], "set_resource_started_callback() (rns.link method)": [[7, "RNS.Link.set_resource_started_callback"]], "set_resource_strategy() (rns.link method)": [[7, "RNS.Link.set_resource_strategy"]], "set_retained_ratchets() (rns.destination method)": [[7, "RNS.Destination.set_retained_ratchets"]], "set_timeout() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_timeout"]], "set_timeout_callback() (rns.packetreceipt method)": [[7, "RNS.PacketReceipt.set_timeout_callback"]], "should_use_implicit_proof() (rns.reticulum static method)": [[7, "RNS.Reticulum.should_use_implicit_proof"]], "sign() (rns.destination method)": [[7, "RNS.Destination.sign"]], "sign() (rns.identity method)": [[7, "RNS.Identity.sign"]], "teardown() (rns.link method)": [[7, "RNS.Link.teardown"]], "to_file() (rns.identity method)": [[7, "RNS.Identity.to_file"]], "track_phy_stats() (rns.link method)": [[7, "RNS.Link.track_phy_stats"]], "transport_enabled() (rns.reticulum static method)": [[7, "RNS.Reticulum.transport_enabled"]], "truncated_hash() (rns.identity static method)": [[7, "RNS.Identity.truncated_hash"]], "unpack() (rns.messagebase method)": [[7, "RNS.MessageBase.unpack"]], "validate() (rns.identity method)": [[7, "RNS.Identity.validate"]]}}) \ No newline at end of file