switch to mostly configuration in setup-env for check-kdc

This commit is contained in:
Love Hornquist Astrand
2009-09-06 18:38:23 -07:00
parent 16b4ddcf14
commit 45cb91dde2
6 changed files with 70 additions and 21 deletions

19
tests/bin/Makefile.am Normal file
View File

@@ -0,0 +1,19 @@
include $(top_srcdir)/Makefile.am.common
noinst_SCRIPTS = setup-env
do_subst = \
top_srcdir="$$(cd ${top_srcdir} && pwd)" ; \
top_builddir="$$(cd ${top_builddir} && pwd)" ; \
sed $(do_dlopen) \
-e "s,[@]EGREP[@],$(EGREP),g" \
-e "s,[@]top_srcdir[@],$${top_srcdir},g" \
-e "s,[@]top_builddir[@],$${top_builddir},g"
setup-env: setup-env.in Makefile
$(do_subst) < $(srcdir)/setup-env.in > setup-env.tmp
chmod +x setup-env.tmp
mv setup-env.tmp setup-env
CLEANFILES = setup-env setup-env.tmp

32
tests/bin/setup-env.in Normal file
View File

@@ -0,0 +1,32 @@
#!/bin/sh
top_builddir="@top_builddir@"
top_srcdir="@top_srcdir@"
EGREP="@EGREP@"
# Meant to be sourced (source or .) by the tester application, offers
# most commands in heimdal as variables
# regular apps
kinit="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kinit"
klist="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/klist"
kgetcred="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kgetcred"
kdestroy="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kdestroy"
kimpersonate="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kimpersonate"
ktutil="${TESTS_ENVIRONMENT} ${top_builddir}/admin/ktutil"
hxtool="${TESTS_ENVIRONMENT} ${top_builddir}/lib/hx509/hxtool"
kadmin="${TESTS_ENVIRONMENT} ${top_builddir}/kadmin/kadmin"
kdc="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/kdc"
# regression test tools
test_renew="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_renew"
test_ap_req="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_ap-req"
test_gic="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_gic"
# misc apps
wait_kdc="${top_srcdir}/tests/kdc/wait-kdc.sh"
leaks_kill="${top_srcdir}/tests/kdc/leaks-kill.sh"
have_db="${top_builddir}/tests/db/have-db"
# data
hx509_data="${top_srcdir}/../../lib/hx509/data"

View File

@@ -11,6 +11,7 @@ check_SCRIPTS = loaddump-db add-modify-delete check-dbinfo check-aliases
TESTS = $(check_SCRIPTS)
do_subst = sed -e 's,[@]srcdir[@],$(srcdir),g' \
-e 's,[@]top_builddir[@],$(top_builddir),g' \
-e 's,[@]objdir[@],$(top_builddir)/tests/db,g' \
-e 's,[@]EGREP[@],$(EGREP),g'

View File

@@ -34,10 +34,9 @@
# $Id$
#
srcdir="@srcdir@"
base=`dirname "$0"`
top_builddir="@top_builddir@"
kdc="${base}/../../kdc/kdc"
. ${top_builddir}/tests/bin/setup-env
list=`${kdc} --builtin-hdb | sed 's/^builtin hdb backends: //'`
oldIFS="$IFS"

View File

@@ -44,6 +44,7 @@ do_subst = sed $(do_dlopen) \
-e 's,[@]admport[@],$(admport),g' \
-e 's,[@]pwport[@],$(pwport),g' \
-e 's,[@]objdir[@],$(top_builddir)/tests/kdc,g' \
-e 's,[@]top_builddir[@],$(top_builddir),g' \
-e 's,[@]EGREP[@],$(EGREP),g'
LDADD = ../../lib/krb5/libkrb5.la $(LIB_roken)

View File

@@ -34,22 +34,24 @@
# $Id$
#
top_builddir="@top_builddir@"
srcdir="@srcdir@"
objdir="@objdir@"
EGREP="@EGREP@"
testfailed="echo test failed; cat messages.log; exit 1"
. ${top_builddir}/tests/bin/setup-env
# If there is no useful db support compile in, disable test
../db/have-db || exit 77
${have_db} || exit 77
R=TEST.H5L.SE
R2=TEST2.H5L.SE
port=@port@
kadmin="${TESTS_ENVIRONMENT} ../../kadmin/kadmin -l -r $R"
kdc="${TESTS_ENVIRONMENT} ../../kdc/kdc --addresses=localhost -P $port"
kadmin="${kadmin} -l -r $R"
kdc="${kdc} --addresses=localhost -P $port"
server=host/datan.test.h5l.se
server2=host/computer.example.com
@@ -68,17 +70,12 @@ keytab="FILE:${keytabfile}"
ps="proxy-service@${R}"
aesenctype="aes256-cts-hmac-sha1-96"
kinit="${TESTS_ENVIRONMENT} ../../kuser/kinit -c $cache --no-afslog"
klist="${TESTS_ENVIRONMENT} ../../kuser/klist -c $cache"
kgetcred="${TESTS_ENVIRONMENT} ../../kuser/kgetcred -c $cache"
kgetcred_imp="${TESTS_ENVIRONMENT} ../../kuser/kgetcred -c $cache --out-cache=${ocache}"
kdestroy="${TESTS_ENVIRONMENT} ../../kuser/kdestroy -c $cache --no-unlog"
ktutil="${TESTS_ENVIRONMENT} ../../admin/ktutil"
hxtool="${TESTS_ENVIRONMENT} ../../lib/hx509/hxtool"
kimpersonate="${TESTS_ENVIRONMENT} ../../kuser/kimpersonate -k ${keytab} --ccache=${ocache}"
test_renew="${TESTS_ENVIRONMENT} ../../lib/krb5/test_renew"
test_ap_req="${TESTS_ENVIRONMENT} ../../lib/krb5/test_ap-req"
test_gic="${TESTS_ENVIRONMENT} ../../lib/krb5/test_gic"
kinit="${kinit} -c $cache --no-afslog"
klist="${klist} -c $cache"
kgetcred="${kgetcred} -c $cache"
kgetcred_imp="${kgetcred} -c $cache --out-cache=${ocache}"
kdestroy="${kdestroy} -c $cache --no-unlog"
kimpersonate="${kimpersonate} -k ${keytab} --ccache=${ocache}"
KRB5_CONFIG="${objdir}/@KDCCONF@"
export KRB5_CONFIG
@@ -171,7 +168,7 @@ env MallocStackLogging=1 MallocStackLoggingNoCompact=1 MallocErrorAbort=1 Malloc
${kdc} &
kdcpid=$!
sh ${srcdir}/wait-kdc.sh
sh ${wait_kdc}
if [ "$?" != 0 ] ; then
kill -9 ${kdcpid}
exit 1
@@ -391,7 +388,7 @@ fi
# If we support pkinit and have RSA, lets try that
if test "$pkinit" = yes -a "$rsa" = yes ; then
base="${srcdir}/../../lib/hx509/data"
base="${hx509_data}"
echo "try anonymous pkinit"; > messages.log
${kinit} --anonymous ${R} || \
@@ -539,7 +536,7 @@ echo " test_gic passes"
${kdestroy}
echo "killing kdc (${kdcpid})"
sh ${srcdir}/leaks-kill.sh kdc $kdcpid || exit 1
sh ${leaks_kill} kdc $kdcpid || exit 1
trap "" EXIT