From 227900ca1cd5054dba7f52158598b88bd4f0fbf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Sat, 24 Apr 2004 16:09:42 +0000 Subject: [PATCH] move out the oid check from get_reply_key git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13765 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/pkinit.c | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/lib/krb5/pkinit.c b/lib/krb5/pkinit.c index 5f23f45c8..ccb0a9bb5 100644 --- a/lib/krb5/pkinit.c +++ b/lib/krb5/pkinit.c @@ -1137,8 +1137,6 @@ _krb5_pk_verify_sign(krb5_context context, static krb5_error_code get_reply_key(krb5_context context, - int win2k_compat, - const heim_oid *eContentType, const krb5_data *eContent, unsigned nonce, krb5_keyblock **key) @@ -1147,18 +1145,6 @@ get_reply_key(krb5_context context, krb5_error_code ret; size_t size; - if (win2k_compat) { - if (heim_oid_cmp(eContentType, &pkcs7_data_oid) != 0) { - krb5_set_error_string(context, "PKINIT, reply key, wrong oid"); - return KRB5KRB_AP_ERR_MSG_TYPE; - } - } else { - if (heim_oid_cmp(eContentType, &heim_pkrkeydata_oid) != 0) { - krb5_set_error_string(context, "PKINIT, reply key, wrong oid"); - return KRB5KRB_AP_ERR_MSG_TYPE; - } - } - ret = decode_ReplyKeyPack(eContent->data, eContent->length, &key_pack, @@ -1444,8 +1430,21 @@ pk_rd_pa_reply_enckey(krb5_context context, goto out; } - ret = get_reply_key(context, win2k_compat, - &eContentType, &eContent, nonce, key); + if (win2k_compat) { + if (heim_oid_cmp(&eContentType, &pkcs7_data_oid) != 0) { + krb5_set_error_string(context, "PKINIT, reply key, wrong oid"); + ret = KRB5KRB_AP_ERR_MSG_TYPE; + goto out; + } + } else { + if (heim_oid_cmp(&eContentType, &heim_pkrkeydata_oid) != 0) { + krb5_set_error_string(context, "PKINIT, reply key, wrong oid"); + ret = KRB5KRB_AP_ERR_MSG_TYPE; + goto out; + } + } + + ret = get_reply_key(context, &eContent, nonce, key); if (ret) goto out;