Commit Graph

214 Commits (dev)

Author SHA1 Message Date
Jeff Becker ac686a9329
remove valgrind access errors 5 years ago
Jeff Becker b207db626f
please the gods of valgrind 5 years ago
Jeff Becker 56dce90de9
add trace log level for tracking logic thread jobs 5 years ago
Jason Rhinelander d96d33329b
Merge pull request #912 from majestrate/logic-thread-fix-2019-11-13
fix logic thread behavior
5 years ago
Stephen Shelton b5b8cf0745 Reduce log level of IWP session issues as they may be encountered frequently and normally 5 years ago
Stephen Shelton ef2670dfb4 Drop new inbound IWP sessions when the first packet can't be handled 5 years ago
Jeff Becker b34caa3e26
make unit tests pass for iwp 5 years ago
Jeff Becker c9f26c4911
call Router::PumpLL after every batch of packets from a link session 5 years ago
Jeff Becker 1fc36f4832
changes from review 5 years ago
Jeff Becker 8befd6f2db
flush link session encrypt queue immediately after handling plaintext packets 5 years ago
Jeff Becker e2890e925b
make it compile 5 years ago
Jeff Becker 20dd4e4d09
use data not begin 5 years ago
Jeff Becker 2267a7d283
fix bounds check 5 years ago
jeff 4af6dca246 use static_cast 5 years ago
jeff 3c1d5518d8 fix windows port and make it compile 5 years ago
jeff 32ed821763 Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography 5 years ago
Michael 86a07e2a80
Enable more sanitisers 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 ac2a2aed1d gut libutp and finish making things compile and pass tests 5 years ago
Jeff Becker d04762ab49
unstaged changed 5 years ago
Jeff 070a014f85
Merge pull request #799 from majestrate/remove-link-layer-locking
disable link layer locking
5 years ago
Jeff Becker 3c0245f8b3
Merge remote-tracking branch 'github/master' into iwp-multi-ack 5 years ago
Jeff Becker 4bf6882c8a
more async cryptography 5 years ago
Jeff Becker 88cde21b9b
multithreaded iwp cryptography 5 years ago
Jeff Becker 0d3c07999a
break it again just to be sure 5 years ago
Jeff Becker a4160006ab
make it compile 5 years ago
Jeff Becker 3b1a0b2835
add multi-ack and change protocol handshake to pin identity key 5 years ago
Jeff Becker 1adae338ce
Merge remote-tracking branch 'origin/master' 5 years ago
Jeff Becker e9f01923d9
dont nack replayed messages, tweak transmission parameters.
this yields more efficient througput. probably.
5 years ago
Michael 4d8fe2a8a8
Move meta programming to subdirectory 5 years ago
Jeff Becker 2ab265be41
disable link layer locking because there was no contention 5 years ago
Jeff Becker c01112e4b7
tracy lock contention testing and other fun things 5 years ago
Jeff Becker deecbbbdef
optimize 5 years ago
Jeff Becker 83432d7567
make format 5 years ago
Jeff Becker 4c569d83b7
make it compile 5 years ago
Jeff Becker d1e590ce9d
fix sign 5 years ago
Jeff Becker 795ac6bab3
get rid of dead code 5 years ago
Jeff Becker 0986b6ab5e
quick little fixes 5 years ago
Jeff Becker 444d832b7c
correct constructors on llarp_buffer_t and check rc on regen 5 years ago
Jeff Becker 16934cdd20
please the CI gods, wololo 5 years ago
Jeff Becker ba2aaa68c6
add short data fragments and rx replay filter 5 years ago
Jeff Becker 3c2c895593
fix log level 5 years ago
Jeff Becker 4c8da9bb6d
use correct constructor for llarp_buffer_t 5 years ago
Jeff Becker 88f685b74a
add forgotten bits 5 years ago
Jeff Becker 0241851b72
add likn layer delivery timeout notification for iwp 5 years ago
Jeff Becker 94f8531776
more fixups 5 years ago
Jeff Becker 6a48a3b402
code review fixes:
* use std::unordered_set
* use default for ctor/dtor
* don't crash on short packet with nack
5 years ago
Jeff Becker 82ea973137
silence clang errors 5 years ago
Jeff Becker 5f8388b1c0
lower log level for renegotiate 5 years ago
Jeff Becker 7e38a133d8
send keep alive on pump when needed 5 years ago
Jeff Becker d6ec5e7ed7
don't crash 5 years ago
Jeff Becker 461f41a4c6
mark alive on nack 5 years ago
Jeff Becker acf5f78949
update iwp , add NACK 5 years ago
Jeff Becker 426ee41c46
initial iwp 5 years ago
Michael 16cdfbd5f0
clang-tidy modernize pass 5 years ago
Thomas Winget baf8019fe5 Refactor Router code into more classes
This commit refactors functionality from the Router class into separate,
dedicated classes.
There are a few behavior changes that came as a result of discussion on
what the correct behavior should be.
In addition, many things Router was previously doing can now be provided
callback functions to alert the calling point when the asynchronous
action completes, successfully or otherwise.
5 years ago
Michael 75430a234c
Convert to use memFn 5 years ago
Jeff 674f272a46
Merge pull request #630 from majestrate/master
recent stability stuff
5 years ago
Michael 491fee206b
Port code to use CryptoManager over passing Crypto pointers 5 years ago
Jeff Becker 27c101cc32
close timed out sessions 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 25f10d5b11
Fix more address sanitiser issues 5 years ago
Michael 561b997c93
Move IWP code to its own directory 5 years ago
Jeff Becker c3c388b6aa
remove iwp and start on curvecp
does not compile
6 years ago
Jeff Becker 74b713870b
use const
always use outbound links
6 years ago
Jeff Becker b362784581
redo codel to do as few allocations as possible 6 years ago
Jeff Becker 8bae1a4735
move codel off of pointer types 6 years ago
Jeff Becker 5228a81bae
more refactor
get rid of C api
6 years ago
Jeff Becker b122fc59f8
refactor (not done) 6 years ago
Jeff Becker 199dad09dd
* kill dht feedback loop
* add dht exploration for discovering new routers

