diff options
author | Will Fiveash <will.fiveash@oracle.com> | 2008-08-15 00:38:41 +0000 |
---|---|---|
committer | Will Fiveash <will.fiveash@oracle.com> | 2008-08-15 00:38:41 +0000 |
commit | c438b327af4cf5ba96ed3f7e02b6327b9d06c1ae (patch) | |
tree | 6a65a30d2f7c368d8d29b9755ec52bb082f908c4 /src/kadmin/dbutil/kdb5_stash.c | |
parent | 7b2fd388c28d4c8a3a7a2a4bf2b70a251bf037e8 (diff) | |
download | krb5-c438b327af4cf5ba96ed3f7e02b6327b9d06c1ae.zip krb5-c438b327af4cf5ba96ed3f7e02b6327b9d06c1ae.tar.gz krb5-c438b327af4cf5ba96ed3f7e02b6327b9d06c1ae.tar.bz2 |
a stash file is not a keytab
Note, this is the commit for the associated Krb Consortium project:
Projects/Masterkey Keytab Stash
ticket: 194
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20661 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin/dbutil/kdb5_stash.c')
-rw-r--r-- | src/kadmin/dbutil/kdb5_stash.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/kadmin/dbutil/kdb5_stash.c b/src/kadmin/dbutil/kdb5_stash.c index a34aa13..3583a32 100644 --- a/src/kadmin/dbutil/kdb5_stash.c +++ b/src/kadmin/dbutil/kdb5_stash.c @@ -81,6 +81,7 @@ kdb5_stash(argc, argv) char *mkey_fullname; char *keyfile = 0; krb5_context context; + krb5_kvno mkey_kvno; retval = kadm5_init_krb5_context(&context); if( retval ) @@ -139,11 +140,17 @@ kdb5_stash(argc, argv) exit_status++; return; } + if (global_params.mask & KADM5_CONFIG_KVNO) + mkey_kvno = global_params.kvno; /* user specified */ + else + mkey_kvno = IGNORE_VNO; /* use whatever krb5_db_fetch_mkey finds */ + /* TRUE here means read the keyboard, but only once */ retval = krb5_db_fetch_mkey(context, master_princ, master_keyblock.enctype, TRUE, FALSE, (char *) NULL, - 0, &master_keyblock); + &mkey_kvno, + NULL, &master_keyblock); if (retval) { com_err(progname, retval, "while reading master key"); (void) krb5_db_fini(context); @@ -151,6 +158,7 @@ kdb5_stash(argc, argv) } retval = krb5_db_verify_master_key(context, master_princ, + mkey_kvno, &master_keyblock); if (retval) { com_err(progname, retval, "while verifying master key"); @@ -159,7 +167,7 @@ kdb5_stash(argc, argv) } retval = krb5_db_store_master_key(context, keyfile, master_princ, - &master_keyblock, NULL); + mkey_kvno, &master_keyblock, NULL); if (retval) { com_err(progname, errno, "while storing key"); memset((char *)master_keyblock.contents, 0, master_keyblock.length); |