svn commit: r286171 - head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip

Mark Johnston markj at FreeBSD.org
Sun Aug 2 00:23:22 UTC 2015


Author: markj
Date: Sun Aug  2 00:23:18 2015
New Revision: 286171
URL: https://svnweb.freebsd.org/changeset/base/286171

Log:
  - Remove hardcoded paths for the perl executable.
  - Rather than assuming that a process is listening on 127.0.0.1:22, use
    nc(1) to find an available port and bind to it for the duration of the
    test.
  
  MFC after:	1 week
  Sponsored by:	EMC / Isilon Storage Division

Modified:
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl	Sun Aug  2 00:23:18 2015	(r286171)
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -w
+#!/usr/bin/env perl
 #
 # CDDL HEADER START
 #

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl	Sun Aug  2 00:23:18 2015	(r286171)
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -w
+#!/usr/bin/env perl
 #
 # CDDL HEADER START
 #

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh	Sun Aug  2 00:23:18 2015	(r286171)
@@ -58,12 +58,25 @@ fi
 
 dtrace=$1
 local=127.0.0.1
-tcpport=22
 DIR=/var/tmp/dtest.$$
 
+tcpport=1024
+bound=5000
+while [ $tcpport -lt $bound ]; do
+	nc -z $local $tcpport >/dev/null || break
+	tcpport=$(($tcpport + 1))
+done
+if [ $tcpport -eq $bound ]; then
+	echo "couldn't find an available TCP port"
+	exit 1
+fi
+
 mkdir $DIR
 cd $DIR
 
+# nc will exit when the connection is closed.
+nc -l $local $tcpport &
+
 cat > test.pl <<-EOPERL
 	use IO::Socket;
 	my \$s = IO::Socket::INET->new(
@@ -76,7 +89,7 @@ cat > test.pl <<-EOPERL
 	sleep(2);
 EOPERL
 
-$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE
+$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE
 BEGIN
 {
 	ipsend = tcpsend = ipreceive = tcpreceive = 0;

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh	Sun Aug  2 00:23:18 2015	(r286171)
@@ -79,7 +79,7 @@ cat > test.pl <<-EOPERL
 	sleep(2);
 EOPERL
 
-$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE
+$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE
 BEGIN
 {
 	ipsend = tcpsend = ipreceive = tcpreceive = 0;

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh	Sun Aug  2 00:23:18 2015	(r286171)
@@ -82,7 +82,7 @@ cat > test.pl <<-EOPERL
 	sleep(2);
 EOPERL
 
-$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE
+$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE
 BEGIN
 {
 	ipsend = tcpsend = ipreceive = tcpreceive = 0;

Modified: head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh
==============================================================================
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh	Sun Aug  2 00:22:14 2015	(r286170)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh	Sun Aug  2 00:23:18 2015	(r286171)
@@ -87,7 +87,7 @@ cat > test.pl <<-EOPERL
 	sleep(2);
 EOPERL
 
-$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE
+$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE
 BEGIN
 {
 	ipsend = tcpsend = ipreceive = tcpreceive = 0;


More information about the svn-src-all mailing list