Commit Graph

319 Commits

Author SHA1 Message Date
Jeff Becker
389c414ee3
add handover window to router contact updating 2019-06-17 10:02:12 -04:00
Jeff Becker
6ae9cf8c2e
store looked up routers 2019-06-17 09:05:27 -04:00
Michael
95646d2d87
Publish metric tags 2019-06-13 23:09:58 +01:00
Jeff Becker
6714b06470
json logging option 2019-06-13 09:26:34 -04:00
Jeff Becker
bbeda7c014
use timetamps 2019-06-10 08:51:45 -04:00
Jeff Becker
9ec41b8831
update RC expiration logic, lookup more often and remove stale entries 2019-06-10 08:47:21 -04:00
Jeff Becker
223f2702d3
Merge branch 'fix-big-ooooofff' 2019-06-06 06:53:54 -04:00
Jeff Becker
a33dbce680
try switching logic 2019-06-06 06:52:27 -04:00
Jeff Becker
92f8c059e9
please don't work 2019-06-05 16:25:45 -04:00
Jeff Becker
802fda4a1a
please don't work 2019-06-05 16:19:53 -04:00
Jeff Becker
c2803e3020
fix 2019-06-04 09:29:16 -04:00
Jeff Becker
cacc73db7b
add rc expiration (again) 2019-06-04 09:19:45 -04:00
Michael
75430a234c
Convert to use memFn 2019-06-02 22:19:10 +01:00
Jeff Becker
9deafa4cb8
use libuv 2019-06-02 17:17:05 -04:00
Jeff
674f272a46
Merge pull request #630 from majestrate/master
recent stability stuff
2019-05-29 08:20:25 -04:00
Jeff Becker
762a0c534f
Merge remote-tracking branch 'origin/master' 2019-05-29 08:09:02 -04:00
Michael
491fee206b
Port code to use CryptoManager over passing Crypto pointers 2019-05-28 20:45:08 +01:00
Jeff Becker
2897141036
make format and introduce new function EnsureRouter on router to check nodedb or do dht lookup 2019-05-28 07:35:26 -04:00
Jeff Becker
9c15f87da1
uncomment 2019-05-27 19:59:18 -04:00
Jeff Becker
fbf9b06685
* don't lookup routers in sendtoorqueue
* don't lookup routers that are not public when committing
2019-05-24 15:57:40 -04:00
Jeff Becker
5f55e53331
prefer inbound links over outbound links 2019-05-24 11:28:39 -04:00
Jeff Becker
72dbbd53d6
update docs and discard pending traffic on connect timeout to prevent memleak 2019-05-24 11:06:07 -04:00
Michael
3f53965b71
Remove all use of IBEncodeMessage 2019-05-24 03:01:36 +01:00
Jeff Becker
64c7ed42fc
make format 2019-05-22 12:20:50 -04:00
Jeff Becker
9c96aecf3f
move llarp::Logic to std::shared_ptr
add sequence numbers to HSD messages

begin work on network isolation code

