summaryrefslogtreecommitdiffstats
path: root/third_party/heimdal/tests/bin
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/heimdal/tests/bin')
-rw-r--r--third_party/heimdal/tests/bin/Makefile.am30
-rw-r--r--third_party/heimdal/tests/bin/intr.c56
-rw-r--r--third_party/heimdal/tests/bin/setup-env.in89
3 files changed, 175 insertions, 0 deletions
diff --git a/third_party/heimdal/tests/bin/Makefile.am b/third_party/heimdal/tests/bin/Makefile.am
new file mode 100644
index 0000000..98bb342
--- /dev/null
+++ b/third_party/heimdal/tests/bin/Makefile.am
@@ -0,0 +1,30 @@
+include $(top_srcdir)/Makefile.am.common
+
+noinst_SCRIPTS = setup-env
+
+noinst_PROGRAMS = intr
+
+intr_SOURCES = intr.c
+
+CHECK_LOCAL = no-check-local
+
+intr_LDADD = $(LIB_roken)
+
+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" \
+ -e "s,[@]NO_AFS[@],$(NO_AFS),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
+
+EXTRA_DIST = setup-env.in
+
+CLEANFILES = setup-env setup-env.tmp
+
diff --git a/third_party/heimdal/tests/bin/intr.c b/third_party/heimdal/tests/bin/intr.c
new file mode 100644
index 0000000..867c5c2
--- /dev/null
+++ b/third_party/heimdal/tests/bin/intr.c
@@ -0,0 +1,56 @@
+#include <config.h>
+
+#include <getarg.h>
+#include <roken.h>
+#include <time.h>
+
+static int help_flag;
+static int timeout = 3;
+
+static struct getargs args[] = {
+ { "help", 'h', arg_flag, &help_flag, NULL, NULL },
+ { "timeout", 't', arg_integer, &timeout, NULL, NULL }
+};
+
+static int nargs = sizeof(args) / sizeof(args[0]);
+
+static time_t
+handle_timeout(void *data)
+{
+ static int killed;
+
+ if (!killed++)
+ return -1; /* kill it */
+ return -2; /* stop waiting for it */
+}
+
+static void
+usage(int status)
+{
+ arg_printusage(args, nargs, NULL, "command");
+ exit(status);
+}
+
+
+int
+main(int argc, char **argv)
+{
+ int optidx = 0;
+
+ setprogname(argv[0]);
+
+ if (getarg(args, nargs, argc, argv, &optidx))
+ usage(1);
+
+ if (help_flag)
+ usage(0);
+
+ argc -= optidx;
+ argv += optidx;
+
+ if (argc == 0)
+ usage(1);
+
+ return simple_execvp_timed(argv[0], argv, handle_timeout, NULL,
+ timeout);
+}
diff --git a/third_party/heimdal/tests/bin/setup-env.in b/third_party/heimdal/tests/bin/setup-env.in
new file mode 100644
index 0000000..8efa0e9
--- /dev/null
+++ b/third_party/heimdal/tests/bin/setup-env.in
@@ -0,0 +1,89 @@
+#!/bin/sh
+
+HEIM_PIDFILE_DIR="${objdir}/"
+export HEIM_PIDFILE_DIR
+
+unset KRB5_CONFIG
+unset KRB5CCNAME
+
+unset GSS_MECH_CONFIG
+unset GSSAPI_SPNEGO_NAME
+
+top_builddir="@top_builddir@"
+top_srcdir="@top_srcdir@"
+EGREP="@EGREP@"
+NO_AFS="@NO_AFS@"
+MITKRB5="@MITKRB5@"
+
+# Meant to be sourced (source or .) by the tester application, offers
+# most commands in heimdal as variables
+
+# regular apps
+bx509d="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/bx509d"
+httpkadmind="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/httpkadmind"
+hxtool="${TESTS_ENVIRONMENT} ${top_builddir}/lib/hx509/hxtool"
+iprop_log="${TESTS_ENVIRONMENT} ${top_builddir}/lib/kadm5/iprop-log"
+ipropd_master="${TESTS_ENVIRONMENT} ${top_builddir}/lib/kadm5/ipropd-master"
+ipropd_slave="${TESTS_ENVIRONMENT} ${top_builddir}/lib/kadm5/ipropd-slave"
+kadmin="${TESTS_ENVIRONMENT} ${top_builddir}/kadmin/kadmin"
+kadmind="${TESTS_ENVIRONMENT} ${top_builddir}/kadmin/kadmind"
+kdc="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/kdc"
+kdc_tester="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/kdc-tester"
+kcm="${TESTS_ENVIRONMENT} ${top_builddir}/kcm/kcm"
+test_csr_authorizer="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/test_csr_authorizer"
+test_kdc_ca="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/test_kdc_ca"
+test_token_validator="${TESTS_ENVIRONMENT} ${top_builddir}/kdc/test_token_validator"
+kdestroy="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kdestroy"
+kdigest="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kdigest"
+kgetcred="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kgetcred"
+kimpersonate="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kimpersonate"
+kinit="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/kinit"
+klist="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/heimtools klist"
+kpasswd="${TESTS_ENVIRONMENT} ${top_builddir}/kpasswd/kpasswd"
+kpasswdd="${TESTS_ENVIRONMENT} ${top_builddir}/kpasswd/kpasswdd"
+kswitch="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/heimtools kswitch"
+kx509="${TESTS_ENVIRONMENT} ${top_builddir}/kuser/heimtools kx509"
+ktutil="${TESTS_ENVIRONMENT} ${top_builddir}/admin/ktutil"
+gsstool="${TESTS_ENVIRONMENT} ${top_builddir}/lib/gssapi/gsstool"
+gsstoken="${TESTS_ENVIRONMENT} ${top_builddir}/lib/gssapi/gss-token"
+
+# regression test tools
+test_ap_req="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_ap-req"
+test_canon="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_canon"
+test_gic="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_gic"
+test_renew="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_renew"
+test_ntlm="${TESTS_ENVIRONMENT} ${top_builddir}/lib/gssapi/test_ntlm"
+test_context="${TESTS_ENVIRONMENT} ${top_builddir}/lib/gssapi/test_context"
+rkbase64="${TESTS_ENVIRONMENT} ${top_builddir}/lib/roken/rkbase64"
+rkpty="${TESTS_ENVIRONMENT} ${top_builddir}/lib/roken/rkpty"
+rkvis="${TESTS_ENVIRONMENT} ${top_builddir}/lib/roken/rkvis"
+test_set_kvno0="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_set_kvno0"
+test_alname="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_alname"
+test_kuserok="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_kuserok"
+test_mkforwardable="${TESTS_ENVIRONMENT} ${top_builddir}/lib/krb5/test_mkforwardable"
+
+# misc apps
+have_db="${top_builddir}/tests/db/have-db"
+leaks_kill="${top_srcdir}/tests/kdc/leaks-kill.sh"
+wait_kdc="${top_srcdir}/tests/kdc/wait-kdc.sh"
+getpid () {
+ if [ -f "$HEIM_PIDFILE_DIR/lt-${1}.pid" ]; then
+ cat "$HEIM_PIDFILE_DIR/lt-${1}.pid"
+ else
+ cat "$HEIM_PIDFILE_DIR/${1}.pid"
+ fi
+}
+
+if [ ! "${NO_AFS}" ] ; then
+ afs_no_unlog="--no-unlog"
+ afs_no_afslog="--no-afslog"
+else
+ afs_no_unlog=""
+ afs_no_afslog=""
+fi
+
+# data
+hx509_data="${top_srcdir}/lib/hx509/data"
+
+# malloc debug
+HEIM_MALLOC_DEBUG="MallocStackLoggingNoCompact=1 MallocErrorAbort=1 MallocLogFile=/tmp/heim-malloc-log"