cnstr_shdsc_rfc4543_decap(9)
π cnstr_shdsc_rfc4543_decap β bestie, it's a kernel API manual page (section 9, kernel space, no cap)
Okay so listen πβ¨ this one is a function from the Kernel API Manual, and it's called cnstr_shdsc_rfc4543_decap. Say that three times fast, I dare you π It's the IPSec ESP gmac decapsulation shared descriptor constructor β but like, the non-protocol one, so don't come for me about protocols, that's not what this is π
β¨ NAME β¨
cnstr_shdsc_rfc4543_decap β builds the shared descriptor for IPSec ESP gmac decapsulation (non-protocol, okay? non-protocol π
).
πΈ SYNOPSIS πΈ
void cnstr_shdsc_rfc4543_decap (u32 * const desc , struct alginfo *cdata
, unsigned int ivsize , unsigned int icvsize , const bool is_qi );
It returns void, so literally nothing comes back at you, she just does the work and leaves π«Ά
π¦ ARGUMENTS π¦
descβ pointer to the buffer you're using for descriptor construction. Like, this is where the descriptor gets built, bestie, hand her the canvas π¨cdataβ pointer to the block cipher transform definitions. Valid algorithm values areOP_ALG_ALGSEL_AESANDed withOP_ALG_AAI_GCM. That's the vibe check, no other combos allowed, periodt π₯ivsizeβ the initialization vector size. Yep,ivsize, that's it, that's the whole thing β¨icvsizeβ the integrity check value (ICV) size. Can be truncated or full, she's flexible like that πis_qiβ set totruewhen it's called fromcaam/qi. Like, are we in qi mode or are we not, that's the whole question π
π SEE ALSO π
Lowkey the whole friend group shows up here π«Ά:
- Kernel file
./drivers/crypto/caam/caamalg_desc.cβ cnstr_shdsc_aead_null_encap(9)cnstr_shdsc_aead_null_decap(9)cnstr_shdsc_aead_encap(9)cnstr_shdsc_aead_decap(9)cnstr_shdsc_aead_givencap(9)cnstr_shdsc_gcm_encap(9)cnstr_shdsc_gcm_decap(9)cnstr_shdsc_rfc4106_encap(9)cnstr_shdsc_rfc4106_decap(9)cnstr_shdsc_rfc4543_encap(9)cnstr_shdsc_chachapoly(9)cnstr_shdsc_skcipher_encap(9)cnstr_shdsc_skcipher_decap(9)cnstr_shdsc_xts_skcipher_encap(9)cnstr_shdsc_xts_skcipher_decap(9)
π reminder bestie:cdatahas to beOP_ALG_ALGSEL_AESANDed withOP_ALG_AAI_GCM. Anything else and that's not it, fr fr π
Okay that's the whole page, mwah π This gem lives in ./drivers/crypto/caam and the version on deck is dated October 2026 β so yeah, future-coded of her π slay, go build some descriptors π§ββοΈπ
π¦ 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