1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#!/bin/sh
# fill in most pluto flags for debugging
# Only argument is east or west
# Actually, extra args are passed on to pluto, so --nofork might be useful
cd /tmp
. CONFIG
case "$1" in
east) INTERFACE=$EASTIF ; MYPLUTO=${EASTPLUTO:-$PLUTO} ; MYWHACK=${EASTWHACK:-$WHACK} ;;
west) INTERFACE=$WESTIF ; MYPLUTO=${WESTPLUTO:-$PLUTO} ; MYWHACK=${WESTWHACK:-$WHACK} ;;
north) INTERFACE=$NORTHIF ; MYPLUTO=${NORTHPLUTO:-$PLUTO} ; MYWHACK=${NORTHWHACK:-$WHACK} ;;
south) INTERFACE=$SOUTHIF ; MYPLUTO=${SOUTHPLUTO:-$PLUTO} ; MYWHACK=${SOUTHWHACK:-$WHACK} ;;
*) echo "$0: \"east\" or \"west\" expected" >&2
exit 1;
;;
esac
SIDE=$1
shift
# the purpose of this function is to hide differences that don't count
# from the log: path to pluto and LWDNSQOPTION
function performpluto() {
mkdir -p pluto/$SIDE && cd pluto/$SIDE
ln -s -f ../../ipsec.secrets .
ln -s -f ${TESTING}/pluto/ipsec.d/west .
ln -s -f ${TESTING}/pluto/ipsec.d/east .
echo PWD: `pwd`
echo "PLUTO" "$@"
$MYPLUTO ${LWDNSQOPTION:-} "$@" || echo RC: $?
}
LOCK=pluto/$SIDE/pluto.$SIDE.pid
if [ -f $LOCK ]
then
echo Removing stale lock $LOCK
$MYWHACK --ctlbase pluto.$SIDE --shutdown
rm -f $LOCK
fi
# make sure it is set to something
HELPERS=${HELPERS-}
performpluto \
--ctlbase pluto.$SIDE \
--interface $INTERFACE \
--ikeport $IKEPORT $HELPERS \
--secretsfile `pwd`/ipsec.secrets/$SIDE \
--ipsecdir `pwd`/$SIDE \
--noklips --uniqueids --stderrlog --nhelpers 0 \
--debug-all --debug-private \
"$@"
|