|
@@ -374,13 +374,13 @@ func (hm *HandshakeManager) GetOrHandshake(vpnIp iputil.VpnIp, cacheCb func(*Han
|
|
|
// StartHandshake will ensure a handshake is currently being attempted for the provided vpn ip
|
|
|
func (hm *HandshakeManager) StartHandshake(vpnIp iputil.VpnIp, cacheCb func(*HandshakeHostInfo)) *HostInfo {
|
|
|
hm.Lock()
|
|
|
- defer hm.Unlock()
|
|
|
|
|
|
if hh, ok := hm.vpnIps[vpnIp]; ok {
|
|
|
// We are already trying to handshake with this vpn ip
|
|
|
if cacheCb != nil {
|
|
|
cacheCb(hh)
|
|
|
}
|
|
|
+ hm.Unlock()
|
|
|
return hh.hostinfo
|
|
|
}
|
|
|
|
|
@@ -421,6 +421,7 @@ func (hm *HandshakeManager) StartHandshake(vpnIp iputil.VpnIp, cacheCb func(*Han
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ hm.Unlock()
|
|
|
hm.lightHouse.QueryServer(vpnIp)
|
|
|
return hostinfo
|
|
|
}
|