summaryrefslogtreecommitdiffhomepage
path: root/tunnel
AgeCommit message (Collapse)Author
2020-06-22libwg-go: use conn.Bind for socketfd peekDavid Crawshaw
Signed-off-by: David Crawshaw <crawshaw@tailscale.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-06-07tools: bump versionsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-04tunnel: add windows-style killswitch semantics for GoBackendJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-04-26libwg-go: bump go versionHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-23ToolsInstaller: update Magisk directoryHarsh Shandilya
/data/adb/modules has been the location for modules since v18.0 and nobody should reasonably be on any older version anymore. This has continued to work for this long because Magisk created symlinks for backwards compat. However, these symlinks are not created anymore on Android 11, which is where this problem first surfaced. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-19tunnel: disable LongLogTag lintHarsh Shandilya
Should have been part of the patch that disabled this for ui/ Fixes: 8d128cf2e963 ("ui: disable LongLogTag lint") Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-08tunnel: disable BuildConfig generationHarsh Shandilya
We don't (and shouldn't) use BuildConfig values, but the class was polluting our public API regardless which is undesirable. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-05tunnel: support IncludedApplications as whitelistJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-04-06tunnel: hold peers in an ArrayListHarsh Shandilya
A set will cause identical peers to be dropped during save Reported-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-03version: bumpJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-04-03tunnel: libwg-go: use deterministic verdef nameJason A. Donenfeld
From the ld.gold source: const char* name = parameters->options().soname(); if (name == NULL) name = parameters->options().output_file_name(); That means by default it uses `-o {output}` as the verdef aux name, which is random every time due to Go's build system. By passing in `--soname={somethingexplicit}` we can instead have a deterministic verdef. This commit makes wireguard-android reproducible. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-04-01tunnel: libwg-go: remove -x option from flockJason A. Donenfeld
It's already the default and the macOS port of flock doesn't support it. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-30global: cleanup code styleJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-29tunnel: libwg-go: check sha256 of downloaded tarballJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-29tunnel: libwg-go: stick go tarball in gradle cacheJason A. Donenfeld
This way we don't have to build over and over. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-29tunnel: libwg-go: prevent parallel downloadsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-29tunnel: fix package name being passed through to cmakeJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-28global: hardcode tags so that minification doesn't ruin the logJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22libwg-go: update go modulesJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22libwg-go: bump go versionJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-19InetEndpoint: return proper parser exceptionJason A. Donenfeld
Wrapping this in something foreign doesn't make sense. Reported-by: Luis Ressel <aranea@aixah.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-14publish.gradle: Use non-deprecated API to prevent eager configuration of tasksHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-14tunnel: Add an initial set of unit testsHarsh Shandilya
Includes a control set of broken configuration files that we attempt to parse and verify that the parser fails in a predictable and consistent manner. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-14tunnel: Remove MISSING_VALUE from BadConfigException reasonsHarsh Shandilya
This is covered under SYNTAX_ERROR which feels like a reasonable choice, so get rid of this unused field and associated resource string. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-13config: show missing section error correctlyJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-12tunnel: replace CompletableFuture with GhettoCompletableFutureJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-12tunnel: we return Optional types so mark retrostreams as apiJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-11tunnel: add javadoc supportJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10tunnel: the external API does not expose java9Jason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10tunnel: tools: update to latest goJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10tunnel: make use of @RestrictToJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10build: abstract out groupNameJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10global: java access control has important semantic meaningJason A. Donenfeld
It's not right to blindly follow all of AndroidStudio's suggestions, especially for things in tunnel/ which comprise useful API. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-10tunnel: Codestyle cleanupsHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-10ui: Codestyle cleanupsHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-10tunnel: upload aar to bintrayJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09build: apply version to both modulesJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09Version bumpJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09global: format codeJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09global: optimize importsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09global: get rid of nonnull gradle hackJason A. Donenfeld
Hacking things up via gradle is not right, and package-info.java poses problems with two modules, so instead we just apply it manually to every class. Remember to add this to new classes! Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09WgQuickBackend: by default use single-tunnel mode like GoBackend, but add optionJason A. Donenfeld
Note that this currently doesn't play well with people activating wg-quick tunnels from outside the app. Those tunnels won't be deactivated. But presumably that's desired behavior anyway, considering people are mucking around at the command line. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09ModuleLoader: move to right projectJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09AsyncWorker: move back to original locationJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-09Use AndroidX Nullable annotation everywhereHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-09Enable nonnull generation for tunnel moduleHarsh Shandilya
Also cleanup nonnull.gradle while we're at it Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-09Migrate tunnel related classes to tunnel/ Gradle moduleHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>