Commit Graph

967 Commits (dev)

Author SHA1 Message Date
Jeff Becker d2d109e92c
llarp_time_t is now using std::chrono 4 years ago
Jeff Becker f4520ac920
make decaying hashset use llarp::Time_t and move unit tests to use catch2 4 years ago
Jeff Becker 39cdc9e6dd
shift intro on introset update 4 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.
4 years ago
Jason Rhinelander 089056ca5b Remove all ABSL_ATTRIBUTE_UNUSED uses 4 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).
4 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
4 years ago
Jeff 7c5a721457
Merge pull request #1114 from notlesh/redundant-introset-lookup-improvements-2020-02-20
Redundant introset lookup improvements
4 years ago
Jeff Becker 748be8eec8
handle multiple responses per hidden service lookup 4 years ago
Stephen Shelton 0429bafbb3
Merge pull request #1111 from notlesh/redundant-introset-propagation-2020-02-19
Redundant introset propagation
4 years ago
Stephen Shelton 66cb30fa58
Refactor: remove recursionDepth from DHT lookups 4 years ago
Jeff 6ac5f19b3a
Merge pull request #1110 from jagerman/no-abseil-optional
De-abseil, part 1: remove absl::optional
4 years ago
Stephen Shelton 4c499fb076
Make format 4 years ago
Stephen Shelton dff9aeb250
Propagate Introset publishing redundantly 4 years ago
Jeff Becker dc7828941f
add log statement 4 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").
4 years ago
Jeff 20bc168d1c
Merge pull request #1093 from majestrate/toggle-publishing-introsets-2020-02-11
make publishing introsets optional
4 years ago
Jeff Becker 1874f439b7
add comment 4 years ago
Jeff Becker e907d2ae19
handover fixes 4 years ago
Jeff Becker f7f5d893a5
use endpoint path for lookup because outboundcontext does not implement pathset::HandleGotIntroMessage 4 years ago
Jeff Becker c9866b6a0b
simplify 4 years ago
Jeff Becker 9aeee37347
short circuit 4 years ago
Jeff Becker 6a495dd090
ammend outbound context logic 4 years ago
Jeff Becker 02228ded08
spread out path builds 4 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.
4 years ago
Jason Rhinelander c3637c81fd Remove another unused randomize parameter 4 years ago
Jason Rhinelander 24469daefb Remove unused parameter
We always randomize now.
4 years ago
Stephen Shelton 9dfcfbc3ac Bencode/decode relayOrder in lexigraphical order, make it uint64_t 4 years ago
Stephen Shelton 906803e387 Refactor DHT introset lookups to use redundant lookup strategy 4 years ago
Jeff Becker 4d4b33607f dont use optional 4 years ago
Jeff Becker 23bcfa4abb revert change 4 years ago
Jeff Becker df8c56343d refactor GetManyPathsWithUniqueEndpoints to go into service/endpoint_util.hpp 4 years ago
Jeff Becker fc5e6b4d77 log location 4 years ago
Jeff Becker 3cc2adae31 paralell publish and lookups 4 years ago
Jeff Becker e30c720446 redundant publish for service endpoint 4 years ago
Jeff Becker 2b6f27d60d
remove connect back logic for dead inbound sessions 4 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)
4 years ago
Jeff Becker 792fd4132c
only make default endpoint non-reachable if no keyfile option presented 4 years ago
Jeff Becker 6c67cc1f01
make default endpoint non reachable by default 4 years ago
Jeff Becker 70eb353c42
make publishing introsets optional using reachable=false to disable 4 years ago
Jeff Becker 5b87a9419e
default recursion depth to 2 not 12 4 years ago
Jeff Becker 8c698a1cd1
* rename i to foundIntro
* check for zero timestamp
* use > not >=
4 years ago
Jeff Becker 41210a8ae1
check for current introset being zero (initial state) 4 years ago
Stephen Shelton 37e4f26be1
s/LogInfo/LogDebug @ 'signed/verify encrypted introset' 4 years ago
Jeff Becker e6174efa21
don't derive x25519 key from ed25519 key 4 years ago
Jason Rhinelander f1171ed7a2 make format 😠 🤮 4 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.
4 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.
4 years ago
Jeff Becker 0f13591802
does not work 4 years ago
Jeff Becker 99eb7726ff
initial dht key blinding 4 years ago
Jeff Becker e87b754906
fix recursion depth on introset lookup 4 years ago
Jeff Becker 2c0dc12f39
refactor single char variables in DHT (mostly) 4 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 4 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 5 years ago
Jeff 27fac68716 fix 5 years ago
Jeff 01906c5d94 Merge remote-tracking branch 'origin/master' 5 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
5 years ago
Jeff Becker c3c26df6e3
Merge branch 'master' of ssh://github.com/majestrate/loki-network 5 years ago
Jeff 5305ef5974 use iterative lookups for sercice address lookups 5 years ago
Jeff Becker f7dc67b189
use std::set 5 years ago
Jeff Becker 09f706b9cd
fix 5 years ago
Jeff Becker fea64eaf12
handle subdomains 5 years ago
Jeff Becker d20ba9ceab
handle subdomains 5 years ago
Michael 9ee525a006
Fix shadowing warnings 5 years ago
Jeff Becker 0529e45ebe
more 5 years ago
Jeff Becker af1529fa72
Merge remote-tracking branch 'origin/master' 5 years ago
Jeff Becker 4bda489437
add explicit enable/disable profiling option, try to always maintain outbound connections. 5 years ago
Michael 4143472a17
Add cmake module to target a library as 'system', and fix a few warnings 5 years ago
Jeff Becker 5921086391
common codepath for sending protocol frames 5 years ago
Jeff Becker 6711296b26
finish converting to shared_ptr 5 years ago
Jeff Becker 8484e29c9b
turn more stuff into std::shared_ptr
remove dead codepaths
5 years ago
Jeff Becker 99c29cf05a
prepare for ios/android jazz
move to use std::shared_ptr instead of bare pointers so we can
multithread everything.
5 years ago
Jeff Becker 5872573e91
rename Logic and Crypto functions to GetLogic and GetCrypto 5 years ago
Jeff Becker a2912ff860
Merge remote-tracking branch 'origin/master' 5 years ago
Michael 3a8715d8e4
Fix introset tests 5 years ago
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
5 years ago
Michael 98e691f315
Tidy up more parts of the service/ directory 5 years ago
Michael 2d2c0e3ac2
Make introset PoW be a unique_ptr 5 years ago
Jeff Becker d5162c2aad
dont kill active exit paths 5 years ago
Michael e33a33635c
Remove usage of raw new from service classes 5 years ago
Jeff Becker c0d7b53328
make it work 5 years ago
Jeff Becker 3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format 5 years ago
Michael 33c80b7c16
Move service::Session to its own componet 5 years ago
Michael 94ad84363a
Move CachedTagResult and TagLookupJob to its own component 5 years ago
Michael 6bf54e0925
Remove AsyncKeyExchange, HiddenServiceAddressLookup and OutboundContext to their own components 5 years ago
Michael 3db6d80928
Remove unnecessary llarp:: qualifiers 5 years ago
Michael 2412ed59ee
Move SendContext to its own component 5 years ago
Michael 84fc90dc82
Remove dependency on service::endpoint 5 years ago
Michael c39c931d03
Remove IStateful virtual inheritance 5 years ago
Jeff Becker 57dc6cc965
make bundling rc in path builds configurable on runtime 5 years ago
Jeff Becker 2be3401e08
* refactor profiling function names
* utp link layer make ping less active, pre-emptive pump faster
5 years ago
Jeff Becker 9503cc66f0
add disk worker based file flusher logger
make format

