From 6da44eba4b6d5f27452d0da0aaf83fcb8a159364 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Djema=C3=AF?= <53857555+SamyDjemai@users.noreply.github.com> Date: Thu, 4 Dec 2025 11:54:35 +0100 Subject: [PATCH] feat: add DERPHomeParams settings --- hscontrol/derp/derp.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/hscontrol/derp/derp.go b/hscontrol/derp/derp.go index 42d74abe..3240def7 100644 --- a/hscontrol/derp/derp.go +++ b/hscontrol/derp/derp.go @@ -76,11 +76,13 @@ func loadDERPMapFromURL(addr url.URL) (*tailcfg.DERPMap, error) { func mergeDERPMaps(derpMaps []*tailcfg.DERPMap) *tailcfg.DERPMap { result := tailcfg.DERPMap{ OmitDefaultRegions: false, + HomeParams: &tailcfg.DERPHomeParams{}, Regions: map[int]*tailcfg.DERPRegion{}, } for _, derpMap := range derpMaps { maps.Copy(result.Regions, derpMap.Regions) + maps.Copy(result.HomeParams.RegionScore, derpMap.HomeParams.RegionScore) } for id, region := range result.Regions { @@ -89,6 +91,12 @@ func mergeDERPMaps(derpMaps []*tailcfg.DERPMap) *tailcfg.DERPMap { } } + for id, regionScore := range result.HomeParams.RegionScore { + if regionScore <= 0 { + delete(result.HomeParams.RegionScore, id) + } + } + return &result }