Brad Fitzpatrick
666d404066
ipn: put discovery key generation behind an environment flag for now
...
Later we'll want to use the presence of a discovery key as a signal
that the node knows how to participate in discovery. Currently the
code generates keys and sends them to the control server but doesn't
do anything with them, which is a bad state to stay in lest we release
this code and end up with nodes in the future that look like they're
functional with the new discovery protocol but aren't.
So for now, make this opt-in as a debug option for now, until the rest
of it is in.
Updates #483
6 years ago
Dmytro Shynkevych
00ca17edf4
ipn: fix race in enterState
...
Signed-Off-By: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Brad Fitzpatrick
53fb25fc2f
all: generate discovery key, plumb it around
...
Not actually used yet.
Updates #483
6 years ago
Brad Fitzpatrick
88c305c8af
tailcfg: add DiscoKey, unify some code, add some tests
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
Brad Fitzpatrick
d9054da86a
wgengine: disambiguate Reconfig logging paths
6 years ago
David Anderson
0ecaf7b5ed
control/controlclient: make netmap generation use rate-limited logger.
6 years ago
David Anderson
401e2ec307
control/controlclient: delete unused function.
6 years ago
Brad Fitzpatrick
58c9591a49
version: bump date
6 years ago
David Anderson
10368ef4c0
go.mod: bump wireguard-go version.
6 years ago
Dmytro Shynkevych
c12d87c54b
Fix concurrency issues in controlclient, ipn, types/logger ( #456 )
...
Signed-Off-By: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Brad Fitzpatrick
c8cf3169ba
cmd/derper, derp/derphttp: move bulk of derp mesh code into derphttp
...
To be reused in various other tools.
6 years ago
Brad Fitzpatrick
7cbf6ab771
cmd/derper: remove unused parameter in runMeshClient
6 years ago
Avery Pennarun
5d4415399b
Merge remote-tracking branch 'origin/master' into main
...
* origin/master:
Fix staticcheck warning, add Makefile with staticcheck targets, lock in staticcheck version in go.mod
6 years ago
Brad Fitzpatrick
6757c990a8
Fix staticcheck warning, add Makefile with staticcheck targets, lock in staticcheck version in go.mod
6 years ago
Brad Fitzpatrick
08a6eeb55a
Fix staticcheck warning, add Makefile with staticcheck targets, lock in staticcheck version in go.mod
6 years ago
Avery Pennarun
d9fd5db1e1
Rename master -> main.
...
Background:
https://www.zdnet.com/article/github-to-replace-master-with-alternative-term-to-avoid-slavery-references/
6 years ago
Brad Fitzpatrick
abd79ea368
derp: reduce DERP memory use; don't require callers to pass in memory to use
...
The magicsock derpReader was holding onto 65KB for each DERP
connection forever, just in case.
Make the derp{,http}.Client be in charge of memory instead. It can
reuse its bufio.Reader buffer space.
6 years ago
Quoc-Viet Nguyen
15a23ce65f
net/stun: Remove unreachable code
...
- Reuse IP length constants from net package.
- Remove beu16 to make endianness functions consistent.
Signed-off-by: Quoc-Viet Nguyen <afelion@gmail.com>
6 years ago
Brad Fitzpatrick
a036c8c718
version: add blank line to separate comment from package line
...
So it's not a package comment.
6 years ago
David Anderson
0371848097
Revert "version: delete GENERATE.go."
...
This reverts commit a447caebf8 .
6 years ago
David Anderson
4c23b5e4ea
version: remove leftover debug print.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
David Anderson
03aa319762
version: add an AtLeast helper to compare versions.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
David Anderson
9dd3544e84
version: bump oss datestamp.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
David Anderson
1f4ccae591
version: remove comment about being unused.
...
version.SHORT is now being used in various places.
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
David Anderson
a447caebf8
version: delete GENERATE.go.
...
It existed previously to persuade Go that redo-ful directory was
a Go package prior to the first build. But now we have other Go
files in the directory that will fulfil that function.
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
Brad Fitzpatrick
50b2e5ffe6
log/logheap: appease staticcheck
6 years ago
Brad Fitzpatrick
8edcab04d5
log/logheap: change to POST to a URL instead of logging
...
It's too big to log.
6 years ago
Brad Fitzpatrick
51f421946f
tailcfg: add some example strings in comments
6 years ago
Brad Fitzpatrick
deb113838e
net/netcheck: use logger.ArgWriter in logConciseReport, fix comma bug, add tests
6 years ago
Brad Fitzpatrick
280e8884dd
wgengine/magicsock: limit redundant log spam on packets from low-pri addresses
...
Fixes #407
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
David Anderson
d05b0500ac
wgengine: loop back tuntap packets destined for local IPs.
...
macOS incorrectly sends packets for the local Tailscale IP
into our tunnel interface. We have to turn the packets around
and send them back to the kernel.
Fixes tailscale/corp#189 .
Signed-off-by: David Anderson <danderson@tailscale.com>
6 years ago
Zijie Lu
d1a30be275
tsweb: JSONHandler: supports HTTPError
...
Signed-off-by: Zijie Lu <zijie@tailscale.com>
6 years ago
Avery Pennarun
51d176ecff
wgengine: Remove leftover debug message.
...
Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
6 years ago
Dmytro Shynkevych
07e02ec9d3
wgengine/tsdns: add test and prevent useless updates ( #449 )
...
Signed-Off-By: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Dmytro Shynkevych
511840b1f6
tsdns: initial implementation of a Tailscale DNS resolver ( #396 )
...
Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Zijie Lu
5e1ee4be53
tsweb: fix JSONHandler nil response
...
Signed-off-by: Zijie Lu <zijie@tailscale.com>
6 years ago
Brad Fitzpatrick
c3f7733f53
logpolicy: don't check version.CmdName on Windows unnecessarily
...
... it was crashing for some reason, running out of stack while
loading a DLL in goversion. I don't understand Windows (or the Go
runtime for Windows) enough to know why that'd be problematic in that
context.
In any case, don't call it, as tryFixLogStateLocation does nothing on
Windows anyway.
tryFixLogStateLocation should probably just call version.CmdName
itself if/when it needs to, after the GOOS check.
6 years ago
Brad Fitzpatrick
5c9ddf5e76
version: fix typo in comment
6 years ago
Brad Fitzpatrick
2ca2389c5f
portlist: set SysProcAttr.HideWindow on Windows
...
Prevents annoying shell window flashes when running /server by hand.
6 years ago
Brad Fitzpatrick
07ca0c1c29
derp: fix tracking problem if conn starts local, then also joins mesh peer
6 years ago
Brad Fitzpatrick
39f2fe29f7
tempfork/registry: work around issue with Tailscale's redo build system
...
Updates tailscale/corp#293
6 years ago
Brad Fitzpatrick
1cb7dab881
cmd/derper: support forwarding packets amongst set of peer DERP servers
...
Updates #388
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
Brad Fitzpatrick
e441d3218e
tempfork/registry: add golang.org/x/sys/windows/registry + CL 236681
...
Temporary fork of golang.org/x/sys/windows/registry with:
windows/registry: add Key.WaitChange wrapper around RegNotifyChangeKeyValue
https://go-review.googlesource.com/c/sys/+/236681
6 years ago
Dmytro Shynkevych
02231e968e
wgengine/tstun: add tests and benchmarks ( #436 )
...
Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Avery Pennarun
6f590f5b52
logtail: we missed a case for the backoff timer.
...
We want to run bo.Backoff() after every upload, regardless. If
upload==true but err!=nil, we weren't backing off, which caused some
very-high-throughput log upload retries in bad network conditions.
Updates #282 .
Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
6 years ago
halulu
1d2e497d47
tsweb: JSONHandler using reflect ( #437 )
...
Updates #395 #437
Signed-off-by: Zijie Lu <zijie@tailscale.com>
6 years ago
Dmytro Shynkevych
059b1d10bb
wgengine/packet: refactor and expose UDP header marshaling ( #408 )
...
Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com>
6 years ago
Brad Fitzpatrick
5e0ff494a5
derp: change NewClient constructor to an option pattern
...
(The NewMeshClient constructor I added recently was gross in
retrospect at call sites, especially when it wasn't obvious that a
meshKey empty string meant a regular client)
6 years ago
Brad Fitzpatrick
4d599d194f
derp, derp/derphttp: add key accessors, add Client.RecvDetail
...
Client.RecvDetail returns a connection generation so interested clients
can detect when a reconnect happened. (Will be needed for #388 )
6 years ago
Brad Fitzpatrick
b33c86b542
derp: add an unexported key.Public zero value variable to be less verbose
6 years ago