1
1
Fork 0
mirror of https://github.com/oxen-io/lokinet synced 2023-12-14 06:53:00 +01:00
Commit graph

7087 commits

Author SHA1 Message Date
Jeff Becker e5bc34a7b1
[buildsystem] remove use of ninja entirely
* modify contrib/window.sh now uses makefiles
* create contrib/android.sh for building shared libs for android apk
* update drone ci jizz for android
* update cmake/StaticBuild.cmake to use $(MAKE) so that builds can parallelize (super epic)
* remove android directory as it is no longer needed
2021-06-18 11:48:23 -04:00
Jeff c9b4ca85b2
[feature] optionally keep inbound convos mapped to same IP on restart (#1672)
* add option to persist address mappings between restarts using [network]:persist-addrmap-file

* make it work

* only persist address map for inbound convos

* turn persisting address map on by default

* dont load addrmap file if it has been modified last over a minute ago to prevent foot cannons fired from loading a really old version of it
2021-06-17 12:05:50 -04:00
Jeff Becker afe55f0932
fix for testing:
dont remove from failing set
2021-06-10 14:17:31 -04:00
Jeff Becker 138abaf356
version bump 2021-06-09 20:51:17 -04:00
Jeff 2d25c3cd91
Merge pull request #1663 from majestrate/latency-test-fec-fix-2021-06-09
Last minute fixes
2021-06-09 20:18:58 -04:00
Jeff Becker 5cdb1afa0d
increase timer timeout interval because 1 seconds RTT can happen but 2 seconds is pretty bad 2021-06-09 20:15:22 -04:00
Jeff Becker fab086db0c
downgrade log level 2021-06-09 20:15:06 -04:00
Jeff Becker 3142bab0ac
move setting hop to nullptr to after delivery or delivery fail 2021-06-09 09:51:46 -04:00
Jeff Becker ce7643a3aa
remove case that spams build on an outbound context 2021-06-09 09:36:08 -04:00
Jeff Becker 9a51e4d9b5
forgot to pump on wakeup 2021-06-09 08:45:52 -04:00
Jeff Becker 486cdc0949
correctly do latency test FEC
before this it would cause a posative feedback loop causing paths to fail for "no real reason"
2021-06-09 08:32:51 -04:00
Jeff 57186110f3
Merge pull request #1658 from majestrate/network-stability-fixes-2021-06-02
Network stability fixes
2021-06-08 18:16:45 -04:00
Jeff Becker c97fe4aa96
convert magic number to where it came from 2021-06-08 18:07:54 -04:00
Jeff Becker a0b8fe144a
convert to lambda 2021-06-08 18:06:19 -04:00
Jeff Becker 3594d3e211
spelling fix 2021-06-08 17:54:40 -04:00
Jeff Becker f9e0c8f50c
add idempotent wakeup for flushing instead of the dumb queue checking 2021-06-08 17:38:04 -04:00
Jeff Becker e2bdf8792b
typofix 2021-06-08 17:27:50 -04:00
Jeff Becker 7dc1061461
mark ip active on successful send 2021-06-08 14:52:16 -04:00
Jeff Becker adc6237d1c
mark exit address outbound when we add it via rpc 2021-06-08 14:36:34 -04:00
Jeff Becker 1da0a007ff
close links and remove commit 2021-06-08 14:36:34 -04:00
Jeff Becker 719dd38cf5
more shit 2021-06-08 14:36:33 -04:00
Jeff Becker 7a5dcc3eab
correctly persist link sessions 2021-06-08 14:36:33 -04:00
Jeff Becker 046e02ebe7
fixes for loopback testnet 2021-06-08 14:36:33 -04:00
Jeff Becker 5a713b0142
tweak timeouts to be a bit more sane 2021-06-08 14:36:33 -04:00
Jeff Becker ea3276333a
on path timeout look up each router, if the lookup fails then we remove it from nodedb and close any connections to it so that bad first hops are rotated off of. 2021-06-08 14:36:33 -04:00
Jeff Becker 07e29da5c0
when we map an address forever mark it as outbound 2021-06-08 14:36:33 -04:00
Jeff Becker c2722be81c
this fixes the shit wtf 2021-06-08 14:36:33 -04:00
Jeff Becker 5909ad0386
add MarkAddressOutbound to plainquic 2021-06-08 14:36:33 -04:00
Jeff Becker cce15b13c8
dont establish paths to inbound sessions to try and address state race condition 2021-06-08 14:36:33 -04:00
Jeff Becker aefab797d7
unconditional putsenderfor 2021-06-08 14:36:33 -04:00
Jeff Becker 6a3dc67e9b
nuke from orbit style router profiling for path build timeouts.
* when a path build times out, shitlist every router in the path except the first hop, this way eventually we get the nodedb pruned to only the routers that are currently actually alive, any ones we nuke that we need later we can always do lookups for.
2021-06-08 14:36:33 -04:00
Jeff Becker 1f9b8e5972
nuke invalid routers when we get a path build fail back to not resuse them in the future 2021-06-08 14:36:32 -04:00
Jeff Becker aa1c1bad0b
record reason for path fail and the full hops 2021-06-08 14:36:32 -04:00
Jeff Becker 0096bd4e35
account for path latency in introset lookups on outbound contexts 2021-06-08 14:36:32 -04:00
Jeff Becker e4ed53224c
use weak_ptr on a path to reference its parent pathset instead of a bare pointer so crashes dont happen 2021-06-08 14:36:32 -04:00
Jeff Becker 2a76a3d081
treat ignored paths like established paths when dealing with expiration 2021-06-08 14:36:32 -04:00
Jeff Becker 23aa35b825
log when we ignore a path 2021-06-08 14:36:32 -04:00
Jeff Becker c6660dd6c1
add path aligntment timeout to send and connect timeouts on outbound context to reduce the chance of timing race conditon 2021-06-08 14:36:32 -04:00
Jeff Becker a8964a6d8a
add idempotent wake up for sending messages to the network and writing packets on interfaces 2021-06-08 14:36:32 -04:00
Jeff Becker 108b8e089e
HandleTimeout can touch iterators so do all handling of lookup timeouts outside of loop iteration 2021-06-08 14:36:32 -04:00
Jeff Becker 0f1e806155
don't kill outbound context after build or lookup fails 2021-06-08 14:36:32 -04:00
Jeff Becker 1aa2146b4a
for inbound sessions, keep them alive for the default session lifetime, for outbound sessions keep alive for 5 ping intervals 2021-06-08 14:36:31 -04:00
Jeff Becker 60cc47447f
increase default session lifetime to 5 minutes for mobile client related reasons
make the default inbound session lifetime be default session lifetime + 2 ping intervals
2021-06-08 14:36:31 -04:00
Jeff Becker a7b20b79c5
add relay order to error message 2021-06-08 14:36:31 -04:00
Jeff Becker a86152e03c
decay path build limiter per path builder every tick 2021-06-08 14:36:31 -04:00
Jeff Becker 34e31ba04f
only inform failure or success of introset lookups when all lookups have returned 2021-06-08 14:36:31 -04:00
Jeff Becker 220b8837da
delay setting sentIntro by the advertised latency of the remote intro instead of static value 2021-06-08 14:36:31 -04:00
Jeff Becker c5a86a49a3
defer ready to send state until after we send a handshake 2021-06-08 14:36:31 -04:00
Jeff Becker 40a189a9a3
log drop events more 2021-06-08 14:36:31 -04:00
Jeff Becker 00257567c2
dont call null handler
if we have no path to the remote router that's fine still use it just in case we have no other convotags
2021-06-08 14:36:31 -04:00