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.
tailscale/ipn
Brad Fitzpatrick 20a357b386 ipn, ipn/ipnserver: add IPN state for server in use, handle explicitly
On Windows, we were previously treating a server used by different
users as a fatal error, which meant the second user (upon starting
Tailscale, explicitly or via Start Up programs) got an invasive error
message dialog.

Instead, give it its own IPN state and change the Notify.ErrMessage to
be details in that state. Then the Windows GUI can be less aggresive
about that happening.

Also,

* wait to close the IPN connection until the server ownership state
  changes so the GUI doesn't need to repeatedly reconnect to discover
  changes.

* fix a bug discovered during testing: on system reboot, the
  ipnserver's serverModeUser was getting cleared while the state
  transitioned from Unknown to Running. Instead, track 'inServerMode'
  explicitly and remove the old accessor method which was error prone.

* fix a rare bug where the client could start up and set the server
  mode prefs in its Start call and we wouldn't persist that to the
  StateStore storage's prefs start key. (Previously it was only via a
  prefs toggle at runtime)
4 years ago
..
ipnserver ipn, ipn/ipnserver: add IPN state for server in use, handle explicitly 4 years ago
ipnstate Revert "all: keep UserProfiles a slice instead of a map for longer" 4 years ago
policy ipn, ipn/policy: filter portlist to a short list of "interesting" ports 5 years ago
backend.go ipn, ipn/ipnserver: add IPN state for server in use, handle explicitly 4 years ago
doc.go Move Linux client & common packages into a public repo. 5 years ago
fake_test.go cmd/tailscale/cli: add basic 'down' subcommand 4 years ago
handle.go ipn: add Login backend command for sign-in with token 4 years ago
local.go ipn, ipn/ipnserver: add IPN state for server in use, handle explicitly 4 years ago
loglines_test.go ipn: don't log redundant peer stats so often 4 years ago
message.go ipn, ipn/ipnserver: add IPN state for server in use, handle explicitly 4 years ago
message_test.go ipn: add Login backend command for sign-in with token 4 years ago
prefs.go ipn: use cmd/cloner for Prefs.Clone 4 years ago
prefs_clone.go ipn: use cmd/cloner for Prefs.Clone 4 years ago
prefs_test.go Change some os.IsNotExist to errors.Is(err, os.ErrNotExist) for non-os errors. 4 years ago
store.go ipn, ipnserver, cmd/tailscale: add "server mode" support on Windows 4 years ago
store_test.go Add tstest.PanicOnLog(), and fix various problems detected by this. 5 years ago