diff options
Diffstat (limited to 'cmd/tailscaled/cli/logout.go')
| -rw-r--r-- | cmd/tailscaled/cli/logout.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/cmd/tailscaled/cli/logout.go b/cmd/tailscaled/cli/logout.go new file mode 100644 index 000000000..6356b2452 --- /dev/null +++ b/cmd/tailscaled/cli/logout.go @@ -0,0 +1,34 @@ +// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package cli + +import ( + "context" + "log" + "strings" + + "github.com/peterbourgon/ff/v2/ffcli" + "tailscale.com/client/tailscale" +) + +var logoutCmd = &ffcli.Command{ + Name: "logout", + ShortUsage: "logout [flags]", + ShortHelp: "Disconnect from Tailscale and expire current node key", + + LongHelp: strings.TrimSpace(` +"tailscale logout" brings the network down and invalidates +the current node key, forcing a future use of it to cause +a reauthentication. +`), + Exec: runLogout, +} + +func runLogout(ctx context.Context, args []string) error { + if len(args) > 0 { + log.Fatalf("too many non-flag arguments: %q", args) + } + return tailscale.Logout(ctx) +} |