add more docs
2019-05-22 12:20:03 -04:00
Jeff
65766a501f
Merge pull request #610 from michael-loki/more_thread_pool
Convert more things to use thread::ThreadPool
2019-05-19 17:16:14 -04:00
Michael
b11bd01637
Drain diskworker pool on close 2019-05-18 23:04:08 +01:00
Michael
636bb2a17d
Convert router diskworker to use a modern ThreadPool 2019-05-18 23:04:08 +01:00
Michael
19578fa8fc
Fix ASAN build 2019-05-18 16:34:03 +01:00
Jeff Becker
a4e90ee769
hax to make it work. 2019-05-16 14:55:12 -04:00
Jeff Becker
351c241c0f
more 2019-05-15 12:15:20 -04:00
Jeff Becker
5d388bc9f2
meh 2019-05-15 11:54:26 -04:00
Jeff Becker
0f6f03a77a
const 2019-05-14 13:35:01 -04:00
Jeff Becker
ec100cffee
attempt every time 2019-05-14 11:51:56 -04:00
Jeff Becker
4b79912dc8
more 2019-05-14 10:36:18 -04:00
Jeff Becker
d9463d534c
prevent crash 2019-05-14 10:27:12 -04:00
Jeff Becker
686fb311ad
null check 2019-05-12 17:21:18 -04:00
Jeff Becker
b5602228a3
don't kill nodes as service node 2019-05-12 13:54:30 -04:00
Jeff Becker
eb5afb41a1
connect out to committed routers if we don't have a session each tick 2019-05-12 10:09:26 -04:00
Jeff Becker
990acc1ff9
disable 2019-05-11 19:40:53 -04:00
Jeff Becker
944eaedea6
aaaaaaA 2019-05-11 18:15:31 -04:00
Jeff Becker
8018207e98
don't kill bootstrap 2019-05-11 16:53:08 -04:00
Jeff Becker
d7fb54c957
mor potatoe 2019-05-11 16:47:37 -04:00
Jeff Becker
6b28b46c78
potatoe 2019-05-11 15:48:17 -04:00
Jeff Becker
87bdfa6e78
aaaaaaaaaaAAAah 2019-05-11 11:10:17 -04:00
Jeff Becker
24a27df402
i am a potatoe 2019-05-11 10:56:11 -04:00
Jeff Becker
018dd008ec
add custom single threaded allocator for utp buffers
fix up test net stuff
2019-05-09 16:28:56 -04:00
Jeff Becker
ecc39428f6
count routers correctly 2019-05-09 11:36:39 -04:00
Jeff Becker
8853e1d3d8
when whitelisted chose random routers from whitelist 2019-05-09 08:31:10 -04:00
Jeff Becker
b68f539de6
limit outbound connections 2019-05-08 08:17:48 -04:00
Jeff Becker
779b1f4df5
more timeout tweaks and disable profiling on service nodes 2019-05-06 10:21:47 -04:00
Jeff Becker
728c6005a3
propagate strict-connect to tun handler for hooks 2019-05-06 08:42:21 -04:00
Jeff Becker
d423ee02d2
use shared_ptr 2019-05-03 09:15:03 -04:00
Jeff Becker
bb47d612b3
more 2019-04-30 12:07:17 -04:00
Jeff Becker
af62e051b5
gfdi 2019-04-25 08:57:26 -04:00
Jeff Becker
8282712eff
fug 2019-04-25 08:53:26 -04:00
Jeff Becker
4bda489437
add explicit enable/disable profiling option, try to always maintain outbound connections. 2019-04-25 07:00:18 -04:00
Jeff Becker
c5c28a528f
exit node tweaks 2019-04-23 14:29:42 -04:00
Jeff Becker
6711296b26
finish converting to shared_ptr 2019-04-23 12:13:22 -04:00
Jeff Becker
8484e29c9b
turn more stuff into std::shared_ptr
remove dead codepaths
2019-04-23 10:47:23 -04:00
Jeff Becker
3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format 2019-04-22 08:25:25 -04:00
Jeff Becker
2be3401e08
* refactor profiling function names
* utp link layer make ping less active, pre-emptive pump faster
2019-04-17 10:46:00 -04:00
Jeff Becker
524bed9d9b
move async bootstrap insertion 2019-04-16 12:50:47 -04:00
Jeff Becker
90e92c66c2
insert bootstrap nodes into nodedb and explore more 2019-04-16 12:44:51 -04:00
Jeff Becker
92d0a7083c
dht exploration implicitly makes a session so don't make more 2019-04-16 12:35:58 -04:00
Jeff Becker
9503cc66f0
add disk worker based file flusher logger
make format

