Commit Graph

814 Commits (1f02498fc0e55e3af533575595bbf4db1c06046d)

Author SHA1 Message Date
Jeff Becker 6f4e998910
fix previous commit 6 years ago
Jeff Becker 3d424b57a7
client side endpoint improvements 6 years ago
Jeff Becker ac2c14437f
god damnit 6 years ago
Jeff Becker 956549c818
connect to 10 random routers on startup 6 years ago
Jeff Becker 1c849973ca
send data discarded messages 6 years ago
Jeff Becker a9b259985e
add data discarded message in routing layer to indicate
a path no longer exists.
6 years ago
Jeff Becker baf2e1fb3c
client improvements
for real do correct timestamp comparison for introsets
6 years ago
Jeff Becker 2993e834a0
fix ip stuff 6 years ago
Jeff Becker 320fbdf3bc
always traffic 6 years ago
Jeff Becker 2eca0005c1
fix up more stuff 6 years ago
Jeff Becker c3a7f64344
expire introsets correctly and allow multiple tun if 6 years ago
Jeff Becker b96887ddb2
various fixes and tweaks 6 years ago
Jeff Becker 1952ece99d
more logging 6 years ago
Jeff Becker cb2802e003
fix segfault on quit 6 years ago
Jeff Becker 1df9a4b078
persist RC from lookups in nodedb 6 years ago
Jeff Becker 96526058b2
update readme and make dht bootstrap work with low peer count 6 years ago
Jeff Becker b23dab09fb
don't overwrite our RC, hide parameter. 6 years ago
Jeff Becker 0f97494998
fug 6 years ago
Jeff Becker 751b86d8c3
forgot a change 6 years ago
Jeff Becker adbf53bc40
protocol docs, more efficient padding, make code reflect protocol changes. 6 years ago
Jeff Becker ec143e11a4
explore via 1 router 6 years ago
Jeff Becker 48e30f5492
actually fix compile error for windows 6 years ago
Jeff Becker c43a075b74
force number of workers in threadpool 6 years ago
Jeff Becker bfb00bb7bd
utp fixes 6 years ago
Jeff Becker 4b3a113397
mostly works 6 years ago
Jeff Becker 5dfcd60df1
more 6 years ago
Jeff Becker 6ef89ea8b2
un break (kinda) 6 years ago
Jeff Becker 60d5277351
broken 6 years ago
Ryan Tharp 742a0b8da7 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker ba648868c4
more 6 years ago
Jeff Becker 2a8fc53ca6
make it compile 6 years ago
Jeff Becker 085563ac2f
implement utp link protocol
gut curvecp for now
6 years ago
Jeff Becker 1839da9c3c
add bencode file helpers and move link server functions into source file 6 years ago
Jeff Becker a8b672a19f
make it compile 6 years ago
Jeff Becker ce1290d327
add more members to llarp::Addr 6 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 4e693a2414
make signatures work again ;~; 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 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 cf0aa2da24
forgot files 6 years ago
Jeff Becker d3eef5c8b7
more netns code 6 years ago
Jeff Becker bee5eee0b1
fix skiplist placement 6 years ago
Jeff Becker 3588580c1a
Merge branch 'master' of ssh://github.com/loki-project/loki-network 6 years ago
Jeff Becker 435fba25fd
add parts to rcutil to print out info about RCs: ./rcutil -V self.signed 6 years ago
Ryan Tharp c8a613eec6 deconflict saddr 6 years ago
Ryan Tharp 8724ddd792 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
despair86 e71c00f736 header fix 6 years ago
despair86 258c2a12dc i blame clang-format 6 years ago
despair86 79c992a9be Microsoft libc6.x and libc7.x do not have C99 printf semantics, mingw-w64 handles this inline 6 years ago
despair86 23ecd03c71 win32 native threading vs pthreads on mingw-w64
also, msc++ implements all of C++17
6 years ago
despair86 3ccb425021 hmm this may work on BSD unix... 6 years ago
Ricardo Villegas 3cca107041 more header fixes
-despair86
6 years ago
despair86 9b73b013ce run-time assertion in ms c: make sure that CPP macro and local variable `LOOPS == loops` 6 years ago
Jeff 7af9ed0f70 Merge branch 'master' of ssh://github.com/loki-project/loki-network 6 years ago
Jeff 367258551b fix osx build 6 years ago
Jeff Becker ba12f3e5e2
prevent crash? 6 years ago
Jeff Becker 3625313304
clear pending dht tx 6 years ago
Jeff Becker bb25537fb5
build paths if we have no connected routers to make sessions happen 6 years ago
Jeff Becker 4e3acd0277
persist sessions between routers 6 years ago
Jeff Becker 51029f0f2f
make loopback testnet work again 6 years ago
Jeff Becker 885fb3cd97
revert back to priority queue for codel 6 years ago
Jeff Becker f989996bc7
lol 6 years ago
Jeff Becker b77525b72d
persist on commit 6 years ago
Jeff Becker b7039f6e5c
more tun stuff 6 years ago
Jeff Becker a2f4c3e3bb
add more autogenerate config lines 6 years ago
Jeff Becker dbac1334e0
disable promises in win32 6 years ago
Jeff Becker 4e2f0ccbf8
* add ProcessIf in CoDel queue to requeue unprocessed items
* more tun code
* make event loop tick and write with tun
6 years ago
Jeff Becker 4aebbda640
more tun stuff 6 years ago
despair86 c24a73f756 ran the linter on new code 6 years ago
despair86 db1989c848 new named thread API on win32 6 years ago
despair86 961a4b1d3c eww, merge conflicts 6 years ago
Ricardo Villegas 43760dee2e more sun patches, plus a note to port solaris tuntap after
doing the windows port of same
6 years ago
despair86 8c1b2c3b79 win32 fluff
more win32 on msc++ fluff

