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βhTPMis 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 π
Tspi_TPM_CertifySelfTest(3)Tspi_TPM_GetTestResults(3)
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) πβ¨
π¦ where this page comes from
- debian bookworm: libtspi-dev 0.3.15-0.3 Β· BSD-3-Clause
- debian trixie: libtspi-dev 0.3.15-0.4 Β· BSD-3-Clause
- epel 10: trousers-devel 0.3.15-11.el10_0 Β· BSD
- epel 9: trousers-devel 0.3.15-5.el9 Β· BSD
- fedora 43: trousers-devel 0.3.15-15.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-15.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-16.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-16.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: trousers-devel 0.3.15-17.fc44 Β· LicenseRef-Callaway-BSD
- fedora 44: trousers-devel 0.3.15-17.fc44 Β· LicenseRef-Callaway-BSD
- nixos 26.05: trousers 0.3.15
- nixpkgs unstable: netbsd-source 11.0
- nixpkgs unstable: trousers 0.3.15
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- ubuntu jammy: libtspi-dev 0.3.15-0.2 Β· BSD-3-Clause
- ubuntu noble: libtspi-dev 0.3.15-0.3build2 Β· BSD-3-Clause
- ubuntu questing: libtspi-dev 0.3.15-0.4
- ubuntu resolute: libtspi-dev 0.3.15-1 Β· BSD-3-Clause
- ubuntu stonking: libtspi-dev 0.3.15-1ubuntu2 Β· BSD-3-Clause
- Copyright (C) 2004 International Business Machines Corporation
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms