feat: add DERPHomeParams settings

This commit is contained in:
Samy Djemaï 2025-12-04 11:54:35 +01:00
parent eb788cd007
commit 6da44eba4b
No known key found for this signature in database

View file

@ -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
}