Now all servers can have it.
authcon.o grows a krb5 dependency and needs to get KRB5_CPPFLAGS.
Change-Id: I95fecb3f88c19b3d5193ea8200fa20c86ec08ad7
AS_IF([test x"$KRB5_LIBS" != x],
[BUILD_KRB5=yes
MAKE_KRB5=
+ AC_DEFINE([USE_RXKAD_KEYTAB], 1,
+ [Define to 1 if krb5 libraries are available and rxkad can use keytabs])
RRA_LIB_KRB5_SWITCH
AC_CHECK_FUNCS([add_error_table \
add_to_error_table \
cellconfig.o: cellconfig.c ${INCLS}
ktc.o: ktc.c ${INCLS} ${TOP_INCDIR}/afs/vice.h
writeconfig.o: writeconfig.c ${INCLS}
+
authcon.o: authcon.c ${INCLS}
+ ${CCOBJ} ${CFLAGS} -c ${srcdir}/authcon.c @KRB5_CPPFLAGS@
+
userok.o: userok.c ${INCLS}
cellconfig.o: cellconfig.c ${INCLS}
copyauth.o: copyauth.c ${INCLS} AFS_component_version_number.o
#include <des.h>
#include <des_prototypes.h>
#include <rx/rxkad.h>
+#ifdef USE_RXKAD_KEYTAB
+#include <afs/dirpath.h>
+#endif
#include <rx/rx.h>
+#include <afs/afsutil.h>
#include "cellconfig.h"
#include "keys.h"
#include "auth.h"
{
struct afsconf_dir *adir = (struct afsconf_dir *) arock;
struct rx_securityClass *tclass;
-
+#ifdef USE_RXKAD_KEYTAB
+ int keytab_enable = 0;
+ char *keytab_name;
+ size_t ktlen;
+ ktlen = 5 + strlen(adir->name) + 1 + strlen(AFSDIR_RXKAD_KEYTAB_FILE) + 1;
+ keytab_name = malloc(ktlen);
+ if (keytab_name != NULL) {
+ strcompose(keytab_name, ktlen, "FILE:", adir->name, "/",
+ AFSDIR_RXKAD_KEYTAB_FILE, (char *)NULL);
+ if (rxkad_InitKeytabDecrypt(keytab_name) == 0)
+ keytab_enable = 1;
+ free(keytab_name);
+ }
+#endif
LOCK_GLOBAL_MUTEX;
tclass = (struct rx_securityClass *)
rxkad_NewServerSecurityObject(0, adir, afsconf_GetKey, NULL);
if (tclass) {
*astr = tclass;
*aindex = RX_SECIDX_KAD;
+#ifdef USE_RXKAD_KEYTAB
+ if (keytab_enable)
+ rxkad_BindKeytabDecrypt(tclass);
+#endif
UNLOCK_GLOBAL_MUTEX;
return 0;
} else {
struct rx_securityClass ***classes,
afs_int32 *numClasses)
{
+#ifdef USE_RXKAD_KEYTAB
+ int keytab_enable = 0;
+ char *keytab_name;
+ size_t ktlen;
+ ktlen = 5 + strlen(dir->name) + 1 + strlen(AFSDIR_RXKAD_KEYTAB_FILE) + 1;
+ keytab_name = malloc(ktlen);
+ if (keytab_name != NULL) {
+ strcompose(keytab_name, ktlen, "FILE:", dir->name, "/",
+ AFSDIR_RXKAD_KEYTAB_FILE, (char *)NULL);
+ if (rxkad_InitKeytabDecrypt(keytab_name) == 0)
+ keytab_enable = 1;
+ free(keytab_name);
+ }
+#endif
if (flags & AFSCONF_SEC_OBJS_RXKAD_CRYPT)
*numClasses = 4;
else
(*classes)[1] = NULL;
(*classes)[2] = rxkad_NewServerSecurityObject(0, dir,
afsconf_GetKey, NULL);
- if (flags & AFSCONF_SEC_OBJS_RXKAD_CRYPT)
+#ifdef USE_RXKAD_KEYTAB
+ if (keytab_enable)
+ rxkad_BindKeytabDecrypt((*classes)[2]);
+#endif
+ if (flags & AFSCONF_SEC_OBJS_RXKAD_CRYPT) {
(*classes)[3] = rxkad_NewServerSecurityObject(rxkad_crypt, dir,
afsconf_GetKey, NULL);
+#ifdef USE_RXKAD_KEYTAB
+ if (keytab_enable)
+ rxkad_BindKeytabDecrypt((*classes)[3]);
+#endif
+ }
}
#endif
$(CC) $(CFLAGS) -c ${srcdir}/bos.c
bos: bos.o $(LIBS) libbos.a
- ${CC} ${CFLAGS} -o bos bos.o libbos.a $(LIBS) ${XLIBS}
+ ${CC} ${CFLAGS} -o bos bos.o libbos.a $(LIBS) ${XLIBS} ${KRB5_LIBS}
bos_util.o: bos_util.c ${INCLS} AFS_component_version_number.o ${TOP_INCDIR}/afs/bnode.h
$(CC) $(CFLAGS) -c ${srcdir}/bos_util.c
bos_util: bos_util.o $(LIBS)
- ${CC} ${CFLAGS} -o bos_util bos_util.o $(LIBS) ${XLIBS}
+ ${CC} ${CFLAGS} -o bos_util bos_util.o $(LIBS) ${XLIBS} ${KRB5_LIBS}
ezbnodeops.o: ezbnodeops.c ${INCLS}
$(RANLIB) $@
bosserver: $(OBJS) $(LIBS)
- ${CC} $(CFLAGS) -o bosserver $(OBJS) ${TOP_LIBDIR}/libaudit.a $(LIBS) ${XLIBS}
+ ${CC} $(CFLAGS) -o bosserver $(OBJS) ${TOP_LIBDIR}/libaudit.a $(LIBS) ${XLIBS} ${KRB5_LIBS}
#
# Install targets
$(BACKOBJS): bc.h ${TOP_INCDIR}/afs/butc.h
backup: $(BACKOBJS) ${LIBS}
- ${CC} ${CFLAGS} -o backup $(BACKOBJS) ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -o backup $(BACKOBJS) ${LIBS} ${XLIBS} ${KRB5_LIBS}
bc.h: bucoord_errs.c
server.o: server.c budb_errs.h ${INCLS} AFS_component_version_number.c
budb_server: $(SERVER_OBJS) ${LIBS} ${TOP_INCDIR}/afs/budb_client.h
- ${CC} ${LDFLAGS} -o budb_server $(SERVER_OBJS) ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o budb_server $(SERVER_OBJS) ${LIBS} ${XLIBS} ${KRB5_LIBS}
budb.cs.c: budb.rg
${RXGEN} -A -u -C -o $@ ${srcdir}/budb.rg
all: butc read_tape
butc_test: ${TESTOBJS} ${LIBS} ${INCLS} ${HACKS}
- ${CC} ${CFLAGS} ${TESTOBJS} ${LIBS} ${XLIBS} -o butc_test
+ ${CC} ${CFLAGS} ${TESTOBJS} ${LIBS} ${XLIBS} ${KRB5_LIBS} -o butc_test
tdump: tdump.c AFS_component_version_number.c
${CC} ${CFLAGS} ${srcdir}/tdump.c -o tdump
butc: ${SOBJS} ${LIBS} ${INCLS} ${HACKS}
@case ${SYS_NAME} in \
- rs_aix*) ${CC} ${CFLAGS} ${SOBJS} ${LIBS} ${XLIBS} /usr/lib/libc_r.a -o butc;; \
- *) ${CC} ${CFLAGS} ${SOBJS} ${LIBS} ${XLIBS} -o butc;; \
+ rs_aix*) ${CC} ${CFLAGS} ${SOBJS} ${LIBS} ${XLIBS} ${KRB5_LIBS} /usr/lib/libc_r.a -o butc;; \
+ *) ${CC} ${CFLAGS} ${SOBJS} ${LIBS} ${XLIBS} ${KRB5_LIBS} -o butc;; \
esac
tcmain.o: tcmain.c ${INCLS} AFS_component_version_number.c
INCLUDE_LIBINTL = @INCLUDE_libintl@
KERN_DBG = @KERN_DBG@
KERN_OPTMZ = @KERN_OPTMZ@
+KRB5_LIBS = @KRB5_LIBS@
LD = @LD@
LEX = @LEX@
LIB_AFSDB = @LIB_AFSDB@
${CCRULE}
dafileserver: ${objects} ${LIBS}
- ${CC} ${LDFLAGS} -o dafileserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o dafileserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
state_analyzer: ${SDBGOBJS}
${CC} ${LDFLAGS} -o state_analyzer ${SDBGOBJS} ${MT_LIBS} ${XLIBS}
${COMPILE}
davolserver: ${objects} ${LIBS}
- ${CC} ${LDFLAGS} -o davolserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o davolserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
install: davolserver
${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
fsprobe_test: fsprobe_test.o libfsprobe.a ${LIBS}
${CC} ${CFLAGS} -o fsprobe_test fsprobe_test.o libfsprobe.a \
- ${LIBS} ${XLIBS}
+ ${LIBS} ${XLIBS} ${KRB5_LIBS}
#
# Install targets
cd test; $(MAKE)
kaserver: kautils.o kalocalcell.o kadatabase.o kaprocs.o kalog.o kauth.ss.o kauth.xdr.o kaserver.o kaaux.o krb_udp.o kaauxdb.o $(LIBS)
- ${CC} ${LDFLAGS} -o kaserver kaserver.o kautils.o kalocalcell.o kadatabase.o krb_udp.o kaprocs.o kalog.o kauth.ss.o kauth.xdr.o kaaux.o kaauxdb.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a
+ ${CC} ${LDFLAGS} -o kaserver kaserver.o kautils.o kalocalcell.o kadatabase.o krb_udp.o kaprocs.o kalog.o kauth.ss.o kauth.xdr.o kaaux.o kaauxdb.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a ${KRB5_LIBS}
kaserver.o: kaserver.c ${INCLS} AFS_component_version_number.o
kas: kauth.h kautils.h admin_tools.o libkauth.a $(LIBS) kas.o kkids.o
${CC} ${LDFLAGS} -o kas kas.o admin_tools.o kkids.o libkauth.a \
- ${LIBS} ${XLIBS}
+ ${LIBS} ${XLIBS} ${KRB5_LIBS}
klog: AFS_component_version_number.o kauth.h kautils.h libkauth.a $(LIBS) \
klog.o
- ${CC} ${LDFLAGS} -o klog klog.o libkauth.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o klog klog.o libkauth.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
klog.o: klog.c kauth.h kautils.h AFS_component_version_number.o
klog.krb: kauth.h kautils.h libkauth.krb.a $(KLIBS) klog.o
- ${CC} ${LDFLAGS} -o klog.krb klog.o libkauth.krb.a ${KLIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o klog.krb klog.o libkauth.krb.a ${KLIBS} ${XLIBS} ${KRB5_LIBS}
knfs: kauth.h kautils.h libkauth.a $(LIBS) knfs.o
- ${CC} ${LDFLAGS} -o knfs knfs.o libkauth.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o knfs knfs.o libkauth.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
knfs.o: knfs.c AFS_component_version_number.o
${CC} ${CFLAGS} -c ${srcdir}/klogin.c -DKAUTH
klogin: libkauth.a $(LIBS) klogin.o
- ${CC} ${LDFLAGS} -o klogin klogin.o libkauth.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o klogin klogin.o libkauth.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
klogin.krb: libkauth.a $(KLIBS) klogin.o
- ${CC} ${LDFLAGS} -o klogin.krb klogin.o libkauth.krb.a ${KLIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o klogin.krb klogin.o libkauth.krb.a ${KLIBS} ${XLIBS} ${KRB5_LIBS}
kpasswd.o: kauth.h kautils.h ${INCLS} kpasswd.c AFS_component_version_number.o
${CC} ${CFLAGS} -c ${srcdir}/kpasswd.c
kpasswd: kauth.h kautils.h libkauth.a $(LIBS) kpasswd.o kkids.o
- ${CC} ${LDFLAGS} -o kpasswd kpasswd.o kkids.o libkauth.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o kpasswd kpasswd.o kkids.o libkauth.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
kpwvalid.o: kpwvalid.c AFS_component_version_number.o
${CC} ${CFLAGS} -c ${srcdir}/kpwvalid.c
kpwvalid: kpwvalid.o $(LIBS)
- ${CC} ${LDFLAGS} -o kpwvalid kpwvalid.o ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o kpwvalid kpwvalid.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
user.krb.o: user.c ${INCLS} ${TOP_INCDIR}/afs/vice.h
${CCOBJ} ${CFLAGS} -DAFS_KERBEROS_ENV -c ${srcdir}/user.c -o user.krb.o
${CCOBJ} ${CFLAGS} -c ${srcdir}/user.c
kdb: kdb.o ${INCLS} ${LIBS} libkauth.a
- ${CC} ${LDFLAGS} -o kdb kdb.o libkauth.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o kdb kdb.o libkauth.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
kdb.o: kdb.c AFS_component_version_number.o
ka-forwarder.o: ka-forwarder.c
ka-forwarder: ka-forwarder.o
- ${CC} -o $@ ${CFLAGS} ka-forwarder.o ${LIBS} ${XLIBS}
+ ${CC} -o $@ ${CFLAGS} ka-forwarder.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
rebuild.o: rebuild.c $(INCLS) AFS_component_version_number.o
rebuild: rebuild.o kautils.o $(LIBS)
- ${CC} ${LDFLAGS} -o rebuild rebuild.o kautils.o $(LIBS) ${XLIBS}
+ ${CC} ${LDFLAGS} -o rebuild rebuild.o kautils.o $(LIBS) ${XLIBS} ${KRB5_LIBS}
#
# Install targets
fileutil.o
RXKADOBJS = \
- rxkad_errs.o
+ rxkad_errs.o @MAKE_KRB5@ ticket5_keytab.o
SYSOBJS = \
rmtsysc.o \
${CCRULE} -I../auth
authcon.o: ${AUTH}/authcon.c
- ${CCRULE} -I../auth
+ ${CCRULE} -I../auth @KRB5_CPPFLAGS@
ktc_errors.o: ${AUTH}/ktc_errors.c
${CCRULE}
rxkad_errs.o: ${RXKAD}/rxkad_errs.c
${CCRULE}
+ticket5_keytab.o: ${RXKAD}/ticket5_keytab.c
+ ${CCRULE} @KRB5_CPPFLAGS@
+
ptclient.o: ${PTSERVER}/ptclient.c
${CCRULE} -I../ptserver
LDFLAGS = ${SHLIB_LDFLAGS}
LIBS = ${TOP_LIBDIR}/libafsauthent_pic.a ${TOP_LIBDIR}/libafsrpc_pic.a \
- ${PAM_LIBS} @LIB_AFSDB@ ${MT_LIBS}
+ ${PAM_LIBS} ${KRB5_LIBS} @LIB_AFSDB@ ${MT_LIBS}
KLIBS = ktc_krb.o ${TOP_LIBDIR}/libafsauthent_pic.a \
- ${TOP_LIBDIR}/libafsrpc_pic.a ${PAM_LIBS} @LIB_AFSDB@ ${MT_LIBS}
+ ${TOP_LIBDIR}/libafsrpc_pic.a ${PAM_LIBS} ${KRB5_LIBS} \
+ @LIB_AFSDB@ ${MT_LIBS}
SHOBJS = afs_account.o afs_session.o afs_password.o \
afs_pam_msg.o afs_message.o AFS_component_version_number.o
OBJS = $(SHOBJS) test_pam.o
# Build targets
#
ptserver: ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o $(LIBS) ${TOP_LIBDIR}/libaudit.a map.o
- $(CC) ${CFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a
+ $(CC) ${CFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a ${KRB5_LIBS}
ptserver.o: ptserver.c ${INCLS} AFS_component_version_number.c
db_verify.o: db_verify.c ${INCLS} AFS_component_version_number.c
db_verify: db_verify.o pterror.o display.o $(LIBS)
- $(CC) ${CFLAGS} -o db_verify db_verify.o display.o pterror.o $(LIBS) ${XLIBS}
+ $(CC) ${CFLAGS} -o db_verify db_verify.o display.o pterror.o $(LIBS) ${XLIBS} ${KRB5_LIBS}
ptclient: ptclient.o display.o libprot.a $(LIBS)
- $(CC) ${CFLAGS} -o ptclient ptclient.o display.o libprot.a $(LIBS) ${XLIBS}
+ $(CC) ${CFLAGS} -o ptclient ptclient.o display.o libprot.a $(LIBS) ${XLIBS} ${KRB5_LIBS}
ptclient.o: ptclient.c ${INCLS} AFS_component_version_number.c
$(RANLIB) $@
pts: pts.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS)
- $(CC) ${CFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a libprot.a ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a libprot.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
pts.o: pts.c ${LINCLS} ${TOP_INCDIR}/afs/cmd.h AFS_component_version_number.c
readgroup: readgroup.o libprot.a $(LIBS)
- $(CC) ${CFLAGS} -o readgroup readgroup.o libprot.a ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o readgroup readgroup.o libprot.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
readgroup.o: readgroup.c ${LINCLS} AFS_component_version_number.c
readpwd: readpwd.o libprot.a $(LIBS)
- $(CC) ${CFLAGS} -o readpwd readpwd.o libprot.a ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o readpwd readpwd.o libprot.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
readpwd.o: readpwd.c ${LINCLS} AFS_component_version_number.c
testpt: testpt.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS)
case "$(SYS_NAME)" in \
*_darwin_12 ) \
- $(CC) ${CFLAGS} -o testpt testpt.o ${TOP_LIBDIR}/libcmd.a libprot.a $(LIBS) ;; \
+ $(CC) ${CFLAGS} -o testpt testpt.o ${TOP_LIBDIR}/libcmd.a libprot.a $(LIBS) ${KRB5_LIBS} ;; \
* ) \
- $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a libprot.a $(LIBS) ${XLIBS} ;; \
+ $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a libprot.a $(LIBS) ${XLIBS} ${KRB5_LIBS} ;; \
esac
testpt.o: testpt.c ${INCLS} ${TOP_INCDIR}/afs/cmd.h AFS_component_version_number.c
pt_util: pt_util.o ptutils.o ubik.o utils.o map.o libprot.a $(LIBS)
- $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS) ${XLIBS}
+ $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS) ${XLIBS} ${KRB5_LIBS}
ubik.o: ubik.c ${INCLS}
scout.o: scout.c ${INCLS} AFS_component_version_number.c
scout: scout.o $(LIBS)
- ${CC} ${LDFLAGS} -o scout scout.o $(LIBS) ${LIB_curses} ${XLIBS}
+ ${CC} ${LDFLAGS} -o scout scout.o $(LIBS) ${LIB_curses} ${XLIBS} ${KRB5_LIBS}
#
# Installation targets
fileutil.o
RXKADOBJS = \
- rxkad_errs.o
+ rxkad_errs.o @MAKE_KRB5@ ticket5_keytab.o
SYSOBJS = \
rmtsysc.o \
${LIBAFSAUTHENT}: ${LIBOBJS} libafsauthent.map
../config/shlib-build -d $(srcdir) -l libafsauthent \
-M ${LIBAFSAUTHENTMAJOR} -m ${LIBAFSAUTHENTMINOR} -- \
- -L${TOP_LIBDIR} -lafsrpc ${LIB_crypt} ${LIBOBJS} ${LIB_AFSDB} ${MT_LIBS}
+ -L${TOP_LIBDIR} -lafsrpc ${LIB_crypt} ${LIBOBJS} ${LIB_AFSDB} ${MT_LIBS} ${KRB5_LIBS}
libafsauthent_pic.a: ${LIBOBJS}
$(RM) -f $@
${CCRULE}
authcon.o: ${AUTH}/authcon.c
- ${CCRULE}
+ ${CCRULE} @KRB5_CPPFLAGS@
ktc_errors.o: ${AUTH}/ktc_errors.c
${CCRULE}
rxkad_errs.o: ${RXKAD}/rxkad_errs.c
${CCRULE}
+ticket5_keytab.o: ${RXKAD}/ticket5_keytab.c
+ ${CCRULE} @KRB5_CPPFLAGS@
+
ptclient.o: ${PTSERVER}/ptclient.c
${CCRULE}
budb_server: $(SERVER_OBJS) ${LIBS}
- ${CC} ${LDFLAGS} -o budb_server $(SERVER_OBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o budb_server $(SERVER_OBJS) ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
budb.cs.c: ${BUDB}/budb.rg
${RXGEN} -u -C -o $@ ${srcdir}/${BUDB}/budb.rg
all: butc
butc: ${BUTCOBJS} ${BUTCLIBS}
- ${CC} ${CFLAGS} ${BUTCOBJS} ${BUTCLIBS} ${MT_LIBS} ${XLIBS} -o butc
+ ${CC} ${CFLAGS} ${BUTCOBJS} ${BUTCLIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS} -o butc
libbutm.a: ${BUTMOBJS} AFS_component_version_number.o
-$(RM) -f libbutm.a
${CCRULE} ${srcdir}/${PTSERVER}/display.c
ptserver: ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o $(LIBS) ${TOP_LIBDIR}/libaudit.a map.o
- ${CC} ${LDFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a
+ ${CC} ${LDFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a ${KRB5_LIBS}
db_verify.o: ${PTSERVER}/db_verify.c ${INCLS}
${CCRULE} ${srcdir}/${PTSERVER}/db_verify.c
$(CC) ${LDFLAGS} -o db_verify db_verify.o display.o pterror.o $(LIBS) ${MT_LIBS} ${XLIBS}
ptclient: ptclient.o display.o ptuser.o pterror.o ptint.cs.o ptint.xdr.o AFS_component_version_number.o $(LIBS)
- $(CC) ${LDFLAGS} -o ptclient ptclient.o display.o $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS}
+ $(CC) ${LDFLAGS} -o ptclient ptclient.o display.o $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
ptclient.o: ${PTSERVER}/ptclient.c ${INCLS}
${CCRULE} ${srcdir}/${PTSERVER}/ptclient.c
${COMPILE_ET} -p ${srcdir}/${PTSERVER} pterror
pts: pts.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS) ${INCLS}
- $(CC) ${LDFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${LDFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
pts.o: ${PTSERVER}/pts.c
${CCRULE} ${srcdir}/${PTSERVER}/pts.c
readgroup: readgroup.o $(PTOBJS) $(LIBS)
- $(CC) ${CFLAGS} -o readgroup readgroup.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o readgroup readgroup.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
readgroup.o: ${PTSERVER}/readgroup.c ${INCLS}
${CCRULE} ${srcdir}/${PTSERVER}/readgroup.c
readpwd: readpwd.o $(PTOBJS) $(LIBS)
- $(CC) ${CFLAGS} -o readpwd readpwd.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o readpwd readpwd.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
readpwd.o: ${PTSERVER}/readpwd.c ${INCLS}
${CCRULE} ${srcdir}/${PTSERVER}/readpwd.c
testpt: testpt.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS)
- $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
testpt.o: ${PTSERVER}/testpt.c ${INCLS}
${CCRULE} ${srcdir}/${PTSERVER}/testpt.c
pt_util: pt_util.o ptutils.o ubik.o utils.o map.o $(PTOBJS) $(LIBS)
- $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS) ${MT_LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS) ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
pt_util.o: ${PTSERVER}/pt_util.c
${CCRULE} ${srcdir}/${PTSERVER}/pt_util.c
$(LD) -o $@ ${AUTH_KRB5_OBJS} $(AFSLIBS) ${AUTHFILES} @KRB5_LIBS@ ${XLIBS} ${AKLDFLAGS}
afs_dynamic_auth: ${AUTH_OBJS} ${AFSLIBS} ${AUTHFILES}
- $(LD) -o $@ ${AUTH_OBJS} $(AFSLIBS) ${AUTHFILES} ${XLIBS} ${LDFLAGS}
+ $(LD) -o $@ ${AUTH_OBJS} $(AFSLIBS) ${AUTHFILES} @KRB5_LIBS@ ${XLIBS} ${LDFLAGS}
afs_dynamic_kerbauth: ${AUTH_KRB_OBJS} ${KAFSLIBS} ${AUTHFILES}
- $(LD) -o $@ ${AUTH_KRB_OBJS} $(KAFSLIBS) ${AUTHFILES} ${XLIBS} ${LDFLAGS}
+ $(LD) -o $@ ${AUTH_KRB_OBJS} $(KAFSLIBS) ${AUTHFILES} @KRB5_LIBS@ ${XLIBS} ${LDFLAGS}
aix_auth_common.o: ${srcdir}/aix_auth_common.c
${CCRULE}
${CCRULE}
fileserver: ${objects} ${LIBS}
- ${CC} ${LDFLAGS} -o fileserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o fileserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
install: fileserver
${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
vldb_check: vldb_check.o ${LIBS} AFS_component_version_number.o
- $(CC) ${LDFLAGS} -o vldb_check vldb_check.o AFS_component_version_number.o ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${LDFLAGS} -o vldb_check vldb_check.o AFS_component_version_number.o ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
vldb_check.o: ${VLSERVER}/vldb_check.c
${CCRULE} ${srcdir}/${VLSERVER}/vldb_check.c
cnvldb: cnvldb.o ${LIBS}
- $(CC) ${LDFLAGS} -o cnvldb cnvldb.o ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${LDFLAGS} -o cnvldb cnvldb.o ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
cnvldb.o: ${VLSERVER}/cnvldb.c
${CCRULE} ${srcdir}/${VLSERVER}/cnvldb.c
sascnvldb: sascnvldb.o ${LIBS}
- $(CC) ${LDFLAGS} -o sascnvldb sascnvldb.o ${LIBS} ${MT_LIBS} ${XLIBS}
+ $(CC) ${LDFLAGS} -o sascnvldb sascnvldb.o ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
sascnvldb.o: ${VLSERVER}/sascnvldb.c
${CCRULE} ${srcdir}/${VLSERVER}/sascnvldb.c
vlserver: vlserver.o vlutils.o vlprocs.o vldbint.ss.o vldbint.xdr.o $(LIBS)
$(CC) ${LDFLAGS} -o vlserver vlserver.o vlutils.o vlprocs.o vldbint.ss.o \
- vldbint.xdr.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a
+ vldbint.xdr.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a ${KRB5_LIBS}
vlserver.o: ${VLSERVER}/vlserver.c ${INCLS} AFS_component_version_number.o
${CCRULE} ${srcdir}/${VLSERVER}/vlserver.c
${RXGEN} -A -x -k -c -o $@ ${srcdir}/${VLSERVER}/vldbint.xg
vlclient: vlclient.o $(OBJS) $(LIBS) ${INCLS}
- $(CC) ${LDFLAGS} -o vlclient vlclient.o $(OBJS) $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libcmd.a
+ $(CC) ${LDFLAGS} -o vlclient vlclient.o $(OBJS) $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libcmd.a ${KRB5_LIBS}
vlclient.o: ${VLSERVER}/vlclient.c
${CCRULE} ${srcdir}/${VLSERVER}/vlclient.c
${CC} ${LDFLAGS} -o vos vos.o ${VOSOBJS} ${VLSERVEROBJS} ${LIBS} ${TOP_LIBDIR}/libubik_pthread.a ${MT_LIBS} ${XLIBS}
volserver: ${objects} ${LIBS}
- ${CC} ${LDFLAGS} -o volserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o volserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
install: volserver
${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
# Build targets
#
upclient: client.o update.cs.o utils.o ${LIBS}
- ${CC} ${CFLAGS} -o upclient client.o update.cs.o utils.o ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -o upclient client.o update.cs.o utils.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
upserver: server.o utils.o update.ss.o ${LIBS}
- ${CC} ${CFLAGS} -o upserver server.o utils.o update.ss.o ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -o upserver server.o utils.o update.ss.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
utils.o: utils.c update.h global.h
y.tab.o
uss: uss.o ${OBJS}
- ${CC} ${CFLAGS} -o uss uss.o ${OBJS} ${LIBS}
+ ${CC} ${CFLAGS} -o uss uss.o ${OBJS} ${LIBS} ${KRB5_LIBS}
uss.o: uss.c AFS_component_version_number.c
${CC} -c ${CFLAGS} ${srcdir}/uss.c
pathp = dirPathArray[AFSDIR_SERVER_FSSTATE_FILEPATH_ID];
AFSDIR_SERVER_FILEPATH(pathp, AFSDIR_LOCAL_DIR, AFSDIR_FSSTATE_FILE);
+ pathp = dirPathArray[AFSDIR_SERVER_RXKAD_KEYTAB_FILEPATH_ID];
+ AFSDIR_SERVER_FILEPATH(pathp, AFSDIR_SERVER_ETC_DIR, AFSDIR_RXKAD_KEYTAB_FILE);
+
/* client file paths */
#ifdef AFS_NT40_ENV
strcpy(dirPathArray[AFSDIR_CLIENT_THISCELL_FILEPATH_ID],
#define AFSDIR_VOLSERLOG_FILE "VolserLog"
#define AFSDIR_AUDIT_FILE "Audit"
#define AFSDIR_KRB_EXCL_FILE "krb.excl"
+#define AFSDIR_RXKAD_KEYTAB_FILE "rxkad.keytab"
#define AFSDIR_ROOTVOL_FILE "RootVolume"
#define AFSDIR_HOSTDUMP_FILE "hosts.dump"
AFSDIR_SERVER_SALSRV_FILEPATH_ID,
AFSDIR_SERVER_SALSRVLOG_FILEPATH_ID,
AFSDIR_SERVER_FSSTATE_FILEPATH_ID,
+ AFSDIR_SERVER_RXKAD_KEYTAB_FILEPATH_ID,
AFSDIR_PATHSTRING_MAX } afsdir_id_t;
/* getDirPath() returns a pointer to a string from an internal array of path strings
#define AFSDIR_SERVER_MIGRATELOG_FILEPATH getDirPath(AFSDIR_SERVER_MIGRATELOG_FILEPATH_ID)
#define AFSDIR_SERVER_KRB_EXCL_FILEPATH getDirPath(AFSDIR_SERVER_KRB_EXCL_FILEPATH_ID)
#define AFSDIR_SERVER_FSSTATE_FILEPATH getDirPath(AFSDIR_SERVER_FSSTATE_FILEPATH_ID)
+#define AFSDIR_SERVER_RXKAD_KEYTAB_FILEPATH getDirPath(AFSDIR_SERVER_RXKAD_KEYTAB_FILEPATH_ID)
/* client file paths */
#define AFSDIR_CLIENT_THISCELL_FILEPATH getDirPath(AFSDIR_CLIENT_THISCELL_FILEPATH_ID)
# Build targets
#
cacheout: cacheout.o
- $(CC) ${CFLAGS} -o cacheout cacheout.o ${LIBS} ${XLIBS} ${CMLIBS}
+ $(CC) ${CFLAGS} -o cacheout cacheout.o ${LIBS} ${XLIBS} ${CMLIBS} ${KRB5_LIBS}
cacheout.o: cacheout.c
fs.o: fs.c ${INCLS} AFS_component_version_number.c
fs: fs.o $(LIBS)
- ${CC} ${CFLAGS} -o fs fs.o ${TOP_LIBDIR}/libprot.a $(LIBS) ${XLIBS}
+ ${CC} ${CFLAGS} -o fs fs.o ${TOP_LIBDIR}/libprot.a $(LIBS) ${XLIBS} ${KRB5_LIBS}
afsio.o: ${srcdir}/afsio.c ${AFSIO_INCLS} AFS_component_version_number.c
${PTH_CCRULE} ${srcdir}/afsio.c
livesys.o: livesys.c ${INCLS} AFS_component_version_number.c
livesys: livesys.c $(LIBS)
- ${CC} ${CFLAGS} -o livesys ${srcdir}/livesys.c $(LIBS) ${XLIBS}
+ ${CC} ${CFLAGS} -o livesys ${srcdir}/livesys.c $(LIBS) ${XLIBS} ${KRB5_LIBS}
twiddle: twiddle.c $(LIBS)
- ${CC} ${CFLAGS} -o twiddle ${srcdir}/twiddle.c $(LIBS) ${XLIBS}
+ ${CC} ${CFLAGS} -o twiddle ${srcdir}/twiddle.c $(LIBS) ${XLIBS} ${KRB5_LIBS}
gcpags: gcpags.c $(LIBS)
${CC} ${CFLAGS} -o gcpags ${srcdir}/gcpags.c $(LIBS) ${XLIBS}
whatfid.o: whatfid.c ${INCLS} AFS_component_version_number.c
whatfid: whatfid.o ${LIBS}
- ${CC} ${CFLAGS} -o whatfid whatfid.o ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -o whatfid whatfid.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
fstrace.o: fstrace.c AFS_component_version_number.c
case ${SYS_NAME} in \
cmdebug.o: cmdebug.c ${INCLS} AFS_component_version_number.c
cmdebug: cmdebug.o ${CMLIBS}
- $(CC) -o cmdebug cmdebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
+ $(CC) -o cmdebug cmdebug.o ${CFLAGS} ${CMLIBS} ${XLIBS} ${KRB5_LIBS}
dedebug.o: dedebug.c ${INCLS} AFS_component_version_number.c
dedebug: dedebug.o ${CMLIBS}
- $(CC) -o dedebug dedebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
+ $(CC) -o dedebug dedebug.o ${CFLAGS} ${CMLIBS} ${XLIBS} ${KRB5_LIBS}
case ${SYS_NAME} in \
rs_aix*) \
${CC} -K ${LDFLAGS} -o fileserver ${objects} \
- ${TOP_LIBDIR}/libaudit.a ${LIBS} ${XLIBS} ;; \
+ ${TOP_LIBDIR}/libaudit.a ${LIBS} ${XLIBS} ${KRB5_LIBS} ;; \
*) \
${CC} ${LDFLAGS} -o fileserver ${objects} \
- ${TOP_LIBDIR}/libaudit.a ${LIBS} ${XLIBS} ;; \
+ ${TOP_LIBDIR}/libaudit.a ${LIBS} ${XLIBS} ${KRB5_LIBS} ;; \
esac
fsprobe.o: fsprobe.c AFS_component_version_number.c
${CC} ${CFLAGS} @CFLAGS_NOERROR@ -DINTERPRET_DUMP -c ${srcdir}/fsprobe.c
fsprobe: fsprobe.o
- ${CC} ${CFLAGS} -o fsprobe fsprobe.o ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -o fsprobe fsprobe.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
cbd.o: callback.c AFS_component_version_number.c
${CC} ${CFLAGS} -DINTERPRET_DUMP -c -o cbd.o ${srcdir}/callback.c
cbd: cbd.o
- ${CC} ${CFLAGS} -DINTERPRET_DUMP -o cbd cbd.o ${LIBS} ${XLIBS}
+ ${CC} ${CFLAGS} -DINTERPRET_DUMP -o cbd cbd.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
install: fileserver fs_stats.h
${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
${INSTALL_DATA} $? $@
vldb_check: vldb_check.o ${LIBS}
- $(CC) ${CFLAGS} -o vldb_check vldb_check.o ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o vldb_check vldb_check.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
vldb_check.o: vldb_check.c AFS_component_version_number.o
cnvldb: cnvldb.o ${LIBS}
- $(CC) ${CFLAGS} -o cnvldb cnvldb.o ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o cnvldb cnvldb.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
cnvldb.o: cnvldb.c cnvldb.h AFS_component_version_number.o
sascnvldb: sascnvldb.o ${LIBS}
- $(CC) ${CFLAGS} -o sascnvldb sascnvldb.o ${LIBS} ${XLIBS}
+ $(CC) ${CFLAGS} -o sascnvldb sascnvldb.o ${LIBS} ${XLIBS} ${KRB5_LIBS}
sascnvldb.o: sascnvldb.c cnvldb.h AFS_component_version_number.o
vlserver: vlserver.o vlutils.o vlprocs.o vldbint.ss.o vldbint.xdr.o $(LIBS)
$(CC) ${CFLAGS} -o vlserver vlserver.o vlutils.o vlprocs.o vldbint.ss.o \
- vldbint.xdr.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a
+ vldbint.xdr.o $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libaudit.a ${KRB5_LIBS}
vlserver.o: vlserver.c ${INCLS} AFS_component_version_number.o
vlutils.o: vlutils.c ${INCLS}
$(RANLIB) $@
vlclient: vlclient.o libvldb.a $(LIBS)
- $(CC) ${CFLAGS} -o vlclient vlclient.o libvldb.a $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libcmd.a
+ $(CC) ${CFLAGS} -o vlclient vlclient.o libvldb.a $(LIBS) ${XLIBS} ${TOP_LIBDIR}/libcmd.a ${KRB5_LIBS}
vlclient.o: vlclient.c ${INCLS} AFS_component_version_number.o
${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS}
vos: vos.o ${VSOBJS} libvolser.a ${LIBS}
- ${CC} ${LDFLAGS} -o vos vos.o $(VSOBJS) libvolser.a ${LIBS} ${XLIBS}
+ ${CC} ${LDFLAGS} -o vos vos.o $(VSOBJS) libvolser.a ${LIBS} ${XLIBS} ${KRB5_LIBS}
volserver: $(SOBJS) $(LIBS) ${TOP_LIBDIR}/libdir.a
${CC} ${DBUG} -o volserver $(SOBJS) ${TOP_LIBDIR}/libdir.a \
- ${LDFLAGS} $(LIBS) ${XLIBS}
+ ${LDFLAGS} $(LIBS) ${XLIBS} ${KRB5_LIBS}
voldump: vol-dump.o ${VOLDUMP_LIBS}
${CC} ${CFLAGS} -o voldump vol-dump.o ${VOLDUMP_LIBS} ${XLIBS}