remove package.json
2019-04-16 09:20:48 -04:00
Jeff Becker
a45d6db0e0
better profiling 2019-04-16 07:44:55 -04:00
Jeff
5834607997 * don't ban bootstrap nodes with profiling
* less vigorous profiling timeouts
* async remove rc from disk
2019-04-14 07:25:15 -04:00
Jeff Becker
5861f4aafa
* less vigorous profiling
* don't spam connections to bootstrap
2019-04-12 08:05:43 -04:00
Rick V
7a74631d38
add note for win32
trivia: specifiying 'syslog' in php for windows config causes php to write to the event log
we should do something similar here ig
2019-04-11 10:30:30 -05:00
Jeff Becker
fda7c4779e
make win32 work 2019-04-11 09:29:52 -04:00
Jeff Becker
351feadaec
make it work 2019-04-11 09:19:58 -04:00
Jeff Becker
40f8434851
syslog 2019-04-11 09:13:29 -04:00
Jeff Becker
9e24557429
refactor logger 2019-04-11 08:58:23 -04:00
Jeff Becker
5c1ec93375
only have clients kill router contacts in nodedb 2019-04-09 12:11:58 -04:00
Jeff Becker
7f25b62ef5
remove adding of defaults to upstream dns resolvers 2019-04-09 12:03:59 -04:00
Jeff Becker
264ec5bfa3
fix 2019-04-08 14:25:06 -04:00
Jeff Becker
dfa00e3415
fix exit address 2019-04-08 14:21:01 -04:00
Jeff Becker
e178a70929
use shared_ptr for event loop 2019-04-08 08:01:52 -04:00
Jeff Becker
c910a2a2fb
more 2019-04-05 10:58:22 -04:00
Jeff
97b9c679b0 don't use bootstrap nodes for first hops in paths 2019-04-03 15:05:44 -04:00
Jeff
38fed8e753 don't connect to bootstrap nodes when we don't need to 2019-04-03 09:59:15 -04:00
Jeff Becker
169d8beded
clear profiles on removal 2019-03-31 11:25:13 -04:00
Jeff Becker
965b0957ee
tweaks 2019-03-31 11:09:59 -04:00
Jeff Becker
ae786feab6
Merge remote-tracking branch 'origin/master' 2019-03-29 12:14:09 -04:00
Michael
561b997c93
Move IWP code to its own directory 2019-03-29 16:00:12 +00:00
Michael
17b39b0ed4
Move UTP code to its own directory 2019-03-29 16:00:12 +00:00
Jeff Becker
5af8d0a392
don't insert RCs in main thread 2019-03-29 11:08:31 -04:00
Jeff Becker
52d9cef79e
check for service node whitelist 2019-03-26 17:38:53 -04:00
Jeff Becker
b254c19c5f
more metrics 2019-03-26 16:04:41 -04:00
Jeff Becker
74534c22b8
mark profile success on outbound connection success, add default case in metrics 2019-03-26 11:27:14 -04:00
Michael
91f401ff71
Integrate metrics into router 2019-03-25 20:36:23 +00:00
Jeff Becker
549d49ee56
more 2019-03-25 16:04:34 -04:00
Jeff Becker
972a766557
try this 2019-03-25 16:01:45 -04:00
Jeff Becker
d4cb6808ec
more 2019-03-25 11:41:37 -04:00
Jeff Becker
0fa8325e4e
don't connect to self 2019-03-25 10:36:51 -04:00
Jeff Becker
fbb2c78d3c
async remove dead rc files when we think they are dead 2019-03-25 09:52:22 -04:00
Jeff Becker
7065b00c22
kill dead routers from nodedb and lessen logs 2019-03-25 09:07:19 -04:00
Jeff Becker
8a63533d1a
have service nodes maintain min connections
path building more robust selection
2019-03-25 08:52:32 -04:00
Jeff Becker
271f7f5b6d
don't connect to everyone as client 2019-03-22 10:37:37 -04:00
Jeff Becker
9d2ae0a5df
have service nodes build paths too >.> 2019-03-21 08:25:40 -04:00
Jeff Becker
136a01391e
fix message 2019-03-18 08:36:20 -04:00
Jeff Becker
7ebb49478e
remove dead code 2019-03-18 08:35:24 -04:00
Jeff Becker
990049f423
make rpc do basic auth and shit like that 2019-03-13 16:01:10 -04:00
Jeff
1a09a12ee0
Merge branch 'staging' into absl_mutex 2019-03-05 17:06:23 -05:00
Jeff Becker
8331449ab9
update profiles on path build 2019-03-04 12:03:18 -05:00
Michael
61f3273dc4
Add threading annotations and fix potential deadlocks 2019-03-04 00:03:52 +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
Jeff
d255ce50ac
Merge branch 'staging' into master 2019-02-28 08:55:45 -05:00
Ryan Tharp
1ec1b132ea Merge branch 'staging' of https://github.com/loki-project/loki-network 2019-02-27 21:21:42 -08:00
Ryan Tharp
f1ff247240 convert pubKey to RouterID 2019-02-27 21:11:52 -08:00
Jeff Becker
46b80e465d
* fix jsonrpc endpoint path for caller
* make epoll not crash and leak
* correct key name in config
2019-02-27 10:19:55 -05:00
Jeff Becker
f8d6becce8
make whitelist happy 2019-02-27 07:55:26 -05:00
Jeff Becker
ef13ec7499
Merge remote-tracking branch 'origin/staging' into staging 2019-02-26 07:55:27 -05:00
Jeff Becker
66e503b6aa
print snode not hex 2019-02-25 08:24:26 -05:00
Jeff Becker
88f988d142
use std::set 2019-02-25 08:03:34 -05:00
Jeff Becker
08d70e6d14
track client rcs 2019-02-25 07:46:40 -05:00
Michael
89ae60cfab
llarp::Context uses AbstractRouter now 2019-02-22 16:21:05 +00:00
Michael
13a9f65520
Fully define interface for dht::Context 2019-02-22 15:08:08 +00:00
Jeff Becker
f67ffaf900
fix typo 2019-02-20 07:22:39 -05:00
Jeff Becker
7428855698
try fixing timeout bug after 6 or so hours 2019-02-20 07:09:18 -05:00
Rick V
5a3947ca5c
clang-format 2019-02-18 17:58:12 -06:00
Jeff Becker
445ed05b32
make format 2019-02-18 14:44:41 -05:00
Jeff
f941025d7c
Merge pull request #319 from majestrate/staging
Staging
2019-02-18 07:09:55 -05:00
Jeff Becker
dfbd878dfb
Merge remote-tracking branch 'origin/staging' into staging 2019-02-18 06:51:33 -05:00
Michael
887fb4ac62
Replace insert(make_pair()) with emplace() 2019-02-18 10:35:23 +00:00
Jeff Becker
8d96c0945e
Merge remote-tracking branch 'origin/staging' into staging 2019-02-17 17:02:01 -05:00
Jeff Becker
90507337ce
compute number of connected routers 2019-02-17 16:08:14 -05:00
Michael
a00d6afc5e
Convert llarp_buffer_t to be a class with methods 2019-02-17 13:09:48 +00:00
Jeff Becker
b5a1637224
make shared lib compile 2019-02-15 17:55:52 -05:00
Jeff Becker
1d958d95de
* make rpc compile right
* make link sessions introspectable
* make utp write buffers fully flush each tick
2019-02-15 17:19:19 -05:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter 2019-02-14 22:31:31 +00:00
Jeff Becker
24de7f052a
make outbound port configurable on runtime 2019-02-11 13:40:20 -05:00
Jeff
555711b70d
Merge pull request #303 from michael-loki/no_new
Replace usage of new/delete with unique_ptr/stack allocation
2019-02-11 13:38:06 -05:00
Jeff Becker
46222df421
refactor 2019-02-11 12:14:43 -05:00
Michael
67b5d48095
Replace usage of new/delete with unique_ptr/stack allocation 2019-02-11 16:24:05 +00:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint 2019-02-08 14:43:25 -05:00
Jeff Becker
2f656de767
take in public-ip as parameter in addition to public-address 2019-02-07 09:30:43 -05:00
Michael
729cd045f1
Convert llarp::Router into an abstract base class 2019-02-06 09:59:47 +00:00
Jeff Becker
b7b346cc7c
make it compile 2019-02-04 18:18:43 -05:00
Jeff Becker
00eede9160
Merge remote-tracking branch 'origin/staging' into staging 2019-02-04 18:13:57 -05: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
Jeff Becker
c31c8ce889
Merge remote-tracking branch 'origin/staging' into staging 2019-01-31 07:56:54 -05:00
Ryan Tharp
70a7481ab7
Merge pull request #245 from majestrate/abyss_rpc_update
update libabyss rpc endpoints for service nodes
2019-01-29 14:00:47 -08:00
Ryan Tharp
f20ac0f6e9
Merge branch 'staging' into crypto_interface 2019-01-29 13:59:05 -08:00
Ryan Tharp
07f536efad
Merge pull request #249 from majestrate/enable-xi
enable exit info serialization
2019-01-29 13:58:17 -08:00
Jeff Becker
88285de3af
save new onion key 2019-01-29 08:20:27 -05:00
Jeff Becker
fd507e4194
fix hop selection and disable onion key rotation 2019-01-29 07:34:07 -05:00
Ryan Tharp
e94a7b88e7 fix typo in log message 2019-01-29 03:49:02 -08:00
Ryan Tharp
2ac41a226f delay autodetection to ev 2019-01-29 03:23:10 -08:00
Jeff Becker
4406ef9c9c
enable xi serialization 2019-01-28 08:52:18 -05:00
Jeff Becker
18c4107ff6
* wire up jsonrpc caller for lokid integration
* add jsonrpc caller http basic auth
2019-01-28 08:04:45 -05:00
Michael
f24f554a01
Convert llarp::Crypto into an abstract base class 2019-01-26 15:40:58 +00:00
Jeff Becker
e164970b00
make format 2019-01-24 10:14:54 -05:00
Jeff Becker
7bc0b5f82b
try addressing issue #233 2019-01-24 10:13:41 -05:00
Jeff
832ad942aa
Merge pull request #237 from despair86/dev
separate header and implementation
2019-01-23 15:27:19 -05:00
Jeff Becker
cbfbdc506d
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging 2019-01-23 12:33:00 -05:00
Rick V
3232a98b2c
clang-format, include <iterator>, fix size_type casts for ILP32 and LLP64 data models 2019-01-22 18:16:58 -06:00
Ryan Tharp
31f196a6eb
Merge pull request #236 from michael-loki/dht_tests
Add test suites for dht bucket, kademlia and key
2019-01-22 15:15:22 -08:00
Jeff Becker
da28fd9fab
apply lokid config section 2019-01-21 12:06:31 -05:00
Jeff Becker
d89e58199a
add initial identity key seed stuff
add more kubernetes stuff

make shared library installed if built
2019-01-21 10:45:18 -05:00
Michael
ccb5f6b696
Add tests for dht::TXOwnere 2019-01-19 18:16:40 +00:00
Ryan Tharp
c4c9197586 address Michael's code review (remove std::make_pair) and add note 2019-01-17 13:15:40 -08: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
41e8691702
make format 2019-01-17 09:02:50 -05: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
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic 2019-01-15 23:15:44 +00:00