diff options
author | Michal Rokos <m.rokos@sh.cvut.cz> | 2002-01-04 11:12:22 +0000 |
---|---|---|
committer | Michal Rokos <m.rokos@sh.cvut.cz> | 2002-01-04 11:12:22 +0000 |
commit | 30c7790a512172b5254775fbad8f601d5638c1e6 (patch) | |
tree | 39a0ceb2db8fcd07e8b82bc107e5cc2a05df9d24 /ossl_hmac.c | |
parent | 99d5a24aa57c9eb4ac792a36e0947dc5df84fe8c (diff) | |
download | ruby-openssl-history-30c7790a512172b5254775fbad8f601d5638c1e6.tar.gz |
* Further checking (Check_SafeStr, memory leaks)
Diffstat (limited to 'ossl_hmac.c')
-rw-r--r-- | ossl_hmac.c | 8 |
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; |