Jeff
77b2903bda
logging and add DST awareness to timestamps
2018-10-02 11:29:37 -04:00
Jeff
f3d446dafb
handover logic fix, remove and add logging
2018-10-02 11:00:34 -04:00
Jeff
dbeead03f3
fix kqueue build
2018-10-02 10:29:46 -04:00
despair86
991c1d8fce
fix
2018-10-01 15:19:26 -05:00
despair86
19b7f47322
bug: if we have only one network interface, then terminate the linked list with nullptr
...
otherwise, the windows build will crash
2018-10-01 15:08:56 -05:00
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)
2018-10-01 15:08:55 -05:00
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
2018-10-01 15:08:52 -05:00
despair86
7f809eb53b
fix windows build
2018-10-01 15:06:07 -05:00
despair86
7c5d98ca31
clean up win32 build rules
2018-10-01 15:06:06 -05:00
Jeff Becker
0f7c7c871f
reduce log levels and don't establish outbound send context for previously made inbound sessions
2018-10-01 14:10:25 -04:00
Jeff Becker
23cff0bee3
try fixing all that tun shit, YOLO
2018-10-01 13:16:15 -04:00
Jeff Becker
8aa0d0d4a8
try fixing tun writing
2018-10-01 13:05:36 -04:00
Jeff Becker
9e8563a884
cache convo tag and drop traffic
2018-10-01 11:45:55 -04:00
Jeff Becker
1eef5387b6
update introset on message drop
2018-10-01 10:31:54 -04:00
Jeff Becker
681e669fd8
try better publish logic and timeouts for requests
2018-10-01 10:18:17 -04:00
Ryan Tharp
4cc482764d
clang format
2018-10-01 03:00:11 -07:00
Ryan Tharp
fb9b60bd16
clang-format
2018-10-01 02:57:57 -07:00
Ryan Tharp
e890ef2e5b
ensure_config split router/client refactor, move C++ stuff to .hpp
2018-10-01 02:56:14 -07:00
Ryan Tharp
058ed4d4ea
Merge branch 'master' of https://github.com/neuroscr/loki-network
2018-10-01 09:03:31 +00:00
Jeff
4158e422bb
don't store introsets when forwarding a request
2018-09-30 12:02:42 -04:00
Jeff
a168c81a75
make mac tun work
2018-09-30 11:40:34 -04:00
Jeff
e50cbf5acb
Merge branch 'master' of ssh://github.com/loki-project/loki-network
2018-09-30 11:25:59 -04:00
Jeff Becker
f6c812a642
include packet info in tun but discard it so that tun can work on platforms
...
that include packet info
2018-09-30 09:23:37 -04:00
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
Jeff Becker
bc3b411dbf
make it right
2018-09-17 12:22:11 -04:00
Jeff Becker
217f4a0d3f
use correct intro in tag tracking
2018-09-17 12:12:42 -04:00
Jeff Becker
9ffcf66e58
more checks less logging
2018-09-17 11:32:37 -04:00
Jeff Becker
edbd9197e5
update spec and fix copy constructor
2018-09-17 09:28:26 -04:00
Jeff Becker
f029b9508c
pick router closest in keyspace for lookups and publishing
2018-09-17 08:10:44 -04:00
Jeff Becker
2761da0b5f
actually load config
2018-09-17 08:02:09 -04:00
Jeff Becker
e047bfa266
update readme
...
add sighup
2018-09-17 07:47:34 -04:00
Jeff Becker
c900e9d004
increment iterator
2018-09-17 07:45:35 -04:00
Jeff Becker
9f9f9d9bb1
correct tcp checksum recalc (probably)
2018-09-16 09:13:52 -04:00
Jeff Becker
0945275fd5
make it compile
2018-09-16 08:53:23 -04:00
Jeff Becker
9ed3da1671
correctly map addresses
2018-09-16 08:51:16 -04:00
Jeff Becker
8114f63e70
use queues
2018-09-16 08:25:17 -04:00
Jeff Becker
2f2e3be8b7
lessen logging spew
2018-09-16 08:09:21 -04:00
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.
2018-09-16 08:06:19 -04:00
Jeff Becker
44cea54dea
avoid stack overflow
2018-09-15 07:54:08 -04:00
Jeff Becker
7027ba2cf1
more agressive network exploration
...
add install target for makefile
2018-09-15 07:37:46 -04:00
Jeff Becker
dd6a8360ba
don't tick in kqueue if closed
2018-09-14 14:36:39 -04:00
Jeff Becker
2bd7f2101d
remove logging
2018-09-14 13:46:02 -04:00
Jeff Becker
7f3465022d
check for null session
2018-09-14 11:27:34 -04:00
Jeff Becker
39401dac42
don't use vendored director iterator
2018-09-14 11:22:44 -04:00
Jeff Becker
f5b8d552e1
path peer profiling
...
propagate introsets better
2018-09-14 10:50:37 -04:00
Jeff Becker
354df88367
more ip endpoint fixes
...
spam dht with lookups less
2018-09-14 09:43:42 -04:00
Jeff Becker
ffdff3e09c
mark successful connections in profiling
...
don't dht lookup bad routers
2018-09-13 12:58:25 -04:00
Jeff Becker
6986f04418
basic router profiling and fix ip rewrite
2018-09-13 12:41:53 -04:00
Jeff Becker
76e87aa608
more debug logging
...
timed out paths are not expired
2018-09-13 09:07:00 -04:00
Jeff Becker
f55c5e674d
relax timeouts
2018-09-13 08:40:13 -04:00
Jeff Becker
3af51cbe55
add path latency minimum checker
...
add min-latency option to hidden service config
2018-09-13 08:27:28 -04:00