summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2010-02-05 03:05:42 +0000
committerTom Yu <tlyu@mit.edu>2010-02-05 03:05:42 +0000
commitff98a7e7fb30efccae3c80cbfec518b465674458 (patch)
treeab9459206a48a6df11101f9431904beb86bed442 /src/lib
parent64cb02a081c3131c829a54d26830a11dc5718edc (diff)
downloadkrb5-ff98a7e7fb30efccae3c80cbfec518b465674458.tar.gz
krb5-ff98a7e7fb30efccae3c80cbfec518b465674458.tar.xz
krb5-ff98a7e7fb30efccae3c80cbfec518b465674458.zip
Apply patch from Arlene Berry to return a comparable static OID object
instead of the application-passed (probably dynamically allocated) OID, to avoid use-after-free problems. ticket: 6598 tags: pullup target_version: 1.8 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23695 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/gssapi/krb5/init_sec_context.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/gssapi/krb5/init_sec_context.c b/src/lib/gssapi/krb5/init_sec_context.c
index 9b6f3ecff..cbc9ed936 100644
--- a/src/lib/gssapi/krb5/init_sec_context.c
+++ b/src/lib/gssapi/krb5/init_sec_context.c
@@ -979,12 +979,15 @@ krb5_gss_init_sec_context(minor_status, claimant_cred_handle,
err = 1;
}
} else if (g_OID_equal(mech_type, gss_mech_krb5)) {
+ mech_type = (gss_OID) gss_mech_krb5;
if (!cred->rfc_mech)
err = 1;
} else if (g_OID_equal(mech_type, gss_mech_krb5_old)) {
+ mech_type = (gss_OID) gss_mech_krb5_old;
if (!cred->prerfc_mech)
err = 1;
} else if (g_OID_equal(mech_type, gss_mech_krb5_wrong)) {
+ mech_type = (gss_OID) gss_mech_krb5_wrong;
if (!cred->rfc_mech)
err = 1;
} else {