Tspi_Hash_GetHashValue(3)
β¨ Tspi_Hash_GetHashValue β¨
okay bestie, welcome to the Tspi_Hash_GetHashValue(3) page π it lives in the Library Functions Manual and it's part of the TCG Software Stack Developer's Reference, which is giving very "trusted computing, but make it fashion" π
πΈ NAME πΈ
Tspi_Hash_GetHashValue β get the current hash value of a hash object π¦
β¨ 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_Hash_GetHashValue(TSS_HHASH hHash, UINT32* pulHashValueLength, BYTE** prgbHashValue);
π DESCRIPTION π
so Tspi_Hash_GetHashValue gets the hash value of a hash object. that's the whole vibe. it just. hands you the hash. iconic behavior honestly π
but listen β memory gets allocated for the prgbHashValue data, so you must use Tspi_Context_FreeMemory to clean up after this function. no cap, no skipping the cleanup, we do not leave allocated memory lying around like laundry on the chair π§Ίπ
π«Ά PARAMETERS π«Ά
hHash
the handle to the hash object instance whose hash value should be signed. yes bestie it says signed, that's what it says, we don't question the source material π
pulHashValueLength
receives the length of the hash value data returned at the parameter prgbHashValue. it's the lil measuring tape πβ¨
prgbHashValue
receives a pointer to the hash value data. that's your actual hash, right there π
π₯ RETURN CODES π₯
Tspi_Hash_GetHashValue returns TSS_SUCCESS on success. otherwise one of the following values is returned:
TSS_E_INVALID_HANDLEβhHashis not a valid handle. not a valid handle, not invited to the party πTSS_E_INTERNAL_ERRORβ an internal SW error has been detected. something inside is going through it πTSS_E_BAD_PARAMETERβ one or more parameters is bad. bad parameter behavior, we don't stan πTSS_E_HASH_INVALID_LENGTHβ hash length is inconsistent with hash algorithm. the length and the algorithm are not matching each other's energy, it's giving mismatch πTSS_E_HASH_NO_DATAβ hash object has no internal hash value. nothing in there. empty. void. a vibe check that failed π³οΈ
π CONFORMING TO π
Tspi_Hash_GetHashValue conforms to the Trusted Computing Group Software Specification version 1.1 Golden β β yes, Golden, capital G, we respect the spec in this house π
π SEE ALSO π
Tspi_Hash_UpdateHashValue(3)Tspi_Hash_Sign(3)Tspi_Hash_VerifySignature(3)Tspi_Hash_SetHashValue(3)
ok that's the whole page bestie, go free your hash values responsibly π«Άβ¨
mwah π this was TSS 1.1, dated 2004-05-25 β she's vintage, she's a classic, she's still serving. periodt.
π¦ 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