ipn/ipnlocal: don't warn about serve listener failing on IPv6-less machines

Fixes #6303

Change-Id: Ie1ce12938f68dfa0533246bbe3b9d7f3e749a243
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
Brad Fitzpatrick
2022-11-13 08:47:34 -08:00
committed by Brad Fitzpatrick
parent 90bd74fc05
commit 3114eacbb8
2 changed files with 30 additions and 1 deletions

View File

@@ -400,6 +400,22 @@ func (s *State) EqualFiltered(s2 *State, useInterface InterfaceFilter, useIP IPF
return true
}
// HasIP reports whether any interface has the provided IP address.
func (s *State) HasIP(ip netip.Addr) bool {
if s == nil {
return false
}
want := netip.PrefixFrom(ip, ip.BitLen())
for _, pv := range s.InterfaceIPs {
for _, p := range pv {
if p == want {
return true
}
}
}
return false
}
func interfacesEqual(a, b Interface) bool {
return a.Index == b.Index &&
a.MTU == b.MTU &&