diff options
author | Greg Hudson <ghudson@mit.edu> | 2011-07-20 22:40:46 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2011-07-20 22:40:46 +0000 |
commit | 057760c30b21a93819abc464113c9d64dd8cfb87 (patch) | |
tree | eeeed0948d1ced0651b7a4f8f38d20d858174b30 /src/lib/gssapi | |
parent | 0afd0d480206673688285de9e97b69b4dcdd5639 (diff) | |
download | krb5-057760c30b21a93819abc464113c9d64dd8cfb87.tar.gz krb5-057760c30b21a93819abc464113c9d64dd8cfb87.tar.xz krb5-057760c30b21a93819abc464113c9d64dd8cfb87.zip |
Fix name initialization in gss_krb5int_import_cred
If we're going to fake up a name, we have to initialize its lock. It
might be better to use kg_init_name(), but we don't have a context on
hand.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25030 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/gssapi')
-rw-r--r-- | src/lib/gssapi/krb5/acquire_cred.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/gssapi/krb5/acquire_cred.c b/src/lib/gssapi/krb5/acquire_cred.c index ca5438bc13..df029cc32e 100644 --- a/src/lib/gssapi/krb5/acquire_cred.c +++ b/src/lib/gssapi/krb5/acquire_cred.c @@ -834,6 +834,7 @@ gss_krb5int_import_cred(OM_uint32 *minor_status, struct acquire_cred_args args; krb5_gss_name_rec name; OM_uint32 time_rec; + krb5_error_code code; assert(value->length == sizeof(*req)); @@ -846,6 +847,11 @@ gss_krb5int_import_cred(OM_uint32 *minor_status, if (req->keytab_principal) { memset(&name, 0, sizeof(name)); + code = k5_mutex_init(&name.lock); + if (code != 0) { + *minor_status = code; + return GSS_S_FAILURE; + } name.princ = req->keytab_principal; args.desired_name = (gss_name_t)&name; } |