diff options
Diffstat (limited to 'src/lib/kdb/kdb5.c')
-rw-r--r-- | src/lib/kdb/kdb5.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/src/lib/kdb/kdb5.c b/src/lib/kdb/kdb5.c index 67ceacb..eb68f22 100644 --- a/src/lib/kdb/kdb5.c +++ b/src/lib/kdb/kdb5.c @@ -1678,23 +1678,14 @@ krb5_db_setup_mkey_name(krb5_context context, char **fullname, krb5_principal * principal) { krb5_error_code retval; - size_t keylen; - size_t rlen = strlen(realm); char *fname; if (!keyname) keyname = KRB5_KDB_M_NAME; /* XXX external? */ - keylen = strlen(keyname); - - fname = malloc(keylen + rlen + strlen(REALM_SEP_STRING) + 1); - if (!fname) + if (asprintf(&fname, "%s%s%s", keyname, REALM_SEP_STRING, realm) < 0) return ENOMEM; - strcpy(fname, keyname); - strcat(fname, REALM_SEP_STRING); - strcat(fname, realm); - if ((retval = krb5_parse_name(context, fname, principal))) return retval; if (fullname) |