diff options
author | Tadeusz Struk <tadeusz.struk@intel.com> | 2017-07-31 13:31:48 -0700 |
---|---|---|
committer | Tadeusz Struk <tadeusz.struk@intel.com> | 2017-08-08 14:16:59 -0700 |
commit | c7517aad6d272091eb0784799f51378be4816b7c (patch) | |
tree | aa31089352d0372d4042be5a7dcf44a55668a5da /include | |
parent | 464e66454e04bb9d6e104747cff3c40cda0ba868 (diff) | |
download | tpm2-tss-c7517aad6d272091eb0784799f51378be4816b7c.tar.gz |
Marshal: Add marshal/unmarshal for TPM2B types
Add marshalling and unmarshalling functions for TPM2B types as described
in TCG TSS 2.0 Marshalling/Unmarshalling API Specification
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/sapi/marshal.h | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/include/sapi/marshal.h b/include/sapi/marshal.h index 414bb297..23aa1a24 100644 --- a/include/sapi/marshal.h +++ b/include/sapi/marshal.h @@ -329,6 +329,160 @@ TPMA_STARTUP_CLEAR_Unmarshal ( size_t *offset, TPMA_STARTUP_CLEAR *dest); +TSS2_RC +TPM2B_DIGEST_Marshal ( + TPM2B_DIGEST const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_DIGEST_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_DIGEST *dest); + +TSS2_RC +TPM2B_NAME_Marshal ( + TPM2B_NAME const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_NAME_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_NAME *dest); + +TSS2_RC +TPM2B_MAX_NV_BUFFER_Marshal ( + TPM2B_MAX_NV_BUFFER const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_MAX_NV_BUFFER_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_MAX_NV_BUFFER *dest); + +TSS2_RC +TPM2B_SENSITIVE_DATA_Marshal ( + TPM2B_SENSITIVE_DATA const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_SENSITIVE_DATA_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_SENSITIVE_DATA *dest); + +TSS2_RC +TPM2B_ECC_PARAMETER_Marshal ( + TPM2B_ECC_PARAMETER const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_ECC_PARAMETER_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_ECC_PARAMETER *dest); + +TSS2_RC +TPM2B_PUBLIC_KEY_RSA_Marshal ( + TPM2B_PUBLIC_KEY_RSA const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_PUBLIC_KEY_RSA_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_PUBLIC_KEY_RSA *dest); + +TSS2_RC +TPM2B_PRIVATE_KEY_RSA_Marshal ( + TPM2B_PRIVATE_KEY_RSA const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_PRIVATE_KEY_RSA_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_PRIVATE_KEY_RSA *dest); + +TSS2_RC +TPM2B_CONTEXT_SENSITIVE_Marshal ( + TPM2B_CONTEXT_SENSITIVE const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_CONTEXT_SENSITIVE_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_CONTEXT_SENSITIVE *dest); + +TSS2_RC +TPM2B_CONTEXT_DATA_Marshal ( + TPM2B_CONTEXT_DATA const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_CONTEXT_DATA_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_CONTEXT_DATA *dest); + +TSS2_RC +TPM2B_DATA_Marshal ( + TPM2B_DATA const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_DATA_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_DATA *dest); + +TSS2_RC +TPM2B_SYM_KEY_Marshal ( + TPM2B_SYM_KEY const *src, + uint8_t buffer [], + size_t buffer_size, + size_t *offset); + +TSS2_RC +TPM2B_SYM_KEY_Unmarshal ( + uint8_t const buffer[], + size_t buffer_size, + size_t *offset, + TPM2B_SYM_KEY *dest); + #ifdef __cplusplus } #endif |