Commit Graph

363 Commits

Author SHA1 Message Date
Jeff Becker
9d649b7b14
Revert "make exit handle localhost.loki for now"
This reverts commit 654864919f.
2019-03-20 11:48:29 -04:00
Jeff Becker
567efb9a92
Revert "move is_random_snode/is_localhost_loki into dns, llarp_HandleHookedDNSMessage() attempt at unification refactor between exit/tun handlers"
This reverts commit e388dc47eb.
2019-03-20 11:48:23 -04:00
Ryan Tharp
654864919f make exit handle localhost.loki for now 2019-03-20 03:29:54 +00:00
Ryan Tharp
e388dc47eb move is_random_snode/is_localhost_loki into dns, llarp_HandleHookedDNSMessage() attempt at unification refactor between exit/tun handlers 2019-03-20 03:28:58 +00:00
Ryan Tharp
d02eec2bcf add note 2019-03-20 03:18:38 +00:00
Jeff Becker
734a5b5fae
more 2019-03-11 09:01:43 -04:00
Jeff Becker
2218749134
Merge remote-tracking branch 'origin/staging' into staging 2019-03-07 17:58:29 -05:00
Jeff Becker
eceb55623c
more 2019-03-07 10:17:29 -05:00
Michael
61f3273dc4
Add threading annotations and fix potential deadlocks 2019-03-04 00:03:52 +00:00
Michael
c5a129ddff
Convert to use abseil synchronisation primitives 2019-03-03 21:20:38 +00:00
Jeff Becker
159415c363
delay dns resolution for snode until we have a session with it 2019-03-01 14:10:42 -05:00
Michael
887fb4ac62
Replace insert(make_pair()) with emplace() 2019-02-18 10:35:23 +00:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter 2019-02-14 22:31:31 +00:00
Jeff Becker
46222df421
refactor 2019-02-11 12:14:43 -05:00
Jeff Becker
66753430ad
fix it 2019-02-08 16:29:56 -05:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint 2019-02-08 14:43:25 -05:00
Jeff
4c4f3faf83
Merge pull request #284 from michael-loki/abstract_router
Convert llarp::Router into an abstract base class
2019-02-06 19:09:31 -05:00
Jeff Becker
f84256d554
* lower lookup timeout for introsets
* correct previous commit for dns stuff
* allow for multiple parallel introset lookups
2019-02-06 10:05:25 -05:00
Jeff Becker
b40055181d
lower path build timeout to 15s
tweak various dns stuff
2019-02-06 08:02:17 -05:00
Michael
729cd045f1
Convert llarp::Router into an abstract base class 2019-02-06 09:59:47 +00:00
Jeff Becker
5743ca7fba
revert dns behavior 2019-02-05 16:04:30 -05:00
Jeff Becker
2c2b31f4b9
make it compile 2019-02-05 09:23:51 -05:00
Jeff Becker
25fa4817ba
hook mx records for all hooked domains 2019-02-05 09:22:02 -05:00
Jeff Becker
41c993a237
disable A records for random.snode, use CNAME queries instead. 2019-02-05 09:08:17 -05:00
Jeff Becker
8c77c53675
reply with cname 2019-02-05 09:03:38 -05:00
Ryan Tharp
2bba8f01e8 don't return unknown IPs 2019-02-04 19:54:44 -08:00
Ryan Tharp
54549724d0 fix random.snode 2019-02-04 19:19:06 -08:00
Ryan Tharp
4bf4faa956 make format 2019-02-04 16:41:33 -08:00
Michael
7212baa062
Add implicit conversion from ManagedBuffer to llarp_buffer_t 2019-02-03 01:44:09 +00:00
Michael
7ca3e13e78
Rename to ManagedBuffer 2019-02-03 00:48:10 +00:00
Michael
f3b0af9d2f
Create CopyableBuffer type 2019-02-02 23:21:35 +00:00
Michael
2de621b0ad
Disable copy constructing llarp_buffer_t 2019-02-01 01:58:13 +00:00
Michael
e9f6ca339a
Fix minor warning 2019-01-29 22:08:51 +00:00
Ryan Tharp
f20ac0f6e9
Merge branch 'staging' into crypto_interface 2019-01-29 13:59:05 -08:00
Ryan Tharp
175fdbc89c
Merge pull request #250 from majestrate/add-localhost-loki
add initial localhost.loki handling in dns
2019-01-29 13:57:56 -08:00
Ryan Tharp
9b6008db1d downgrade DNS server failure to a warning 2019-01-29 03:17:21 -08:00
Jeff Becker
9e50e2d34a
try fixing AAAA record handling, return NOERROR with no records. 2019-01-28 11:16:17 -05:00
Jeff Becker
7489ab1380
only hook cname for random.snode 2019-01-28 10:46:49 -05:00
Jeff Becker
f1cf63fce7
add initial localhost.loki handling in dns 2019-01-28 10:26:35 -05:00
Michael
f24f554a01
Convert llarp::Crypto into an abstract base class 2019-01-26 15:40:58 +00:00
Rick V
b961f80256
don't leak unused packets
bad merge
2019-01-22 18:21:38 -06:00
Rick V
6913c01524
wtf why didn't this get rebased 2019-01-22 18:17:04 -06:00
Rick V
fab9374779
make less noise in public test releases 2019-01-22 18:17:00 -06:00
Ryan Tharp
2e4ad12a87 Merge branch 'staging' of https://github.com/loki-project/loki-network 2019-01-17 21:14:01 +00:00
Jeff Becker
015e68df68
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging 2019-01-17 08:56:33 -05:00
Ryan Tharp
1ba5b75082 Merge branch 'master' of https://github.com/neuroscr/loki-network 2019-01-16 21:25:37 +00:00
Ryan Tharp
c4241ae4ad note about name(), change verbiage to make more sense, be more verbose about failures 2019-01-16 13:08:00 -08:00
Ryan Tharp
3feb074599 be more verbose about failure and actual DNS bind 2019-01-16 13:06:53 -08:00
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic 2019-01-15 23:15:44 +00:00
Michael
6e38e85a79
Produce hierarchy of 'libraries' inside libllarp 2019-01-15 23:15:43 +00:00
Jeff Becker
ef394cd2fb
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging 2019-01-11 08:21:17 -05:00
Michael
a3463120cc
Move net components into a distinct folder 2019-01-11 01:42:02 +00:00
Michael
081d4dfa32
Reorganise source into more folders 2019-01-11 01:19:49 +00:00
Michael
e5eda0fb8f
Move lokinet unspecific components to a util/ library 2019-01-10 20:07:24 +00:00
Jeff Becker
6e745abe6a
make it compile 2019-01-10 10:51:31 -05:00
Jeff Becker
c1e4e715bb
try fixing dns issue with random.snode 2019-01-10 10:49:08 -05:00
Ryan Tharp
c5575d6fe2 rename Crypto() to GetCrypto() to keep gcc 7.3 on linux happy 2019-01-08 23:45:43 +00:00
Michael
df4fd0ef56
Fix some low hanging performance issues 2019-01-07 22:15:41 +00:00
Michael
516466f5be
Mark more AlignedBuffer constructors as explicit 2019-01-02 01:04:08 +00:00
Michael
ea19093a20
Remove const byte* conversion operators from llarp::AlignedBuffer 2019-01-02 01:04:04 +00:00
Michael
1410d0a0cf
Remove byte* conversion operators from llarp::AlignedBuffer 2019-01-02 01:04:03 +00:00
Michael
58364a01c8
Remove array conversion operators from llarp::AlignedBuffer 2019-01-02 01:04:01 +00:00
Michael
334161c9bb
Remove data() conversions from llarp::AlignedBuffer 2019-01-02 01:03:53 +00:00
Jeff Becker
99ecefbdba
fixes issue #186 2018-12-28 10:10:05 -05:00
Jeff Becker
88d0e8883b
fix merge 2018-12-26 11:29:08 -05:00
Jeff Becker
49c898ed92
Merge remote-tracking branch 'origin/master' into staging 2018-12-26 11:27:11 -05:00
Jeff
b088c7eba5 Merge branch 'gh-master' 2018-12-24 16:15:22 -05:00
Jeff Becker
21d1998a38
add graceful stop for path builders and friends 2018-12-24 11:10:56 -05:00
Jeff Becker
e835c5f69a
add graceful stop for path builders and friends 2018-12-24 11:09:05 -05:00
Jeff
a1476b24e7 don't use dead sessions 2018-12-23 09:04:26 -05:00
Jeff
4b2a1ea9f3 make format and attempt to fix #158 2018-12-23 08:29:11 -05:00
Rick
d529b3f446
at least don't try to break anything
(the previous implementation aligned to uint64_t, the new one probably should do so as well)
2018-12-22 12:58:41 -06:00
Rick
8d147252b8
restore logging 2018-12-22 12:58:16 -06:00
despair
b3e8099838
bug fixes 2018-12-22 12:58:13 -06:00
Jeff Becker
8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev 2018-12-20 12:56:08 -05:00
Michael
037cb87523
Convert llarp::AlignedBuffer to be backed by std::array 2018-12-20 16:16:18 +00:00
Jeff Becker
01f2524145
flush ip packets such that they are sent same event loop tick 2018-12-20 08:04:00 -05:00
Jeff Becker
8e6046ff1c
order downstream packets 2018-12-20 07:41:39 -05:00
Jeff Becker
46bee291c2
order downstream packets 2018-12-20 07:41:17 -05:00
Jeff Becker
c5d4e37f59
make format 2018-12-17 15:47:08 -05:00
Jeff Becker
c454b5264c
Merge branch 'master' into dev 2018-12-17 08:25:27 -05:00
Ryan Tharp
db6945b6a0 fix debug spacing issue 2018-12-17 04:33:30 +00:00
Jeff Becker
b25223d1cc
Merge remote-tracking branch 'origin/master' into dev 2018-12-15 16:02:49 -05:00
Jeff Becker
b4d523a146
remove pedantic logging 2018-12-15 12:44:58 -05:00
Jeff Becker
64b2b9de08
eh 2018-12-15 12:41:38 -05:00
Jeff Becker
0f432456be
more 2018-12-15 12:39:15 -05:00
Jeff Becker
6df0f32093
log bad packets 2018-12-15 12:12:36 -05:00
Jeff Becker
98981c82cd
move packet flushing about 2018-12-15 11:56:35 -05:00
Jeff Becker
7ca82918b4
try setting tick 2018-12-15 11:43:17 -05:00
Michael
4257b62e88
Add .cpp files for all .hpp files 2018-12-15 16:21:52 +00:00
Jeff Becker
03cf865e45
don't use async job for flushing queue 2018-12-15 11:21:04 -05:00
Jeff Becker
be234e4b6e
* make format
* snode to snode direct traffic

