gcry_md_close(digest->hmac);
}
- digest->hmac = NULL;
+ memset(digest, 0, sizeof(*digest));
}
bool digest_set_key(digest_t *digest, const void *key, size_t len) {
}
int digest_get_nid(const digest_t *digest) {
+ if(!digest || !digest->nid) {
+ return 0;
+ }
+
return digest->nid;
}
size_t digest_length(const digest_t *digest) {
+ if(!digest) {
+ return 0;
+ }
+
return digest->maclength;
}
bool digest_active(const digest_t *digest) {
- return digest->algo != GCRY_MD_NONE;
+ return digest && digest->algo != GCRY_MD_NONE;
}