Jeff Becker
c14993bc56
use llarp::path::default_len to inform how many routers we need
2019-08-13 08:40:22 -04:00
Michael
16cdfbd5f0
clang-tidy modernize pass
2019-08-12 16:52:58 +01:00
Jeff Becker
4f98535f84
more
2019-08-12 09:21:11 -04:00
Jeff Becker
a1fff96a1b
limit connections in outbound session maker
2019-08-12 08:40:38 -04:00
Jeff Becker
efa61f324f
include header
2019-08-12 07:27:46 -04:00
Jeff Becker
2345dd3239
try adding proper limits
2019-08-12 07:20:57 -04:00
Michael
d1990b5e93
Fix suspicious thread-unsafety
2019-08-08 00:18:56 +01:00
Jeff Becker
c1f33bb1ac
initial mempipe implementation
2019-08-07 12:33:29 -04:00
michael-loki
d6f2a1954f
Merge pull request #756 from michael-loki/fix_deadlock_on_error
...
Fix a deadlock when link fails to establish
2019-08-07 07:06:22 +01:00
Michael
be211926cf
Fix a deadlock when link fails to establish
2019-08-07 00:27:41 +01:00
Jeff
fc64b83c13
Merge pull request #752 from majestrate/master
...
always regen expired rc
2019-08-05 10:40:54 -04:00
Jeff Becker
70ddc84d3a
always regen expired rc
2019-08-05 09:39:27 -04:00
Michael
f9e9227e19
Fix gcc trunk warnings
2019-08-02 10:29:08 +01:00
Michael
4763888d2c
Add fail-able docker build for gcc trunk
2019-08-02 10:28:09 +01:00
Jeff
af74ee6f70
Merge pull request #737 from majestrate/add-link-layer-delivery-feedback
...
Add link layer delivery feedback
2019-07-28 18:21:56 -04:00
Jeff
c08f8361a3
Merge pull request #732 from tewinget/path-build-status-messages
...
Adds Link-Relay Status Messages
2019-07-28 18:21:43 -04:00
Jeff Becker
835b334a59
* increase utp buffers
...
* disallow inbound traffic on outbound utp link
* const correctness
2019-07-28 11:26:38 -04:00
Jeff Becker
16e6ab2193
propagate all utp link errors
2019-07-28 09:00:12 -04:00
Jeff Becker
503bea19cd
make travis happy
2019-07-28 08:35:07 -04:00
Jeff Becker
822f529be8
add link layer delivery feedback
2019-07-26 12:19:31 -04:00
Jeff Becker
972d4f8672
fix crash of clients and propagate lookup failures
2019-07-26 08:11:56 -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
011abde5ec
make travis happy again *and* don't break message sending
2019-07-25 15:04:48 -04:00
Thomas Winget
af2c960867
revert change that made travis happy because it broke things
2019-07-25 14:48:32 -04:00
Thomas Winget
5e0fc2bc71
change log level of message send success
2019-07-25 14:31:53 -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
a0f32fde13
reduce logging
2019-07-17 08:25:51 -04:00
Jeff Becker
4cc0c9b4d1
unconditional insert so that we dont run out of peers
2019-07-15 14:06:18 -04:00
Jeff Becker
c4ca61b76a
use static lookup timeout
2019-07-15 14:04:53 -04:00
Jeff Becker
86aabff256
only update if newer
2019-07-15 13:26:42 -04:00
Jeff Becker
b0d850afb5
durable write for nodedb
2019-07-15 13:19:31 -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
6882e627ba
make format
2019-07-12 10:07:12 -04:00
Jeff Becker
1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-12 09:53:52 -04:00
Jeff Becker
fcc3c05124
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-10 10:07:19 -04:00
Michael
488695047f
Remove redundant else blocks
2019-07-09 22:54:46 +01:00
michael-loki
0cd9b4c380
Merge pull request #687 from michael-loki/config_env
...
Allow environment variable override of config
2019-07-09 21:42:31 +01:00
Jeff Becker
5460cb5aa6
* pump after stopping hidden service context
...
* flush nodedb after stopping links
2019-07-09 15:44:53 -04:00
Jeff Becker
454fb3bb72
use logical or instead of bitwise or
2019-07-09 14:51:43 -04:00
Jeff Becker
ec6a1cfddc
make it compile
2019-07-09 09:58:16 -04:00
Jeff Becker
8ac9ef6f18
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-09 09:48:15 -04:00
Jeff Becker
b9bcc2b775
make threadpool consice
2019-07-09 09:47:24 -04:00
Michael
b01e5accbb
Add function to set threadname, and use from threadpool impl
2019-07-09 01:06:22 +01:00
Michael
3ce90b678e
Allow override of the rest of the config
2019-07-09 00:29:43 +01:00
Michael
fbb83704a0
Allow override of some config via env variables
2019-07-09 00:29:43 +01:00
Michael
08d306f6e9
Have fromSection return void
2019-07-09 00:29:43 +01:00
Michael
937f28f75d
Move router config to be encapsulated
2019-07-09 00:29:43 +01:00
Jeff Becker
0eb6431eb1
initialize tun with 0 and set defaults in correct places
2019-07-08 11:26:06 -04:00
Jeff Becker
58005c5f81
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-08 10:17:21 -04:00
Michael
6418c67f75
Set netid before doing anything else
2019-07-07 12:29:44 +01:00
Michael
661a8b6537
Fix macos build after rebase
2019-07-06 15:59:13 +01:00
Michael
f310160065
Fixup and add tests
2019-07-06 14:46:25 +01: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
191ebe32ce
actually set config for network
2019-07-02 09:33:36 -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
00c237dc6d
Move config class to its own dir
2019-07-02 01:58:38 +01:00
Jeff Becker
ef50c726b1
better logging
2019-07-01 08:55:01 -04:00
Jeff Becker
5eb7ec493f
do direct lookup when in endgame scenario as client when looking for router
2019-07-01 08:17:59 -04:00
Jeff Becker
a225759c0f
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-28 16:12:34 -04:00
Jeff Becker
eaab454e80
track drop in metrics
2019-06-28 15:28:59 -04:00
Jeff Becker
4e355327d8
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-26 09:12:19 -04:00
Jeff Becker
3038a13373
explore faster via all peers
2019-06-24 15:15:02 -04:00
Jeff Becker
228afcec7e
only kill rcs as client
2019-06-24 09:42:46 -04:00
Jeff Becker
5c61df08b5
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-20 10:35:51 -04:00
Jeff Becker
f56273eb6a
fix comparision
2019-06-20 10:01:34 -04: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
aadde2e9c6
save all nodedb entries in memory on exit
2019-06-17 10:23:38 -04:00
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
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
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