1 /********************************************************************************/ 2 /* */ 3 /* Parameter Unmarshaling */ 4 /* Written by Ken Goldman */ 5 /* IBM Thomas J. Watson Research Center */ 6 /* $Id: Unmarshal12_fp.h 1285 2018-07-27 18:33:41Z kgoldman $ */ 7 /* */ 8 /* (c) Copyright IBM Corporation 2018 */ 9 /* */ 10 /* All rights reserved. */ 11 /* */ 12 /* Redistribution and use in source and binary forms, with or without */ 13 /* modification, are permitted provided that the following conditions are */ 14 /* met: */ 15 /* */ 16 /* Redistributions of source code must retain the above copyright notice, */ 17 /* this list of conditions and the following disclaimer. */ 18 /* */ 19 /* Redistributions in binary form must reproduce the above copyright */ 20 /* notice, this list of conditions and the following disclaimer in the */ 21 /* documentation and/or other materials provided with the distribution. */ 22 /* */ 23 /* Neither the names of the IBM Corporation nor the names of its */ 24 /* contributors may be used to endorse or promote products derived from */ 25 /* this software without specific prior written permission. */ 26 /* */ 27 /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ 28 /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ 29 /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ 30 /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ 31 /* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ 32 /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ 33 /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ 34 /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ 35 /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ 36 /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ 37 /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ 38 /********************************************************************************/ 39 40 #ifndef UNMARSHAL12_FP_H 41 #define UNMARSHAL12_FP_H 42 43 #include "TPM_Types.h" 44 #include "tpmtypes12.h" 45 #include <ibmtss/tpmstructures12.h> 46 47 #ifdef __cplusplus 48 extern "C" { 49 #endif 50 51 TPM_RC 52 TSS_TPM_STARTUP_TYPE_Unmarshalu(TPM_STARTUP_TYPE *target, BYTE **buffer, uint32_t *size); 53 TPM_RC 54 TSS_TPM_VERSION_Unmarshalu(TPM_VERSION *target, BYTE **buffer, uint32_t *size); 55 TPM_RC 56 TSS_TPM_TAG_Unmarshalu(TPM_TAG *target, BYTE **buffer, uint32_t *size); 57 TPM_RC 58 TSS_TPM_PCR_SELECTION_Unmarshalu(TPM_PCR_SELECTION *target, BYTE **buffer, uint32_t *size); 59 TPM_RC 60 TSS_TPM4B_TPM_PCR_INFO_LONG_Unmarshalu(TPM_PCR_INFO_LONG *target, BYTE **buffer, uint32_t *size); 61 TPM_RC 62 TSS_TPM_PCR_INFO_LONG_Unmarshalu(TPM_PCR_INFO_LONG *target, BYTE **buffer, uint32_t *size); 63 TPM_RC 64 TSS_TPM_PCR_INFO_SHORT_Unmarshalu(TPM_PCR_INFO_SHORT *target, BYTE **buffer, uint32_t *size); 65 TPM_RC 66 TSS_TPM_SYMMETRIC_KEY_Unmarshalu(TPM_SYMMETRIC_KEY *target, BYTE **buffer, uint32_t *size); 67 TPM_RC 68 TSS_TPM_RSA_KEY_PARMS_Unmarshalu(TPM_RSA_KEY_PARMS *target, BYTE **buffer, uint32_t *size); 69 TPM_RC 70 TSS_TPMU_PARMS_Unmarshalu(TPMU_PARMS *target, BYTE **buffer, uint32_t *size, uint32_t selector); 71 TPM_RC 72 TSS_TPM4B_TPMU_PARMS_Unmarshalu(TPMU_PARMS *target, BYTE **buffer, uint32_t *size, uint32_t selector); 73 TPM_RC 74 TSS_TPM_KEY_PARMS_Unmarshalu(TPM_KEY_PARMS *target, BYTE **buffer, uint32_t *size); 75 TPM_RC 76 TSS_TPM_KEY12_Unmarshalu(TPM_KEY12 *target, BYTE **buffer, uint32_t *size); 77 TPM_RC 78 TSS_TPM_STORE_PUBKEY_Unmarshalu(TPM_STORE_PUBKEY *target, BYTE **buffer, uint32_t *size); 79 TPM_RC 80 TSS_TPM_PUBKEY_Unmarshalu(TPM_PUBKEY *target, BYTE **buffer, uint32_t *size); 81 TPM_RC 82 TSS_TPM_NV_ATTRIBUTES_Unmarshalu(TPM_NV_ATTRIBUTES *target, BYTE **buffer, uint32_t *size); 83 TPM_RC 84 TSS_TPM_NV_DATA_PUBLIC_Unmarshalu(TPM_NV_DATA_PUBLIC *target, BYTE **buffer, uint32_t *size); 85 TPM_RC 86 TSS_TPM_CAP_VERSION_INFO_Unmarshalu(TPM_CAP_VERSION_INFO *target, BYTE **buffer, uint32_t *size); 87 TPM_RC 88 TSS_TPM_DA_INFO_Unmarshalu(TPM_DA_INFO *target, BYTE **buffer, uint32_t *size); 89 TPM_RC 90 TSS_TPM_DA_INFO_LIMITED_Unmarshalu(TPM_DA_INFO_LIMITED *target, BYTE **buffer, uint32_t *size); 91 TPM_RC 92 TSS_TPM_DA_ACTION_TYPE_Unmarshalu(TPM_DA_ACTION_TYPE *target, BYTE **buffer, uint32_t *size); 93 94 #endif 95