summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2012-07-24 16:26:28 -0400
committerGreg Hudson <ghudson@mit.edu>2012-07-24 16:26:28 -0400
commit688a2702d2045abf5f99acfb59f3f372391e5be4 (patch)
tree191c3f0e11012369929598a1f6e16951e4561aab
parent4a788fb072b06ab25fb39c7720e2fe7bb79fd7f4 (diff)
downloadkrb5-688a2702d2045abf5f99acfb59f3f372391e5be4.tar.gz
krb5-688a2702d2045abf5f99acfb59f3f372391e5be4.tar.xz
krb5-688a2702d2045abf5f99acfb59f3f372391e5be4.zip
Support changing the built-in ccache/keytab names
* Add DEFCCNAME, DEFKTNAME, and DEFCKTNAME configure variables to change the built-in ccache and keytab names. * Add krb5-config options to display the built-in ccache and keytab names. * In the default build, use krb5-config to discover the system's built-in ccache and keytab names and use them (if not overridden). This can be controlled with the --with-krb5-config=PATH or --without-krb5-config configure options. * Make the built-in ccache name subject to parameter expansion. ticket: 7221 (new)
-rw-r--r--doc/rst_source/conf.py12
-rw-r--r--doc/rst_source/krb_admins/conf_files/krb5_conf.rst2
-rw-r--r--doc/rst_source/krb_basic/keytab_def.rst2
-rw-r--r--doc/rst_source/krb_build/options2configure.rst16
-rw-r--r--doc/rst_source/krb_users/user_commands/kdestroy.rst5
-rw-r--r--doc/rst_source/krb_users/user_commands/kinit.rst5
-rw-r--r--doc/rst_source/krb_users/user_commands/klist.rst5
-rw-r--r--doc/rst_source/krb_users/user_commands/kswitch.rst5
-rw-r--r--doc/rst_source/krb_users/user_commands/kvno.rst5
-rw-r--r--doc/rst_source/mitK5defaults.rst23
-rw-r--r--src/configure.in35
-rw-r--r--src/include/osconf.hin4
-rw-r--r--src/include/win-mac.h3
-rw-r--r--src/krb5-config.M9
-rwxr-xr-xsrc/krb5-config.in35
-rw-r--r--src/lib/krb5/libkrb5.exports1
-rw-r--r--src/lib/krb5/os/ccdefname.c6
-rw-r--r--src/lib/krb5/os/ktdefname.c7
-rw-r--r--src/lib/krb5/os/osconfig.c2
-rw-r--r--src/man/Makefile.in8
20 files changed, 142 insertions, 48 deletions
diff --git a/doc/rst_source/conf.py b/doc/rst_source/conf.py
index c4203a24c..031a1a745 100644
--- a/doc/rst_source/conf.py
+++ b/doc/rst_source/conf.py
@@ -216,6 +216,9 @@ if 'mansubs' in tags:
libdir = '``@LIBDIR@``'
localstatedir = '``@LOCALSTATEDIR@``'
sysconfdir = '``@SYSCONFDIR@``'
+ ccache = '``@CCNAME@``'
+ keytab = '``@KTNAME@``'
+ ckeytab = '``@CKTNAME@``'
elif 'pathsubs' in tags:
# Read configured paths from a file produced by the build system.
execfile('paths.py')
@@ -225,6 +228,9 @@ else:
libdir = ':ref:`LIBDIR <paths>`'
localstatedir = ':ref:`LOCALSTATEDIR <paths>`'
sysconfdir = ':ref:`SYSCONFDIR <paths>`'
+ ccache = ':ref:`DEFCCNAME <paths>`'
+ keytab = ':ref:`DEFKTNAME <paths>`'
+ ckeytab = ':ref:`DEFCKTNAME <paths>`'
rst_epilog = '\n'
rst_epilog += '.. |bindir| replace:: %s\n' % bindir
@@ -232,10 +238,10 @@ rst_epilog += '.. |sbindir| replace:: %s\n' % sbindir
rst_epilog += '.. |libdir| replace:: %s\n' % libdir
rst_epilog += '.. |kdcdir| replace:: %s\\ ``/krb5kdc``\n' % localstatedir
rst_epilog += '.. |sysconfdir| replace:: %s\n' % sysconfdir
+rst_epilog += '.. |ccache| replace:: %s\n' % ccache
+rst_epilog += '.. |keytab| replace:: %s\n' % keytab
+rst_epilog += '.. |ckeytab| replace:: %s\n' % ckeytab
rst_epilog += '''
-.. |ccache| replace:: ``/tmp/krb5cc_<uid>``
-.. |clkeytab| replace:: ``/etc/krb5.client-keytab``
-.. |keytab| replace:: ``/etc/krb5.keytab``
.. |krb5conf| replace:: ``/etc/krb5.conf``
.. |defkeysalts| replace:: ``aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal des3-cbc-sha1:normal arcfour-hmac-md5:normal``
.. |defetypes| replace:: ``aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 des-cbc-crc des-cbc-md5 des-cbc-md4``
diff --git a/doc/rst_source/krb_admins/conf_files/krb5_conf.rst b/doc/rst_source/krb_admins/conf_files/krb5_conf.rst
index 26a8818f3..ee7344c5d 100644
--- a/doc/rst_source/krb_admins/conf_files/krb5_conf.rst
+++ b/doc/rst_source/krb_admins/conf_files/krb5_conf.rst
@@ -141,7 +141,7 @@ The libdefaults section may contain any of the following relations:
**default_client_keytab_name**
This relation specifies the name of the default keytab for
- obtaining client credentials. The default is |clkeytab|. This
+ obtaining client credentials. The default is |ckeytab|. This
relation is subject to parameter expansion (see below).
**default_keytab_name**
diff --git a/doc/rst_source/krb_basic/keytab_def.rst b/doc/rst_source/krb_basic/keytab_def.rst
index 3f1f0de10..1064765fe 100644
--- a/doc/rst_source/krb_basic/keytab_def.rst
+++ b/doc/rst_source/krb_basic/keytab_def.rst
@@ -58,4 +58,4 @@ decreasing order of preference:
#. The **default_client_keytab_name** profile variable in
:ref:`libdefaults`.
-#. The hardcoded default, ``FILE:``\ |clkeytab|.
+#. The hardcoded default, ``FILE:``\ |ckeytab|.
diff --git a/doc/rst_source/krb_build/options2configure.rst b/doc/rst_source/krb_build/options2configure.rst
index 75cb92596..3df2a45c7 100644
--- a/doc/rst_source/krb_build/options2configure.rst
+++ b/doc/rst_source/krb_build/options2configure.rst
@@ -118,6 +118,15 @@ Environment variables
Berkeley DB library version to be used, override it with this
option. For example, ``DB_LIB=-ldb-3.3``.
+**DEFCCNAME=**\ *ccachename*
+ Override the built-in default credential cache name.
+
+**DEFCKTNAME=**\ *keytabname*
+ Override the built-in default client keytab name.
+
+**DEFKTNAME=**\ *keytabname*
+ Override the built-in default keytab name.
+
**LD=**\ *LINKER*
Use *LINKER* as the default loader if it should be different from
C compiler as specified above.
@@ -374,6 +383,13 @@ Optional packages
Specifying **--without-system-verto** will cause the built-in
version of libverto to be used unconditionally.
+**--with-krb5-config=**\ *PATH*
+ Use the krb5-config program at *PATH* to obtain the build-time
+ default credential cache, keytab, and client keytab names. The
+ default is to use ``krb5-config`` from the program path. Specify
+ ``--without-krb5-config`` to disable the use of krb5-config and
+ use the usual built-in defaults.
+
Examples
--------
diff --git a/doc/rst_source/krb_users/user_commands/kdestroy.rst b/doc/rst_source/krb_users/user_commands/kdestroy.rst
index 7676dc496..b8c67aba4 100644
--- a/doc/rst_source/krb_users/user_commands/kdestroy.rst
+++ b/doc/rst_source/krb_users/user_commands/kdestroy.rst
@@ -67,9 +67,8 @@ kdestroy uses the following environment variable:
FILES
-----
-``/tmp/krb5cc_[uid]``
- Default location of Kerberos 5 credentials cache ([*uid*] is the
- decimal UID of the user).
+|ccache|
+ Default location of Kerberos 5 credentials cache
SEE ALSO
diff --git a/doc/rst_source/krb_users/user_commands/kinit.rst b/doc/rst_source/krb_users/user_commands/kinit.rst
index 3636106fc..c28fd29b6 100644
--- a/doc/rst_source/krb_users/user_commands/kinit.rst
+++ b/doc/rst_source/krb_users/user_commands/kinit.rst
@@ -198,9 +198,8 @@ kinit uses the following environment variables:
FILES
-----
-``/tmp/krb5cc_[uid]``
- default location of Kerberos 5 credentials cache ([*uid*] is the
- decimal UID of the user).
+|ccache|
+ default location of Kerberos 5 credentials cache
|keytab|
default location for the local host's keytab.
diff --git a/doc/rst_source/krb_users/user_commands/klist.rst b/doc/rst_source/krb_users/user_commands/klist.rst
index 0b867a867..6eae5f475 100644
--- a/doc/rst_source/krb_users/user_commands/klist.rst
+++ b/doc/rst_source/krb_users/user_commands/klist.rst
@@ -116,9 +116,8 @@ klist uses the following environment variable:
FILES
-----
-``/tmp/krb5cc_[uid]``
- Default location of Kerberos 5 credentials cache ([uid] is the
- decimal UID of the user).
+|ccache|
+ Default location of Kerberos 5 credentials cache
|keytab|
Default location for the local host's keytab file.
diff --git a/doc/rst_source/krb_users/user_commands/kswitch.rst b/doc/rst_source/krb_users/user_commands/kswitch.rst
index 62134959b..261660dad 100644
--- a/doc/rst_source/krb_users/user_commands/kswitch.rst
+++ b/doc/rst_source/krb_users/user_commands/kswitch.rst
@@ -46,9 +46,8 @@ kswitch uses the following environment variables:
FILES
-----
-``/tmp/krb5cc_[uid]``
- Default location of Kerberos 5 credentials cache ([*uid*] is the
- decimal UID of the user).
+|ccache|
+ Default location of Kerberos 5 credentials cache
SEE ALSO
diff --git a/doc/rst_source/krb_users/user_commands/kvno.rst b/doc/rst_source/krb_users/user_commands/kvno.rst
index 4f2e2fd38..31ca24460 100644
--- a/doc/rst_source/krb_users/user_commands/kvno.rst
+++ b/doc/rst_source/krb_users/user_commands/kvno.rst
@@ -76,9 +76,8 @@ kvno uses the following environment variable:
FILES
-----
-``/tmp/krb5cc_[uid]``
- Default location of the credentials cache ([*uid*] is the decimal
- UID of the user).
+|ccache|
+ Default location of the credentials cache
SEE ALSO
diff --git a/doc/rst_source/mitK5defaults.rst b/doc/rst_source/mitK5defaults.rst
index eca502fb4..c971d5684 100644
--- a/doc/rst_source/mitK5defaults.rst
+++ b/doc/rst_source/mitK5defaults.rst
@@ -10,7 +10,7 @@ General defaults
Description Default Environment
========================== ============================= ====================
Keytab file ``FILE:``\ |keytab| **KRB5_KTNAME**
-Client keytab file ``FILE:``\ |clkeytab| **KRB5_CLIENT_KTNAME**
+Client keytab file ``FILE:``\ |ckeytab| **KRB5_CLIENT_KTNAME**
Kerberos config file |krb5conf|\ ``:``\ **KRB5_CONFIG**
|sysconfdir|\ ``/krb5.conf``
KDC config file |kdcdir|\ ``/kdc.conf`` **KRB5_KDC_PROFILE**
@@ -58,12 +58,15 @@ subdirectories of ``/usr/local``. When MIT krb5 is integrated into an
operating system, the paths are generally chosen to match the
operating system's filesystem layout.
-======================= =============== =================== ===============
-Description Symbolic name Custom build path Typical OS path
-======================= =============== =================== ===============
-User programs BINDIR ``/usr/local/bin`` ``/usr/bin``
-Libraries and plugins LIBDIR ``/usr/local/lib`` ``/usr/lib``
-Parent of KDC state dir LOCALSTATEDIR ``/usr/local/var`` ``/var``
-Administrative programs SBINDIR ``/usr/local/sbin`` ``/usr/sbin``
-Alternate krb5.conf dir SYSCONFDIR ``/usr/local/etc`` ``/etc``
-======================= =============== =================== ===============
+========================== ============= =========================== ===========================
+Description Symbolic name Custom build path Typical OS path
+========================== ============= =========================== ===========================
+User programs BINDIR ``/usr/local/bin`` ``/usr/bin``
+Libraries and plugins LIBDIR ``/usr/local/lib`` ``/usr/lib``
+Parent of KDC state dir LOCALSTATEDIR ``/usr/local/var`` ``/var``
+Administrative programs SBINDIR ``/usr/local/sbin`` ``/usr/sbin``
+Alternate krb5.conf dir SYSCONFDIR ``/usr/local/etc`` ``/etc``
+Default ccache name DEFCCNAME ``/tmp/krb5cc_%{UID}`` ``/tmp/krb5cc_%{UID}``
+Default keytab name DEFKTNAME ``/etc/krb5.keytab`` ``/etc/krb5.keytab``
+Default client keytab name DEFCKTNAME ``/etc/krb5.client-keytab`` ``/etc/krb5.client-keytab``
+========================== ============= =========================== ===========================
diff --git a/src/configure.in b/src/configure.in
index b1661f08b..c7c92d923 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1251,6 +1251,41 @@ if test "${localedir+set}" != set; then
fi
AC_SUBST(localedir)
+# Build-time default ccache, keytab, and client keytab names. These
+# can be given as variable arguments DEFCCNAME, DEFKTNAME, and
+# DEFCKTNAME. Otherwise, we try to get the OS defaults from
+# krb5-config if we can, or fall back to hardcoded defaults.
+AC_ARG_VAR(DEFCCNAME, [Default ccache name])
+AC_ARG_VAR(DEFKTNAME, [Default keytab name])
+AC_ARG_VAR(DEFCKTNAME, [Default client keytab name])
+AC_ARG_WITH([krb5-config],
+ AC_HELP_STRING([--with-krb5-config=PATH],
+ [path to existing krb5-config program for defaults]), ,
+ [with_krb5_config=krb5-config])
+if test "x$with_krb5_config" != xno; then
+ if test "x$with_krb5_config" = xyes; then
+ with_krb5_config=krb5-config
+ fi
+ if $with_krb5_config --help 2>&1 | grep -q defccname; then
+ AC_MSG_NOTICE([Using $with_krb5_config for build defaults])
+ : "${DEFCCNAME=`$with_krb5_config --defccname`}"
+ : "${DEFKTNAME=`$with_krb5_config --defktname`}"
+ : "${DEFCKTNAME=`$with_krb5_config --defcktname`}"
+ fi
+fi
+if test "${DEFCCNAME+set}" != set; then
+ DEFCCNAME=FILE:/tmp/krb5cc_%{uid}
+fi
+: "${DEFKTNAME=FILE:/etc/krb5.keytab}"
+: "${DEFCKTNAME=FILE:/etc/krb5.client-keytab}"
+AC_MSG_NOTICE([Default ccache name: $DEFCCNAME])
+AC_MSG_NOTICE([Default keytab name: $DEFKTNAME])
+AC_MSG_NOTICE([Default client keytab name: $DEFCKTNAME])
+AC_DEFINE_UNQUOTED(DEFCCNAME, ["$DEFCCNAME"], [Define to default ccache name])
+AC_DEFINE_UNQUOTED(DEFKTNAME, ["$DEFKTNAME"], [Define to default keytab name])
+AC_DEFINE_UNQUOTED(DEFCKTNAME, ["$DEFCKTNAME"],
+ [Define to default client keytab name])
+
AC_CONFIG_FILES(krb5-config, [chmod +x krb5-config])
V5_AC_OUTPUT_MAKEFILE(.
diff --git a/src/include/osconf.hin b/src/include/osconf.hin
index 803d73bd5..c3a33c22b 100644
--- a/src/include/osconf.hin
+++ b/src/include/osconf.hin
@@ -42,8 +42,6 @@
#if defined(_WIN32)
#define DEFAULT_PROFILE_FILENAME "krb5.ini"
-#define DEFAULT_KEYTAB_NAME "FILE:%{WINDOWS}\\krb5kt"
-#define DEFAULT_CLIENT_KEYTAB_NAME "FILE:%{WINDOWS}\\krb5clientkt"
#else /* !_WINDOWS */
#if TARGET_OS_MAC
#define DEFAULT_SECURE_PROFILE_PATH "/Library/Preferences/edu.mit.Kerberos:/etc/krb5.conf:@SYSCONFDIR/krb5.conf"
@@ -55,8 +53,6 @@
#define DEFAULT_SECURE_PROFILE_PATH "/etc/krb5.conf:@SYSCONFDIR/krb5.conf"
#define DEFAULT_PROFILE_PATH DEFAULT_SECURE_PROFILE_PATH
#endif
-#define DEFAULT_KEYTAB_NAME "FILE:/etc/krb5.keytab"
-#define DEFAULT_CLIENT_KEYTAB_NAME "FILE:/etc/krb5.client-keytab"
#endif /* _WINDOWS */
#define DEFAULT_PLUGIN_BASE_DIR "@LIBDIR/krb5/plugins"
diff --git a/src/include/win-mac.h b/src/include/win-mac.h
index 2274d8a51..daec295b2 100644
--- a/src/include/win-mac.h
+++ b/src/include/win-mac.h
@@ -231,6 +231,9 @@ HINSTANCE get_lib_instance(void);
#define THREEPARAMOPEN(x,y,z) open(x,y,z)
+#define DEFKTNAME "FILE:%{WINDOWS}\\krb5kt"
+#define DEFCKTNAME "FILE:%{WINDOWS}\\krb5clientkt"
+
#ifndef KRB5_CALLCONV
#define KRB5_CALLCONV
#endif
diff --git a/src/krb5-config.M b/src/krb5-config.M
index 56661aee7..ccc869836 100644
--- a/src/krb5-config.M
+++ b/src/krb5-config.M
@@ -53,6 +53,15 @@ prints the prefix with which Kerberos was built.
\fB\--exec-prefix\fP
prints the exec-prefix with which Kerberos was built.
.TP
+\fB\--defccname\fP
+prints the built-in default credential cache name.
+.TP
+\fB\--defktname\fP
+prints the built-in default keytab name.
+.TP
+\fB\--defcktname\fP
+prints the built-in default client keytab name.
+.TP
\fB\--cflags\fP
prints the compiler flags with which Kerberos was built.
.TP
diff --git a/src/krb5-config.in b/src/krb5-config.in
index b476b4fdd..c950b36b5 100755
--- a/src/krb5-config.in
+++ b/src/krb5-config.in
@@ -38,6 +38,9 @@ RPATH_FLAG='@RPATH_FLAG@'
PROG_RPATH_FLAGS='@PROG_RPATH_FLAGS@'
PTHREAD_CFLAGS='@PTHREAD_CFLAGS@'
DL_LIB='@DL_LIB@'
+DEFCCNAME='@DEFCCNAME@'
+DEFKTNAME='@DEFKTNAME@'
+DEFCKTNAME='@DEFCKTNAME@'
LIBS='@LIBS@'
GEN_LIB=@GEN_LIB@
@@ -58,6 +61,15 @@ while test $# != 0; do
--cflags)
do_cflags=1
;;
+ --defccname)
+ do_defccname=1
+ ;;
+ --defcktname)
+ do_defcktname=1
+ ;;
+ --defktname)
+ do_defktname=1
+ ;;
--deps)
do_deps=1
;;
@@ -102,7 +114,10 @@ while test $# != 0; do
done
# If required options - provide help
-if test -z "$do_all" -a -z "$do_version" -a -z "$do_vendor" -a -z "$do_prefix" -a -z "$do_vendor" -a -z "$do_exec_prefix" -a -z "$do_cflags" -a -z "$do_libs"; then
+if test -z "$do_all" -a -z "$do_version" -a -z "$do_vendor" -a \
+ -z "$do_prefix" -a -z "$do_vendor" -a -z "$do_exec_prefix" -a \
+ -z "$do_defccname" -a -z "$do_defktname" -a -z "$do_defcktname" -a \
+ -z "$do_cflags" -a -z "$do_libs"; then
do_help=1
fi
@@ -116,6 +131,9 @@ if test -n "$do_help"; then
echo " [--vendor] Vendor information"
echo " [--prefix] Kerberos installed prefix"
echo " [--exec-prefix] Kerberos installed exec_prefix"
+ echo " [--defccname] Show built-in default ccache name"
+ echo " [--defktname] Show built-in default keytab name"
+ echo " [--defcktname] Show built-in default client keytab name"
echo " [--cflags] Compile time CFLAGS"
echo " [--libs] List libraries required to link [LIBRARIES]"
echo "Libraries:"
@@ -161,6 +179,21 @@ if test -n "$do_exec_prefix"; then
$all_exit
fi
+if test -n "$do_defccname"; then
+ echo "$DEFCCNAME"
+ $all_exit
+fi
+
+if test -n "$do_defktname"; then
+ echo "$DEFKTNAME"
+ $all_exit
+fi
+
+if test -n "$do_defcktname"; then
+ echo "$DEFCKTNAME"
+ $all_exit
+fi
+
if test -n "$do_cflags"; then
if test x"$includedir" != x"/usr/include" ; then
echo "-I${includedir}"
diff --git a/src/lib/krb5/libkrb5.exports b/src/lib/krb5/libkrb5.exports
index 28049e787..3f2716a2f 100644
--- a/src/lib/krb5/libkrb5.exports
+++ b/src/lib/krb5/libkrb5.exports
@@ -242,7 +242,6 @@ krb5_decode_ticket
krb5_decrypt_tkt_part
krb5_default_pwd_prompt1
krb5_default_pwd_prompt2
-krb5_defkeyname
krb5_deltat_to_string
krb5_do_preauth
krb5_encode_authdata_container
diff --git a/src/lib/krb5/os/ccdefname.c b/src/lib/krb5/os/ccdefname.c
index cb9bb7c93..a2d549da6 100644
--- a/src/lib/krb5/os/ccdefname.c
+++ b/src/lib/krb5/os/ccdefname.c
@@ -226,10 +226,8 @@ get_from_os(krb5_context context)
static void
get_from_os(krb5_context context)
{
- char *name;
-
- if (asprintf(&name, "FILE:/tmp/krb5cc_%ld", (long)getuid()) >= 0)
- context->os_context.default_ccname = name;
+ (void)k5_expand_path_tokens(context, DEFCCNAME,
+ &context->os_context.default_ccname);
}
#endif /* not _WIN32 */
diff --git a/src/lib/krb5/os/ktdefname.c b/src/lib/krb5/os/ktdefname.c
index 93b28dd38..ffbd14d51 100644
--- a/src/lib/krb5/os/ktdefname.c
+++ b/src/lib/krb5/os/ktdefname.c
@@ -29,8 +29,6 @@
#include "k5-int.h"
#include "os-proto.h"
-extern char *krb5_defkeyname;
-
/* this is a an exceedinly gross thing. */
char *krb5_overridekeyname = NULL;
@@ -54,7 +52,7 @@ kt_default_name(krb5_context context, char **name_out)
profile_release_string(str);
return ret;
} else {
- return k5_expand_path_tokens(context, krb5_defkeyname, name_out);
+ return k5_expand_path_tokens(context, DEFKTNAME, name_out);
}
}
@@ -75,8 +73,7 @@ k5_kt_client_default_name(krb5_context context, char **name_out)
profile_release_string(str);
return ret;
} else {
- return k5_expand_path_tokens(context, DEFAULT_CLIENT_KEYTAB_NAME,
- name_out);
+ return k5_expand_path_tokens(context, DEFCKTNAME, name_out);
}
}
diff --git a/src/lib/krb5/os/osconfig.c b/src/lib/krb5/os/osconfig.c
index b6013c5cf..1f6be6fec 100644
--- a/src/lib/krb5/os/osconfig.c
+++ b/src/lib/krb5/os/osconfig.c
@@ -35,8 +35,6 @@
#include "k5-int.h"
-char *krb5_defkeyname = DEFAULT_KEYTAB_NAME;
-
unsigned int krb5_max_dgram_size = MAX_DGRAM_SIZE;
const char *krb5_default_pwd_prompt1 = DEFAULT_PWD_STRING1;
diff --git a/src/man/Makefile.in b/src/man/Makefile.in
index b6f38c9b8..15a4d53b9 100644
--- a/src/man/Makefile.in
+++ b/src/man/Makefile.in
@@ -6,6 +6,9 @@ GROFF=@GROFF@
GROFF_MAN=$(GROFF) -mtty-char -Tascii -mandoc -c
localstatedir=@localstatedir@
sysconfdir=@sysconfdir@
+DEFCCNAME=@DEFCCNAME@
+DEFKTNAME=@DEFKTNAME@
+DEFCKTNAME=@DEFCKTNAME@
MANSUBS=k5identity.sub k5login.sub k5srvutil.sub kadmin.sub kadmind.sub \
kdb5_ldap_util.sub kdb5_util.sub kdc.conf.sub kdestroy.sub kinit.sub \
@@ -35,7 +38,10 @@ rstman:
-e 's|@SBINDIR@|$(SERVER_BINDIR)|g' \
-e 's|@LIBDIR@|$(KRB5_LIBDIR)|g' \
-e 's|@LOCALSTATEDIR@|$(localstatedir)|g' \
- -e 's|@SYSCONFDIR@|$(sysconfdir)|g' $? > $@
+ -e 's|@SYSCONFDIR@|$(sysconfdir)|g' \
+ -e 's|@CCNAME@|$(DEFCCNAME)|g' \
+ -e 's|@KTNAME@|$(DEFKTNAME)|g' \
+ -e 's|@CKTNAME@|$(DEFCKTNAME)|g' $? > $@
all:: $(MANSUBS)