|
@@ -12,6 +12,7 @@ ALL_TESTS="
|
|
|
test_tun_up
|
|
|
test_egress_up
|
|
|
test_remote_ip
|
|
|
+ test_tun_del
|
|
|
"
|
|
|
|
|
|
NUM_NETIFS=6
|
|
@@ -159,6 +160,35 @@ test_span_gre_remote_ip()
|
|
|
log_test "$what: remote address change ($tcflags)"
|
|
|
}
|
|
|
|
|
|
+test_span_gre_tun_del()
|
|
|
+{
|
|
|
+ local tundev=$1; shift
|
|
|
+ local type=$1; shift
|
|
|
+ local flags=$1; shift
|
|
|
+ local local_ip=$1; shift
|
|
|
+ local remote_ip=$1; shift
|
|
|
+ local what=$1; shift
|
|
|
+
|
|
|
+ RET=0
|
|
|
+
|
|
|
+ mirror_install $swp1 ingress $tundev "matchall $tcflags"
|
|
|
+ quick_test_span_gre_dir $tundev ingress
|
|
|
+ ip link del dev $tundev
|
|
|
+ fail_test_span_gre_dir $tundev ingress
|
|
|
+
|
|
|
+ tunnel_create $tundev $type $local_ip $remote_ip \
|
|
|
+ ttl 100 tos inherit $flags
|
|
|
+
|
|
|
+ # Recreating the tunnel doesn't reestablish mirroring, so reinstall it
|
|
|
+ # and verify it works for the follow-up tests.
|
|
|
+ mirror_uninstall $swp1 ingress
|
|
|
+ mirror_install $swp1 ingress $tundev "matchall $tcflags"
|
|
|
+ quick_test_span_gre_dir $tundev ingress
|
|
|
+ mirror_uninstall $swp1 ingress
|
|
|
+
|
|
|
+ log_test "$what: tunnel deleted ($tcflags)"
|
|
|
+}
|
|
|
+
|
|
|
test_ttl()
|
|
|
{
|
|
|
test_span_gre_ttl gt4 gretap ip "mirror to gretap"
|
|
@@ -183,6 +213,14 @@ test_remote_ip()
|
|
|
test_span_gre_remote_ip gt6 ip6gretap 2001:db8:2::2 2001:db8:2::4 "mirror to ip6gretap"
|
|
|
}
|
|
|
|
|
|
+test_tun_del()
|
|
|
+{
|
|
|
+ test_span_gre_tun_del gt4 gretap "" \
|
|
|
+ 192.0.2.129 192.0.2.130 "mirror to gretap"
|
|
|
+ test_span_gre_tun_del gt6 ip6gretap allow-localremote \
|
|
|
+ 2001:db8:2::1 2001:db8:2::2 "mirror to ip6gretap"
|
|
|
+}
|
|
|
+
|
|
|
test_all()
|
|
|
{
|
|
|
slow_path_trap_install $swp1 ingress
|