Commit Graph

201 Commits (331bc1e30ae5c725d73e80e3b48591f1e88bb6f5)
 

Author SHA1 Message Date
Elias Naur 331bc1e30a jni: introduce Get*ArrayElements
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur e007a9c153 android: bump target/compile SDK version to 30
Gio uses SDK 30 API now.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Denton Gentry 7dedc91a80 ui: show IPv6 address if there's no IPv4 address
There are several situations where a peer may only have IPv6:
+ it was authorized using an ephemeral node key
  https://tailscale.com/kb/1111/ephemeral-nodes/
+ the Tailnet has IPv4 disabled
  https://twitter.com/bradfitz/status/1398380415124082690

So:
+ if a peer has an IPv4 address, display that.
+ if a peer does not have an IPv4 address, display IPv6.
+ If a peer does not have either IPv4 or IPv6 then leave
  the address blank. Not sure how this could happen.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 594ed6b7bc android: bump version code
On 6/24 I built a v43 and started to release it to production,
then decided to do an Internal release first. The Play Store
would not allow v43 to be used again so I built v44, released
it to Internal, and after testing promoted it to Production and
it went into Google's review process.

Crucially, I did not push the tags before going to bed.

On 6/25, not knowing any of this because I hadn't pushed the tags,
Elias built v43 and released it. The Play Store had apparently cleaned
up the state from my abandoned v43 by that point.

This commit increments the build number to v44 so we don't re-use it.
I'm not building an actual release, just incrementing the build
number and pointing to the same git commit. I'm hoping F-Droid will
therefore build exactly the same thing as it did for v43.

I promise to push the tags before going to bed next time.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur e8f2409cb3 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 47b732aaab Makefile,version: update versioning scheme to match main repository
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 131bf27995 cmd/tailscale: use go:embed directives for image files
Fixes tailscale/tailscale#2243

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur b57f06455d go.*: bump Gio version
Enables us to replace GioActivity with our own.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur d67229dc38 jni: merge jni.c into jni.go
As a bonus, the C functions can be static.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Brad Fitzpatrick 2f7b27412a gitignore: also ignore tailscale-debug.apk 3 years ago
Brad Fitzpatrick b97cc703d8 Fix routing loop prevention, MagicDNS forwarding over Tailscale.
Fixes tailscale/tailscale#2102
Updates tailscale/tailscale#1809

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
3 years ago
Brad Fitzpatrick ac8ec020b8 Update to Tailscale 1.10.
Updates tailscale/tailscale#2102
Updates tailscale/tailscale#1809
3 years ago
Brad Fitzpatrick d66204ecfd Dockerfile: bump Go to 1.16, set ANDROID_SDK_ROOT for dockershell 3 years ago
Elias Naur 9e9d69fd95 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Denton Gentry 0489079771
Merge pull request #10 from tailscale/b1956
backend: Send DNS config through CallbackRouter.
3 years ago
Denton Gentry 90351e7392 backend: Send DNS config through CallbackRouter.
Using NewNoopManager avoided the errors from trying to overwrite
/etc/resolv.conf, but still didn't fully work. Route DNS config
through the CallbackRouter.

Fixes https://github.com/tailscale/tailscale/issues/1956

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur 20ddae3208 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur ff16a75a65 go.*: bump tailscale.com to 1.8.6
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 9ba4a01a4e cmd/tailscale: remove tstun.Wrapper
NewUserspaceEngine wraps our TUN device already.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Denton Gentry d90aa446c0
Merge pull request #9 from tailscale/b1956
backend: use dns.NewNoopManager.
3 years ago
Denton Gentry ec8133a972 backend: use dns.NewNoopManager.
Android updates its DNS config in updateTUN() when in response
to several different channels from the backend.

There is not an Android-specific NewOSConfigurator, we end
up pulling in the Linux NewOSConfigurator:
https://github.com/tailscale/tailscale/blob/main/net/dns/manager_linux.go

