STRUCT TEE_IOCTL_INVOKE_ARG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct tee_ioctl_invoke_arg(9) β€” Kernel API Manual πŸ’œ

okay bestie, so this is a page from the Kernel API Manual, and it's literally the struct you use to invoke a function in a Trusted Application ✨ like, that's the whole NAME section, no notes, it ate.


πŸŽ€ SYNOPSIS πŸŽ€

here's the shape of it, character for character, don't touch:

struct tee_ioctl_invoke_arg {
    __u32 func;
    __u32 session;
    __u32 cancel_id;
    __u32 ret;
    __u32 ret_origin;
    __u32 num_params;
    struct tee_ioctl_param params[];
 };

🫢 MEMBERS 🫢

okay so every field, one by one, i'm not skipping a single one, that's the rule πŸ’…

  • func β€” [in] a Trusted Application function, and it's specific to the TA β€” so like, it only means something to the TA you're talking to, don't come for me about it 🌸
  • session β€” [in] the session id 🎫
  • cancel_id β€” [in] the cancellation id, a unique value that identifies this request, so when you cancel you know exactly which one you mean fr fr
  • ret β€” [out] the return value comes back here πŸ’«
  • ret_origin β€” [out] the origin of the return value, like where it came from, receipts basically 🧾
  • num_params β€” [in] the number of parameters that follow this struct, count them correctly bestie i'm begging 😭
  • params β€” the array of ioctl parameters, it's the flexible-array member at the end, no cap πŸ¦‹
reminder: [in] means you feed it in, [out] means it comes back to you. don't flip them, that's giving chaos πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

the whole friend group, all of them, linked and iconic πŸ‘‘


✨ and that's the page, mwah ✨ this one lives over in ./include/uapi/linux, dated October 2026, and the whole thing is filed under struct tee_ioctl_invoke_arg(9) β€” go invoke something iconic bestie, ily, bye πŸ«ΆπŸ’–πŸŒ·

πŸ“¦ where this page comes from