From a99699e3707b89ac1a7e0dbd9ee0170642bb19ce Mon Sep 17 00:00:00 2001 From: Jack Doan Date: Tue, 21 Jul 2026 10:31:00 -0500 Subject: [PATCH] before removing a pending hostinfo in handshake_manager, make sure it's the one we wanted to delete (#1811) --- handshake_manager.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/handshake_manager.go b/handshake_manager.go index 6a2d0b4a..b246aa48 100644 --- a/handshake_manager.go +++ b/handshake_manager.go @@ -529,7 +529,9 @@ func (hm *HandshakeManager) DeleteHostInfo(hostinfo *HostInfo) { func (hm *HandshakeManager) unlockedDeleteHostInfo(hostinfo *HostInfo) { for _, addr := range hostinfo.vpnAddrs { - delete(hm.vpnIps, addr) + if cur, ok := hm.vpnIps[addr]; ok && cur.hostinfo == hostinfo { + delete(hm.vpnIps, addr) + } } if len(hm.vpnIps) == 0 {