svn commit: r317093 - stable/10/tests/sys/netinet

Alan Somers asomers at FreeBSD.org
Tue Apr 18 16:17:39 UTC 2017


Author: asomers
Date: Tue Apr 18 16:17:38 2017
New Revision: 317093
URL: https://svnweb.freebsd.org/changeset/base/317093

Log:
  MFC r285117
  
  Make cleanup routines idempotent
  
  cleanup routines can be executed at any point during the execution of the
  body, including even before the body has done any real work.  In those
  cases, cleanup routines should be careful to not raise spurious errors so
  as to not "override" the actual result of the test case.
  
  This is just general good coding style but is not a problem in practice
  for these specific tests.  (The way I discovered the issue, though, was
  due to a regression I introduced in Kyua itself while refactoring some
  internals.)
  
  MFC after:      1 week

Modified:
  stable/10/tests/sys/netinet/fibs_test.sh
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/tests/sys/netinet/fibs_test.sh
==============================================================================
--- stable/10/tests/sys/netinet/fibs_test.sh	Tue Apr 18 15:43:47 2017	(r317092)
+++ stable/10/tests/sys/netinet/fibs_test.sh	Tue Apr 18 16:17:38 2017	(r317093)
@@ -98,9 +98,12 @@ arpresolve_checks_interface_fib_body()
 }
 arpresolve_checks_interface_fib_cleanup()
 {
-	for PID in `cat "processes_to_kill"`; do
-		kill $PID
-	done
+	if [ -f processes_to_kill ]; then
+		for pid in $(cat processes_to_kill); do
+			kill "${pid}"
+		done
+		rm -f processes_to_kill
+	fi
 	cleanup_tap
 }
 
@@ -477,8 +480,10 @@ setup_tap()
 
 cleanup_tap()
 {
-	for TAPD in `cat "tap_devices_to_cleanup"`; do
-		ifconfig ${TAPD} destroy
-	done
-	rm "tap_devices_to_cleanup"
+	if [ -f tap_devices_to_cleanup ]; then
+		for tap_device in $(cat tap_devices_to_cleanup); do
+			ifconfig "${tap_device}" destroy
+		done
+		rm -f tap_devices_to_cleanup
+	fi
 }


More information about the svn-src-all mailing list