STRUCT SA_TFM_CTX(9)
β¨ struct sa_tfm_ctx(9) β¨
okay bestie, welcome to the struct sa_tfm_ctx page from the Kernel API Manual β this is the TFM context structure and she is literally the main character of your crypto transform setup π
π NAME π
struct sa_tfm_ctx β the TFM context structure, no cap
π¦ SYNOPSIS π¦
struct sa_tfm_ctx {
struct sa_crypto_data *dev_data;
struct sa_ctx_info enc;
struct sa_ctx_info dec;
struct sa_ctx_info auth;
int keylen;
int iv_idx;
u32 key[AES_KEYSIZE_256 / sizeof(u32)];
u8 authkey[SHA512_BLOCK_SIZE];
struct crypto_shash *shash;
union {
struct crypto_skcipher *skcipher;
struct crypto_ahash *ahash;
struct crypto_aead *aead;
} fallback;
};
look at her. gorgeous. every field exactly where it belongs π
πΈ Members πΈ
dev_dataβ astruct sa_crypto_datapointer, she's the plug that connects you to the device data π«Άencβ astruct sa_ctx_infofor encryption, iykyk π₯decβ astruct sa_ctx_infofor decryption, the mirror twin β¨authβ astruct sa_ctx_infofor authentication πkeylenβ the encryption/decryption keylength, like how long the key is πiv_idxβ the Initialization vector index πkeyβ the encryption key itself, guard her with your life πfallbackβ the SW fallback algorithm. and bestie, note the union down there: it can be astruct crypto_skcipher *skcipher, astruct crypto_ahash *ahash, or astruct crypto_aead *aeadβ pick your fighter β
π SEE ALSO π
- Kernel file
./drivers/crypto/sa2ul.hstruct sa_crypto_data(9) struct sa_cmdl_param_info(9)struct sa_cmdl_upd_info(9)struct sa_ctx_info(9)struct sa_sha_req_ctx(9)struct sa_eng_info(9)
and that's the whole vibe, bestie π she lives in ./drivers/crypto and this page is dated October 2026 β go read the SEE ALSOs, they're all connected fr fr π§β¨
π¦ 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