TSPI_PCRCOMPOSITE_SETPCRVALUE(3)
π Tspi_PcrComposite_SetPcrValue β a TCG Software Stack Developer's Reference moment
okay bestie, so this is a page from the TCG Software Stack Developer's Reference, and we're talking about Tspi_PcrComposite_SetPcrValue(3). It's giving PCR composite energy, it's giving digest-setting, it's lowkey iconic. Let's get into it. π¦
β¨ NAME β¨
Tspi_PcrComposite_SetPcrValue β set the digest for a given PCR index inside a PCR composite object. fr fr that's the whole job. π
πΈ SYNOPSIS πΈ
First you gotta invite the headers to the party:
#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>
and then, the main character herself:
TSS_RESULT Tspi_PcrComposite_SetPcrValue(TSS_HPCRS hPcrComposite, UINT32 ulPcrIndex,
UINT32 ulPcrValueLength, BYTE* rgbPcrValue);
π DESCRIPTION π
So Tspi_PcrComposite_SetPcrValue sets the digest for a given PCR index inside the PCR composite object. That's it, that's the vibe. You hand it a PCR composite, you hand it an index, you hand it a value, and it sets it. no cap. β¨
π«Ά PARAMETERS π«Ά
hPcrComposite
Handle of the PCR composite object instance where a PCR value should be set. It's the lil container you're working inside, bestie. π
ulPcrIndex
This parameter indicates the index of the PCR to set. Which PCR are we setting? This one. periodt. π
ulPcrValueLength
The length (in bytes) of the rgbPcrValue parameter. Gotta tell it how big the thing is, or it simply won't know. π
rgbPcrValue
Pointer to memory containing the actual value which should be set for the PCR indicated by ulPcrIndex. It's the actual goods, the payload, the moment. π₯
π RETURN CODES π
Tspi_PcrComposite_SetPcrValue returns TSS_SUCCESS on success β slay β otherwise one of the following values are returned:
TSS_E_INVALID_HANDLEβ EitherhPcrCompositeorulPcrIndexis an invalid parameter.TSS_E_INTERNAL_ERRORβ An error occurred internal to the TSS. π
ngl if you're seeing TSS_E_INTERNAL_ERROR that's a TSS-internal situation, not a you situation. still, vibe check your inputs. π
π CONFORMING TO π
Tspi_PcrComposite_SetPcrValue conforms to the Trusted Computing Group Software Specification version 1.1 Golden. certified, official, ate. β
π SEE ALSO π
go read those too, they're the besties in this friend group. π¦
and that's the whole page, babe! π This one's from TSS 1.1, dated 2004-05-26 β vintage, honestly, but still serving. take care of your PCR composites and they'll take care of you. 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