Commit Graph

613 Commits (d011f8fb4a14b1f724fc1f15b532c5f97512babf)

Author SHA1 Message Date
Jeff Becker 3cc2adae31 paralell publish and lookups 4 years ago
Jeff Becker e30c720446 redundant publish for service endpoint 4 years ago
Jeff Becker 2b6f27d60d
remove connect back logic for dead inbound sessions 4 years ago
Jeff Becker 70eb353c42
make publishing introsets optional using reachable=false to disable 4 years ago
Jeff Becker 99eb7726ff
initial dht key blinding 4 years ago
Jeff Becker 2c0dc12f39
refactor single char variables in DHT (mostly) 4 years ago
Jeff Becker a17b5f25b5
check for zero'd rc 4 years ago
Jeff Becker 2d82e931da
try doing lookup from close router, randomize when above lookup threshold 4 years ago
Jeff Becker 8a5365d9a6
diversify endpoints 4 years ago
Jeff Becker 5ae428a114
Revert "remove call to link manager"
This reverts commit 3dd36fa11a.
4 years ago
Jeff Becker a5121c346c
remove call to link manager 4 years ago
Jeff Becker d1a29884df
client side perf improvement 4 years ago
Jeff Becker 79c3c748e4
limit number of snode sessions client side 4 years ago
Stephen Shelton 2c6226f54a Backup SNApp keys when migrating to new ed25519 crypto 5 years ago
Jeff Becker 0828307906 fix address mapping bug 5 years ago
Jeff Becker 8849173112 try async decrypt then verify 5 years ago
Jeff Becker ba0fd223d9 reduce number of jobs we put onto the logic thread 5 years ago
Jeff Becker 56dce90de9
add trace log level for tracking logic thread jobs 5 years ago
Jeff Becker 2c5561fc3c
make format 5 years ago
Jeff Becker 7ee026fa50
make path builds work again 5 years ago
jeff 32ed821763 Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography 5 years ago
jeff 7c691cf334 handover should be fixed now 5 years ago
jeff 6c2ebbb925 try fixing handover and add snapp traffic to multithreaded crypto workers 5 years ago
Jeff Becker 327c545530
finish multithread cryptography first pass 5 years ago
jeff 14c9ef15ed try calling stuff in logic thread from event loop 5 years ago
Jeff Becker 1adae338ce
Merge remote-tracking branch 'origin/master' 5 years ago
Michael edd0ec398f
Move thread stuff to subdirectory 5 years ago
Michael 4d8fe2a8a8
Move meta programming to subdirectory 5 years ago
Jeff Becker c01112e4b7
tracy lock contention testing and other fun things 5 years ago
Jeff Becker eabbb83149
use estimated build time instead of expiration time for delta when determining when to space out builds 5 years ago
Jeff Becker e0424a91a7
bump path build handover window, check cooldown on build. 5 years ago
Jeff Becker 3c3338e801
Merge remote-tracking branch 'origin/master' into memlink 5 years ago
Michael 094b697b01
Replace StatusObject with underlying JSON type 5 years ago
Michael 16cdfbd5f0
clang-tidy modernize pass 5 years ago
Jeff Becker c1f33bb1ac
initial mempipe implementation 5 years ago
Michael f9e9227e19
Fix gcc trunk warnings 5 years ago
Jeff Becker db2206664a
fix crashes in testnet 5 years ago
Jeff Becker f48754c45d
make hop count and length configurable 5 years ago
Michael e52492911d
Refactor endpoint state management to a new class 5 years ago
Jeff Becker 1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael 488695047f
Remove redundant else blocks 5 years ago
Jeff Becker b9bcc2b775
make threadpool consice 5 years ago
Jeff Becker fd911d0c52
make format 5 years ago
Jeff Becker 6467d21ba0
* fix testnet codepath
* add packet info for osx
5 years ago
Jeff Becker 81cab62bb9
* fix testnet codepath
* add packet info for osx
5 years ago
Jeff Becker 5874c38b38
swap path on inbound convo if expires soon 5 years ago
Jeff Becker f211ff182a
pick ready paths for reply 5 years ago
Jeff Becker d6ec528a72
start work on seperating ips out of endpoint 5 years ago
Jeff Becker 64e9622270
start seperating tun and endpoint 5 years ago
Jeff Becker 0146a967d0
fix convotag inbound state setting 5 years ago
Jeff Becker 6bca652182
choose first timestamp 5 years ago
Jeff Becker 0b90acff75
handle reply intro 5 years ago
Jeff Becker b0612e2ee1
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael b6b400baef
Tidy up pathbuilder code 5 years ago
Jeff Becker 5c61df08b5
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael 08609f9e5a
Rename message files 5 years ago
Michael 8a058fcb34
Move other messages 5 years ago
Michael d6751e3eeb
Move subset of messages to right directory 5 years ago
Jeff Becker cd05fa6150
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Rick V c6c31efec9
make format 5 years ago
Jeff Becker 30f6a8ccd2
make format 5 years ago
Jeff Becker 9c24fc15a8
try not spamming network with builds 5 years ago
Jeff Becker 5853e5e3f4
pass in path 5 years ago
Jeff Becker a323003824
differentiate between inbound and outbound convos 5 years ago
Jeff Becker 2403ab8f86
ipv6 5 years ago
Jeff Becker 9ec41b8831
update RC expiration logic, lookup more often and remove stale entries 5 years ago
Jeff Becker 73c1538518
fix 5 years ago
Jeff Becker f7ccbf0c78
eh 5 years ago
Jeff Becker f8e2edae28
fix 5 years ago
Jeff Becker 223f2702d3
Merge branch 'fix-big-ooooofff' 5 years ago
Jeff Becker a33dbce680
try switching logic 5 years ago
Jeff Becker f8026b8a2d
use latest tag not oldest tag in inbound convos 5 years ago
Jeff Becker 39b1f104a8
revert 5 years ago
Jeff Becker 471a4bf6dd
use reply intro for inbound sessions 5 years ago
Michael 75430a234c
Convert to use memFn 5 years ago
Michael 491fee206b
Port code to use CryptoManager over passing Crypto pointers 5 years ago
Michael d49e57aa8d
Fix thread safety issue in service::Endpoint::ProcessDataMessage 5 years ago
Jeff Becker e85cc1bc8a
fix 5 years ago
Jeff Becker 64c7ed42fc
make format 5 years ago
Jeff Becker 9c96aecf3f
move llarp::Logic to std::shared_ptr
add sequence numbers to HSD messages

begin work on network isolation code

add more docs
5 years ago
Michael a83be769e2
More explicit error when keyfile is not a valid file 5 years ago
Jeff Becker 8da3b51589
more hax 5 years ago
Jeff Becker f832c9a593
use shared_ptr 5 years ago
Jeff e21f1020ee don't std::move 5 years ago
Jeff 06f8bb2f42 add blacklist-snode option 5 years ago
Jeff Becker 018dd008ec
add custom single threaded allocator for utp buffers
fix up test net stuff
5 years ago
Jeff Becker 85fcb4bd84
fix it up 5 years ago
Jeff Becker 1d74585637
don't crash when we get no routers from lookup 5 years ago
Jeff Becker 7b03b63d13
more sighup code 5 years ago
Jeff Becker a53da68700
start work on sighup 5 years ago
Michael 1744ae7686
Tidy up service endpoint a bit more 5 years ago
Jeff Becker d423ee02d2
use shared_ptr 5 years ago
Jeff Becker 986e831579
make bundle-rc option configurable on snode tld 5 years ago
Jeff Becker e0892f7d23
gfdi 5 years ago
Jeff Becker 407f895c86
ooff 5 years ago
Jeff Becker 5b49008bca
more 5 years ago
Jeff Becker a97e1e37a7
dont filter intros they are already good 5 years ago
Jeff Becker e060082441
hook every dns for .loki and .snode when applicable
make {n,h}uint{32,16}_t templated type.
5 years ago
Jeff 59e6a4bc3d make snode work again probably 5 years ago
Jeff Becker 20ba2c7b8c
try not to die 5 years ago
Jeff Becker cde4fcc00a
queue pending traffic 5 years ago
Jeff Becker bb47d612b3
more 5 years ago
Jeff Becker 0b68d3db5d
move stuff arround so that flushing queues are done in the correct event loops
TODO: locking
5 years ago
Jeff Becker 2a7ebce8f4
Merge remote-tracking branch 'origin/master' 5 years ago
Jeff Becker 5e0acc1197
separate upstream/downstream flush 5 years ago
Jeff Becker d50b18d7b0
try fixing leak also make format 5 years ago
Michael 725ee293c1
Refactor well named functionality in service::Endpoint into new struct 5 years ago
Jeff 27fac68716 fix 5 years ago
Jeff 01906c5d94 Merge remote-tracking branch 'origin/master' 5 years ago
Michael 0b4d787042
More work on router docker image
- Multi-stage docker build (final image only 15MB!)
- Build in release mode
    - Fix bug with release mode
    - Fix compiler being dumb AF
    - Disable FORTIFY for now
