cnstr_shdsc_aead_null_decap(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… cnstr_shdsc_aead_null_decap β€” the Kernel API Manual page you didn't know you needed πŸŽ€

okay so bestie, welcome to the Kernel API Manual ✨ today we're talking about cnstr_shdsc_aead_null_decap, and ngl the name is giving "I have seventeen consonants and zero chill" but it's actually so valid once you get it. It's the function that builds you an IPSec ESP decapsulation shared descriptor (non-protocol) with no (null) decryption β€” like, it sets up the descriptor but the decryption part is literally doing nothing. Null. A beautiful void. 🫢


🌸 NAME 🌸

cnstr_shdsc_aead_null_decap β€” IPSec ESP decapsulation shared descriptor (non-protocol) with no (null) decryption. That's it, that's the whole vibe check. πŸ¦‹


✨ SYNOPSIS ✨

void cnstr_shdsc_aead_null_decap (u32 * const desc , struct alginfo
*adata , unsigned int icvsize , int era );

void, bestie! It returns absolutely nothing and honestly? Queen behavior β€” no promises, no expectations, just descriptor construction. πŸ’€


πŸ‘‘ ARGUMENTS πŸ‘‘

Here's where you actually lock in, because every single one of these matters:

  • desc β€” pointer to the buffer used for descriptor construction. This is your canvas, your little construction site, your main character buffer. πŸ—οΈ
  • adata β€” pointer to authentication transform definitions. Important detail incoming: a split key is required for SEC Era < 6, and in that case the size of the split key is specified in this field. Valid algorithm values are one of OP_ALG_ALGSEL_{MD5, SHA1, SHA224, SHA256, SHA384, SHA512} ANDed with OP_ALG_AAI_HMAC_PRECOMP. Like, ANDed, literally. Don't come in with a bare algo and expect slay. πŸ”₯
  • icvsize β€” integrity check value (ICV) size. Can be truncated or full, your call, you do you. πŸ’–
  • era β€” SEC Era. Yes it's an int. Yes you have to care about it. The split-key thing from adata is watching. πŸ‘€

🌈 SEE ALSO 🌈

okay this is the friend group, the whole crew, the iykyk section:

The Kernel file lives at ./drivers/crypto/caam/caamalg_desc.c πŸ—‚οΈ and here's everybody else in the group chat:

nostalgic for a function you haven't even read yet? same. go click one. 🧚


aaaand that's the page, bestie!! πŸ“ this little masterpiece came from ./drivers/crypto/caam, dated October 2026, and it's literally titled cnstr_shdsc_aead_null_decap(9) β€” iconic, no notes, periodt. πŸ’œ

πŸ“¦ where this page comes from