aboutsummaryrefslogtreecommitdiffstats
path: root/ossl_hmac.c
diff options
context:
space:
mode:
authorMichal Rokos <m.rokos@sh.cvut.cz>2002-01-04 11:12:22 +0000
committerMichal Rokos <m.rokos@sh.cvut.cz>2002-01-04 11:12:22 +0000
commit30c7790a512172b5254775fbad8f601d5638c1e6 (patch)
tree39a0ceb2db8fcd07e8b82bc107e5cc2a05df9d24 /ossl_hmac.c
parent99d5a24aa57c9eb4ac792a36e0947dc5df84fe8c (diff)
downloadruby-openssl-history-30c7790a512172b5254775fbad8f601d5638c1e6.tar.gz
* Further checking (Check_SafeStr, memory leaks)
Diffstat (limited to 'ossl_hmac.c')
-rw-r--r--ossl_hmac.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/ossl_hmac.c b/ossl_hmac.c
index c69c7e7..caf89f0 100644
--- a/ossl_hmac.c
+++ b/ossl_hmac.c
@@ -70,16 +70,13 @@ ossl_hmac_initialize(int argc, VALUE *argv, VALUE self)
rb_scan_args(argc, argv, "20", &key, &digest);
- OSSL_Check_Type(digest, cDigest);
- Check_Type(key, T_STRING);
Check_SafeStr(key);
+ md = ossl_digest_get_EVP_MD(digest);
if (!(hmacp->hmac = OPENSSL_malloc(sizeof(HMAC_CTX)))) {
rb_raise(eHMACError, "%s", ossl_error());
}
- md = ossl_digest_get_EVP_MD(digest);
-
HMAC_Init(hmacp->hmac, RSTRING(key)->ptr, RSTRING(key)->len, md);
return self;
@@ -92,7 +89,8 @@ ossl_hmac_update(VALUE self, VALUE data)
GetHMAC(self, hmacp);
- Check_Type(data, T_STRING);
+ Check_SafeStr(data);
+
HMAC_Update(hmacp->hmac, RSTRING(data)->ptr, RSTRING(data)->len);
return self;