- Enable LTO when making a staticly linked release
- Fix some gcc specific warnings
- Refactor cmake stuff into multiple files
5 years ago
Jeff Becker 0529e45ebe
more 5 years ago
Jeff Becker 6711296b26
finish converting to shared_ptr 5 years ago
Jeff Becker 99c29cf05a
prepare for ios/android jazz
move to use std::shared_ptr instead of bare pointers so we can
multithread everything.
5 years ago
Jeff Becker 5872573e91
rename Logic and Crypto functions to GetLogic and GetCrypto 5 years ago
Jeff Becker a2912ff860
Merge remote-tracking branch 'origin/master' 5 years ago
Michael e33a33635c
Remove usage of raw new from service classes 5 years ago
Jeff Becker 3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format 5 years ago
Michael 94ad84363a
Move CachedTagResult and TagLookupJob to its own component 5 years ago
Michael 6bf54e0925
Remove AsyncKeyExchange, HiddenServiceAddressLookup and OutboundContext to their own components 5 years ago
Michael 3db6d80928
Remove unnecessary llarp:: qualifiers 5 years ago
Michael 2412ed59ee
Move SendContext to its own component 5 years ago
Jeff Becker 57dc6cc965
make bundling rc in path builds configurable on runtime 5 years ago
Jeff Becker 2be3401e08
* refactor profiling function names
* utp link layer make ping less active, pre-emptive pump faster
5 years ago
Jeff Becker 9503cc66f0
add disk worker based file flusher logger
make format

