in crypto/s2n_hmac.c [51:68]
int s2n_hmac_hash_alg(s2n_hmac_algorithm hmac_alg, s2n_hash_algorithm *out)
{
POSIX_ENSURE(S2N_MEM_IS_WRITABLE_CHECK(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION);
switch(hmac_alg) {
case S2N_HMAC_NONE: *out = S2N_HASH_NONE; break;
case S2N_HMAC_MD5: *out = S2N_HASH_MD5; break;
case S2N_HMAC_SHA1: *out = S2N_HASH_SHA1; break;
case S2N_HMAC_SHA224: *out = S2N_HASH_SHA224; break;
case S2N_HMAC_SHA256: *out = S2N_HASH_SHA256; break;
case S2N_HMAC_SHA384: *out = S2N_HASH_SHA384; break;
case S2N_HMAC_SHA512: *out = S2N_HASH_SHA512; break;
case S2N_HMAC_SSLv3_MD5: *out = S2N_HASH_MD5; break;
case S2N_HMAC_SSLv3_SHA1: *out = S2N_HASH_SHA1; break;
default:
POSIX_BAIL(S2N_ERR_HMAC_INVALID_ALGORITHM);
}
return S2N_SUCCESS;
}