Commit Graph

896 Commits

Author SHA1 Message Date
Jeff Becker
138c222a1a
dns port configurable at compile time (make this configurable on runtime plz) 2018-09-30 08:42:28 -04:00
Jeff Becker
2b8bd11f5e
ping less and try not to double free in llarp_router::SendToOrQueue 2018-09-30 08:01:58 -04:00
Jeff Becker
ed5867e49f
don't use std::list 2018-09-30 07:17:48 -04:00
Ryan Tharp
79d61dedc3 use new llarp::Addr based init 2018-09-29 03:28:55 -07:00
Ryan Tharp
9ea564e832 update llarp_main_init_dnsd to make new DNSd init 2018-09-29 03:27:38 -07:00
Ryan Tharp
e876506295 improve b32 failure handling, dead code removal 2018-09-29 03:26:34 -07:00
Ryan Tharp
0278ba6edf more clang-format 2018-09-29 03:25:07 -07:00
Ryan Tharp
6c2d0e21bf llarp_dnsd_init() update to use llarp::Addr more and adjust to new DNSc init changes, remove unneeded WIN32 change (made it the default) 2018-09-29 03:22:48 -07:00
Ryan Tharp
35def45c98 answer_request_alloc() use a unique_ptr, multiple resolver support start, llarp_dnsc_init to use llarp::Addrs 2018-09-29 03:18:33 -07:00
Jeff
d6463bf8de Merge branch 'master' of ssh://github.com/loki-project/loki-network 2018-09-28 19:47:25 -04:00
Jeff
52da002488 comit 2018-09-28 19:47:18 -04:00
Jeff Becker
36c927fc79
premptively build path to selected intro's router every time we don't have it if we get an introset update, on the outbound context 2018-09-28 11:46:47 -04:00
Jeff Becker
8a4b2e97a5
add lint target for makefile using clang tidy
run make format
2018-09-28 10:29:34 -04:00
Jeff Becker
8878e5c4d1
redundancy with outbound contexts
have multiple outbound contexts and send on the one that is alive
2018-09-28 08:22:50 -04:00
Jeff Becker
869b758365
more 2018-09-27 13:29:26 -04:00
Jeff Becker
fa5389cb05
docstrings and manual rebuild if the path expires soon 2018-09-27 12:15:40 -04:00
Jeff Becker
186a36cd4b
try fixing dht crash 2018-09-27 08:47:21 -04:00
Jeff Becker
724a093da7
syntax 2018-09-27 07:09:00 -04:00
Jeff Becker
17a8ac13ad
fix logic 2018-09-27 07:07:20 -04:00
Jeff Becker
22b1e58dcf
clear intro 2018-09-27 07:03:01 -04:00
Jeff Becker
d71882259e
try spacing path building out more wide in time so that intros don't die in the same small interval 2018-09-27 06:51:30 -04:00
Jeff Becker
34dc5bec93
check for cache hit to prevent automapping 2018-09-26 10:41:45 -04:00
Jeff Becker
9a062f79fb
use parent endpoint paths when we can more 2018-09-26 10:06:48 -04:00
Jeff Becker
b40dd30c7a
linear backoff for path building to lessen strain on the network 2018-09-26 09:04:25 -04:00
Jeff Becker
f85cfcdab0
please don't fucking do this, reverted. 2018-09-26 08:33:12 -04:00
Jeff Becker
7b0860aec0
Merge remote-tracking branch 'ryan/master' 2018-09-26 07:22:27 -04:00
Jeff Becker
dc47a0630b
try using parent endpoint's pathset if outbound context does not have a path to a router 2018-09-26 07:16:54 -04:00
Jeff Becker
c9bfe640b7
increment sequence number so we don't spam new intro frames 2018-09-26 06:52:57 -04:00
Jeff Becker
69bf060974
correct key 2018-09-25 09:43:06 -04:00
Jeff Becker
179d18bad4
use correct value 2018-09-25 09:38:10 -04:00
Jeff Becker
7d10103e15
don't repeat 2018-09-25 09:34:35 -04:00
Ryan Tharp
731ea83834 bug fix and cleanup 2018-09-25 06:26:21 -07:00
Ryan Tharp
ca532e39c8 Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-09-25 06:21:19 -07:00
Ryan Tharp
1436036d94 make sure all vectors are unique_ptr, unorder maps (optimization) 2018-09-25 06:20:39 -07:00
Jeff Becker
59cdc160cd
add slot for bootstrap node in config autogeneration 2018-09-25 08:11:10 -04:00
Ryan Tharp
89d41dd365
Merge branch 'master' into master 2018-09-24 13:57:40 -07:00
Jeff Becker
b273676a63
more logic for dead sessions to prevent segfault 2018-09-24 15:50:52 -04:00
Jeff Becker
16508a99db
tweak timeouts more 2018-09-24 13:33:54 -04:00
Jeff Becker
2d18cfcdd7
tweak timeout 2018-09-24 13:14:05 -04:00
Jeff Becker
d298e4f124
use intros only if they don't expire soon 2018-09-24 13:13:29 -04:00
Jeff Becker
5dfaeebb16
mark sessions dead/inactive 2018-09-24 11:52:25 -04:00
Jeff Becker
9a20daa1ce
add send timeouts 2018-09-24 11:34:56 -04:00
Jeff Becker
983c72f032
use 6 paths by default 2018-09-24 10:46:43 -04:00
Jeff Becker
ca1fc0babd
try alternative path death detection 2018-09-24 10:44:23 -04:00
Jeff Becker
3af93954f3
actually publish via far router 2018-09-24 10:31:58 -04:00
Ryan Tharp
0e6d85f6c9 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-24 13:24:42 +00:00
Ryan Tharp
64f6f762bd how did this even compile on llvm 2018-09-24 13:24:21 +00:00
Ryan Tharp
287358ae62 I can't bare to throw out all this debugging I added to debug connections, put behind neuroCryptoDebug define for now 2018-09-24 06:11:30 -07:00
Ryan Tharp
902f6f14b7 pass RC by ref, header cleanup, clang format 2018-09-24 06:10:36 -07:00
Ryan Tharp
0ad4f43fe5 header clean up and clang-format 2018-09-24 06:09:01 -07:00
Jeff Becker
79680a4f6b
try not killing paths if they get data
use correct mainloop
2018-09-24 08:56:07 -04:00
Jeff Becker
17d2aa1df1
track path data usage and don't kill paths when under heavy use 2018-09-24 07:36:47 -04:00
Jeff Becker
97bae70817
close sessions on link close not on destructor 2018-09-24 06:23:11 -04:00
Ryan Tharp
5ab68771e4 reverse DNS support 2018-09-23 09:59:59 -07:00
Ryan Tharp
1adc31d09d fix debug output 2018-09-23 09:59:43 -07:00
Ryan Tharp
66d5f79293 debug 2018-09-23 09:59:13 -07:00
Ryan Tharp
589e1357fa reverse support, some SOA record fixes, hex packet debug helper 2018-09-23 09:57:53 -07:00
Ryan Tharp
73270486c5 fix 404 packet, reverse dns response support 2018-09-23 09:55:43 -07:00
Ryan Tharp
47c90e63e8 reverse dns detection and question type 2018-09-23 09:52:47 -07:00
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 2018-09-23 09:48:43 -07:00
Ryan Tharp
1d08dbbf19 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-23 14:58:35 +00:00
Jeff Becker
6652cc4bde
breaking change: add timestamp to introset
i don't know why this wasn't here. i could've sworn it was.
2018-09-23 09:57:21 -04:00
Ryan Tharp
2a217b5f7d Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-23 11:38:37 +00:00
Jeff Becker
ce03801a51
close socket in destructor 2018-09-23 07:29:41 -04:00
Ryan Tharp
14d9b19a0f clang-format 2018-09-22 04:28:55 -07:00
Ryan Tharp
dba3b66b50 fix FreeBSD compil 2018-09-22 04:25:37 -07:00
Ryan Tharp
9d4d595624 compile fixes 2018-09-22 03:39:53 -07:00
Ryan Tharp
2b2e0007fa active DNS relay (server/client) in tun interface 2018-09-22 03:25:16 -07:00
Ryan Tharp
1e13967198 support multiple dns ip tracker contexts for netns 2018-09-22 03:24:32 -07:00
Ryan Tharp
6590d502cd get first tun interface wiring 2018-09-22 03:23:23 -07:00
Ryan Tharp
31595d209d move logic into client 2018-09-22 03:22:18 -07:00
Ryan Tharp
e53e093e17 for previous commit 2018-09-22 03:21:26 -07:00
Ryan Tharp
6d0cf0c8c0 move logic into dnsc context, clang-format 2018-09-22 03:20:40 -07:00
Ryan Tharp
88670928f0 clang format 2018-09-22 03:20:15 -07:00
Ryan Tharp
8aa9d99977 update build, refactor .loki lookups into their own file 2018-09-22 03:17:22 -07:00
Ryan Tharp
eef2dbaaf4 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-21 21:55:11 +00:00
Jeff Becker
4309ea3b97
better handling for introset propagation 2018-09-21 12:37:49 -04:00
Jeff Becker
a91f54cc8a
when we get an invalid introset in response call handler if exists with empty result instead of timing out 2018-09-21 12:17:26 -04:00
Jeff Becker
86807d2631
permit 10 seconds clock skew for introsets 2018-09-21 11:24:00 -04:00
Ryan Tharp
3138610253 clang format 2018-09-21 07:36:06 -07:00
Ryan Tharp
d639fa3fdd support other tun gateways others than 10.x.x.x 2018-09-21 12:53:45 +00:00
Ryan Tharp
ca7d3567a2 prefetch and expose it 2018-09-21 12:53:20 +00:00
Ryan Tharp
4df6202c9f Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-21 12:51:54 +00:00
Jeff Becker
7c90e13299
use another buffer for signing 2018-09-21 08:47:07 -04:00
Jeff Becker
4e7c6ee90a
fix crash 2018-09-21 08:30:57 -04:00
Ryan Tharp
6cb073aa02 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-21 11:06:57 +00:00
Jeff
e7e1db8302 fix epoll 2018-09-20 18:38:45 -04:00
Jeff
fcc2d00813 try to not die in event loop 2018-09-20 18:37:45 -04:00
Jeff
929cd8169f i fucking hate apple it's fucking shit, fucking god awful shit.
also drybones will never find this.
2018-09-20 18:31:34 -04:00
Jeff
d9424ca04b fix macos compile 2018-09-20 10:32:31 -04:00
Ryan Tharp
18c1e7094f undo llvm 3.8 fixme, Jeff said he fixed it 2018-09-20 12:48:06 +00:00
Ryan Tharp
29a304f928 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-20 12:45:19 +00:00
Ryan Tharp
c5208fc7ae whoops for the last commit 2018-09-20 12:37:19 +00:00
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 2018-09-20 12:36:11 +00:00
Ryan Tharp
aaeb035033 getRange() and getFirstTun() refactor start 2018-09-20 12:35:29 +00:00
Ryan Tharp
79fb82a3c8 main_router_getRange to get access to tun 2018-09-20 12:34:53 +00:00
Jeff Becker
ef9666e79b
add logging 2018-09-20 07:50:07 -04:00
Jeff Becker
5fb08c2139
check introset timestamps 2018-09-20 07:27:18 -04:00
Jeff Becker
8588aaa60b
dont use expired intros when shifting intros and lookup introsets via near router. 2018-09-20 07:08:12 -04:00
Ryan Tharp
6e5905fb1e windows compile compat fixes 2018-09-20 03:07:16 -07:00
Ryan Tharp
e2f5298e00 better logging 2018-09-20 03:06:47 -07:00
Ryan Tharp
d7e4cb483f better logging, note 2018-09-20 03:06:24 -07:00
Ryan Tharp
2bdee7d528 expose mapAddress of first tunEndpoint 2018-09-20 03:05:42 -07:00
despair86
be4a78d7fa fixed during latest rebase 2018-09-20 00:24:26 -05:00
despair86
4afa358c49 fix win32 build 2018-09-19 20:41:47 -05:00
Rick V
0477db37ca wow64 cross compile setup 2018-09-19 19:43:16 -05:00
Jeff Becker
29cf0c9ba5
don't propagate expired introsets 2018-09-19 13:58:02 -04:00
Jeff Becker
70a04c5dad
better introset expire logic 2018-09-19 13:54:22 -04:00
Jeff Becker
caf06fdf9e
try reinitializing buffer instead of doing resize 2018-09-19 13:30:18 -04:00
Jeff Becker
f7462910c2
more logging 2018-09-19 13:04:55 -04:00
Jeff Becker
e0c8ae92b2
fix leak when forwarding and sending LRCM 2018-09-19 12:36:12 -04:00
Jeff Becker
5d5db06cbf
update handover logic a bit 2018-09-19 12:20:34 -04:00
Jeff Becker
44eeda3041
fix ip mapping for new addresses so they don't use premapped addresses 2018-09-19 10:49:42 -04:00
Jeff Becker
327acc6d9c
don't heap allocate messages for transit traffic 2018-09-19 10:12:46 -04:00
Jeff Becker
8901123b34
try better handover 2018-09-19 09:59:14 -04:00
Jeff Becker
a71d5f84bb
reduce log level 2018-09-19 09:37:46 -04:00
Jeff Becker
a36de551e4
try connecting but still drop 2018-09-19 09:27:15 -04:00
Ryan Tharp
893b017402 Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-09-19 06:24:52 -07:00
Ryan Tharp
8f5b172d33 merge? 2018-09-19 06:24:36 -07:00
Ryan Tharp
f9936b43d3 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-19 13:21:15 +00:00
Jeff Becker
58198656a3
configurable base directory for config and add option for only generating config 2018-09-19 09:02:55 -04:00
Ryan Tharp
f283923cb7 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-19 12:28:48 +00:00
Ryan Tharp
9f33edeed0 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-09-19 12:22:34 +00:00
Jeff Becker
df53e79aff
fix windows 2018-09-19 07:56:12 -04:00
Jeff Becker
3963070139
fix windows 2018-09-19 07:54:58 -04:00
Jeff Becker
095170d11e
fix windows build 2018-09-19 07:53:16 -04:00
Jeff Becker
be38ea70f0
try fixing CI builds 2018-09-19 07:50:18 -04:00
Jeff Becker
62bae2075b
proper shift 2018-09-18 20:17:35 -04:00
Jeff Becker
f110f3f3ad
tweak parameters for path build and obtain path if we have none 2018-09-18 19:56:26 -04:00
Jeff Becker
8e4b0a7963
fix reply logic 2018-09-18 18:54:04 -04:00
Jeff Becker
efc6e23c6f
fix tcp checksum calc 2018-09-18 18:53:48 -04:00
Jeff Becker
c31fd5fcde
make hidden services work again (probably) 2018-09-18 17:32:17 -04:00
Jeff Becker
5ebe3cc97c
limits and have clients use ephemeral identity 2018-09-18 16:56:22 -04:00
Jeff Becker
d83eb54739
only shift introset when we get a drop that matches current intro set 2018-09-18 16:15:18 -04:00
Jeff Becker
cde76250ca
close connections 2018-09-18 14:05:41 -04:00
Jeff Becker
ebe30e81c9
try unscrewing things up 2018-09-18 13:48:26 -04:00
Jeff Becker
acc1b625b4
actually store introsets when found 2018-09-18 11:12:26 -04:00
Jeff Becker
8d679b00a7
only log errors on sessions made with utp
only rebuild paths when introset changes router for outbound context
2018-09-18 11:05:56 -04:00
Jeff Becker
d1f1dd3c84
publish intro to multiple routers 2018-09-18 10:48:06 -04:00
Jeff Becker
b0f15d668a
don't close stale router sessions 2018-09-18 10:17:15 -04:00
Jeff Becker
2cf5e14ae9
lookup routers for intros 2018-09-18 10:04:46 -04:00
Jeff Becker
271acaf7e9
better intro shift logic, also actually shift intros 2018-09-18 09:38:26 -04:00
Jeff Becker
96716a39ef
send link layer keep alive and track bad intros 2018-09-18 09:02:52 -04:00
Jeff Becker
1eda28a2da
close invalid sockets 2018-09-18 08:29:27 -04:00
Jeff Becker
0c1e22650e
try calcuating tcp checksums right
try tracking convo tags correctly
2018-09-18 07:08:47 -04:00
Jeff Becker
8d6e7df94d
update convo tag and intro 2018-09-18 06:18:57 -04:00
Jeff Becker
1471e90fb5
intro handover 2018-09-17 20:32:11 -04:00
Jeff Becker
9ee7275a02
decrypt frames correctly and set return address 2018-09-17 20:18:33 -04:00
Jeff
689668d892 fix osx build 2018-09-17 14:59:12 -04:00
Jeff Becker
6dfed968ea
use correct parameter 2018-09-17 12:27:16 -04:00