aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2006-07-13 12:43:52 +0000
committerMartin Willi <martin@strongswan.org>2006-07-13 12:43:52 +0000
commit1279eda04249bd25f0aeafb4f82cf77abaa1aad1 (patch)
tree5fca05f092523f46821e051b52e5a5fd00f7bc6d /testing
parentbe247b817bad17330fb47d903666654ef32b7bfd (diff)
downloadstrongswan-1279eda04249bd25f0aeafb4f82cf77abaa1aad1.tar.bz2
strongswan-1279eda04249bd25f0aeafb4f82cf77abaa1aad1.tar.xz
added tcpdumpcount function from NATT guys
added possibility to mount the strongswan tree into all UMLs added script for installing from shared tree in all UMLs added script to shut down all UMLs properly
Diffstat (limited to 'testing')
-rwxr-xr-xtesting/do-tests13
-rwxr-xr-xtesting/scripts/build-umlrootfs15
-rwxr-xr-xtesting/scripts/install-shared38
-rwxr-xr-xtesting/scripts/shutdown-umls38
-rwxr-xr-xtesting/testing.conf5
5 files changed, 106 insertions, 3 deletions
diff --git a/testing/do-tests b/testing/do-tests
index 5b477532e..1e8e6aba0 100755
--- a/testing/do-tests
+++ b/testing/do-tests
@@ -314,6 +314,19 @@ do
printf("echo \"%s# cat /tmp/tcpdump.log | grep \047%s\047 [%s]\"; ", host, pattern, hit)
printf("ssh root@\044ipv4_%s cat /tmp/tcpdump.log | grep \"%s\"; ", host, pattern)
}
+ else if (command == "tcpdumpcount")
+ {
+ printf("if [ \044TDUP_%s == \"true\" ]; then stop_tcpdump %s; fi; \n", host, host)
+ printf("echo -e \"%s# [ \\\\140cat /tmp/tcpdump.log | grep \047%s\047 | tee -a /dev/stderr | wc -l\\\\140 -eq %s ] [YES]\"; ", host, pattern, hit)
+ printf("tcpdumpcount=\`ssh root@\044ipv4_%s cat /tmp/tcpdump.log | grep \"%s\" | tee -a /dev/stderr | wc -l\`; ", host, pattern)
+ printf("[ \044tcpdumpcount -eq %s ]; ", hit)
+ hit="YES"
+ }
+ else if (command == "cmd")
+ {
+ printf("echo \"%s# %s [%s]\"; ", host, pattern, hit)
+ printf("ssh root@\044ipv4_%s %s; ", host, pattern)
+ }
else
{
printf("echo \"%s# %s | grep \047%s\047 [%s]\"; ", host, command, pattern, hit)
diff --git a/testing/scripts/build-umlrootfs b/testing/scripts/build-umlrootfs
index 1a983b85b..5c35185d9 100755
--- a/testing/scripts/build-umlrootfs
+++ b/testing/scripts/build-umlrootfs
@@ -89,21 +89,27 @@ mount -o loop gentoo-fs $LOOPDIR >> $LOGFILE 2>&1
tar xjpf $ROOTFS -C $LOOPDIR >> $LOGFILE 2>&1
cecho "done"
-
######################################################
# copying default /etc/hosts to the root filesystem
#
cecho " * Copying '$HOSTCONFIGDIR/default/etc/hosts' to the root filesystem"
cp -fp $HOSTCONFIGDIR/default/etc/hosts $LOOPDIR/etc/hosts
-#
#####################################################
# extracting strongSwan into the root filesystem
#
-
cecho " * Extracting strongSwan into the root filesystem"
tar xjf $STRONGSWAN -C $LOOPDIR/root >> $LOGFILE 2>&1
+######################################################
+# setting up mountpoint for shared source tree
+#
+if [ "${SHAREDTREE+set}" = "set" ]; then
+ cecho " * setting up shared strongswan tree at '$SHAREDTREE'"
+ mkdir $LOOPDIR/root/strongswan-shared
+ echo "" >> $LOOPDIR/etc/fstab
+ echo "none /root/strongswan-shared hostfs $SHAREDTREE" >> $LOOPDIR/etc/fstab
+fi
######################################################
# installing strongSwan and setting the local timezone
@@ -140,6 +146,9 @@ cecho-n " * Compiling $STRONGSWANVERSION within the root file system as chroot..
chroot $LOOPDIR /bin/bash /install.sh >> $LOGFILE 2>&1
cecho "done"
+rm -f $INSTALLSHELL
+
+
######################################################
# copying the host's ssh public key
#
diff --git a/testing/scripts/install-shared b/testing/scripts/install-shared
new file mode 100755
index 000000000..4cfac9e77
--- /dev/null
+++ b/testing/scripts/install-shared
@@ -0,0 +1,38 @@
+#!/bin/bash
+# Install strongSwan from mounted strongswan-shared tree
+#
+# Copyright (C) 2006 Martin Willi
+# Hochschule fuer Technik Rapperswil
+# Copyright (C) 2004 Eric Marchionni, Patrik Rayo
+# Zuercher Hochschule Winterthur
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+DIR=`dirname $0`
+
+source $DIR/function.sh
+
+[ -f $DIR/../testing.conf ] || die "Configuration file 'testing.conf' not found"
+
+source $DIR/../testing.conf
+
+cecho "installing strongSwan from shared tree"
+cecho-n " on: "
+
+for host in $STRONGSWANHOSTS
+do
+ eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
+ cecho-n "$host... "
+ ssh $HOSTLOGIN 'cd ~/strongswan-shared && make install' > /dev/null
+done
+
+cecho
diff --git a/testing/scripts/shutdown-umls b/testing/scripts/shutdown-umls
new file mode 100755
index 000000000..e71e46602
--- /dev/null
+++ b/testing/scripts/shutdown-umls
@@ -0,0 +1,38 @@
+#!/bin/bash
+# Install strongSwan from mounted strongswan-shared tree
+#
+# Copyright (C) 2006 Martin Willi
+# Hochschule fuer Technik Rapperswil
+# Copyright (C) 2004 Eric Marchionni, Patrik Rayo
+# Zuercher Hochschule Winterthur
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+DIR=`dirname $0`
+
+source $DIR/function.sh
+
+[ -f $DIR/../testing.conf ] || die "Configuration file 'testing.conf' not found"
+
+source $DIR/../testing.conf
+
+cecho "shutting down"
+cecho-n " "
+
+for host in $STRONGSWANHOSTS
+do
+ eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
+ cecho-n "$host... "
+ ssh $HOSTLOGIN 'shutdown now -h' > /dev/null
+done
+
+cecho
diff --git a/testing/testing.conf b/testing/testing.conf
index 853572365..0ea02d8b5 100755
--- a/testing/testing.conf
+++ b/testing/testing.conf
@@ -61,6 +61,11 @@ UMLKERNEL=$BUILDDIR/linux-uml-$KERNELVERSION
# Directory where test results will be stored
TESTRESULTSDIR=$UMLTESTDIR/testresults
+# Path to a full strongswan tree on the host system, which is
+# mounted into /root/strongswan-shared. This gives us an easy
+# way to apply and test changes instantly.
+#SHAREDTREE=/home/mwilli/strongswan/trunk
+
# Timezone for the UMLs, look in /usr/share/zoneinfo!
TZUML="Europe/Zurich"