STRUCT SA_CMDL_UPD_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ struct sa_cmdl_upd_info β€” the kernel API manual, bestie edition πŸŽ€

Hiii okay so we're talking about struct sa_cmdl_upd_info(9) from the Kernel API Manual today, and honestly? It's giving "command label updation info" and it ate. Buckle up, this one's a whole struct and she has a LOT of members. πŸ’…


✨ NAME ✨

struct sa_cmdl_upd_info β€” command label updation info. Yes that's really what it's called, no I did not make that up, and yes the whole point of this struct is keeping track of update info for a command label. Iconic behavior tbh. 🫢


🌸 SYNOPSIS 🌸

Okay so here's the whole thing, character for character, look at her:

struct sa_cmdl_upd_info {
    u16 flags;
    u16 submode;
    struct sa_cmdl_param_info       enc_size;
    struct sa_cmdl_param_info       enc_size2;
    struct sa_cmdl_param_info       enc_offset;
    struct sa_cmdl_param_info       enc_iv;
    struct sa_cmdl_param_info       enc_iv2;
    struct sa_cmdl_param_info       aad;
    struct sa_cmdl_param_info       payload;
    struct sa_cmdl_param_info       auth_size;
    struct sa_cmdl_param_info       auth_size2;
    struct sa_cmdl_param_info       auth_offset;
    struct sa_cmdl_param_info       auth_iv;
    struct sa_cmdl_param_info       aux_key_info;
    u32 aux_key[SA_MAX_AUX_DATA_WORDS];
};

Like, she's long, she's detailed, she has a whole little struct sa_cmdl_param_info friend group. Main character energy fr fr. πŸ‘‘


πŸ’– Members πŸ’–

Okay bestie, time for the roll call β€” every single member, no skipping, because we do NOT leave anyone out of the group chat:

  • flags β€” flags in command label. Yeah, flags. In the command label. Keeping it simple, we love that for her. ✨
  • submode β€” Encryption submodes. The vibes of the encryption, essentially. πŸ”₯
  • enc_size β€” Size of first pass encryption size. First pass!! There's a whole second pass coming, don't worry. πŸ¦‹
  • enc_size2 β€” Size of second pass encryption size. See? Told you. πŸ’œ
  • enc_offset β€” Encryption payload offset in the packet. Where the payload is chilling inside the packet. πŸ“
  • enc_iv β€” Encryption initialization vector for pass2. (Yes, both enc_iv and enc_iv2 say pass2 in this manual. We're just reporting the facts, no cap. πŸ™ˆ)
  • enc_iv2 β€” Encryption initialization vector for pass2. Again. Second verse, same as the first. 😭
  • aad β€” Associated data. That's it, that's the whole description, and honestly? Respect the brevity. πŸŽ€
  • payload β€” Payload info. The payload's info. The info about the payload. Chef's kiss of a description. πŸ“
  • auth_size β€” Authentication size for pass 1. Note the space before the 1, we keep it exactly as written, we are nothing if not accurate. ⭐
  • auth_size2 β€” Authentication size for pass 2. The sequel. 🌈
  • auth_offset β€” Authentication payload offset. Where the auth payload sits. 🌸
  • auth_iv β€” Authentication initialization vector. The auth-side IV, doing her little cryptographic thing. 🧚
  • aux_key_info β€” Authentication aux key information. All the ~info~ about the aux key. πŸ’«
  • aux_key β€” Aux key for authentication. It's literally u32 aux_key[SA_MAX_AUX_DATA_WORDS]; β€” an array, bestie, she contains multitudes. πŸ”‘

🌟 SEE ALSO 🌟

Go read these next, iykyk, they're literally in the kernel file ./drivers/crypto/sa2ul.h:

  • struct sa_crypto_data(9)
  • struct sa_cmdl_param_info(9)
  • struct sa_ctx_info(9)
  • struct sa_tfm_ctx(9)
  • struct sa_sha_req_ctx(9)
  • struct sa_eng_info(9)

Lowkey a reminder that this is the struct sa_cmdl_upd_info(9) page from the Kernel API Manual, so if you're out here shipping crypto driver code, cite your sources bestie. πŸ“š

Okay that's the whole page, mwah πŸ’‹ β€” brought to you by ./drivers/crypto, dated October 2026, and yes the footer says struct sa_cmdl_upd_info(9) one more time just to make sure you remember her name. Periodt. πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from