hmac_sha384_final(9)
β¨ hmac_sha384_final β the Kernel API Manual, section 9 bestie β¨
okay so quick vibe check: this page is hmac_sha384_final(9) from the Kernel API Manual, and it's literally the "wrap it up" moment for an HMAC-SHA384 computation π
πΈ NAME πΈ
hmac_sha384_final β finish computing an HMAC-SHA384 value. that's it, that's the whole job, and it ate π
π¦ SYNOPSIS π¦
void hmac_sha384_final (struct hmac_sha384_ctx *ctx , u8 out[static
SHA384_DIGEST_SIZE] );
no cap, that's the whole signature. look at her go β¨
π ARGUMENTS π
ctxβ the HMAC context you're finalizing, and bestie listen: it must have been initialized. like, this is not the place for a fresh-out-of-the-box context, okay? initialize her first π«Άoutβ this one's an (output) param, so it's where the resulting HMAC-SHA384 value lands. icon behavior. and notice thestatic SHA384_DIGEST_SIZEup in the synopsis β the size is right there in the signature, we love a self-documenting girlie π
π₯ DESCRIPTION π₯
okay so here's the tea β β after finishing, this zeroizes ctx. like, wipes it. gone. so the caller does not need to do it themselves. it's giving main character energy that takes care of its own cleanup. you literally don't have to lift a finger π
β¨
π CONTEXT π
Any context. fr fr, any. she's flexible like that π§
π SEE ALSO π
bestie, buckle in, because this list is long and every single one of these is iconic in her own right π. the kernel file in question is ./include/crypto/sha2.h, and then we've got the whole sha224 / sha256 / sha384 / sha512 family reunion:
the sha224 crowd π«
struct sha224_ctx(9)sha224_init(9)sha224_update(9)sha224_final(9)sha224(9)
the hmac-sha224 girlies π
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_final(9)hmac_sha224(9)hmac_sha224_usingrawkey(9)
the sha256 squad π¦
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)
the hmac-sha256 crew π
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)
the sha384 crew (our girl's home team π) β¨
struct sha384_ctx(9)sha384_init(9)sha384_update(9)sha384_final(9)sha384(9)
the hmac-sha384 besties π
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(9)hmac_sha384_usingrawkey(9)
the sha512 side of the family π₯
struct sha512_ctx(9)sha512_init(9)sha512_update(9)sha512_final(9)sha512(9)
and the hmac-sha512 icons π
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 ππ every single one of them, accounted for, no skips, no cap.
lowkey reminder bestie: ctx must have been initialized before you call this, and afterwards it's zeroized for you β no extra cleanup arc needed π
and that's the page! brought to you by the fine people at ./include/crypto, dated October 2026, manual page hmac_sha384_final(9) β slay, go finish that HMAC πβ¨π«Ά
π¦ 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