diff options
Diffstat (limited to 'testing')
-rwxr-xr-x | testing/do-tests | 13 | ||||
-rwxr-xr-x | testing/scripts/build-umlrootfs | 15 | ||||
-rwxr-xr-x | testing/scripts/install-shared | 38 | ||||
-rwxr-xr-x | testing/scripts/shutdown-umls | 38 | ||||
-rwxr-xr-x | testing/testing.conf | 5 |
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" |