and a solaris patch that i may revert later if the cpp directives aren't processed correctly
-despair86
6 years ago
despair86 9ad93a0893 sunos patches, avoid shadowing data members in derived classes, header fixes
SunOS build works, with a few issues:

- no tuntap debugging on Solaris? (TUNSDEBUG ioctl missing)
- regular socket ioctls are not pulled in with #include <sys/ioctl.h>
  even though they're included at the bottom of same (filio.h,
  sockio.h)
- no named threads in any libre fork of solaris

-despair86 (rick)

sun patch
6 years ago
despair86 72c2231caf this works apparently 6 years ago
despair86 556bc2b740 these headers need to be in a specific order
because the winsock sdk does weird shit
6 years ago
despair86 5f47b335a4 now matches the other platform behaviour, namely, that as long as the event-based queue file descriptor is valid, so is the event loop itself 6 years ago
Jeff Becker 4ab9f72415
backport for gcc 5 6 years ago
Jeff Becker 377cc78144
fix crash 6 years ago
Jeff Becker 1a1f93c171
* more tun stuff
* use std::unique_ptr where bare pointers aren't absolutely required
6 years ago
Ryan Tharp e4214cb25e format 6 years ago
Ryan Tharp 32fa716ac3 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 7171abe825 gcc 7 fix 6 years ago
Ryan Tharp cabd523188 make sure it's lowercase before decoding 6 years ago
Ryan Tharp 9f1f3a35d4 skip answer if type 5 (cname) and advance to first answer, also properly adjsut for SOA hack 6 years ago
Ryan Tharp e3df552986 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 913fb1d88a
don't use 100% cpu 6 years ago
Jeff Becker 08d6121a5a
more tun code 6 years ago
Ryan Tharp 80f70f5a84 fix linux compile 6 years ago
Ryan Tharp a5f2f7080d Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 94b6b828c1 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 5b322510a7
try making it compile 6 years ago
Jeff Becker e6de816dce
touch win32 code to make it compile, sorry. 6 years ago
Jeff Becker b47a67bbd5
make it compile 6 years ago
Jeff Becker b4f672b950
continue to fix kqueue build 6 years ago
Jeff Becker 944d22abde
fix kqueue build 6 years ago
Jeff Becker 04bf8d6116
some tun interface code 6 years ago
Jeff Becker 6a828ea985
fix shadow build 6 years ago
Jeff Becker 98b3bd6354
add runtime toggle of AVX2 code in sntrup 6 years ago
Jeff Becker 1d3e9f6adc
make testnet no longer crash 6 years ago
Jeff Becker c12da3dfc7
fix bad offset 6 years ago
Jeff Becker 186bd7d573
use NTRU for introset end to end encryption 6 years ago
Ryan Tharp 484a4b6164 match up prototypes to remove LLVM 3.8 warning 6 years ago
Ryan Tharp ec237768d7 merge 6 years ago
Ryan Tharp ab3493ba3d Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker d7c1c3322f
it works. 6 years ago
Jeff Becker e79708c1dc
hidden services sorta work 6 years ago
Jeff Becker a9b28e5407
more fuxing around 6 years ago
Jeff Becker c36c83d9dc
more hidden service code 6 years ago
Jeff Becker 143da869b5
fix windows build 6 years ago
Jeff Becker b6ec1e94db
only write nickname if present in rc 6 years ago
Jeff Becker 6bae623481
more defaults 6 years ago
Jeff Becker 32d82b5ba5
add more defaults in config with comments 6 years ago
Ryan Tharp bf52d363de Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 15dbaf3808 big clang-format cleanup 6 years ago
Ryan Tharp 3ada1e15be llarp_main_queryDHT_RC(), llarp_main_init_dnsd(), actually query DHT on dns lookup 6 years ago
Jeff Becker d5532e4de4
more boilerplate and enable tun/tap build 6 years ago
Jeff Becker c71d0b2bb3
always use SIGCHLD in clone 6 years ago
Jeff Becker e4bcf44a25
make net isolated threadpool more generic 6 years ago
Jeff Becker 33c5cf5a89
override join for isolated threadpool 6 years ago
Jeff Becker 62f41d3747
initial threadpool isolation code and run make format 6 years ago
Jeff Becker 30edb26ed9
use endian helpers 6 years ago
Jeff Becker ebfe820b7a
remove the rest of gcc compiler warnings 6 years ago
Jeff Becker 53b4a94c75
clang format and fix (some) compile warnings 6 years ago
Ryan Tharp b5e136d916 fix if 10 is in use, comments and other last minute notes 6 years ago
Ryan Tharp 9cb814587d use CopyInto cleanup 6 years ago
Ryan Tharp 4e7fee7ef5 linux build fixes 6 years ago
Ryan Tharp 57c41f0d65 new ip tracker 6 years ago
Ryan Tharp c5dd067abe format 6 years ago
Ryan Tharp f6398f0126 llarp_getPrivateIfs(), format 6 years ago
Ryan Tharp 73a8be3e60 fix warning 6 years ago
Ryan Tharp 99761ad2c7 add copyright, fix gcc warning 6 years ago
Ryan Tharp 16c56ff04b Merge branch 'master' of https://github.com/majestrate/llarp + gcc 7.2 fixes 6 years ago
despair86 1e9f49d6ef Merge remote-tracking branch 'upstream/master' 6 years ago
Jeff Becker 224748bcaf Merge remote-tracking branch 'loki/master' 6 years ago
Jeff Becker 86ec4dacc3 dht and testnet fixes 6 years ago
despair86 9c0b395c67 vs clang format isn't supposed to inject tabs ffs 6 years ago
despair86 c1765d562b minor patch, make sure the iocp fields are valid before attempting to cast the ev_id back to its ptr 6 years ago
despair86 ae956aff5f This completes the Windows NT Server port of the LokiNetwork components.
Also changed the epoll_wait timeout to 10ms in llarp_epoll_loop::run() to match the other platforms.

