Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Mar 2020 08:44:46 +0000 (UTC)
From:      Kristof Provost <kp@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r359010 - head/tests/sys/net
Message-ID:  <202003160844.02G8ikoq032842@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kp
Date: Mon Mar 16 08:44:46 2020
New Revision: 359010
URL: https://svnweb.freebsd.org/changeset/base/359010

Log:
  bridge tests: Basic span test
  
  Reviewed by:	philip, emaste (previous version)
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D23961

Modified:
  head/tests/sys/net/if_bridge_test.sh

Modified: head/tests/sys/net/if_bridge_test.sh
==============================================================================
--- head/tests/sys/net/if_bridge_test.sh	Sun Mar 15 21:47:16 2020	(r359009)
+++ head/tests/sys/net/if_bridge_test.sh	Mon Mar 16 08:44:46 2020	(r359010)
@@ -191,9 +191,64 @@ static_cleanup()
 	vnet_cleanup
 }
 
+atf_test_case "span" "cleanup"
+span_head()
+{
+	atf_set descr 'Bridge span test'
+	atf_set require.user root
+}
+
+span_body()
+{
+	set -x
+	vnet_init
+
+	epair=$(vnet_mkepair)
+	epair_span=$(vnet_mkepair)
+	bridge=$(vnet_mkbridge)
+
+	vnet_mkjail one ${bridge} ${epair}a ${epair_span}a
+
+	ifconfig ${epair}b up
+	ifconfig ${epair_span}b up
+
+	jexec one ifconfig ${bridge} up
+	jexec one ifconfig ${epair}a up
+	jexec one ifconfig ${epair_span}a up
+	jexec one ifconfig ${bridge} addm ${epair}a
+
+	jexec one ifconfig ${bridge} span ${epair_span}a
+	jexec one ifconfig ${bridge} 192.0.2.1/24
+
+	# Send some traffic through the span
+	jexec one ping -c 1 -t 1 192.0.2.2
+
+	# Check that we see the traffic on the span interface
+	atf_check -s exit:0 \
+		$(atf_get_srcdir)/../netpfil/common/pft_ping.py \
+		--sendif ${epair}b \
+		--to 192.0.2.2 \
+		--recvif ${epair_span}b
+
+	jexec one ifconfig ${bridge} -span ${epair_span}a
+
+	# And no more traffic after we remove the span
+	atf_check -s exit:1 \
+		$(atf_get_srcdir)/../netpfil/common/pft_ping.py \
+		--sendif ${epair}b \
+		--to 192.0.2.2 \
+		--recvif ${epair_span}b
+}
+
+span_cleanup()
+{
+	vnet_cleanup
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case "bridge_transmit_ipv4_unicast"
 	atf_add_test_case "stp"
 	atf_add_test_case "static"
+	atf_add_test_case "span"
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202003160844.02G8ikoq032842>