hmac_sha224_final(9)
π hmac_sha224_final(9)
okay bestie, welcome to the Kernel API Manual β this one's a lil page about hmac_sha224_final, and honestly it's short, sweet, and does exactly what it says on the tin. no lore, no drama, just the last step of an HMAC-SHA224. let's go π
β¨ NAME β¨
hmac_sha224_final β finish up computing an HMAC-SHA224 value. that's it, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
void hmac_sha224_final (struct hmac_sha224_ctx *ctx , u8 out[static
SHA224_DIGEST_SIZE] );
literally just those two args and you're done, no cap β¨
π ARGUMENTS π
ctxβ the HMAC context you're finalizing. heads up though: it must have been initialized first β don't come at it raw or it'll be giving uninitialized chaos πoutβ (output) the resulting HMAC-SHA224 value lands here. this is the moment, the main character slot π«Ά
π DESCRIPTION π
so here's the cute part: after finishing, this function zeroizes ctx. meaning it cleans up after itself, wipes the context, and the caller does not need to do it. one less chore for you. iconic behavior honestly π
ngl that's lowkey the nicest thing a crypto function can do for you β free cleanup, no extra steps, no "did you remember to wipe it" anxiety π
π¦ CONTEXT π¦
Any context. fr fr β all of them, every single one, no restrictions. you're free πΈ
β SEE ALSO β
okay this list is long, so let me group it so your eyes don't fall out π the kernel file lives at ./include/crypto/sha2.h and all of these are (9) pages:
SHA-224 core:
struct sha224_ctx(9),sha224_init(9),sha224_update(9),sha224_final(9),sha224(9)
HMAC-SHA224:
struct hmac_sha224_key(9),struct hmac_sha224_ctx(9),hmac_sha224_preparekey(9),hmac_sha224_init(9),hmac_sha224_init_usingrawkey(9),hmac_sha224_update(9),hmac_sha224(9),hmac_sha224_usingrawkey(9)
SHA-256 core:
struct sha256_ctx(9),sha256_init(9),sha256_update(9),sha256_final(9),sha256(9),sha256_finup_2x(9),sha256_finup_2x_is_optimized(9)
HMAC-SHA256:
struct hmac_sha256_key(9),struct hmac_sha256_ctx(9),hmac_sha256_preparekey(9),hmac_sha256_init(9),hmac_sha256_init_usingrawkey(9),hmac_sha256_update(9),hmac_sha256_final(9),hmac_sha256(9),hmac_sha256_usingrawkey(9)
SHA-384 core:
struct sha384_ctx(9),sha384_init(9),sha384_update(9),sha384_final(9),sha384(9)
HMAC-SHA384:
struct hmac_sha384_key(9),struct hmac_sha384_ctx(9),hmac_sha384_preparekey(9),hmac_sha384_init(9),hmac_sha384_init_usingrawkey(9),hmac_sha384_update(9),hmac_sha384_final(9),hmac_sha384(9),hmac_sha384_usingrawkey(9)
SHA-512 core:
struct sha512_ctx(9),sha512_init(9),sha512_update(9),sha512_final(9),sha512(9)
HMAC-SHA512:
struct hmac_sha512_key(9),struct hmac_sha512_ctx(9),hmac_sha512_preparekey(9),hmac_sha512_init(9),hmac_sha512_init_usingrawkey(9),hmac_sha512_update(9),hmac_sha512_final(9),hmac_sha512(9),hmac_sha512_usingrawkey(9)
iykyk, the whole sha2 family is right there waiting for you π§
and that's the whole page bestie π courtesy of ./include/crypto, dated October 2026 β go forth and finalize those HMACs, you're gonna slay β¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms