Commit Graph

27 Commits (4c630e0437462374af9e9df6fb2fa990c45fed20)

Author SHA1 Message Date
Thomas Winget 4c630e0437 Large collection of changes to make android work
- Previous android java and jni code updated to work, but with much love
  still needed to make it work nicely, e.g. handling when the VPN is
  turned off.

- DNS handling refactored to allow android to intercept and handle DNS
  requests as we can't set the system DNS to use a high port
  (and apparently Chrome ignores system DNS settings anyway)

- add packet router structure to allow separate handling of specific
  intercepted traffic, e.g. UDP traffic to port 53 gets handled by our
  DNS handler rather than being naively forwarded as exit traffic.

- For now, android lokinet is exit-only and hard-coded to use exit.loki
  as its exit.  The exit will be configurable before release, but
  allowing to not use exit-only mode is more of a challenge.

- some old gitignore remnants which were matching to things we don't
  want them to (and are no longer relevant) removed

- some minor changes to CI configuration
3 years ago
Jeff Becker ffef3bc48f
wire up sigusr1 to reset libunbound dns resolver 3 years ago
Thomas Winget 8f0330c9f2 std::vector instead of std::array 4 years ago
Thomas Winget b875d40491 restructure how upstream dns replies are handled
llarp::dns::Message does not fully support DNS packets,
so converting the upstream response to one will not work
for all query types.  Also it is kinda silly to begin with,
as the upstream reply is already a network packet, ready to go.
4 years ago
Thomas Winget c2a30692cf Implement upstream DNS using libunbound 4 years ago
Stephen Shelton aee96e53a3
Refactor Addr -> IpAddress/SockAddr 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
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.
4 years ago
Jeff Becker 9c30ff7a26
handle snode and clean up codepath for hooked dns 4 years ago
Jeff Becker d2be8ac384
fix issue #894 5 years ago
Michael edd0ec398f
Move thread stuff to subdirectory 5 years ago
Michael 16cdfbd5f0
clang-tidy modernize pass 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
Jeff Becker 0529e45ebe
more 5 years ago
Michael 4143472a17
Add cmake module to target a library as 'system', and fix a few warnings 5 years ago
Jeff Becker e178a70929
use shared_ptr for event loop 5 years ago
Michael 7ca3e13e78
Rename to ManagedBuffer 5 years ago
Michael f3b0af9d2f
Create CopyableBuffer type 5 years ago
Michael a3463120cc
Move net components into a distinct folder 6 years ago
Michael 081d4dfa32
Reorganise source into more folders 6 years ago
Michael e5eda0fb8f
Move lokinet unspecific components to a util/ library 6 years ago
Michael df4fd0ef56
Fix some low hanging performance issues 6 years ago
Jeff Becker 2a678f47c4
fix previous commit 6 years ago
Jeff Becker be1e78ca5d
make it compile 6 years ago
Michael 85dde7b6b0
Move remaining include/llarp headers to llarp/ 6 years ago
Michael d9ce493a9e
Move dns* to llarp/ 6 years ago