STRUCT TSM_REPORT_DESC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct tsm_report_desc(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” we're looking at struct tsm_report_desc, which is literally the option descriptor you use for generating tsm report blobs. that's the whole vibe. no cap. πŸŽ€


✨ NAME ✨

struct tsm_report_desc β€” the option descriptor for generating tsm report blobs. it's giving "config object for your attestation report," and honestly? iconic.


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the whole struct, exactly as it lives, don't @ me:

struct tsm_report_desc {
    unsigned int privlevel;
    size_t inblob_len;
    u8 inblob[TSM_REPORT_INBLOB_MAX];
    char *service_provider;
    guid_t service_guid;
    unsigned int service_manifest_version;
 };

like, look at her. six fields. main character energy fr fr. 🌸


πŸ‘‘ Members πŸ‘‘

okay so let's go field by field, because every single one matters and i'm not skipping a thing:

  • privlevel β€” an optional privilege level to associate with outblob. optional, bestie, so don't stress, but if you need it you need it πŸ’…
  • inblob_len β€” literally just sizeof inblob. that's it. that's the field.
  • inblob β€” arbitrary input data. arbitrary!! go off, put whatever you want in there (within TSM_REPORT_INBLOB_MAX, iykyk) 🫢
  • service_provider β€” optional name of where to obtain the tsm report blob. like, who's your provider, bestie? where's the blob coming from?
  • service_guid β€” optional service-provider service guid to attest. yes it's a guid_t. yes it's real. go attest πŸ”₯
  • service_manifest_version β€” optional service-provider service manifest version requested. you're requesting a specific version, and that's valid of you ⭐
ngl, a lot of these are optional β€” but "optional" is not "ignore me", so treat them with the respect they deserve πŸ™ˆ

πŸ’€ SEE ALSO πŸ’€

go read these next, bestie, they're all part of the same lore drop:

  • Kernel file ./include/linux/tsm.h
  • struct tsm_report(9)
  • enum tsm_attr_index(9)
  • enum tsm_bin_attr_index(9)
  • struct tsm_report_ops(9)

and that's the page!! 🧚 from ./include/linux, stamped October 2026, living under the Kernel API Manual umbrella, filed forever under struct tsm_report_desc(9). slay, stay safe, read your headers πŸ’œπŸŒˆ

πŸ“¦ where this page comes from