device: add SendKeepalivesToPeersWithCurrentKeypair for handover
This commit is contained in:
parent
d0ab883ada
commit
d9f995209c
|
@ -396,3 +396,20 @@ func (device *Device) Close() {
|
|||
func (device *Device) Wait() chan struct{} {
|
||||
return device.signals.stop
|
||||
}
|
||||
|
||||
func (device *Device) SendKeepalivesToPeersWithCurrentKeypair() {
|
||||
if device.isClosed.Get() {
|
||||
return
|
||||
}
|
||||
|
||||
device.peers.RLock()
|
||||
for _, peer := range device.peers.keyMap {
|
||||
peer.keypairs.RLock()
|
||||
sendKeepalive := peer.keypairs.current != nil && !peer.keypairs.current.created.Add(RejectAfterTime).Before(time.Now())
|
||||
peer.keypairs.RUnlock()
|
||||
if sendKeepalive {
|
||||
peer.SendKeepalive()
|
||||
}
|
||||
}
|
||||
device.peers.RUnlock()
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue