NOTES on the "in vitro" Pluto tests
===================================

These can be used by themselves, or run as pluto-unit-* via "make
check".  I will now describe how they can be run outside of "make
check".

You should add `pwd`/bin to PATH.  It contains the testing scripts.

bin/CONFIG specifies configuration details for all the scripts.  At a
minimum, you must specify where to find the binaries for pluto and
whack (you can set environment variables rather than editing
bin/CONFIG).

Since the testing uses information from the Domain Name System, a
couple of zones must be added to the name server:  test.zone and
test.rev.zone.  Each of these zone files includes comments as to what
changes need to be made to /etc/named.conf.

The only script that needs superuser privileges is bin/ifconfigs.  This
sets up aliases to interface lo for testing.  It can also be used to
remove these aliases.  Since the setup persists, "ifconfigs up" only
needs to be redone after a system reboots (or something else drastic).

bin/doauto runs all current tests.  Output is captured in
subdirectories under log/.  The whack portion of the output is
compared with that captured under log.ref/.  We don't yet distribute a
sample log.ref.

Example of a test (run in this directory):

	export PATH=`pwd`/bin:$PATH
	su -c "ifconfigs up"
	export PLUTO=`pwd`/../../programs/pluto/pluto
	export WHACK=`pwd`/../../programs/pluto/whack

	# if using lwdnsq (i.e. if Makefile.inc includes USE_LWRES=true):
		export USE_LWRES=true
		export IPSEC_EXECDIR=`pwd`/../../programs/lwdnsq

	doauto
