rfc4543_gcm_esp_setkey(9)
π rfc4543_gcm_esp_setkey(9) β like, the kernel API manual bestie
okay so this one lives in section 9 of the Kernel API Manual, and it's literally the setkey operation for the RFC4543 variant of GCM/GMAC. yes, that's a lot of acronyms, but stay with me π«Ά
β¨ SYNOPSIS β¨
int rfc4543_gcm_esp_setkey (struct crypto_aead *cipher , const u8 *key ,
unsigned int keylen );
π ARGUMENTS π
cipherβ the AEAD structure, aka the main character of this whole function πkeyβ the key, followed by 4 bytes of salt. yes bestie, the salt is riding along in the same buffer, iykykkeylenβ length of the key plus the salt, counted in bytes. so don't forget to add those 4 salt bytes in there fr fr π§
π DESCRIPTION π
so what it does is: it extracts the salt from the key and stores it, so that salt can get prepended to the IV on every single request. and the digest? always 16 bytes. no cap, always 16 π
π₯ RETURN π₯
it returns the value from the generic gcm setkey. that's it, that's the return π
π SEE ALSO π
Kernel file ./drivers/crypto/bcm/cipher.c β and honestly the whole friend group showed up for this one:
select_channel(9)spu_skcipher_rx_sg_create(9)spu_skcipher_tx_sg_create(9)handle_skcipher_req(9)handle_skcipher_resp(9)spu_ahash_rx_sg_create(9)spu_ahash_tx_sg_create(9)handle_ahash_req(9)spu_hmac_outer_hash(9)ahash_req_done(9)handle_ahash_resp(9)spu_aead_rx_sg_create(9)spu_aead_tx_sg_create(9)handle_aead_req(9)handle_aead_resp(9)spu_chunk_cleanup(9)finish_req(9)spu_rx_callback(9)skcipher_enqueue(9)spu_no_incr_hash(9)aead_gcm_esp_setkey(9)aead_ccm_esp_setkey(9)spu_functions_register(9)spu_mb_init(9)
that's the whole page bestie, go set some keys π β¨
sign-off szn: this lil icon comes from the source <purple>./drivers/crypto/bcm</purple>, dated <cyan>October 2026</cyan>, and it's out here living its best life as rfc4543_gcm_esp_setkey(9)`. periodt π¦π
π¦ 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