diff options
| author | Mark Eichin <eichin@mit.edu> | 1996-04-09 22:43:21 +0000 |
|---|---|---|
| committer | Mark Eichin <eichin@mit.edu> | 1996-04-09 22:43:21 +0000 |
| commit | be819eef159fbbf2982d6cc37def03d3ee87b8df (patch) | |
| tree | b88bf08f05deab4854141821d794aa589166c823 /src/kadmin/v5server/srv_key.c | |
| parent | f18120aacc7a00828c9efa905df65a2dfc5ca4a5 (diff) | |
| download | krb5-be819eef159fbbf2982d6cc37def03d3ee87b8df.tar.gz krb5-be819eef159fbbf2982d6cc37def03d3ee87b8df.tar.xz krb5-be819eef159fbbf2982d6cc37def03d3ee87b8df.zip | |
Ken's acl and hangup fixes
AFS3 salt support
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7764 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin/v5server/srv_key.c')
| -rw-r--r-- | src/kadmin/v5server/srv_key.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/kadmin/v5server/srv_key.c b/src/kadmin/v5server/srv_key.c index e0910e61c2..165d371a0a 100644 --- a/src/kadmin/v5server/srv_key.c +++ b/src/kadmin/v5server/srv_key.c @@ -536,7 +536,7 @@ key_init(kcontext, debug_level, key_type, master_key_name, manual, * is none, then we want to create it. This way, kadmind5 becomes just * a plug in and go kind of utility. */ - kret = key_get_admin_entry(kcontext, debug_level); + kret = key_get_admin_entry(kcontext); cleanup: if (kret) { @@ -726,6 +726,23 @@ key_string2key_keysalt(ksent, ptr) krb5_xfree(xsalt); } break; + case KRB5_KDB_SALTTYPE_AFS3: + { + /* use KDC-supplied realm for TransArc AFS style salt */ + /* malloc and copy to cover trailing 0, mit_afs_string_to_key + takes care of free'ing it. */ + char *dat; + int len; + len = krb5_princ_realm(argp->context, argp->dbentry->princ)->length; + dat = malloc(1+len); + if (!dat) + goto done; + strncpy(dat, krb5_princ_realm(argp->context, argp->dbentry->princ)->data, len); + dat[len] = 0; + salt.data = dat; + salt.length = -1; /* in order to get around API change */ + break; + } default: goto done; } @@ -750,6 +767,9 @@ key_string2key_keysalt(ksent, ptr) argp->string, &salt))) goto done; + + if (salt.length == -1) + salt.length = strlen (salt.data); /* * Now, salt contains the salt and key contains the decrypted |