remove package.json
5 years ago
Jeff Becker a45d6db0e0
better profiling 5 years ago
Jeff Becker cab85b8f85
dont stomp existing convotags 5 years ago
Jeff Becker 5399b93270
make format and readd win32 console color logging 5 years ago
Jeff c64fbf7cc5 Merge branch 'master' of ssh://github.com/majestrate/loki-network 5 years ago
Jeff Becker 28e07903b6
put reply intro 5 years ago
Jeff 95119a0fe1 always use random paths for lookups 5 years ago
Jeff Becker e178a70929
use shared_ptr for event loop 5 years ago
Jeff 3783fb0e14 fix inbound sessions 5 years ago
Jeff Becker c910a2a2fb
more 5 years ago
Jeff 60a42a83a3 better introset publish logic 5 years ago
Jeff Becker aea9944c3d
mark success on profiles and remove pending lookup 5 years ago
Jeff Becker b9207ce3e0
unconditionally update introset on dead path 5 years ago
Jeff Becker 24e7151ff5
log and don't remove path on died 5 years ago
Jeff Becker b849ff9a94
handle path death better 5 years ago
Michael 3bada02d89
Fixup one ASAN warning 5 years ago
Jeff Becker 74f9949537
aaaaaa 5 years ago
Jeff aa08d20480 ensure router is known 5 years ago
Jeff ed10ef0b7d don't shift only build 5 years ago
Jeff Becker 714f5c6b5e
more 5 years ago
Jeff Becker 9e531c026c
fix warning on hop selection 5 years ago
Jeff 30aebce091
Merge pull request #441 from loki-project/staging
Staging
5 years ago
Jeff Becker 8e2b99907f
mark nodes timeout on lookup timeout 5 years ago
Jeff Becker 1882ffc016
don't publish or use bad routers with endpoints 5 years ago
michael-loki 94ba88bafc
Fix missing override 5 years ago
Jeff Becker f5b9bd40ed
track lookup fails and kill outbound context if too many 5 years ago
Jeff 4c611ea935 make macos happy 5 years ago
Jeff Becker 5d3833ef1a
fix dumb as shit path building that causes premature termiantion because of duplicate hops 5 years ago
Jeff Becker 6489ea2152
make it work 5 years ago
Jeff Becker 8a4c0ce841
more 5 years ago
Jeff Becker 280d85d478
handle protocol discard 5 years ago
Jeff Becker df17866ff7
breaking protocol change, bundle source txid on outside of path transfer message. 5 years ago
Jeff Becker a5557e0902
always use current intro for reply 5 years ago
Jeff Becker c9a4c77fb9
better chill with path building 5 years ago
Jeff Becker 6a09348c47
today's work 5 years ago
Jeff Becker eceb55623c
more 5 years ago
Jeff Becker 159415c363
delay dns resolution for snode until we have a session with it 5 years ago
Jeff Becker 71302ee48b
Merge remote-tracking branch 'origin/staging' into fix-libabyss-352 5 years ago
Jeff Becker f8d6becce8
make whitelist happy 5 years ago
Jeff db504e8044
Merge pull request #354 from despair86/dev
regression fixes
5 years ago
Rick V 975b4ca743
clang-format 5 years ago
Jeff Becker ef13ec7499
Merge remote-tracking branch 'origin/staging' into staging 5 years ago
Michael e4cf1f245c
Convert most of llarp to use Printer 5 years ago
Michael b80ecfa4d6
Use string_view for string_view 5 years ago
Jeff 5c941263e9
Merge pull request #339 from michael-loki/dht_context_testing
Solidify interfaces
5 years ago
Michael 4fb2b39f74
Format changes 5 years ago
Jeff Becker 5642179019
publish retry on failure for introset publishing 5 years ago
Jeff Becker a81a483cc2
build paths if we don't have enough 5 years ago
Jeff Becker 21ab744b17
build one path if we don't have a path for remote intro on send 5 years ago
Jeff Becker c7e100787b
swap intros should only swap intros 5 years ago
Jeff Becker eecc00211f
squash commits and make convotags more "reliable" (probably) 5 years ago
Jeff Becker 5dde4e6351
use source path's intro as being able to reply on convo tags 5 years ago
Jeff Becker 762728c7ec
fix 5 years ago
Jeff Becker 3baf89e8ce
more 5 years ago
Jeff Becker 262000570b
use source path's intro as being able to reply on convo tags 5 years ago
Jeff Becker b511242632
increment sequence number on good send only 5 years ago
Jeff Becker b9a0531057
make dht work again ._. 5 years ago
Jeff Becker ee95c1ed0c
make dht work again ._. 5 years ago
Jeff Becker b1dd10c007
fix previous commit 5 years ago
Jeff Becker 393e70dfa6
publish new introset on path death 5 years ago
Rick V 5a3947ca5c
clang-format 5 years ago
Jeff Becker 445ed05b32
make format 5 years ago
Michael 887fb4ac62
Replace insert(make_pair()) with emplace() 5 years ago
Michael a00d6afc5e
Convert llarp_buffer_t to be a class with methods 5 years ago
Michael 048fa83c39
Finish replacement of Router with AbstractRouter 5 years ago
Jeff Becker 550fc3c439
Revert "tweaking handover logic"
This reverts commit 50bfe5d810.
5 years ago
Jeff Becker 50bfe5d810
tweaking handover logic 5 years ago
Jeff Becker 1921704b78
tweak timeout 5 years ago
Jeff Becker 46222df421
refactor 5 years ago
Jeff Becker 05cd1b7f8e
extract more status info for outbound context 5 years ago
Jeff Becker 1a929f9383
send control messages if too quiet to keep convotags alive as needed 5 years ago
Jeff Becker 9a2f11a212
try expiring convos 5 years ago
Jeff Becker 6df133cab2
remove dead sessions when done 5 years ago
Jeff Becker 66753430ad
fix it 5 years ago
Jeff Becker e1522faeaa
add introspection rpc endpoint 5 years ago
Jeff Becker 6fa10019d0
testnet tweak 5 years ago
Jeff Becker 27ce591f52
add note 5 years ago
Jeff Becker 2dfb53ef13
prevent deadlock 5 years ago