Stephen Shelton
b7451b7632
Rip out tag, prefetch tags/addrs from Endpoint
4 years ago
Stephen Shelton
3198a8b139
Handle blacklist-snode validation in config
4 years ago
Stephen Shelton
fde93ac02d
Don't take EndpointConfig by value
4 years ago
Stephen Shelton
21ad442b55
Remove NetConfig_t
4 years ago
Stephen Shelton
df01770466
Rename SnappConfig -> EndpointConfig
4 years ago
Stephen Shelton
93b35c92a7
Eradicate service::Config
4 years ago
Jason Rhinelander
5cf2126bb9
make format
4 years ago
Jason Rhinelander
1697bf90fe
C++17
...
Compiles with C++17, replaces ghc::filesystem with std::filesystem,
nonstd::optional with std::optional, and llarp::string_view with
std::string_view.
4 years ago
Jeff
54a7843bc5
Merge pull request #1186 from notlesh/config-cleanup-2020-03-13
...
Config cleanup
4 years ago
Jason Rhinelander
3c6aa002b8
Fix errors and warnings compiling on mac
5 years ago
Stephen Shelton
de8e44ba21
Re-apply clang-format rules after rebasing
5 years ago
Stephen Shelton
9d71228e74
Replace config visit pattern with explicit lookups
...
This is an initial pass at doing explicit value checks when handling
config parsing, as opposed to using a visiting pattern. The latter
made it difficult to check for conditions such as missing required
values, multiple values, etc.
It was also generally less readable (think declarative) which further
made it difficult to get a grasp for what our actual configuration file
requirements were.
5 years ago
Stephen Shelton
273270916e
The Great Wall of Blame
...
This commit reflects changes to clang-format rules. Unfortunately,
these rule changes create a massive change to the codebase, which
causes an apparent rewrite of git history.
Git blame's --ignore-rev flag can be used to ignore this commit when
attempting to `git blame` some code.
5 years ago
Jeff
d3091cf9fc
Merge pull request #1167 from tewinget/tooling
...
RouterHive initial PR
5 years ago
jeff
7089996ac5
discard unknown fields in introset for future use
5 years ago
Stephen Shelton
ea835405c5
Refactor NotifyRouterEvent() to forward args, event code cleanup
...
This template-ifies Router::NotifyRouterEvent() up so that it accepts
the arguments to instantiate the specified event type, forwarding them
to std::make_unique. This would allow (in the future) the function to
no-op the call and avoid memory allocation. It also slightly reduces
the amount of code required to fire an event.
This commit also simplifies some of the RouterEvent code to reduce
redundancy.
5 years ago
Stephen Shelton
6664202868
Add FindRouterSentEvent and FindRouterReceivedEvent to RouterHive
5 years ago
Jeff
f3d23d6fb6
strip rr from dns reply for .snode and .loki ( #1172 )
...
fix dns replies so that extra RR for edns are not included.
5 years ago
Thomas Winget
84a1d7dbcc
clang format.......
5 years ago
Thomas Winget
695784b2b6
more hive things
...
DHT PubIntroSentEvent
some helper functions added to RouterHive (C++ class) as well as RouterHive(Python class)
hive.py main() continues to be a testbed for new event types
some more internal classes in pybind
5 years ago
Jason Rhinelander
c87fd66386
Fix lookup filter to filter second, not first, lookup
5 years ago
Jeff Becker
32dbe6b1ad
more shiz
5 years ago
Jeff Becker
877443d95c
more introspection code
5 years ago
Jeff Becker
d4ccf895e3
Merge branch 'fix-up-introset-lookup-fails-2020-03-02' of ssh://github.com/majestrate/loki-network into fix-up-introset-lookup-fails-2020-03-02
5 years ago
Jeff Becker
79746e3719
remote lookup limiting of 500ms per address
5 years ago
Stephen Shelton
9be8050854
Make format
5 years ago
Stephen Shelton
886a981997
Consolidate introset publishing constants
5 years ago
Jeff Becker
a09bb89d15
dont put multiple outbound contexts
5 years ago
Jeff Becker
158a9018f3
rename variable
5 years ago
Jeff Becker
9ff31f6402
spelling is hard
5 years ago
Jeff Becker
8f4362f092
fix up introset lookups
5 years ago
Jason Rhinelander
806d43c34e
Merge pull request #1147 from notlesh/diagnose-pubintro-round2-2020-02-28
...
Diagnose pubintro round2
5 years ago
Jason Rhinelander
b60adc909d
Make IntroSet publish confirmed less verbose
...
Essentially just rate limit the confirmation message to one message per
second.
5 years ago
Jason Rhinelander
cfee824a79
Don't republish when we have extra paths
...
This caused some unwanted behaviour:
- on initial startup we often get two publishes in quick succession
because we're publishing and building paths at the same time
- at the 10m mark we enter a publish loop every 5 seconds because we
have paths with lifetimes < 10min that was triggering this condition,
and yet those paths will never actually be included in the introset
because they are expiring in <10m.
5 years ago
Jason Rhinelander
823c17206f
Add min intro set paths, slightly increase spread speed
...
This should ensure that we have enough shortly after startup for initial
path builds.
The spread speed here gets slightly increased to lifetime/5 (=4min)
instead of lifetime/4 (=5min) so that our "normal" number of paths is 5
with occassional momentary drops to 4, but should always keep us >= the
new minimum of 4.
Because the path spread happens over time, this shouldn't result in a
rebuild of several paths: we'll build 4 quickly, then another at +4m,
another at +8m, etc. When the initial 4 expire, we'll be dropping from
9 to 5 established but that's still above the minimum (4) so we won't
need to reconnect to several at once, and the spread builds should keep
us at 5 all the time.
5 years ago
Jason Rhinelander
27b8743107
Add warns for introset publish failures
5 years ago
Stephen Shelton
62014de91c
Handle PubIntro relayOrder logic on client-side
5 years ago
Stephen Shelton
61d19179f7
Remove dead code
5 years ago
Jeff Becker
ce335dc47d
remove convotags on dead outbound context
5 years ago
Jeff
19a751c41b
Merge pull request #1127 from notlesh/spread-snapp-path-builds-evenly-2020-02-24
...
Spread snapp path builds evenly
5 years ago
Jeff
4f29405e9e
Merge pull request #1115 from majestrate/handle-multiple-responses-per-lookup-2020-02-20
...
handle multiple responses per hidden service lookup
5 years ago
Stephen Shelton
abe4015986
Use constants for path build timing
5 years ago
Stephen Shelton
230037b9f3
Increase default path timeout from 10min to 20min
5 years ago
Stephen Shelton
f0374eb2b7
Use existing 'lastBuild' var for spacing path builds
5 years ago
Stephen Shelton
c2c010dbad
Make format
5 years ago
Stephen Shelton
c1b5e453c7
Big I, little i, what begins with I?
5 years ago
Stephen Shelton
1db6c6ae3b
Make format
5 years ago
Stephen Shelton
c2f719c996
Build endpoint paths at even[ish] intervals
5 years ago
Jeff Becker
bf0416cab8
remove Time_t, add operator overload for printing llarp_time_t and add to_json function for serializing llarp_time_t to json
5 years ago
Jeff Becker
524726e4cc
cast interval to std::chrono::milliseconds before dividing by 4
5 years ago
Jeff Becker
d2d109e92c
llarp_time_t is now using std::chrono
5 years ago
Jeff Becker
f4520ac920
make decaying hashset use llarp::Time_t and move unit tests to use catch2
5 years ago
Jeff Becker
39cdc9e6dd
shift intro on introset update
5 years ago
Jason Rhinelander
54186c4a89
Replace absl string_view with string_view from lokimq
...
When we add loki-mq has a dependency we can just alias it, but for now
it's easier to copy the header than add the whole submodule library.
5 years ago
Jason Rhinelander
089056ca5b
Remove all ABSL_ATTRIBUTE_UNUSED uses
5 years ago
Jason Rhinelander
f84ce61d66
Removed empty cpp files
...
These aren't needed: CMake already knows how to follow #includes and
rebuild when headers change as long as the headers are included
*somewhere*. The extra .cpp files here just require building a bunch of
.cpp files with just header content that we just end up throw away
during linking (since the same things will also be compiled in whatever
other compilation units include the same headers).
5 years ago
Jason Rhinelander
b4440094b0
De-abseil, part 2: mutex, locks, (most) time
...
- util::Mutex is now a std::shared_timed_mutex, which is capable of
exclusive and shared locks.
- util::Lock is still present as a std::lock_guard<util::Mutex>.
- the locking annotations are preserved, but updated to the latest
supported by clang rather than using abseil's older/deprecated ones.
- ACQUIRE_LOCK macro is gone since we don't pass mutexes by pointer into
locks anymore (WTF abseil).
- ReleasableLock is gone. Instead there are now some llarp::util helper
methods to obtain unique and/or shared locks:
- `auto lock = util::unique_lock(mutex);` gets an RAII-but-also
unlockable object (std::unique_lock<T>, with T inferred from
`mutex`).
- `auto lock = util::shared_lock(mutex);` gets an RAII shared (i.e.
"reader") lock of the mutex.
- `auto lock = util::unique_locks(mutex1, mutex2, mutex3);` can be
used to atomically lock multiple mutexes at once (returning a
tuple of the locks).
This are templated on the mutex which makes them a bit more flexible
than using a concrete type: they can be used for any type of lockable
mutex, not only util::Mutex. (Some of the code here uses them for
getting locks around a std::mutex). Until C++17, using the RAII types
is painfully verbose:
```C++
// pre-C++17 - needing to figure out the mutex type here is annoying:
std::unique_lock<util::Mutex> lock(mutex);
// pre-C++17 and even more verbose (but at least the type isn't needed):
std::unique_lock<decltype(mutex)> lock(mutex);
// our compromise:
auto lock = util::unique_lock(mutex);
// C++17:
std::unique_lock lock(mutex);
```
All of these functions will also warn (under gcc or clang) if you
discard the return value. You can also do fancy things like
`auto l = util::unique_lock(mutex, std::adopt_lock)` (which lets a
lock take over an already-locked mutex).
- metrics code is gone, which also removes a big pile of code that was
only used by metrics:
- llarp::util::Scheduler
- llarp:🧵 :TimerQueue
- llarp::util::Stopwatch
5 years ago
Jeff
7c5a721457
Merge pull request #1114 from notlesh/redundant-introset-lookup-improvements-2020-02-20
...
Redundant introset lookup improvements
5 years ago
Jeff Becker
748be8eec8
handle multiple responses per hidden service lookup
5 years ago
Stephen Shelton
0429bafbb3
Merge pull request #1111 from notlesh/redundant-introset-propagation-2020-02-19
...
Redundant introset propagation
5 years ago
Stephen Shelton
66cb30fa58
Refactor: remove recursionDepth from DHT lookups
5 years ago
Jeff
6ac5f19b3a
Merge pull request #1110 from jagerman/no-abseil-optional
...
De-abseil, part 1: remove absl::optional
5 years ago
Stephen Shelton
4c499fb076
Make format
5 years ago
Stephen Shelton
dff9aeb250
Propagate Introset publishing redundantly
5 years ago
Jeff Becker
dc7828941f
add log statement
5 years ago
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").
5 years ago
Jeff
20bc168d1c
Merge pull request #1093 from majestrate/toggle-publishing-introsets-2020-02-11
...
make publishing introsets optional
5 years ago
Jeff Becker
1874f439b7
add comment
5 years ago
Jeff Becker
e907d2ae19
handover fixes
5 years ago
Jeff Becker
f7f5d893a5
use endpoint path for lookup because outboundcontext does not implement pathset::HandleGotIntroMessage
5 years ago
Jeff Becker
c9866b6a0b
simplify
5 years ago
Jeff Becker
9aeee37347
short circuit
5 years ago
Jeff Becker
6a495dd090
ammend outbound context logic
5 years ago
Jeff Becker
02228ded08
spread out path builds
5 years ago
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.
5 years ago
Jason Rhinelander
c3637c81fd
Remove another unused randomize parameter
5 years ago
Jason Rhinelander
24469daefb
Remove unused parameter
...
We always randomize now.
5 years ago
Stephen Shelton
9dfcfbc3ac
Bencode/decode relayOrder in lexigraphical order, make it uint64_t
5 years ago
Stephen Shelton
906803e387
Refactor DHT introset lookups to use redundant lookup strategy
5 years ago
Jeff Becker
4d4b33607f
dont use optional
5 years ago
Jeff Becker
23bcfa4abb
revert change
5 years ago
Jeff Becker
df8c56343d
refactor GetManyPathsWithUniqueEndpoints to go into service/endpoint_util.hpp
5 years ago
Jeff Becker
fc5e6b4d77
log location
5 years ago
Jeff Becker
3cc2adae31
paralell publish and lookups
5 years ago
Jeff Becker
e30c720446
redundant publish for service endpoint
5 years ago
Jeff Becker
2b6f27d60d
remove connect back logic for dead inbound sessions
5 years ago
Jeff
671c765161
Merge pull request #1085 from majestrate/check-for-initial-current-introset-2020-02-06
...
check for current introset being zero (initial state)
5 years ago
Jeff Becker
792fd4132c
only make default endpoint non-reachable if no keyfile option presented
5 years ago
Jeff Becker
6c67cc1f01
make default endpoint non reachable by default
5 years ago
Jeff Becker
70eb353c42
make publishing introsets optional using reachable=false to disable
5 years ago
Jeff Becker
5b87a9419e
default recursion depth to 2 not 12
5 years ago
Jeff Becker
8c698a1cd1
* rename i to foundIntro
...
* check for zero timestamp
* use > not >=
5 years ago
Jeff Becker
41210a8ae1
check for current introset being zero (initial state)
5 years ago
Stephen Shelton
37e4f26be1
s/LogInfo/LogDebug @ 'signed/verify encrypted introset'
5 years ago
Jeff Becker
e6174efa21
don't derive x25519 key from ed25519 key
5 years ago
Jason Rhinelander
f1171ed7a2
make format 😠 🤮
5 years ago
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.
5 years ago
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.
5 years ago
Jeff Becker
0f13591802
does not work
5 years ago
Jeff Becker
99eb7726ff
initial dht key blinding
5 years ago
Jeff Becker
e87b754906
fix recursion depth on introset lookup
5 years ago
Jeff Becker
2c0dc12f39
refactor single char variables in DHT (mostly)
5 years ago
Jeff Becker
3b66cf6e75
dht fixes, disable iterative lookups on clients, revert "fixes" from 0.6.3, pass in recursion depth from introset lookup
5 years ago
Jeff Becker
a17b5f25b5
check for zero'd rc
5 years ago
Jeff
0e2c5736a8
Merge pull request #1034 from majestrate/dht-timeout-fixes-2020-01-10
...
dht timeout tweak
5 years ago
Jeff
0ad2809ac7
Merge pull request #1033 from majestrate/prevent-segfault-2020-01-10
...
prevent segfault
5 years ago
Jeff Becker
8bb492da6e
dht timeout tweak
5 years ago
Jeff Becker
77f0944d6d
use shared_from_this
5 years ago
Jeff Becker
78e325c4c5
always lookup introset from nearest router
5 years ago
Jeff Becker
2d82e931da
try doing lookup from close router, randomize when above lookup threshold
5 years ago
Jeff Becker
8a5365d9a6
diversify endpoints
5 years ago
Jeff Becker
c1ad5f955a
remove mutex
5 years ago
Jeff Becker
3147e2d357
shuffle intros when more than 1 exists
5 years ago
Jeff Becker
b3ad65f470
randomize intro order on shift
5 years ago
Jeff Becker
79badd6714
* clients expore dht faster
...
* use random path when doing dht lookups for .loki
5 years ago
Jeff Becker
5ae428a114
Revert "remove call to link manager"
...
This reverts commit 3dd36fa11a
.
5 years ago
Jeff Becker
a5121c346c
remove call to link manager
5 years ago
Jeff Becker
d1a29884df
client side perf improvement
5 years ago
Jeff Becker
79c3c748e4
limit number of snode sessions client side
5 years ago
Jeff Becker
8b8d636ded
make format
5 years ago
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.
5 years ago
Jeff Becker
7f6d1ebb92
fix slow start bug
5 years ago
Stephen Shelton
5d3cb8f405
Include error code in log output in Identity::EnsureKeys()
5 years ago
Stephen Shelton
2c6226f54a
Backup SNApp keys when migrating to new ed25519 crypto
5 years ago
Stephen Shelton
66a058a2af
Make format
5 years ago
Stephen Shelton
93b8832026
Merge branch 'dev' into private-keys-backup-support
5 years ago
Jeff Becker
28a2d471d6
style nitch
5 years ago
Jeff Becker
44e0e2c034
dont flood the logic queue
5 years ago
Jeff Becker
0828307906
fix address mapping bug
5 years ago
Jeff Becker
8849173112
try async decrypt then verify
5 years ago
Jeff Becker
285a9a1dd5
prevent segfault
5 years ago
Jeff Becker
ba0fd223d9
reduce number of jobs we put onto the logic thread
5 years ago
Jeff Becker
56dce90de9
add trace log level for tracking logic thread jobs
5 years ago
Stephen Shelton
db56e17c23
Rename bencode function for clarity
5 years ago
Jeff Becker
1a864832c8
make format
5 years ago
Thomas Winget
23a9773e1e
remove our paths from outbound queues
5 years ago
Jeff Becker
2c5561fc3c
make format
5 years ago
Jeff Becker
7ee026fa50
make path builds work again
5 years ago
Jeff Becker
2bf1e4f46a
enable IOS on IOS
5 years ago
jeff
c26b67c379
finish wiring up jni shizz
5 years ago
jeff
52757fef0e
Merge remote-tracking branch 'micheal/background_mode' into vpn-api-2019-10-03
5 years ago
jeff
32ed821763
Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography
5 years ago
jeff
f9fb40f590
final touches
5 years ago
jeff
7c691cf334
handover should be fixed now
5 years ago
Jeff Becker
993e4c2637
try fixing handover
5 years ago
jeff
6c2ebbb925
try fixing handover and add snapp traffic to multithreaded crypto workers
5 years ago
Jeff Becker
327c545530
finish multithread cryptography first pass
5 years ago
jeff
14c9ef15ed
try calling stuff in logic thread from event loop
5 years ago
Jeff Becker
1adae338ce
Merge remote-tracking branch 'origin/master'
5 years ago
Michael
edd0ec398f
Move thread stuff to subdirectory
5 years ago
Michael
4d8fe2a8a8
Move meta programming to subdirectory
5 years ago
Michael
1aec0dfa2b
Move logging to subdirectory
5 years ago
Jeff Becker
c01112e4b7
tracy lock contention testing and other fun things
5 years ago
Jeff
093021ef99
try fixing handover drop bug
5 years ago
Jeff Becker
eabbb83149
use estimated build time instead of expiration time for delta when determining when to space out builds
5 years ago
Jeff Becker
e0424a91a7
bump path build handover window, check cooldown on build.
5 years ago
Jeff Becker
3c3338e801
Merge remote-tracking branch 'origin/master' into memlink
5 years ago
Michael
094b697b01
Replace StatusObject with underlying JSON type
5 years ago
Michael
16cdfbd5f0
clang-tidy modernize pass
5 years ago
Jeff Becker
fdbb2e8dc8
make format
5 years ago
Jeff Becker
847fcdf5f3
move convotag missmatch check to the right place
5 years ago
Michael
84601fa474
Make format
5 years ago
Michael
d1990b5e93
Fix suspicious thread-unsafety
5 years ago
Jeff
da4f1ddb0a
Merge pull request #757 from majestrate/master
...
don't expire based on reply intro
5 years ago
Jeff
c2c4f61ded
don't expire based on reply intro
5 years ago
Jeff Becker
c1f33bb1ac
initial mempipe implementation
5 years ago
Jeff Becker
e3d13fc2a0
drop missmatched convotags
5 years ago
Michael
f9e9227e19
Fix gcc trunk warnings
5 years ago
Michael
4763888d2c
Add fail-able docker build for gcc trunk
5 years ago
Jeff Becker
db2206664a
fix crashes in testnet
5 years ago
Jeff Becker
7a3c8e5ca0
set limits correctly
5 years ago
Jeff Becker
f48754c45d
make hop count and length configurable
5 years ago
Jeff Becker
d465400840
revert
5 years ago
Michael
5cef2865bd
Fix Ubuntu builds
5 years ago
Michael
e52492911d
Refactor endpoint state management to a new class
5 years ago
Jeff Becker
1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun
5 years ago
Michael
488695047f
Remove redundant else blocks
5 years ago
Jeff Becker
b9bcc2b775
make threadpool consice
5 years ago
Jeff Becker
0eb6431eb1
initialize tun with 0 and set defaults in correct places
5 years ago
Jeff Becker
fd911d0c52
make format
5 years ago
Jeff Becker
58005c5f81
Merge remote-tracking branch 'origin/master' into ipv6-tun
5 years ago
Michael
a2326efa37
Revert "Merge pull request #679 from tewinget/revert-config-refactor"
...
This reverts commit 2996a7f29c
, reversing
changes made to 10df3bd4b3
.
5 years ago
Jeff Becker
6467d21ba0
* fix testnet codepath
...
* add packet info for osx
5 years ago
Jeff Becker
81cab62bb9
* fix testnet codepath
...
* add packet info for osx
5 years ago
Thomas Winget
d044d60101
Reverts #678 #677 and #669 with hashes:
...
10df3bd
766ece8
979f095
See those commits for further details
5 years ago
Michael
b51f7d8015
Convert to load config in config loader
5 years ago
Michael
bd78471dae
Move ini parser as well
5 years ago
Jeff Becker
5874c38b38
swap path on inbound convo if expires soon
5 years ago
Jeff Becker
f211ff182a
pick ready paths for reply
5 years ago
Jeff Becker
d6ec528a72
start work on seperating ips out of endpoint
5 years ago
Jeff Becker
64e9622270
start seperating tun and endpoint
5 years ago
Jeff Becker
fbf01bd129
fix order
5 years ago
Jeff Becker
1061ae4fee
set outbound context to be outbound session
5 years ago
Jeff Becker
0146a967d0
fix convotag inbound state setting
5 years ago
Jeff Becker
6ab3678f5c
correct comparison
5 years ago
Jeff Becker
5c8b17154c
swap intros only on path build success
5 years ago
Jeff Becker
4734fa91fe
check for zero
5 years ago
Jeff Becker
f66e37ca37
oooof
5 years ago
Jeff Becker
289eb2a04c
fix previous commit
5 years ago
Jeff Becker
5c679a10e8
outbound context build more
5 years ago
Jeff Becker
6bca652182
choose first timestamp
5 years ago
Jeff Becker
0b90acff75
handle reply intro
5 years ago
Jeff Becker
8830ac8fac
tweak
5 years ago
Jeff Becker
ba6f9ed2d7
continue using llarp::openfilestream
5 years ago
Jeff Becker
54a098356d
continue using llarp::openfilestream
5 years ago
Jeff Becker
b0612e2ee1
Merge remote-tracking branch 'origin/master' into ipv6-tun
5 years ago
Michael
b6b400baef
Tidy up pathbuilder code
5 years ago
Jeff Becker
5c61df08b5
Merge remote-tracking branch 'origin/master' into ipv6-tun
5 years ago
Michael
08609f9e5a
Rename message files
5 years ago
Michael
8a058fcb34
Move other messages
5 years ago
Michael
d6751e3eeb
Move subset of messages to right directory
5 years ago
Jeff Becker
2557a9ab25
check for expiration
5 years ago
Jeff Becker
cd05fa6150
Merge remote-tracking branch 'origin/master' into ipv6-tun
5 years ago
Rick V
c6c31efec9
make format
5 years ago
Jeff Becker
30f6a8ccd2
make format
5 years ago
Jeff Becker
9c24fc15a8
try not spamming network with builds
5 years ago
Jeff Becker
5853e5e3f4
pass in path
5 years ago
Jeff Becker
a323003824
differentiate between inbound and outbound convos
5 years ago
Jeff
b857be3d02
Merge pull request #639 from majestrate/master
...
[WIP] libuv
5 years ago
Jeff Becker
d8aebf36fb
swap intros on message rejection
5 years ago
Jeff Becker
1883c63997
swap intros on message rejection
5 years ago
Jeff Becker
2403ab8f86
ipv6
5 years ago
Jeff Becker
9ec41b8831
update RC expiration logic, lookup more often and remove stale entries
5 years ago
Jeff Becker
73c1538518
fix
5 years ago
Jeff Becker
f7ccbf0c78
eh
5 years ago
Jeff Becker
f8e2edae28
fix
5 years ago
Jeff Becker
223f2702d3
Merge branch 'fix-big-ooooofff'
5 years ago
Jeff Becker
a33dbce680
try switching logic
5 years ago
Jeff Becker
f8026b8a2d
use latest tag not oldest tag in inbound convos
5 years ago
Jeff Becker
39b1f104a8
revert
5 years ago
Jeff Becker
471a4bf6dd
use reply intro for inbound sessions
5 years ago
Michael
75430a234c
Convert to use memFn
5 years ago
Jeff
674f272a46
Merge pull request #630 from majestrate/master
...
recent stability stuff
5 years ago
Jeff Becker
762a0c534f
Merge remote-tracking branch 'origin/master'
5 years ago
Michael
491fee206b
Port code to use CryptoManager over passing Crypto pointers
5 years ago
Jeff Becker
2897141036
make format and introduce new function EnsureRouter on router to check nodedb or do dht lookup
5 years ago
Jeff Becker
d113f06ebd
use for each loop
...
don't lookup expired routers we don't need that right now
5 years ago
Michael
3f53965b71
Remove all use of IBEncodeMessage
5 years ago
Jeff Becker
8b2dd72472
Merge remote-tracking branch 'origin/master'
5 years ago
Jeff Becker
41523b934c
more
5 years ago
Jeff Becker
2ac89c0afb
DRY
5 years ago
Michael
d49e57aa8d
Fix thread safety issue in service::Endpoint::ProcessDataMessage
5 years ago
Jeff Becker
e85cc1bc8a
fix
5 years ago
Jeff Becker
64c7ed42fc
make format
5 years ago
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
5 years ago
Michael
dd8a93a400
Apply rule of zero to code base
5 years ago
Michael
a83be769e2
More explicit error when keyfile is not a valid file
5 years ago
Jeff Becker
5f823f8ba3
fix
5 years ago
Jeff Becker
a954f2000e
shift introduction
5 years ago
Jeff Becker
8da3b51589
more hax
5 years ago
Jeff Becker
81f73bccc2
pick newer intros only
5 years ago
Jeff Becker
f832c9a593
use shared_ptr
5 years ago
Jeff
e21f1020ee
don't std::move
5 years ago
Jeff
06f8bb2f42
add blacklist-snode option
5 years ago
Jeff Becker
018dd008ec
add custom single threaded allocator for utp buffers
...
fix up test net stuff
5 years ago
Jeff Becker
85fcb4bd84
fix it up
5 years ago
Jeff Becker
1d74585637
don't crash when we get no routers from lookup
5 years ago
Jeff Becker
3821b4801c
fix intro section to not use first hop as intro
5 years ago
Jeff Becker
e7a40ac4e5
Revert "permit outbound context to select an intro who is a first hop."
...
This reverts commit c8c00e2d9f
.
5 years ago
Jeff Becker
c8c00e2d9f
permit outbound context to select an intro who is a first hop.
5 years ago
Jeff Becker
df322e1149
don't include duplicate hops in paths
5 years ago
Jeff Becker
7b03b63d13
more sighup code
5 years ago
Jeff Becker
a53da68700
start work on sighup
5 years ago
Jeff Becker
dee639500a
set intro
5 years ago
Jeff Becker
e08c8bf919
correct timeout for dht request
5 years ago
Jeff Becker
34533db620
add urgent build that builds over an existing path for an endpoint
5 years ago
Michael
1744ae7686
Tidy up service endpoint a bit more
5 years ago
Jeff Becker
b02a3715df
call hook on timeout
5 years ago
Jeff Becker
fc3db98e66
change log priority
5 years ago
Jeff Becker
d423ee02d2
use shared_ptr
5 years ago
Jeff Becker
986e831579
make bundle-rc option configurable on snode tld
5 years ago
Jeff Becker
e0892f7d23
gfdi
5 years ago
Jeff Becker
407f895c86
ooff
5 years ago
Jeff Becker
5b49008bca
more
5 years ago
Jeff Becker
a97e1e37a7
dont filter intros they are already good
5 years ago
Jeff Becker
e060082441
hook every dns for .loki and .snode when applicable
...
make {n,h}uint{32,16}_t templated type.
5 years ago
Jeff
59e6a4bc3d
make snode work again probably
5 years ago
Jeff Becker
20ba2c7b8c
try not to die
5 years ago
Jeff Becker
cde4fcc00a
queue pending traffic
5 years ago
Jeff Becker
bb47d612b3
more
5 years ago
Jeff Becker
0b68d3db5d
move stuff arround so that flushing queues are done in the correct event loops
...
TODO: locking
5 years ago
Jeff Becker
2a7ebce8f4
Merge remote-tracking branch 'origin/master'
5 years ago
Jeff Becker
5e0acc1197
separate upstream/downstream flush
5 years ago
Jeff Becker
d50b18d7b0
try fixing leak also make format
5 years ago
Michael
725ee293c1
Refactor well named functionality in service::Endpoint into new struct
6 years ago
Jeff
27fac68716
fix
6 years ago
Jeff
01906c5d94
Merge remote-tracking branch 'origin/master'
6 years ago
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
6 years ago
Jeff Becker
c3c26df6e3
Merge branch 'master' of ssh://github.com/majestrate/loki-network
6 years ago
Jeff
5305ef5974
use iterative lookups for sercice address lookups
6 years ago
Jeff Becker
f7dc67b189
use std::set
6 years ago
Jeff Becker
09f706b9cd
fix
6 years ago
Jeff Becker
fea64eaf12
handle subdomains
6 years ago
Jeff Becker
d20ba9ceab
handle subdomains
6 years ago
Michael
9ee525a006
Fix shadowing warnings
6 years ago
Jeff Becker
0529e45ebe
more
6 years ago
Jeff Becker
af1529fa72
Merge remote-tracking branch 'origin/master'
6 years ago
Jeff Becker
4bda489437
add explicit enable/disable profiling option, try to always maintain outbound connections.
6 years ago
Michael
4143472a17
Add cmake module to target a library as 'system', and fix a few warnings
6 years ago
Jeff Becker
5921086391
common codepath for sending protocol frames
6 years ago