The Linux DNS manager expects to be able to write to /etc/resolv.conf,
which does not work on Android and causes errors in updating DNS config.

Instead, allocate dns.NewNoopManager to disable the DNS manager, and
rely on the updateTUN() code to handle DNS.

Fixes https://github.com/tailscale/tailscale/issues/1956

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur 3d2abf0b3b android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 8ea1d4ced7 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 06e461d703 go.*,cmd/tailscale: upgrade to tailscale.com v1.8.3
Updates tailscale/tailscale#1695

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 401ed389ef android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 05212e770b cmd/tailscale: don't configure logtail for low memory
logtail in low memory configuration truncates log lines to ~254 bytes.

Fixes tailscale/tailscale#1625

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 6d9d6786af Makefile: make sed invocations portable to macOS
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur db13aa4e92 android/build.gradle: upgrade androidx.security to 1.1.0-alpha03
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 633d81287a cmd/tailscale,com/tailscale/ipn: delete unused constant, reformat
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 206f2bb4e7 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur e2d731dbba ensure exit node status is updated when changing it
Fixes tailscale/tailscale#1545

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 085d823920 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 05ddfd5d90 go.*: upgrade to tailscale v1.6.0
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 3b1a5e7a71 cmd/tailscale: implement Tailscale 1.6 default route setting
Fixes tailscale/tailscale#1401

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 71e0f2bd94 cmd/tailscale,go.*: bump gio version
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 56362cc61a cmd/tailscale,go.*: upgrade to latest tailscale
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur b151de039b cmd/tailscale: simplify non-blocking coalescing channels
Three variables are used everywhere a single non-blocking producer sends
values where only the latest is relevant:

    var (
	    mu sync.Mutex
	    latest T
	    notify = make(chan struct{}, 1)
    )

By draining the notification channel before sending through it, we
can simplify to just one channel:

    latest = make(chan T, 1)

Thanks to Chris Waldon for showing me this neat trick.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur dfe7b6c0a2 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur d3e0b42093 go.*: upgrade to tailscale v1.4.5
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur ebdbe7c315 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 3e758d0fe2 go.*: bump tailscale.com to v1.4.4
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 54917ae2f5 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 33cf7c0aa1 jni: replace True and False with more convenient Bool function
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 07b2373e6b com/tailscale/ipn,cmd/tailscale: handle quick tile clicks while signed out
Specifically, start the main activity to prompt the user to sign in or
be notified of a pending machine auth.

Fixes tailscale/tailscale#1225

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 71a9bd537c com/tailscale/ipn,AndroidManifest.xml: make quick tile service passive
Active mode is more efficient, but otherwise equivalent to passive mode.
However, some Android versions don't implement active mode reliably. See
also

https://stackoverflow.com/questions/58035971/tileservice-requestlisteningstate-not-working-on-android-q-couldnt-find-tile-f
https://issuetracker.google.com/issues?q=requestListeningState

I can reproduce issue 1225 on an Android 10 emulator, but no longer with
this change applied.

For tailscale/tailscale#1225

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur f19c0c057e android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Sonia Appasamy c4f626c5a7 cmd/tailscale: use node.DisplayName for machine names
Update to tailscale 1.4.0 while here.

Signed-off-by: Sonia Appasamy <sonia@tailscale.com>
3 years ago
Elias Naur ba38a9bb59 jni,cmd/tailscale: replace jni.EnvFor with explicit conversion
The EnvFor converted an uintptr to a pointer value, which is not
guaranteed to work in general. This change removes EnvFor and pushes the
potentially unsafe conversion to users of the jni package.

Fixes tailscale/tailscale#1195

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 61d9733b24 jni,cmd/tailscale: replace jni.JVMFor with direct cast
The JVMFor function converted an uintptr to a pointer, which is not
guaranteed to work in general. This change removes JVMFor, forcing the
unsafe conversion to the user of the jni packge.

Updates tailscale/tailscale#1195

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur d3dc208237 jni: move package documentation to the package declaration
Updates tailscale/tailscale#1195

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago