Commit Graph

41 Commits

Author SHA1 Message Date
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
Michael
b6b400baef
Tidy up pathbuilder code 2019-06-20 17:35:40 +01:00
Michael
b89689fec3
Refactor path build code 2019-06-18 22:51:41 +01:00
Michael
491fee206b
Port code to use CryptoManager over passing Crypto pointers 2019-05-28 20:45:08 +01:00
Jeff Becker
13190284f7
double path build timeout 2019-05-23 09:38:31 -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
dd8a93a400
Apply rule of zero to code base 2019-05-19 23:11:07 +01:00
Jeff Becker
ad019cab71
add changes for review 2019-05-08 10:59:28 -04:00
Jeff Becker
9d466cd09d
pump only on send queue full and clear exit roles when closing exit 2019-05-08 08:50:33 -04:00
Jeff Becker
7b03b63d13
more sighup code 2019-05-07 14:15:22 -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
5fa85acaf7
rebuild exit paths if they die 2019-05-06 10:54:05 -04:00
Jeff
01906c5d94 Merge remote-tracking branch 'origin/master' 2019-04-28 13:33:27 -04:00
Michael
0b4d787042
More work on router docker image
- Multi-stage docker build (final image only 15MB!)
- Build in release mode
    - Fix bug with release mode
    - Fix compiler being dumb AF
    - Disable FORTIFY for now
- Enable LTO when making a staticly linked release
- Fix some gcc specific warnings
- Refactor cmake stuff into multiple files
2019-04-28 17:04:52 +01:00
Jeff Becker
af1529fa72
Merge remote-tracking branch 'origin/master' 2019-04-25 07:25:22 -04:00
Michael
4143472a17
Add cmake module to target a library as 'system', and fix a few warnings 2019-04-25 00:27:31 +01:00
Jeff Becker
6711296b26
finish converting to shared_ptr 2019-04-23 12:13:22 -04:00
Jeff Becker
99c29cf05a
prepare for ios/android jazz
move to use std::shared_ptr instead of bare pointers so we can
multithread everything.
2019-04-23 10:28:59 -04:00
Jeff Becker
5872573e91
rename Logic and Crypto functions to GetLogic and GetCrypto 2019-04-23 09:20:01 -04:00
Michael
98e691f315
Tidy up more parts of the service/ directory 2019-04-22 22:28:10 +01:00
Michael
e33a33635c
Remove usage of raw new from service classes 2019-04-22 18:38:29 +01:00
michael-loki
0195152e05 Allow builds on MSVC (#518)
* Import cxxopts to replace getopts usage

* Add visual studio build things

* Fixup abseil build parts

* Replace __attribute__((unused)) with ABSL_ATTRIBUTE_UNUSED

* Fixup minor windows build issues

* Replace getopts usage

* Temporarily fixup .rc files

* More minor windows fixes

* Get a working build

* Revert .rc files

* Revert changes to nodedb
2019-04-19 13:24:33 -05:00
Michael
c39c931d03
Remove IStateful virtual inheritance 2019-04-19 16:10:26 +01:00
Jeff Becker
c910a2a2fb
more 2019-04-05 10:58:22 -04:00
Jeff Becker
d4cb6808ec
more 2019-03-25 11:41:37 -04:00
Jeff Becker
dc36856922
try tweaking timeout 2019-03-20 21:19:30 -04:00
Jeff Becker
5d3833ef1a
fix dumb as shit path building that causes premature termiantion because of duplicate hops 2019-03-11 09:58:31 -04:00
Michael
61f3273dc4
Add threading annotations and fix potential deadlocks 2019-03-04 00:03:52 +00:00
Michael
e4cf1f245c
Convert most of llarp to use Printer 2019-02-24 23:46:44 +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
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
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
Michael
2de621b0ad
Disable copy constructing llarp_buffer_t 2019-02-01 01:58:13 +00:00
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic 2019-01-15 23:15:44 +00:00
Michael
79157414f3
Split crypto.hpp into 3 different files 2019-01-13 16:32:51 +00:00
Michael
04e0fe3ad7
Move crypto code to a subdirectory 2019-01-13 15:06:16 +00:00
Michael
081d4dfa32
Reorganise source into more folders 2019-01-11 01:19:49 +00:00