From: Aki Tuomi Date: Fri, 6 Sep 2013 14:38:28 +0000 (+0300) Subject: Fixed coverity issues 1082470 thru 1082475 X-Git-Tag: rec-3.6.0-rc1~455^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F997%2Fhead;p=thirdparty%2Fpdns.git Fixed coverity issues 1082470 thru 1082475 --- diff --git a/pdns/dnssecinfra.cc b/pdns/dnssecinfra.cc index 86b99e0c49..0c19fd6d89 100644 --- a/pdns/dnssecinfra.cc +++ b/pdns/dnssecinfra.cc @@ -465,6 +465,7 @@ string calculateSHAHMAC(const std::string& key, const std::string& text, TSIGHas sha1_hmac_update(&ctx, reinterpret_cast(text.c_str()), text.size()); sha1_hmac_finish(&ctx, hash); res.assign(reinterpret_cast(hash), 20); + break; }; case TSIG_SHA224: { @@ -472,7 +473,8 @@ string calculateSHAHMAC(const std::string& key, const std::string& text, TSIGHas sha2_hmac_starts(&ctx, reinterpret_cast(key.c_str()), key.size(), 1); sha2_hmac_update(&ctx, reinterpret_cast(text.c_str()), text.size()); sha2_hmac_finish(&ctx, hash); - res.assign(reinterpret_cast(hash), 32); + res.assign(reinterpret_cast(hash), 28); + break; }; case TSIG_SHA256: { @@ -481,6 +483,7 @@ string calculateSHAHMAC(const std::string& key, const std::string& text, TSIGHas sha2_hmac_update(&ctx, reinterpret_cast(text.c_str()), text.size()); sha2_hmac_finish(&ctx, hash); res.assign(reinterpret_cast(hash), 32); + break; }; case TSIG_SHA384: { @@ -488,7 +491,8 @@ string calculateSHAHMAC(const std::string& key, const std::string& text, TSIGHas sha4_hmac_starts(&ctx, reinterpret_cast(key.c_str()), key.size(), 1); sha4_hmac_update(&ctx, reinterpret_cast(text.c_str()), text.size()); sha4_hmac_finish(&ctx, hash); - res.assign(reinterpret_cast(hash), 64); + res.assign(reinterpret_cast(hash), 48); + break; }; case TSIG_SHA512: { @@ -497,12 +501,13 @@ string calculateSHAHMAC(const std::string& key, const std::string& text, TSIGHas sha4_hmac_update(&ctx, reinterpret_cast(text.c_str()), text.size()); sha4_hmac_finish(&ctx, hash); res.assign(reinterpret_cast(hash), 64); + break; }; default: throw new PDNSException("Unknown hash algorithm requested for SHA"); }; - return std::string(""); + return res; } string calculateHMAC(const std::string& key_, const std::string& text, TSIGHashEnum hash) {