Commit Graph

8262 Commits (quic-wip)
 

Author SHA1 Message Date
dr7ana 7314c2a22a CI Fixes, squash 7 months ago
Jason Rhinelander c18ad4c618
Temporarily disable building/running test suite 7 months ago
dr7ana 2abe2d9363 Review fixes
- cleaned up include-what-you-use errors (mostly quoted includes)
- misc fixes
7 months ago
Jason Rhinelander 5c3467ecb0 Fix systemd linkage 7 months ago
Jason Rhinelander 18effaa76f Bring oxen-encoding back in as a submodule
As long as it's loaded before oxen-mq or libquic, this should end up
being the one that gets used in oxen-mq/libquic, and so we don't have to
update those when we want something in a newer oxen-encoding.
7 months ago
Jason Rhinelander c3242e4092 Add format.sh detection of include problems 7 months ago
dr7ana 46ad8d4058 Clang format include sorting + CMake
- includes are now sorted in consistent, logical order; first step in an attempt to fix the tomfoolery (no relation to Tom) brought in by include-what-you-use
- shuffled around some cmake linking to simplify dependency graph
- superfluous files removed
8 months ago
dr7ana bda8b211dd Cmake restructuring 8 months ago
Jason Rhinelander f4f5ab0109 "Refactor" aka delete Crypto/CryptoManager
- Get rid of CryptoManager.
- Get rid of Crypto.
- Move all the Crypto instance methods to llarp::crypto functions.
  (None of them needed to be methods at all, so this is simple).
- Move sodium/ntru initialization into static initialization.
- Add llarp::csrng, which is an available llarp::CSRNG instance which is
  a bit easier than needing to construct a `CSRNG rng{};` in various
  places.
- Various related small simplifications/cleanups.
8 months ago
dr7ana e710cfea47 Review commit 8 months ago
dr7ana 0e451db77f Compilation fixes
- almost all errors have been commented out for refactor or already refactored
- committing this prior to sorting out the cmake structure
- upcoming include-what-you-use application
8 months ago
dr7ana 3ae8fce77d Outbound context absorbed sendcontex
- message transmission routed through refactored handling
- still work to be done, but now to make it compile at least
8 months ago
dr7ana 41312abab0 introset and message transmission underway
- message handling through classes that inherit from PathSet
- cleanups around link_manager
- etc etc
8 months ago
dr7ana 6955f3fae0 initial commit for next PR 8 months ago
Thomas Winget 4755269458 implement sending "path control" (onioned control) message
TODO: handle at transit hop, handle at terminal hop, create and handle responses
8 months ago
dr7ana f173186696
Merge pull request #2215 from jagerman/remove-stuff
Remove stuff
8 months ago
Jason Rhinelander 6d1566572b
Coalesce from_string/from_string_view
The version taking a string_view will already be perfectly callable with
a string, so just combine them into one.
8 months ago
Jason Rhinelander 82c945ca24
Remove RC key rotation
We don't have/want this anymore (and on top of that, we *never* used
it in the first place and it probably didn't even work).
8 months ago
Jason Rhinelander 018d7b4a00
Remove optional relay whitelist disabling
Whitelisting is now always-on for relays.  Disabling the option is never
used and is unsupported/unmaintained (it was, in theory, to allow
lokinet as a separate usage in a non-service-node relay mode, i.e. on a
completely separate network).

Confusingly, the option was enabled by the `[lokid]:enabled` config
parameter.
8 months ago
Jason Rhinelander 26fa988d69
Remove router nickname
I don't think Kee needs it anymore.
8 months ago
Jason Rhinelander 1d84e7cbd5
Untangle messy nested dependency tree
lokinet-cryptography depends on lokinet-base which depends on
lokinet-cryptography.

Fixed this but splitting lokinet-cryptography into the libntrup code
(which is what is really needed) and the llarp/crypto code (which isn't
needed for lokinet-base).
8 months ago
Jason Rhinelander 690ec5fbca
Merge pull request #2204 from dr7ana/quic-wip
Draft: Wire Protocol Overhaul, Message Handling Refactor
8 months ago
dr7ana e4315cdc69 More message handling underway 8 months ago
dr7ana 6b1e3fbbc0 Touched up path build message handling 8 months ago
dr7ana a6f901a3a9 RIP everything 8 months ago
dr7ana 577f5e61ea De-mutexing
- mutexes in nodedb and rc_lookup_handler removed
- implemented thread-safe queueing to event loop for previously locked accesses
8 months ago
dr7ana 5ccec24470 callsafe
- Added call_get to ev.hpp to queue event loop operations w/ a return value
- de-mutexed NodeDB and made all operations via event loop. Some calls to NodeDB methods (like ::put_if_newer) were wrapped in call->get's, but some weren't. All function bodies were using mutex locks
8 months ago
dr7ana c8dae875b5 Path routing partially implementing
- Reworking how paths to services and snodes
- pushing for Tom to rebase for path handling
8 months ago
Thomas Winget 2cc02d7b60 handle path build requests, generate responses 8 months ago
dr7ana bd81357f62 Path message transmission
- implementing DHT message transmission methods and surrounding functionalities across paths
8 months ago
dr7ana 65bd224cf0 Exit endpoints implemented
- free standing functions in link_manager
- sign and serialize functionalities siloed in llarp/messages/exit.hpp
8 months ago
dr7ana 4ed6a01e02 following up before Tom meeting 8 months ago
Thomas Winget f35f7fe3f2 refactor path build message construction, no more async nonsense 8 months ago
dr7ana 206bd0b85e wawaweewa 8 months ago
dr7ana 1a9f977208 Message method implementation continued
- tons of surrounding stupid refactoring required
8 months ago
dr7ana ad007ff832 libquic/oxen-mq/oxenc version bumps 8 months ago
dr7ana d9ead7d0f6 crypto and message encoding
- libsodium calls streamlined and moved away from stupid typedefs
- buffer handling taken away from buffer_t and towards ustrings and strings
- lots of stuff deleted
- team is working well
- re-implementing message handling in proper link_manager methods
8 months ago
dr7ana ae319091d6 libquic bump 8 months ago
dr7ana d0c3837384 libquic bparser merged
- bumped version to latest main branch commit
- wired up callbacks to set RPC request stream on creation
- methods for I/O of control and data messages through link_manager
8 months ago
dr7ana a3e6cec7e7 Address type migration + libquic bump
- llarp/router/router.hpp, route_poker, and platform code moved to libquic Address types
- implementing required methods in link_manager for connection establishment
- coming along nicely
9 months ago
dr7ana bfa9629779 More carving + libquic bump
- bumped libquic to begin implementing dependent features on connection open/close signals
- more gutting of interface classes
9 months ago
dr7ana aaf688cf81 Deleted a lot
- RIP llarp/iwp/* and most of llarp/link
9 months ago
dr7ana ffb90e87dc libquic bump 9 months ago
dr7ana fd527d612f Carving through llarp/link 9 months ago
dr7ana d1b7eee7c8 Zlib version bump 1.2.13 -> 1.3 9 months ago
dr7ana a4272c4503 Added span backport 9 months ago
dr7ana 7f8207d5d3 Nuked superfluous interface classes
RIP:
- i_link_manager
- i_outbound_message_handler
- i_gossiper
- i_outbound_session_maker
- i_rc_lookup_handler
9 months ago
dr7ana 821cbeaacf warnings_as_errors fixes 9 months ago
dr7ana 7ce517bd2d oxen-libquic update; no leak warn deprecated 9 months ago
dr7ana 81aa044baa kitware CI deps
- stupid warn deprecated stupid
9 months ago