Commit Graph

972 Commits (d3bada5564b49355d32e2cd0ccbadf402244266f)

Author SHA1 Message Date
Jeff Becker f85cfcdab0
please don't fucking do this, reverted. 6 years ago
Jeff Becker 7b0860aec0
Merge remote-tracking branch 'ryan/master' 6 years ago
Jeff Becker dc47a0630b
try using parent endpoint's pathset if outbound context does not have a path to a router 6 years ago
Jeff Becker c9bfe640b7
increment sequence number so we don't spam new intro frames 6 years ago
Jeff Becker 69bf060974
correct key 6 years ago
Jeff Becker 179d18bad4
use correct value 6 years ago
Jeff Becker 7d10103e15
don't repeat 6 years ago
Ryan Tharp 731ea83834 bug fix and cleanup 6 years ago
Ryan Tharp ca532e39c8 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 1436036d94 make sure all vectors are unique_ptr, unorder maps (optimization) 6 years ago
Jeff Becker 59cdc160cd
add slot for bootstrap node in config autogeneration 6 years ago
Ryan Tharp 89d41dd365
Merge branch 'master' into master 6 years ago
Jeff Becker b273676a63
more logic for dead sessions to prevent segfault 6 years ago
Jeff Becker 16508a99db
tweak timeouts more 6 years ago
Jeff Becker 2d18cfcdd7
tweak timeout 6 years ago
Jeff Becker d298e4f124
use intros only if they don't expire soon 6 years ago
Jeff Becker 5dfaeebb16
mark sessions dead/inactive 6 years ago
Jeff Becker 9a20daa1ce
add send timeouts 6 years ago
Jeff Becker 983c72f032
use 6 paths by default 6 years ago
Jeff Becker ca1fc0babd
try alternative path death detection 6 years ago
Jeff Becker 3af93954f3
actually publish via far router 6 years ago
Ryan Tharp 0e6d85f6c9 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 64f6f762bd how did this even compile on llvm 6 years ago
Ryan Tharp 287358ae62 I can't bare to throw out all this debugging I added to debug connections, put behind neuroCryptoDebug define for now 6 years ago
Ryan Tharp 902f6f14b7 pass RC by ref, header cleanup, clang format 6 years ago
Ryan Tharp 0ad4f43fe5 header clean up and clang-format 6 years ago
Jeff Becker 79680a4f6b
try not killing paths if they get data
use correct mainloop
6 years ago
Jeff Becker 17d2aa1df1
track path data usage and don't kill paths when under heavy use 6 years ago
Jeff Becker 97bae70817
close sessions on link close not on destructor 6 years ago
Ryan Tharp 5ab68771e4 reverse DNS support 6 years ago
Ryan Tharp 1adc31d09d fix debug output 6 years ago
Ryan Tharp 66d5f79293 debug 6 years ago
Ryan Tharp 589e1357fa reverse support, some SOA record fixes, hex packet debug helper 6 years ago
Ryan Tharp 73270486c5 fix 404 packet, reverse dns response support 6 years ago
Ryan Tharp 47c90e63e8 reverse dns detection and question type 6 years ago
Ryan Tharp 31c89fc9f8 start of nameresolver config key, actually inform the dns tracker of tun gw ip, some pre-ipv6 work, attempting some endian fixes 6 years ago
Ryan Tharp 1d08dbbf19 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 6652cc4bde
breaking change: add timestamp to introset
i don't know why this wasn't here. i could've sworn it was.
6 years ago
Ryan Tharp 2a217b5f7d Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker ce03801a51
close socket in destructor 6 years ago
Ryan Tharp 14d9b19a0f clang-format 6 years ago
Ryan Tharp dba3b66b50 fix FreeBSD compil 6 years ago
Ryan Tharp 9d4d595624 compile fixes 6 years ago
Ryan Tharp 2b2e0007fa active DNS relay (server/client) in tun interface 6 years ago
Ryan Tharp 1e13967198 support multiple dns ip tracker contexts for netns 6 years ago
Ryan Tharp 6590d502cd get first tun interface wiring 6 years ago
Ryan Tharp 31595d209d move logic into client 6 years ago
Ryan Tharp e53e093e17 for previous commit 6 years ago
Ryan Tharp 6d0cf0c8c0 move logic into dnsc context, clang-format 6 years ago
Ryan Tharp 88670928f0 clang format 6 years ago
Ryan Tharp 8aa9d99977 update build, refactor .loki lookups into their own file 6 years ago
Ryan Tharp eef2dbaaf4 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 4309ea3b97
better handling for introset propagation 6 years ago
Jeff Becker a91f54cc8a
when we get an invalid introset in response call handler if exists with empty result instead of timing out 6 years ago
Jeff Becker 86807d2631
permit 10 seconds clock skew for introsets 6 years ago
Ryan Tharp 3138610253 clang format 6 years ago
Ryan Tharp d639fa3fdd support other tun gateways others than 10.x.x.x 6 years ago
Ryan Tharp ca7d3567a2 prefetch and expose it 6 years ago
Ryan Tharp 4df6202c9f Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 7c90e13299
use another buffer for signing 6 years ago
Jeff Becker 4e7c6ee90a
fix crash 6 years ago
Ryan Tharp 6cb073aa02 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff e7e1db8302 fix epoll 6 years ago
Jeff fcc2d00813 try to not die in event loop 6 years ago
Jeff 929cd8169f i fucking hate apple it's fucking shit, fucking god awful shit.
also drybones will never find this.
6 years ago
Jeff d9424ca04b fix macos compile 6 years ago
Ryan Tharp 18c1e7094f undo llvm 3.8 fixme, Jeff said he fixed it 6 years ago
Ryan Tharp 29a304f928 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp c5208fc7ae whoops for the last commit 6 years ago
Ryan Tharp 8bcc3b7c24 actually store service address with dns_pointer, dns_iptracker_setup, dns_iptracker_init remove autodetection/hard code 10.x.x.x for now 6 years ago
Ryan Tharp aaeb035033 getRange() and getFirstTun() refactor start 6 years ago
Ryan Tharp 79fb82a3c8 main_router_getRange to get access to tun 6 years ago
Jeff Becker ef9666e79b
add logging 6 years ago
Jeff Becker 5fb08c2139
check introset timestamps 6 years ago
Jeff Becker 8588aaa60b
dont use expired intros when shifting intros and lookup introsets via near router. 6 years ago
Ryan Tharp 6e5905fb1e windows compile compat fixes 6 years ago
Ryan Tharp e2f5298e00 better logging 6 years ago
Ryan Tharp d7e4cb483f better logging, note 6 years ago
Ryan Tharp 2bdee7d528 expose mapAddress of first tunEndpoint 6 years ago
despair86 be4a78d7fa fixed during latest rebase 6 years ago
despair86 4afa358c49 fix win32 build 6 years ago
Rick V 0477db37ca wow64 cross compile setup 6 years ago
Jeff Becker 29cf0c9ba5
don't propagate expired introsets 6 years ago
Jeff Becker 70a04c5dad
better introset expire logic 6 years ago
Jeff Becker caf06fdf9e
try reinitializing buffer instead of doing resize 6 years ago
Jeff Becker f7462910c2
more logging 6 years ago
Jeff Becker e0c8ae92b2
fix leak when forwarding and sending LRCM 6 years ago
Jeff Becker 5d5db06cbf
update handover logic a bit 6 years ago
Jeff Becker 44eeda3041
fix ip mapping for new addresses so they don't use premapped addresses 6 years ago
Jeff Becker 327acc6d9c
don't heap allocate messages for transit traffic 6 years ago
Jeff Becker 8901123b34
try better handover 6 years ago
Jeff Becker a71d5f84bb
reduce log level 6 years ago
Jeff Becker a36de551e4
try connecting but still drop 6 years ago
Ryan Tharp 893b017402 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 8f5b172d33 merge? 6 years ago
Ryan Tharp f9936b43d3 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 58198656a3
configurable base directory for config and add option for only generating config 6 years ago
Ryan Tharp f283923cb7 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 9f33edeed0 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker df53e79aff
fix windows 6 years ago
Jeff Becker 3963070139
fix windows 6 years ago
Jeff Becker 095170d11e
fix windows build 6 years ago
Jeff Becker be38ea70f0
try fixing CI builds 6 years ago
Jeff Becker 62bae2075b
proper shift 6 years ago
Jeff Becker f110f3f3ad
tweak parameters for path build and obtain path if we have none 6 years ago
Jeff Becker 8e4b0a7963
fix reply logic 6 years ago
Jeff Becker efc6e23c6f
fix tcp checksum calc 6 years ago
Jeff Becker c31fd5fcde
make hidden services work again (probably) 6 years ago
Jeff Becker 5ebe3cc97c
limits and have clients use ephemeral identity 6 years ago
Jeff Becker d83eb54739
only shift introset when we get a drop that matches current intro set 6 years ago
Jeff Becker cde76250ca
close connections 6 years ago
Jeff Becker ebe30e81c9
try unscrewing things up 6 years ago
Jeff Becker acc1b625b4
actually store introsets when found 6 years ago
Jeff Becker 8d679b00a7
only log errors on sessions made with utp
only rebuild paths when introset changes router for outbound context
6 years ago
Jeff Becker d1f1dd3c84
publish intro to multiple routers 6 years ago
Jeff Becker b0f15d668a
don't close stale router sessions 6 years ago
Jeff Becker 2cf5e14ae9
lookup routers for intros 6 years ago
Jeff Becker 271acaf7e9
better intro shift logic, also actually shift intros 6 years ago
Jeff Becker 96716a39ef
send link layer keep alive and track bad intros 6 years ago
Jeff Becker 1eda28a2da
close invalid sockets 6 years ago
Jeff Becker 0c1e22650e
try calcuating tcp checksums right
try tracking convo tags correctly
6 years ago
Jeff Becker 8d6e7df94d
update convo tag and intro 6 years ago
Jeff Becker 1471e90fb5
intro handover 6 years ago
Jeff Becker 9ee7275a02
decrypt frames correctly and set return address 6 years ago
Jeff 689668d892 fix osx build 6 years ago
Jeff Becker 6dfed968ea
use correct parameter 6 years ago
Jeff Becker bc3b411dbf
make it right 6 years ago
Jeff Becker 217f4a0d3f
use correct intro in tag tracking 6 years ago
Jeff Becker 9ffcf66e58
more checks less logging 6 years ago
Jeff Becker edbd9197e5
update spec and fix copy constructor 6 years ago
Jeff Becker f029b9508c
pick router closest in keyspace for lookups and publishing 6 years ago
Jeff Becker 2761da0b5f
actually load config 6 years ago
Jeff Becker e047bfa266
update readme
add sighup
6 years ago
Jeff Becker c900e9d004
increment iterator 6 years ago
Jeff Becker 9f9f9d9bb1
correct tcp checksum recalc (probably) 6 years ago
Jeff Becker 0945275fd5
make it compile 6 years ago
Jeff Becker 9ed3da1671
correctly map addresses 6 years ago
Jeff Becker 8114f63e70
use queues 6 years ago
Jeff Becker 2f2e3be8b7
lessen logging spew 6 years ago
Jeff Becker 4f691b8974
make tun write correct number of bytes
try doing correct ip checksum and for upper layers that need it too

