|
|
@@ -9,6 +9,7 @@ import (
|
|
|
"encoding/json"
|
|
|
"flag"
|
|
|
"fmt"
|
|
|
+ "net/netip"
|
|
|
"reflect"
|
|
|
"strings"
|
|
|
"testing"
|
|
|
@@ -153,9 +154,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("10.0.42.0/24"),
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("10.0.42.0/24"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
},
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --advertise-routes=10.0.42.0/24 --advertise-exit-node",
|
|
|
@@ -169,9 +170,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("10.0.42.0/24"),
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("10.0.42.0/24"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
},
|
|
|
},
|
|
|
want: "",
|
|
|
@@ -185,9 +186,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("10.0.42.0/24"),
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("10.0.42.0/24"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
},
|
|
|
},
|
|
|
want: "",
|
|
|
@@ -213,7 +214,7 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("1.2.0.0/16"),
|
|
|
+ netip.MustParsePrefix("1.2.0.0/16"),
|
|
|
},
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --advertise-exit-node --advertise-routes=1.2.0.0/16",
|
|
|
@@ -227,9 +228,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
- netaddr.MustParseIPPrefix("1.2.0.0/16"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("1.2.0.0/16"),
|
|
|
},
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --advertise-exit-node --advertise-routes=1.2.0.0/16",
|
|
|
@@ -255,16 +256,16 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
ControlURL: ipn.DefaultControlURL,
|
|
|
RouteAll: true,
|
|
|
AllowSingleHosts: false,
|
|
|
- ExitNodeIP: netaddr.MustParseIP("100.64.5.6"),
|
|
|
+ ExitNodeIP: netip.MustParseAddr("100.64.5.6"),
|
|
|
CorpDNS: false,
|
|
|
ShieldsUp: true,
|
|
|
AdvertiseTags: []string{"tag:foo", "tag:bar"},
|
|
|
Hostname: "myhostname",
|
|
|
ForceDaemon: true,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("10.0.0.0/16"),
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("10.0.0.0/16"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
},
|
|
|
NetfilterMode: preftype.NetfilterNoDivert,
|
|
|
OperatorUser: "alice",
|
|
|
@@ -280,14 +281,14 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
ControlURL: ipn.DefaultControlURL,
|
|
|
RouteAll: true,
|
|
|
AllowSingleHosts: false,
|
|
|
- ExitNodeIP: netaddr.MustParseIP("100.64.5.6"),
|
|
|
+ ExitNodeIP: netip.MustParseAddr("100.64.5.6"),
|
|
|
CorpDNS: false,
|
|
|
ShieldsUp: true,
|
|
|
AdvertiseTags: []string{"tag:foo", "tag:bar"},
|
|
|
Hostname: "myhostname",
|
|
|
ForceDaemon: true,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("10.0.0.0/16"),
|
|
|
+ netip.MustParsePrefix("10.0.0.0/16"),
|
|
|
},
|
|
|
NetfilterMode: preftype.NetfilterNoDivert,
|
|
|
OperatorUser: "alice",
|
|
|
@@ -345,9 +346,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
- netaddr.MustParseIPPrefix("1.2.0.0/16"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("1.2.0.0/16"),
|
|
|
},
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --operator=expbits --advertise-exit-node --advertise-routes=1.2.0.0/16",
|
|
|
@@ -361,9 +362,9 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
- netaddr.MustParseIPPrefix("1.2.0.0/16"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("1.2.0.0/16"),
|
|
|
},
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --advertise-routes=1.2.0.0/16 --operator=expbits --advertise-exit-node",
|
|
|
@@ -391,14 +392,14 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
CorpDNS: true,
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
|
|
|
- ExitNodeIP: netaddr.MustParseIP("100.64.5.4"),
|
|
|
+ ExitNodeIP: netip.MustParseAddr("100.64.5.4"),
|
|
|
},
|
|
|
want: accidentalUpPrefix + " --hostname=foo --exit-node=100.64.5.4",
|
|
|
},
|
|
|
{
|
|
|
name: "error_exit_node_omit_with_id_pref",
|
|
|
flags: []string{"--hostname=foo"},
|
|
|
- curExitNodeIP: netaddr.MustParseIP("100.64.5.7"),
|
|
|
+ curExitNodeIP: netip.MustParseAddr("100.64.5.7"),
|
|
|
curPrefs: &ipn.Prefs{
|
|
|
ControlURL: ipn.DefaultControlURL,
|
|
|
AllowSingleHosts: true,
|
|
|
@@ -412,7 +413,7 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|
|
{
|
|
|
name: "error_exit_node_and_allow_lan_omit_with_id_pref", // Isue 3480
|
|
|
flags: []string{"--hostname=foo"},
|
|
|
- curExitNodeIP: netaddr.MustParseIP("100.2.3.4"),
|
|
|
+ curExitNodeIP: netip.MustParseAddr("100.2.3.4"),
|
|
|
curPrefs: &ipn.Prefs{
|
|
|
ControlURL: ipn.DefaultControlURL,
|
|
|
AllowSingleHosts: true,
|
|
|
@@ -563,8 +564,8 @@ func TestPrefsFromUpArgs(t *testing.T) {
|
|
|
AllowSingleHosts: true,
|
|
|
CorpDNS: true,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
|
|
- netaddr.MustParseIPPrefix("::/0"),
|
|
|
+ netip.MustParsePrefix("0.0.0.0/0"),
|
|
|
+ netip.MustParsePrefix("::/0"),
|
|
|
},
|
|
|
NetfilterMode: preftype.NetfilterOn,
|
|
|
},
|
|
|
@@ -631,7 +632,7 @@ func TestPrefsFromUpArgs(t *testing.T) {
|
|
|
exitNodeIP: "100.105.106.107",
|
|
|
},
|
|
|
st: &ipnstate.Status{
|
|
|
- TailscaleIPs: []netaddr.IP{netaddr.MustParseIP("100.105.106.107")},
|
|
|
+ TailscaleIPs: []netaddr.IP{netip.MustParseAddr("100.105.106.107")},
|
|
|
},
|
|
|
wantErr: `cannot use 100.105.106.107 as an exit node as it is a local IP address to this machine; did you mean --advertise-exit-node?`,
|
|
|
},
|
|
|
@@ -672,7 +673,7 @@ func TestPrefsFromUpArgs(t *testing.T) {
|
|
|
WantRunning: true,
|
|
|
NoSNAT: true,
|
|
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
|
|
- netaddr.MustParseIPPrefix("fd7a:115c:a1e0:b1a::bb:10.0.0.0/112"),
|
|
|
+ netip.MustParsePrefix("fd7a:115c:a1e0:b1a::bb:10.0.0.0/112"),
|
|
|
},
|
|
|
},
|
|
|
},
|