* wire up dns on service node tun
2018-12-13 11:14:44 -05:00
Jeff Becker
bb0cd81f02
random.snode 2018-12-12 19:03:19 -05:00
Jeff Becker
cb685aaaab
remove unneeded logging 2018-12-12 15:39:31 -05:00
Jeff Becker
09e01adf32
flush snode traffic queues 2018-12-12 13:37:03 -05:00
Michael
85dde7b6b0
Move remaining include/llarp headers to llarp/ 2018-12-12 02:53:02 +00:00
Michael
e887b4e9c7
Move service* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
7a52638add
Move handlers* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
7be452092c
Convert llarp_crypto to be a true C++ class 2018-12-11 00:53:55 +00:00
Michael
f0fce5b68a
Convert llarp_router to be a true C++ class 2018-12-10 20:15:35 +00:00
Jeff Becker
fad734a5ce
strict types for pubkey, secretkey and routerid 2018-12-10 12:22:59 -05:00
Jeff Becker
eed62b2d7f
ensure exit router is known 2018-12-10 10:44:18 -05:00
Jeff Becker
a1887dd884
ensure exit router is known 2018-12-10 10:39:22 -05:00
Michael
30e9dca2e5
Convert llarp_logic to be a C++ class 2018-12-10 14:15:11 +00:00
Jeff
24886ad180
Merge pull request #115 from majestrate/dev
fix issue #114
2018-12-10 07:32:52 -05:00
Jeff Becker
f6dbeb363c
filter bogon ranges to exit 2018-12-10 07:27:17 -05:00
Jeff
0c8f9edfb6 always hook mx 2018-12-07 18:36:53 -05:00
Jeff
617617bb4f send reply if we have an address mapped 2018-12-07 17:46:30 -05:00
Jeff
88c3dd7c7a send reply 2018-12-07 17:08:23 -05:00
Jeff
3eb78b6118 add mx record for .loki 2018-12-07 16:52:19 -05:00
Jeff
9a9538bf30 send dns reply if we have a path already 2018-12-07 15:56:01 -05:00
Jeff Becker
f63045d5a4
Merge remote-tracking branch 'origin/master' into dev 2018-12-05 09:41:35 -05:00
Jeff Becker
0f7053f77b
cut logging 2018-12-04 11:22:28 -05:00
Jeff Becker
40678f9019
add dnslib unit test coverage 2018-12-04 11:16:43 -05:00
Jeff Becker
1d1bde2e88
add dnslib 2018-12-03 17:22:59 -05:00
despair
d26141d433 Merge branch 'dev' into reeeee-divergence
ok hope this works -rick