supported right now are icmp, tcp, and udp. more will come later
probably.
6 years ago
Jeff Becker 44cea54dea
avoid stack overflow 6 years ago
Jeff Becker 7027ba2cf1
more agressive network exploration
add install target for makefile
6 years ago
Jeff Becker dd6a8360ba
don't tick in kqueue if closed 6 years ago
Jeff Becker 2bd7f2101d
remove logging 6 years ago
Jeff Becker 7f3465022d
check for null session 6 years ago
Jeff Becker 39401dac42
don't use vendored director iterator 6 years ago
Jeff Becker f5b8d552e1
path peer profiling
propagate introsets better
6 years ago
Jeff Becker 354df88367
more ip endpoint fixes
spam dht with lookups less
6 years ago
Jeff Becker ffdff3e09c
mark successful connections in profiling
don't dht lookup bad routers
6 years ago
Jeff Becker 6986f04418
basic router profiling and fix ip rewrite 6 years ago
Jeff Becker 76e87aa608
more debug logging
timed out paths are not expired
6 years ago
Jeff Becker f55c5e674d
relax timeouts 6 years ago
Jeff Becker 3af51cbe55
add path latency minimum checker
add min-latency option to hidden service config
6 years ago
Jeff Becker c0afc97d41
better explore logic 6 years ago
Jeff Becker 832b24ba93
delete don't abort when building paths failed to key exchange
try making dht less talky

check timestamps on intros
6 years ago
Jeff Becker 0c1dfa4a27
check nodedb for routers not just dht peer list 6 years ago
Jeff Becker b947e55616
fix leak on sign/encrypt fail 6 years ago
Jeff Becker b56d25730e
improve send rate 6 years ago
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