Stephen Shelton
4c499fb076
Make format
2020-02-20 08:36:29 -07:00
Stephen Shelton
dff9aeb250
Propagate Introset publishing redundantly
2020-02-19 17:07:46 -07:00
Jeff Becker
dc7828941f
add log statement
2020-02-19 17:06:13 -07:00
Jason Rhinelander
ac1486d0be
Replace absl::optional with optional-lite
...
Step 1 of removing abseil from lokinet.
For the most part this is a drop-in replacement, but there are also a
few changes here to the JSONRPC layer that were needed to work around
current gcc 10 dev snapshot:
- JSONRPC returns a json now instead of an optional<json>. It doesn't
make any sense to have a json rpc call that just closes the connection
with returning anything. Invoked functions can return a null (default
constructed) result now if they don't have anything to return (such a
null value won't be added as "result").
2020-02-19 18:21:25 -04:00
Jeff
20bc168d1c
Merge pull request #1093 from majestrate/toggle-publishing-introsets-2020-02-11
...
make publishing introsets optional
2020-02-19 11:50:41 -05:00
Jeff Becker
1874f439b7
add comment
2020-02-18 13:30:24 -05:00
Jeff Becker
e907d2ae19
handover fixes
2020-02-18 12:15:14 -05:00
Jeff Becker
f7f5d893a5
use endpoint path for lookup because outboundcontext does not implement pathset::HandleGotIntroMessage
2020-02-18 12:15:13 -05:00
Jeff Becker
c9866b6a0b
simplify
2020-02-17 15:47:57 -05:00
Jeff Becker
9aeee37347
short circuit
2020-02-17 15:44:23 -05:00
Jeff Becker
6a495dd090
ammend outbound context logic
2020-02-17 15:40:10 -05:00
Jeff Becker
02228ded08
spread out path builds
2020-02-17 15:24:18 -05:00
Jason Rhinelander
9e096d1996
Reduce introset publishing interal to 2.5min instead of 1.25min
...
We want to have some redundancy, but having 8 active at once seems
extreme; reduce to 4.
2020-02-17 12:28:34 -04:00
Jason Rhinelander
c3637c81fd
Remove another unused randomize parameter
2020-02-14 17:45:22 -04:00
Jason Rhinelander
24469daefb
Remove unused parameter
...
We always randomize now.
2020-02-14 17:45:18 -04:00
Stephen Shelton
9dfcfbc3ac
Bencode/decode relayOrder in lexigraphical order, make it uint64_t
2020-02-14 17:43:13 -04:00
Stephen Shelton
906803e387
Refactor DHT introset lookups to use redundant lookup strategy
2020-02-14 17:43:13 -04:00
Jeff Becker
4d4b33607f
dont use optional
2020-02-14 17:43:13 -04:00
Jeff Becker
23bcfa4abb
revert change
2020-02-14 17:43:13 -04:00
Jeff Becker
df8c56343d
refactor GetManyPathsWithUniqueEndpoints to go into service/endpoint_util.hpp
2020-02-14 17:43:13 -04:00
Jeff Becker
fc5e6b4d77
log location
2020-02-14 17:43:13 -04:00
Jeff Becker
3cc2adae31
paralell publish and lookups
2020-02-14 17:43:13 -04:00
Jeff Becker
e30c720446
redundant publish for service endpoint
2020-02-14 17:43:11 -04:00
Jeff Becker
2b6f27d60d
remove connect back logic for dead inbound sessions
2020-02-14 13:12:45 -05:00
Jeff
671c765161
Merge pull request #1085 from majestrate/check-for-initial-current-introset-2020-02-06
...
check for current introset being zero (initial state)
2020-02-12 11:44:39 -05:00
Jeff Becker
792fd4132c
only make default endpoint non-reachable if no keyfile option presented
2020-02-12 09:56:36 -05:00
Jeff Becker
6c67cc1f01
make default endpoint non reachable by default
2020-02-12 09:54:59 -05:00
Jeff Becker
70eb353c42
make publishing introsets optional using reachable=false to disable
2020-02-11 16:48:36 -05:00
Jeff Becker
5b87a9419e
default recursion depth to 2 not 12
2020-02-07 14:55:08 -05:00
Jeff Becker
8c698a1cd1
* rename i to foundIntro
...
* check for zero timestamp
* use > not >=
2020-02-06 14:35:31 -05:00
Jeff Becker
41210a8ae1
check for current introset being zero (initial state)
2020-02-06 14:23:23 -05:00
Stephen Shelton
37e4f26be1
s/LogInfo/LogDebug @ 'signed/verify encrypted introset'
2020-02-06 12:05:43 -07:00
Jeff Becker
e6174efa21
don't derive x25519 key from ed25519 key
2020-02-03 17:21:31 -05:00
Jason Rhinelander
f1171ed7a2
make format 😠 🤮
2020-01-31 17:05:50 -04:00
Jason Rhinelander
46f3459b79
Fixed EncryptedIntroSet signing to use PrivateKey
...
We can generate both root and derived signatures from a PrivateKey, but
only root from a SecretKey, so just change it to use a PrivateKey.
2020-01-31 16:47:25 -04:00
Jason Rhinelander
860c5efd47
Derived key fixes
...
The reason things weren't working here is because libsodium does
something completely unintuitive and called the seed the "secret key"
when it isn't, it's the seed.
This adds a new PrivateKey class (alongside the existing SecretKey and
PubKey) that holds just a private key value but no seed -- which we need
to do because there is no way we can get a seed after calculating a
derived keypair.
With these changes, we now generate exactly the same keys and subkeys as
Tor (and a new test case uses values generated in Tor to verify this).
This is incomplete -- the subkey signing code is still not implemented;
it has to be adapted to create a signature from a PrivateKey rather than
a SecretKey which will probably requiring working around/reimplementing
some of what libsodium does for creating a signature since it expects
"secret keys" i.e. the seed.
2020-01-30 12:34:05 -04:00
Jeff Becker
0f13591802
does not work
2020-01-28 16:55:36 -05:00
Jeff Becker
99eb7726ff
initial dht key blinding
2020-01-27 16:30:41 -05:00
Jeff Becker
e87b754906
fix recursion depth on introset lookup
2020-01-23 12:10:58 -05:00
Jeff Becker
2c0dc12f39
refactor single char variables in DHT (mostly)
2020-01-23 12:10:58 -05:00
Jeff Becker
3b66cf6e75
dht fixes, disable iterative lookups on clients, revert "fixes" from 0.6.3, pass in recursion depth from introset lookup
2020-01-22 17:08:05 -05:00
Jeff Becker
a17b5f25b5
check for zero'd rc
2020-01-15 10:43:21 -05:00
Jeff
0e2c5736a8
Merge pull request #1034 from majestrate/dht-timeout-fixes-2020-01-10
...
dht timeout tweak
2020-01-10 17:35:56 -05:00
Jeff
0ad2809ac7
Merge pull request #1033 from majestrate/prevent-segfault-2020-01-10
...
prevent segfault
2020-01-10 17:35:49 -05:00
Jeff Becker
8bb492da6e
dht timeout tweak
2020-01-10 10:45:25 -05:00
Jeff Becker
77f0944d6d
use shared_from_this
2020-01-10 07:35:00 -05:00
Jeff Becker
78e325c4c5
always lookup introset from nearest router
2020-01-09 07:21:38 -05:00
Jeff Becker
2d82e931da
try doing lookup from close router, randomize when above lookup threshold
2020-01-09 06:26:41 -05:00
Jeff Becker
8a5365d9a6
diversify endpoints
2020-01-07 13:00:15 -05:00
Jeff Becker
c1ad5f955a
remove mutex
2020-01-07 12:59:30 -05:00
Jeff Becker
3147e2d357
shuffle intros when more than 1 exists
2020-01-03 14:50:12 -05:00
Jeff Becker
b3ad65f470
randomize intro order on shift
2020-01-02 17:08:45 -05:00
Jeff Becker
79badd6714
* clients expore dht faster
...
* use random path when doing dht lookups for .loki
2020-01-02 16:37:17 -05:00
Jeff Becker
5ae428a114
Revert "remove call to link manager"
...
This reverts commit 3dd36fa11a
.
2019-12-30 11:13:17 -05:00
Jeff Becker
a5121c346c
remove call to link manager
2019-12-30 11:13:17 -05:00
Jeff Becker
d1a29884df
client side perf improvement
2019-12-30 11:13:17 -05:00
Jeff Becker
79c3c748e4
limit number of snode sessions client side
2019-12-30 05:19:03 -05:00
Jeff Becker
8b8d636ded
make format
2019-12-22 09:16:28 -05:00
Thomas Winget
71bb0dd520
implement timers using libuv
...
So far only a bit of the code using timers has been modified to use
the new libuv-based timers. Also only the non-Windows case has been
implemented. Seems to be working though, so it's a good time to commit.
2019-12-18 13:11:13 -05:00
Jeff Becker
7f6d1ebb92
fix slow start bug
2019-12-14 13:50:52 -05:00
Stephen Shelton
5d3cb8f405
Include error code in log output in Identity::EnsureKeys()
2019-12-12 10:09:57 -07:00
Stephen Shelton
2c6226f54a
Backup SNApp keys when migrating to new ed25519 crypto
2019-12-06 11:21:14 -07:00
Stephen Shelton
66a058a2af
Make format
2019-12-06 10:13:09 -07:00
Stephen Shelton
93b8832026
Merge branch 'dev' into private-keys-backup-support
2019-12-03 11:20:45 -07:00
Jeff Becker
28a2d471d6
style nitch
2019-11-29 19:11:14 -04:00
Jeff Becker
44e0e2c034
dont flood the logic queue
2019-11-29 19:11:14 -04:00
Jeff Becker
0828307906
fix address mapping bug
2019-11-29 19:11:14 -04:00
Jeff Becker
8849173112
try async decrypt then verify
2019-11-29 19:11:14 -04:00
Jeff Becker
285a9a1dd5
prevent segfault
2019-11-29 19:11:14 -04:00
Jeff Becker
ba0fd223d9
reduce number of jobs we put onto the logic thread
2019-11-29 18:45:06 -04:00
Jeff Becker
56dce90de9
add trace log level for tracking logic thread jobs
2019-11-22 16:23:19 -05:00
Stephen Shelton
db56e17c23
Rename bencode function for clarity
2019-11-22 14:14:37 -07:00
Jeff Becker
1a864832c8
make format
2019-11-14 10:07:40 -05:00
Thomas Winget
23a9773e1e
remove our paths from outbound queues
2019-11-07 13:23:14 -05:00
Jeff Becker
2c5561fc3c
make format
2019-11-05 12:01:34 -05:00
Jeff Becker
7ee026fa50
make path builds work again
2019-11-05 11:58:53 -05:00
Jeff Becker
2bf1e4f46a
enable IOS on IOS
2019-10-30 09:33:23 -04:00
jeff
c26b67c379
finish wiring up jni shizz
2019-10-08 10:52:01 -04:00
jeff
52757fef0e
Merge remote-tracking branch 'micheal/background_mode' into vpn-api-2019-10-03
2019-10-04 14:10:58 -04:00
jeff
32ed821763
Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography
2019-10-01 10:51:28 -04:00
jeff
f9fb40f590
final touches
2019-09-20 12:56:19 -04:00
jeff
7c691cf334
handover should be fixed now
2019-09-19 16:28:12 -04:00
Jeff Becker
993e4c2637
try fixing handover
2019-09-19 14:34:41 -04:00
jeff
6c2ebbb925
try fixing handover and add snapp traffic to multithreaded crypto workers
2019-09-19 10:41:31 -04:00
Jeff Becker
327c545530
finish multithread cryptography first pass
2019-09-16 12:12:05 -04:00
jeff
14c9ef15ed
try calling stuff in logic thread from event loop
2019-09-16 06:21:12 -04:00
Jeff Becker
1adae338ce
Merge remote-tracking branch 'origin/master'
2019-09-04 07:58:02 -04:00
Michael
edd0ec398f
Move thread stuff to subdirectory
2019-09-03 20:52:28 +01:00
Michael
4d8fe2a8a8
Move meta programming to subdirectory
2019-09-03 20:52:28 +01:00
Michael
1aec0dfa2b
Move logging to subdirectory
2019-09-03 20:52:27 +01:00
Jeff Becker
c01112e4b7
tracy lock contention testing and other fun things
2019-09-03 11:56:56 -04:00
Jeff
093021ef99
try fixing handover drop bug
2019-09-02 12:44:08 -04:00
Jeff Becker
eabbb83149
use estimated build time instead of expiration time for delta when determining when to space out builds
2019-08-27 16:07:09 -04:00
Jeff Becker
e0424a91a7
bump path build handover window, check cooldown on build.
2019-08-27 16:00:00 -04:00
Jeff Becker
3c3338e801
Merge remote-tracking branch 'origin/master' into memlink
2019-08-21 10:53:25 -04:00
Michael
094b697b01
Replace StatusObject with underlying JSON type
2019-08-19 10:33:26 +01:00
Michael
16cdfbd5f0
clang-tidy modernize pass
2019-08-12 16:52:58 +01:00
Jeff Becker
fdbb2e8dc8
make format
2019-08-09 08:17:01 -04:00
Jeff Becker
847fcdf5f3
move convotag missmatch check to the right place
2019-08-09 08:16:20 -04:00
Michael
84601fa474
Make format
2019-08-08 00:26:40 +01:00
Michael
d1990b5e93
Fix suspicious thread-unsafety
2019-08-08 00:18:56 +01:00
Jeff
da4f1ddb0a
Merge pull request #757 from majestrate/master
...
don't expire based on reply intro
2019-08-07 17:15:46 -04:00
Jeff
c2c4f61ded
don't expire based on reply intro
2019-08-07 16:50:15 -04:00
Jeff Becker
c1f33bb1ac
initial mempipe implementation
2019-08-07 12:33:29 -04:00
Jeff Becker
e3d13fc2a0
drop missmatched convotags
2019-08-06 17:37:34 -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 Becker
db2206664a
fix crashes in testnet
2019-07-29 11:10:20 -04:00
Jeff Becker
7a3c8e5ca0
set limits correctly
2019-07-18 12:32:26 -04:00
Jeff Becker
f48754c45d
make hop count and length configurable
2019-07-18 12:28:17 -04:00
Jeff Becker
d465400840
revert
2019-07-18 09:34:46 -04:00
Michael
5cef2865bd
Fix Ubuntu builds
2019-07-15 22:46:57 +01:00
Michael
e52492911d
Refactor endpoint state management to a new class
2019-07-15 10:15:51 +01:00
Jeff Becker
1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-12 09:53:52 -04:00
Michael
488695047f
Remove redundant else blocks
2019-07-09 22:54:46 +01:00
Jeff Becker
b9bcc2b775
make threadpool consice
2019-07-09 09:47:24 -04:00
Jeff Becker
0eb6431eb1
initialize tun with 0 and set defaults in correct places
2019-07-08 11:26:06 -04:00
Jeff Becker
fd911d0c52
make format
2019-07-08 10:22:47 -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
6467d21ba0
* fix testnet codepath
...
* add packet info for osx
2019-07-05 10:13:58 -04:00
Jeff Becker
81cab62bb9
* fix testnet codepath
...
* add packet info for osx
2019-07-05 08:07:06 -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
Michael
b51f7d8015
Convert to load config in config loader
2019-07-02 01:58:39 +01:00
Michael
bd78471dae
Move ini parser as well
2019-07-02 01:58:38 +01:00
Jeff Becker
5874c38b38
swap path on inbound convo if expires soon
2019-07-01 17:35:49 -04:00
Jeff Becker
f211ff182a
pick ready paths for reply
2019-07-01 16:45:00 -04:00
Jeff Becker
d6ec528a72
start work on seperating ips out of endpoint
2019-07-01 10:56:56 -04:00
Jeff Becker
64e9622270
start seperating tun and endpoint
2019-07-01 09:44:25 -04:00
Jeff Becker
fbf01bd129
fix order
2019-06-28 11:56:25 -04:00
Jeff Becker
1061ae4fee
set outbound context to be outbound session
2019-06-28 11:53:29 -04:00
Jeff Becker
0146a967d0
fix convotag inbound state setting
2019-06-28 11:49:29 -04:00
Jeff Becker
6ab3678f5c
correct comparison
2019-06-28 11:39:54 -04:00
Jeff Becker
5c8b17154c
swap intros only on path build success
2019-06-28 11:32:47 -04:00
Jeff Becker
4734fa91fe
check for zero
2019-06-28 11:31:02 -04:00
Jeff Becker
f66e37ca37
oooof
2019-06-28 11:27:53 -04:00
Jeff Becker
289eb2a04c
fix previous commit
2019-06-28 11:23:39 -04:00
Jeff Becker
5c679a10e8
outbound context build more
2019-06-28 11:19:12 -04:00
Jeff Becker
6bca652182
choose first timestamp
2019-06-28 10:48:00 -04:00
Jeff Becker
0b90acff75
handle reply intro
2019-06-28 10:12:20 -04:00
Jeff Becker
8830ac8fac
tweak
2019-06-26 09:09:40 -04:00
Jeff Becker
ba6f9ed2d7
continue using llarp::openfilestream
2019-06-24 12:51:29 -04:00
Jeff Becker
54a098356d
continue using llarp::openfilestream
2019-06-24 12:39:03 -04:00
Jeff Becker
b0612e2ee1
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-21 11:23:53 -04:00
Michael
b6b400baef
Tidy up pathbuilder code
2019-06-20 17:35:40 +01:00
Jeff Becker
5c61df08b5
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-20 10:35:51 -04:00
Michael
08609f9e5a
Rename message files
2019-06-19 23:30:07 +01:00
Michael
8a058fcb34
Move other messages
2019-06-19 21:35:57 +01:00
Michael
d6751e3eeb
Move subset of messages to right directory
2019-06-19 21:35:26 +01:00
Jeff Becker
2557a9ab25
check for expiration
2019-06-18 08:58:22 -04:00
Jeff Becker
cd05fa6150
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-06-18 08:46:35 -04:00
Rick V
c6c31efec9
make format
2019-06-17 23:29:54 -05:00
Jeff Becker
30f6a8ccd2
make format
2019-06-17 09:05:37 -04:00
Jeff Becker
9c24fc15a8
try not spamming network with builds
2019-06-17 08:43:16 -04:00
Jeff Becker
5853e5e3f4
pass in path
2019-06-14 09:13:06 -04:00
Jeff Becker
a323003824
differentiate between inbound and outbound convos
2019-06-14 08:49:45 -04:00
Jeff
b857be3d02
Merge pull request #639 from majestrate/master
...
[WIP] libuv
2019-06-13 09:27:42 -04:00
Jeff Becker
d8aebf36fb
swap intros on message rejection
2019-06-12 10:30:47 -04:00
Jeff Becker
1883c63997
swap intros on message rejection
2019-06-12 10:27:25 -04:00
Jeff Becker
2403ab8f86
ipv6
2019-06-11 12:44:05 -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
73c1538518
fix
2019-06-06 07:16:03 -04:00
Jeff Becker
f7ccbf0c78
eh
2019-06-06 07:10:18 -04:00
Jeff Becker
f8e2edae28
fix
2019-06-06 07:06:34 -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
f8026b8a2d
use latest tag not oldest tag in inbound convos
2019-06-04 09:53:50 -04:00
Jeff Becker
39b1f104a8
revert
2019-06-04 09:43:49 -04:00
Jeff Becker
471a4bf6dd
use reply intro for inbound sessions
2019-06-04 09:34:24 -04:00
Michael
75430a234c
Convert to use memFn
2019-06-02 22:19:10 +01: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
d113f06ebd
use for each loop
...
don't lookup expired routers we don't need that right now
2019-05-25 10:11:40 -04:00
Michael
3f53965b71
Remove all use of IBEncodeMessage
2019-05-24 03:01:36 +01:00
Jeff Becker
8b2dd72472
Merge remote-tracking branch 'origin/master'
2019-05-23 09:21:31 -04:00
Jeff Becker
41523b934c
more
2019-05-23 09:13:03 -04:00
Jeff Becker
2ac89c0afb
DRY
2019-05-23 08:22:48 -04:00
Michael
d49e57aa8d
Fix thread safety issue in service::Endpoint::ProcessDataMessage
2019-05-22 21:28:17 +01:00
Jeff Becker
e85cc1bc8a
fix
2019-05-22 13:47:33 -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
Michael
a83be769e2
More explicit error when keyfile is not a valid file
2019-05-18 18:34:25 +01:00
Jeff Becker
5f823f8ba3
fix
2019-05-17 07:41:11 -04:00
Jeff Becker
a954f2000e
shift introduction
2019-05-17 07:36:08 -04:00
Jeff Becker
8da3b51589
more hax
2019-05-17 07:18:42 -04:00
Jeff Becker
81f73bccc2
pick newer intros only
2019-05-16 19:37:32 -04:00
Jeff Becker
f832c9a593
use shared_ptr
2019-05-11 10:13:35 -04:00
Jeff
e21f1020ee
don't std::move
2019-05-11 08:48:54 -04:00
Jeff
06f8bb2f42
add blacklist-snode option
2019-05-10 12:19:33 -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
85fcb4bd84
fix it up
2019-05-09 11:54:22 -04:00
Jeff Becker
1d74585637
don't crash when we get no routers from lookup
2019-05-09 11:51:21 -04:00
Jeff Becker
3821b4801c
fix intro section to not use first hop as intro
2019-05-08 10:54:03 -04:00
Jeff Becker
e7a40ac4e5
Revert "permit outbound context to select an intro who is a first hop."
...
This reverts commit c8c00e2d9f
.
2019-05-08 10:49:09 -04:00
Jeff Becker
c8c00e2d9f
permit outbound context to select an intro who is a first hop.
2019-05-08 10:43:56 -04:00
Jeff Becker
df322e1149
don't include duplicate hops in paths
2019-05-08 10:01:31 -04:00
Jeff Becker
7b03b63d13
more sighup code
2019-05-07 14:15:22 -04:00
Jeff Becker
a53da68700
start work on sighup
2019-05-07 13:46:38 -04:00
Jeff Becker
dee639500a
set intro
2019-05-07 10:11:10 -04:00
Jeff Becker
e08c8bf919
correct timeout for dht request
2019-05-07 09:19:36 -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
Michael
1744ae7686
Tidy up service endpoint a bit more
2019-05-07 09:29:47 +01:00
Jeff Becker
b02a3715df
call hook on timeout
2019-05-05 10:42:13 -04:00
Jeff Becker
fc3db98e66
change log priority
2019-05-05 10:15:48 -04:00
Jeff Becker
d423ee02d2
use shared_ptr
2019-05-03 09:15:03 -04:00
Jeff Becker
986e831579
make bundle-rc option configurable on snode tld
2019-05-02 14:11:44 -04:00
Jeff Becker
e0892f7d23
gfdi
2019-05-02 12:33:53 -04:00
Jeff Becker
407f895c86
ooff
2019-05-02 12:31:08 -04:00
Jeff Becker
5b49008bca
more
2019-05-02 12:23:31 -04:00
Jeff Becker
a97e1e37a7
dont filter intros they are already good
2019-05-02 09:47:22 -04:00
Jeff Becker
e060082441
hook every dns for .loki and .snode when applicable
...
make {n,h}uint{32,16}_t templated type.
2019-05-01 09:40:10 -04:00
Jeff
59e6a4bc3d
make snode work again probably
2019-04-30 17:36:27 -04:00
Jeff Becker
20ba2c7b8c
try not to die
2019-04-30 12:57:59 -04:00
Jeff Becker
cde4fcc00a
queue pending traffic
2019-04-30 12:49:34 -04:00
Jeff Becker
bb47d612b3
more
2019-04-30 12:07:17 -04:00
Jeff Becker
0b68d3db5d
move stuff arround so that flushing queues are done in the correct event loops
...
TODO: locking
2019-04-30 11:09:42 -04:00
Jeff Becker
2a7ebce8f4
Merge remote-tracking branch 'origin/master'
2019-04-30 11:01:13 -04:00
Jeff Becker
5e0acc1197
separate upstream/downstream flush
2019-04-30 09:56:39 -04:00
Jeff Becker
d50b18d7b0
try fixing leak also make format
2019-04-30 08:22:15 -04:00
Michael
725ee293c1
Refactor well named functionality in service::Endpoint into new struct
2019-04-30 02:06:31 +01:00
Jeff
27fac68716
fix
2019-04-28 14:22:38 -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
c3c26df6e3
Merge branch 'master' of ssh://github.com/majestrate/loki-network
2019-04-27 07:51:47 -04:00
Jeff
5305ef5974
use iterative lookups for sercice address lookups
2019-04-27 07:13:16 -04:00
Jeff Becker
f7dc67b189
use std::set
2019-04-26 09:02:08 -04:00
Jeff Becker
09f706b9cd
fix
2019-04-26 08:17:50 -04:00
Jeff Becker
fea64eaf12
handle subdomains
2019-04-26 08:14:29 -04:00
Jeff Becker
d20ba9ceab
handle subdomains
2019-04-26 08:11:34 -04:00
Michael
9ee525a006
Fix shadowing warnings
2019-04-26 00:21:19 +01:00
Jeff Becker
0529e45ebe
more
2019-04-25 13:15:56 -04:00
Jeff Becker
af1529fa72
Merge remote-tracking branch 'origin/master'
2019-04-25 07:25:22 -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
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
5921086391
common codepath for sending protocol frames
2019-04-23 13:35:20 -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
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
Jeff Becker
a2912ff860
Merge remote-tracking branch 'origin/master'
2019-04-23 09:12:36 -04:00
Michael
3a8715d8e4
Fix introset tests
2019-04-23 10:25:03 +01:00
michael-loki
e36ddfb093
Fixup casing ( #543 )
...
* Rename Identity.hpp to identity.hpp
* Rename Identity.cpp to identity.cpp
* Rename Info.hpp to info.hpp
* Rename Intro.cpp to intro.cpp
* Rename Intro.hpp to intro.hpp
2019-04-22 20:24:23 -05:00
Michael
98e691f315
Tidy up more parts of the service/ directory
2019-04-22 22:28:10 +01:00
Michael
2d2c0e3ac2
Make introset PoW be a unique_ptr
2019-04-22 22:19:51 +01:00
Jeff Becker
d5162c2aad
dont kill active exit paths
2019-04-22 13:55:07 -04:00
Michael
e33a33635c
Remove usage of raw new from service classes
2019-04-22 18:38:29 +01:00
Jeff Becker
c0d7b53328
make it work
2019-04-22 10:00:59 -04:00
Jeff Becker
3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format
2019-04-22 08:25:25 -04:00
Michael
33c80b7c16
Move service::Session to its own componet
2019-04-21 19:39:50 +01:00
Michael
94ad84363a
Move CachedTagResult and TagLookupJob to its own component
2019-04-21 19:39:50 +01:00
Michael
6bf54e0925
Remove AsyncKeyExchange, HiddenServiceAddressLookup and OutboundContext to their own components
2019-04-21 19:39:50 +01:00
Michael
3db6d80928
Remove unnecessary llarp:: qualifiers
2019-04-21 19:39:50 +01:00
Michael
2412ed59ee
Move SendContext to its own component
2019-04-21 19:39:50 +01:00
Michael
84fc90dc82
Remove dependency on service::endpoint
2019-04-21 19:39:50 +01:00
Michael
c39c931d03
Remove IStateful virtual inheritance
2019-04-19 16:10:26 +01:00
Jeff Becker
57dc6cc965
make bundling rc in path builds configurable on runtime
2019-04-18 07:49:54 -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
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 Becker
cab85b8f85
dont stomp existing convotags
2019-04-12 14:37:43 -04:00
Jeff Becker
5399b93270
make format and readd win32 console color logging
2019-04-11 11:36:20 -04:00
Jeff
c64fbf7cc5
Merge branch 'master' of ssh://github.com/majestrate/loki-network
2019-04-10 09:50:01 -04:00
Jeff Becker
28e07903b6
put reply intro
2019-04-10 09:19:32 -04:00
Jeff
95119a0fe1
always use random paths for lookups
2019-04-09 15:20:02 -04:00
Jeff Becker
e178a70929
use shared_ptr for event loop
2019-04-08 08:01:52 -04:00
Jeff
3783fb0e14
fix inbound sessions
2019-04-06 09:52:04 -04:00
Jeff Becker
c910a2a2fb
more
2019-04-05 10:58:22 -04:00
Jeff
60a42a83a3
better introset publish logic
2019-04-01 15:56:11 -04:00
Jeff Becker
aea9944c3d
mark success on profiles and remove pending lookup
2019-03-31 11:18:47 -04:00
Jeff Becker
b9207ce3e0
unconditionally update introset on dead path
2019-03-30 10:06:09 -04:00
Jeff Becker
24e7151ff5
log and don't remove path on died
2019-03-30 09:12:48 -04:00
Jeff Becker
b849ff9a94
handle path death better
2019-03-30 09:02:10 -04:00
Michael
3bada02d89
Fixup one ASAN warning
2019-03-29 01:02:41 +00:00
Jeff Becker
74f9949537
aaaaaa
2019-03-27 16:33:15 -04:00
Jeff
aa08d20480
ensure router is known
2019-03-26 22:47:27 -04:00
Jeff
ed10ef0b7d
don't shift only build
2019-03-26 22:38:23 -04:00
Jeff Becker
714f5c6b5e
more
2019-03-26 17:01:20 -04:00
Jeff Becker
9e531c026c
fix warning on hop selection
2019-03-26 16:41:41 -04:00
Jeff
30aebce091
Merge pull request #441 from loki-project/staging
...
Staging
2019-03-25 14:31:15 -04:00
Jeff Becker
8e2b99907f
mark nodes timeout on lookup timeout
2019-03-25 12:47:44 -04:00
Jeff Becker
1882ffc016
don't publish or use bad routers with endpoints
2019-03-25 11:56:15 -04:00
michael-loki
94ba88bafc
Fix missing override
2019-03-25 01:54:37 +00:00
Jeff Becker
f5b9bd40ed
track lookup fails and kill outbound context if too many
2019-03-21 11:39:13 -04:00
Jeff
4c611ea935
make macos happy
2019-03-19 09:22:15 -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
Jeff Becker
6489ea2152
make it work
2019-03-08 12:26:29 -05:00
Jeff Becker
8a4c0ce841
more
2019-03-08 12:00:13 -05:00
Jeff Becker
280d85d478
handle protocol discard
2019-03-08 11:00:45 -05:00
Jeff Becker
df17866ff7
breaking protocol change, bundle source txid on outside of path transfer message.
2019-03-08 10:33:49 -05:00
Jeff Becker
a5557e0902
always use current intro for reply
2019-03-08 09:48:09 -05:00
Jeff Becker
c9a4c77fb9
better chill with path building
2019-03-08 09:36:24 -05:00
Jeff Becker
6a09348c47
today's work
2019-03-07 17:53:36 -05:00
Jeff Becker
eceb55623c
more
2019-03-07 10:17:29 -05: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 Becker
71302ee48b
Merge remote-tracking branch 'origin/staging' into fix-libabyss-352
2019-02-27 07:55:38 -05:00
Jeff Becker
f8d6becce8
make whitelist happy
2019-02-27 07:55:26 -05:00
Jeff
db504e8044
Merge pull request #354 from despair86/dev
...
regression fixes
2019-02-26 17:40:48 -05:00
Rick V
975b4ca743
clang-format
2019-02-26 15:48:03 -06:00
Jeff Becker
ef13ec7499
Merge remote-tracking branch 'origin/staging' into staging
2019-02-26 07:55:27 -05:00
Michael
e4cf1f245c
Convert most of llarp to use Printer
2019-02-24 23:46:44 +00:00
Michael
b80ecfa4d6
Use string_view for string_view
2019-02-24 23:46:44 +00:00
Jeff
5c941263e9
Merge pull request #339 from michael-loki/dht_context_testing
...
Solidify interfaces
2019-02-22 12:56:06 -05:00
Michael
4fb2b39f74
Format changes
2019-02-22 17:18:54 +00:00
Jeff Becker
5642179019
publish retry on failure for introset publishing
2019-02-21 14:55:31 -05:00
Jeff Becker
a81a483cc2
build paths if we don't have enough
2019-02-21 14:26:59 -05:00
Jeff Becker
21ab744b17
build one path if we don't have a path for remote intro on send
2019-02-21 13:21:16 -05:00
Jeff Becker
c7e100787b
swap intros should only swap intros
2019-02-21 13:00:37 -05:00
Jeff Becker
eecc00211f
squash commits and make convotags more "reliable" (probably)
2019-02-21 12:47:35 -05:00
Jeff Becker
5dde4e6351
use source path's intro as being able to reply on convo tags
2019-02-21 12:46:08 -05:00
Jeff Becker
762728c7ec
fix
2019-02-21 12:13:27 -05:00
Jeff Becker
3baf89e8ce
more
2019-02-21 11:45:33 -05:00
Jeff Becker
262000570b
use source path's intro as being able to reply on convo tags
2019-02-21 11:21:41 -05:00
Jeff Becker
b511242632
increment sequence number on good send only
2019-02-20 08:42:50 -05:00
Jeff Becker
b9a0531057
make dht work again ._.
2019-02-20 08:29:12 -05:00
Jeff Becker
ee95c1ed0c
make dht work again ._.
2019-02-20 08:28:35 -05:00
Jeff Becker
b1dd10c007
fix previous commit
2019-02-19 12:04:06 -05:00
Jeff Becker
393e70dfa6
publish new introset on path death
2019-02-19 11:58:58 -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
Michael
887fb4ac62
Replace insert(make_pair()) with emplace()
2019-02-18 10:35:23 +00:00
Michael
a00d6afc5e
Convert llarp_buffer_t to be a class with methods
2019-02-17 13:09:48 +00:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter
2019-02-14 22:31:31 +00:00
Jeff Becker
550fc3c439
Revert "tweaking handover logic"
...
This reverts commit 50bfe5d810
.
2019-02-14 08:49:07 -05:00
Jeff Becker
50bfe5d810
tweaking handover logic
2019-02-12 09:24:36 -05:00
Jeff Becker
1921704b78
tweak timeout
2019-02-12 07:41:13 -05:00
Jeff Becker
46222df421
refactor
2019-02-11 12:14:43 -05:00
Jeff Becker
05cd1b7f8e
extract more status info for outbound context
2019-02-09 10:39:39 -05:00
Jeff Becker
1a929f9383
send control messages if too quiet to keep convotags alive as needed
2019-02-09 10:26:20 -05:00
Jeff Becker
9a2f11a212
try expiring convos
2019-02-09 09:37:24 -05:00
Jeff Becker
6df133cab2
remove dead sessions when done
2019-02-09 09:15:54 -05:00
Jeff Becker
66753430ad
fix it
2019-02-08 16:29:56 -05:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint
2019-02-08 14:43:25 -05:00
Jeff Becker
6fa10019d0
testnet tweak
2019-02-08 09:12:31 -05:00
Jeff Becker
27ce591f52
add note
2019-02-08 08:05:09 -05:00
Jeff Becker
2dfb53ef13
prevent deadlock
2019-02-08 08:04:12 -05:00
Jeff Becker
32ecf64c57
fix testnet
2019-02-07 09:27:28 -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
d10ddd7afd
Merge remote-tracking branch 'github/staging' into staging
2019-02-06 11:39:55 -05:00
Jeff Becker
90e45a810a
limit number of concurrent dht lookups from dns to 4
2019-02-06 10:52:00 -05:00
Jeff Becker
f84256d554
* lower lookup timeout for introsets
...
* correct previous commit for dns stuff
* allow for multiple parallel introset lookups
2019-02-06 10:05:25 -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
Ryan Tharp
5769e5c716
Merge pull request #259 from michael-loki/more_dht_tests
...
More dht tests
2019-02-05 14:06:29 -08:00
Ryan Tharp
8614911e17
Merge pull request #278 from majestrate/staging
...
lower utp fragment size by 512 bytes
2019-02-05 14:06:17 -08:00
Ryan Tharp
6446074881
Merge pull request #267 from michael-loki/abseil
...
Import abseil LTS 20181200
2019-02-05 14:06:02 -08:00
Michael
b1213c7a7c
Tests for dht::TagLookup
2019-02-05 21:18:38 +00:00
Jeff Becker
a953b34a45
fix crash
2019-02-05 10:06:53 -05:00