blob: 59bc82760b5a14deb9dfe62ada33d979ea6dc7c3 (
plain)
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
|
mydir=tests/mkeystash_compat
BUILDTOP=$(REL)..$(S)..
RUN_SETUP = @KRB5_RUN_ENV@ KRB5_KDC_PROFILE=kdc.conf KRB5_CONFIG=krb5.conf
KRB5_RUN_ENV= @KRB5_RUN_ENV@
PROG_LIBPATH=-L$(TOPLIBD)
PROG_RPATH=$(KRB5_LIBDIR)
OBJS = bigendian.o
SRCS = $(srcdir)/bigendian.c
TEST_DB = ./testdb
TEST_REALM = FOO.TEST.REALM
TEST_MKEY = footes
KADMIN_OPTS= -d $(TEST_DB) -r $(TEST_REALM)
KDB_OPTS= $(KADMIN_OPTS) -P $(TEST_MKEY)
check-unix:: mkeystash_check
bigendian: $(OUTPRE)bigendian.$(OBJEXT) $(SUPPORT_DEPLIB)
$(CC_LINK) $(ALL_CFLAGS) -o bigendian $(OUTPRE)bigendian.$(OBJEXT)
kdc.conf: Makefile
rm -rf kdc.conf
@echo "[realms]" > kdc.conf
@echo "$(TEST_REALM) = {" >> kdc.conf
@echo " key_stash_file = `pwd`/stash_file" >> kdc.conf
@echo "}" >> kdc.conf
krb5.conf: Makefile
cat $(top_srcdir)/config-files/krb5.conf > krb5.new
echo "[dbmodules]" >> krb5.new
echo " db_module_dir = $(BUILDTOP)/util/fakedest$(KRB5_DB_MODULE_DIR)" >> krb5.new
mv krb5.new krb5.conf
# Verify that the mkey stash code is backward compat with old/non-keytab stashfile format
mkeystash_check: kdc.conf krb5.conf bigendian
$(RM) $(TEST_DB)* stash_file
$(RUN_SETUP) $(VALGRIND) ../../kadmin/dbutil/kdb5_util $(KDB_OPTS) create -s
# overwrite keytab stash file with old format stash, depends on endianness of current test system
./bigendian && cp $(srcdir)/old_stash_bendian stash_file || cp $(srcdir)/old_stash_lendian stash_file
# getprinc will fail if old stash file can not be read
$(RUN_SETUP) $(VALGRIND) ../../kadmin/cli/kadmin.local $(KADMIN_OPTS) -q 'getprinc K/M'
$(RUN_SETUP) $(VALGRIND) ../../kadmin/dbutil/kdb5_util $(KDB_OPTS) destroy -f
$(RM) $(TEST_DB)* stash_file
clean::
$(RM) kdc.conf krb5.conf bigendian.$(OBJEXT) bigendian
|