tailscale/feature
kari-ts 7355116c05
ipn/store: make WriteState(id, nil) delete key instead of adding nil entry (#19920)
All StateStore implementations store a nil value in the cache map when WriteState is called with a nil byte slice instead of deleting the key. This causes ReadState to return (nil, nil) instead of (nil, ErrStateNotExist), since the key is still present in the map.

This breaks reset-auth in Windows, Linux, and Android, and the node can't log back in without manually editing the state file. (macOS uses a different state store)
DeleteProfile, DeleteAllProfilesForUser, setUnattendedModeAsConfigured are impacted but don't seem to break because the deleted keys are not reread.

This deletes the key from the cache instead.

Fixes tailscale/corp#42477

Signed-off-by: kari-ts <kari@tailscale.com>
2026-05-29 11:22:14 -07:00
..
ace all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
appconnectors all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
awsparamstore cmd/tailscale/cli: allow fetching keys from AWS Parameter Store 2026-01-29 18:09:56 -05:00
buildfeatures control/controlknobs,feature/*,ipn/ipnlocal,tailcfg: add runtimemetrics 2026-05-26 16:02:01 -07:00
c2n all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
capture all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
clientupdate feature/clientupdate: windows update should use tailscale.exe update (#19438) 2026-04-17 10:28:35 -07:00
condlite/expvar all: fix duplicate package docs and tighten TestPackageDocs 2026-04-24 19:01:43 -07:00
condregister control/controlknobs,feature/*,ipn/ipnlocal,tailcfg: add runtimemetrics 2026-05-26 16:02:01 -07:00
conn25 feature/conn25: use new pool nodeattr 2026-05-29 08:29:34 -07:00
debugportmapper all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
doctor ipn/ipnlocal, all: split LocalBackend.NetMap into NetMapNoPeers / NetMapWithPeers 2026-04-30 11:14:06 -07:00
drive all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
featuretags control/controlknobs,feature/*,ipn/ipnlocal,tailcfg: add runtimemetrics 2026-05-26 16:02:01 -07:00
identityfederation cmd/vet: add subtestnames analyzer; fix all existing violations 2026-04-05 15:52:51 -07:00
linkspeed all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
linuxdnsfight all: use Go 1.26 things, run most gofix modernizers 2026-03-06 13:32:03 -08:00
oauthkey cmd/vet: add subtestnames analyzer; fix all existing violations 2026-04-05 15:52:51 -07:00
portlist feature/portlist: address case where poller misses CollectServices updates 2026-03-04 13:07:23 -08:00
portmapper all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
posture posture: add HealthTracker for serial number retrieval (#19181) 2026-04-25 15:42:47 -03:00
relayserver control/controlknobs,net/{batching,tstun},wgengine: add nodecaps to disable UDP & TUN GRO/GSO 2026-05-27 17:10:14 -07:00
routecheck feature/routecheck: add ts_omit_routecheck feature flag (#19638) 2026-05-15 15:50:50 -07:00
runtimemetrics control/controlknobs,feature/*,ipn/ipnlocal,tailcfg: add runtimemetrics 2026-05-26 16:02:01 -07:00
sdnotify all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
ssh ipn/ipnlocal, feature/ssh: move SSH code out of LocalBackend to feature 2026-03-10 17:27:17 -07:00
syspolicy all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
taildrop feature/taildrop: replace outgoing-file progress channel with synchronous reporter 2026-05-27 12:00:34 -07:00
tailnetlock tka,ipn: reduce boilerplate in Tailnet Lock tests 2026-05-07 21:49:27 +01:00
tap all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
tpm ipn/store: make WriteState(id, nil) delete key instead of adding nil entry (#19920) 2026-05-29 11:22:14 -07:00
tundevstats feature/*,net/tstun: add tundev_txq_drops clientmetric on Linux 2026-03-24 09:44:58 -07:00
useproxy all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
wakeonlan all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
feature.go all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00
hooks.go ipn/ipnlocal, feature/ssh: move SSH code out of LocalBackend to feature 2026-03-10 17:27:17 -07:00
sdnotify.go all: remove AUTHORS file and references to it 2026-01-23 15:49:45 -08:00