* tweak loopback testnet paramters to not be initially fully connected
6 years ago
Jeff Becker b7039f6e5c
more tun stuff 6 years ago
Jeff Becker 1a1f93c171
* more tun stuff
* use std::unique_ptr where bare pointers aren't absolutely required
6 years ago
Jeff Becker 6a828ea985
fix shadow build 6 years ago
Jeff Becker 1d3e9f6adc
make testnet no longer crash 6 years ago
Jeff Becker 186bd7d573
use NTRU for introset end to end encryption 6 years ago
Jeff Becker e79708c1dc
hidden services sorta work 6 years ago
Jeff Becker 62f41d3747
initial threadpool isolation code and run make format 6 years ago
Jeff Becker 86ec4dacc3 dht and testnet fixes 6 years ago
despair86 bdc54835c2 initial windows server port. Requires Windows 2000 Server or later.
- updated CMake build script
- builds with Microsoft C++ 19.1x. such builds require Windows 8.1 or later
  unless you have the .NET Server 2003-toolset (v141_xp)
- windows port requires a C++17 compiler since cpp17::filesystem is POSIX-only
- HAVE_CXX17_FILESYSTEM manual toggle in CMake. You must manually specify where
  std::[experimental::]filesystem is defined in LDFLAGS or CMAKE_x_LINKER_FLAGS.
- IPv6 support can be added at any time, and the windows sdk still has that
  inline getaddrinfo(3) if it can't find a suitable IPv6 stack.
- inline code for mingw-w64: there's a few bits and pieces still missing simply because
  mingw-w64 derives its windows sdk from wine and reactos, and then writing all the newer
  stuff into it by hand straight from the MSDN manpages.
- misc. C++11 stuff (nullptr and friends)
- Internal file handling code takes UTF-8 or plain 8-bit text, NTFS is UTF-16, so
  std::filesystem::path::c_str() is wchar_t. That's no good unless you first
  call std::filesystem::path::string().
- implemented getifaddrs(3) and if_nametoindex(3) on top of GetAdapters[Info|Addresses](2).
- updated readme with new info

BONUS: may implement Solaris/illumos IOCP someday...

-despair86
6 years ago
Jeff Becker 7622f6cef1 dht tweaks 6 years ago
Jeff Becker bc1c49b092 dht fixes 6 years ago
Jeff Becker d4ea843d33 fix feedback loop 6 years ago
Jeff Becker b9f07e8593 * tweak event loop parameters
* various code cleanup
6 years ago
Jeff Becker 908716aca4 cleanup 6 years ago
Jeff Becker 2f51f6202a make it not crash 6 years ago
Jeff Becker 48cfdab63c get rid of wizard and autogenerate configs if not present with sane defaults 6 years ago
Jeff Becker 976ca3015c move iwp server to own source file 6 years ago
Jeff Becker 0f649d844f more 6 years ago
Jeff Becker e91f69a0ef * put sequence numbers in routing messages
* more endian crap

* don't tick logic too much
6 years ago
Jeff Becker 44e898afc8 more endian crap 6 years ago
Jeff Becker 8553c206cb endian stuff 6 years ago
Jeff Becker 23fd7ac30c always ack for 0 fragment messages 6 years ago
Jeff Becker e23d3a8eda * pad messages under 1KB to 1KB to reduce jitter
* fix race
6 years ago
Jeff Becker dbe4a35230 add sequence numbers to routing messages 6 years ago
Jeff Becker 19e3b9c642 * more hidden service code
* begin lokinet api
6 years ago
Jeff Becker 02ca1796b2 all the files 6 years ago
Jeff Becker 7fbc21207f more hidden service stuff 6 years ago
Jeff Becker 994a5fe928 dht fixups 6 years ago
Jeff Becker 7c518bc4da prefetch introset via tag (non working) 6 years ago
Jeff Becker f23ed98c33 make it work 6 years ago
Jeff Becker bb8532a281 correct ordering of outbound messages 6 years ago
Jeff Becker 6945fe53a5 more also run make format 6 years ago
Jeff Becker f48acbc23e Merge remote-tracking branch 'ryan/libdns' into hidden-service-dht
also run make format
6 years ago
Jeff Becker 0242e293c9 more 6 years ago
Jeff Becker fe01c38d8e
* fix dht feedback loop
* start on dht lookups for hidden services

* make debug logging confurable on runtime with env var LLARP_DEBUG=1

* make eventloop tick only when we get traffic

* make testnet parameters configurable on runtime
6 years ago
Jeff Becker bae4f746be
publish hidden service descriptors and acknoledge publish 6 years ago
Jeff Becker cf6275155a
pump less 6 years ago
Jeff Becker 1337cc0c25
also pump outbound queues during logic tick 6 years ago
Jeff Becker 59ca4e4cae
make it work 6 years ago
Jeff Becker 4c08d9a028
make it compile 6 years ago
Jeff Becker dfa567e816
Merge remote-tracking branch 'sachaaaa/refactor' into hidden-service-dht 6 years ago
sachaaaaa 6f055eca4f Extracted structs out of iwp_link.cpp
to rebase

to rebase
6 years ago