Commit Graph

174 Commits (dev)

Author SHA1 Message Date
Jeff Becker b0d850afb5
durable write for nodedb 5 years ago
Jeff Becker b9bcc2b775
make threadpool consice 5 years ago
Jeff Becker 54a098356d
continue using llarp::openfilestream 5 years ago
Jeff Becker f56273eb6a
fix comparision 5 years ago
Jeff Becker aadde2e9c6
save all nodedb entries in memory on exit 5 years ago
Jeff Becker 9ec41b8831
update RC expiration logic, lookup more often and remove stale entries 5 years ago
Michael 491fee206b
Port code to use CryptoManager over passing Crypto pointers 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 636bb2a17d
Convert router diskworker to use a modern ThreadPool 5 years ago
Jeff Becker 94eb37d490
bundle RC in build record to improve build success rates. 5 years ago
Jeff 5834607997 * don't ban bootstrap nodes with profiling
* less vigorous profiling timeouts
* async remove rc from disk
5 years ago
Jeff Becker 5af8d0a392
don't insert RCs in main thread 5 years ago
Jeff Becker d4cb6808ec
more 5 years ago
Jeff Becker fbb2c78d3c
async remove dead rc files when we think they are dead 5 years ago
Jeff Becker 5d3833ef1a
fix dumb as shit path building that causes premature termiantion because of duplicate hops 5 years ago
Michael 61f3273dc4
Add threading annotations and fix potential deadlocks 5 years ago
Michael c5a129ddff
Convert to use abseil synchronisation primitives 5 years ago
Jeff Becker 2dfb53ef13
prevent deadlock 5 years ago
Jeff Becker 10f9d6444d
actually insert entries when they exist 5 years ago
Jeff Becker d5caec719f
make it compile 5 years ago
Jeff Becker cff6bc1c8d
don't hang 5 years ago
Jeff Becker 00eede9160
Merge remote-tracking branch 'origin/staging' into staging 5 years ago
Michael f3b0af9d2f
Create CopyableBuffer type 5 years ago
Jeff Becker fd507e4194
fix hop selection and disable onion key rotation 5 years ago
Michael 04e0fe3ad7
Move crypto code to a subdirectory 5 years ago
Michael 081d4dfa32
Reorganise source into more folders 5 years ago
Michael fa2b466ffe
Reorganise tests to mirror source layout 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 334161c9bb
Remove data() conversions from llarp::AlignedBuffer 5 years ago
Jeff Becker 0ff214f43f
fixes 6 years ago
Jeff Becker 44904f9226
change skiplist filename convention (backwards compatable change) 6 years ago
Jeff Becker 4d689da148
more 6 years ago
Jeff Becker 6fc42dc7ad
fixes 6 years ago
Jeff Becker cca19290de
session renegotiation, RC expiration, more utp unit tests, network isolation. 6 years ago
Michael 85dde7b6b0
Move remaining include/llarp headers to llarp/ 6 years ago
Michael b92ea0521b
Move router_contact.hpp to llarp/ 6 years ago
Michael 451bbedfaf
Move crypto.hpp to llarp/ 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
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 b543d6243d
Merge branch 'master' into dev 6 years ago
Michael d750ec0605
Rename logic.h 6 years ago
Jeff Becker 5dbe41608f
more exit stuff 6 years ago
Jeff Becker d3278946f2
ipv4 bogon checking 6 years ago
Ryan Tharp f4c5999852 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 0b0278a312
we don't use crypto_async anymore 6 years ago
Ryan Tharp a0aa363365 doesn't make sense to pass by value 6 years ago
despair86 9fdde65798 make bencode ILP32/LLP64 clean (long is 32 bits outside of unix!)
actually open new RCs in binary mode
clang-format
win32 skeleton code for tun (still working on the guts)
6 years ago
despair86 8ac7d4f6dc if we didn't specify a path to save our config in, only create .lokinet on the assumption that $HOME or $APPDATA (on NT) already exist
add win32 tun glue, fix llarp timebase
(In fact, _both_ of these are guaranteed to exist on their respective platforms.)
also, tuntap is now wired up to the windows port
6 years ago
Jeff Becker 6986f04418
basic router profiling and fix ip rewrite 6 years ago
Jeff Becker 956549c818
connect to 10 random routers on startup 6 years ago
Jeff Becker b96887ddb2
various fixes and tweaks 6 years ago
Jeff Becker 5dfcd60df1
more 6 years ago
Jeff Becker 60d5277351
broken 6 years ago
Jeff Becker 8bae1a4735
move codel off of pointer types 6 years ago
Jeff Becker 973f86c900
it compiles 6 years ago
Jeff Becker 5228a81bae
more refactor
get rid of C api
6 years ago
Jeff Becker d3eef5c8b7
more netns code 6 years ago
Jeff Becker bee5eee0b1
fix skiplist placement 6 years ago
Jeff Becker e79708c1dc
hidden services sorta work 6 years ago
Jeff Becker 9dc88fb64b another win32 cross compile fix 6 years ago
Jeff Becker a99fa8f6cf try fixing windows cross compile 6 years ago
Jeff Becker 0d2bce2089 fix up win32 specific parts 6 years ago
Jeff Becker 5c03b3c8f9 add comments 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 6bd2e965fc don't store client RC EVER 6 years ago
Jeff Becker 08b60a9ae7 update code to match protocol spec
backwards incompat change
6 years ago
Ryan Tharp 2fcd885030 make compile on linux gcc 7.2 6 years ago
despair86 bbe0634edc this should get things going on UNIX :D 6 years ago
Jeff Becker 17ad12cd2c * don't heap allocate llarp_rc
* store rc into network database cache on connect
6 years ago
Jeff Becker 02ca1796b2 all the files 6 years ago
Jeff Becker 6945fe53a5 more also run make format 6 years ago
Jeff Becker 0242e293c9 more 6 years ago
Jeff Becker dfa567e816
Merge remote-tracking branch 'sachaaaa/refactor' into hidden-service-dht 6 years ago
sachaaaaa 33586d385b clang format 6 years ago
sachaaaaa c7940076bf Remove most of the extern "C"
remove extern "C"
6 years ago
Jeff Becker 21a2ffdeaf
* refactor log functions
* add more stuff for hidden service dht
6 years ago
Ryan Tharp 07f0653e83 Merge branch 'master' of https://github.com/majestrate/llarp 6 years ago
Jeff Becker 6633fb151d
make it work 6 years ago
Ryan Tharp ede0cb4772 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff Becker da22f306e0
* add path building management
* fix bug in iwp that caused crash
6 years ago
Ryan Tharp 16f7de99e4 disable llarp_nodedb_async_load_rc 6 years ago
Ryan Tharp deb97fda3f Merge branch 'master' of https://github.com/majestrate/llarp 6 years ago
Jeff Becker 47b4b5c536
make format 6 years ago
Jeff Becker f2c42e4e5a
onion routing downstream traffic relaying works on testnet 6 years ago
Ryan Tharp 810c0c83bf iterator clean up 6 years ago
Ryan Tharp 10f9fc86e8 skip directories and .DS_Store on MacOS, remove some dead code 6 years ago
Ryan Tharp 932e04c81f use llarp_rc_read, llarp_nodedb_put_rc(), llarp_nodedb_iterate_all(), iterate() 6 years ago
Jeff Becker 78f3ca0155
more 6 years ago
Jeff Becker f68ffbc33d
more path building stuff 6 years ago
Jeff Becker d3d14ba03a
fix infinite loop 6 years ago
Jeff Becker 0d85577fac
exponential backoff 6 years ago
Jeff Becker c104abb9c2
make nodedb work 6 years ago
Jeff Becker 10ddc3da8a
async load rc 6 years ago
Ryan Tharp d8329b9955 Merge branch 'master' of https://github.com/majestrate/llarp 6 years ago
Ryan Tharp 7ad98cad9f was supposed to be in last commit, and context wasn't. Context just loads from disk now 6 years ago