Commit Graph

1496 Commits

Author SHA1 Message Date
Michael
5aa7f49470
Move routing* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
b92ea0521b
Move router_contact.hpp to llarp/ 2018-12-12 02:53:01 +00:00
Michael
8877f60462
Move mem.hpp to llarp/ 2018-12-12 02:53:01 +00:00
Michael
a5c3ba0fdd
Move logger.hpp to llarp/ 2018-12-12 02:53:01 +00:00
Michael
30601720e9
Move linux* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
c0a76714fa
Move link* 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
0a08e53bde
Move exit* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
2d4f7c6b2d
Move encode.hpp to llarp/ 2018-12-12 02:53:01 +00:00
Michael
d9ce493a9e
Move dns* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
fddc8734d2
Move dht* to llarp/ 2018-12-12 02:53:01 +00:00
Michael
451bbedfaf
Move crypto.hpp to llarp/ 2018-12-12 02:53:01 +00:00
Michael
c064893947
Move buffer.hpp to llarp/ 2018-12-12 02:53:00 +00:00
Michael
f51384f92e
Move address_info.hpp to llarp/ 2018-12-12 02:53:00 +00:00
Michael
aa3b55302b
Remove dead address_info code 2018-12-11 23:58:58 +00:00
Jeff
c2e379809a
Merge pull request #131 from majestrate/dev
begin fixing issue #121
2018-12-11 13:20:49 -05:00
Jeff Becker
c9b014a6da
begin fixing issue #121 2018-12-11 13:19:53 -05:00
Jeff
f2c8b204c2
Merge pull request #129 from majestrate/dev
update introset when paths are dead
2018-12-11 10:54:59 -05:00
Jeff Becker
30a6a6bac6
always unset updatingIntroSet on response 2018-12-11 10:51:21 -05:00
Jeff Becker
d3348e8721
update introset if we have no good paths 2018-12-11 10:24:52 -05:00
Jeff
c058ea9dfc
Merge pull request #128 from majestrate/dev
use RouterID not bare pointer
2018-12-11 08:35:34 -05:00
Jeff Becker
f58c63547d
use RouterID not bare pointer 2018-12-11 08:33:23 -05:00
Michael
7be452092c
Convert llarp_crypto to be a true C++ class 2018-12-11 00:53:55 +00:00
Michael
6358b25db0
Convert llarp_nodedb to be a true C++ class 2018-12-10 23:31:39 +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
Jeff Becker
56fea3c4db
limiting on path building 2018-12-10 10:31:58 -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
31d86ae273 class must be 1 2018-12-07 17:13:42 -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
512d32ff30
attempt to fix crash 2018-12-07 08:38:49 -05:00
Jeff Becker
45dad97228
tick before expire 2018-12-06 13:01:04 -05:00
Jeff Becker
a303dbb4db
revert 2018-12-05 10:56:34 -05:00
Jeff Becker
f63045d5a4
Merge remote-tracking branch 'origin/master' into dev 2018-12-05 09:41:35 -05:00
Michael
7c1b224f67
Minor build fixes 2018-12-05 00:15:46 +00:00
Jeff Becker
e1ee2de38a
correctly encode response 2018-12-04 12:02:13 -05:00
Jeff Becker
1f104881be
unit testing for ptr 2018-12-04 11:52:48 -05:00
Jeff Becker
ebb42ca46f
fix previous commit 2018-12-04 11:37:15 -05:00
Jeff Becker
c27b7c2858
separate client/server in dns proxy 2018-12-04 11:35:25 -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
ba577345b3 oops bad merge 2018-12-03 14:37:25 -06:00
despair
f17c01a924 clang-format 2018-12-03 12:28:16 -06: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
a7bc4501a0
make dns unit test pass 2018-12-03 08:09:35 -05:00
Jeff Becker
afdbed427a
fix previous commits 2018-12-02 20:55:59 -05:00
Jeff Becker
b0e6d01ef3
limit link sessions to max of 16 2018-12-02 20:52:40 -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
82af91213a
build one 2018-12-02 10:26:26 -05:00
Jeff Becker
472948a610
more dns tweaks 2018-12-01 09:35:11 -05:00
Jeff Becker
34e65a3e9a
correct endian 2018-11-30 09:42:05 -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
2d83ad4637
try tiered packing based off size of packet 2018-11-29 10:45:27 -05:00
Jeff Becker
11372c9544
Merge branch 'dev' into snode-endpoint 2018-11-29 09:34:19 -05:00
Jeff Becker
e11e83c397
fix pathbuilder 2018-11-29 09:18:53 -05:00
Jeff Becker
7de2ce72ad
wire up snode to dns (maybe) 2018-11-29 09:01:13 -05:00
Jeff Becker
85f9f46362
snode stubs (initial) 2018-11-29 08:12:35 -05:00
Jeff Becker
90a2545bb1
handle SIGTERM 2018-11-29 08:12:28 -05:00
Jeff Becker
b9b7d3d1c7
better exit pad size 2018-11-28 13:18:08 -05:00
Jeff Becker
0a1712924f
flush 2018-11-28 12:58:46 -05:00
Jeff Becker
485eaa9995
correction 2018-11-28 12:33:36 -05:00
Jeff Becker
4fed76fbd9
don't discard 2018-11-28 12:29:29 -05:00
Jeff Becker
3e45980b13
send many on exit 2018-11-28 11:41:14 -05:00
Jeff Becker
e6037ff060
pack exit traffic 2018-11-28 11:38:20 -05:00
Jeff Becker
d25d35c06e
dht 2018-11-28 10:27:36 -05:00
Jeff Becker
10c2d1552d
don't connect to explored routers 2018-11-28 10:18:18 -05:00
Jeff Becker
ae1a81a767
disable strict-connect when service node 2018-11-28 10:01:17 -05:00
Jeff Becker
38c9633ca2
make bootstrap happen only when we have very few nodes
add strict-connect option
2018-11-28 09:58:38 -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
0147672416
more 2018-11-28 07:16:44 -05:00
Jeff Becker
b5f8660702
more 2018-11-27 16:54:06 -05:00
Jeff Becker
921d515d96
Merge branch 'vanity' into dev 2018-11-27 16:49:03 -05:00
Jeff Becker
3ae5c3fc54
set vanity nonce 2018-11-27 16:48:12 -05:00
despair
309ba48f95 !!! 2018-11-26 19:57:37 -06:00
despair
21fb70096f ??? 2018-11-26 19:36:46 -06:00
despair
551bf0d2bf fix TUN read pkt 2018-11-26 18:49:15 -06:00
Jeff Becker
91808a4ec7
locking 2018-11-26 19:02:32 -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
5351ea5e22
Merge pull request #83 from majestrate/master
better config settings for defaults
2018-11-26 08:41:28 -05:00
Jeff Becker
7e3038fc26
better config settings for defaults 2018-11-26 08:39:04 -05:00
Jeff Becker
25fac844eb
make format 2018-11-26 08:30:03 -05:00
Jeff Becker
62533dda1d
better config settings for defaults 2018-11-26 08:29:45 -05:00
despair
c17e30b587 clang from new-ci now defaults to libgcc as originally intended
add option to use the other runtime lib
2018-11-26 06:26:37 -06: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
83c1488dd6
Merge remote-tracking branch 'origin/master' into dev 2018-11-25 09:37:16 -05:00
Jeff
736b313c4c fix previous commit 2018-11-25 09:35:52 -05:00
Jeff Becker
f2a1539d9f
Merge remote-tracking branch 'origin/master' into dev 2018-11-25 09:34:12 -05:00
Jeff
05652af7a4 tick exit 2018-11-25 09:32:18 -05:00
Jeff Becker
c1e494c2c4
have llarp_ev_* use llarp_buffer_t 2018-11-23 09:37:26 -05:00
despair
09713adc9f wooo new warnings in clang-7 2018-11-22 20:13:31 -06:00
despair
60f6131e43 netbsd stuff 2018-11-22 20:02:24 -06:00
Michael
e4c5f4f77a
Update from typedef to using in .hpp files 2018-11-23 00:07:45 +00:00
Jeff
067f6c7b26 make format and make it compile with clang 2018-11-22 12:53:53 -05:00
Jeff Becker
5d0a9d7dc7
make format 2018-11-22 10:53:11 -05:00
Jeff Becker
0ac6deff00
logging, fix hidden services 2018-11-22 10:52:04 -05:00
Jeff Becker
104e9c7ec9
fix race 2018-11-22 10:02:51 -05:00
Jeff Becker
d064fc69d4
Merge remote-tracking branch 'origin/master' into dev 2018-11-22 09:33:41 -05:00
Jeff Becker
12a4022a56
make testnet compile 2018-11-22 09:29:10 -05:00
Jeff Becker
cf57eca7c3
check keyspace distance and inform not found when next peer is not closer than previous peer 2018-11-22 09:20:49 -05:00
Ryan Tharp
43d3b83e89 turn down log 2018-11-21 17:24:59 -08:00
Ryan Tharp
872945a910 additional recommended clean up from code review and clang-format 2018-11-21 17:18:14 -08:00
Ryan Tharp
1c6031c677 clang-format 2018-11-21 16:39:09 -08:00
Ryan Tharp
090fac7b4e Merge branch 'master' of https://github.com/loki-project/loki-network 2018-11-22 00:30:58 +00:00
Ryan Tharp
0046b705e8 generic_handle_dnsc_recvfrom() remove unneeded parameter, start making daemon/dns better, deprecate raw_handle_recvfrom() 2018-11-21 16:29:42 -08:00
Michael
cd0d9c5fe0
Fix broken assert :( 2018-11-22 00:19:52 +00:00
Jeff
b7f5bb0178 Merge branch 'dev' of ssh://github.com/loki-project/loki-network into dev 2018-11-21 19:02:00 -05:00
Ryan Tharp
d11ba89fbc Merge branch 'master' of https://github.com/loki-project/loki-network 2018-11-21 23:38:57 +00:00
Ryan Tharp
21eb79655a llarp_buffer_t conversion 2018-11-21 15:37:47 -08:00
Ryan Tharp
b69ef21bb4 fix another compile problem 2018-11-21 15:37:17 -08:00
Ryan Tharp
91f24b3d45 fix compile problem 2018-11-21 15:37:00 -08:00
Ryan Tharp
adab894ffe llarp_buffer_t conversion, decode the header one less time, move up where packet hdr is set, use emplace_back instead of push_back 2018-11-21 15:34:26 -08:00
Ryan Tharp
730fff7438 change casting, SOA type start, sang/micahel code review fixes 2018-11-21 15:32:43 -08:00
Ryan Tharp
638692f48a magic numbers to defs, llarp_buffer_t implementation, cleanup, Michael/Sang code review changes 2018-11-21 15:23:19 -08:00
Ryan Tharp
5d94125346 upgrade from_char_array to auto detection port 2018-11-21 15:07:23 -08:00
Michael
6ea0362167
Minor fixes for macOS build 2018-11-21 23:06:57 +00:00
Jeff Becker
67eadff143
node whitelist option via jsonrpc 2018-11-21 12:46:33 -05:00
Jeff Becker
c1377851a6
return bool when trying to establish link layer session 2018-11-21 09:56:12 -05:00
Jeff Becker
a202bc58a8
use correct path roles 2018-11-21 09:30:14 -05:00
Jeff Becker
130307bc94
build paths with correct role 2018-11-21 09:22:45 -05:00
Jeff Becker
94ad765b8e
don't use profiling if service node 2018-11-21 09:10:02 -05:00
Ryan Tharp
43e3bede6a Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-11-21 05:42:28 -08:00
Ryan Tharp
40522639ce Merge branch 'master' of https://github.com/loki-project/loki-network 2018-11-21 13:39:27 +00:00
Jeff Becker
5cbfccfff4
don't crash 2018-11-21 08:34:08 -05:00
Jeff Becker
2bd2815290
don't sign traffic 2018-11-21 07:31:36 -05:00
Ryan Tharp
da6621519d Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-11-20 11:52:36 -08:00
Ryan Tharp
efe86c2401 Merge branch 'master' of https://github.com/loki-project/loki-network 2018-11-20 19:32:12 +00:00
Jeff Becker
a3bb2c7d6a
actually start disk threadpool 2018-11-20 12:08:02 -05:00
Jeff Becker
1380014583
set hooks 2018-11-20 11:58:18 -05:00
Jeff Becker
ab5f477907
fix up leak 2018-11-20 10:46:26 -05:00
despair
906f11d08f gah how did i miss that 2018-11-20 09:38:46 -06:00
Jeff Becker
2e3adb48e3
add boilerplate for router whitelist via jsonrpc, disabled at the moment 2018-11-20 10:22:59 -05:00
Jeff Becker
a4c30a4b81
fix merge 2018-11-20 07:44:18 -05:00
Jeff Becker
b543d6243d
Merge branch 'master' into dev 2018-11-20 07:42:17 -05:00
Jeff Becker
a8ec8a4215
Merge remote-tracking branch 'origin/master' 2018-11-20 07:41:18 -05:00
Jeff Becker
336ef631b2
more logging, try expunging loose sessions more vigorously 2018-11-20 07:13:05 -05:00
despair
436025e0ca fix utp flags leaking into the actual socket transmission
clang-format
2018-11-20 06:11:51 -06:00
despair
964e834fea finally get the right error on windows
fix

fix up errno on win32

test
2018-11-20 02:38:24 -06:00
despair
55670b6f82 fill in PTR request if it's too short (some DNS clients do this, notable: Microsoft DNS Client 5.0) 2018-11-20 02:38:23 -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
despair
b9ab1f19a9 wooooo path builds work
update readme

fix gcc 8.x error
fix apple cross-clang someday
2018-11-20 02:38:02 -06:00
Michael
d21af22ca3
Rename defaults.h 2018-11-20 00:52:19 +00:00
Michael
d750ec0605
Rename logic.h 2018-11-20 00:52:19 +00:00
Michael
1c0cf72c02
Rename endian.h 2018-11-20 00:52:19 +00:00
Michael
f91d2b9e11
Rename proto.h 2018-11-20 00:52:19 +00:00
Michael
e39d02ddc2
Rename version.h 2018-11-20 00:52:19 +00:00
Ryan Tharp
f5c05289aa start SOA type record 2018-11-19 16:18:09 -08:00
Ryan Tharp
375c39e748 Merge branch 'master' of http://github.com/loki-project/loki-network 2018-11-19 23:44:42 +00:00
Ryan Tharp
3a8a90e440 make gcc 8.2 and RPI=1 happy 2018-11-19 23:42:04 +00:00
despair
c7d3e39c53 todo: check if we're adding a tun to the event loop
if so, add it to the listeners, but _not_ the epollfd
abstraction - epollfd takes _only_ sockets, and will reeeee
if you give it a file handle. fuck 16-bit Windows with a rusty
knife. In this case, we assume (like unix) that a file/device file
is _always_ ready to write
2018-11-19 16:57:26 -06:00
Michael
0b2ebc83e0
De-C-ify several .h headers 2018-11-19 22:45:37 +00:00
Jeff Becker
e287e5132b
more vigorus pings 2018-11-19 17:04:23 -05:00
Jeff Becker
950d13a818
more logging 2018-11-19 16:55:41 -05:00
Jeff Becker
bad32dbb98
more logging 2018-11-19 16:33:51 -05:00
Jeff Becker
c9fda1e5af
pass 2018-11-19 12:19:37 -05:00
Jeff Becker
3dd466629b
check for nullptr 2018-11-19 12:14:35 -05:00
Jeff Becker
90a4f90ee6
limit build rate a lot more 2018-11-19 11:48:35 -05:00
Jeff Becker
2e13daae27
start threadpool explicitly 2018-11-19 11:40:49 -05:00
Jeff Becker
4e105f3cd5
add std::optional backport option for cxx11 2018-11-19 11:31:12 -05:00
Jeff Becker
5357b4b69f
make clang happy, disable netns by default (for now) 2018-11-19 08:39:35 -05:00
Jeff Becker
3585a558ec
Merge branch 'master' into dev 2018-11-19 07:25:41 -05:00
Jeff Becker
9c54939324
make llarp_router::SendToOrQueue check inbound and outbound links instead of just inbound or just outbound 2018-11-19 07:25:03 -05:00
Jeff Becker
270e5648b8
Merge remote-tracking branch 'github/master' 2018-11-19 07:01:50 -05:00
Jeff Becker
3718a7d016
Merge remote-tracking branch 'github/master' into dev 2018-11-19 07:01:42 -05:00
Jeff Becker
d37daf7996
Merge branch 'master' into dev 2018-11-19 06:57:29 -05:00
Jeff Becker
7214f242e0
rip out old threadpool code 2018-11-19 06:56:40 -05:00
Michael
4c6f261b06
Use std::atomic<std::uint32_t> over std::atomic_uint32_t 2018-11-19 10:39:07 +00:00
despair
ae616d0fa5 minor fixes
eh

why apple why

why apple why
2018-11-19 04:29:39 -06:00
despair
be7ac352ca switch to a simulation of epoll
the native async event system on windows
is _not_ very good at getting external events
(i.e. we receive data, but we don't get any indication
that this ever happened)
2018-11-19 04:29:39 -06:00
despair
c325246beb need to start winsock to use any networking
try fixing this
2018-11-19 04:29:39 -06:00
despair
e18f786ab2 refactor event loop stuff
find some place in the C code to place the worker thread procedure
until such time that michael presents the new thread pool class

fix unix

get a new event port each time and delet in the event loop after use
2018-11-19 04:29:39 -06:00
Ryan Tharp
2daa986c33 fix static analysis issues 2018-11-18 15:56:59 -08:00
Ryan Tharp
de418125f2 remove redundance from (sockaddr) param refactor 2018-11-18 15:48:50 -08:00
Ryan Tharp
42b8fc3a7a don't truncate last 2 bytes 2018-11-18 15:41:32 -08:00
Ryan Tharp
969865c499 internal refactor
- created various structs for each record type
- changed DNSd to return most of the recieved packet (allowing for multiple answers)
- favor vector<byte_t> over c-style buffers
- support NS records a little better
- fixed output on cname, ptr, txt
2018-11-18 15:08:02 -08:00
Ryan Tharp
373a14b44b clang-format 2018-11-18 15:06:21 -08:00
Jeff
23c8807d59
Merge pull request #54 from neuroscr/master
DNS QoL improvements
2018-11-18 15:13:25 -05:00
Ryan Tharp
82cfa61540 address alphakamp complaint about using 127.0.0.1 on linux (systemd taking it by default) 2018-11-18 10:02:22 -08: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
930b41f644 temp commit 2018-11-18 12:00:02 -05:00
Jeff Becker
f5ac1b5c0d
Merge branch 'master' into dev 2018-11-18 07:43:13 -05:00
Michael
3c5e3e79f9
Create ThreadPool component with test suite 2018-11-17 21:13:34 +00:00