From 2cd11eb5d916a3580666fdec7f9806c51f784093 Mon Sep 17 00:00:00 2001 From: Viktor Liu Date: Mon, 4 May 2026 13:57:19 +0200 Subject: [PATCH] Fix lint: replace maps.Clear with clear, drop unused server wrapper, add v6 ext-header TODO --- client/firewall/uspfilter/filter.go | 3 +++ client/internal/dns/local/local.go | 13 ++++++------- client/internal/routemanager/server/server.go | 8 ++------ 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/client/firewall/uspfilter/filter.go b/client/firewall/uspfilter/filter.go index 3ae797f8c..5ecd08abf 100644 --- a/client/firewall/uspfilter/filter.go +++ b/client/firewall/uspfilter/filter.go @@ -1308,6 +1308,9 @@ func (m *Manager) isValidPacket(d *decoder, packetData []byte) (bool, bool) { case layers.LayerTypeIPv6: // IPv6 uses Fragment extension header (NextHeader=44). If gopacket // only decoded the IPv6 layer, the transport is in a fragment. + // TODO: handle non-Fragment extension headers (HopByHop, Routing, + // DestOpts) by walking the chain. gopacket's parser does not + // support them as DecodingLayers; today we drop such packets. if d.ip6.NextHeader == layers.IPProtocolIPv6Fragment { return true, true } diff --git a/client/internal/dns/local/local.go b/client/internal/dns/local/local.go index a67a23945..e9d310f00 100644 --- a/client/internal/dns/local/local.go +++ b/client/internal/dns/local/local.go @@ -13,7 +13,6 @@ import ( "github.com/miekg/dns" log "github.com/sirupsen/logrus" - "golang.org/x/exp/maps" "github.com/netbirdio/netbird/client/internal/dns/resutil" "github.com/netbirdio/netbird/client/internal/dns/types" @@ -67,9 +66,9 @@ func (d *Resolver) Stop() { d.mu.Lock() defer d.mu.Unlock() - maps.Clear(d.records) - maps.Clear(d.domains) - maps.Clear(d.zones) + clear(d.records) + clear(d.domains) + clear(d.zones) } // ID returns the unique handler ID @@ -444,9 +443,9 @@ func (d *Resolver) Update(customZones []nbdns.CustomZone) { d.mu.Lock() defer d.mu.Unlock() - maps.Clear(d.records) - maps.Clear(d.domains) - maps.Clear(d.zones) + clear(d.records) + clear(d.domains) + clear(d.zones) for _, zone := range customZones { zoneDomain := domain.Domain(strings.ToLower(dns.Fqdn(zone.Domain))) diff --git a/client/internal/routemanager/server/server.go b/client/internal/routemanager/server/server.go index 492473076..f569c0cac 100644 --- a/client/internal/routemanager/server/server.go +++ b/client/internal/routemanager/server/server.go @@ -51,7 +51,7 @@ func (r *Router) UpdateRoutes(routesMap map[route.ID]*route.Route, useNewDNSRout for _, routeID := range serverRoutesToRemove { oldRoute := r.routes[routeID] - err := r.removeFromServerNetworkWithMode(oldRoute, prevUseNewDNSRoute) + err := r.removeFromServerNetwork(oldRoute, prevUseNewDNSRoute) if err != nil { log.Errorf("Unable to remove route id: %s, network %s, from server, got: %v", oldRoute.ID, oldRoute.Network, err) @@ -90,11 +90,7 @@ func (r *Router) UpdateRoutes(routesMap map[route.ID]*route.Route, useNewDNSRout return nil } -func (r *Router) removeFromServerNetwork(route *route.Route) error { - return r.removeFromServerNetworkWithMode(route, r.useNewDNSRoute) -} - -func (r *Router) removeFromServerNetworkWithMode(route *route.Route, useNewDNSRoute bool) error { +func (r *Router) removeFromServerNetwork(route *route.Route, useNewDNSRoute bool) error { if r.ctx.Err() != nil { log.Infof("Not removing from server network because context is done") return r.ctx.Err()