You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Irbe Krumina 6e0f168db0
cmd/containerboot: fix nil pointer exception (cherry-pick of #14357, #14358) (#14359)
* cmd/containerboot: guard kubeClient against nil dereference (#14357)

A method on kc was called unconditionally, even if was not initialized,
leading to a nil pointer dereference when TS_SERVE_CONFIG was set
outside Kubernetes.

Add a guard symmetric with other uses of the kubeClient.

Signed-off-by: Bjorn Neergaard <bjorn@neersighted.com>
(cherry picked from commit 8b1d01161b)

* cmd/containerboot: don't attempt to write kube Secret in non-kube environments (#14358)

Signed-off-by: Irbe Krumina <irbe@tailscale.com>
(cherry picked from commit 0cc071f154)

* cmd/containerboot: don't attempt to patch a Secret field without permissions (#14365)

Signed-off-by: Irbe Krumina <irbe@tailscale.com>
(cherry picked from commit 6e552f66a0)

Updates tailscale/tailscale#14354
1 year ago
.bencher Revert "VERSION.txt: this is v1.78.0" 1 year ago
.github Revert "VERSION.txt: this is v1.78.0" 1 year ago
appc appc: track metrics for route info storing 2 years ago
atomicfile Revert "VERSION.txt: this is v1.78.0" 1 year ago
chirp Revert "VERSION.txt: this is v1.78.0" 1 year ago
client Revert "VERSION.txt: this is v1.78.0" 1 year ago
clientupdate Revert "VERSION.txt: this is v1.78.0" 1 year ago
cmd cmd/containerboot: fix nil pointer exception (cherry-pick of #14357, #14358) (#14359) 1 year ago
control Revert "VERSION.txt: this is v1.78.0" 1 year ago
derp Revert "VERSION.txt: this is v1.78.0" 1 year ago
disco Revert "VERSION.txt: this is v1.78.0" 1 year ago
docs Revert "VERSION.txt: this is v1.78.0" 1 year ago
doctor Revert "VERSION.txt: this is v1.78.0" 1 year ago
drive drive/driveimpl: use su instead of sudo 1 year ago
envknob Revert "VERSION.txt: this is v1.78.0" 1 year ago
gokrazy gokrazy, various: use point versions of Go and update Nix deps 1 year ago
health health: fix TestHealthMetric to pass on release branch 1 year ago
hostinfo hostinfo: fix testing in container (#14330) (#14337) 1 year ago
internal all: add test for package comments, fix, add comments as needed 2 years ago
ipn Revert "VERSION.txt: this is v1.78.0" 1 year ago
jsondb Revert "VERSION.txt: this is v1.78.0" 1 year ago
k8s-operator cmd/k8s-operator,k8s-operator,go.mod: optionally create ServiceMonitor (#14248) 1 year ago
kube cmd/{containerboot,k8s-operator},kube/kubetypes: kube Ingress L7 proxies only advertise HTTPS endpoint when ready (#14171) 1 year ago
licenses Revert "VERSION.txt: this is v1.78.0" 1 year ago
log Revert "VERSION.txt: this is v1.78.0" 1 year ago
logpolicy Revert "VERSION.txt: this is v1.78.0" 1 year ago
logtail Revert "VERSION.txt: this is v1.78.0" 1 year ago
metrics Revert "VERSION.txt: this is v1.78.0" 1 year ago
net Revert "VERSION.txt: this is v1.78.0" 1 year ago
omit cmd/tailscaled, ipn/conffile: support ec2 user-data config file 2 years ago
packages/deb Revert "VERSION.txt: this is v1.78.0" 1 year ago
paths Revert "VERSION.txt: this is v1.78.0" 1 year ago
portlist Revert "VERSION.txt: this is v1.78.0" 1 year ago
posture Revert "VERSION.txt: this is v1.78.0" 1 year ago
prober cmd/derpprobe,prober: add ability to restrict derpprobe to a single region 1 year ago
proxymap ipnlocal,proxymap,wgengine/netstack: add optional WhoIs/proxymap debug 1 year ago
release Revert "VERSION.txt: this is v1.78.0" 1 year ago
safesocket Revert "VERSION.txt: this is v1.78.0" 1 year ago
safeweb safeweb: add a Shutdown method to the Server type (#14048) 1 year ago
scripts scripts/installer.sh: allow Archcraft for Arch packages (#13870) 1 year ago
sessionrecording sessionrecording: implement v2 recording endpoint support (#14105) 1 year ago
smallzstd Revert "VERSION.txt: this is v1.78.0" 1 year ago
ssh/tailssh sessionrecording: implement v2 recording endpoint support (#14105) 1 year ago
syncs Revert "VERSION.txt: this is v1.78.0" 1 year ago
tailcfg Revert "VERSION.txt: this is v1.78.0" 1 year ago
taildrop Revert "VERSION.txt: this is v1.78.0" 1 year ago
tempfork Revert "VERSION.txt: this is v1.78.0" 1 year ago
tka Revert "VERSION.txt: this is v1.78.0" 1 year ago
tool Revert "VERSION.txt: this is v1.78.0" 1 year ago
tsconst cmd/tailscale/cli: support passing network lock keys via files 1 year ago
tsd util/usermetrics: make usermetrics non-global 1 year ago
tsnet Revert "VERSION.txt: this is v1.78.0" 1 year ago
tstest Revert "VERSION.txt: this is v1.78.0" 1 year ago
tstime Revert "VERSION.txt: this is v1.78.0" 1 year ago
tsweb Revert "VERSION.txt: this is v1.78.0" 1 year ago
types Revert "VERSION.txt: this is v1.78.0" 1 year ago
util Revert "VERSION.txt: this is v1.78.0" 1 year ago
version Revert "VERSION.txt: this is v1.78.0" 1 year ago
wf wf/firewall: allow link-local multicast for permitted local routes when the killswitch is on on Windows 1 year ago
wgengine Revert "VERSION.txt: this is v1.78.0" 1 year ago
words Revert "VERSION.txt: this is v1.78.0" 1 year ago
.gitattributes Revert "VERSION.txt: this is v1.78.0" 1 year ago
.gitignore tstest/tailmac: add customized macOS virtualization tooling (#13146) 1 year ago
.golangci.yml ci: run 'go vet' in golangci-lint; fix errors in tests 2 years ago
ALPINE.txt ALPINE.txt,Dockerfile{.base},build_docker.sh: bump alpine (#10543) 2 years ago
AUTHORS Revert "VERSION.txt: this is v1.78.0" 1 year ago
CODEOWNERS Revert "VERSION.txt: this is v1.78.0" 1 year ago
CODE_OF_CONDUCT.md Revert "VERSION.txt: this is v1.78.0" 1 year ago
Dockerfile all: switch to and require Go 1.23 1 year ago
Dockerfile.base ALPINE.txt,Dockerfile{.base},build_docker.sh: bump alpine (#10543) 2 years ago
LICENSE Revert "VERSION.txt: this is v1.78.0" 1 year ago
Makefile Makefile,./build_docker.sh: update kube operator image build target name (#14251) 1 year ago
PATENTS Revert "VERSION.txt: this is v1.78.0" 1 year ago
README.md all: switch to and require Go 1.23 1 year ago
SECURITY.md Revert "VERSION.txt: this is v1.78.0" 1 year ago
VERSION.txt VERSION.txt: this is v1.78.1 1 year ago
api.md {api.md,publicapi}: remove old API docs (#13468) 1 year ago
assert_ts_toolchain_match.go tailscaleroot: panic if tailscale_go build tag but Go toolchain mismatch 1 year ago
build_dist.sh cmd/tailscale: add shell tab-completion 2 years ago
build_docker.sh Makefile,./build_docker.sh: update kube operator image build target name (#14251) 1 year ago
flake.lock nix: update nix and use go 1.23 1 year ago
flake.nix gokrazy, various: use point versions of Go and update Nix deps 1 year ago
go.mod cmd/k8s-operator,k8s-operator,go.mod: optionally create ServiceMonitor (#14248) 1 year ago
go.mod.sri go.mod.sri: update SRI hash for go.mod changes 1 year ago
go.sum go.mod: bump tailscale/wireguard-go 1 year ago
go.toolchain.branch all: switch to and require Go 1.23 1 year ago
go.toolchain.rev go.toolchain.rev: bump from Go 1.23.1 to Go 1.23.3 1 year ago
gomod_test.go Revert "VERSION.txt: this is v1.78.0" 1 year ago
header.txt cmd/k8s-operator: operator can create subnetrouter (#9505) 2 years ago
pkgdoc_test.go all: add test for package comments, fix, add comments as needed 2 years ago
pull-toolchain.sh Revert "VERSION.txt: this is v1.78.0" 1 year ago
shell.nix go.mod.sri: update SRI hash for go.mod changes 1 year ago
staticcheck.conf all: cleanup unused code, part 2 (#10670) 2 years ago
update-flake.sh Code Improvements (#11311) 2 years ago
version-embed.go tailscaleroot: panic if tailscale_go build tag but Go toolchain mismatch 1 year ago
version_tailscale_test.go tailscaleroot: panic if tailscale_go build tag but Go toolchain mismatch 1 year ago
version_test.go go.mod,wgengine/netstack: bump gvisor 2 years ago

README.md

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains the majority of Tailscale's open source code. Notably, it includes the tailscaled daemon and the tailscale CLI tool. The tailscaled daemon runs on Linux, Windows, macOS, and to varying degrees on FreeBSD and OpenBSD. The Tailscale iOS and Android apps use this repo's code, but this repo doesn't contain the mobile GUI code.

Other Tailscale repos of note:

For background on which parts of Tailscale are open source and why, see https://tailscale.com/opensource/.

Using

We serve packages for a variety of distros and platforms at https://pkgs.tailscale.com.

Other clients

The macOS, iOS, and Windows clients use the code in this repository but additionally include small GUI wrappers. The GUI wrappers on non-open source platforms are themselves not open source.

Building

We always require the latest Go release, currently Go 1.23. (While we build releases with our Go fork, its use is not required.)

go install tailscale.com/cmd/tailscale{,d}

If you're packaging Tailscale for distribution, use build_dist.sh instead, to burn commit IDs and version info into the binaries:

./build_dist.sh tailscale.com/cmd/tailscale
./build_dist.sh tailscale.com/cmd/tailscaled

If your distro has conventions that preclude the use of build_dist.sh, please do the equivalent of what it does in your distro's way, so that bug reports contain useful version information.

Bugs

Please file any issues about this code or the hosted service on the issue tracker.

Contributing

PRs welcome! But please file bugs. Commit messages should reference bugs.

We require Developer Certificate of Origin Signed-off-by lines in commits.

See git log for our commit message style. It's basically the same as Go's style.

About Us

Tailscale is primarily developed by the people at https://github.com/orgs/tailscale/people. For other contributors, see:

WireGuard is a registered trademark of Jason A. Donenfeld.