From d2fd101eb451858e2b81905d95763b8da224bbd8 Mon Sep 17 00:00:00 2001 From: Maisem Ali Date: Fri, 24 Mar 2023 13:13:57 -0700 Subject: [PATCH] net/tstun: only log natConfig on changes Updates tailscale/corp#8020 Signed-off-by: Maisem Ali --- net/tstun/wrap.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/net/tstun/wrap.go b/net/tstun/wrap.go index 3a1b941da..3a58bebde 100644 --- a/net/tstun/wrap.go +++ b/net/tstun/wrap.go @@ -11,6 +11,7 @@ import ( "io" "net/netip" "os" + "reflect" "strings" "sync" "sync/atomic" @@ -594,8 +595,10 @@ func natConfigFromNetMap(nm *netmap.NetworkMap) *natV4Config { // It currently (2023-03-01) only updates the IPv4 NAT configuration. func (t *Wrapper) SetNetMap(nm *netmap.NetworkMap) { cfg := natConfigFromNetMap(nm) - t.natV4Config.Store(cfg) - t.logf("nat config: %+v", cfg) + old := t.natV4Config.Swap(cfg) + if !reflect.DeepEqual(old, cfg) { + t.logf("nat config: %+v", cfg) + } } var (