Commit Graph

181 Commits

Author SHA1 Message Date
Michael
edd0ec398f
Move thread stuff to subdirectory 2019-09-03 20:52:28 +01:00
Jeff Becker
3c3338e801
Merge remote-tracking branch 'origin/master' into memlink 2019-08-21 10:53:25 -04:00
Jeff
ecf3c37d2e
Merge pull request #768 from majestrate/sane-limits
Sane limits
2019-08-14 06:28:28 -04:00
Michael
16cdfbd5f0
clang-tidy modernize pass 2019-08-12 16:52:58 +01:00
Jeff Becker
a1fff96a1b
limit connections in outbound session maker 2019-08-12 08:40:38 -04:00
Jeff Becker
c1f33bb1ac
initial mempipe implementation 2019-08-07 12:33:29 -04:00
Thomas Winget
38fd0552d3 Adds Link-Relay Status Messages
Success case:
  - the path endpoint creates and sends a LR_StatusMessage upon
    successful path creation

Failure case:
  - an intermediate hop creates and sends a LR_StatusMessage upon
    failure to forward the path to the next hop for any reason

Both cases:
  - transit hops receive LR_StatusMessages and add a frame
    to them reflecting their "status" with respect to that path
  - the path creator receives LR_StatusMessages and decrypts/parses
    the LR_StatusRecord frames from the path hops.  If all is good,
    the Path does as it would when receiving a PathConfirmMessage.
    If not, the Path marks the new path as failed.

LR_StatusMessage is now used/sent in place of PathConfirmMessage
2019-07-25 17:46:56 -04:00
Thomas Winget
baf8019fe5 Refactor Router code into more classes
This commit refactors functionality from the Router class into separate,
dedicated classes.
There are a few behavior changes that came as a result of discussion on
what the correct behavior should be.
In addition, many things Router was previously doing can now be provided
callback functions to alert the calling point when the asynchronous
action completes, successfully or otherwise.
2019-07-25 14:11:02 -04:00
Jeff Becker
16e20a9e79
try fixing bootstrap 2019-07-15 12:56:09 -04:00
Jeff Becker
9a2ffb85e6
Merge remote-tracking branch 'origin/master' into ipv6-tun 2019-07-14 08:10:09 -04:00
Jeff Becker
0d0efe7007
try bailing when configration failed 2019-07-12 13:23:38 -04:00
Jeff Becker
4e4c0b85ce
change order of configuration 2019-07-12 13:21:29 -04:00
Jeff Becker
b9bcc2b775
make threadpool consice 2019-07-09 09:47:24 -04:00
Jeff Becker
58005c5f81
Merge remote-tracking branch 'origin/master' into ipv6-tun 2019-07-08 10:17:21 -04:00
Michael
a2326efa37
Revert "Merge pull request #679 from tewinget/revert-config-refactor"
This reverts commit 2996a7f29c, reversing
changes made to 10df3bd4b3.
2019-07-06 14:46:25 +01:00
Jeff Becker
c4aaa80e75
use sane defaults and deprecated "auto" as it's horribly bad style 2019-07-03 10:32:51 -04:00
Jeff Becker
ec1910b8ca
remove threadpool.hpp
make link layer not use null lock and null mutex
2019-07-02 15:01:14 -04:00
Jeff Becker
fc8f58822c
remove threadpool.hpp
make link layer not use null lock and null mutex
2019-07-02 15:00:24 -04:00
Thomas Winget
d044d60101 Reverts #678 #677 and #669 with hashes:
10df3bd
766ece8
979f095

See those commits for further details
2019-07-02 11:02:20 -04:00
Jeff Becker
a82be1d040
disable rpc by default 2019-07-02 09:19:28 -04:00
Michael
b51f7d8015
Convert to load config in config loader 2019-07-02 01:58:39 +01:00
Michael
68063b320c
Rename InboundMessageParser to LinkMessageParser 2019-06-19 21:48:25 +01:00
Michael
b89689fec3
Refactor path build code 2019-06-18 22:51:41 +01:00
Jeff Becker
6714b06470
json logging option 2019-06-13 09:26:34 -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
cacc73db7b
add rc expiration (again) 2019-06-04 09:19:45 -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
a375f1103f
explicitly lookup router if not connected to it on LRCM forward. 2019-05-27 15:01:09 -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
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
Michael
636bb2a17d
Convert router diskworker to use a modern ThreadPool 2019-05-18 23:04:08 +01:00
Jeff Becker
351c241c0f
more 2019-05-15 12:15:20 -04:00
Jeff Becker
a793eee4b7
fix 2019-05-15 11:56:50 -04:00
Jeff Becker
5d388bc9f2
meh 2019-05-15 11:54:26 -04:00
Jeff Becker
944eaedea6
aaaaaaA 2019-05-11 18:15:31 -04:00
Jeff Becker
ecc39428f6
count routers correctly 2019-05-09 11:36:39 -04:00
Jeff Becker
34533db620
add urgent build that builds over an existing path for an endpoint 2019-05-07 08:31:34 -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
01906c5d94 Merge remote-tracking branch 'origin/master' 2019-04-28 13:33:27 -04:00
Michael
9ee525a006
Fix shadowing warnings 2019-04-26 00:21:19 +01: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
3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format 2019-04-22 08:25:25 -04:00
Jeff Becker
57dc6cc965
make bundling rc in path builds configurable on runtime 2019-04-18 07:49:54 -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
e178a70929
use shared_ptr for event loop 2019-04-08 08:01:52 -04:00
Jeff
97b9c679b0 don't use bootstrap nodes for first hops in paths 2019-04-03 15:05:44 -04:00
Jeff Becker
965b0957ee
tweaks 2019-03-31 11:09:59 -04: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
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
Jeff Becker
7428855698
try fixing timeout bug after 6 or so hours 2019-02-20 07:09:18 -05:00
Jeff Becker
41bb83aaba
more 2019-02-19 08:32:26 -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 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
Michael
729cd045f1
Convert llarp::Router into an abstract base class 2019-02-06 09:59:47 +00: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
Jeff Becker
828f1f82d7
disable key rotation 2019-01-29 07:56:02 -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
cbfbdc506d
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging 2019-01-23 12:33:00 -05: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
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