wgengine/magicsock: fix crash introduced in recent cleanups

Fixes #2801

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
pull/2819/head
Brad Fitzpatrick 3 years ago committed by Brad Fitzpatrick
parent 640134421e
commit 2238814b99

@ -189,9 +189,14 @@ func (m *peerMap) deleteDiscoEndpoint(ep *endpoint) {
return return
} }
ep.stopAndReset() ep.stopAndReset()
pi := m.byDiscoKey[ep.discoKey] pi := m.byNodeKey[ep.publicKey]
delete(m.byDiscoKey, ep.discoKey) delete(m.byDiscoKey, ep.discoKey)
delete(m.byNodeKey, ep.publicKey) delete(m.byNodeKey, ep.publicKey)
if pi == nil {
// Kneejerk paranoia from earlier issue 2801.
// Unexpected. But no logger plumbed here to log so.
return
}
for ip := range pi.ipPorts { for ip := range pi.ipPorts {
delete(m.byIPPort, ip) delete(m.byIPPort, ip)
} }

Loading…
Cancel
Save