mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 04:55:31 +00:00
Revert "freebsd: ignore IPv6 for now"
This reverts commit 061422affc
.
We have a way to support IPv6 on FreeBSD now.
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
This commit is contained in:
parent
f45a9e291b
commit
c8af6bc009
@ -1,39 +0,0 @@
|
||||
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Code generated by tailscale.com/cmd/cloner -type Config; DO NOT EDIT.
|
||||
|
||||
package router
|
||||
|
||||
import (
|
||||
"inet.af/netaddr"
|
||||
"tailscale.com/types/preftype"
|
||||
"tailscale.com/wgengine/router/dns"
|
||||
)
|
||||
|
||||
// Clone makes a deep copy of Config.
|
||||
// The result aliases no memory with the original.
|
||||
func (src *Config) Clone() *Config {
|
||||
if src == nil {
|
||||
return nil
|
||||
}
|
||||
dst := new(Config)
|
||||
*dst = *src
|
||||
dst.LocalAddrs = append(src.LocalAddrs[:0:0], src.LocalAddrs...)
|
||||
dst.Routes = append(src.Routes[:0:0], src.Routes...)
|
||||
dst.DNS = *src.DNS.Clone()
|
||||
dst.SubnetRoutes = append(src.SubnetRoutes[:0:0], src.SubnetRoutes...)
|
||||
return dst
|
||||
}
|
||||
|
||||
// A compilation failure here means this code must be regenerated, with command:
|
||||
// tailscale.com/cmd/cloner -type Config
|
||||
var _ConfigNeedsRegeneration = Config(struct {
|
||||
LocalAddrs []netaddr.IPPrefix
|
||||
Routes []netaddr.IPPrefix
|
||||
DNS dns.Config
|
||||
SubnetRoutes []netaddr.IPPrefix
|
||||
SNATSubnetRoutes bool
|
||||
NetfilterMode preftype.NetfilterMode
|
||||
}{})
|
@ -10,8 +10,6 @@
|
||||
"tailscale.com/types/logger"
|
||||
)
|
||||
|
||||
//go:generate go run tailscale.com/cmd/cloner -type=Config -output=config_clone.go
|
||||
|
||||
// Config is the set of parameters that uniquely determine
|
||||
// the state to which a manager should bring system DNS settings.
|
||||
type Config struct {
|
||||
|
@ -1,33 +0,0 @@
|
||||
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Code generated by tailscale.com/cmd/cloner -type Config; DO NOT EDIT.
|
||||
|
||||
package dns
|
||||
|
||||
import (
|
||||
"inet.af/netaddr"
|
||||
)
|
||||
|
||||
// Clone makes a deep copy of Config.
|
||||
// The result aliases no memory with the original.
|
||||
func (src *Config) Clone() *Config {
|
||||
if src == nil {
|
||||
return nil
|
||||
}
|
||||
dst := new(Config)
|
||||
*dst = *src
|
||||
dst.Nameservers = append(src.Nameservers[:0:0], src.Nameservers...)
|
||||
dst.Domains = append(src.Domains[:0:0], src.Domains...)
|
||||
return dst
|
||||
}
|
||||
|
||||
// A compilation failure here means this code must be regenerated, with command:
|
||||
// tailscale.com/cmd/cloner -type Config
|
||||
var _ConfigNeedsRegeneration = Config(struct {
|
||||
Nameservers []netaddr.IP
|
||||
Domains []string
|
||||
PerDomain bool
|
||||
Proxied bool
|
||||
}{})
|
@ -54,8 +54,6 @@ func Cleanup(logf logger.Logf, interfaceName string) {
|
||||
cleanup(logf, interfaceName)
|
||||
}
|
||||
|
||||
//go:generate go run tailscale.com/cmd/cloner -type=Config -output=config_clone.go
|
||||
|
||||
// Config is the subset of Tailscale configuration that is relevant to
|
||||
// the OS's network stack.
|
||||
type Config struct {
|
||||
|
@ -10,7 +10,6 @@
|
||||
"fmt"
|
||||
"log"
|
||||
"os/exec"
|
||||
"runtime"
|
||||
|
||||
"github.com/tailscale/wireguard-go/device"
|
||||
"github.com/tailscale/wireguard-go/tun"
|
||||
@ -102,40 +101,9 @@ func inet(p netaddr.IPPrefix) string {
|
||||
return "inet"
|
||||
}
|
||||
|
||||
// See https://github.com/tailscale/tailscale/issues/1307#issuecomment-786045280
|
||||
// Remove all IPv6 entries.
|
||||
func (r *userspaceBSDRouter) modifiedConfigForFreeBSDBugWorkaround(cfg *Config) *Config {
|
||||
n := cfg.Clone()
|
||||
|
||||
n.LocalAddrs = n.LocalAddrs[:0]
|
||||
for _, addr := range cfg.LocalAddrs {
|
||||
if !addr.IP.Is6() {
|
||||
n.LocalAddrs = append(n.LocalAddrs, addr)
|
||||
}
|
||||
}
|
||||
|
||||
n.Routes = n.Routes[:0]
|
||||
for _, addr := range cfg.Routes {
|
||||
if !addr.IP.Is6() {
|
||||
n.Routes = append(n.Routes, addr)
|
||||
}
|
||||
}
|
||||
|
||||
n.SubnetRoutes = n.SubnetRoutes[:0]
|
||||
for _, addr := range cfg.SubnetRoutes {
|
||||
if !addr.IP.Is6() {
|
||||
n.SubnetRoutes = append(n.SubnetRoutes, addr)
|
||||
}
|
||||
}
|
||||
|
||||
return n
|
||||
}
|
||||
|
||||
func (r *userspaceBSDRouter) Set(cfg *Config) (reterr error) {
|
||||
if cfg == nil {
|
||||
cfg = &shutdownConfig
|
||||
} else if runtime.GOOS == "freebsd" {
|
||||
cfg = r.modifiedConfigForFreeBSDBugWorkaround(cfg)
|
||||
}
|
||||
|
||||
var errq error
|
||||
|
Loading…
Reference in New Issue
Block a user