ipn/ipnstate: remove old deprecated TailAddr IPv4-only field

It's been a bunch of releases now since the TailscaleIPs slice
replacement was added.

Change-Id: I3bd80e1466b3d9e4a4ac5bedba8b4d3d3e430a03
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
pull/3541/head
Brad Fitzpatrick 3 years ago committed by Brad Fitzpatrick
parent affc4530a2
commit 7b9c7bc42b

@ -417,16 +417,9 @@ func (b *LocalBackend) populatePeerStatusLocked(sb *ipnstate.StatusBuilder) {
if p.LastSeen != nil { if p.LastSeen != nil {
lastSeen = *p.LastSeen lastSeen = *p.LastSeen
} }
var tailAddr4 string
var tailscaleIPs = make([]netaddr.IP, 0, len(p.Addresses)) var tailscaleIPs = make([]netaddr.IP, 0, len(p.Addresses))
for _, addr := range p.Addresses { for _, addr := range p.Addresses {
if addr.IsSingleIP() && tsaddr.IsTailscaleIP(addr.IP()) { if addr.IsSingleIP() && tsaddr.IsTailscaleIP(addr.IP()) {
if addr.IP().Is4() && tailAddr4 == "" {
// The peer struct previously only allowed a single
// Tailscale IP address. For compatibility for a few releases starting
// with 1.8, keep it pulled out as IPv4-only for a bit.
tailAddr4 = addr.IP().String()
}
tailscaleIPs = append(tailscaleIPs, addr.IP()) tailscaleIPs = append(tailscaleIPs, addr.IP())
} }
} }
@ -434,21 +427,20 @@ func (b *LocalBackend) populatePeerStatusLocked(sb *ipnstate.StatusBuilder) {
return r.Bits() == 0 return r.Bits() == 0
}) })
sb.AddPeer(p.Key, &ipnstate.PeerStatus{ sb.AddPeer(p.Key, &ipnstate.PeerStatus{
InNetworkMap: true, InNetworkMap: true,
ID: p.StableID, ID: p.StableID,
UserID: p.User, UserID: p.User,
TailAddrDeprecated: tailAddr4, TailscaleIPs: tailscaleIPs,
TailscaleIPs: tailscaleIPs, HostName: p.Hostinfo.Hostname,
HostName: p.Hostinfo.Hostname, DNSName: p.Name,
DNSName: p.Name, OS: p.Hostinfo.OS,
OS: p.Hostinfo.OS, KeepAlive: p.KeepAlive,
KeepAlive: p.KeepAlive, Created: p.Created,
Created: p.Created, LastSeen: lastSeen,
LastSeen: lastSeen, Online: p.Online != nil && *p.Online,
Online: p.Online != nil && *p.Online, ShareeNode: p.Hostinfo.ShareeNode,
ShareeNode: p.Hostinfo.ShareeNode, ExitNode: p.StableID != "" && p.StableID == b.prefs.ExitNodeID,
ExitNode: p.StableID != "" && p.StableID == b.prefs.ExitNodeID, ExitNodeOption: exitNodeOption,
ExitNodeOption: exitNodeOption,
}) })
} }
} }

@ -88,8 +88,7 @@ type PeerStatus struct {
OS string // HostInfo.OS OS string // HostInfo.OS
UserID tailcfg.UserID UserID tailcfg.UserID
TailAddrDeprecated string `json:"TailAddr"` // Tailscale IP TailscaleIPs []netaddr.IP // Tailscale IP(s) assigned to this node
TailscaleIPs []netaddr.IP // Tailscale IP(s) assigned to this node
// Endpoints: // Endpoints:
Addrs []string Addrs []string
@ -244,9 +243,6 @@ func (sb *StatusBuilder) AddPeer(peer key.NodePublic, st *PeerStatus) {
if v := st.UserID; v != 0 { if v := st.UserID; v != 0 {
e.UserID = v e.UserID = v
} }
if v := st.TailAddrDeprecated; v != "" {
e.TailAddrDeprecated = v
}
if v := st.TailscaleIPs; v != nil { if v := st.TailscaleIPs; v != nil {
e.TailscaleIPs = v e.TailscaleIPs = v
} }

@ -3097,7 +3097,6 @@ func (c *Conn) UpdateStatus(sb *ipnstate.StatusBuilder) {
c.mu.Lock() c.mu.Lock()
defer c.mu.Unlock() defer c.mu.Unlock()
var tailAddr4 string
var tailscaleIPs []netaddr.IP var tailscaleIPs []netaddr.IP
if c.netMap != nil { if c.netMap != nil {
tailscaleIPs = make([]netaddr.IP, 0, len(c.netMap.Addresses)) tailscaleIPs = make([]netaddr.IP, 0, len(c.netMap.Addresses))
@ -3106,13 +3105,6 @@ func (c *Conn) UpdateStatus(sb *ipnstate.StatusBuilder) {
continue continue
} }
sb.AddTailscaleIP(addr.IP()) sb.AddTailscaleIP(addr.IP())
// TailAddr previously only allowed for a
// single Tailscale IP. For compatibility for
// a couple releases starting with 1.8, keep
// that field pulled out separately.
if addr.IP().Is4() {
tailAddr4 = addr.IP().String()
}
tailscaleIPs = append(tailscaleIPs, addr.IP()) tailscaleIPs = append(tailscaleIPs, addr.IP())
} }
} }
@ -3135,7 +3127,6 @@ func (c *Conn) UpdateStatus(sb *ipnstate.StatusBuilder) {
} }
} }
ss.TailscaleIPs = tailscaleIPs ss.TailscaleIPs = tailscaleIPs
ss.TailAddrDeprecated = tailAddr4
}) })
c.peerMap.forEachEndpoint(func(ep *endpoint) { c.peerMap.forEachEndpoint(func(ep *endpoint) {

Loading…
Cancel
Save