[PATCH] Pass krb5_context to hmac routines
Andrew Bartlett <[email protected]>
| Newsgroups | gmane.comp.encryption.kerberos.heimdal.general |
|---|---|
| Message-ID | <1323642867.17315.13.camel@obed> |
A samba user had an interesting crash, which seemed to be in the hmac crypto routines. Oddly, the krb5_context was not being passed in, so this patch fixes. that. Or was this missing for a reason? Andrew Bartlett -- Andrew Bartlett http://samba.org/~abartlet/ Authentication Developer, Samba Team http://samba.org
0001-HEIMDAL-Supply-krb5_context-to-_krb5_internal_hmac-t.patch
(text/x-patch, 2.6 KB)
From f85f9980b0bd256115bfc2220560bb2b07d2d458 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett <[email protected]> Date: Thu, 17 Nov 2011 19:13:02 +1100 Subject: [PATCH] HEIMDAL: Supply krb5_context to _krb5_internal_hmac to allow logging Without this, log messages from any abort are not printed to the samba logs. Andrew Bartlett --- lib/krb5/crypto-arcfour.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/krb5/crypto-arcfour.c b/lib/krb5/crypto-arcfour.c index 1d4f946..0a51316 100644 --- a/lib/krb5/crypto-arcfour.c +++ b/lib/krb5/crypto-arcfour.c @@ -147,7 +147,7 @@ ARCFOUR_subencrypt(krb5_context context, k1_c.checksum.length = sizeof(k1_c_data); k1_c.checksum.data = k1_c_data; - ret = _krb5_internal_hmac(NULL, c, t, sizeof(t), 0, key, &k1_c); + ret = _krb5_internal_hmac(context, c, t, sizeof(t), 0, key, &k1_c); if (ret) krb5_abortx(context, "hmac failed"); @@ -162,7 +162,7 @@ ARCFOUR_subencrypt(krb5_context context, cksum.checksum.length = 16; cksum.checksum.data = data; - ret = _krb5_internal_hmac(NULL, c, cdata + 16, len - 16, 0, &ke, &cksum); + ret = _krb5_internal_hmac(context, c, cdata + 16, len - 16, 0, &ke, &cksum); if (ret) krb5_abortx(context, "hmac failed"); @@ -172,7 +172,7 @@ ARCFOUR_subencrypt(krb5_context context, k3_c.checksum.length = sizeof(k3_c_data); k3_c.checksum.data = k3_c_data; - ret = _krb5_internal_hmac(NULL, c, data, 16, 0, &ke, &k3_c); + ret = _krb5_internal_hmac(context, c, data, 16, 0, &ke, &k3_c); if (ret) krb5_abortx(context, "hmac failed"); @@ -215,7 +215,7 @@ ARCFOUR_subdecrypt(krb5_context context, k1_c.checksum.length = sizeof(k1_c_data); k1_c.checksum.data = k1_c_data; - ret = _krb5_internal_hmac(NULL, c, t, sizeof(t), 0, key, &k1_c); + ret = _krb5_internal_hmac(context, c, t, sizeof(t), 0, key, &k1_c); if (ret) krb5_abortx(context, "hmac failed"); @@ -230,7 +230,7 @@ ARCFOUR_subdecrypt(krb5_context context, k3_c.checksum.length = sizeof(k3_c_data); k3_c.checksum.data = k3_c_data; - ret = _krb5_internal_hmac(NULL, c, cdata, 16, 0, &ke, &k3_c); + ret = _krb5_internal_hmac(context, c, cdata, 16, 0, &ke, &k3_c); if (ret) krb5_abortx(context, "hmac failed"); @@ -245,7 +245,7 @@ ARCFOUR_subdecrypt(krb5_context context, cksum.checksum.length = 16; cksum.checksum.data = cksum_data; - ret = _krb5_internal_hmac(NULL, c, cdata + 16, len - 16, 0, &ke, &cksum); + ret = _krb5_internal_hmac(context, c, cdata + 16, len - 16, 0, &ke, &cksum); if (ret) krb5_abortx(context, "hmac failed"); -- 1.7.6.4