Tspi_TPM_L...ancePubKey(3)
β¨ Tspi_TPM_L...ancePubKey(3) β¨
okay so bestie, welcome to the Library Functions Manual π this one lives in the TCG Software Stack Developer's Reference and it's genuinely such a niche little baddie. sit down, grab a strawberry π, we're loading a maintenance public key into a TPM and we're doing it correctly.
πΈ NAME πΈ
Tspi_TPM_LoadMaintenancePubKey β load the public maintenance key into the TPM π
π 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_LoadMaintenancePubKey(TSS_HTPM hTPM, TSS_HKEY hMaintenanceKey,
TSS_VALIDATION* pValidationData);
like. look at that signature. seven includes and one function call. she's low maintenance (literally) π
π¦ DESCRIPTION π¦
So Tspi_TPM_LoadMaintenancePubKey loads the public maintenance key into the TPM. that's the whole vibe.
but here's the tea, and it's important tea: the maintenance key can only be loaded once. any subsequent calls to this function will fail. one and done, no re-runs, no second chances, it's giving one-shot main character energy π
Also, the key information for loading the maintenance public key must be set in the key object by Tspi_SetAttribData before this method is called. set it up first or don't come at her at all π
And if pValidationData is NULL? then the TSS service provider proofs the digest got internally from the TPM. otherwise, the caller has to proof the digest by its own. yes bestie, you're on your own for that one, good luck, slay π«Ά
π PARAMETERS π
π hTPM
Handle of the TPM object.
π hMaintenanceKey
Handle of the maintenance key object.
π pValidationData
Validation data structure. so like, two moods:
- [IN] β provide
externalDatainformation required to compute the signature. - [OUT] β on successful completion of the ocmmand, the structure provides a buffer containing the validation data and a buffer containing the data the validation data was computed from.
β RETURN CODES β
Tspi_TPM_LoadMaintenancePubKey returns TSS_SUCCESS on success, otherwise one of the following values are returned:
TSS_E_INVALID_HANDLEβhTPMorhMaintenanceKeyis not a valid handle.TSS_E_INTERNAL_ERRORβ an internal SW error has been detected.TSS_E_BAD_PARAMETERβ one or more of the parameters is incorrect.TSS_E_NOTIMPLβ the command is not implemented.
π CONFORMING TO π
Tspi_TPM_LoadMaintenancePubKey conforms to the Trusted Computing Group Software Specification version 1.1 Golden. no cap, that's the standard fr fr β¨
π₯ SEE ALSO π₯
Tspi_TPM_CheckMaintenancePubKey(3)Tspi_TPM_KillMaintenanceFeature(3)Tspi_TPM_CreateMaintenanceArchive(3)
and that's the page!! π this whole thing is TSS 1.1, dated 2004-05-26, and it goes by Tspi_TPM_L...ancePubKey(3) β yes the name is abbreviated with literal dots, iconic behaviour honestly, she contains multitudes. go load that key (once). mwah ππ
π¦ 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