remove package.json
5 years ago
Jeff Becker a45d6db0e0
better profiling 5 years ago
Jeff c64fbf7cc5 Merge branch 'master' of ssh://github.com/majestrate/loki-network 5 years ago
Jeff Becker 28e07903b6
put reply intro 5 years ago
Jeff 95119a0fe1 always use random paths for lookups 5 years ago
Jeff Becker e178a70929
use shared_ptr for event loop 5 years ago
Jeff 3783fb0e14 fix inbound sessions 5 years ago
Jeff Becker c910a2a2fb
more 5 years ago
Jeff 60a42a83a3 better introset publish logic 5 years ago
Jeff Becker aea9944c3d
mark success on profiles and remove pending lookup 5 years ago
Jeff Becker b9207ce3e0
unconditionally update introset on dead path 5 years ago
Jeff Becker 24e7151ff5
log and don't remove path on died 5 years ago
Jeff Becker b849ff9a94
handle path death better 5 years ago
Jeff Becker 74f9949537
aaaaaa 5 years ago
Jeff aa08d20480 ensure router is known 5 years ago
Jeff ed10ef0b7d don't shift only build 5 years ago
Jeff Becker 714f5c6b5e
more 5 years ago
Jeff Becker 9e531c026c
fix warning on hop selection 5 years ago
Jeff Becker 8e2b99907f
mark nodes timeout on lookup timeout 5 years ago
Jeff Becker 1882ffc016
don't publish or use bad routers with endpoints 5 years ago
Jeff Becker f5b9bd40ed
track lookup fails and kill outbound context if too many 5 years ago
Jeff Becker 5d3833ef1a
fix dumb as shit path building that causes premature termiantion because of duplicate hops 5 years ago
Jeff Becker 6489ea2152
make it work 5 years ago
Jeff Becker 8a4c0ce841
more 5 years ago
Jeff Becker 280d85d478
handle protocol discard 5 years ago
Jeff Becker df17866ff7
breaking protocol change, bundle source txid on outside of path transfer message. 5 years ago
Jeff Becker a5557e0902
always use current intro for reply 5 years ago
Jeff Becker c9a4c77fb9
better chill with path building 5 years ago
Jeff Becker 6a09348c47
today's work 5 years ago
Jeff Becker eceb55623c
more 5 years ago
Jeff Becker 159415c363
delay dns resolution for snode until we have a session with it 5 years ago
Jeff Becker f8d6becce8
make whitelist happy 5 years ago
Jeff Becker ef13ec7499
Merge remote-tracking branch 'origin/staging' into staging 5 years ago
Jeff 5c941263e9
Merge pull request #339 from michael-loki/dht_context_testing
Solidify interfaces
5 years ago
Michael 4fb2b39f74
Format changes 5 years ago
Jeff Becker 5642179019
publish retry on failure for introset publishing 5 years ago
Jeff Becker a81a483cc2
build paths if we don't have enough 5 years ago
Jeff Becker 21ab744b17
build one path if we don't have a path for remote intro on send 5 years ago
Jeff Becker c7e100787b
swap intros should only swap intros 5 years ago
Jeff Becker eecc00211f
squash commits and make convotags more "reliable" (probably) 5 years ago
Jeff Becker 5dde4e6351
use source path's intro as being able to reply on convo tags 5 years ago
Jeff Becker 762728c7ec
fix 5 years ago
Jeff Becker 3baf89e8ce
more 5 years ago
Jeff Becker 262000570b
use source path's intro as being able to reply on convo tags 5 years ago
Jeff Becker b511242632
increment sequence number on good send only 5 years ago
Jeff Becker b1dd10c007
fix previous commit 5 years ago
Jeff Becker 393e70dfa6
publish new introset on path death 5 years ago
Rick V 5a3947ca5c
clang-format 5 years ago
Jeff Becker 445ed05b32
make format 5 years ago
Michael 887fb4ac62
Replace insert(make_pair()) with emplace() 5 years ago
Michael 048fa83c39
Finish replacement of Router with AbstractRouter 5 years ago
Jeff Becker 550fc3c439
Revert "tweaking handover logic"
This reverts commit 50bfe5d810.
5 years ago
Jeff Becker 50bfe5d810
tweaking handover logic 5 years ago
Jeff Becker 1921704b78
tweak timeout 5 years ago
Jeff Becker 46222df421
refactor 5 years ago
Jeff Becker 05cd1b7f8e
extract more status info for outbound context 5 years ago
Jeff Becker 1a929f9383
send control messages if too quiet to keep convotags alive as needed 5 years ago
Jeff Becker 9a2f11a212
try expiring convos 5 years ago
Jeff Becker 6df133cab2
remove dead sessions when done 5 years ago
Jeff Becker 66753430ad
fix it 5 years ago
Jeff Becker e1522faeaa
add introspection rpc endpoint 5 years ago
Jeff Becker 6fa10019d0
testnet tweak 5 years ago
Jeff Becker 32ecf64c57
fix testnet 5 years ago
Jeff 4c4f3faf83
Merge pull request #284 from michael-loki/abstract_router
Convert llarp::Router into an abstract base class
5 years ago
Jeff Becker 90e45a810a
limit number of concurrent dht lookups from dns to 4 5 years ago
Jeff Becker f84256d554
* lower lookup timeout for introsets
* correct previous commit for dns stuff
* allow for multiple parallel introset lookups
5 years ago
Jeff Becker b40055181d
lower path build timeout to 15s
tweak various dns stuff
5 years ago
Michael 729cd045f1
Convert llarp::Router into an abstract base class 5 years ago
Jeff Becker a953b34a45
fix crash 5 years ago
Ryan Tharp fefb012bf8 fix llvm 3.8 5 years ago
Michael f3b0af9d2f
Create CopyableBuffer type 5 years ago
Michael 2de621b0ad
Disable copy constructing llarp_buffer_t 5 years ago
Ryan Tharp f20ac0f6e9
Merge branch 'staging' into crypto_interface 5 years ago
Jeff Becker f1cf63fce7
add initial localhost.loki handling in dns 5 years ago
Michael f24f554a01
Convert llarp::Crypto into an abstract base class 5 years ago
Jeff Becker e164970b00
make format 5 years ago
Ryan Tharp 31f196a6eb
Merge pull request #236 from michael-loki/dht_tests
Add test suites for dht bucket, kademlia and key
5 years ago
Michael 7296ebcbe8
Tidy dht code 5 years ago
Ryan Tharp 332336060c Always have a key early (even if no key file set) so you don't regen keys twice 5 years ago
Ryan Tharp 1ba5b75082 Merge branch 'master' of https://github.com/neuroscr/loki-network 5 years ago
Ryan Tharp c24751f3c1 Jeff approved workaround to read Keyfile early so Name() can be correct during set up/configuration 5 years ago
Michael da6cdfc0b2
More refactoring to continue to make dependency graph acylic 5 years ago
Michael 081d4dfa32
Reorganise source into more folders 5 years ago
Michael e5eda0fb8f
Move lokinet unspecific components to a util/ library 5 years ago
Michael df4fd0ef56
Fix some low hanging performance issues 5 years ago
Michael ea19093a20
Remove const byte* conversion operators from llarp::AlignedBuffer 5 years ago
Michael 1410d0a0cf
Remove byte* conversion operators from llarp::AlignedBuffer 5 years ago
Michael 58364a01c8
Remove array conversion operators from llarp::AlignedBuffer 5 years ago
Michael 334161c9bb
Remove data() conversions from llarp::AlignedBuffer 5 years ago
Jeff Becker ec57c72e08
fix testnet 6 years ago
Jeff Becker e835c5f69a
add graceful stop for path builders and friends 6 years ago
Jeff Becker 3a8818980f
make path length configurable on compile time 6 years ago
Jeff Becker 8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev 6 years ago
Michael 037cb87523
Convert llarp::AlignedBuffer to be backed by std::array 6 years ago
Jeff Becker 8e6046ff1c
order downstream packets 6 years ago
Jeff Becker 46bee291c2
order downstream packets 6 years ago
Jeff Becker 6fc42dc7ad
fixes 6 years ago
Jeff Becker e787165da9
expire old snode sessions 6 years ago
Jeff Becker 09e01adf32
flush snode traffic queues 6 years ago
Michael 85dde7b6b0
Move remaining include/llarp headers to llarp/ 6 years ago
Michael e887b4e9c7
Move service* to llarp/ 6 years ago
Michael fddc8734d2
Move dht* to llarp/ 6 years ago
Jeff f2c8b204c2
Merge pull request #129 from majestrate/dev
update introset when paths are dead
6 years ago
Jeff Becker 30a6a6bac6
always unset updatingIntroSet on response 6 years ago
Jeff Becker d3348e8721
update introset if we have no good paths 6 years ago
Michael 7be452092c
Convert llarp_crypto to be a true C++ class 6 years ago
Michael 6358b25db0
Convert llarp_nodedb to be a true C++ class 6 years ago
Michael f0fce5b68a
Convert llarp_router to be a true C++ class 6 years ago
Jeff Becker fad734a5ce
strict types for pubkey, secretkey and routerid 6 years ago
Michael 30e9dca2e5
Convert llarp_logic to be a C++ class 6 years ago
Jeff Becker 622ed8d12e
fix crash on premature close of event loop (also make format) 6 years ago
Jeff Becker 82af91213a
build one 6 years ago
Jeff Becker e11e83c397
fix pathbuilder 6 years ago
Jeff Becker 7de2ce72ad
wire up snode to dns (maybe) 6 years ago
Jeff Becker 85f9f46362
snode stubs (initial) 6 years ago
Jeff a33f334bc2 better exit path logic 6 years ago
Jeff 736b313c4c fix previous commit 6 years ago
Jeff 05652af7a4 tick exit 6 years ago
Jeff Becker 5d0a9d7dc7
make format 6 years ago
Jeff Becker 0ac6deff00
logging, fix hidden services 6 years ago
Jeff Becker 12a4022a56
make testnet compile 6 years ago
Jeff Becker a202bc58a8
use correct path roles 6 years ago
Jeff Becker 130307bc94
build paths with correct role 6 years ago
Jeff Becker 5357b4b69f
make clang happy, disable netns by default (for now) 6 years ago
Jeff Becker d37daf7996
Merge branch 'master' into dev 6 years ago
Jeff Becker 7214f242e0
rip out old threadpool code 6 years ago
Jeff Becker 5dbe41608f
more exit stuff 6 years ago