# Conflicts:
#	.gitignore
#	.vscode/settings.json
#	include/llarp/service/context.hpp
#	llarp/dns.cpp
#	llarp/dnsc.cpp
#	llarp/ev.cpp
#	llarp/ev.hpp
#	llarp/ev_win32.hpp
#	llarp/net.cpp
#	llarp/router.cpp
#	llarp/router.hpp
#	llarp/service/context.cpp
2018-12-03 12:24:56 -06:00
Jeff Becker
baa94ec345
make windows build happy 2018-12-03 09:39:30 -05:00
Jeff Becker
622ed8d12e
fix crash on premature close of event loop (also make format) 2018-12-02 13:07:07 -05:00
Jeff Becker
7bc3d94895
try fixing rdns for local interace's address 2018-11-30 09:14:30 -05:00
Jeff Becker
68faa14e3e
map local address for tun endpoint 2018-11-30 08:56:28 -05:00
Jeff Becker
79cffacafd
new exit packet buffer format 2018-11-29 16:19:20 -05:00
Jeff Becker
11372c9544
Merge branch 'dev' into snode-endpoint 2018-11-29 09:34:19 -05:00
Jeff Becker
85f9f46362
snode stubs (initial) 2018-11-29 08:12:35 -05:00
Jeff Becker
b9b7d3d1c7
better exit pad size 2018-11-28 13:18:08 -05:00
Jeff Becker
e6037ff060
pack exit traffic 2018-11-28 11:38:20 -05:00
Jeff
387d05282b
Merge pull request #58 from neuroscr/master
Major DNS refactor
2018-11-28 08:10:33 -05:00
Jeff Becker
75f5d748b6
Merge branch 'vanity' into dev 2018-11-28 07:33:03 -05:00
Jeff Becker
b004b9e2a1
fix up exit logic 2018-11-28 07:32:38 -05:00
Jeff Becker
e3e337b96f
Merge branch 'master' into dev 2018-11-26 17:53:42 -05:00
Jeff Becker
79040ef036
rx -> tx 2018-11-26 17:52:46 -05:00
Jeff Becker
7e4d74cbfc
add initial jni stuff for lokinet android. i fucking hate android so god damn much. 2018-11-26 17:46:22 -05:00
despair
65ff1ba991 reading from TUN using native async io:
writing: 
2018-11-26 11:10:18 -06:00
Ryan Tharp
7874567611 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-11-26 15:54:52 +00:00
Jeff Becker
25fac844eb
make format 2018-11-26 08:30:03 -05:00
Jeff Becker
a81b88cc93
Merge remote-tracking branch 'origin/master' into dev 2018-11-25 11:59:47 -05:00
Jeff
a33f334bc2 better exit path logic 2018-11-25 11:58:27 -05:00
Jeff Becker
c1e494c2c4
have llarp_ev_* use llarp_buffer_t 2018-11-23 09:37:26 -05:00
Jeff
067f6c7b26 make format and make it compile with clang 2018-11-22 12:53:53 -05:00
Ryan Tharp
1c6031c677 clang-format 2018-11-21 16:39:09 -08:00
Ryan Tharp
b69ef21bb4 fix another compile problem 2018-11-21 15:37:17 -08:00
despair
436025e0ca fix utp flags leaking into the actual socket transmission
clang-format
2018-11-20 06:11:51 -06:00
despair
d1fa9ca342 is the resulting storage a proper string, or just a plain char array (no terminator)
eh
2018-11-20 02:38:18 -06:00
Jeff Becker
3718a7d016
Merge remote-tracking branch 'github/master' into dev 2018-11-19 07:01:42 -05:00
Jeff
23c8807d59
Merge pull request #54 from neuroscr/master
DNS QoL improvements
2018-11-18 15:13:25 -05:00
Ryan Tharp
f03c41a99f Deprecate DNS_PORT as configureable in INI now. Reduce confusion as it would change DNSc port too and I believe it was meant only to change DNSd port. 2018-11-18 09:41:09 -08:00
Jeff Becker
e3dc4dca11
mark paths as dead when they need to and revert codel changes 2018-11-17 13:40:13 -05:00
Jeff Becker
8d613c182f
nullptr check 2018-11-15 18:07:39 -05:00
Jeff Becker
b56b3ad16d
don't remove ip mapping when endpoints are removed 2018-11-15 17:10:12 -05:00
Jeff Becker
17297837d9
that's dumb af, use std::unique_ptr 2018-11-15 16:47:05 -05:00
Jeff Becker
9d551ba768
more 2018-11-15 13:10:09 -05:00