svn rev #24131: branches/krb5-1-8/src/kadmin/cli/
tlyu@MIT.EDU
tlyu at MIT.EDU
Thu Jun 10 17:14:35 EDT 2010
http://mv.ezproxy.com.ezproxyberklee.flo.org/fisheye/changelog/krb5/?cs=24131
Commit By: tlyu
Log Message:
ticket: 6740
version_fixed: 1.8.3
status: resolved
pull up r24123 from trunk
------------------------------------------------------------------------
r24123 | ghudson | 2010-06-08 14:18:03 -0400 (Tue, 08 Jun 2010) | 11 lines
ticket: 6740
subject: kadmin ktadd may display wrong name of default keytab
target_version: 1.8.2
tags: pullup
kadmin's ktadd (and ktrem) displays WRFILE:/etc/krb5.keytab whenever
it uses the default keytab, even if the default has been overridden
(e.g. by KRB5_KTNAME). Use krb5_kt_get_name to get the correct name
of the default cache instead of displaying the string we think was
used to open it.
Changed Files:
U branches/krb5-1-8/src/kadmin/cli/kadmin.h
U branches/krb5-1-8/src/kadmin/cli/keytab.c
Modified: branches/krb5-1-8/src/kadmin/cli/kadmin.h
===================================================================
--- branches/krb5-1-8/src/kadmin/cli/kadmin.h 2010-06-10 21:14:26 UTC (rev 24130)
+++ branches/krb5-1-8/src/kadmin/cli/kadmin.h 2010-06-10 21:14:34 UTC (rev 24131)
@@ -68,7 +68,6 @@
/* Yucky global variables */
extern krb5_context context;
-extern char *krb5_defkeyname;
extern char *whoami;
extern void *handle;
Modified: branches/krb5-1-8/src/kadmin/cli/keytab.c
===================================================================
--- branches/krb5-1-8/src/kadmin/cli/keytab.c 2010-06-10 21:14:26 UTC (rev 24130)
+++ branches/krb5-1-8/src/kadmin/cli/keytab.c 2010-06-10 21:14:34 UTC (rev 24131)
@@ -84,9 +84,7 @@
char *name = *keytab_str;
if (name == NULL) {
- /* XXX krb5_defkeyname is an internal library global and
- should go away */
- name = strdup(krb5_defkeyname);
+ name = malloc(BUFSIZ);
if (!name) {
com_err(whoami, ENOMEM, "while creating keytab name");
return 1;
@@ -97,6 +95,12 @@
free(name);
return 1;
}
+ code = krb5_kt_get_name(my_context, *keytab, name, BUFSIZ);
+ if (code != 0) {
+ com_err(whoami, code, "while getting keytab name");
+ free(name);
+ return 1;
+ }
} else {
if (strchr(name, ':') != NULL)
name = strdup(name);
More information about the cvs-krb5
mailing list