diff options
| author | Tom Yu <tlyu@mit.edu> | 1996-11-13 21:05:00 +0000 |
|---|---|---|
| committer | Tom Yu <tlyu@mit.edu> | 1996-11-13 21:05:00 +0000 |
| commit | 81daff23ac65fdc3ce54f88151b934ce8e063fb3 (patch) | |
| tree | f8f38b061d634d97d0bdc80d41d28d6de46436fb /src/kadmin | |
| parent | 7d984070f857f571b2040ed9a5b7b1c20e0531e9 (diff) | |
| download | krb5-81daff23ac65fdc3ce54f88151b934ce8e063fb3.tar.gz krb5-81daff23ac65fdc3ce54f88151b934ce8e063fb3.tar.xz krb5-81daff23ac65fdc3ce54f88151b934ce8e063fb3.zip | |
revert kt_default_name changes; see ChangeLogs for details
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@9407 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin')
| -rw-r--r-- | src/kadmin/cli/ChangeLog | 10 | ||||
| -rw-r--r-- | src/kadmin/cli/kadmin.c | 23 | ||||
| -rw-r--r-- | src/kadmin/cli/keytab.c | 14 | ||||
| -rw-r--r-- | src/kadmin/server/ChangeLog | 7 | ||||
| -rw-r--r-- | src/kadmin/server/ovsec_kadmd.c | 24 |
5 files changed, 37 insertions, 41 deletions
diff --git a/src/kadmin/cli/ChangeLog b/src/kadmin/cli/ChangeLog index 946ee6a49..bd2e1592d 100644 --- a/src/kadmin/cli/ChangeLog +++ b/src/kadmin/cli/ChangeLog @@ -1,3 +1,13 @@ +Wed Nov 13 14:29:02 1996 Tom Yu <tlyu@mit.edu> + + * keytab.c (process_keytab): Note that krb5_defkeyname is an + internal interface. + + * kadmin.c (kadmin_startup): Note that krb5_defkeyname is an + internal interface. + + * kadmin.c, keytab.c: Revert kt_default_name changes. + Tue Nov 12 22:05:26 1996 Tom Yu <tlyu@mit.edu> * keytab.c (process_keytab): Retrieve *keytab_str using diff --git a/src/kadmin/cli/kadmin.c b/src/kadmin/cli/kadmin.c index 1881c872a..d8011f86e 100644 --- a/src/kadmin/cli/kadmin.c +++ b/src/kadmin/cli/kadmin.c @@ -421,24 +421,11 @@ char *kadmin_startup(argc, argv) exit(1); } { - /* hack up the default keytab name to begin with "WRFILE:" */ - char *cp, ktdef[BUFSIZ]; - if ((retval = krb5_kt_default_name(context, ktdef, BUFSIZ))) { - com_err(whoami, retval, "while looking up default keytab name"); - exit(1); - } - if ((cp = malloc(strlen(ktdef) + 1 + 2)) == NULL) { - com_err(whoami, ENOMEM, "while editting default keytab name"); - exit(1); - } - strcpy(cp, "WR"); - strcat(cp, ktdef); - if ((retval = krb5_kt_set_default_name(context, cp))) { - com_err(whoami, retval, - "while changing default keytab name"); - exit(1); - } - free(cp); +#define DEFAULT_KEYTAB "WRFILE:/etc/v5srvtab" + /* XXX krb5_defkeyname is an internal library global and + should go away */ + extern char *krb5_defkeyname; + krb5_defkeyname = DEFAULT_KEYTAB; } return query; diff --git a/src/kadmin/cli/keytab.c b/src/kadmin/cli/keytab.c index 5a47bf159..df4f6ce25 100644 --- a/src/kadmin/cli/keytab.c +++ b/src/kadmin/cli/keytab.c @@ -23,6 +23,7 @@ static int remove_principal(char *keytab_str, krb5_keytab keytab, char *princ_str, char *kvno_str); static char *etype_string(krb5_enctype enctype); +extern char *krb5_defkeyname; extern char *whoami; extern krb5_context context; extern void *handle; @@ -44,15 +45,10 @@ int process_keytab(krb5_context context, char **keytab_str, int code; if (*keytab_str == NULL) { - char *keytab_str = malloc(BUFSIZ); - - if (keytab_str == NULL) { - com_err(whoami, ENOMEM, "while creating default keytab name"); - return 1; - } - if ((code = krb5_kt_default_name(context, keytab_str, BUFSIZ))) { - com_err(whoami, code, "while copying default keytab name"); - free(*keytab_str); + /* XXX krb5_defkeyname is an internal library global and + should go away */ + if (! (*keytab_str = strdup(krb5_defkeyname))) { + com_err(whoami, ENOMEM, "while creating keytab name"); return 1; } code = krb5_kt_default(context, keytab); diff --git a/src/kadmin/server/ChangeLog b/src/kadmin/server/ChangeLog index 308b2f2df..6092176df 100644 --- a/src/kadmin/server/ChangeLog +++ b/src/kadmin/server/ChangeLog @@ -1,3 +1,10 @@ +Wed Nov 13 14:29:34 1996 Tom Yu <tlyu@mit.edu> + + * ovsec_kadmd.c (main): Note that krb5_defkeyname is an internal + interface. + + * ovsec_kadmd.c (main): Revert kt_default_name changes. + Tue Nov 12 22:07:05 1996 Tom Yu <tlyu@mit.edu> * ovsec_kadmd.c (main): Use krb5_kt_set_default_name() rather than diff --git a/src/kadmin/server/ovsec_kadmd.c b/src/kadmin/server/ovsec_kadmd.c index 67aa77525..21514aca1 100644 --- a/src/kadmin/server/ovsec_kadmd.c +++ b/src/kadmin/server/ovsec_kadmd.c @@ -58,6 +58,13 @@ void *global_server_handle; #define OVSEC_KADM_ADMIN_SERVICE "ovsec_adm/admin" #define OVSEC_KADM_CHANGEPW_SERVICE "ovsec_adm/changepw" +/* + * This enables us to set the keytab that gss_acquire_cred uses, but + * it also restricts us to linking against the Kv5 GSS-API library. + * Since this is *k*admind, that shouldn't be a problem. + */ +extern char *krb5_defkeyname; + char *build_princ_name(char *name, char *realm); void log_badauth(OM_uint32 major, OM_uint32 minor, struct sockaddr_in *addr, char *data); @@ -309,20 +316,9 @@ int main(int argc, char *argv[]) exit(1); } - /* - * This enables us to set the keytab that gss_acquire_cred uses, but - * it also restricts us to linking against the Kv5 GSS-API library. - * Since this is *k*admind, that shouldn't be a problem. - */ - if ((ret = krb5_kt_set_default_name(context, params.admin_keytab))) { - krb5_klog_syslog(LOG_ERR, "Cannot change default keytab name: %s", - error_message(ret)); - fprintf(stderr, "%s: Cannot change default keytab name.\n", - whoami); - kadm5_destroy(global_server_handle); - krb5_klog_close(); - exit(1); - } + /* XXX krb5_defkeyname is an internal library global and should + go away */ + krb5_defkeyname = params.admin_keytab; /* * Try to acquire creds for the old OV services as well as the |
