diff --git a/lib/isc/iterated_hash.c b/lib/isc/iterated_hash.c index 80d219c56b..ad623814e6 100644 --- a/lib/isc/iterated_hash.c +++ b/lib/isc/iterated_hash.c @@ -44,18 +44,22 @@ isc_iterated_hash(unsigned char *out, const unsigned int hashalg, do { if (SHA1_Init(&ctx) != 1) { + ERR_clear_error(); return (0); } if (SHA1_Update(&ctx, buf, len) != 1) { + ERR_clear_error(); return (0); } if (SHA1_Update(&ctx, salt, saltlength) != 1) { + ERR_clear_error(); return (0); } if (SHA1_Final(out, &ctx) != 1) { + ERR_clear_error(); return (0); }