Tspi_TPM_SelfTestFull(3)

πŸ’– Tspi_TPM_SelfTestFull(3) πŸ’–

okay bestie, welcome to the Library Functions Manual β€” this one lives in the TCG Software Stack Developer's Reference and it's giving "your TPM is about to check itself before it wrecks itself" ✨


🌸 NAME 🌸

Tspi_TPM_SelfTestFull β€” run a self-test on literally every internal TPM function, no skips, no shortcuts, full send πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <tss/platform.h>
#include <tss/tcpa_defines.h>
#include <tss/tcpa_typedef.h>
#include <tss/tcpa_struct.h>
#include <tss/tss_typedef.h>
#include <tss/tss_structs.h>
#include <tss/tspi.h>

TSS_RESULT Tspi_TPM_SelfTestFull(TSS_HTPM hTPM);

so you gotta pull in all seven of those headers, then call it with one handle. that's the whole vibe 🫢


✨ DESCRIPTION ✨

Tspi_TPM_SelfTestFull assures that the TPM is functioning as designed. that's the whole assignment, and honestly? iconic.

here's the lore: for FIPS certification, crypto modules are required to test themselves before they are used, and this command is the one that fulfills that requirement. so it's not just a cute little check β€” it's a compliance thing, fr fr.

you can also just use this command to check the TPM whenever such a check is desired. feeling paranoid? valid! run it. main character energy.

⚠️ but bestie. listen. This command is not currently implemented. 😭 not me telling you the whole function is vaporware. it's documented, it's spec'd, it's just… not there yet. πŸ’€

πŸŽ€ PARAMETERS πŸŽ€

hTPM

the hTPM parameter is how you specify the handle of the TPM object on which the self-tests will be run. that's it, that's the whole param, she's simple and she knows it πŸ’œ


⭐ RETURN CODES ⭐

Tspi_TPM_GetStatus returns TSS_SUCCESS on success β€” otherwise one of these lil guys comes back at you:

  • TSS_E_INVALID_HANDLE β€” hTPM is not a valid handle. wrong handle, wrong vibe, denied πŸ™ˆ
  • TSS_E_INTERNAL_ERROR β€” an internal SW error has been detected. something inside went sideways, not your fault, lowkey tragic πŸ’€

🌈 CONFORMING TO 🌈

Tspi_TPM_SelfTestFull conforms to the Trusted Computing Group Software Specification version 1.1 Golden πŸ‘‘

(the "Golden" is doing so much heavy lifting and we love her for it)


πŸ‘‘ SEE ALSO πŸ‘‘

go read those too, they're the supporting cast and they ate πŸ’…


and that's a wrap on this one!! brought to you by TSS 1.1, dated 2004-05-25 β€” yes she's vintage, yes she still serves πŸ“ mwah, go forth and self-test (once it's actually implemented, that is) πŸ’–βœ¨