-despair86
6 years ago
Jeff Becker f68e3029b0 fix timeouts 6 years ago
Jeff Becker 68a69da0bf fix kqueue run function, have it wait for 10ms so tick works 6 years ago
Jeff Becker 694644ac8b timeout for kevent tick 6 years ago
Jeff Becker cc59d7944a event loop must call tick every tick including on timeout 6 years ago
Jeff Becker 44663d18a5 fix typo 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 1b20ba6a6c fix dead code, clean up parts. 6 years ago
Jeff Becker 066c208622 add mutex/lock to singlethread mode threadpool
remove uneeded i2p.rock.signed.txt

update makefile clean target
6 years ago
Jeff Becker 5c03b3c8f9 add comments 6 years ago
Ryan Tharp 52bbf890ef move hook out of dnsd into daemon, made hook use timer, decode_answer has beginning SOA parsing support, getDNSstring() refactor 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 6bd2e965fc don't store client RC EVER 6 years ago
Jeff Becker 6ffa2eed1c fix up dht 6 years ago
Jeff Becker 12ea412763 fix dumb dht mistake 6 years ago
Jeff Becker f8e3ef16b9 correct typo 6 years ago
Jeff Becker d511057b7d * logging updates
* nicknames in RC (yw kee)

* spec update

* more hidden service code
6 years ago
Jeff Becker bc1c49b092 dht fixes 6 years ago
Jeff Becker d1bbce8192 add uint16/32 put/read on buffers 6 years ago
Ryan Tharp 82f300523d handle crash on multiple response to an alreayd handled packet, rename hook to sendto_hook, writecname_dnss_response() and write404_dnss_response() 6 years ago
Ryan Tharp de56a32069 another DNS clean up pass 6 years ago
Ryan Tharp 14df6724f7 bring kqueue up to date with epoll 6 years ago
Ryan Tharp c5851cd63a Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 0b32bad7b9 Merge branch 'master' of https://github.com/majestrate/llarp 6 years ago
Ryan Tharp 564d96f0c8 print(), write(filename), commitStream(outstream), private commit() 6 years ago
Jeff Becker 928ec3790d deterministic logging 6 years ago
Jeff Becker 058ce4fae3 don't put private addresses into rc EVER 6 years ago
Jeff Becker 3b82dfd818 fix previous commit 6 years ago
Jeff Becker 3f54989b68 fix previous commit 6 years ago
Jeff Becker 28f6a76312 remove unused encoding functions 6 years ago
Jeff Becker d4ea843d33 fix feedback loop 6 years ago
Jeff Becker 1107b39d94 fix decode error 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 d011fb550e have logic and netio run in same thread for now 6 years ago
Jeff Becker 08b60a9ae7 update code to match protocol spec
backwards incompat change
6 years ago
Ryan Tharp c78449e32c Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 05e34e7b2f hook to get dnsd_context it was called from 6 years ago
Jeff Becker f7ab46aef0 fix osx build 6 years ago
Jeff Becker f65fee38be fix ffi example 6 years ago
Jeff Becker b1eddbc70f unbreak shared library build 6 years ago
Jeff Becker 07b99e8ac4 extern "C" block for shared library 6 years ago
Jeff Becker d6f8fd0f60 include header for android 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 3570bf7b1a Merge remote-tracking branch 'ryan/master' 6 years ago
Jeff Becker e80fa5dc82 Merge branch 'master' of ssh://github.com/majestrate/llarp 6 years ago
Jeff Becker 0f649d844f more 6 years ago
Ryan Tharp 043dcaeac7 add dns section 6 years ago
Ryan Tharp 0f068a7ea4 fix warnings 6 years ago
Ryan Tharp bd229be656 handleBaseCmdLineArgs() refactor 6 years ago
Ryan Tharp 554834425d important note, as I have relays that are outbound only 6 years ago
Ryan Tharp dfc347aefb fix NAT 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 4dd7b2843f only get public addresses 6 years ago
Jeff Becker 536f63ed2a better hop selection fault tolerance 6 years ago
Jeff Becker 7cec96901d update build logic for clients 6 years ago
Jeff Becker ee54149465 when building paths only use nodes we are directly connected to for first hops. 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 f9db26adee add mingw stl threading lib
run make format
6 years ago
Jeff Becker f222f002f4 Merge remote-tracking branch 'loki/master' 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 230dd86906 revert 6 years ago
Jeff Becker 8553c206cb endian stuff 6 years ago
Jeff Becker 53b80e8448 remove unused code 6 years ago
Jeff Becker a9c92213df more backport 6 years ago
Jeff Becker f7daee5abf backport 6 years ago
Jeff Becker 066cf537e2 backport 6 years ago
Jeff Becker 98e992e28f backport 6 years ago
Jeff Becker 62b94b17aa more backport 6 years ago
Jeff Becker 5007da5528 backport 6 years ago
Jeff Becker 40dc125b17 another backport 6 years ago
Jeff Becker f695b947f7 more arm fixes 6 years ago
Jeff Becker 47ee78844a try making android work 6 years ago
Jeff Becker c445897706 typo fix 6 years ago
Jeff Becker ec5ac295e4 test 6 years ago
Jeff Becker 4ec076baf5 android ifaddrs shim 6 years ago
Jeff Becker da7455a86d header for android 6 years ago
Jeff Becker fd4938b1e4 more android pendatic fixes 6 years ago
Jeff Becker a24a9f3e7f revert to old epoll for android 6 years ago
Ryan Tharp 14ad9cab11 Merge branch 'master' of https://github.com/majestrate/llarp 6 years ago
Jeff Becker 45ea414a7b fix attempt for android 6 years ago
Ryan Tharp 49b4d0189a linux gcc compat 6 years ago
Ryan Tharp 0decbe5613 fix gcc 6 years ago
Ryan Tharp b93ea8a087 fix intercept api, implement new intercept api, logging clean up 6 years ago
Jeff Becker cb3d373689 don't send latency messages from the future 6 years ago
Jeff Becker 23fd7ac30c always ack for 0 fragment messages 6 years ago
Jeff Becker de52a33361 remove logging 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 d38646ed54 more hidden service stuff 6 years ago
Ryan Tharp ca06f1dded refactor clean up (pass 1) 6 years ago
Ryan Tharp a9e8584acd clang-format (finally :) 6 years ago
Ryan Tharp eadca4b4fc "fixed" DNS multithreaded 6 years ago
Ryan Tharp 6582a2fb0f fix casting of ip to return correct results 6 years ago
Ryan Tharp dd4b3fa9a1 continue llarpification (StackBuffer) and other refactor 6 years ago
Jeff Becker 02ca1796b2 all the files 6 years ago
Jeff Becker 9114d79bd6 * make number of hops configurable
* remove compile warnings
6 years ago
Jeff Becker 7fbc21207f more hidden service stuff 6 years ago
Jeff Becker 97e11a28f6 make format 6 years ago