mirror of
https://github.com/juanfont/headscale.git
synced 2025-11-10 01:20:58 +01:00
fix: free ips from usedIps ipset on DeleteNode
This commit is contained in:
parent
2024219bd1
commit
cdcdfb7867
@ -337,3 +337,12 @@ func (db *HSDatabase) BackfillNodeIPs(i *IPAllocator) ([]string, error) {
|
|||||||
|
|
||||||
return ret, err
|
return ret, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *IPAllocator) FreeIPs(ips []netip.Addr) {
|
||||||
|
i.mu.Lock()
|
||||||
|
defer i.mu.Unlock()
|
||||||
|
|
||||||
|
for _, ip := range ips {
|
||||||
|
i.usedIPs.Remove(ip)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@ -423,6 +423,8 @@ func (s *State) DeleteNode(node types.NodeView) (change.ChangeSet, error) {
|
|||||||
return change.EmptySet, err
|
return change.EmptySet, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s.ipAlloc.FreeIPs(node.IPs())
|
||||||
|
|
||||||
c := change.NodeRemoved(node.ID())
|
c := change.NodeRemoved(node.ID())
|
||||||
|
|
||||||
// Check if policy manager needs updating after node deletion
|
// Check if policy manager needs updating after node deletion
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user