From e5ef35857f2c16e40c3418de1f26bb7f5d2366b8 Mon Sep 17 00:00:00 2001 From: Brad Fitzpatrick Date: Tue, 7 May 2024 22:15:56 -0700 Subject: [PATCH] ipn/ipnlocal: fix read of keyExpired outside mutex Fixes #12039 Change-Id: I28c8a282ce12619f17103e9535841f15394ce685 Signed-off-by: Brad Fitzpatrick --- ipn/ipnlocal/local.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ipn/ipnlocal/local.go b/ipn/ipnlocal/local.go index 5771a8d7b..b8e46619a 100644 --- a/ipn/ipnlocal/local.go +++ b/ipn/ipnlocal/local.go @@ -2477,9 +2477,10 @@ func (b *LocalBackend) popBrowserAuthNow() { url := b.authURL b.interact = false b.authURL = "" // but NOT clearing authURLSticky + expired := b.keyExpired b.mu.Unlock() - b.logf("popBrowserAuthNow: url=%v, key-expired=%v, seamless-key-renewal=%v", url != "", b.keyExpired, b.seamlessRenewalEnabled()) + b.logf("popBrowserAuthNow: url=%v, key-expired=%v, seamless-key-renewal=%v", url != "", expired, b.seamlessRenewalEnabled()) // Deconfigure the local network data plane if: // - seamless key renewal is not enabled;