1*4f2df630SAndroid Build Coastguard Worker // Copyright 2019 The ChromiumOS Authors 2*4f2df630SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*4f2df630SAndroid Build Coastguard Worker // found in the LICENSE file. 4*4f2df630SAndroid Build Coastguard Worker 5*4f2df630SAndroid Build Coastguard Worker // THIS CODE IS GENERATED - DO NOT MODIFY! 6*4f2df630SAndroid Build Coastguard Worker 7*4f2df630SAndroid Build Coastguard Worker #ifndef TRUNKS_TPM_GENERATED_H_ 8*4f2df630SAndroid Build Coastguard Worker #define TRUNKS_TPM_GENERATED_H_ 9*4f2df630SAndroid Build Coastguard Worker 10*4f2df630SAndroid Build Coastguard Worker #include <string> 11*4f2df630SAndroid Build Coastguard Worker 12*4f2df630SAndroid Build Coastguard Worker #include "callback.h" 13*4f2df630SAndroid Build Coastguard Worker #include "hex.h" 14*4f2df630SAndroid Build Coastguard Worker #include "trunks_export.h" 15*4f2df630SAndroid Build Coastguard Worker 16*4f2df630SAndroid Build Coastguard Worker // Mini-libchrome: reproduces just the parts of libchrome that this file needs. 17*4f2df630SAndroid Build Coastguard Worker // Embedded in an anonymous namespace so we're not polluting base. 18*4f2df630SAndroid Build Coastguard Worker namespace { 19*4f2df630SAndroid Build Coastguard Worker namespace base { 20*4f2df630SAndroid Build Coastguard Worker using trunks::BindOnce; 21*4f2df630SAndroid Build Coastguard Worker using trunks::HexEncode; 22*4f2df630SAndroid Build Coastguard Worker using trunks::OnceCallback; 23*4f2df630SAndroid Build Coastguard Worker } 24*4f2df630SAndroid Build Coastguard Worker } 25*4f2df630SAndroid Build Coastguard Worker 26*4f2df630SAndroid Build Coastguard Worker namespace trunks { 27*4f2df630SAndroid Build Coastguard Worker 28*4f2df630SAndroid Build Coastguard Worker class AuthorizationDelegate; 29*4f2df630SAndroid Build Coastguard Worker class CommandTransceiver; 30*4f2df630SAndroid Build Coastguard Worker 31*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA1_DIGEST_SIZE) 32*4f2df630SAndroid Build Coastguard Worker #define SHA1_DIGEST_SIZE 20 33*4f2df630SAndroid Build Coastguard Worker #endif 34*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA1_BLOCK_SIZE) 35*4f2df630SAndroid Build Coastguard Worker #define SHA1_BLOCK_SIZE 64 36*4f2df630SAndroid Build Coastguard Worker #endif 37*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA1_DER_SIZE) 38*4f2df630SAndroid Build Coastguard Worker #define SHA1_DER_SIZE 15 39*4f2df630SAndroid Build Coastguard Worker #endif 40*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA1_DER) 41*4f2df630SAndroid Build Coastguard Worker #define SHA1_DER \ 42*4f2df630SAndroid Build Coastguard Worker { \ 43*4f2df630SAndroid Build Coastguard Worker 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1A, 0x05, \ 44*4f2df630SAndroid Build Coastguard Worker 0x00, 0x04, 0x14 \ 45*4f2df630SAndroid Build Coastguard Worker } 46*4f2df630SAndroid Build Coastguard Worker #endif 47*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA256_DIGEST_SIZE) 48*4f2df630SAndroid Build Coastguard Worker #define SHA256_DIGEST_SIZE 32 49*4f2df630SAndroid Build Coastguard Worker #endif 50*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA256_BLOCK_SIZE) 51*4f2df630SAndroid Build Coastguard Worker #define SHA256_BLOCK_SIZE 64 52*4f2df630SAndroid Build Coastguard Worker #endif 53*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA256_DER_SIZE) 54*4f2df630SAndroid Build Coastguard Worker #define SHA256_DER_SIZE 19 55*4f2df630SAndroid Build Coastguard Worker #endif 56*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA256_DER) 57*4f2df630SAndroid Build Coastguard Worker #define SHA256_DER \ 58*4f2df630SAndroid Build Coastguard Worker { \ 59*4f2df630SAndroid Build Coastguard Worker 0x30, 0x31, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, \ 60*4f2df630SAndroid Build Coastguard Worker 0x04, 0x02, 0x01, 0x05, 0x00, 0x04, 0x20 \ 61*4f2df630SAndroid Build Coastguard Worker } 62*4f2df630SAndroid Build Coastguard Worker #endif 63*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA384_DIGEST_SIZE) 64*4f2df630SAndroid Build Coastguard Worker #define SHA384_DIGEST_SIZE 48 65*4f2df630SAndroid Build Coastguard Worker #endif 66*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA384_BLOCK_SIZE) 67*4f2df630SAndroid Build Coastguard Worker #define SHA384_BLOCK_SIZE 128 68*4f2df630SAndroid Build Coastguard Worker #endif 69*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA384_DER_SIZE) 70*4f2df630SAndroid Build Coastguard Worker #define SHA384_DER_SIZE 19 71*4f2df630SAndroid Build Coastguard Worker #endif 72*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA384_DER) 73*4f2df630SAndroid Build Coastguard Worker #define SHA384_DER \ 74*4f2df630SAndroid Build Coastguard Worker { \ 75*4f2df630SAndroid Build Coastguard Worker 0x30, 0x41, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, \ 76*4f2df630SAndroid Build Coastguard Worker 0x04, 0x02, 0x02, 0x05, 0x00, 0x04, 0x30 \ 77*4f2df630SAndroid Build Coastguard Worker } 78*4f2df630SAndroid Build Coastguard Worker #endif 79*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA512_DIGEST_SIZE) 80*4f2df630SAndroid Build Coastguard Worker #define SHA512_DIGEST_SIZE 64 81*4f2df630SAndroid Build Coastguard Worker #endif 82*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA512_BLOCK_SIZE) 83*4f2df630SAndroid Build Coastguard Worker #define SHA512_BLOCK_SIZE 128 84*4f2df630SAndroid Build Coastguard Worker #endif 85*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA512_DER_SIZE) 86*4f2df630SAndroid Build Coastguard Worker #define SHA512_DER_SIZE 19 87*4f2df630SAndroid Build Coastguard Worker #endif 88*4f2df630SAndroid Build Coastguard Worker #if !defined(SHA512_DER) 89*4f2df630SAndroid Build Coastguard Worker #define SHA512_DER \ 90*4f2df630SAndroid Build Coastguard Worker { \ 91*4f2df630SAndroid Build Coastguard Worker 0x30, 0x51, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, \ 92*4f2df630SAndroid Build Coastguard Worker 0x04, 0x02, 0x03, 0x05, 0x00, 0x04, 0x40 \ 93*4f2df630SAndroid Build Coastguard Worker } 94*4f2df630SAndroid Build Coastguard Worker #endif 95*4f2df630SAndroid Build Coastguard Worker #if !defined(SM3_256_DIGEST_SIZE) 96*4f2df630SAndroid Build Coastguard Worker #define SM3_256_DIGEST_SIZE 32 97*4f2df630SAndroid Build Coastguard Worker #endif 98*4f2df630SAndroid Build Coastguard Worker #if !defined(SM3_256_BLOCK_SIZE) 99*4f2df630SAndroid Build Coastguard Worker #define SM3_256_BLOCK_SIZE 64 100*4f2df630SAndroid Build Coastguard Worker #endif 101*4f2df630SAndroid Build Coastguard Worker #if !defined(SM3_256_DER_SIZE) 102*4f2df630SAndroid Build Coastguard Worker #define SM3_256_DER_SIZE 18 103*4f2df630SAndroid Build Coastguard Worker #endif 104*4f2df630SAndroid Build Coastguard Worker #if !defined(SM3_256_DER) 105*4f2df630SAndroid Build Coastguard Worker #define SM3_256_DER \ 106*4f2df630SAndroid Build Coastguard Worker { \ 107*4f2df630SAndroid Build Coastguard Worker 0x30, 0x30, 0x30, 0x0c, 0x06, 0x08, 0x2a, 0x81, 0x1c, 0x81, 0x45, 0x01, \ 108*4f2df630SAndroid Build Coastguard Worker 0x83, 0x11, 0x05, 0x00, 0x04, 0x20 \ 109*4f2df630SAndroid Build Coastguard Worker } 110*4f2df630SAndroid Build Coastguard Worker #endif 111*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SESSION_NUMBER) 112*4f2df630SAndroid Build Coastguard Worker #define MAX_SESSION_NUMBER 3 113*4f2df630SAndroid Build Coastguard Worker #endif 114*4f2df630SAndroid Build Coastguard Worker #if !defined(YES) 115*4f2df630SAndroid Build Coastguard Worker #define YES 1 116*4f2df630SAndroid Build Coastguard Worker #endif 117*4f2df630SAndroid Build Coastguard Worker #if !defined(NO) 118*4f2df630SAndroid Build Coastguard Worker #define NO 0 119*4f2df630SAndroid Build Coastguard Worker #endif 120*4f2df630SAndroid Build Coastguard Worker #if !defined(TRUE) 121*4f2df630SAndroid Build Coastguard Worker #define TRUE 1 122*4f2df630SAndroid Build Coastguard Worker #endif 123*4f2df630SAndroid Build Coastguard Worker #if !defined(FALSE) 124*4f2df630SAndroid Build Coastguard Worker #define FALSE 0 125*4f2df630SAndroid Build Coastguard Worker #endif 126*4f2df630SAndroid Build Coastguard Worker #if !defined(SET) 127*4f2df630SAndroid Build Coastguard Worker #define SET 1 128*4f2df630SAndroid Build Coastguard Worker #endif 129*4f2df630SAndroid Build Coastguard Worker #if !defined(CLEAR) 130*4f2df630SAndroid Build Coastguard Worker #define CLEAR 0 131*4f2df630SAndroid Build Coastguard Worker #endif 132*4f2df630SAndroid Build Coastguard Worker #if !defined(BIG_ENDIAN_TPM) 133*4f2df630SAndroid Build Coastguard Worker #define BIG_ENDIAN_TPM NO 134*4f2df630SAndroid Build Coastguard Worker #endif 135*4f2df630SAndroid Build Coastguard Worker #if !defined(LITTLE_ENDIAN_TPM) 136*4f2df630SAndroid Build Coastguard Worker #define LITTLE_ENDIAN_TPM YES 137*4f2df630SAndroid Build Coastguard Worker #endif 138*4f2df630SAndroid Build Coastguard Worker #if !defined(NO_AUTO_ALIGN) 139*4f2df630SAndroid Build Coastguard Worker #define NO_AUTO_ALIGN NO 140*4f2df630SAndroid Build Coastguard Worker #endif 141*4f2df630SAndroid Build Coastguard Worker #if !defined(RSA_KEY_SIZES_BITS) 142*4f2df630SAndroid Build Coastguard Worker #define RSA_KEY_SIZES_BITS \ 143*4f2df630SAndroid Build Coastguard Worker { 1024, 2048 } 144*4f2df630SAndroid Build Coastguard Worker #endif 145*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_RSA_KEY_BITS) 146*4f2df630SAndroid Build Coastguard Worker #define MAX_RSA_KEY_BITS 2048 147*4f2df630SAndroid Build Coastguard Worker #endif 148*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_RSA_KEY_BYTES) 149*4f2df630SAndroid Build Coastguard Worker #define MAX_RSA_KEY_BYTES ((MAX_RSA_KEY_BITS + 7) / 8) 150*4f2df630SAndroid Build Coastguard Worker #endif 151*4f2df630SAndroid Build Coastguard Worker #if !defined(ECC_CURVES) 152*4f2df630SAndroid Build Coastguard Worker #define ECC_CURVES \ 153*4f2df630SAndroid Build Coastguard Worker { \ 154*4f2df630SAndroid Build Coastguard Worker trunks::TPM_ECC_NIST_P256, trunks::TPM_ECC_BN_P256, \ 155*4f2df630SAndroid Build Coastguard Worker trunks::TPM_ECC_SM2_P256 \ 156*4f2df630SAndroid Build Coastguard Worker } 157*4f2df630SAndroid Build Coastguard Worker #endif 158*4f2df630SAndroid Build Coastguard Worker #if !defined(ECC_KEY_SIZES_BITS) 159*4f2df630SAndroid Build Coastguard Worker #define ECC_KEY_SIZES_BITS \ 160*4f2df630SAndroid Build Coastguard Worker { 256 } 161*4f2df630SAndroid Build Coastguard Worker #endif 162*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ECC_KEY_BITS) 163*4f2df630SAndroid Build Coastguard Worker #define MAX_ECC_KEY_BITS 256 164*4f2df630SAndroid Build Coastguard Worker #endif 165*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ECC_KEY_BYTES) 166*4f2df630SAndroid Build Coastguard Worker #define MAX_ECC_KEY_BYTES ((MAX_ECC_KEY_BITS + 7) / 8) 167*4f2df630SAndroid Build Coastguard Worker #endif 168*4f2df630SAndroid Build Coastguard Worker #if !defined(AES_KEY_SIZES_BITS) 169*4f2df630SAndroid Build Coastguard Worker #define AES_KEY_SIZES_BITS \ 170*4f2df630SAndroid Build Coastguard Worker { 128 } 171*4f2df630SAndroid Build Coastguard Worker #endif 172*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_AES_KEY_BITS) 173*4f2df630SAndroid Build Coastguard Worker #define MAX_AES_KEY_BITS 128 174*4f2df630SAndroid Build Coastguard Worker #endif 175*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_AES_BLOCK_SIZE_BYTES) 176*4f2df630SAndroid Build Coastguard Worker #define MAX_AES_BLOCK_SIZE_BYTES 16 177*4f2df630SAndroid Build Coastguard Worker #endif 178*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_AES_KEY_BYTES) 179*4f2df630SAndroid Build Coastguard Worker #define MAX_AES_KEY_BYTES ((MAX_AES_KEY_BITS + 7) / 8) 180*4f2df630SAndroid Build Coastguard Worker #endif 181*4f2df630SAndroid Build Coastguard Worker #if !defined(SM4_KEY_SIZES_BITS) 182*4f2df630SAndroid Build Coastguard Worker #define SM4_KEY_SIZES_BITS \ 183*4f2df630SAndroid Build Coastguard Worker { 128 } 184*4f2df630SAndroid Build Coastguard Worker #endif 185*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SM4_KEY_BITS) 186*4f2df630SAndroid Build Coastguard Worker #define MAX_SM4_KEY_BITS 128 187*4f2df630SAndroid Build Coastguard Worker #endif 188*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SM4_BLOCK_SIZE_BYTES) 189*4f2df630SAndroid Build Coastguard Worker #define MAX_SM4_BLOCK_SIZE_BYTES 16 190*4f2df630SAndroid Build Coastguard Worker #endif 191*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SM4_KEY_BYTES) 192*4f2df630SAndroid Build Coastguard Worker #define MAX_SM4_KEY_BYTES ((MAX_SM4_KEY_BITS + 7) / 8) 193*4f2df630SAndroid Build Coastguard Worker #endif 194*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SYM_KEY_BITS) 195*4f2df630SAndroid Build Coastguard Worker #define MAX_SYM_KEY_BITS MAX_AES_KEY_BITS 196*4f2df630SAndroid Build Coastguard Worker #endif 197*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SYM_KEY_BYTES) 198*4f2df630SAndroid Build Coastguard Worker #define MAX_SYM_KEY_BYTES MAX_AES_KEY_BYTES 199*4f2df630SAndroid Build Coastguard Worker #endif 200*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SYM_BLOCK_SIZE) 201*4f2df630SAndroid Build Coastguard Worker #define MAX_SYM_BLOCK_SIZE MAX_AES_BLOCK_SIZE_BYTES 202*4f2df630SAndroid Build Coastguard Worker #endif 203*4f2df630SAndroid Build Coastguard Worker #if !defined(FIELD_UPGRADE_IMPLEMENTED) 204*4f2df630SAndroid Build Coastguard Worker #define FIELD_UPGRADE_IMPLEMENTED NO 205*4f2df630SAndroid Build Coastguard Worker #endif 206*4f2df630SAndroid Build Coastguard Worker #if !defined(BSIZE) 207*4f2df630SAndroid Build Coastguard Worker #define BSIZE trunks::UINT16 208*4f2df630SAndroid Build Coastguard Worker #endif 209*4f2df630SAndroid Build Coastguard Worker #if !defined(BUFFER_ALIGNMENT) 210*4f2df630SAndroid Build Coastguard Worker #define BUFFER_ALIGNMENT 4 211*4f2df630SAndroid Build Coastguard Worker #endif 212*4f2df630SAndroid Build Coastguard Worker #if !defined(IMPLEMENTATION_PCR) 213*4f2df630SAndroid Build Coastguard Worker #define IMPLEMENTATION_PCR 24 214*4f2df630SAndroid Build Coastguard Worker #endif 215*4f2df630SAndroid Build Coastguard Worker #if !defined(PLATFORM_PCR) 216*4f2df630SAndroid Build Coastguard Worker #define PLATFORM_PCR 24 217*4f2df630SAndroid Build Coastguard Worker #endif 218*4f2df630SAndroid Build Coastguard Worker #if !defined(DRTM_PCR) 219*4f2df630SAndroid Build Coastguard Worker #define DRTM_PCR 17 220*4f2df630SAndroid Build Coastguard Worker #endif 221*4f2df630SAndroid Build Coastguard Worker #if !defined(HCRTM_PCR) 222*4f2df630SAndroid Build Coastguard Worker #define HCRTM_PCR 0 223*4f2df630SAndroid Build Coastguard Worker #endif 224*4f2df630SAndroid Build Coastguard Worker #if !defined(NUM_LOCALITIES) 225*4f2df630SAndroid Build Coastguard Worker #define NUM_LOCALITIES 5 226*4f2df630SAndroid Build Coastguard Worker #endif 227*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_HANDLE_NUM) 228*4f2df630SAndroid Build Coastguard Worker #define MAX_HANDLE_NUM 3 229*4f2df630SAndroid Build Coastguard Worker #endif 230*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ACTIVE_SESSIONS) 231*4f2df630SAndroid Build Coastguard Worker #define MAX_ACTIVE_SESSIONS 64 232*4f2df630SAndroid Build Coastguard Worker #endif 233*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_SLOT) 234*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_SLOT trunks::UINT16 235*4f2df630SAndroid Build Coastguard Worker #endif 236*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_COUNTER) 237*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_COUNTER trunks::UINT64 238*4f2df630SAndroid Build Coastguard Worker #endif 239*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_LOADED_SESSIONS) 240*4f2df630SAndroid Build Coastguard Worker #define MAX_LOADED_SESSIONS 3 241*4f2df630SAndroid Build Coastguard Worker #endif 242*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SESSION_NUM) 243*4f2df630SAndroid Build Coastguard Worker #define MAX_SESSION_NUM 3 244*4f2df630SAndroid Build Coastguard Worker #endif 245*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_LOADED_OBJECTS) 246*4f2df630SAndroid Build Coastguard Worker #define MAX_LOADED_OBJECTS 3 247*4f2df630SAndroid Build Coastguard Worker #endif 248*4f2df630SAndroid Build Coastguard Worker #if !defined(MIN_EVICT_OBJECTS) 249*4f2df630SAndroid Build Coastguard Worker #define MIN_EVICT_OBJECTS 2 250*4f2df630SAndroid Build Coastguard Worker #endif 251*4f2df630SAndroid Build Coastguard Worker #if !defined(PCR_SELECT_MIN) 252*4f2df630SAndroid Build Coastguard Worker #define PCR_SELECT_MIN ((PLATFORM_PCR + 7) / 8) 253*4f2df630SAndroid Build Coastguard Worker #endif 254*4f2df630SAndroid Build Coastguard Worker #if !defined(PCR_SELECT_MAX) 255*4f2df630SAndroid Build Coastguard Worker #define PCR_SELECT_MAX ((IMPLEMENTATION_PCR + 7) / 8) 256*4f2df630SAndroid Build Coastguard Worker #endif 257*4f2df630SAndroid Build Coastguard Worker #if !defined(NUM_POLICY_PCR_GROUP) 258*4f2df630SAndroid Build Coastguard Worker #define NUM_POLICY_PCR_GROUP 1 259*4f2df630SAndroid Build Coastguard Worker #endif 260*4f2df630SAndroid Build Coastguard Worker #if !defined(NUM_AUTHVALUE_PCR_GROUP) 261*4f2df630SAndroid Build Coastguard Worker #define NUM_AUTHVALUE_PCR_GROUP 1 262*4f2df630SAndroid Build Coastguard Worker #endif 263*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CONTEXT_SIZE) 264*4f2df630SAndroid Build Coastguard Worker #define MAX_CONTEXT_SIZE 4000 265*4f2df630SAndroid Build Coastguard Worker #endif 266*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_DIGEST_BUFFER) 267*4f2df630SAndroid Build Coastguard Worker #define MAX_DIGEST_BUFFER 1024 268*4f2df630SAndroid Build Coastguard Worker #endif 269*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_NV_INDEX_SIZE) 270*4f2df630SAndroid Build Coastguard Worker #define MAX_NV_INDEX_SIZE 2048 271*4f2df630SAndroid Build Coastguard Worker #endif 272*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_NV_BUFFER_SIZE) 273*4f2df630SAndroid Build Coastguard Worker #define MAX_NV_BUFFER_SIZE 1024 274*4f2df630SAndroid Build Coastguard Worker #endif 275*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_BUFFER) 276*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_BUFFER 1024 277*4f2df630SAndroid Build Coastguard Worker #endif 278*4f2df630SAndroid Build Coastguard Worker #if !defined(NV_MEMORY_SIZE) 279*4f2df630SAndroid Build Coastguard Worker #define NV_MEMORY_SIZE 16384 280*4f2df630SAndroid Build Coastguard Worker #endif 281*4f2df630SAndroid Build Coastguard Worker #if !defined(NUM_STATIC_PCR) 282*4f2df630SAndroid Build Coastguard Worker #define NUM_STATIC_PCR 16 283*4f2df630SAndroid Build Coastguard Worker #endif 284*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ALG_LIST_SIZE) 285*4f2df630SAndroid Build Coastguard Worker #define MAX_ALG_LIST_SIZE 64 286*4f2df630SAndroid Build Coastguard Worker #endif 287*4f2df630SAndroid Build Coastguard Worker #if !defined(TIMER_PRESCALE) 288*4f2df630SAndroid Build Coastguard Worker #define TIMER_PRESCALE 100000 289*4f2df630SAndroid Build Coastguard Worker #endif 290*4f2df630SAndroid Build Coastguard Worker #if !defined(PRIMARY_SEED_SIZE) 291*4f2df630SAndroid Build Coastguard Worker #define PRIMARY_SEED_SIZE 32 292*4f2df630SAndroid Build Coastguard Worker #endif 293*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_ENCRYPT_ALG) 294*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_ENCRYPT_ALG trunks::TPM_ALG_AES 295*4f2df630SAndroid Build Coastguard Worker #endif 296*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_ENCRYPT_KEY_BITS) 297*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_ENCRYPT_KEY_BITS MAX_SYM_KEY_BITS 298*4f2df630SAndroid Build Coastguard Worker #endif 299*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_ENCRYPT_KEY_BYTES) 300*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_ENCRYPT_KEY_BYTES ((CONTEXT_ENCRYPT_KEY_BITS + 7) / 8) 301*4f2df630SAndroid Build Coastguard Worker #endif 302*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_INTEGRITY_HASH_ALG) 303*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_INTEGRITY_HASH_ALG trunks::TPM_ALG_SHA256 304*4f2df630SAndroid Build Coastguard Worker #endif 305*4f2df630SAndroid Build Coastguard Worker #if !defined(CONTEXT_INTEGRITY_HASH_SIZE) 306*4f2df630SAndroid Build Coastguard Worker #define CONTEXT_INTEGRITY_HASH_SIZE SHA256_DIGEST_SIZE 307*4f2df630SAndroid Build Coastguard Worker #endif 308*4f2df630SAndroid Build Coastguard Worker #if !defined(PROOF_SIZE) 309*4f2df630SAndroid Build Coastguard Worker #define PROOF_SIZE CONTEXT_INTEGRITY_HASH_SIZE 310*4f2df630SAndroid Build Coastguard Worker #endif 311*4f2df630SAndroid Build Coastguard Worker #if !defined(NV_CLOCK_UPDATE_INTERVAL) 312*4f2df630SAndroid Build Coastguard Worker #define NV_CLOCK_UPDATE_INTERVAL 12 313*4f2df630SAndroid Build Coastguard Worker #endif 314*4f2df630SAndroid Build Coastguard Worker #if !defined(NUM_POLICY_PCR) 315*4f2df630SAndroid Build Coastguard Worker #define NUM_POLICY_PCR 1 316*4f2df630SAndroid Build Coastguard Worker #endif 317*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_COMMAND_SIZE) 318*4f2df630SAndroid Build Coastguard Worker #define MAX_COMMAND_SIZE 4096 319*4f2df630SAndroid Build Coastguard Worker #endif 320*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_RESPONSE_SIZE) 321*4f2df630SAndroid Build Coastguard Worker #define MAX_RESPONSE_SIZE 4096 322*4f2df630SAndroid Build Coastguard Worker #endif 323*4f2df630SAndroid Build Coastguard Worker #if !defined(ORDERLY_BITS) 324*4f2df630SAndroid Build Coastguard Worker #define ORDERLY_BITS 8 325*4f2df630SAndroid Build Coastguard Worker #endif 326*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ORDERLY_COUNT) 327*4f2df630SAndroid Build Coastguard Worker #define MAX_ORDERLY_COUNT ((1 << ORDERLY_BITS) - 1) 328*4f2df630SAndroid Build Coastguard Worker #endif 329*4f2df630SAndroid Build Coastguard Worker #if !defined(ALG_ID_FIRST) 330*4f2df630SAndroid Build Coastguard Worker #define ALG_ID_FIRST trunks::TPM_ALG_FIRST 331*4f2df630SAndroid Build Coastguard Worker #endif 332*4f2df630SAndroid Build Coastguard Worker #if !defined(ALG_ID_LAST) 333*4f2df630SAndroid Build Coastguard Worker #define ALG_ID_LAST trunks::TPM_ALG_LAST 334*4f2df630SAndroid Build Coastguard Worker #endif 335*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_SYM_DATA) 336*4f2df630SAndroid Build Coastguard Worker #define MAX_SYM_DATA 128 337*4f2df630SAndroid Build Coastguard Worker #endif 338*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_RNG_ENTROPY_SIZE) 339*4f2df630SAndroid Build Coastguard Worker #define MAX_RNG_ENTROPY_SIZE 64 340*4f2df630SAndroid Build Coastguard Worker #endif 341*4f2df630SAndroid Build Coastguard Worker #if !defined(RAM_INDEX_SPACE) 342*4f2df630SAndroid Build Coastguard Worker #define RAM_INDEX_SPACE 512 343*4f2df630SAndroid Build Coastguard Worker #endif 344*4f2df630SAndroid Build Coastguard Worker #if !defined(RSA_DEFAULT_PUBLIC_EXPONENT) 345*4f2df630SAndroid Build Coastguard Worker #define RSA_DEFAULT_PUBLIC_EXPONENT 0x00010001 346*4f2df630SAndroid Build Coastguard Worker #endif 347*4f2df630SAndroid Build Coastguard Worker #if !defined(ENABLE_PCR_NO_INCREMENT) 348*4f2df630SAndroid Build Coastguard Worker #define ENABLE_PCR_NO_INCREMENT YES 349*4f2df630SAndroid Build Coastguard Worker #endif 350*4f2df630SAndroid Build Coastguard Worker #if !defined(CRT_FORMAT_RSA) 351*4f2df630SAndroid Build Coastguard Worker #define CRT_FORMAT_RSA YES 352*4f2df630SAndroid Build Coastguard Worker #endif 353*4f2df630SAndroid Build Coastguard Worker #if !defined(PRIVATE_VENDOR_SPECIFIC_BYTES) 354*4f2df630SAndroid Build Coastguard Worker #define PRIVATE_VENDOR_SPECIFIC_BYTES \ 355*4f2df630SAndroid Build Coastguard Worker ((MAX_RSA_KEY_BYTES / 2) * (3 + CRT_FORMAT_RSA * 2)) 356*4f2df630SAndroid Build Coastguard Worker #endif 357*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_DATA) 358*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_DATA \ 359*4f2df630SAndroid Build Coastguard Worker (MAX_CAP_BUFFER - sizeof(trunks::TPM_CAP) - sizeof(trunks::UINT32)) 360*4f2df630SAndroid Build Coastguard Worker #endif 361*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_ALGS) 362*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_ALGS (trunks::TPM_ALG_LAST - trunks::TPM_ALG_FIRST + 1) 363*4f2df630SAndroid Build Coastguard Worker #endif 364*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_HANDLES) 365*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_HANDLES (MAX_CAP_DATA / sizeof(trunks::TPM_HANDLE)) 366*4f2df630SAndroid Build Coastguard Worker #endif 367*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_CC) 368*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_CC ((trunks::TPM_CC_LAST - trunks::TPM_CC_FIRST) + 1) 369*4f2df630SAndroid Build Coastguard Worker #endif 370*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_CCE) 371*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_CCE ((trunks::TPM_CCE_LAST - trunks::TPM_CCE_FIRST) + 1) 372*4f2df630SAndroid Build Coastguard Worker #endif 373*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_CAP_CC_ALL) 374*4f2df630SAndroid Build Coastguard Worker #define MAX_CAP_CC_ALL (MAX_CAP_CC + MAX_CAP_CCE) 375*4f2df630SAndroid Build Coastguard Worker #endif 376*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_TPM_PROPERTIES) 377*4f2df630SAndroid Build Coastguard Worker #define MAX_TPM_PROPERTIES (MAX_CAP_DATA / sizeof(trunks::TPMS_TAGGED_PROPERTY)) 378*4f2df630SAndroid Build Coastguard Worker #endif 379*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_PCR_PROPERTIES) 380*4f2df630SAndroid Build Coastguard Worker #define MAX_PCR_PROPERTIES \ 381*4f2df630SAndroid Build Coastguard Worker (MAX_CAP_DATA / sizeof(trunks::TPMS_TAGGED_PCR_SELECT)) 382*4f2df630SAndroid Build Coastguard Worker #endif 383*4f2df630SAndroid Build Coastguard Worker #if !defined(MAX_ECC_CURVES) 384*4f2df630SAndroid Build Coastguard Worker #define MAX_ECC_CURVES (MAX_CAP_DATA / sizeof(trunks::TPM_ECC_CURVE)) 385*4f2df630SAndroid Build Coastguard Worker #endif 386*4f2df630SAndroid Build Coastguard Worker #if !defined(HASH_COUNT) 387*4f2df630SAndroid Build Coastguard Worker #define HASH_COUNT 5 388*4f2df630SAndroid Build Coastguard Worker #endif 389*4f2df630SAndroid Build Coastguard Worker 390*4f2df630SAndroid Build Coastguard Worker typedef uint8_t UINT8; 391*4f2df630SAndroid Build Coastguard Worker typedef uint8_t BYTE; 392*4f2df630SAndroid Build Coastguard Worker typedef int8_t INT8; 393*4f2df630SAndroid Build Coastguard Worker typedef int BOOL; 394*4f2df630SAndroid Build Coastguard Worker typedef uint16_t UINT16; 395*4f2df630SAndroid Build Coastguard Worker typedef int16_t INT16; 396*4f2df630SAndroid Build Coastguard Worker typedef uint32_t UINT32; 397*4f2df630SAndroid Build Coastguard Worker typedef int32_t INT32; 398*4f2df630SAndroid Build Coastguard Worker typedef uint64_t UINT64; 399*4f2df630SAndroid Build Coastguard Worker typedef int64_t INT64; 400*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_ALGORITHM_ID; 401*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_MODIFIER_INDICATOR; 402*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_AUTHORIZATION_SIZE; 403*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_PARAMETER_SIZE; 404*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_KEY_SIZE; 405*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_KEY_BITS; 406*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_HANDLE; 407*4f2df630SAndroid Build Coastguard Worker struct TPM2B_DIGEST; 408*4f2df630SAndroid Build Coastguard Worker typedef TPM2B_DIGEST TPM2B_NONCE; 409*4f2df630SAndroid Build Coastguard Worker typedef TPM2B_DIGEST TPM2B_AUTH; 410*4f2df630SAndroid Build Coastguard Worker typedef TPM2B_DIGEST TPM2B_OPERAND; 411*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_SIGHASH; 412*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_HMAC; 413*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_RSASSA; 414*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_RSAPSS; 415*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_ECDSA; 416*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_SM2; 417*4f2df630SAndroid Build Coastguard Worker typedef TPMS_SCHEME_SIGHASH TPMS_SCHEME_ECSCHNORR; 418*4f2df630SAndroid Build Coastguard Worker typedef BYTE TPMI_YES_NO; 419*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_DH_OBJECT; 420*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_DH_PERSISTENT; 421*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_DH_ENTITY; 422*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_DH_PCR; 423*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_SH_AUTH_SESSION; 424*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_SH_HMAC; 425*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_SH_POLICY; 426*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_DH_CONTEXT; 427*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_HIERARCHY; 428*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_ENABLES; 429*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_HIERARCHY_AUTH; 430*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_PLATFORM; 431*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_OWNER; 432*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_ENDORSEMENT; 433*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_PROVISION; 434*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_CLEAR; 435*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_NV_AUTH; 436*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_LOCKOUT; 437*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPMI_RH_NV_INDEX; 438*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_ALG_ID; 439*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_HASH; 440*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_ASYM; 441*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_SYM; 442*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_SYM_OBJECT; 443*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_SYM_MODE; 444*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_KDF; 445*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_SIG_SCHEME; 446*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ECC_KEY_EXCHANGE; 447*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_ST; 448*4f2df630SAndroid Build Coastguard Worker typedef TPM_ST TPMI_ST_COMMAND_TAG; 449*4f2df630SAndroid Build Coastguard Worker typedef TPM_ST TPMI_ST_ATTEST; 450*4f2df630SAndroid Build Coastguard Worker typedef TPM_KEY_BITS TPMI_AES_KEY_BITS; 451*4f2df630SAndroid Build Coastguard Worker typedef TPM_KEY_BITS TPMI_SM4_KEY_BITS; 452*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_KEYEDHASH_SCHEME; 453*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_ASYM_SCHEME; 454*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_RSA_SCHEME; 455*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_RSA_DECRYPT; 456*4f2df630SAndroid Build Coastguard Worker typedef TPM_KEY_BITS TPMI_RSA_KEY_BITS; 457*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_ECC_SCHEME; 458*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_ECC_CURVE; 459*4f2df630SAndroid Build Coastguard Worker typedef TPM_ECC_CURVE TPMI_ECC_CURVE; 460*4f2df630SAndroid Build Coastguard Worker typedef TPM_ALG_ID TPMI_ALG_PUBLIC; 461*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_ALGORITHM; 462*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_OBJECT; 463*4f2df630SAndroid Build Coastguard Worker typedef UINT8 TPMA_SESSION; 464*4f2df630SAndroid Build Coastguard Worker typedef UINT8 TPMA_LOCALITY; 465*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_PERMANENT; 466*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_STARTUP_CLEAR; 467*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_MEMORY; 468*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_CC; 469*4f2df630SAndroid Build Coastguard Worker typedef TPM_CC TPMA_CC; 470*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_NV_INDEX; 471*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPMA_NV; 472*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_SPEC; 473*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_GENERATED; 474*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_RC; 475*4f2df630SAndroid Build Coastguard Worker typedef INT8 TPM_CLOCK_ADJUST; 476*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_EO; 477*4f2df630SAndroid Build Coastguard Worker typedef UINT16 TPM_SU; 478*4f2df630SAndroid Build Coastguard Worker typedef UINT8 TPM_SE; 479*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_CAP; 480*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_PT; 481*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_PT_PCR; 482*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_PS; 483*4f2df630SAndroid Build Coastguard Worker typedef UINT8 TPM_HT; 484*4f2df630SAndroid Build Coastguard Worker typedef UINT32 TPM_RH; 485*4f2df630SAndroid Build Coastguard Worker typedef TPM_HANDLE TPM_HC; 486*4f2df630SAndroid Build Coastguard Worker 487*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SPEC TPM_SPEC_FAMILY = 0x322E3000; 488*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SPEC TPM_SPEC_LEVEL = 00; 489*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SPEC TPM_SPEC_VERSION = 99; 490*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SPEC TPM_SPEC_YEAR = 2013; 491*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SPEC TPM_SPEC_DAY_OF_YEAR = 304; 492*4f2df630SAndroid Build Coastguard Worker constexpr TPM_GENERATED TPM_GENERATED_VALUE = 0xff544347; 493*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ERROR = 0x0000; 494*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_FIRST = 0x0001; 495*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_RSA = 0x0001; 496*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SHA = 0x0004; 497*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SHA1 = 0x0004; 498*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_HMAC = 0x0005; 499*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_AES = 0x0006; 500*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_MGF1 = 0x0007; 501*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_KEYEDHASH = 0x0008; 502*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_XOR = 0x000A; 503*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SHA256 = 0x000B; 504*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SHA384 = 0x000C; 505*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SHA512 = 0x000D; 506*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_NULL = 0x0010; 507*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SM3_256 = 0x0012; 508*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SM4 = 0x0013; 509*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_RSASSA = 0x0014; 510*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_RSAES = 0x0015; 511*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_RSAPSS = 0x0016; 512*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_OAEP = 0x0017; 513*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECDSA = 0x0018; 514*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECDH = 0x0019; 515*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECDAA = 0x001A; 516*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SM2 = 0x001B; 517*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECSCHNORR = 0x001C; 518*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECMQV = 0x001D; 519*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_KDF1_SP800_56a = 0x0020; 520*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_KDF2 = 0x0021; 521*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_KDF1_SP800_108 = 0x0022; 522*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECC = 0x0023; 523*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_SYMCIPHER = 0x0025; 524*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_CTR = 0x0040; 525*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_OFB = 0x0041; 526*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_CBC = 0x0042; 527*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_CFB = 0x0043; 528*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_ECB = 0x0044; 529*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ALG_ID TPM_ALG_LAST = 0x0044; 530*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NONE = 0x0000; 531*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NIST_P192 = 0x0001; 532*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NIST_P224 = 0x0002; 533*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NIST_P256 = 0x0003; 534*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NIST_P384 = 0x0004; 535*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_NIST_P521 = 0x0005; 536*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_BN_P256 = 0x0010; 537*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_BN_P638 = 0x0011; 538*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ECC_CURVE TPM_ECC_SM2_P256 = 0x0020; 539*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_FIRST = 0x0000011F; 540*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PP_FIRST = 0x0000011F; 541*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_UndefineSpaceSpecial = 0x0000011F; 542*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_EvictControl = 0x00000120; 543*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_HierarchyControl = 0x00000121; 544*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_UndefineSpace = 0x00000122; 545*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ChangeEPS = 0x00000124; 546*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ChangePPS = 0x00000125; 547*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Clear = 0x00000126; 548*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ClearControl = 0x00000127; 549*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ClockSet = 0x00000128; 550*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_HierarchyChangeAuth = 0x00000129; 551*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_DefineSpace = 0x0000012A; 552*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_Allocate = 0x0000012B; 553*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_SetAuthPolicy = 0x0000012C; 554*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PP_Commands = 0x0000012D; 555*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SetPrimaryPolicy = 0x0000012E; 556*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_FieldUpgradeStart = 0x0000012F; 557*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ClockRateAdjust = 0x00000130; 558*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_CreatePrimary = 0x00000131; 559*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_GlobalWriteLock = 0x00000132; 560*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PP_LAST = 0x00000132; 561*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetCommandAuditDigest = 0x00000133; 562*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_Increment = 0x00000134; 563*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_SetBits = 0x00000135; 564*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_Extend = 0x00000136; 565*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_Write = 0x00000137; 566*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_WriteLock = 0x00000138; 567*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_DictionaryAttackLockReset = 0x00000139; 568*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_DictionaryAttackParameters = 0x0000013A; 569*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_ChangeAuth = 0x0000013B; 570*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_Event = 0x0000013C; 571*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_Reset = 0x0000013D; 572*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SequenceComplete = 0x0000013E; 573*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SetAlgorithmSet = 0x0000013F; 574*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SetCommandCodeAuditStatus = 0x00000140; 575*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_FieldUpgradeData = 0x00000141; 576*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_IncrementalSelfTest = 0x00000142; 577*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SelfTest = 0x00000143; 578*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Startup = 0x00000144; 579*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Shutdown = 0x00000145; 580*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_StirRandom = 0x00000146; 581*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ActivateCredential = 0x00000147; 582*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Certify = 0x00000148; 583*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyNV = 0x00000149; 584*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_CertifyCreation = 0x0000014A; 585*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Duplicate = 0x0000014B; 586*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetTime = 0x0000014C; 587*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetSessionAuditDigest = 0x0000014D; 588*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_Read = 0x0000014E; 589*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_ReadLock = 0x0000014F; 590*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ObjectChangeAuth = 0x00000150; 591*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicySecret = 0x00000151; 592*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Rewrap = 0x00000152; 593*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Create = 0x00000153; 594*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ECDH_ZGen = 0x00000154; 595*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_HMAC = 0x00000155; 596*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Import = 0x00000156; 597*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Load = 0x00000157; 598*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Quote = 0x00000158; 599*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_RSA_Decrypt = 0x00000159; 600*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_HMAC_Start = 0x0000015B; 601*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_SequenceUpdate = 0x0000015C; 602*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Sign = 0x0000015D; 603*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Unseal = 0x0000015E; 604*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicySigned = 0x00000160; 605*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ContextLoad = 0x00000161; 606*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ContextSave = 0x00000162; 607*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ECDH_KeyGen = 0x00000163; 608*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_EncryptDecrypt = 0x00000164; 609*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_FlushContext = 0x00000165; 610*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_LoadExternal = 0x00000167; 611*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_MakeCredential = 0x00000168; 612*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_ReadPublic = 0x00000169; 613*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyAuthorize = 0x0000016A; 614*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyAuthValue = 0x0000016B; 615*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyCommandCode = 0x0000016C; 616*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyCounterTimer = 0x0000016D; 617*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyCpHash = 0x0000016E; 618*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyLocality = 0x0000016F; 619*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyNameHash = 0x00000170; 620*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyOR = 0x00000171; 621*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyTicket = 0x00000172; 622*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ReadPublic = 0x00000173; 623*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_RSA_Encrypt = 0x00000174; 624*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_StartAuthSession = 0x00000176; 625*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_VerifySignature = 0x00000177; 626*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ECC_Parameters = 0x00000178; 627*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_FirmwareRead = 0x00000179; 628*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetCapability = 0x0000017A; 629*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetRandom = 0x0000017B; 630*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_GetTestResult = 0x0000017C; 631*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Hash = 0x0000017D; 632*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_Read = 0x0000017E; 633*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyPCR = 0x0000017F; 634*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyRestart = 0x00000180; 635*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ReadClock = 0x00000181; 636*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_Extend = 0x00000182; 637*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PCR_SetAuthValue = 0x00000183; 638*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_NV_Certify = 0x00000184; 639*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_EventSequenceComplete = 0x00000185; 640*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_HashSequenceStart = 0x00000186; 641*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyPhysicalPresence = 0x00000187; 642*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyDuplicationSelect = 0x00000188; 643*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyGetDigest = 0x00000189; 644*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_TestParms = 0x0000018A; 645*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_Commit = 0x0000018B; 646*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyPassword = 0x0000018C; 647*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_ZGen_2Phase = 0x0000018D; 648*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_EC_Ephemeral = 0x0000018E; 649*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_PolicyNvWritten = 0x0000018F; 650*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CC_LAST = 0x0000018F; 651*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CCE_FIRST = 0x20008001; 652*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CCE_PolicyFidoSigned = 0x20008001; 653*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CC TPM_CCE_LAST = 0x20008001; 654*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SUCCESS = 0x000; 655*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_BAD_TAG = 0x01E; 656*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC RC_VER1 = 0x100; 657*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_INITIALIZE = RC_VER1 + 0x000; 658*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_FAILURE = RC_VER1 + 0x001; 659*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SEQUENCE = RC_VER1 + 0x003; 660*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_PRIVATE = RC_VER1 + 0x00B; 661*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_HMAC = RC_VER1 + 0x019; 662*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_DISABLED = RC_VER1 + 0x020; 663*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_EXCLUSIVE = RC_VER1 + 0x021; 664*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTH_TYPE = RC_VER1 + 0x024; 665*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTH_MISSING = RC_VER1 + 0x025; 666*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_POLICY = RC_VER1 + 0x026; 667*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_PCR = RC_VER1 + 0x027; 668*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_PCR_CHANGED = RC_VER1 + 0x028; 669*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_UPGRADE = RC_VER1 + 0x02D; 670*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_TOO_MANY_CONTEXTS = RC_VER1 + 0x02E; 671*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTH_UNAVAILABLE = RC_VER1 + 0x02F; 672*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REBOOT = RC_VER1 + 0x030; 673*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_UNBALANCED = RC_VER1 + 0x031; 674*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_COMMAND_SIZE = RC_VER1 + 0x042; 675*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_COMMAND_CODE = RC_VER1 + 0x043; 676*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTHSIZE = RC_VER1 + 0x044; 677*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTH_CONTEXT = RC_VER1 + 0x045; 678*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_RANGE = RC_VER1 + 0x046; 679*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_SIZE = RC_VER1 + 0x047; 680*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_LOCKED = RC_VER1 + 0x048; 681*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_AUTHORIZATION = RC_VER1 + 0x049; 682*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_UNINITIALIZED = RC_VER1 + 0x04A; 683*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_SPACE = RC_VER1 + 0x04B; 684*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_DEFINED = RC_VER1 + 0x04C; 685*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_BAD_CONTEXT = RC_VER1 + 0x050; 686*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_CPHASH = RC_VER1 + 0x051; 687*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_PARENT = RC_VER1 + 0x052; 688*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NEEDS_TEST = RC_VER1 + 0x053; 689*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NO_RESULT = RC_VER1 + 0x054; 690*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SENSITIVE = RC_VER1 + 0x055; 691*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC RC_MAX_FM0 = RC_VER1 + 0x07F; 692*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC RC_FMT1 = 0x080; 693*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_ASYMMETRIC = RC_FMT1 + 0x001; 694*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_ATTRIBUTES = RC_FMT1 + 0x002; 695*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_HASH = RC_FMT1 + 0x003; 696*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_VALUE = RC_FMT1 + 0x004; 697*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_HIERARCHY = RC_FMT1 + 0x005; 698*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_KEY_SIZE = RC_FMT1 + 0x007; 699*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_MGF = RC_FMT1 + 0x008; 700*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_MODE = RC_FMT1 + 0x009; 701*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_TYPE = RC_FMT1 + 0x00A; 702*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_HANDLE = RC_FMT1 + 0x00B; 703*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_KDF = RC_FMT1 + 0x00C; 704*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_RANGE = RC_FMT1 + 0x00D; 705*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_AUTH_FAIL = RC_FMT1 + 0x00E; 706*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NONCE = RC_FMT1 + 0x00F; 707*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_PP = RC_FMT1 + 0x010; 708*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SCHEME = RC_FMT1 + 0x012; 709*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SIZE = RC_FMT1 + 0x015; 710*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SYMMETRIC = RC_FMT1 + 0x016; 711*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_TAG = RC_FMT1 + 0x017; 712*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SELECTOR = RC_FMT1 + 0x018; 713*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_INSUFFICIENT = RC_FMT1 + 0x01A; 714*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SIGNATURE = RC_FMT1 + 0x01B; 715*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_KEY = RC_FMT1 + 0x01C; 716*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_POLICY_FAIL = RC_FMT1 + 0x01D; 717*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_INTEGRITY = RC_FMT1 + 0x01F; 718*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_TICKET = RC_FMT1 + 0x020; 719*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_RESERVED_BITS = RC_FMT1 + 0x021; 720*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_BAD_AUTH = RC_FMT1 + 0x022; 721*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_EXPIRED = RC_FMT1 + 0x023; 722*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_POLICY_CC = RC_FMT1 + 0x024; 723*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_BINDING = RC_FMT1 + 0x025; 724*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_CURVE = RC_FMT1 + 0x026; 725*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_ECC_POINT = RC_FMT1 + 0x027; 726*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC RC_WARN = 0x900; 727*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_CONTEXT_GAP = RC_WARN + 0x001; 728*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_OBJECT_MEMORY = RC_WARN + 0x002; 729*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SESSION_MEMORY = RC_WARN + 0x003; 730*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_MEMORY = RC_WARN + 0x004; 731*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_SESSION_HANDLES = RC_WARN + 0x005; 732*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_OBJECT_HANDLES = RC_WARN + 0x006; 733*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_LOCALITY = RC_WARN + 0x007; 734*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_YIELDED = RC_WARN + 0x008; 735*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_CANCELED = RC_WARN + 0x009; 736*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_TESTING = RC_WARN + 0x00A; 737*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H0 = RC_WARN + 0x010; 738*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H1 = RC_WARN + 0x011; 739*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H2 = RC_WARN + 0x012; 740*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H3 = RC_WARN + 0x013; 741*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H4 = RC_WARN + 0x014; 742*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H5 = RC_WARN + 0x015; 743*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_H6 = RC_WARN + 0x016; 744*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S0 = RC_WARN + 0x018; 745*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S1 = RC_WARN + 0x019; 746*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S2 = RC_WARN + 0x01A; 747*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S3 = RC_WARN + 0x01B; 748*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S4 = RC_WARN + 0x01C; 749*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S5 = RC_WARN + 0x01D; 750*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_REFERENCE_S6 = RC_WARN + 0x01E; 751*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_RATE = RC_WARN + 0x020; 752*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_LOCKOUT = RC_WARN + 0x021; 753*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_RETRY = RC_WARN + 0x022; 754*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NV_UNAVAILABLE = RC_WARN + 0x023; 755*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_NOT_USED = RC_WARN + 0x7F; 756*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_H = 0x000; 757*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_P = 0x040; 758*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_S = 0x800; 759*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_1 = 0x100; 760*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_2 = 0x200; 761*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_3 = 0x300; 762*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_4 = 0x400; 763*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_5 = 0x500; 764*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_6 = 0x600; 765*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_7 = 0x700; 766*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_8 = 0x800; 767*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_9 = 0x900; 768*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_A = 0xA00; 769*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_B = 0xB00; 770*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_C = 0xC00; 771*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_D = 0xD00; 772*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_E = 0xE00; 773*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_F = 0xF00; 774*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RC TPM_RC_N_MASK = 0xF00; 775*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_COARSE_SLOWER = -3; 776*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_MEDIUM_SLOWER = -2; 777*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_FINE_SLOWER = -1; 778*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_NO_CHANGE = 0; 779*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_FINE_FASTER = 1; 780*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_MEDIUM_FASTER = 2; 781*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CLOCK_ADJUST TPM_CLOCK_COARSE_FASTER = 3; 782*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_EQ = 0x0000; 783*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_NEQ = 0x0001; 784*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_SIGNED_GT = 0x0002; 785*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_UNSIGNED_GT = 0x0003; 786*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_SIGNED_LT = 0x0004; 787*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_UNSIGNED_LT = 0x0005; 788*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_SIGNED_GE = 0x0006; 789*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_UNSIGNED_GE = 0x0007; 790*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_SIGNED_LE = 0x0008; 791*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_UNSIGNED_LE = 0x0009; 792*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_BITSET = 0x000A; 793*4f2df630SAndroid Build Coastguard Worker constexpr TPM_EO TPM_EO_BITCLEAR = 0x000B; 794*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_RSP_COMMAND = 0x00C4; 795*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_NULL = 0X8000; 796*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_NO_SESSIONS = 0x8001; 797*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_SESSIONS = 0x8002; 798*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_NV = 0x8014; 799*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_COMMAND_AUDIT = 0x8015; 800*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_SESSION_AUDIT = 0x8016; 801*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_CERTIFY = 0x8017; 802*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_QUOTE = 0x8018; 803*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_TIME = 0x8019; 804*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_ATTEST_CREATION = 0x801A; 805*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_CREATION = 0x8021; 806*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_VERIFIED = 0x8022; 807*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_AUTH_SECRET = 0x8023; 808*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_HASHCHECK = 0x8024; 809*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_AUTH_SIGNED = 0x8025; 810*4f2df630SAndroid Build Coastguard Worker constexpr TPM_ST TPM_ST_FU_MANIFEST = 0x8029; 811*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SU TPM_SU_CLEAR = 0x0000; 812*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SU TPM_SU_STATE = 0x0001; 813*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SE TPM_SE_HMAC = 0x00; 814*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SE TPM_SE_POLICY = 0x01; 815*4f2df630SAndroid Build Coastguard Worker constexpr TPM_SE TPM_SE_TRIAL = 0x03; 816*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_FIRST = 0x00000000; 817*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_ALGS = 0x00000000; 818*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_HANDLES = 0x00000001; 819*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_COMMANDS = 0x00000002; 820*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_PP_COMMANDS = 0x00000003; 821*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_AUDIT_COMMANDS = 0x00000004; 822*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_PCRS = 0x00000005; 823*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_TPM_PROPERTIES = 0x00000006; 824*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_PCR_PROPERTIES = 0x00000007; 825*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_ECC_CURVES = 0x00000008; 826*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_LAST = 0x00000008; 827*4f2df630SAndroid Build Coastguard Worker constexpr TPM_CAP TPM_CAP_VENDOR_PROPERTY = 0x00000100; 828*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NONE = 0x00000000; 829*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT PT_GROUP = 0x00000100; 830*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT PT_FIXED = PT_GROUP * 1; 831*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_FAMILY_INDICATOR = PT_FIXED + 0; 832*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LEVEL = PT_FIXED + 1; 833*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_REVISION = PT_FIXED + 2; 834*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_DAY_OF_YEAR = PT_FIXED + 3; 835*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_YEAR = PT_FIXED + 4; 836*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MANUFACTURER = PT_FIXED + 5; 837*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_STRING_1 = PT_FIXED + 6; 838*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_STRING_2 = PT_FIXED + 7; 839*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_STRING_3 = PT_FIXED + 8; 840*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_STRING_4 = PT_FIXED + 9; 841*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_TPM_TYPE = PT_FIXED + 10; 842*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_FIRMWARE_VERSION_1 = PT_FIXED + 11; 843*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_FIRMWARE_VERSION_2 = PT_FIXED + 12; 844*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_INPUT_BUFFER = PT_FIXED + 13; 845*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_TRANSIENT_MIN = PT_FIXED + 14; 846*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_PERSISTENT_MIN = PT_FIXED + 15; 847*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_LOADED_MIN = PT_FIXED + 16; 848*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_ACTIVE_SESSIONS_MAX = PT_FIXED + 17; 849*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PCR_COUNT = PT_FIXED + 18; 850*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PCR_SELECT_MIN = PT_FIXED + 19; 851*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_CONTEXT_GAP_MAX = PT_FIXED + 20; 852*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_COUNTERS_MAX = PT_FIXED + 22; 853*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_INDEX_MAX = PT_FIXED + 23; 854*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MEMORY = PT_FIXED + 24; 855*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_CLOCK_UPDATE = PT_FIXED + 25; 856*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_CONTEXT_HASH = PT_FIXED + 26; 857*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_CONTEXT_SYM = PT_FIXED + 27; 858*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_CONTEXT_SYM_SIZE = PT_FIXED + 28; 859*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_ORDERLY_COUNT = PT_FIXED + 29; 860*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_COMMAND_SIZE = PT_FIXED + 30; 861*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_RESPONSE_SIZE = PT_FIXED + 31; 862*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_DIGEST = PT_FIXED + 32; 863*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_OBJECT_CONTEXT = PT_FIXED + 33; 864*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_SESSION_CONTEXT = PT_FIXED + 34; 865*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PS_FAMILY_INDICATOR = PT_FIXED + 35; 866*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PS_LEVEL = PT_FIXED + 36; 867*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PS_REVISION = PT_FIXED + 37; 868*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PS_DAY_OF_YEAR = PT_FIXED + 38; 869*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PS_YEAR = PT_FIXED + 39; 870*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_SPLIT_MAX = PT_FIXED + 40; 871*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_TOTAL_COMMANDS = PT_FIXED + 41; 872*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LIBRARY_COMMANDS = PT_FIXED + 42; 873*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_VENDOR_COMMANDS = PT_FIXED + 43; 874*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_BUFFER_MAX = PT_FIXED + 44; 875*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT PT_VAR = PT_GROUP * 2; 876*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_PERMANENT = PT_VAR + 0; 877*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_STARTUP_CLEAR = PT_VAR + 1; 878*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_NV_INDEX = PT_VAR + 2; 879*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_LOADED = PT_VAR + 3; 880*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_LOADED_AVAIL = PT_VAR + 4; 881*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_ACTIVE = PT_VAR + 5; 882*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_ACTIVE_AVAIL = PT_VAR + 6; 883*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_TRANSIENT_AVAIL = PT_VAR + 7; 884*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_PERSISTENT = PT_VAR + 8; 885*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_HR_PERSISTENT_AVAIL = PT_VAR + 9; 886*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_COUNTERS = PT_VAR + 10; 887*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_COUNTERS_AVAIL = PT_VAR + 11; 888*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_ALGORITHM_SET = PT_VAR + 12; 889*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LOADED_CURVES = PT_VAR + 13; 890*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LOCKOUT_COUNTER = PT_VAR + 14; 891*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_MAX_AUTH_FAIL = PT_VAR + 15; 892*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LOCKOUT_INTERVAL = PT_VAR + 16; 893*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_LOCKOUT_RECOVERY = PT_VAR + 17; 894*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_NV_WRITE_RECOVERY = PT_VAR + 18; 895*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_AUDIT_COUNTER_0 = PT_VAR + 19; 896*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT TPM_PT_AUDIT_COUNTER_1 = PT_VAR + 20; 897*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_FIRST = 0x00000000; 898*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_SAVE = 0x00000000; 899*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_EXTEND_L0 = 0x00000001; 900*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_RESET_L0 = 0x00000002; 901*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_EXTEND_L1 = 0x00000003; 902*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_RESET_L1 = 0x00000004; 903*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_EXTEND_L2 = 0x00000005; 904*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_RESET_L2 = 0x00000006; 905*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_EXTEND_L3 = 0x00000007; 906*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_RESET_L3 = 0x00000008; 907*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_EXTEND_L4 = 0x00000009; 908*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_RESET_L4 = 0x0000000A; 909*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_NO_INCREMENT = 0x00000011; 910*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_DRTM_RESET = 0x00000012; 911*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_POLICY = 0x00000013; 912*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_AUTH = 0x00000014; 913*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PT_PCR TPM_PT_PCR_LAST = 0x00000014; 914*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_MAIN = 0x00000000; 915*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_PC = 0x00000001; 916*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_PDA = 0x00000002; 917*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_CELL_PHONE = 0x00000003; 918*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_SERVER = 0x00000004; 919*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_PERIPHERAL = 0x00000005; 920*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_TSS = 0x00000006; 921*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_STORAGE = 0x00000007; 922*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_AUTHENTICATION = 0x00000008; 923*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_EMBEDDED = 0x00000009; 924*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_HARDCOPY = 0x0000000A; 925*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_INFRASTRUCTURE = 0x0000000B; 926*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_VIRTUALIZATION = 0x0000000C; 927*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_TNC = 0x0000000D; 928*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_MULTI_TENANT = 0x0000000E; 929*4f2df630SAndroid Build Coastguard Worker constexpr TPM_PS TPM_PS_TC = 0x0000000F; 930*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_PCR = 0x00; 931*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_NV_INDEX = 0x01; 932*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_HMAC_SESSION = 0x02; 933*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_LOADED_SESSION = 0x02; 934*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_POLICY_SESSION = 0x03; 935*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_ACTIVE_SESSION = 0x03; 936*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_PERMANENT = 0x40; 937*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_TRANSIENT = 0x80; 938*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HT TPM_HT_PERSISTENT = 0x81; 939*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_FIRST = 0x40000000; 940*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_SRK = 0x40000000; 941*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_OWNER = 0x40000001; 942*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_REVOKE = 0x40000002; 943*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_TRANSPORT = 0x40000003; 944*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_OPERATOR = 0x40000004; 945*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_ADMIN = 0x40000005; 946*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_EK = 0x40000006; 947*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_NULL = 0x40000007; 948*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_UNASSIGNED = 0x40000008; 949*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RS_PW = 0x40000009; 950*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_LOCKOUT = 0x4000000A; 951*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_ENDORSEMENT = 0x4000000B; 952*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_PLATFORM = 0x4000000C; 953*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_PLATFORM_NV = 0x4000000D; 954*4f2df630SAndroid Build Coastguard Worker constexpr TPM_RH TPM_RH_LAST = 0x4000000D; 955*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_HANDLE_MASK = 0x00FFFFFF; 956*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_RANGE_MASK = 0xFF000000; 957*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_SHIFT = 24; 958*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_PCR = (TPM_HT_PCR << HR_SHIFT); 959*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_HMAC_SESSION = (TPM_HT_HMAC_SESSION << HR_SHIFT); 960*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_POLICY_SESSION = (TPM_HT_POLICY_SESSION << HR_SHIFT); 961*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_TRANSIENT = (TPM_HT_TRANSIENT << HR_SHIFT); 962*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_PERSISTENT = (TPM_HT_PERSISTENT << HR_SHIFT); 963*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_NV_INDEX = (TPM_HT_NV_INDEX << HR_SHIFT); 964*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HR_PERMANENT = (TPM_HT_PERMANENT << HR_SHIFT); 965*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PCR_FIRST = (HR_PCR + 0); 966*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PCR_LAST = (PCR_FIRST + IMPLEMENTATION_PCR - 1); 967*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HMAC_SESSION_FIRST = (HR_HMAC_SESSION + 0); 968*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC HMAC_SESSION_LAST = 969*4f2df630SAndroid Build Coastguard Worker (HMAC_SESSION_FIRST + MAX_ACTIVE_SESSIONS - 1); 970*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC LOADED_SESSION_LAST = HMAC_SESSION_LAST; 971*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC POLICY_SESSION_FIRST = (HR_POLICY_SESSION + 0); 972*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC POLICY_SESSION_LAST = 973*4f2df630SAndroid Build Coastguard Worker (POLICY_SESSION_FIRST + MAX_ACTIVE_SESSIONS - 1); 974*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC TRANSIENT_FIRST = (HR_TRANSIENT + 0); 975*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC ACTIVE_SESSION_FIRST = POLICY_SESSION_FIRST; 976*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC ACTIVE_SESSION_LAST = POLICY_SESSION_LAST; 977*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC TRANSIENT_LAST = (TRANSIENT_FIRST + MAX_LOADED_OBJECTS - 1); 978*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PERSISTENT_FIRST = (HR_PERSISTENT + 0); 979*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PERSISTENT_LAST = (PERSISTENT_FIRST + 0x00FFFFFF); 980*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PLATFORM_PERSISTENT = (PERSISTENT_FIRST + 0x00800000); 981*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC NV_INDEX_FIRST = (HR_NV_INDEX + 0); 982*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC NV_INDEX_LAST = (NV_INDEX_FIRST + 0x00FFFFFF); 983*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PERMANENT_FIRST = TPM_RH_FIRST; 984*4f2df630SAndroid Build Coastguard Worker constexpr TPM_HC PERMANENT_LAST = TPM_RH_LAST; 985*4f2df630SAndroid Build Coastguard Worker 986*4f2df630SAndroid Build Coastguard Worker struct TPMS_ALGORITHM_DESCRIPTION { 987*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID alg = {}; 988*4f2df630SAndroid Build Coastguard Worker TPMA_ALGORITHM attributes = {}; 989*4f2df630SAndroid Build Coastguard Worker }; 990*4f2df630SAndroid Build Coastguard Worker 991*4f2df630SAndroid Build Coastguard Worker union TPMU_HA { 992*4f2df630SAndroid Build Coastguard Worker BYTE sha1[SHA1_DIGEST_SIZE]; 993*4f2df630SAndroid Build Coastguard Worker BYTE sha256[SHA256_DIGEST_SIZE]; 994*4f2df630SAndroid Build Coastguard Worker BYTE sm3_256[SM3_256_DIGEST_SIZE]; 995*4f2df630SAndroid Build Coastguard Worker BYTE sha384[SHA384_DIGEST_SIZE]; 996*4f2df630SAndroid Build Coastguard Worker BYTE sha512[SHA512_DIGEST_SIZE]; 997*4f2df630SAndroid Build Coastguard Worker }; 998*4f2df630SAndroid Build Coastguard Worker 999*4f2df630SAndroid Build Coastguard Worker struct TPMT_HA { 1000*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1001*4f2df630SAndroid Build Coastguard Worker TPMU_HA digest = {}; 1002*4f2df630SAndroid Build Coastguard Worker }; 1003*4f2df630SAndroid Build Coastguard Worker 1004*4f2df630SAndroid Build Coastguard Worker struct TPM2B_DIGEST { 1005*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1006*4f2df630SAndroid Build Coastguard Worker BYTE buffer[sizeof(TPMU_HA)] = {}; 1007*4f2df630SAndroid Build Coastguard Worker }; 1008*4f2df630SAndroid Build Coastguard Worker 1009*4f2df630SAndroid Build Coastguard Worker struct TPM2B_DATA { 1010*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1011*4f2df630SAndroid Build Coastguard Worker BYTE buffer[sizeof(TPMT_HA)] = {}; 1012*4f2df630SAndroid Build Coastguard Worker }; 1013*4f2df630SAndroid Build Coastguard Worker 1014*4f2df630SAndroid Build Coastguard Worker struct TPM2B_EVENT { 1015*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1016*4f2df630SAndroid Build Coastguard Worker BYTE buffer[1024] = {}; 1017*4f2df630SAndroid Build Coastguard Worker }; 1018*4f2df630SAndroid Build Coastguard Worker 1019*4f2df630SAndroid Build Coastguard Worker struct TPM2B_MAX_BUFFER { 1020*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1021*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_DIGEST_BUFFER] = {}; 1022*4f2df630SAndroid Build Coastguard Worker }; 1023*4f2df630SAndroid Build Coastguard Worker 1024*4f2df630SAndroid Build Coastguard Worker struct TPM2B_MAX_NV_BUFFER { 1025*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1026*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_NV_BUFFER_SIZE] = {}; 1027*4f2df630SAndroid Build Coastguard Worker }; 1028*4f2df630SAndroid Build Coastguard Worker 1029*4f2df630SAndroid Build Coastguard Worker struct TPM2B_TIMEOUT { 1030*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1031*4f2df630SAndroid Build Coastguard Worker BYTE buffer[sizeof(UINT64)] = {}; 1032*4f2df630SAndroid Build Coastguard Worker }; 1033*4f2df630SAndroid Build Coastguard Worker 1034*4f2df630SAndroid Build Coastguard Worker struct TPM2B_IV { 1035*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1036*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_SYM_BLOCK_SIZE] = {}; 1037*4f2df630SAndroid Build Coastguard Worker }; 1038*4f2df630SAndroid Build Coastguard Worker 1039*4f2df630SAndroid Build Coastguard Worker union TPMU_NAME { 1040*4f2df630SAndroid Build Coastguard Worker TPMT_HA digest; 1041*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE handle; 1042*4f2df630SAndroid Build Coastguard Worker }; 1043*4f2df630SAndroid Build Coastguard Worker 1044*4f2df630SAndroid Build Coastguard Worker struct TPM2B_NAME { 1045*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1046*4f2df630SAndroid Build Coastguard Worker BYTE name[sizeof(TPMU_NAME)] = {}; 1047*4f2df630SAndroid Build Coastguard Worker }; 1048*4f2df630SAndroid Build Coastguard Worker 1049*4f2df630SAndroid Build Coastguard Worker struct TPMS_PCR_SELECT { 1050*4f2df630SAndroid Build Coastguard Worker UINT8 sizeof_select = {}; 1051*4f2df630SAndroid Build Coastguard Worker BYTE pcr_select[PCR_SELECT_MAX] = {}; 1052*4f2df630SAndroid Build Coastguard Worker }; 1053*4f2df630SAndroid Build Coastguard Worker 1054*4f2df630SAndroid Build Coastguard Worker struct TPMS_PCR_SELECTION { 1055*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash = {}; 1056*4f2df630SAndroid Build Coastguard Worker UINT8 sizeof_select = {}; 1057*4f2df630SAndroid Build Coastguard Worker BYTE pcr_select[PCR_SELECT_MAX] = {}; 1058*4f2df630SAndroid Build Coastguard Worker }; 1059*4f2df630SAndroid Build Coastguard Worker 1060*4f2df630SAndroid Build Coastguard Worker struct TPMT_TK_CREATION { 1061*4f2df630SAndroid Build Coastguard Worker TPM_ST tag = {}; 1062*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY hierarchy = {}; 1063*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST digest = {}; 1064*4f2df630SAndroid Build Coastguard Worker }; 1065*4f2df630SAndroid Build Coastguard Worker 1066*4f2df630SAndroid Build Coastguard Worker struct TPMT_TK_VERIFIED { 1067*4f2df630SAndroid Build Coastguard Worker TPM_ST tag = {}; 1068*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY hierarchy = {}; 1069*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST digest = {}; 1070*4f2df630SAndroid Build Coastguard Worker }; 1071*4f2df630SAndroid Build Coastguard Worker 1072*4f2df630SAndroid Build Coastguard Worker struct TPMT_TK_AUTH { 1073*4f2df630SAndroid Build Coastguard Worker TPM_ST tag = {}; 1074*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY hierarchy = {}; 1075*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST digest = {}; 1076*4f2df630SAndroid Build Coastguard Worker }; 1077*4f2df630SAndroid Build Coastguard Worker 1078*4f2df630SAndroid Build Coastguard Worker struct TPMT_TK_HASHCHECK { 1079*4f2df630SAndroid Build Coastguard Worker TPM_ST tag = {}; 1080*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY hierarchy = {}; 1081*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST digest = {}; 1082*4f2df630SAndroid Build Coastguard Worker }; 1083*4f2df630SAndroid Build Coastguard Worker 1084*4f2df630SAndroid Build Coastguard Worker struct TPMS_ALG_PROPERTY { 1085*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID alg = {}; 1086*4f2df630SAndroid Build Coastguard Worker TPMA_ALGORITHM alg_properties = {}; 1087*4f2df630SAndroid Build Coastguard Worker }; 1088*4f2df630SAndroid Build Coastguard Worker 1089*4f2df630SAndroid Build Coastguard Worker struct TPMS_TAGGED_PROPERTY { 1090*4f2df630SAndroid Build Coastguard Worker TPM_PT property = {}; 1091*4f2df630SAndroid Build Coastguard Worker UINT32 value = {}; 1092*4f2df630SAndroid Build Coastguard Worker }; 1093*4f2df630SAndroid Build Coastguard Worker 1094*4f2df630SAndroid Build Coastguard Worker struct TPMS_TAGGED_PCR_SELECT { 1095*4f2df630SAndroid Build Coastguard Worker TPM_PT tag = {}; 1096*4f2df630SAndroid Build Coastguard Worker UINT8 sizeof_select = {}; 1097*4f2df630SAndroid Build Coastguard Worker BYTE pcr_select[PCR_SELECT_MAX] = {}; 1098*4f2df630SAndroid Build Coastguard Worker }; 1099*4f2df630SAndroid Build Coastguard Worker 1100*4f2df630SAndroid Build Coastguard Worker struct TPML_CC { 1101*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1102*4f2df630SAndroid Build Coastguard Worker TPM_CC command_codes[MAX_CAP_CC_ALL] = {}; 1103*4f2df630SAndroid Build Coastguard Worker }; 1104*4f2df630SAndroid Build Coastguard Worker 1105*4f2df630SAndroid Build Coastguard Worker struct TPML_CCA { 1106*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1107*4f2df630SAndroid Build Coastguard Worker TPMA_CC command_attributes[MAX_CAP_CC_ALL] = {}; 1108*4f2df630SAndroid Build Coastguard Worker }; 1109*4f2df630SAndroid Build Coastguard Worker 1110*4f2df630SAndroid Build Coastguard Worker struct TPML_ALG { 1111*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1112*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID algorithms[MAX_ALG_LIST_SIZE] = {}; 1113*4f2df630SAndroid Build Coastguard Worker }; 1114*4f2df630SAndroid Build Coastguard Worker 1115*4f2df630SAndroid Build Coastguard Worker struct TPML_HANDLE { 1116*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1117*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE handle[MAX_CAP_HANDLES] = {}; 1118*4f2df630SAndroid Build Coastguard Worker }; 1119*4f2df630SAndroid Build Coastguard Worker 1120*4f2df630SAndroid Build Coastguard Worker struct TPML_DIGEST { 1121*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1122*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST digests[8] = {}; 1123*4f2df630SAndroid Build Coastguard Worker }; 1124*4f2df630SAndroid Build Coastguard Worker 1125*4f2df630SAndroid Build Coastguard Worker struct TPML_DIGEST_VALUES { 1126*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1127*4f2df630SAndroid Build Coastguard Worker TPMT_HA digests[HASH_COUNT] = {}; 1128*4f2df630SAndroid Build Coastguard Worker }; 1129*4f2df630SAndroid Build Coastguard Worker 1130*4f2df630SAndroid Build Coastguard Worker struct TPM2B_DIGEST_VALUES { 1131*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1132*4f2df630SAndroid Build Coastguard Worker BYTE buffer[sizeof(TPML_DIGEST_VALUES)] = {}; 1133*4f2df630SAndroid Build Coastguard Worker }; 1134*4f2df630SAndroid Build Coastguard Worker 1135*4f2df630SAndroid Build Coastguard Worker struct TPML_PCR_SELECTION { 1136*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1137*4f2df630SAndroid Build Coastguard Worker TPMS_PCR_SELECTION pcr_selections[HASH_COUNT] = {}; 1138*4f2df630SAndroid Build Coastguard Worker }; 1139*4f2df630SAndroid Build Coastguard Worker 1140*4f2df630SAndroid Build Coastguard Worker struct TPML_ALG_PROPERTY { 1141*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1142*4f2df630SAndroid Build Coastguard Worker TPMS_ALG_PROPERTY alg_properties[MAX_CAP_ALGS] = {}; 1143*4f2df630SAndroid Build Coastguard Worker }; 1144*4f2df630SAndroid Build Coastguard Worker 1145*4f2df630SAndroid Build Coastguard Worker struct TPML_TAGGED_TPM_PROPERTY { 1146*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1147*4f2df630SAndroid Build Coastguard Worker TPMS_TAGGED_PROPERTY tpm_property[MAX_TPM_PROPERTIES] = {}; 1148*4f2df630SAndroid Build Coastguard Worker }; 1149*4f2df630SAndroid Build Coastguard Worker 1150*4f2df630SAndroid Build Coastguard Worker struct TPML_TAGGED_PCR_PROPERTY { 1151*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1152*4f2df630SAndroid Build Coastguard Worker TPMS_TAGGED_PCR_SELECT pcr_property[MAX_PCR_PROPERTIES] = {}; 1153*4f2df630SAndroid Build Coastguard Worker }; 1154*4f2df630SAndroid Build Coastguard Worker 1155*4f2df630SAndroid Build Coastguard Worker struct TPML_ECC_CURVE { 1156*4f2df630SAndroid Build Coastguard Worker UINT32 count = {}; 1157*4f2df630SAndroid Build Coastguard Worker TPM_ECC_CURVE ecc_curves[MAX_ECC_CURVES] = {}; 1158*4f2df630SAndroid Build Coastguard Worker }; 1159*4f2df630SAndroid Build Coastguard Worker 1160*4f2df630SAndroid Build Coastguard Worker union TPMU_CAPABILITIES { 1161*4f2df630SAndroid Build Coastguard Worker TPML_ALG_PROPERTY algorithms; 1162*4f2df630SAndroid Build Coastguard Worker TPML_HANDLE handles; 1163*4f2df630SAndroid Build Coastguard Worker TPML_CCA command; 1164*4f2df630SAndroid Build Coastguard Worker TPML_CC pp_commands; 1165*4f2df630SAndroid Build Coastguard Worker TPML_CC audit_commands; 1166*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION assigned_pcr; 1167*4f2df630SAndroid Build Coastguard Worker TPML_TAGGED_TPM_PROPERTY tpm_properties; 1168*4f2df630SAndroid Build Coastguard Worker TPML_TAGGED_PCR_PROPERTY pcr_properties; 1169*4f2df630SAndroid Build Coastguard Worker TPML_ECC_CURVE ecc_curves; 1170*4f2df630SAndroid Build Coastguard Worker }; 1171*4f2df630SAndroid Build Coastguard Worker 1172*4f2df630SAndroid Build Coastguard Worker struct TPMS_CAPABILITY_DATA { 1173*4f2df630SAndroid Build Coastguard Worker TPM_CAP capability = {}; 1174*4f2df630SAndroid Build Coastguard Worker TPMU_CAPABILITIES data = {}; 1175*4f2df630SAndroid Build Coastguard Worker }; 1176*4f2df630SAndroid Build Coastguard Worker 1177*4f2df630SAndroid Build Coastguard Worker struct TPMS_CLOCK_INFO { 1178*4f2df630SAndroid Build Coastguard Worker UINT64 clock = {}; 1179*4f2df630SAndroid Build Coastguard Worker UINT32 reset_count = {}; 1180*4f2df630SAndroid Build Coastguard Worker UINT32 restart_count = {}; 1181*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO safe = {}; 1182*4f2df630SAndroid Build Coastguard Worker }; 1183*4f2df630SAndroid Build Coastguard Worker 1184*4f2df630SAndroid Build Coastguard Worker struct TPMS_TIME_INFO { 1185*4f2df630SAndroid Build Coastguard Worker UINT64 time = {}; 1186*4f2df630SAndroid Build Coastguard Worker TPMS_CLOCK_INFO clock_info = {}; 1187*4f2df630SAndroid Build Coastguard Worker }; 1188*4f2df630SAndroid Build Coastguard Worker 1189*4f2df630SAndroid Build Coastguard Worker struct TPMS_TIME_ATTEST_INFO { 1190*4f2df630SAndroid Build Coastguard Worker TPMS_TIME_INFO time = {}; 1191*4f2df630SAndroid Build Coastguard Worker UINT64 firmware_version = {}; 1192*4f2df630SAndroid Build Coastguard Worker }; 1193*4f2df630SAndroid Build Coastguard Worker 1194*4f2df630SAndroid Build Coastguard Worker struct TPMS_CERTIFY_INFO { 1195*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME name = {}; 1196*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME qualified_name = {}; 1197*4f2df630SAndroid Build Coastguard Worker }; 1198*4f2df630SAndroid Build Coastguard Worker 1199*4f2df630SAndroid Build Coastguard Worker struct TPMS_QUOTE_INFO { 1200*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION pcr_select = {}; 1201*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST pcr_digest = {}; 1202*4f2df630SAndroid Build Coastguard Worker }; 1203*4f2df630SAndroid Build Coastguard Worker 1204*4f2df630SAndroid Build Coastguard Worker struct TPMS_COMMAND_AUDIT_INFO { 1205*4f2df630SAndroid Build Coastguard Worker UINT64 audit_counter = {}; 1206*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID digest_alg = {}; 1207*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST audit_digest = {}; 1208*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST command_digest = {}; 1209*4f2df630SAndroid Build Coastguard Worker }; 1210*4f2df630SAndroid Build Coastguard Worker 1211*4f2df630SAndroid Build Coastguard Worker struct TPMS_SESSION_AUDIT_INFO { 1212*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO exclusive_session = {}; 1213*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST session_digest = {}; 1214*4f2df630SAndroid Build Coastguard Worker }; 1215*4f2df630SAndroid Build Coastguard Worker 1216*4f2df630SAndroid Build Coastguard Worker struct TPMS_CREATION_INFO { 1217*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME object_name = {}; 1218*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST creation_hash = {}; 1219*4f2df630SAndroid Build Coastguard Worker }; 1220*4f2df630SAndroid Build Coastguard Worker 1221*4f2df630SAndroid Build Coastguard Worker struct TPMS_NV_CERTIFY_INFO { 1222*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME index_name = {}; 1223*4f2df630SAndroid Build Coastguard Worker UINT16 offset = {}; 1224*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_NV_BUFFER nv_contents = {}; 1225*4f2df630SAndroid Build Coastguard Worker }; 1226*4f2df630SAndroid Build Coastguard Worker 1227*4f2df630SAndroid Build Coastguard Worker union TPMU_ATTEST { 1228*4f2df630SAndroid Build Coastguard Worker TPMS_CERTIFY_INFO certify; 1229*4f2df630SAndroid Build Coastguard Worker TPMS_CREATION_INFO creation; 1230*4f2df630SAndroid Build Coastguard Worker TPMS_QUOTE_INFO quote; 1231*4f2df630SAndroid Build Coastguard Worker TPMS_COMMAND_AUDIT_INFO command_audit; 1232*4f2df630SAndroid Build Coastguard Worker TPMS_SESSION_AUDIT_INFO session_audit; 1233*4f2df630SAndroid Build Coastguard Worker TPMS_TIME_ATTEST_INFO time; 1234*4f2df630SAndroid Build Coastguard Worker TPMS_NV_CERTIFY_INFO nv; 1235*4f2df630SAndroid Build Coastguard Worker }; 1236*4f2df630SAndroid Build Coastguard Worker 1237*4f2df630SAndroid Build Coastguard Worker struct TPMS_ATTEST { 1238*4f2df630SAndroid Build Coastguard Worker TPM_GENERATED magic = {}; 1239*4f2df630SAndroid Build Coastguard Worker TPMI_ST_ATTEST type = {}; 1240*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME qualified_signer = {}; 1241*4f2df630SAndroid Build Coastguard Worker TPM2B_DATA extra_data = {}; 1242*4f2df630SAndroid Build Coastguard Worker TPMS_CLOCK_INFO clock_info = {}; 1243*4f2df630SAndroid Build Coastguard Worker UINT64 firmware_version = {}; 1244*4f2df630SAndroid Build Coastguard Worker TPMU_ATTEST attested = {}; 1245*4f2df630SAndroid Build Coastguard Worker }; 1246*4f2df630SAndroid Build Coastguard Worker 1247*4f2df630SAndroid Build Coastguard Worker struct TPM2B_ATTEST { 1248*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1249*4f2df630SAndroid Build Coastguard Worker BYTE attestation_data[sizeof(TPMS_ATTEST)] = {}; 1250*4f2df630SAndroid Build Coastguard Worker }; 1251*4f2df630SAndroid Build Coastguard Worker 1252*4f2df630SAndroid Build Coastguard Worker struct TPMS_AUTH_COMMAND { 1253*4f2df630SAndroid Build Coastguard Worker TPMI_SH_AUTH_SESSION session_handle = {}; 1254*4f2df630SAndroid Build Coastguard Worker TPM2B_NONCE nonce = {}; 1255*4f2df630SAndroid Build Coastguard Worker TPMA_SESSION session_attributes = {}; 1256*4f2df630SAndroid Build Coastguard Worker TPM2B_AUTH hmac = {}; 1257*4f2df630SAndroid Build Coastguard Worker }; 1258*4f2df630SAndroid Build Coastguard Worker 1259*4f2df630SAndroid Build Coastguard Worker struct TPMS_AUTH_RESPONSE { 1260*4f2df630SAndroid Build Coastguard Worker TPM2B_NONCE nonce = {}; 1261*4f2df630SAndroid Build Coastguard Worker TPMA_SESSION session_attributes = {}; 1262*4f2df630SAndroid Build Coastguard Worker TPM2B_AUTH hmac = {}; 1263*4f2df630SAndroid Build Coastguard Worker }; 1264*4f2df630SAndroid Build Coastguard Worker 1265*4f2df630SAndroid Build Coastguard Worker union TPMU_SYM_KEY_BITS { 1266*4f2df630SAndroid Build Coastguard Worker TPMI_AES_KEY_BITS aes; 1267*4f2df630SAndroid Build Coastguard Worker TPMI_SM4_KEY_BITS sm4; 1268*4f2df630SAndroid Build Coastguard Worker TPM_KEY_BITS sym; 1269*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH xor_; 1270*4f2df630SAndroid Build Coastguard Worker }; 1271*4f2df630SAndroid Build Coastguard Worker 1272*4f2df630SAndroid Build Coastguard Worker union TPMU_SYM_MODE { 1273*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_MODE aes; 1274*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_MODE sm4; 1275*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_MODE sym; 1276*4f2df630SAndroid Build Coastguard Worker }; 1277*4f2df630SAndroid Build Coastguard Worker 1278*4f2df630SAndroid Build Coastguard Worker union TPMU_SYM_DETAILS {}; 1279*4f2df630SAndroid Build Coastguard Worker 1280*4f2df630SAndroid Build Coastguard Worker struct TPMT_SYM_DEF { 1281*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM algorithm = {}; 1282*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_KEY_BITS key_bits = {}; 1283*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_MODE mode = {}; 1284*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_DETAILS details = {}; 1285*4f2df630SAndroid Build Coastguard Worker }; 1286*4f2df630SAndroid Build Coastguard Worker 1287*4f2df630SAndroid Build Coastguard Worker struct TPMT_SYM_DEF_OBJECT { 1288*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_OBJECT algorithm = {}; 1289*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_KEY_BITS key_bits = {}; 1290*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_MODE mode = {}; 1291*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_DETAILS details = {}; 1292*4f2df630SAndroid Build Coastguard Worker }; 1293*4f2df630SAndroid Build Coastguard Worker 1294*4f2df630SAndroid Build Coastguard Worker struct TPM2B_SYM_KEY { 1295*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1296*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_SYM_KEY_BYTES] = {}; 1297*4f2df630SAndroid Build Coastguard Worker }; 1298*4f2df630SAndroid Build Coastguard Worker 1299*4f2df630SAndroid Build Coastguard Worker struct TPMS_SYMCIPHER_PARMS { 1300*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF_OBJECT sym = {}; 1301*4f2df630SAndroid Build Coastguard Worker }; 1302*4f2df630SAndroid Build Coastguard Worker 1303*4f2df630SAndroid Build Coastguard Worker struct TPM2B_SENSITIVE_DATA { 1304*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1305*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_SYM_DATA] = {}; 1306*4f2df630SAndroid Build Coastguard Worker }; 1307*4f2df630SAndroid Build Coastguard Worker 1308*4f2df630SAndroid Build Coastguard Worker struct TPMS_SENSITIVE_CREATE { 1309*4f2df630SAndroid Build Coastguard Worker TPM2B_AUTH user_auth = {}; 1310*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_DATA data = {}; 1311*4f2df630SAndroid Build Coastguard Worker }; 1312*4f2df630SAndroid Build Coastguard Worker 1313*4f2df630SAndroid Build Coastguard Worker struct TPM2B_SENSITIVE_CREATE { 1314*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1315*4f2df630SAndroid Build Coastguard Worker TPMS_SENSITIVE_CREATE sensitive = {}; 1316*4f2df630SAndroid Build Coastguard Worker }; 1317*4f2df630SAndroid Build Coastguard Worker 1318*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_SIGHASH { 1319*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1320*4f2df630SAndroid Build Coastguard Worker }; 1321*4f2df630SAndroid Build Coastguard Worker 1322*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_XOR { 1323*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1324*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_KDF kdf = {}; 1325*4f2df630SAndroid Build Coastguard Worker }; 1326*4f2df630SAndroid Build Coastguard Worker 1327*4f2df630SAndroid Build Coastguard Worker union TPMU_SCHEME_KEYEDHASH { 1328*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_HMAC hmac; 1329*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_XOR xor_; 1330*4f2df630SAndroid Build Coastguard Worker }; 1331*4f2df630SAndroid Build Coastguard Worker 1332*4f2df630SAndroid Build Coastguard Worker struct TPMT_KEYEDHASH_SCHEME { 1333*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_KEYEDHASH_SCHEME scheme = {}; 1334*4f2df630SAndroid Build Coastguard Worker TPMU_SCHEME_KEYEDHASH details = {}; 1335*4f2df630SAndroid Build Coastguard Worker }; 1336*4f2df630SAndroid Build Coastguard Worker 1337*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_ECDAA { 1338*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1339*4f2df630SAndroid Build Coastguard Worker UINT16 count = {}; 1340*4f2df630SAndroid Build Coastguard Worker }; 1341*4f2df630SAndroid Build Coastguard Worker 1342*4f2df630SAndroid Build Coastguard Worker union TPMU_SIG_SCHEME { 1343*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSASSA rsassa; 1344*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSAPSS rsapss; 1345*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDSA ecdsa; 1346*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SM2 sm2; 1347*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDAA ecdaa; 1348*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECSCHNORR ec_schnorr; 1349*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_HMAC hmac; 1350*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SIGHASH any; 1351*4f2df630SAndroid Build Coastguard Worker }; 1352*4f2df630SAndroid Build Coastguard Worker 1353*4f2df630SAndroid Build Coastguard Worker struct TPMT_SIG_SCHEME { 1354*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SIG_SCHEME scheme = {}; 1355*4f2df630SAndroid Build Coastguard Worker TPMU_SIG_SCHEME details = {}; 1356*4f2df630SAndroid Build Coastguard Worker }; 1357*4f2df630SAndroid Build Coastguard Worker 1358*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_OAEP { 1359*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1360*4f2df630SAndroid Build Coastguard Worker }; 1361*4f2df630SAndroid Build Coastguard Worker 1362*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_ECDH { 1363*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1364*4f2df630SAndroid Build Coastguard Worker }; 1365*4f2df630SAndroid Build Coastguard Worker 1366*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_MGF1 { 1367*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1368*4f2df630SAndroid Build Coastguard Worker }; 1369*4f2df630SAndroid Build Coastguard Worker 1370*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_KDF1_SP800_56a { 1371*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1372*4f2df630SAndroid Build Coastguard Worker }; 1373*4f2df630SAndroid Build Coastguard Worker 1374*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_KDF2 { 1375*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1376*4f2df630SAndroid Build Coastguard Worker }; 1377*4f2df630SAndroid Build Coastguard Worker 1378*4f2df630SAndroid Build Coastguard Worker struct TPMS_SCHEME_KDF1_SP800_108 { 1379*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash_alg = {}; 1380*4f2df630SAndroid Build Coastguard Worker }; 1381*4f2df630SAndroid Build Coastguard Worker 1382*4f2df630SAndroid Build Coastguard Worker union TPMU_KDF_SCHEME { 1383*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_MGF1 mgf1; 1384*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF1_SP800_56a kdf1_sp800_56a; 1385*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF2 kdf2; 1386*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF1_SP800_108 kdf1_sp800_108; 1387*4f2df630SAndroid Build Coastguard Worker }; 1388*4f2df630SAndroid Build Coastguard Worker 1389*4f2df630SAndroid Build Coastguard Worker struct TPMT_KDF_SCHEME { 1390*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_KDF scheme = {}; 1391*4f2df630SAndroid Build Coastguard Worker TPMU_KDF_SCHEME details = {}; 1392*4f2df630SAndroid Build Coastguard Worker }; 1393*4f2df630SAndroid Build Coastguard Worker 1394*4f2df630SAndroid Build Coastguard Worker union TPMU_ASYM_SCHEME { 1395*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSASSA rsassa; 1396*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSAPSS rsapss; 1397*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_OAEP oaep; 1398*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDSA ecdsa; 1399*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SM2 sm2; 1400*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDAA ecdaa; 1401*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECSCHNORR ec_schnorr; 1402*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDH ecdh; 1403*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SIGHASH any_sig; 1404*4f2df630SAndroid Build Coastguard Worker }; 1405*4f2df630SAndroid Build Coastguard Worker 1406*4f2df630SAndroid Build Coastguard Worker struct TPMT_ASYM_SCHEME { 1407*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_ASYM_SCHEME scheme = {}; 1408*4f2df630SAndroid Build Coastguard Worker TPMU_ASYM_SCHEME details = {}; 1409*4f2df630SAndroid Build Coastguard Worker }; 1410*4f2df630SAndroid Build Coastguard Worker 1411*4f2df630SAndroid Build Coastguard Worker struct TPMT_RSA_SCHEME { 1412*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_RSA_SCHEME scheme = {}; 1413*4f2df630SAndroid Build Coastguard Worker TPMU_ASYM_SCHEME details = {}; 1414*4f2df630SAndroid Build Coastguard Worker }; 1415*4f2df630SAndroid Build Coastguard Worker 1416*4f2df630SAndroid Build Coastguard Worker struct TPMT_RSA_DECRYPT { 1417*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_RSA_DECRYPT scheme = {}; 1418*4f2df630SAndroid Build Coastguard Worker TPMU_ASYM_SCHEME details = {}; 1419*4f2df630SAndroid Build Coastguard Worker }; 1420*4f2df630SAndroid Build Coastguard Worker 1421*4f2df630SAndroid Build Coastguard Worker struct TPM2B_PUBLIC_KEY_RSA { 1422*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1423*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_RSA_KEY_BYTES] = {}; 1424*4f2df630SAndroid Build Coastguard Worker }; 1425*4f2df630SAndroid Build Coastguard Worker 1426*4f2df630SAndroid Build Coastguard Worker struct TPM2B_PRIVATE_KEY_RSA { 1427*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1428*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_RSA_KEY_BYTES / 2] = {}; 1429*4f2df630SAndroid Build Coastguard Worker }; 1430*4f2df630SAndroid Build Coastguard Worker 1431*4f2df630SAndroid Build Coastguard Worker struct TPM2B_ECC_PARAMETER { 1432*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1433*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_ECC_KEY_BYTES] = {}; 1434*4f2df630SAndroid Build Coastguard Worker }; 1435*4f2df630SAndroid Build Coastguard Worker 1436*4f2df630SAndroid Build Coastguard Worker struct TPMS_ECC_POINT { 1437*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER x = {}; 1438*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER y = {}; 1439*4f2df630SAndroid Build Coastguard Worker }; 1440*4f2df630SAndroid Build Coastguard Worker 1441*4f2df630SAndroid Build Coastguard Worker struct TPM2B_ECC_POINT { 1442*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1443*4f2df630SAndroid Build Coastguard Worker TPMS_ECC_POINT point = {}; 1444*4f2df630SAndroid Build Coastguard Worker }; 1445*4f2df630SAndroid Build Coastguard Worker 1446*4f2df630SAndroid Build Coastguard Worker struct TPMT_ECC_SCHEME { 1447*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_ECC_SCHEME scheme = {}; 1448*4f2df630SAndroid Build Coastguard Worker TPMU_SIG_SCHEME details = {}; 1449*4f2df630SAndroid Build Coastguard Worker }; 1450*4f2df630SAndroid Build Coastguard Worker 1451*4f2df630SAndroid Build Coastguard Worker struct TPMS_ALGORITHM_DETAIL_ECC { 1452*4f2df630SAndroid Build Coastguard Worker TPM_ECC_CURVE curve_id = {}; 1453*4f2df630SAndroid Build Coastguard Worker UINT16 key_size = {}; 1454*4f2df630SAndroid Build Coastguard Worker TPMT_KDF_SCHEME kdf = {}; 1455*4f2df630SAndroid Build Coastguard Worker TPMT_ECC_SCHEME sign = {}; 1456*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER p = {}; 1457*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER a = {}; 1458*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER b = {}; 1459*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER g_x = {}; 1460*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER g_y = {}; 1461*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER n = {}; 1462*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER h = {}; 1463*4f2df630SAndroid Build Coastguard Worker }; 1464*4f2df630SAndroid Build Coastguard Worker 1465*4f2df630SAndroid Build Coastguard Worker struct TPMS_SIGNATURE_RSASSA { 1466*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash = {}; 1467*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA sig = {}; 1468*4f2df630SAndroid Build Coastguard Worker }; 1469*4f2df630SAndroid Build Coastguard Worker 1470*4f2df630SAndroid Build Coastguard Worker struct TPMS_SIGNATURE_RSAPSS { 1471*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash = {}; 1472*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA sig = {}; 1473*4f2df630SAndroid Build Coastguard Worker }; 1474*4f2df630SAndroid Build Coastguard Worker 1475*4f2df630SAndroid Build Coastguard Worker struct TPMS_SIGNATURE_ECDSA { 1476*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH hash = {}; 1477*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER signature_r = {}; 1478*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER signature_s = {}; 1479*4f2df630SAndroid Build Coastguard Worker }; 1480*4f2df630SAndroid Build Coastguard Worker 1481*4f2df630SAndroid Build Coastguard Worker union TPMU_SIGNATURE { 1482*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_RSASSA rsassa; 1483*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_RSAPSS rsapss; 1484*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_ECDSA ecdsa; 1485*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_ECDSA sm2; 1486*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_ECDSA ecdaa; 1487*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_ECDSA ecschnorr; 1488*4f2df630SAndroid Build Coastguard Worker TPMT_HA hmac; 1489*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SIGHASH any; 1490*4f2df630SAndroid Build Coastguard Worker }; 1491*4f2df630SAndroid Build Coastguard Worker 1492*4f2df630SAndroid Build Coastguard Worker struct TPMT_SIGNATURE { 1493*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SIG_SCHEME sig_alg = {}; 1494*4f2df630SAndroid Build Coastguard Worker TPMU_SIGNATURE signature = {}; 1495*4f2df630SAndroid Build Coastguard Worker }; 1496*4f2df630SAndroid Build Coastguard Worker 1497*4f2df630SAndroid Build Coastguard Worker union TPMU_ENCRYPTED_SECRET { 1498*4f2df630SAndroid Build Coastguard Worker BYTE ecc[sizeof(TPMS_ECC_POINT)]; 1499*4f2df630SAndroid Build Coastguard Worker BYTE rsa[MAX_RSA_KEY_BYTES]; 1500*4f2df630SAndroid Build Coastguard Worker BYTE symmetric[sizeof(TPM2B_DIGEST)]; 1501*4f2df630SAndroid Build Coastguard Worker BYTE keyed_hash[sizeof(TPM2B_DIGEST)]; 1502*4f2df630SAndroid Build Coastguard Worker }; 1503*4f2df630SAndroid Build Coastguard Worker 1504*4f2df630SAndroid Build Coastguard Worker struct TPM2B_ENCRYPTED_SECRET { 1505*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1506*4f2df630SAndroid Build Coastguard Worker BYTE secret[sizeof(TPMU_ENCRYPTED_SECRET)] = {}; 1507*4f2df630SAndroid Build Coastguard Worker }; 1508*4f2df630SAndroid Build Coastguard Worker 1509*4f2df630SAndroid Build Coastguard Worker struct TPMS_KEYEDHASH_PARMS { 1510*4f2df630SAndroid Build Coastguard Worker TPMT_KEYEDHASH_SCHEME scheme = {}; 1511*4f2df630SAndroid Build Coastguard Worker }; 1512*4f2df630SAndroid Build Coastguard Worker 1513*4f2df630SAndroid Build Coastguard Worker struct TPMS_ASYM_PARMS { 1514*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF_OBJECT symmetric = {}; 1515*4f2df630SAndroid Build Coastguard Worker TPMT_ASYM_SCHEME scheme = {}; 1516*4f2df630SAndroid Build Coastguard Worker }; 1517*4f2df630SAndroid Build Coastguard Worker 1518*4f2df630SAndroid Build Coastguard Worker struct TPMS_RSA_PARMS { 1519*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF_OBJECT symmetric = {}; 1520*4f2df630SAndroid Build Coastguard Worker TPMT_RSA_SCHEME scheme = {}; 1521*4f2df630SAndroid Build Coastguard Worker TPMI_RSA_KEY_BITS key_bits = {}; 1522*4f2df630SAndroid Build Coastguard Worker UINT32 exponent = {}; 1523*4f2df630SAndroid Build Coastguard Worker }; 1524*4f2df630SAndroid Build Coastguard Worker 1525*4f2df630SAndroid Build Coastguard Worker struct TPMS_ECC_PARMS { 1526*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF_OBJECT symmetric = {}; 1527*4f2df630SAndroid Build Coastguard Worker TPMT_ECC_SCHEME scheme = {}; 1528*4f2df630SAndroid Build Coastguard Worker TPMI_ECC_CURVE curve_id = {}; 1529*4f2df630SAndroid Build Coastguard Worker TPMT_KDF_SCHEME kdf = {}; 1530*4f2df630SAndroid Build Coastguard Worker }; 1531*4f2df630SAndroid Build Coastguard Worker 1532*4f2df630SAndroid Build Coastguard Worker union TPMU_PUBLIC_PARMS { 1533*4f2df630SAndroid Build Coastguard Worker TPMS_KEYEDHASH_PARMS keyed_hash_detail; 1534*4f2df630SAndroid Build Coastguard Worker TPMS_SYMCIPHER_PARMS sym_detail; 1535*4f2df630SAndroid Build Coastguard Worker TPMS_RSA_PARMS rsa_detail; 1536*4f2df630SAndroid Build Coastguard Worker TPMS_ECC_PARMS ecc_detail; 1537*4f2df630SAndroid Build Coastguard Worker TPMS_ASYM_PARMS asym_detail; 1538*4f2df630SAndroid Build Coastguard Worker }; 1539*4f2df630SAndroid Build Coastguard Worker 1540*4f2df630SAndroid Build Coastguard Worker struct TPMT_PUBLIC_PARMS { 1541*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_PUBLIC type = {}; 1542*4f2df630SAndroid Build Coastguard Worker TPMU_PUBLIC_PARMS parameters = {}; 1543*4f2df630SAndroid Build Coastguard Worker }; 1544*4f2df630SAndroid Build Coastguard Worker 1545*4f2df630SAndroid Build Coastguard Worker union TPMU_PUBLIC_ID { 1546*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST keyed_hash; 1547*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST sym; 1548*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA rsa; 1549*4f2df630SAndroid Build Coastguard Worker TPMS_ECC_POINT ecc; 1550*4f2df630SAndroid Build Coastguard Worker }; 1551*4f2df630SAndroid Build Coastguard Worker 1552*4f2df630SAndroid Build Coastguard Worker struct TPMT_PUBLIC { 1553*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_PUBLIC type = {}; 1554*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH name_alg = {}; 1555*4f2df630SAndroid Build Coastguard Worker TPMA_OBJECT object_attributes = {}; 1556*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST auth_policy = {}; 1557*4f2df630SAndroid Build Coastguard Worker TPMU_PUBLIC_PARMS parameters = {}; 1558*4f2df630SAndroid Build Coastguard Worker TPMU_PUBLIC_ID unique = {}; 1559*4f2df630SAndroid Build Coastguard Worker }; 1560*4f2df630SAndroid Build Coastguard Worker 1561*4f2df630SAndroid Build Coastguard Worker struct TPM2B_PUBLIC { 1562*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1563*4f2df630SAndroid Build Coastguard Worker TPMT_PUBLIC public_area = {}; 1564*4f2df630SAndroid Build Coastguard Worker }; 1565*4f2df630SAndroid Build Coastguard Worker 1566*4f2df630SAndroid Build Coastguard Worker struct TPM2B_PRIVATE_VENDOR_SPECIFIC { 1567*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1568*4f2df630SAndroid Build Coastguard Worker BYTE buffer[PRIVATE_VENDOR_SPECIFIC_BYTES] = {}; 1569*4f2df630SAndroid Build Coastguard Worker }; 1570*4f2df630SAndroid Build Coastguard Worker 1571*4f2df630SAndroid Build Coastguard Worker union TPMU_SENSITIVE_COMPOSITE { 1572*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE_KEY_RSA rsa; 1573*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER ecc; 1574*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_DATA bits; 1575*4f2df630SAndroid Build Coastguard Worker TPM2B_SYM_KEY sym; 1576*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE_VENDOR_SPECIFIC any; 1577*4f2df630SAndroid Build Coastguard Worker }; 1578*4f2df630SAndroid Build Coastguard Worker 1579*4f2df630SAndroid Build Coastguard Worker struct TPMT_SENSITIVE { 1580*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_PUBLIC sensitive_type = {}; 1581*4f2df630SAndroid Build Coastguard Worker TPM2B_AUTH auth_value = {}; 1582*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST seed_value = {}; 1583*4f2df630SAndroid Build Coastguard Worker TPMU_SENSITIVE_COMPOSITE sensitive = {}; 1584*4f2df630SAndroid Build Coastguard Worker }; 1585*4f2df630SAndroid Build Coastguard Worker 1586*4f2df630SAndroid Build Coastguard Worker struct TPM2B_SENSITIVE { 1587*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1588*4f2df630SAndroid Build Coastguard Worker TPMT_SENSITIVE sensitive_area = {}; 1589*4f2df630SAndroid Build Coastguard Worker }; 1590*4f2df630SAndroid Build Coastguard Worker 1591*4f2df630SAndroid Build Coastguard Worker struct TPM2B_PRIVATE { 1592*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1593*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_DIGEST_BUFFER] = {}; 1594*4f2df630SAndroid Build Coastguard Worker }; 1595*4f2df630SAndroid Build Coastguard Worker 1596*4f2df630SAndroid Build Coastguard Worker struct TPM2B_ID_OBJECT { 1597*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1598*4f2df630SAndroid Build Coastguard Worker BYTE credential[MAX_DIGEST_BUFFER] = {}; 1599*4f2df630SAndroid Build Coastguard Worker }; 1600*4f2df630SAndroid Build Coastguard Worker 1601*4f2df630SAndroid Build Coastguard Worker struct TPMS_NV_PUBLIC { 1602*4f2df630SAndroid Build Coastguard Worker TPMI_RH_NV_INDEX nv_index = {}; 1603*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH name_alg = {}; 1604*4f2df630SAndroid Build Coastguard Worker TPMA_NV attributes = {}; 1605*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST auth_policy = {}; 1606*4f2df630SAndroid Build Coastguard Worker UINT16 data_size = {}; 1607*4f2df630SAndroid Build Coastguard Worker }; 1608*4f2df630SAndroid Build Coastguard Worker 1609*4f2df630SAndroid Build Coastguard Worker struct TPM2B_NV_PUBLIC { 1610*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1611*4f2df630SAndroid Build Coastguard Worker TPMS_NV_PUBLIC nv_public = {}; 1612*4f2df630SAndroid Build Coastguard Worker }; 1613*4f2df630SAndroid Build Coastguard Worker 1614*4f2df630SAndroid Build Coastguard Worker struct TPM2B_CONTEXT_SENSITIVE { 1615*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1616*4f2df630SAndroid Build Coastguard Worker BYTE buffer[MAX_CONTEXT_SIZE] = {}; 1617*4f2df630SAndroid Build Coastguard Worker }; 1618*4f2df630SAndroid Build Coastguard Worker 1619*4f2df630SAndroid Build Coastguard Worker struct TPMS_CONTEXT_DATA { 1620*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST integrity = {}; 1621*4f2df630SAndroid Build Coastguard Worker TPM2B_CONTEXT_SENSITIVE encrypted = {}; 1622*4f2df630SAndroid Build Coastguard Worker }; 1623*4f2df630SAndroid Build Coastguard Worker 1624*4f2df630SAndroid Build Coastguard Worker struct TPM2B_CONTEXT_DATA { 1625*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1626*4f2df630SAndroid Build Coastguard Worker BYTE buffer[sizeof(TPMS_CONTEXT_DATA)] = {}; 1627*4f2df630SAndroid Build Coastguard Worker }; 1628*4f2df630SAndroid Build Coastguard Worker 1629*4f2df630SAndroid Build Coastguard Worker struct TPMS_CONTEXT { 1630*4f2df630SAndroid Build Coastguard Worker UINT64 sequence = {}; 1631*4f2df630SAndroid Build Coastguard Worker TPMI_DH_CONTEXT saved_handle = {}; 1632*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY hierarchy = {}; 1633*4f2df630SAndroid Build Coastguard Worker TPM2B_CONTEXT_DATA context_blob = {}; 1634*4f2df630SAndroid Build Coastguard Worker }; 1635*4f2df630SAndroid Build Coastguard Worker 1636*4f2df630SAndroid Build Coastguard Worker struct TPMS_CREATION_DATA { 1637*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION pcr_select = {}; 1638*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST pcr_digest = {}; 1639*4f2df630SAndroid Build Coastguard Worker TPMA_LOCALITY locality = {}; 1640*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID parent_name_alg = {}; 1641*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME parent_name = {}; 1642*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME parent_qualified_name = {}; 1643*4f2df630SAndroid Build Coastguard Worker TPM2B_DATA outside_info = {}; 1644*4f2df630SAndroid Build Coastguard Worker }; 1645*4f2df630SAndroid Build Coastguard Worker 1646*4f2df630SAndroid Build Coastguard Worker struct TPM2B_CREATION_DATA { 1647*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1648*4f2df630SAndroid Build Coastguard Worker TPMS_CREATION_DATA creation_data = {}; 1649*4f2df630SAndroid Build Coastguard Worker }; 1650*4f2df630SAndroid Build Coastguard Worker 1651*4f2df630SAndroid Build Coastguard Worker struct FIDO_DATA_RANGE { 1652*4f2df630SAndroid Build Coastguard Worker UINT16 offset = {}; 1653*4f2df630SAndroid Build Coastguard Worker UINT16 size = {}; 1654*4f2df630SAndroid Build Coastguard Worker }; 1655*4f2df630SAndroid Build Coastguard Worker 1656*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT size_t GetNumberOfRequestHandles(TPM_CC command_code); 1657*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT size_t GetNumberOfResponseHandles(TPM_CC command_code); 1658*4f2df630SAndroid Build Coastguard Worker 1659*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_uint8_t(const uint8_t& value, 1660*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1661*4f2df630SAndroid Build Coastguard Worker 1662*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_uint8_t(std::string* buffer, 1663*4f2df630SAndroid Build Coastguard Worker uint8_t* value, 1664*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1665*4f2df630SAndroid Build Coastguard Worker 1666*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_int8_t(const int8_t& value, std::string* buffer); 1667*4f2df630SAndroid Build Coastguard Worker 1668*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_int8_t(std::string* buffer, 1669*4f2df630SAndroid Build Coastguard Worker int8_t* value, 1670*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1671*4f2df630SAndroid Build Coastguard Worker 1672*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_int(const int& value, std::string* buffer); 1673*4f2df630SAndroid Build Coastguard Worker 1674*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_int(std::string* buffer, 1675*4f2df630SAndroid Build Coastguard Worker int* value, 1676*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1677*4f2df630SAndroid Build Coastguard Worker 1678*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_uint16_t(const uint16_t& value, 1679*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1680*4f2df630SAndroid Build Coastguard Worker 1681*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_uint16_t(std::string* buffer, 1682*4f2df630SAndroid Build Coastguard Worker uint16_t* value, 1683*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1684*4f2df630SAndroid Build Coastguard Worker 1685*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_int16_t(const int16_t& value, 1686*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1687*4f2df630SAndroid Build Coastguard Worker 1688*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_int16_t(std::string* buffer, 1689*4f2df630SAndroid Build Coastguard Worker int16_t* value, 1690*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1691*4f2df630SAndroid Build Coastguard Worker 1692*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_uint32_t(const uint32_t& value, 1693*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1694*4f2df630SAndroid Build Coastguard Worker 1695*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_uint32_t(std::string* buffer, 1696*4f2df630SAndroid Build Coastguard Worker uint32_t* value, 1697*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1698*4f2df630SAndroid Build Coastguard Worker 1699*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_int32_t(const int32_t& value, 1700*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1701*4f2df630SAndroid Build Coastguard Worker 1702*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_int32_t(std::string* buffer, 1703*4f2df630SAndroid Build Coastguard Worker int32_t* value, 1704*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1705*4f2df630SAndroid Build Coastguard Worker 1706*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_uint64_t(const uint64_t& value, 1707*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1708*4f2df630SAndroid Build Coastguard Worker 1709*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_uint64_t(std::string* buffer, 1710*4f2df630SAndroid Build Coastguard Worker uint64_t* value, 1711*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1712*4f2df630SAndroid Build Coastguard Worker 1713*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_int64_t(const int64_t& value, 1714*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1715*4f2df630SAndroid Build Coastguard Worker 1716*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_int64_t(std::string* buffer, 1717*4f2df630SAndroid Build Coastguard Worker int64_t* value, 1718*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1719*4f2df630SAndroid Build Coastguard Worker 1720*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_UINT8(const UINT8& value, std::string* buffer); 1721*4f2df630SAndroid Build Coastguard Worker 1722*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_UINT8(std::string* buffer, 1723*4f2df630SAndroid Build Coastguard Worker UINT8* value, 1724*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1725*4f2df630SAndroid Build Coastguard Worker 1726*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_BYTE(const BYTE& value, std::string* buffer); 1727*4f2df630SAndroid Build Coastguard Worker 1728*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_BYTE(std::string* buffer, 1729*4f2df630SAndroid Build Coastguard Worker BYTE* value, 1730*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1731*4f2df630SAndroid Build Coastguard Worker 1732*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_INT8(const INT8& value, std::string* buffer); 1733*4f2df630SAndroid Build Coastguard Worker 1734*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_INT8(std::string* buffer, 1735*4f2df630SAndroid Build Coastguard Worker INT8* value, 1736*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1737*4f2df630SAndroid Build Coastguard Worker 1738*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_BOOL(const BOOL& value, std::string* buffer); 1739*4f2df630SAndroid Build Coastguard Worker 1740*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_BOOL(std::string* buffer, 1741*4f2df630SAndroid Build Coastguard Worker BOOL* value, 1742*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1743*4f2df630SAndroid Build Coastguard Worker 1744*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_UINT16(const UINT16& value, std::string* buffer); 1745*4f2df630SAndroid Build Coastguard Worker 1746*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_UINT16(std::string* buffer, 1747*4f2df630SAndroid Build Coastguard Worker UINT16* value, 1748*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1749*4f2df630SAndroid Build Coastguard Worker 1750*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_INT16(const INT16& value, std::string* buffer); 1751*4f2df630SAndroid Build Coastguard Worker 1752*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_INT16(std::string* buffer, 1753*4f2df630SAndroid Build Coastguard Worker INT16* value, 1754*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1755*4f2df630SAndroid Build Coastguard Worker 1756*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_UINT32(const UINT32& value, std::string* buffer); 1757*4f2df630SAndroid Build Coastguard Worker 1758*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_UINT32(std::string* buffer, 1759*4f2df630SAndroid Build Coastguard Worker UINT32* value, 1760*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1761*4f2df630SAndroid Build Coastguard Worker 1762*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_INT32(const INT32& value, std::string* buffer); 1763*4f2df630SAndroid Build Coastguard Worker 1764*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_INT32(std::string* buffer, 1765*4f2df630SAndroid Build Coastguard Worker INT32* value, 1766*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1767*4f2df630SAndroid Build Coastguard Worker 1768*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_UINT64(const UINT64& value, std::string* buffer); 1769*4f2df630SAndroid Build Coastguard Worker 1770*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_UINT64(std::string* buffer, 1771*4f2df630SAndroid Build Coastguard Worker UINT64* value, 1772*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1773*4f2df630SAndroid Build Coastguard Worker 1774*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_INT64(const INT64& value, std::string* buffer); 1775*4f2df630SAndroid Build Coastguard Worker 1776*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_INT64(std::string* buffer, 1777*4f2df630SAndroid Build Coastguard Worker INT64* value, 1778*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1779*4f2df630SAndroid Build Coastguard Worker 1780*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_ALGORITHM_ID(const TPM_ALGORITHM_ID& value, 1781*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1782*4f2df630SAndroid Build Coastguard Worker 1783*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_ALGORITHM_ID(std::string* buffer, 1784*4f2df630SAndroid Build Coastguard Worker TPM_ALGORITHM_ID* value, 1785*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1786*4f2df630SAndroid Build Coastguard Worker 1787*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_MODIFIER_INDICATOR( 1788*4f2df630SAndroid Build Coastguard Worker const TPM_MODIFIER_INDICATOR& value, std::string* buffer); 1789*4f2df630SAndroid Build Coastguard Worker 1790*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_MODIFIER_INDICATOR(std::string* buffer, 1791*4f2df630SAndroid Build Coastguard Worker TPM_MODIFIER_INDICATOR* value, 1792*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1793*4f2df630SAndroid Build Coastguard Worker 1794*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_AUTHORIZATION_SIZE( 1795*4f2df630SAndroid Build Coastguard Worker const TPM_AUTHORIZATION_SIZE& value, std::string* buffer); 1796*4f2df630SAndroid Build Coastguard Worker 1797*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_AUTHORIZATION_SIZE(std::string* buffer, 1798*4f2df630SAndroid Build Coastguard Worker TPM_AUTHORIZATION_SIZE* value, 1799*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1800*4f2df630SAndroid Build Coastguard Worker 1801*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_PARAMETER_SIZE( 1802*4f2df630SAndroid Build Coastguard Worker const TPM_PARAMETER_SIZE& value, std::string* buffer); 1803*4f2df630SAndroid Build Coastguard Worker 1804*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_PARAMETER_SIZE(std::string* buffer, 1805*4f2df630SAndroid Build Coastguard Worker TPM_PARAMETER_SIZE* value, 1806*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1807*4f2df630SAndroid Build Coastguard Worker 1808*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_KEY_SIZE(const TPM_KEY_SIZE& value, 1809*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1810*4f2df630SAndroid Build Coastguard Worker 1811*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_KEY_SIZE(std::string* buffer, 1812*4f2df630SAndroid Build Coastguard Worker TPM_KEY_SIZE* value, 1813*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1814*4f2df630SAndroid Build Coastguard Worker 1815*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_KEY_BITS(const TPM_KEY_BITS& value, 1816*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1817*4f2df630SAndroid Build Coastguard Worker 1818*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_KEY_BITS(std::string* buffer, 1819*4f2df630SAndroid Build Coastguard Worker TPM_KEY_BITS* value, 1820*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1821*4f2df630SAndroid Build Coastguard Worker 1822*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_HANDLE(const TPM_HANDLE& value, 1823*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1824*4f2df630SAndroid Build Coastguard Worker 1825*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_HANDLE(std::string* buffer, 1826*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* value, 1827*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1828*4f2df630SAndroid Build Coastguard Worker 1829*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_NONCE(const TPM2B_NONCE& value, 1830*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1831*4f2df630SAndroid Build Coastguard Worker 1832*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_NONCE(std::string* buffer, 1833*4f2df630SAndroid Build Coastguard Worker TPM2B_NONCE* value, 1834*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1835*4f2df630SAndroid Build Coastguard Worker 1836*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_AUTH(const TPM2B_AUTH& value, 1837*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1838*4f2df630SAndroid Build Coastguard Worker 1839*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_AUTH(std::string* buffer, 1840*4f2df630SAndroid Build Coastguard Worker TPM2B_AUTH* value, 1841*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1842*4f2df630SAndroid Build Coastguard Worker 1843*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_OPERAND(const TPM2B_OPERAND& value, 1844*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1845*4f2df630SAndroid Build Coastguard Worker 1846*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_OPERAND(std::string* buffer, 1847*4f2df630SAndroid Build Coastguard Worker TPM2B_OPERAND* value, 1848*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1849*4f2df630SAndroid Build Coastguard Worker 1850*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_HMAC(const TPMS_SCHEME_HMAC& value, 1851*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1852*4f2df630SAndroid Build Coastguard Worker 1853*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_HMAC(std::string* buffer, 1854*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_HMAC* value, 1855*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1856*4f2df630SAndroid Build Coastguard Worker 1857*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_RSASSA( 1858*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_RSASSA& value, std::string* buffer); 1859*4f2df630SAndroid Build Coastguard Worker 1860*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_RSASSA(std::string* buffer, 1861*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSASSA* value, 1862*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1863*4f2df630SAndroid Build Coastguard Worker 1864*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_RSAPSS( 1865*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_RSAPSS& value, std::string* buffer); 1866*4f2df630SAndroid Build Coastguard Worker 1867*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_RSAPSS(std::string* buffer, 1868*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_RSAPSS* value, 1869*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1870*4f2df630SAndroid Build Coastguard Worker 1871*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_ECDSA(const TPMS_SCHEME_ECDSA& value, 1872*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1873*4f2df630SAndroid Build Coastguard Worker 1874*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_ECDSA(std::string* buffer, 1875*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDSA* value, 1876*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1877*4f2df630SAndroid Build Coastguard Worker 1878*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_SM2(const TPMS_SCHEME_SM2& value, 1879*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1880*4f2df630SAndroid Build Coastguard Worker 1881*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_SM2(std::string* buffer, 1882*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SM2* value, 1883*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1884*4f2df630SAndroid Build Coastguard Worker 1885*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_ECSCHNORR( 1886*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_ECSCHNORR& value, std::string* buffer); 1887*4f2df630SAndroid Build Coastguard Worker 1888*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_ECSCHNORR(std::string* buffer, 1889*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECSCHNORR* value, 1890*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1891*4f2df630SAndroid Build Coastguard Worker 1892*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_YES_NO(const TPMI_YES_NO& value, 1893*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1894*4f2df630SAndroid Build Coastguard Worker 1895*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_YES_NO(std::string* buffer, 1896*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO* value, 1897*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1898*4f2df630SAndroid Build Coastguard Worker 1899*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_DH_OBJECT(const TPMI_DH_OBJECT& value, 1900*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1901*4f2df630SAndroid Build Coastguard Worker 1902*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_DH_OBJECT(std::string* buffer, 1903*4f2df630SAndroid Build Coastguard Worker TPMI_DH_OBJECT* value, 1904*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1905*4f2df630SAndroid Build Coastguard Worker 1906*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_DH_PERSISTENT( 1907*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PERSISTENT& value, std::string* buffer); 1908*4f2df630SAndroid Build Coastguard Worker 1909*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_DH_PERSISTENT(std::string* buffer, 1910*4f2df630SAndroid Build Coastguard Worker TPMI_DH_PERSISTENT* value, 1911*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1912*4f2df630SAndroid Build Coastguard Worker 1913*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_DH_ENTITY(const TPMI_DH_ENTITY& value, 1914*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1915*4f2df630SAndroid Build Coastguard Worker 1916*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_DH_ENTITY(std::string* buffer, 1917*4f2df630SAndroid Build Coastguard Worker TPMI_DH_ENTITY* value, 1918*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1919*4f2df630SAndroid Build Coastguard Worker 1920*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_DH_PCR(const TPMI_DH_PCR& value, 1921*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1922*4f2df630SAndroid Build Coastguard Worker 1923*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_DH_PCR(std::string* buffer, 1924*4f2df630SAndroid Build Coastguard Worker TPMI_DH_PCR* value, 1925*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1926*4f2df630SAndroid Build Coastguard Worker 1927*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_SH_AUTH_SESSION( 1928*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_AUTH_SESSION& value, std::string* buffer); 1929*4f2df630SAndroid Build Coastguard Worker 1930*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_SH_AUTH_SESSION(std::string* buffer, 1931*4f2df630SAndroid Build Coastguard Worker TPMI_SH_AUTH_SESSION* value, 1932*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1933*4f2df630SAndroid Build Coastguard Worker 1934*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_SH_HMAC(const TPMI_SH_HMAC& value, 1935*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1936*4f2df630SAndroid Build Coastguard Worker 1937*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_SH_HMAC(std::string* buffer, 1938*4f2df630SAndroid Build Coastguard Worker TPMI_SH_HMAC* value, 1939*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1940*4f2df630SAndroid Build Coastguard Worker 1941*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_SH_POLICY(const TPMI_SH_POLICY& value, 1942*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1943*4f2df630SAndroid Build Coastguard Worker 1944*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_SH_POLICY(std::string* buffer, 1945*4f2df630SAndroid Build Coastguard Worker TPMI_SH_POLICY* value, 1946*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1947*4f2df630SAndroid Build Coastguard Worker 1948*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_DH_CONTEXT(const TPMI_DH_CONTEXT& value, 1949*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1950*4f2df630SAndroid Build Coastguard Worker 1951*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_DH_CONTEXT(std::string* buffer, 1952*4f2df630SAndroid Build Coastguard Worker TPMI_DH_CONTEXT* value, 1953*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1954*4f2df630SAndroid Build Coastguard Worker 1955*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_HIERARCHY(const TPMI_RH_HIERARCHY& value, 1956*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1957*4f2df630SAndroid Build Coastguard Worker 1958*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_HIERARCHY(std::string* buffer, 1959*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY* value, 1960*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1961*4f2df630SAndroid Build Coastguard Worker 1962*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_ENABLES(const TPMI_RH_ENABLES& value, 1963*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1964*4f2df630SAndroid Build Coastguard Worker 1965*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_ENABLES(std::string* buffer, 1966*4f2df630SAndroid Build Coastguard Worker TPMI_RH_ENABLES* value, 1967*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1968*4f2df630SAndroid Build Coastguard Worker 1969*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_HIERARCHY_AUTH( 1970*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY_AUTH& value, std::string* buffer); 1971*4f2df630SAndroid Build Coastguard Worker 1972*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_HIERARCHY_AUTH(std::string* buffer, 1973*4f2df630SAndroid Build Coastguard Worker TPMI_RH_HIERARCHY_AUTH* value, 1974*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1975*4f2df630SAndroid Build Coastguard Worker 1976*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_PLATFORM(const TPMI_RH_PLATFORM& value, 1977*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1978*4f2df630SAndroid Build Coastguard Worker 1979*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_PLATFORM(std::string* buffer, 1980*4f2df630SAndroid Build Coastguard Worker TPMI_RH_PLATFORM* value, 1981*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1982*4f2df630SAndroid Build Coastguard Worker 1983*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_OWNER(const TPMI_RH_OWNER& value, 1984*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1985*4f2df630SAndroid Build Coastguard Worker 1986*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_OWNER(std::string* buffer, 1987*4f2df630SAndroid Build Coastguard Worker TPMI_RH_OWNER* value, 1988*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1989*4f2df630SAndroid Build Coastguard Worker 1990*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_ENDORSEMENT( 1991*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& value, std::string* buffer); 1992*4f2df630SAndroid Build Coastguard Worker 1993*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_ENDORSEMENT(std::string* buffer, 1994*4f2df630SAndroid Build Coastguard Worker TPMI_RH_ENDORSEMENT* value, 1995*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 1996*4f2df630SAndroid Build Coastguard Worker 1997*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_PROVISION(const TPMI_RH_PROVISION& value, 1998*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 1999*4f2df630SAndroid Build Coastguard Worker 2000*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_PROVISION(std::string* buffer, 2001*4f2df630SAndroid Build Coastguard Worker TPMI_RH_PROVISION* value, 2002*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2003*4f2df630SAndroid Build Coastguard Worker 2004*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_CLEAR(const TPMI_RH_CLEAR& value, 2005*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2006*4f2df630SAndroid Build Coastguard Worker 2007*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_CLEAR(std::string* buffer, 2008*4f2df630SAndroid Build Coastguard Worker TPMI_RH_CLEAR* value, 2009*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2010*4f2df630SAndroid Build Coastguard Worker 2011*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_NV_AUTH(const TPMI_RH_NV_AUTH& value, 2012*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2013*4f2df630SAndroid Build Coastguard Worker 2014*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_NV_AUTH(std::string* buffer, 2015*4f2df630SAndroid Build Coastguard Worker TPMI_RH_NV_AUTH* value, 2016*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2017*4f2df630SAndroid Build Coastguard Worker 2018*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_LOCKOUT(const TPMI_RH_LOCKOUT& value, 2019*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2020*4f2df630SAndroid Build Coastguard Worker 2021*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_LOCKOUT(std::string* buffer, 2022*4f2df630SAndroid Build Coastguard Worker TPMI_RH_LOCKOUT* value, 2023*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2024*4f2df630SAndroid Build Coastguard Worker 2025*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RH_NV_INDEX(const TPMI_RH_NV_INDEX& value, 2026*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2027*4f2df630SAndroid Build Coastguard Worker 2028*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RH_NV_INDEX(std::string* buffer, 2029*4f2df630SAndroid Build Coastguard Worker TPMI_RH_NV_INDEX* value, 2030*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2031*4f2df630SAndroid Build Coastguard Worker 2032*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_HASH(const TPMI_ALG_HASH& value, 2033*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2034*4f2df630SAndroid Build Coastguard Worker 2035*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_HASH(std::string* buffer, 2036*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_HASH* value, 2037*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2038*4f2df630SAndroid Build Coastguard Worker 2039*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_ASYM(const TPMI_ALG_ASYM& value, 2040*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2041*4f2df630SAndroid Build Coastguard Worker 2042*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_ASYM(std::string* buffer, 2043*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_ASYM* value, 2044*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2045*4f2df630SAndroid Build Coastguard Worker 2046*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_SYM(const TPMI_ALG_SYM& value, 2047*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2048*4f2df630SAndroid Build Coastguard Worker 2049*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_SYM(std::string* buffer, 2050*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM* value, 2051*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2052*4f2df630SAndroid Build Coastguard Worker 2053*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_SYM_OBJECT( 2054*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_SYM_OBJECT& value, std::string* buffer); 2055*4f2df630SAndroid Build Coastguard Worker 2056*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_SYM_OBJECT(std::string* buffer, 2057*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_OBJECT* value, 2058*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2059*4f2df630SAndroid Build Coastguard Worker 2060*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_SYM_MODE(const TPMI_ALG_SYM_MODE& value, 2061*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2062*4f2df630SAndroid Build Coastguard Worker 2063*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_SYM_MODE(std::string* buffer, 2064*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SYM_MODE* value, 2065*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2066*4f2df630SAndroid Build Coastguard Worker 2067*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_KDF(const TPMI_ALG_KDF& value, 2068*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2069*4f2df630SAndroid Build Coastguard Worker 2070*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_KDF(std::string* buffer, 2071*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_KDF* value, 2072*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2073*4f2df630SAndroid Build Coastguard Worker 2074*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_SIG_SCHEME( 2075*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_SIG_SCHEME& value, std::string* buffer); 2076*4f2df630SAndroid Build Coastguard Worker 2077*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_SIG_SCHEME(std::string* buffer, 2078*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_SIG_SCHEME* value, 2079*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2080*4f2df630SAndroid Build Coastguard Worker 2081*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ECC_KEY_EXCHANGE( 2082*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_KEY_EXCHANGE& value, std::string* buffer); 2083*4f2df630SAndroid Build Coastguard Worker 2084*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ECC_KEY_EXCHANGE(std::string* buffer, 2085*4f2df630SAndroid Build Coastguard Worker TPMI_ECC_KEY_EXCHANGE* value, 2086*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2087*4f2df630SAndroid Build Coastguard Worker 2088*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ST_COMMAND_TAG( 2089*4f2df630SAndroid Build Coastguard Worker const TPMI_ST_COMMAND_TAG& value, std::string* buffer); 2090*4f2df630SAndroid Build Coastguard Worker 2091*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ST_COMMAND_TAG(std::string* buffer, 2092*4f2df630SAndroid Build Coastguard Worker TPMI_ST_COMMAND_TAG* value, 2093*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2094*4f2df630SAndroid Build Coastguard Worker 2095*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ST_ATTEST(const TPMI_ST_ATTEST& value, 2096*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2097*4f2df630SAndroid Build Coastguard Worker 2098*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ST_ATTEST(std::string* buffer, 2099*4f2df630SAndroid Build Coastguard Worker TPMI_ST_ATTEST* value, 2100*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2101*4f2df630SAndroid Build Coastguard Worker 2102*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_AES_KEY_BITS(const TPMI_AES_KEY_BITS& value, 2103*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2104*4f2df630SAndroid Build Coastguard Worker 2105*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_AES_KEY_BITS(std::string* buffer, 2106*4f2df630SAndroid Build Coastguard Worker TPMI_AES_KEY_BITS* value, 2107*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2108*4f2df630SAndroid Build Coastguard Worker 2109*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_SM4_KEY_BITS(const TPMI_SM4_KEY_BITS& value, 2110*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2111*4f2df630SAndroid Build Coastguard Worker 2112*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_SM4_KEY_BITS(std::string* buffer, 2113*4f2df630SAndroid Build Coastguard Worker TPMI_SM4_KEY_BITS* value, 2114*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2115*4f2df630SAndroid Build Coastguard Worker 2116*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_KEYEDHASH_SCHEME( 2117*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_KEYEDHASH_SCHEME& value, std::string* buffer); 2118*4f2df630SAndroid Build Coastguard Worker 2119*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2120*4f2df630SAndroid Build Coastguard Worker Parse_TPMI_ALG_KEYEDHASH_SCHEME(std::string* buffer, 2121*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_KEYEDHASH_SCHEME* value, 2122*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2123*4f2df630SAndroid Build Coastguard Worker 2124*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_ASYM_SCHEME( 2125*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_ASYM_SCHEME& value, std::string* buffer); 2126*4f2df630SAndroid Build Coastguard Worker 2127*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_ASYM_SCHEME(std::string* buffer, 2128*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_ASYM_SCHEME* value, 2129*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2130*4f2df630SAndroid Build Coastguard Worker 2131*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_RSA_SCHEME( 2132*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_RSA_SCHEME& value, std::string* buffer); 2133*4f2df630SAndroid Build Coastguard Worker 2134*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_RSA_SCHEME(std::string* buffer, 2135*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_RSA_SCHEME* value, 2136*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2137*4f2df630SAndroid Build Coastguard Worker 2138*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_RSA_DECRYPT( 2139*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_RSA_DECRYPT& value, std::string* buffer); 2140*4f2df630SAndroid Build Coastguard Worker 2141*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_RSA_DECRYPT(std::string* buffer, 2142*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_RSA_DECRYPT* value, 2143*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2144*4f2df630SAndroid Build Coastguard Worker 2145*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_RSA_KEY_BITS(const TPMI_RSA_KEY_BITS& value, 2146*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2147*4f2df630SAndroid Build Coastguard Worker 2148*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_RSA_KEY_BITS(std::string* buffer, 2149*4f2df630SAndroid Build Coastguard Worker TPMI_RSA_KEY_BITS* value, 2150*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2151*4f2df630SAndroid Build Coastguard Worker 2152*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_ECC_SCHEME( 2153*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_ECC_SCHEME& value, std::string* buffer); 2154*4f2df630SAndroid Build Coastguard Worker 2155*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_ECC_SCHEME(std::string* buffer, 2156*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_ECC_SCHEME* value, 2157*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2158*4f2df630SAndroid Build Coastguard Worker 2159*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ECC_CURVE(const TPMI_ECC_CURVE& value, 2160*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2161*4f2df630SAndroid Build Coastguard Worker 2162*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ECC_CURVE(std::string* buffer, 2163*4f2df630SAndroid Build Coastguard Worker TPMI_ECC_CURVE* value, 2164*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2165*4f2df630SAndroid Build Coastguard Worker 2166*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMI_ALG_PUBLIC(const TPMI_ALG_PUBLIC& value, 2167*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2168*4f2df630SAndroid Build Coastguard Worker 2169*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMI_ALG_PUBLIC(std::string* buffer, 2170*4f2df630SAndroid Build Coastguard Worker TPMI_ALG_PUBLIC* value, 2171*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2172*4f2df630SAndroid Build Coastguard Worker 2173*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_ALGORITHM(const TPMA_ALGORITHM& value, 2174*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2175*4f2df630SAndroid Build Coastguard Worker 2176*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_ALGORITHM(std::string* buffer, 2177*4f2df630SAndroid Build Coastguard Worker TPMA_ALGORITHM* value, 2178*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2179*4f2df630SAndroid Build Coastguard Worker 2180*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_OBJECT(const TPMA_OBJECT& value, 2181*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2182*4f2df630SAndroid Build Coastguard Worker 2183*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_OBJECT(std::string* buffer, 2184*4f2df630SAndroid Build Coastguard Worker TPMA_OBJECT* value, 2185*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2186*4f2df630SAndroid Build Coastguard Worker 2187*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_SESSION(const TPMA_SESSION& value, 2188*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2189*4f2df630SAndroid Build Coastguard Worker 2190*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_SESSION(std::string* buffer, 2191*4f2df630SAndroid Build Coastguard Worker TPMA_SESSION* value, 2192*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2193*4f2df630SAndroid Build Coastguard Worker 2194*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_LOCALITY(const TPMA_LOCALITY& value, 2195*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2196*4f2df630SAndroid Build Coastguard Worker 2197*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_LOCALITY(std::string* buffer, 2198*4f2df630SAndroid Build Coastguard Worker TPMA_LOCALITY* value, 2199*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2200*4f2df630SAndroid Build Coastguard Worker 2201*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_PERMANENT(const TPMA_PERMANENT& value, 2202*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2203*4f2df630SAndroid Build Coastguard Worker 2204*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_PERMANENT(std::string* buffer, 2205*4f2df630SAndroid Build Coastguard Worker TPMA_PERMANENT* value, 2206*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2207*4f2df630SAndroid Build Coastguard Worker 2208*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_STARTUP_CLEAR( 2209*4f2df630SAndroid Build Coastguard Worker const TPMA_STARTUP_CLEAR& value, std::string* buffer); 2210*4f2df630SAndroid Build Coastguard Worker 2211*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_STARTUP_CLEAR(std::string* buffer, 2212*4f2df630SAndroid Build Coastguard Worker TPMA_STARTUP_CLEAR* value, 2213*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2214*4f2df630SAndroid Build Coastguard Worker 2215*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_MEMORY(const TPMA_MEMORY& value, 2216*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2217*4f2df630SAndroid Build Coastguard Worker 2218*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_MEMORY(std::string* buffer, 2219*4f2df630SAndroid Build Coastguard Worker TPMA_MEMORY* value, 2220*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2221*4f2df630SAndroid Build Coastguard Worker 2222*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_CC(const TPMA_CC& value, 2223*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2224*4f2df630SAndroid Build Coastguard Worker 2225*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_CC(std::string* buffer, 2226*4f2df630SAndroid Build Coastguard Worker TPMA_CC* value, 2227*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2228*4f2df630SAndroid Build Coastguard Worker 2229*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_NV_INDEX(const TPM_NV_INDEX& value, 2230*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2231*4f2df630SAndroid Build Coastguard Worker 2232*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_NV_INDEX(std::string* buffer, 2233*4f2df630SAndroid Build Coastguard Worker TPM_NV_INDEX* value, 2234*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2235*4f2df630SAndroid Build Coastguard Worker 2236*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMA_NV(const TPMA_NV& value, 2237*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2238*4f2df630SAndroid Build Coastguard Worker 2239*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMA_NV(std::string* buffer, 2240*4f2df630SAndroid Build Coastguard Worker TPMA_NV* value, 2241*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2242*4f2df630SAndroid Build Coastguard Worker 2243*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_SPEC(const TPM_SPEC& value, 2244*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2245*4f2df630SAndroid Build Coastguard Worker 2246*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_SPEC(std::string* buffer, 2247*4f2df630SAndroid Build Coastguard Worker TPM_SPEC* value, 2248*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2249*4f2df630SAndroid Build Coastguard Worker 2250*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_GENERATED(const TPM_GENERATED& value, 2251*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2252*4f2df630SAndroid Build Coastguard Worker 2253*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_GENERATED(std::string* buffer, 2254*4f2df630SAndroid Build Coastguard Worker TPM_GENERATED* value, 2255*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2256*4f2df630SAndroid Build Coastguard Worker 2257*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_ALG_ID(const TPM_ALG_ID& value, 2258*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2259*4f2df630SAndroid Build Coastguard Worker 2260*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_ALG_ID(std::string* buffer, 2261*4f2df630SAndroid Build Coastguard Worker TPM_ALG_ID* value, 2262*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2263*4f2df630SAndroid Build Coastguard Worker 2264*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_ECC_CURVE(const TPM_ECC_CURVE& value, 2265*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2266*4f2df630SAndroid Build Coastguard Worker 2267*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_ECC_CURVE(std::string* buffer, 2268*4f2df630SAndroid Build Coastguard Worker TPM_ECC_CURVE* value, 2269*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2270*4f2df630SAndroid Build Coastguard Worker 2271*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_CC(const TPM_CC& value, std::string* buffer); 2272*4f2df630SAndroid Build Coastguard Worker 2273*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_CC(std::string* buffer, 2274*4f2df630SAndroid Build Coastguard Worker TPM_CC* value, 2275*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2276*4f2df630SAndroid Build Coastguard Worker 2277*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_RC(const TPM_RC& value, std::string* buffer); 2278*4f2df630SAndroid Build Coastguard Worker 2279*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_RC(std::string* buffer, 2280*4f2df630SAndroid Build Coastguard Worker TPM_RC* value, 2281*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2282*4f2df630SAndroid Build Coastguard Worker 2283*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_CLOCK_ADJUST(const TPM_CLOCK_ADJUST& value, 2284*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2285*4f2df630SAndroid Build Coastguard Worker 2286*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_CLOCK_ADJUST(std::string* buffer, 2287*4f2df630SAndroid Build Coastguard Worker TPM_CLOCK_ADJUST* value, 2288*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2289*4f2df630SAndroid Build Coastguard Worker 2290*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_EO(const TPM_EO& value, std::string* buffer); 2291*4f2df630SAndroid Build Coastguard Worker 2292*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_EO(std::string* buffer, 2293*4f2df630SAndroid Build Coastguard Worker TPM_EO* value, 2294*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2295*4f2df630SAndroid Build Coastguard Worker 2296*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_ST(const TPM_ST& value, std::string* buffer); 2297*4f2df630SAndroid Build Coastguard Worker 2298*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_ST(std::string* buffer, 2299*4f2df630SAndroid Build Coastguard Worker TPM_ST* value, 2300*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2301*4f2df630SAndroid Build Coastguard Worker 2302*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_SU(const TPM_SU& value, std::string* buffer); 2303*4f2df630SAndroid Build Coastguard Worker 2304*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_SU(std::string* buffer, 2305*4f2df630SAndroid Build Coastguard Worker TPM_SU* value, 2306*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2307*4f2df630SAndroid Build Coastguard Worker 2308*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_SE(const TPM_SE& value, std::string* buffer); 2309*4f2df630SAndroid Build Coastguard Worker 2310*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_SE(std::string* buffer, 2311*4f2df630SAndroid Build Coastguard Worker TPM_SE* value, 2312*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2313*4f2df630SAndroid Build Coastguard Worker 2314*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_CAP(const TPM_CAP& value, 2315*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2316*4f2df630SAndroid Build Coastguard Worker 2317*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_CAP(std::string* buffer, 2318*4f2df630SAndroid Build Coastguard Worker TPM_CAP* value, 2319*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2320*4f2df630SAndroid Build Coastguard Worker 2321*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_PT(const TPM_PT& value, std::string* buffer); 2322*4f2df630SAndroid Build Coastguard Worker 2323*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_PT(std::string* buffer, 2324*4f2df630SAndroid Build Coastguard Worker TPM_PT* value, 2325*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2326*4f2df630SAndroid Build Coastguard Worker 2327*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_PT_PCR(const TPM_PT_PCR& value, 2328*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2329*4f2df630SAndroid Build Coastguard Worker 2330*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_PT_PCR(std::string* buffer, 2331*4f2df630SAndroid Build Coastguard Worker TPM_PT_PCR* value, 2332*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2333*4f2df630SAndroid Build Coastguard Worker 2334*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_PS(const TPM_PS& value, std::string* buffer); 2335*4f2df630SAndroid Build Coastguard Worker 2336*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_PS(std::string* buffer, 2337*4f2df630SAndroid Build Coastguard Worker TPM_PS* value, 2338*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2339*4f2df630SAndroid Build Coastguard Worker 2340*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_HT(const TPM_HT& value, std::string* buffer); 2341*4f2df630SAndroid Build Coastguard Worker 2342*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_HT(std::string* buffer, 2343*4f2df630SAndroid Build Coastguard Worker TPM_HT* value, 2344*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2345*4f2df630SAndroid Build Coastguard Worker 2346*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_RH(const TPM_RH& value, std::string* buffer); 2347*4f2df630SAndroid Build Coastguard Worker 2348*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_RH(std::string* buffer, 2349*4f2df630SAndroid Build Coastguard Worker TPM_RH* value, 2350*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2351*4f2df630SAndroid Build Coastguard Worker 2352*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM_HC(const TPM_HC& value, std::string* buffer); 2353*4f2df630SAndroid Build Coastguard Worker 2354*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM_HC(std::string* buffer, 2355*4f2df630SAndroid Build Coastguard Worker TPM_HC* value, 2356*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2357*4f2df630SAndroid Build Coastguard Worker 2358*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ALGORITHM_DESCRIPTION( 2359*4f2df630SAndroid Build Coastguard Worker const TPMS_ALGORITHM_DESCRIPTION& value, std::string* buffer); 2360*4f2df630SAndroid Build Coastguard Worker 2361*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2362*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_ALGORITHM_DESCRIPTION(std::string* buffer, 2363*4f2df630SAndroid Build Coastguard Worker TPMS_ALGORITHM_DESCRIPTION* value, 2364*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2365*4f2df630SAndroid Build Coastguard Worker 2366*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_HA(const TPMT_HA& value, 2367*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2368*4f2df630SAndroid Build Coastguard Worker 2369*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_HA(std::string* buffer, 2370*4f2df630SAndroid Build Coastguard Worker TPMT_HA* value, 2371*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2372*4f2df630SAndroid Build Coastguard Worker 2373*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_DIGEST(const TPM2B_DIGEST& value, 2374*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2375*4f2df630SAndroid Build Coastguard Worker 2376*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_DIGEST(std::string* buffer, 2377*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* value, 2378*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2379*4f2df630SAndroid Build Coastguard Worker 2380*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_DIGEST Make_TPM2B_DIGEST(const std::string& bytes); 2381*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_DIGEST(const TPM2B_DIGEST& tpm2b); 2382*4f2df630SAndroid Build Coastguard Worker 2383*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_DATA(const TPM2B_DATA& value, 2384*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2385*4f2df630SAndroid Build Coastguard Worker 2386*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_DATA(std::string* buffer, 2387*4f2df630SAndroid Build Coastguard Worker TPM2B_DATA* value, 2388*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2389*4f2df630SAndroid Build Coastguard Worker 2390*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_DATA Make_TPM2B_DATA(const std::string& bytes); 2391*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_DATA(const TPM2B_DATA& tpm2b); 2392*4f2df630SAndroid Build Coastguard Worker 2393*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_EVENT(const TPM2B_EVENT& value, 2394*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2395*4f2df630SAndroid Build Coastguard Worker 2396*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_EVENT(std::string* buffer, 2397*4f2df630SAndroid Build Coastguard Worker TPM2B_EVENT* value, 2398*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2399*4f2df630SAndroid Build Coastguard Worker 2400*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_EVENT Make_TPM2B_EVENT(const std::string& bytes); 2401*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_EVENT(const TPM2B_EVENT& tpm2b); 2402*4f2df630SAndroid Build Coastguard Worker 2403*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_MAX_BUFFER(const TPM2B_MAX_BUFFER& value, 2404*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2405*4f2df630SAndroid Build Coastguard Worker 2406*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_MAX_BUFFER(std::string* buffer, 2407*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* value, 2408*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2409*4f2df630SAndroid Build Coastguard Worker 2410*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_MAX_BUFFER Make_TPM2B_MAX_BUFFER(const std::string& bytes); 2411*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_MAX_BUFFER( 2412*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& tpm2b); 2413*4f2df630SAndroid Build Coastguard Worker 2414*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_MAX_NV_BUFFER( 2415*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& value, std::string* buffer); 2416*4f2df630SAndroid Build Coastguard Worker 2417*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_MAX_NV_BUFFER(std::string* buffer, 2418*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_NV_BUFFER* value, 2419*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2420*4f2df630SAndroid Build Coastguard Worker 2421*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_MAX_NV_BUFFER 2422*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_MAX_NV_BUFFER(const std::string& bytes); 2423*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_MAX_NV_BUFFER( 2424*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& tpm2b); 2425*4f2df630SAndroid Build Coastguard Worker 2426*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_TIMEOUT(const TPM2B_TIMEOUT& value, 2427*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2428*4f2df630SAndroid Build Coastguard Worker 2429*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_TIMEOUT(std::string* buffer, 2430*4f2df630SAndroid Build Coastguard Worker TPM2B_TIMEOUT* value, 2431*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2432*4f2df630SAndroid Build Coastguard Worker 2433*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_TIMEOUT Make_TPM2B_TIMEOUT(const std::string& bytes); 2434*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_TIMEOUT(const TPM2B_TIMEOUT& tpm2b); 2435*4f2df630SAndroid Build Coastguard Worker 2436*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_IV(const TPM2B_IV& value, 2437*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2438*4f2df630SAndroid Build Coastguard Worker 2439*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_IV(std::string* buffer, 2440*4f2df630SAndroid Build Coastguard Worker TPM2B_IV* value, 2441*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2442*4f2df630SAndroid Build Coastguard Worker 2443*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_IV Make_TPM2B_IV(const std::string& bytes); 2444*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_IV(const TPM2B_IV& tpm2b); 2445*4f2df630SAndroid Build Coastguard Worker 2446*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_NAME(const TPM2B_NAME& value, 2447*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2448*4f2df630SAndroid Build Coastguard Worker 2449*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_NAME(std::string* buffer, 2450*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* value, 2451*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2452*4f2df630SAndroid Build Coastguard Worker 2453*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_NAME Make_TPM2B_NAME(const std::string& bytes); 2454*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_NAME(const TPM2B_NAME& tpm2b); 2455*4f2df630SAndroid Build Coastguard Worker 2456*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_PCR_SELECT(const TPMS_PCR_SELECT& value, 2457*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2458*4f2df630SAndroid Build Coastguard Worker 2459*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_PCR_SELECT(std::string* buffer, 2460*4f2df630SAndroid Build Coastguard Worker TPMS_PCR_SELECT* value, 2461*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2462*4f2df630SAndroid Build Coastguard Worker 2463*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_PCR_SELECTION( 2464*4f2df630SAndroid Build Coastguard Worker const TPMS_PCR_SELECTION& value, std::string* buffer); 2465*4f2df630SAndroid Build Coastguard Worker 2466*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_PCR_SELECTION(std::string* buffer, 2467*4f2df630SAndroid Build Coastguard Worker TPMS_PCR_SELECTION* value, 2468*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2469*4f2df630SAndroid Build Coastguard Worker 2470*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_TK_CREATION(const TPMT_TK_CREATION& value, 2471*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2472*4f2df630SAndroid Build Coastguard Worker 2473*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_TK_CREATION(std::string* buffer, 2474*4f2df630SAndroid Build Coastguard Worker TPMT_TK_CREATION* value, 2475*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2476*4f2df630SAndroid Build Coastguard Worker 2477*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_TK_VERIFIED(const TPMT_TK_VERIFIED& value, 2478*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2479*4f2df630SAndroid Build Coastguard Worker 2480*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_TK_VERIFIED(std::string* buffer, 2481*4f2df630SAndroid Build Coastguard Worker TPMT_TK_VERIFIED* value, 2482*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2483*4f2df630SAndroid Build Coastguard Worker 2484*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_TK_AUTH(const TPMT_TK_AUTH& value, 2485*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2486*4f2df630SAndroid Build Coastguard Worker 2487*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_TK_AUTH(std::string* buffer, 2488*4f2df630SAndroid Build Coastguard Worker TPMT_TK_AUTH* value, 2489*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2490*4f2df630SAndroid Build Coastguard Worker 2491*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_TK_HASHCHECK(const TPMT_TK_HASHCHECK& value, 2492*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2493*4f2df630SAndroid Build Coastguard Worker 2494*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_TK_HASHCHECK(std::string* buffer, 2495*4f2df630SAndroid Build Coastguard Worker TPMT_TK_HASHCHECK* value, 2496*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2497*4f2df630SAndroid Build Coastguard Worker 2498*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ALG_PROPERTY(const TPMS_ALG_PROPERTY& value, 2499*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2500*4f2df630SAndroid Build Coastguard Worker 2501*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_ALG_PROPERTY(std::string* buffer, 2502*4f2df630SAndroid Build Coastguard Worker TPMS_ALG_PROPERTY* value, 2503*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2504*4f2df630SAndroid Build Coastguard Worker 2505*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_TAGGED_PROPERTY( 2506*4f2df630SAndroid Build Coastguard Worker const TPMS_TAGGED_PROPERTY& value, std::string* buffer); 2507*4f2df630SAndroid Build Coastguard Worker 2508*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_TAGGED_PROPERTY(std::string* buffer, 2509*4f2df630SAndroid Build Coastguard Worker TPMS_TAGGED_PROPERTY* value, 2510*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2511*4f2df630SAndroid Build Coastguard Worker 2512*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_TAGGED_PCR_SELECT( 2513*4f2df630SAndroid Build Coastguard Worker const TPMS_TAGGED_PCR_SELECT& value, std::string* buffer); 2514*4f2df630SAndroid Build Coastguard Worker 2515*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_TAGGED_PCR_SELECT(std::string* buffer, 2516*4f2df630SAndroid Build Coastguard Worker TPMS_TAGGED_PCR_SELECT* value, 2517*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2518*4f2df630SAndroid Build Coastguard Worker 2519*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_CC(const TPML_CC& value, 2520*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2521*4f2df630SAndroid Build Coastguard Worker 2522*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_CC(std::string* buffer, 2523*4f2df630SAndroid Build Coastguard Worker TPML_CC* value, 2524*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2525*4f2df630SAndroid Build Coastguard Worker 2526*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_CCA(const TPML_CCA& value, 2527*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2528*4f2df630SAndroid Build Coastguard Worker 2529*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_CCA(std::string* buffer, 2530*4f2df630SAndroid Build Coastguard Worker TPML_CCA* value, 2531*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2532*4f2df630SAndroid Build Coastguard Worker 2533*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_ALG(const TPML_ALG& value, 2534*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2535*4f2df630SAndroid Build Coastguard Worker 2536*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_ALG(std::string* buffer, 2537*4f2df630SAndroid Build Coastguard Worker TPML_ALG* value, 2538*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2539*4f2df630SAndroid Build Coastguard Worker 2540*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_HANDLE(const TPML_HANDLE& value, 2541*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2542*4f2df630SAndroid Build Coastguard Worker 2543*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_HANDLE(std::string* buffer, 2544*4f2df630SAndroid Build Coastguard Worker TPML_HANDLE* value, 2545*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2546*4f2df630SAndroid Build Coastguard Worker 2547*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_DIGEST(const TPML_DIGEST& value, 2548*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2549*4f2df630SAndroid Build Coastguard Worker 2550*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_DIGEST(std::string* buffer, 2551*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST* value, 2552*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2553*4f2df630SAndroid Build Coastguard Worker 2554*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_DIGEST_VALUES( 2555*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& value, std::string* buffer); 2556*4f2df630SAndroid Build Coastguard Worker 2557*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_DIGEST_VALUES(std::string* buffer, 2558*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST_VALUES* value, 2559*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2560*4f2df630SAndroid Build Coastguard Worker 2561*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_DIGEST_VALUES( 2562*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST_VALUES& value, std::string* buffer); 2563*4f2df630SAndroid Build Coastguard Worker 2564*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_DIGEST_VALUES(std::string* buffer, 2565*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST_VALUES* value, 2566*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2567*4f2df630SAndroid Build Coastguard Worker 2568*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_DIGEST_VALUES 2569*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_DIGEST_VALUES(const std::string& bytes); 2570*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_DIGEST_VALUES( 2571*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST_VALUES& tpm2b); 2572*4f2df630SAndroid Build Coastguard Worker 2573*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_PCR_SELECTION( 2574*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& value, std::string* buffer); 2575*4f2df630SAndroid Build Coastguard Worker 2576*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_PCR_SELECTION(std::string* buffer, 2577*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION* value, 2578*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2579*4f2df630SAndroid Build Coastguard Worker 2580*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_ALG_PROPERTY(const TPML_ALG_PROPERTY& value, 2581*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2582*4f2df630SAndroid Build Coastguard Worker 2583*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_ALG_PROPERTY(std::string* buffer, 2584*4f2df630SAndroid Build Coastguard Worker TPML_ALG_PROPERTY* value, 2585*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2586*4f2df630SAndroid Build Coastguard Worker 2587*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_TAGGED_TPM_PROPERTY( 2588*4f2df630SAndroid Build Coastguard Worker const TPML_TAGGED_TPM_PROPERTY& value, std::string* buffer); 2589*4f2df630SAndroid Build Coastguard Worker 2590*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2591*4f2df630SAndroid Build Coastguard Worker Parse_TPML_TAGGED_TPM_PROPERTY(std::string* buffer, 2592*4f2df630SAndroid Build Coastguard Worker TPML_TAGGED_TPM_PROPERTY* value, 2593*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2594*4f2df630SAndroid Build Coastguard Worker 2595*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_TAGGED_PCR_PROPERTY( 2596*4f2df630SAndroid Build Coastguard Worker const TPML_TAGGED_PCR_PROPERTY& value, std::string* buffer); 2597*4f2df630SAndroid Build Coastguard Worker 2598*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2599*4f2df630SAndroid Build Coastguard Worker Parse_TPML_TAGGED_PCR_PROPERTY(std::string* buffer, 2600*4f2df630SAndroid Build Coastguard Worker TPML_TAGGED_PCR_PROPERTY* value, 2601*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2602*4f2df630SAndroid Build Coastguard Worker 2603*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPML_ECC_CURVE(const TPML_ECC_CURVE& value, 2604*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2605*4f2df630SAndroid Build Coastguard Worker 2606*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPML_ECC_CURVE(std::string* buffer, 2607*4f2df630SAndroid Build Coastguard Worker TPML_ECC_CURVE* value, 2608*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2609*4f2df630SAndroid Build Coastguard Worker 2610*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CAPABILITY_DATA( 2611*4f2df630SAndroid Build Coastguard Worker const TPMS_CAPABILITY_DATA& value, std::string* buffer); 2612*4f2df630SAndroid Build Coastguard Worker 2613*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CAPABILITY_DATA(std::string* buffer, 2614*4f2df630SAndroid Build Coastguard Worker TPMS_CAPABILITY_DATA* value, 2615*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2616*4f2df630SAndroid Build Coastguard Worker 2617*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CLOCK_INFO(const TPMS_CLOCK_INFO& value, 2618*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2619*4f2df630SAndroid Build Coastguard Worker 2620*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CLOCK_INFO(std::string* buffer, 2621*4f2df630SAndroid Build Coastguard Worker TPMS_CLOCK_INFO* value, 2622*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2623*4f2df630SAndroid Build Coastguard Worker 2624*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_TIME_INFO(const TPMS_TIME_INFO& value, 2625*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2626*4f2df630SAndroid Build Coastguard Worker 2627*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_TIME_INFO(std::string* buffer, 2628*4f2df630SAndroid Build Coastguard Worker TPMS_TIME_INFO* value, 2629*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2630*4f2df630SAndroid Build Coastguard Worker 2631*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_TIME_ATTEST_INFO( 2632*4f2df630SAndroid Build Coastguard Worker const TPMS_TIME_ATTEST_INFO& value, std::string* buffer); 2633*4f2df630SAndroid Build Coastguard Worker 2634*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_TIME_ATTEST_INFO(std::string* buffer, 2635*4f2df630SAndroid Build Coastguard Worker TPMS_TIME_ATTEST_INFO* value, 2636*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2637*4f2df630SAndroid Build Coastguard Worker 2638*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CERTIFY_INFO(const TPMS_CERTIFY_INFO& value, 2639*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2640*4f2df630SAndroid Build Coastguard Worker 2641*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CERTIFY_INFO(std::string* buffer, 2642*4f2df630SAndroid Build Coastguard Worker TPMS_CERTIFY_INFO* value, 2643*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2644*4f2df630SAndroid Build Coastguard Worker 2645*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_QUOTE_INFO(const TPMS_QUOTE_INFO& value, 2646*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2647*4f2df630SAndroid Build Coastguard Worker 2648*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_QUOTE_INFO(std::string* buffer, 2649*4f2df630SAndroid Build Coastguard Worker TPMS_QUOTE_INFO* value, 2650*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2651*4f2df630SAndroid Build Coastguard Worker 2652*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_COMMAND_AUDIT_INFO( 2653*4f2df630SAndroid Build Coastguard Worker const TPMS_COMMAND_AUDIT_INFO& value, std::string* buffer); 2654*4f2df630SAndroid Build Coastguard Worker 2655*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2656*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_COMMAND_AUDIT_INFO(std::string* buffer, 2657*4f2df630SAndroid Build Coastguard Worker TPMS_COMMAND_AUDIT_INFO* value, 2658*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2659*4f2df630SAndroid Build Coastguard Worker 2660*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SESSION_AUDIT_INFO( 2661*4f2df630SAndroid Build Coastguard Worker const TPMS_SESSION_AUDIT_INFO& value, std::string* buffer); 2662*4f2df630SAndroid Build Coastguard Worker 2663*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2664*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_SESSION_AUDIT_INFO(std::string* buffer, 2665*4f2df630SAndroid Build Coastguard Worker TPMS_SESSION_AUDIT_INFO* value, 2666*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2667*4f2df630SAndroid Build Coastguard Worker 2668*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CREATION_INFO( 2669*4f2df630SAndroid Build Coastguard Worker const TPMS_CREATION_INFO& value, std::string* buffer); 2670*4f2df630SAndroid Build Coastguard Worker 2671*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CREATION_INFO(std::string* buffer, 2672*4f2df630SAndroid Build Coastguard Worker TPMS_CREATION_INFO* value, 2673*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2674*4f2df630SAndroid Build Coastguard Worker 2675*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_NV_CERTIFY_INFO( 2676*4f2df630SAndroid Build Coastguard Worker const TPMS_NV_CERTIFY_INFO& value, std::string* buffer); 2677*4f2df630SAndroid Build Coastguard Worker 2678*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_NV_CERTIFY_INFO(std::string* buffer, 2679*4f2df630SAndroid Build Coastguard Worker TPMS_NV_CERTIFY_INFO* value, 2680*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2681*4f2df630SAndroid Build Coastguard Worker 2682*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ATTEST(const TPMS_ATTEST& value, 2683*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2684*4f2df630SAndroid Build Coastguard Worker 2685*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_ATTEST(std::string* buffer, 2686*4f2df630SAndroid Build Coastguard Worker TPMS_ATTEST* value, 2687*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2688*4f2df630SAndroid Build Coastguard Worker 2689*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_ATTEST(const TPM2B_ATTEST& value, 2690*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2691*4f2df630SAndroid Build Coastguard Worker 2692*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_ATTEST(std::string* buffer, 2693*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* value, 2694*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2695*4f2df630SAndroid Build Coastguard Worker 2696*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_ATTEST Make_TPM2B_ATTEST(const std::string& bytes); 2697*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_ATTEST(const TPM2B_ATTEST& tpm2b); 2698*4f2df630SAndroid Build Coastguard Worker 2699*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_AUTH_COMMAND(const TPMS_AUTH_COMMAND& value, 2700*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2701*4f2df630SAndroid Build Coastguard Worker 2702*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_AUTH_COMMAND(std::string* buffer, 2703*4f2df630SAndroid Build Coastguard Worker TPMS_AUTH_COMMAND* value, 2704*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2705*4f2df630SAndroid Build Coastguard Worker 2706*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_AUTH_RESPONSE( 2707*4f2df630SAndroid Build Coastguard Worker const TPMS_AUTH_RESPONSE& value, std::string* buffer); 2708*4f2df630SAndroid Build Coastguard Worker 2709*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_AUTH_RESPONSE(std::string* buffer, 2710*4f2df630SAndroid Build Coastguard Worker TPMS_AUTH_RESPONSE* value, 2711*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2712*4f2df630SAndroid Build Coastguard Worker 2713*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_SYM_DEF(const TPMT_SYM_DEF& value, 2714*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2715*4f2df630SAndroid Build Coastguard Worker 2716*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_SYM_DEF(std::string* buffer, 2717*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF* value, 2718*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2719*4f2df630SAndroid Build Coastguard Worker 2720*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_SYM_DEF_OBJECT( 2721*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& value, std::string* buffer); 2722*4f2df630SAndroid Build Coastguard Worker 2723*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_SYM_DEF_OBJECT(std::string* buffer, 2724*4f2df630SAndroid Build Coastguard Worker TPMT_SYM_DEF_OBJECT* value, 2725*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2726*4f2df630SAndroid Build Coastguard Worker 2727*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_SYM_KEY(const TPM2B_SYM_KEY& value, 2728*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2729*4f2df630SAndroid Build Coastguard Worker 2730*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_SYM_KEY(std::string* buffer, 2731*4f2df630SAndroid Build Coastguard Worker TPM2B_SYM_KEY* value, 2732*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2733*4f2df630SAndroid Build Coastguard Worker 2734*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_SYM_KEY Make_TPM2B_SYM_KEY(const std::string& bytes); 2735*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_SYM_KEY(const TPM2B_SYM_KEY& tpm2b); 2736*4f2df630SAndroid Build Coastguard Worker 2737*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SYMCIPHER_PARMS( 2738*4f2df630SAndroid Build Coastguard Worker const TPMS_SYMCIPHER_PARMS& value, std::string* buffer); 2739*4f2df630SAndroid Build Coastguard Worker 2740*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SYMCIPHER_PARMS(std::string* buffer, 2741*4f2df630SAndroid Build Coastguard Worker TPMS_SYMCIPHER_PARMS* value, 2742*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2743*4f2df630SAndroid Build Coastguard Worker 2744*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_SENSITIVE_DATA( 2745*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& value, std::string* buffer); 2746*4f2df630SAndroid Build Coastguard Worker 2747*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_SENSITIVE_DATA(std::string* buffer, 2748*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_DATA* value, 2749*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2750*4f2df630SAndroid Build Coastguard Worker 2751*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_SENSITIVE_DATA 2752*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_SENSITIVE_DATA(const std::string& bytes); 2753*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_SENSITIVE_DATA( 2754*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& tpm2b); 2755*4f2df630SAndroid Build Coastguard Worker 2756*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SENSITIVE_CREATE( 2757*4f2df630SAndroid Build Coastguard Worker const TPMS_SENSITIVE_CREATE& value, std::string* buffer); 2758*4f2df630SAndroid Build Coastguard Worker 2759*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SENSITIVE_CREATE(std::string* buffer, 2760*4f2df630SAndroid Build Coastguard Worker TPMS_SENSITIVE_CREATE* value, 2761*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2762*4f2df630SAndroid Build Coastguard Worker 2763*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_SENSITIVE_CREATE( 2764*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& value, std::string* buffer); 2765*4f2df630SAndroid Build Coastguard Worker 2766*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_SENSITIVE_CREATE(std::string* buffer, 2767*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_CREATE* value, 2768*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2769*4f2df630SAndroid Build Coastguard Worker 2770*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_SENSITIVE_CREATE 2771*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_SENSITIVE_CREATE(const TPMS_SENSITIVE_CREATE& inner); 2772*4f2df630SAndroid Build Coastguard Worker 2773*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_SIGHASH( 2774*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_SIGHASH& value, std::string* buffer); 2775*4f2df630SAndroid Build Coastguard Worker 2776*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_SIGHASH(std::string* buffer, 2777*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_SIGHASH* value, 2778*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2779*4f2df630SAndroid Build Coastguard Worker 2780*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_XOR(const TPMS_SCHEME_XOR& value, 2781*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2782*4f2df630SAndroid Build Coastguard Worker 2783*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_XOR(std::string* buffer, 2784*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_XOR* value, 2785*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2786*4f2df630SAndroid Build Coastguard Worker 2787*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_KEYEDHASH_SCHEME( 2788*4f2df630SAndroid Build Coastguard Worker const TPMT_KEYEDHASH_SCHEME& value, std::string* buffer); 2789*4f2df630SAndroid Build Coastguard Worker 2790*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_KEYEDHASH_SCHEME(std::string* buffer, 2791*4f2df630SAndroid Build Coastguard Worker TPMT_KEYEDHASH_SCHEME* value, 2792*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2793*4f2df630SAndroid Build Coastguard Worker 2794*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_ECDAA(const TPMS_SCHEME_ECDAA& value, 2795*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2796*4f2df630SAndroid Build Coastguard Worker 2797*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_ECDAA(std::string* buffer, 2798*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDAA* value, 2799*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2800*4f2df630SAndroid Build Coastguard Worker 2801*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_SIG_SCHEME(const TPMT_SIG_SCHEME& value, 2802*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2803*4f2df630SAndroid Build Coastguard Worker 2804*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_SIG_SCHEME(std::string* buffer, 2805*4f2df630SAndroid Build Coastguard Worker TPMT_SIG_SCHEME* value, 2806*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2807*4f2df630SAndroid Build Coastguard Worker 2808*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_OAEP(const TPMS_SCHEME_OAEP& value, 2809*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2810*4f2df630SAndroid Build Coastguard Worker 2811*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_OAEP(std::string* buffer, 2812*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_OAEP* value, 2813*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2814*4f2df630SAndroid Build Coastguard Worker 2815*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_ECDH(const TPMS_SCHEME_ECDH& value, 2816*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2817*4f2df630SAndroid Build Coastguard Worker 2818*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_ECDH(std::string* buffer, 2819*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_ECDH* value, 2820*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2821*4f2df630SAndroid Build Coastguard Worker 2822*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_MGF1(const TPMS_SCHEME_MGF1& value, 2823*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2824*4f2df630SAndroid Build Coastguard Worker 2825*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_MGF1(std::string* buffer, 2826*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_MGF1* value, 2827*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2828*4f2df630SAndroid Build Coastguard Worker 2829*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_KDF1_SP800_56a( 2830*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_KDF1_SP800_56a& value, std::string* buffer); 2831*4f2df630SAndroid Build Coastguard Worker 2832*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2833*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_SCHEME_KDF1_SP800_56a(std::string* buffer, 2834*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF1_SP800_56a* value, 2835*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2836*4f2df630SAndroid Build Coastguard Worker 2837*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_KDF2(const TPMS_SCHEME_KDF2& value, 2838*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2839*4f2df630SAndroid Build Coastguard Worker 2840*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SCHEME_KDF2(std::string* buffer, 2841*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF2* value, 2842*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2843*4f2df630SAndroid Build Coastguard Worker 2844*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SCHEME_KDF1_SP800_108( 2845*4f2df630SAndroid Build Coastguard Worker const TPMS_SCHEME_KDF1_SP800_108& value, std::string* buffer); 2846*4f2df630SAndroid Build Coastguard Worker 2847*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2848*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_SCHEME_KDF1_SP800_108(std::string* buffer, 2849*4f2df630SAndroid Build Coastguard Worker TPMS_SCHEME_KDF1_SP800_108* value, 2850*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2851*4f2df630SAndroid Build Coastguard Worker 2852*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_KDF_SCHEME(const TPMT_KDF_SCHEME& value, 2853*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2854*4f2df630SAndroid Build Coastguard Worker 2855*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_KDF_SCHEME(std::string* buffer, 2856*4f2df630SAndroid Build Coastguard Worker TPMT_KDF_SCHEME* value, 2857*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2858*4f2df630SAndroid Build Coastguard Worker 2859*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_ASYM_SCHEME(const TPMT_ASYM_SCHEME& value, 2860*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2861*4f2df630SAndroid Build Coastguard Worker 2862*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_ASYM_SCHEME(std::string* buffer, 2863*4f2df630SAndroid Build Coastguard Worker TPMT_ASYM_SCHEME* value, 2864*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2865*4f2df630SAndroid Build Coastguard Worker 2866*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_RSA_SCHEME(const TPMT_RSA_SCHEME& value, 2867*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2868*4f2df630SAndroid Build Coastguard Worker 2869*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_RSA_SCHEME(std::string* buffer, 2870*4f2df630SAndroid Build Coastguard Worker TPMT_RSA_SCHEME* value, 2871*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2872*4f2df630SAndroid Build Coastguard Worker 2873*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_RSA_DECRYPT(const TPMT_RSA_DECRYPT& value, 2874*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2875*4f2df630SAndroid Build Coastguard Worker 2876*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_RSA_DECRYPT(std::string* buffer, 2877*4f2df630SAndroid Build Coastguard Worker TPMT_RSA_DECRYPT* value, 2878*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2879*4f2df630SAndroid Build Coastguard Worker 2880*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_PUBLIC_KEY_RSA( 2881*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& value, std::string* buffer); 2882*4f2df630SAndroid Build Coastguard Worker 2883*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_PUBLIC_KEY_RSA(std::string* buffer, 2884*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA* value, 2885*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2886*4f2df630SAndroid Build Coastguard Worker 2887*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_PUBLIC_KEY_RSA 2888*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_PUBLIC_KEY_RSA(const std::string& bytes); 2889*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_PUBLIC_KEY_RSA( 2890*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& tpm2b); 2891*4f2df630SAndroid Build Coastguard Worker 2892*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_PRIVATE_KEY_RSA( 2893*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE_KEY_RSA& value, std::string* buffer); 2894*4f2df630SAndroid Build Coastguard Worker 2895*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_PRIVATE_KEY_RSA(std::string* buffer, 2896*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE_KEY_RSA* value, 2897*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2898*4f2df630SAndroid Build Coastguard Worker 2899*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_PRIVATE_KEY_RSA 2900*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_PRIVATE_KEY_RSA(const std::string& bytes); 2901*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_PRIVATE_KEY_RSA( 2902*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE_KEY_RSA& tpm2b); 2903*4f2df630SAndroid Build Coastguard Worker 2904*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_ECC_PARAMETER( 2905*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_PARAMETER& value, std::string* buffer); 2906*4f2df630SAndroid Build Coastguard Worker 2907*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_ECC_PARAMETER(std::string* buffer, 2908*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_PARAMETER* value, 2909*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2910*4f2df630SAndroid Build Coastguard Worker 2911*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_ECC_PARAMETER 2912*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_ECC_PARAMETER(const std::string& bytes); 2913*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_ECC_PARAMETER( 2914*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_PARAMETER& tpm2b); 2915*4f2df630SAndroid Build Coastguard Worker 2916*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ECC_POINT(const TPMS_ECC_POINT& value, 2917*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2918*4f2df630SAndroid Build Coastguard Worker 2919*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_ECC_POINT(std::string* buffer, 2920*4f2df630SAndroid Build Coastguard Worker TPMS_ECC_POINT* value, 2921*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2922*4f2df630SAndroid Build Coastguard Worker 2923*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_ECC_POINT(const TPM2B_ECC_POINT& value, 2924*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2925*4f2df630SAndroid Build Coastguard Worker 2926*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_ECC_POINT(std::string* buffer, 2927*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* value, 2928*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2929*4f2df630SAndroid Build Coastguard Worker 2930*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_ECC_POINT Make_TPM2B_ECC_POINT(const TPMS_ECC_POINT& inner); 2931*4f2df630SAndroid Build Coastguard Worker 2932*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_ECC_SCHEME(const TPMT_ECC_SCHEME& value, 2933*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2934*4f2df630SAndroid Build Coastguard Worker 2935*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_ECC_SCHEME(std::string* buffer, 2936*4f2df630SAndroid Build Coastguard Worker TPMT_ECC_SCHEME* value, 2937*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2938*4f2df630SAndroid Build Coastguard Worker 2939*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ALGORITHM_DETAIL_ECC( 2940*4f2df630SAndroid Build Coastguard Worker const TPMS_ALGORITHM_DETAIL_ECC& value, std::string* buffer); 2941*4f2df630SAndroid Build Coastguard Worker 2942*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 2943*4f2df630SAndroid Build Coastguard Worker Parse_TPMS_ALGORITHM_DETAIL_ECC(std::string* buffer, 2944*4f2df630SAndroid Build Coastguard Worker TPMS_ALGORITHM_DETAIL_ECC* value, 2945*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2946*4f2df630SAndroid Build Coastguard Worker 2947*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SIGNATURE_RSASSA( 2948*4f2df630SAndroid Build Coastguard Worker const TPMS_SIGNATURE_RSASSA& value, std::string* buffer); 2949*4f2df630SAndroid Build Coastguard Worker 2950*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SIGNATURE_RSASSA(std::string* buffer, 2951*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_RSASSA* value, 2952*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2953*4f2df630SAndroid Build Coastguard Worker 2954*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SIGNATURE_RSAPSS( 2955*4f2df630SAndroid Build Coastguard Worker const TPMS_SIGNATURE_RSAPSS& value, std::string* buffer); 2956*4f2df630SAndroid Build Coastguard Worker 2957*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SIGNATURE_RSAPSS(std::string* buffer, 2958*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_RSAPSS* value, 2959*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2960*4f2df630SAndroid Build Coastguard Worker 2961*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_SIGNATURE_ECDSA( 2962*4f2df630SAndroid Build Coastguard Worker const TPMS_SIGNATURE_ECDSA& value, std::string* buffer); 2963*4f2df630SAndroid Build Coastguard Worker 2964*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_SIGNATURE_ECDSA(std::string* buffer, 2965*4f2df630SAndroid Build Coastguard Worker TPMS_SIGNATURE_ECDSA* value, 2966*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2967*4f2df630SAndroid Build Coastguard Worker 2968*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_SIGNATURE(const TPMT_SIGNATURE& value, 2969*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2970*4f2df630SAndroid Build Coastguard Worker 2971*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_SIGNATURE(std::string* buffer, 2972*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* value, 2973*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2974*4f2df630SAndroid Build Coastguard Worker 2975*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_ENCRYPTED_SECRET( 2976*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& value, std::string* buffer); 2977*4f2df630SAndroid Build Coastguard Worker 2978*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_ENCRYPTED_SECRET(std::string* buffer, 2979*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* value, 2980*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2981*4f2df630SAndroid Build Coastguard Worker 2982*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_ENCRYPTED_SECRET 2983*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_ENCRYPTED_SECRET(const std::string& bytes); 2984*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_ENCRYPTED_SECRET( 2985*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& tpm2b); 2986*4f2df630SAndroid Build Coastguard Worker 2987*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_KEYEDHASH_PARMS( 2988*4f2df630SAndroid Build Coastguard Worker const TPMS_KEYEDHASH_PARMS& value, std::string* buffer); 2989*4f2df630SAndroid Build Coastguard Worker 2990*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_KEYEDHASH_PARMS(std::string* buffer, 2991*4f2df630SAndroid Build Coastguard Worker TPMS_KEYEDHASH_PARMS* value, 2992*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 2993*4f2df630SAndroid Build Coastguard Worker 2994*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ASYM_PARMS(const TPMS_ASYM_PARMS& value, 2995*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 2996*4f2df630SAndroid Build Coastguard Worker 2997*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_ASYM_PARMS(std::string* buffer, 2998*4f2df630SAndroid Build Coastguard Worker TPMS_ASYM_PARMS* value, 2999*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3000*4f2df630SAndroid Build Coastguard Worker 3001*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_RSA_PARMS(const TPMS_RSA_PARMS& value, 3002*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3003*4f2df630SAndroid Build Coastguard Worker 3004*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_RSA_PARMS(std::string* buffer, 3005*4f2df630SAndroid Build Coastguard Worker TPMS_RSA_PARMS* value, 3006*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3007*4f2df630SAndroid Build Coastguard Worker 3008*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_ECC_PARMS(const TPMS_ECC_PARMS& value, 3009*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3010*4f2df630SAndroid Build Coastguard Worker 3011*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_ECC_PARMS(std::string* buffer, 3012*4f2df630SAndroid Build Coastguard Worker TPMS_ECC_PARMS* value, 3013*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3014*4f2df630SAndroid Build Coastguard Worker 3015*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_PUBLIC_PARMS(const TPMT_PUBLIC_PARMS& value, 3016*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3017*4f2df630SAndroid Build Coastguard Worker 3018*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_PUBLIC_PARMS(std::string* buffer, 3019*4f2df630SAndroid Build Coastguard Worker TPMT_PUBLIC_PARMS* value, 3020*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3021*4f2df630SAndroid Build Coastguard Worker 3022*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_PUBLIC(const TPMT_PUBLIC& value, 3023*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3024*4f2df630SAndroid Build Coastguard Worker 3025*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_PUBLIC(std::string* buffer, 3026*4f2df630SAndroid Build Coastguard Worker TPMT_PUBLIC* value, 3027*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3028*4f2df630SAndroid Build Coastguard Worker 3029*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_PUBLIC(const TPM2B_PUBLIC& value, 3030*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3031*4f2df630SAndroid Build Coastguard Worker 3032*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_PUBLIC(std::string* buffer, 3033*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* value, 3034*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3035*4f2df630SAndroid Build Coastguard Worker 3036*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_PUBLIC Make_TPM2B_PUBLIC(const TPMT_PUBLIC& inner); 3037*4f2df630SAndroid Build Coastguard Worker 3038*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_PRIVATE_VENDOR_SPECIFIC( 3039*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE_VENDOR_SPECIFIC& value, std::string* buffer); 3040*4f2df630SAndroid Build Coastguard Worker 3041*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 3042*4f2df630SAndroid Build Coastguard Worker Parse_TPM2B_PRIVATE_VENDOR_SPECIFIC(std::string* buffer, 3043*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE_VENDOR_SPECIFIC* value, 3044*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3045*4f2df630SAndroid Build Coastguard Worker 3046*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_PRIVATE_VENDOR_SPECIFIC 3047*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_PRIVATE_VENDOR_SPECIFIC(const std::string& bytes); 3048*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_PRIVATE_VENDOR_SPECIFIC( 3049*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE_VENDOR_SPECIFIC& tpm2b); 3050*4f2df630SAndroid Build Coastguard Worker 3051*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMT_SENSITIVE(const TPMT_SENSITIVE& value, 3052*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3053*4f2df630SAndroid Build Coastguard Worker 3054*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMT_SENSITIVE(std::string* buffer, 3055*4f2df630SAndroid Build Coastguard Worker TPMT_SENSITIVE* value, 3056*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3057*4f2df630SAndroid Build Coastguard Worker 3058*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_SENSITIVE(const TPM2B_SENSITIVE& value, 3059*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3060*4f2df630SAndroid Build Coastguard Worker 3061*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_SENSITIVE(std::string* buffer, 3062*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE* value, 3063*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3064*4f2df630SAndroid Build Coastguard Worker 3065*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_SENSITIVE Make_TPM2B_SENSITIVE(const TPMT_SENSITIVE& inner); 3066*4f2df630SAndroid Build Coastguard Worker 3067*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_PRIVATE(const TPM2B_PRIVATE& value, 3068*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3069*4f2df630SAndroid Build Coastguard Worker 3070*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_PRIVATE(std::string* buffer, 3071*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* value, 3072*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3073*4f2df630SAndroid Build Coastguard Worker 3074*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_PRIVATE Make_TPM2B_PRIVATE(const std::string& bytes); 3075*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_PRIVATE(const TPM2B_PRIVATE& tpm2b); 3076*4f2df630SAndroid Build Coastguard Worker 3077*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_ID_OBJECT(const TPM2B_ID_OBJECT& value, 3078*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3079*4f2df630SAndroid Build Coastguard Worker 3080*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_ID_OBJECT(std::string* buffer, 3081*4f2df630SAndroid Build Coastguard Worker TPM2B_ID_OBJECT* value, 3082*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3083*4f2df630SAndroid Build Coastguard Worker 3084*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_ID_OBJECT Make_TPM2B_ID_OBJECT(const std::string& bytes); 3085*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_ID_OBJECT( 3086*4f2df630SAndroid Build Coastguard Worker const TPM2B_ID_OBJECT& tpm2b); 3087*4f2df630SAndroid Build Coastguard Worker 3088*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_NV_PUBLIC(const TPMS_NV_PUBLIC& value, 3089*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3090*4f2df630SAndroid Build Coastguard Worker 3091*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_NV_PUBLIC(std::string* buffer, 3092*4f2df630SAndroid Build Coastguard Worker TPMS_NV_PUBLIC* value, 3093*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3094*4f2df630SAndroid Build Coastguard Worker 3095*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_NV_PUBLIC(const TPM2B_NV_PUBLIC& value, 3096*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3097*4f2df630SAndroid Build Coastguard Worker 3098*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_NV_PUBLIC(std::string* buffer, 3099*4f2df630SAndroid Build Coastguard Worker TPM2B_NV_PUBLIC* value, 3100*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3101*4f2df630SAndroid Build Coastguard Worker 3102*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_NV_PUBLIC Make_TPM2B_NV_PUBLIC(const TPMS_NV_PUBLIC& inner); 3103*4f2df630SAndroid Build Coastguard Worker 3104*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_CONTEXT_SENSITIVE( 3105*4f2df630SAndroid Build Coastguard Worker const TPM2B_CONTEXT_SENSITIVE& value, std::string* buffer); 3106*4f2df630SAndroid Build Coastguard Worker 3107*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 3108*4f2df630SAndroid Build Coastguard Worker Parse_TPM2B_CONTEXT_SENSITIVE(std::string* buffer, 3109*4f2df630SAndroid Build Coastguard Worker TPM2B_CONTEXT_SENSITIVE* value, 3110*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3111*4f2df630SAndroid Build Coastguard Worker 3112*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_CONTEXT_SENSITIVE 3113*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_CONTEXT_SENSITIVE(const std::string& bytes); 3114*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_CONTEXT_SENSITIVE( 3115*4f2df630SAndroid Build Coastguard Worker const TPM2B_CONTEXT_SENSITIVE& tpm2b); 3116*4f2df630SAndroid Build Coastguard Worker 3117*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CONTEXT_DATA(const TPMS_CONTEXT_DATA& value, 3118*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3119*4f2df630SAndroid Build Coastguard Worker 3120*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CONTEXT_DATA(std::string* buffer, 3121*4f2df630SAndroid Build Coastguard Worker TPMS_CONTEXT_DATA* value, 3122*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3123*4f2df630SAndroid Build Coastguard Worker 3124*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_CONTEXT_DATA( 3125*4f2df630SAndroid Build Coastguard Worker const TPM2B_CONTEXT_DATA& value, std::string* buffer); 3126*4f2df630SAndroid Build Coastguard Worker 3127*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_CONTEXT_DATA(std::string* buffer, 3128*4f2df630SAndroid Build Coastguard Worker TPM2B_CONTEXT_DATA* value, 3129*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3130*4f2df630SAndroid Build Coastguard Worker 3131*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_CONTEXT_DATA 3132*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_CONTEXT_DATA(const std::string& bytes); 3133*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT std::string StringFrom_TPM2B_CONTEXT_DATA( 3134*4f2df630SAndroid Build Coastguard Worker const TPM2B_CONTEXT_DATA& tpm2b); 3135*4f2df630SAndroid Build Coastguard Worker 3136*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CONTEXT(const TPMS_CONTEXT& value, 3137*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3138*4f2df630SAndroid Build Coastguard Worker 3139*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CONTEXT(std::string* buffer, 3140*4f2df630SAndroid Build Coastguard Worker TPMS_CONTEXT* value, 3141*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3142*4f2df630SAndroid Build Coastguard Worker 3143*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMS_CREATION_DATA( 3144*4f2df630SAndroid Build Coastguard Worker const TPMS_CREATION_DATA& value, std::string* buffer); 3145*4f2df630SAndroid Build Coastguard Worker 3146*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMS_CREATION_DATA(std::string* buffer, 3147*4f2df630SAndroid Build Coastguard Worker TPMS_CREATION_DATA* value, 3148*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3149*4f2df630SAndroid Build Coastguard Worker 3150*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPM2B_CREATION_DATA( 3151*4f2df630SAndroid Build Coastguard Worker const TPM2B_CREATION_DATA& value, std::string* buffer); 3152*4f2df630SAndroid Build Coastguard Worker 3153*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPM2B_CREATION_DATA(std::string* buffer, 3154*4f2df630SAndroid Build Coastguard Worker TPM2B_CREATION_DATA* value, 3155*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3156*4f2df630SAndroid Build Coastguard Worker 3157*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM2B_CREATION_DATA 3158*4f2df630SAndroid Build Coastguard Worker Make_TPM2B_CREATION_DATA(const TPMS_CREATION_DATA& inner); 3159*4f2df630SAndroid Build Coastguard Worker 3160*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_HA(const TPMU_HA& value, 3161*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3162*4f2df630SAndroid Build Coastguard Worker 3163*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_HA(std::string* buffer, 3164*4f2df630SAndroid Build Coastguard Worker TPMU_HA* value, 3165*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3166*4f2df630SAndroid Build Coastguard Worker 3167*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_NAME(const TPMU_NAME& value, 3168*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3169*4f2df630SAndroid Build Coastguard Worker 3170*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_NAME(std::string* buffer, 3171*4f2df630SAndroid Build Coastguard Worker TPMU_NAME* value, 3172*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3173*4f2df630SAndroid Build Coastguard Worker 3174*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_CAPABILITIES(const TPMU_CAPABILITIES& value, 3175*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3176*4f2df630SAndroid Build Coastguard Worker 3177*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_CAPABILITIES(std::string* buffer, 3178*4f2df630SAndroid Build Coastguard Worker TPMU_CAPABILITIES* value, 3179*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3180*4f2df630SAndroid Build Coastguard Worker 3181*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_ATTEST(const TPMU_ATTEST& value, 3182*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3183*4f2df630SAndroid Build Coastguard Worker 3184*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_ATTEST(std::string* buffer, 3185*4f2df630SAndroid Build Coastguard Worker TPMU_ATTEST* value, 3186*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3187*4f2df630SAndroid Build Coastguard Worker 3188*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SYM_KEY_BITS(const TPMU_SYM_KEY_BITS& value, 3189*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3190*4f2df630SAndroid Build Coastguard Worker 3191*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SYM_KEY_BITS(std::string* buffer, 3192*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_KEY_BITS* value, 3193*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3194*4f2df630SAndroid Build Coastguard Worker 3195*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SYM_MODE(const TPMU_SYM_MODE& value, 3196*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3197*4f2df630SAndroid Build Coastguard Worker 3198*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SYM_MODE(std::string* buffer, 3199*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_MODE* value, 3200*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3201*4f2df630SAndroid Build Coastguard Worker 3202*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SCHEME_KEYEDHASH( 3203*4f2df630SAndroid Build Coastguard Worker const TPMU_SCHEME_KEYEDHASH& value, std::string* buffer); 3204*4f2df630SAndroid Build Coastguard Worker 3205*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SCHEME_KEYEDHASH(std::string* buffer, 3206*4f2df630SAndroid Build Coastguard Worker TPMU_SCHEME_KEYEDHASH* value, 3207*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3208*4f2df630SAndroid Build Coastguard Worker 3209*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SIG_SCHEME(const TPMU_SIG_SCHEME& value, 3210*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3211*4f2df630SAndroid Build Coastguard Worker 3212*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SIG_SCHEME(std::string* buffer, 3213*4f2df630SAndroid Build Coastguard Worker TPMU_SIG_SCHEME* value, 3214*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3215*4f2df630SAndroid Build Coastguard Worker 3216*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_KDF_SCHEME(const TPMU_KDF_SCHEME& value, 3217*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3218*4f2df630SAndroid Build Coastguard Worker 3219*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_KDF_SCHEME(std::string* buffer, 3220*4f2df630SAndroid Build Coastguard Worker TPMU_KDF_SCHEME* value, 3221*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3222*4f2df630SAndroid Build Coastguard Worker 3223*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_ASYM_SCHEME(const TPMU_ASYM_SCHEME& value, 3224*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3225*4f2df630SAndroid Build Coastguard Worker 3226*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_ASYM_SCHEME(std::string* buffer, 3227*4f2df630SAndroid Build Coastguard Worker TPMU_ASYM_SCHEME* value, 3228*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3229*4f2df630SAndroid Build Coastguard Worker 3230*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SIGNATURE(const TPMU_SIGNATURE& value, 3231*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3232*4f2df630SAndroid Build Coastguard Worker 3233*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SIGNATURE(std::string* buffer, 3234*4f2df630SAndroid Build Coastguard Worker TPMU_SIGNATURE* value, 3235*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3236*4f2df630SAndroid Build Coastguard Worker 3237*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_ENCRYPTED_SECRET( 3238*4f2df630SAndroid Build Coastguard Worker const TPMU_ENCRYPTED_SECRET& value, std::string* buffer); 3239*4f2df630SAndroid Build Coastguard Worker 3240*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_ENCRYPTED_SECRET(std::string* buffer, 3241*4f2df630SAndroid Build Coastguard Worker TPMU_ENCRYPTED_SECRET* value, 3242*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3243*4f2df630SAndroid Build Coastguard Worker 3244*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_PUBLIC_ID(const TPMU_PUBLIC_ID& value, 3245*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3246*4f2df630SAndroid Build Coastguard Worker 3247*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_PUBLIC_ID(std::string* buffer, 3248*4f2df630SAndroid Build Coastguard Worker TPMU_PUBLIC_ID* value, 3249*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3250*4f2df630SAndroid Build Coastguard Worker 3251*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_PUBLIC_PARMS(const TPMU_PUBLIC_PARMS& value, 3252*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3253*4f2df630SAndroid Build Coastguard Worker 3254*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_PUBLIC_PARMS(std::string* buffer, 3255*4f2df630SAndroid Build Coastguard Worker TPMU_PUBLIC_PARMS* value, 3256*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3257*4f2df630SAndroid Build Coastguard Worker 3258*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SENSITIVE_COMPOSITE( 3259*4f2df630SAndroid Build Coastguard Worker const TPMU_SENSITIVE_COMPOSITE& value, std::string* buffer); 3260*4f2df630SAndroid Build Coastguard Worker 3261*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC 3262*4f2df630SAndroid Build Coastguard Worker Parse_TPMU_SENSITIVE_COMPOSITE(std::string* buffer, 3263*4f2df630SAndroid Build Coastguard Worker TPMU_SENSITIVE_COMPOSITE* value, 3264*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3265*4f2df630SAndroid Build Coastguard Worker 3266*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Serialize_TPMU_SYM_DETAILS(const TPMU_SYM_DETAILS& value, 3267*4f2df630SAndroid Build Coastguard Worker std::string* buffer); 3268*4f2df630SAndroid Build Coastguard Worker 3269*4f2df630SAndroid Build Coastguard Worker TRUNKS_EXPORT TPM_RC Parse_TPMU_SYM_DETAILS(std::string* buffer, 3270*4f2df630SAndroid Build Coastguard Worker TPMU_SYM_DETAILS* value, 3271*4f2df630SAndroid Build Coastguard Worker std::string* value_bytes); 3272*4f2df630SAndroid Build Coastguard Worker 3273*4f2df630SAndroid Build Coastguard Worker class TRUNKS_EXPORT Tpm { 3274*4f2df630SAndroid Build Coastguard Worker public: 3275*4f2df630SAndroid Build Coastguard Worker // Does not take ownership of |transceiver|. Tpm(CommandTransceiver * transceiver)3276*4f2df630SAndroid Build Coastguard Worker explicit Tpm(CommandTransceiver* transceiver) : transceiver_(transceiver) {} 3277*4f2df630SAndroid Build Coastguard Worker Tpm(const Tpm&) = delete; 3278*4f2df630SAndroid Build Coastguard Worker Tpm& operator=(const Tpm&) = delete; 3279*4f2df630SAndroid Build Coastguard Worker ~Tpm()3280*4f2df630SAndroid Build Coastguard Worker virtual ~Tpm() {} get_transceiver()3281*4f2df630SAndroid Build Coastguard Worker CommandTransceiver* get_transceiver() { return transceiver_; } 3282*4f2df630SAndroid Build Coastguard Worker 3283*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> StartupResponse; 3284*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Startup( 3285*4f2df630SAndroid Build Coastguard Worker const TPM_SU& startup_type, 3286*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3287*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3288*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Startup( 3289*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3290*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3291*4f2df630SAndroid Build Coastguard Worker virtual void Startup(const TPM_SU& startup_type, 3292*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3293*4f2df630SAndroid Build Coastguard Worker StartupResponse callback); 3294*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC StartupSync(const TPM_SU& startup_type, 3295*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3296*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ShutdownResponse; 3297*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Shutdown( 3298*4f2df630SAndroid Build Coastguard Worker const TPM_SU& shutdown_type, 3299*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3300*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3301*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Shutdown( 3302*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3303*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3304*4f2df630SAndroid Build Coastguard Worker virtual void Shutdown(const TPM_SU& shutdown_type, 3305*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3306*4f2df630SAndroid Build Coastguard Worker ShutdownResponse callback); 3307*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ShutdownSync(const TPM_SU& shutdown_type, 3308*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3309*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> SelfTestResponse; 3310*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SelfTest( 3311*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& full_test, 3312*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3313*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3314*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SelfTest( 3315*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3316*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3317*4f2df630SAndroid Build Coastguard Worker virtual void SelfTest(const TPMI_YES_NO& full_test, 3318*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3319*4f2df630SAndroid Build Coastguard Worker SelfTestResponse callback); 3320*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SelfTestSync(const TPMI_YES_NO& full_test, 3321*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3322*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3323*4f2df630SAndroid Build Coastguard Worker const TPML_ALG& to_do_list)> 3324*4f2df630SAndroid Build Coastguard Worker IncrementalSelfTestResponse; 3325*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_IncrementalSelfTest( 3326*4f2df630SAndroid Build Coastguard Worker const TPML_ALG& to_test, 3327*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3328*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3329*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_IncrementalSelfTest( 3330*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3331*4f2df630SAndroid Build Coastguard Worker TPML_ALG* to_do_list, 3332*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3333*4f2df630SAndroid Build Coastguard Worker virtual void IncrementalSelfTest( 3334*4f2df630SAndroid Build Coastguard Worker const TPML_ALG& to_test, 3335*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3336*4f2df630SAndroid Build Coastguard Worker IncrementalSelfTestResponse callback); 3337*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC IncrementalSelfTestSync( 3338*4f2df630SAndroid Build Coastguard Worker const TPML_ALG& to_test, 3339*4f2df630SAndroid Build Coastguard Worker TPML_ALG* to_do_list, 3340*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3341*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3342*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& out_data, 3343*4f2df630SAndroid Build Coastguard Worker const TPM_RC& test_result)> 3344*4f2df630SAndroid Build Coastguard Worker GetTestResultResponse; 3345*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetTestResult( 3346*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3347*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3348*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetTestResult( 3349*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3350*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* out_data, 3351*4f2df630SAndroid Build Coastguard Worker TPM_RC* test_result, 3352*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3353*4f2df630SAndroid Build Coastguard Worker virtual void GetTestResult(AuthorizationDelegate* authorization_delegate, 3354*4f2df630SAndroid Build Coastguard Worker GetTestResultResponse callback); 3355*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetTestResultSync( 3356*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* out_data, 3357*4f2df630SAndroid Build Coastguard Worker TPM_RC* test_result, 3358*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3359*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3360*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_AUTH_SESSION& session_handle, 3361*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm)> 3362*4f2df630SAndroid Build Coastguard Worker StartAuthSessionResponse; 3363*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_StartAuthSession( 3364*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& tpm_key, 3365*4f2df630SAndroid Build Coastguard Worker const std::string& tpm_key_name, 3366*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_ENTITY& bind, 3367*4f2df630SAndroid Build Coastguard Worker const std::string& bind_name, 3368*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_caller, 3369*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 3370*4f2df630SAndroid Build Coastguard Worker const TPM_SE& session_type, 3371*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF& symmetric, 3372*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& auth_hash, 3373*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3374*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3375*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_StartAuthSession( 3376*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3377*4f2df630SAndroid Build Coastguard Worker TPMI_SH_AUTH_SESSION* session_handle, 3378*4f2df630SAndroid Build Coastguard Worker TPM2B_NONCE* nonce_tpm, 3379*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3380*4f2df630SAndroid Build Coastguard Worker virtual void StartAuthSession(const TPMI_DH_OBJECT& tpm_key, 3381*4f2df630SAndroid Build Coastguard Worker const std::string& tpm_key_name, 3382*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_ENTITY& bind, 3383*4f2df630SAndroid Build Coastguard Worker const std::string& bind_name, 3384*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_caller, 3385*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 3386*4f2df630SAndroid Build Coastguard Worker const TPM_SE& session_type, 3387*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF& symmetric, 3388*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& auth_hash, 3389*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3390*4f2df630SAndroid Build Coastguard Worker StartAuthSessionResponse callback); 3391*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC StartAuthSessionSync( 3392*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& tpm_key, 3393*4f2df630SAndroid Build Coastguard Worker const std::string& tpm_key_name, 3394*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_ENTITY& bind, 3395*4f2df630SAndroid Build Coastguard Worker const std::string& bind_name, 3396*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_caller, 3397*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 3398*4f2df630SAndroid Build Coastguard Worker const TPM_SE& session_type, 3399*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF& symmetric, 3400*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& auth_hash, 3401*4f2df630SAndroid Build Coastguard Worker TPMI_SH_AUTH_SESSION* session_handle, 3402*4f2df630SAndroid Build Coastguard Worker TPM2B_NONCE* nonce_tpm, 3403*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3404*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyRestartResponse; 3405*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyRestart( 3406*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& session_handle, 3407*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 3408*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3409*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3410*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyRestart( 3411*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3412*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3413*4f2df630SAndroid Build Coastguard Worker virtual void PolicyRestart(const TPMI_SH_POLICY& session_handle, 3414*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 3415*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3416*4f2df630SAndroid Build Coastguard Worker PolicyRestartResponse callback); 3417*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyRestartSync( 3418*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& session_handle, 3419*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 3420*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3421*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3422*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& out_private, 3423*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& out_public, 3424*4f2df630SAndroid Build Coastguard Worker const TPM2B_CREATION_DATA& creation_data, 3425*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& creation_hash, 3426*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_CREATION& creation_ticket)> 3427*4f2df630SAndroid Build Coastguard Worker CreateResponse; 3428*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Create( 3429*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3430*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3431*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 3432*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3433*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 3434*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 3435*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3436*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3437*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Create( 3438*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3439*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3440*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 3441*4f2df630SAndroid Build Coastguard Worker TPM2B_CREATION_DATA* creation_data, 3442*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* creation_hash, 3443*4f2df630SAndroid Build Coastguard Worker TPMT_TK_CREATION* creation_ticket, 3444*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3445*4f2df630SAndroid Build Coastguard Worker virtual void Create(const TPMI_DH_OBJECT& parent_handle, 3446*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3447*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 3448*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3449*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 3450*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 3451*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3452*4f2df630SAndroid Build Coastguard Worker CreateResponse callback); 3453*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC CreateSync(const TPMI_DH_OBJECT& parent_handle, 3454*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3455*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 3456*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3457*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 3458*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 3459*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3460*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 3461*4f2df630SAndroid Build Coastguard Worker TPM2B_CREATION_DATA* creation_data, 3462*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* creation_hash, 3463*4f2df630SAndroid Build Coastguard Worker TPMT_TK_CREATION* creation_ticket, 3464*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3465*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3466*4f2df630SAndroid Build Coastguard Worker const TPM_HANDLE& object_handle, 3467*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name)> 3468*4f2df630SAndroid Build Coastguard Worker LoadResponse; 3469*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Load( 3470*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3471*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3472*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_private, 3473*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3474*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3475*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3476*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Load( 3477*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3478*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 3479*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3480*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3481*4f2df630SAndroid Build Coastguard Worker virtual void Load(const TPMI_DH_OBJECT& parent_handle, 3482*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3483*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_private, 3484*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3485*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3486*4f2df630SAndroid Build Coastguard Worker LoadResponse callback); 3487*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC LoadSync(const TPMI_DH_OBJECT& parent_handle, 3488*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3489*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_private, 3490*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3491*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 3492*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3493*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3494*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3495*4f2df630SAndroid Build Coastguard Worker const TPM_HANDLE& object_handle, 3496*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name)> 3497*4f2df630SAndroid Build Coastguard Worker LoadExternalResponse; 3498*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_LoadExternal( 3499*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE& in_private, 3500*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3501*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3502*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3503*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3504*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_LoadExternal( 3505*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3506*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 3507*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3508*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3509*4f2df630SAndroid Build Coastguard Worker virtual void LoadExternal(const TPM2B_SENSITIVE& in_private, 3510*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3511*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3512*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3513*4f2df630SAndroid Build Coastguard Worker LoadExternalResponse callback); 3514*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC LoadExternalSync( 3515*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE& in_private, 3516*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 3517*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3518*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 3519*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3520*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3521*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3522*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& out_public, 3523*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name, 3524*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& qualified_name)> 3525*4f2df630SAndroid Build Coastguard Worker ReadPublicResponse; 3526*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ReadPublic( 3527*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 3528*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3529*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3530*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3531*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ReadPublic( 3532*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3533*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 3534*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3535*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* qualified_name, 3536*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3537*4f2df630SAndroid Build Coastguard Worker virtual void ReadPublic(const TPMI_DH_OBJECT& object_handle, 3538*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3539*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3540*4f2df630SAndroid Build Coastguard Worker ReadPublicResponse callback); 3541*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ReadPublicSync(const TPMI_DH_OBJECT& object_handle, 3542*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3543*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 3544*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 3545*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* qualified_name, 3546*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3547*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3548*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cert_info)> 3549*4f2df630SAndroid Build Coastguard Worker ActivateCredentialResponse; 3550*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ActivateCredential( 3551*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& activate_handle, 3552*4f2df630SAndroid Build Coastguard Worker const std::string& activate_handle_name, 3553*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3554*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3555*4f2df630SAndroid Build Coastguard Worker const TPM2B_ID_OBJECT& credential_blob, 3556*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& secret, 3557*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3558*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3559*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ActivateCredential( 3560*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3561*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* cert_info, 3562*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3563*4f2df630SAndroid Build Coastguard Worker virtual void ActivateCredential(const TPMI_DH_OBJECT& activate_handle, 3564*4f2df630SAndroid Build Coastguard Worker const std::string& activate_handle_name, 3565*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3566*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3567*4f2df630SAndroid Build Coastguard Worker const TPM2B_ID_OBJECT& credential_blob, 3568*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& secret, 3569*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3570*4f2df630SAndroid Build Coastguard Worker ActivateCredentialResponse callback); 3571*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ActivateCredentialSync( 3572*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& activate_handle, 3573*4f2df630SAndroid Build Coastguard Worker const std::string& activate_handle_name, 3574*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3575*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3576*4f2df630SAndroid Build Coastguard Worker const TPM2B_ID_OBJECT& credential_blob, 3577*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& secret, 3578*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* cert_info, 3579*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3580*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3581*4f2df630SAndroid Build Coastguard Worker const TPM2B_ID_OBJECT& credential_blob, 3582*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& secret)> 3583*4f2df630SAndroid Build Coastguard Worker MakeCredentialResponse; 3584*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_MakeCredential( 3585*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& handle, 3586*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 3587*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& credential, 3588*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 3589*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3590*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3591*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_MakeCredential( 3592*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3593*4f2df630SAndroid Build Coastguard Worker TPM2B_ID_OBJECT* credential_blob, 3594*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* secret, 3595*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3596*4f2df630SAndroid Build Coastguard Worker virtual void MakeCredential(const TPMI_DH_OBJECT& handle, 3597*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 3598*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& credential, 3599*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 3600*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3601*4f2df630SAndroid Build Coastguard Worker MakeCredentialResponse callback); 3602*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC MakeCredentialSync( 3603*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& handle, 3604*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 3605*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& credential, 3606*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 3607*4f2df630SAndroid Build Coastguard Worker TPM2B_ID_OBJECT* credential_blob, 3608*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* secret, 3609*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3610*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3611*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& out_data)> 3612*4f2df630SAndroid Build Coastguard Worker UnsealResponse; 3613*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Unseal( 3614*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& item_handle, 3615*4f2df630SAndroid Build Coastguard Worker const std::string& item_handle_name, 3616*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3617*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3618*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Unseal( 3619*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3620*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_DATA* out_data, 3621*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3622*4f2df630SAndroid Build Coastguard Worker virtual void Unseal(const TPMI_DH_OBJECT& item_handle, 3623*4f2df630SAndroid Build Coastguard Worker const std::string& item_handle_name, 3624*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3625*4f2df630SAndroid Build Coastguard Worker UnsealResponse callback); 3626*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC UnsealSync(const TPMI_DH_OBJECT& item_handle, 3627*4f2df630SAndroid Build Coastguard Worker const std::string& item_handle_name, 3628*4f2df630SAndroid Build Coastguard Worker TPM2B_SENSITIVE_DATA* out_data, 3629*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3630*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3631*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& out_private)> 3632*4f2df630SAndroid Build Coastguard Worker ObjectChangeAuthResponse; 3633*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ObjectChangeAuth( 3634*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 3635*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3636*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3637*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3638*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 3639*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3640*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3641*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ObjectChangeAuth( 3642*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3643*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3644*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3645*4f2df630SAndroid Build Coastguard Worker virtual void ObjectChangeAuth(const TPMI_DH_OBJECT& object_handle, 3646*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3647*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3648*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3649*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 3650*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3651*4f2df630SAndroid Build Coastguard Worker ObjectChangeAuthResponse callback); 3652*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ObjectChangeAuthSync( 3653*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 3654*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3655*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3656*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3657*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 3658*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3659*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3660*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3661*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key_out, 3662*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& duplicate, 3663*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& out_sym_seed)> 3664*4f2df630SAndroid Build Coastguard Worker DuplicateResponse; 3665*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Duplicate( 3666*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 3667*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3668*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent_handle, 3669*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_handle_name, 3670*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key_in, 3671*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3672*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3673*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3674*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Duplicate( 3675*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3676*4f2df630SAndroid Build Coastguard Worker TPM2B_DATA* encryption_key_out, 3677*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* duplicate, 3678*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* out_sym_seed, 3679*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3680*4f2df630SAndroid Build Coastguard Worker virtual void Duplicate(const TPMI_DH_OBJECT& object_handle, 3681*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3682*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent_handle, 3683*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_handle_name, 3684*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key_in, 3685*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3686*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3687*4f2df630SAndroid Build Coastguard Worker DuplicateResponse callback); 3688*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC DuplicateSync(const TPMI_DH_OBJECT& object_handle, 3689*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 3690*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent_handle, 3691*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_handle_name, 3692*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key_in, 3693*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3694*4f2df630SAndroid Build Coastguard Worker TPM2B_DATA* encryption_key_out, 3695*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* duplicate, 3696*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* out_sym_seed, 3697*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3698*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3699*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& out_duplicate, 3700*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& out_sym_seed)> 3701*4f2df630SAndroid Build Coastguard Worker RewrapResponse; 3702*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Rewrap( 3703*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& old_parent, 3704*4f2df630SAndroid Build Coastguard Worker const std::string& old_parent_name, 3705*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent, 3706*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_name, 3707*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_duplicate, 3708*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name, 3709*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3710*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3711*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3712*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Rewrap( 3713*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3714*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_duplicate, 3715*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* out_sym_seed, 3716*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3717*4f2df630SAndroid Build Coastguard Worker virtual void Rewrap(const TPMI_DH_OBJECT& old_parent, 3718*4f2df630SAndroid Build Coastguard Worker const std::string& old_parent_name, 3719*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent, 3720*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_name, 3721*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_duplicate, 3722*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name, 3723*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3724*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3725*4f2df630SAndroid Build Coastguard Worker RewrapResponse callback); 3726*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC RewrapSync(const TPMI_DH_OBJECT& old_parent, 3727*4f2df630SAndroid Build Coastguard Worker const std::string& old_parent_name, 3728*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& new_parent, 3729*4f2df630SAndroid Build Coastguard Worker const std::string& new_parent_name, 3730*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& in_duplicate, 3731*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name, 3732*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3733*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_duplicate, 3734*4f2df630SAndroid Build Coastguard Worker TPM2B_ENCRYPTED_SECRET* out_sym_seed, 3735*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3736*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3737*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& out_private)> 3738*4f2df630SAndroid Build Coastguard Worker ImportResponse; 3739*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Import( 3740*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& parent_handle, 3741*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3742*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key, 3743*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& object_public, 3744*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& duplicate, 3745*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3746*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3747*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3748*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3749*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Import( 3750*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3751*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3752*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3753*4f2df630SAndroid Build Coastguard Worker virtual void Import(const TPMI_DH_OBJECT& parent_handle, 3754*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3755*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key, 3756*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& object_public, 3757*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& duplicate, 3758*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3759*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3760*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3761*4f2df630SAndroid Build Coastguard Worker ImportResponse callback); 3762*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ImportSync(const TPMI_DH_OBJECT& parent_handle, 3763*4f2df630SAndroid Build Coastguard Worker const std::string& parent_handle_name, 3764*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& encryption_key, 3765*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& object_public, 3766*4f2df630SAndroid Build Coastguard Worker const TPM2B_PRIVATE& duplicate, 3767*4f2df630SAndroid Build Coastguard Worker const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 3768*4f2df630SAndroid Build Coastguard Worker const TPMT_SYM_DEF_OBJECT& symmetric_alg, 3769*4f2df630SAndroid Build Coastguard Worker TPM2B_PRIVATE* out_private, 3770*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3771*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3772*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& out_data)> 3773*4f2df630SAndroid Build Coastguard Worker RSA_EncryptResponse; 3774*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_RSA_Encrypt( 3775*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3776*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3777*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& message, 3778*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3779*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3780*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3781*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3782*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_RSA_Encrypt( 3783*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3784*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA* out_data, 3785*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3786*4f2df630SAndroid Build Coastguard Worker virtual void RSA_Encrypt(const TPMI_DH_OBJECT& key_handle, 3787*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3788*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& message, 3789*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3790*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3791*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3792*4f2df630SAndroid Build Coastguard Worker RSA_EncryptResponse callback); 3793*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC RSA_EncryptSync(const TPMI_DH_OBJECT& key_handle, 3794*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3795*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& message, 3796*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3797*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3798*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA* out_data, 3799*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3800*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3801*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& message)> 3802*4f2df630SAndroid Build Coastguard Worker RSA_DecryptResponse; 3803*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_RSA_Decrypt( 3804*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3805*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3806*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& cipher_text, 3807*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3808*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3809*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3810*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3811*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_RSA_Decrypt( 3812*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3813*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA* message, 3814*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3815*4f2df630SAndroid Build Coastguard Worker virtual void RSA_Decrypt(const TPMI_DH_OBJECT& key_handle, 3816*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3817*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& cipher_text, 3818*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3819*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3820*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3821*4f2df630SAndroid Build Coastguard Worker RSA_DecryptResponse callback); 3822*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC RSA_DecryptSync(const TPMI_DH_OBJECT& key_handle, 3823*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3824*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC_KEY_RSA& cipher_text, 3825*4f2df630SAndroid Build Coastguard Worker const TPMT_RSA_DECRYPT& in_scheme, 3826*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& label, 3827*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC_KEY_RSA* message, 3828*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3829*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3830*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& z_point, 3831*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& pub_point)> 3832*4f2df630SAndroid Build Coastguard Worker ECDH_KeyGenResponse; 3833*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ECDH_KeyGen( 3834*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3835*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3836*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3837*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3838*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ECDH_KeyGen( 3839*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3840*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* z_point, 3841*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* pub_point, 3842*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3843*4f2df630SAndroid Build Coastguard Worker virtual void ECDH_KeyGen(const TPMI_DH_OBJECT& key_handle, 3844*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3845*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3846*4f2df630SAndroid Build Coastguard Worker ECDH_KeyGenResponse callback); 3847*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ECDH_KeyGenSync(const TPMI_DH_OBJECT& key_handle, 3848*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3849*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* z_point, 3850*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* pub_point, 3851*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3852*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3853*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& out_point)> 3854*4f2df630SAndroid Build Coastguard Worker ECDH_ZGenResponse; 3855*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ECDH_ZGen( 3856*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3857*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3858*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_point, 3859*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3860*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3861*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ECDH_ZGen( 3862*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3863*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_point, 3864*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3865*4f2df630SAndroid Build Coastguard Worker virtual void ECDH_ZGen(const TPMI_DH_OBJECT& key_handle, 3866*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3867*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_point, 3868*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3869*4f2df630SAndroid Build Coastguard Worker ECDH_ZGenResponse callback); 3870*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ECDH_ZGenSync(const TPMI_DH_OBJECT& key_handle, 3871*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3872*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_point, 3873*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_point, 3874*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3875*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3876*4f2df630SAndroid Build Coastguard Worker const TPMS_ALGORITHM_DETAIL_ECC& parameters)> 3877*4f2df630SAndroid Build Coastguard Worker ECC_ParametersResponse; 3878*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ECC_Parameters( 3879*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_CURVE& curve_id, 3880*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3881*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3882*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ECC_Parameters( 3883*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3884*4f2df630SAndroid Build Coastguard Worker TPMS_ALGORITHM_DETAIL_ECC* parameters, 3885*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3886*4f2df630SAndroid Build Coastguard Worker virtual void ECC_Parameters(const TPMI_ECC_CURVE& curve_id, 3887*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3888*4f2df630SAndroid Build Coastguard Worker ECC_ParametersResponse callback); 3889*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ECC_ParametersSync( 3890*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_CURVE& curve_id, 3891*4f2df630SAndroid Build Coastguard Worker TPMS_ALGORITHM_DETAIL_ECC* parameters, 3892*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3893*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3894*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& out_z1, 3895*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& out_z2)> 3896*4f2df630SAndroid Build Coastguard Worker ZGen_2PhaseResponse; 3897*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ZGen_2Phase( 3898*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_a, 3899*4f2df630SAndroid Build Coastguard Worker const std::string& key_a_name, 3900*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qs_b, 3901*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qe_b, 3902*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_KEY_EXCHANGE& in_scheme, 3903*4f2df630SAndroid Build Coastguard Worker const UINT16& counter, 3904*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3905*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3906*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ZGen_2Phase( 3907*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3908*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_z1, 3909*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_z2, 3910*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3911*4f2df630SAndroid Build Coastguard Worker virtual void ZGen_2Phase(const TPMI_DH_OBJECT& key_a, 3912*4f2df630SAndroid Build Coastguard Worker const std::string& key_a_name, 3913*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qs_b, 3914*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qe_b, 3915*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_KEY_EXCHANGE& in_scheme, 3916*4f2df630SAndroid Build Coastguard Worker const UINT16& counter, 3917*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3918*4f2df630SAndroid Build Coastguard Worker ZGen_2PhaseResponse callback); 3919*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ZGen_2PhaseSync(const TPMI_DH_OBJECT& key_a, 3920*4f2df630SAndroid Build Coastguard Worker const std::string& key_a_name, 3921*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qs_b, 3922*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& in_qe_b, 3923*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_KEY_EXCHANGE& in_scheme, 3924*4f2df630SAndroid Build Coastguard Worker const UINT16& counter, 3925*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_z1, 3926*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* out_z2, 3927*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3928*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3929*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& out_data, 3930*4f2df630SAndroid Build Coastguard Worker const TPM2B_IV& iv_out)> 3931*4f2df630SAndroid Build Coastguard Worker EncryptDecryptResponse; 3932*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_EncryptDecrypt( 3933*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3934*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3935*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& decrypt, 3936*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_SYM_MODE& mode, 3937*4f2df630SAndroid Build Coastguard Worker const TPM2B_IV& iv_in, 3938*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& in_data, 3939*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3940*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3941*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_EncryptDecrypt( 3942*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3943*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* out_data, 3944*4f2df630SAndroid Build Coastguard Worker TPM2B_IV* iv_out, 3945*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3946*4f2df630SAndroid Build Coastguard Worker virtual void EncryptDecrypt(const TPMI_DH_OBJECT& key_handle, 3947*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3948*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& decrypt, 3949*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_SYM_MODE& mode, 3950*4f2df630SAndroid Build Coastguard Worker const TPM2B_IV& iv_in, 3951*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& in_data, 3952*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3953*4f2df630SAndroid Build Coastguard Worker EncryptDecryptResponse callback); 3954*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC EncryptDecryptSync( 3955*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 3956*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 3957*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& decrypt, 3958*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_SYM_MODE& mode, 3959*4f2df630SAndroid Build Coastguard Worker const TPM2B_IV& iv_in, 3960*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& in_data, 3961*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* out_data, 3962*4f2df630SAndroid Build Coastguard Worker TPM2B_IV* iv_out, 3963*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3964*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3965*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& out_hash, 3966*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_HASHCHECK& validation)> 3967*4f2df630SAndroid Build Coastguard Worker HashResponse; 3968*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Hash( 3969*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& data, 3970*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 3971*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3972*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3973*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3974*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Hash( 3975*4f2df630SAndroid Build Coastguard Worker const std::string& response, 3976*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* out_hash, 3977*4f2df630SAndroid Build Coastguard Worker TPMT_TK_HASHCHECK* validation, 3978*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3979*4f2df630SAndroid Build Coastguard Worker virtual void Hash(const TPM2B_MAX_BUFFER& data, 3980*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 3981*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3982*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 3983*4f2df630SAndroid Build Coastguard Worker HashResponse callback); 3984*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HashSync(const TPM2B_MAX_BUFFER& data, 3985*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 3986*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 3987*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* out_hash, 3988*4f2df630SAndroid Build Coastguard Worker TPMT_TK_HASHCHECK* validation, 3989*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 3990*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 3991*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& out_hmac)> 3992*4f2df630SAndroid Build Coastguard Worker HMACResponse; 3993*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_HMAC( 3994*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& handle, 3995*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 3996*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 3997*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 3998*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 3999*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4000*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_HMAC( 4001*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4002*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* out_hmac, 4003*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4004*4f2df630SAndroid Build Coastguard Worker virtual void HMAC(const TPMI_DH_OBJECT& handle, 4005*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 4006*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4007*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4008*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4009*4f2df630SAndroid Build Coastguard Worker HMACResponse callback); 4010*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HMACSync(const TPMI_DH_OBJECT& handle, 4011*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 4012*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4013*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4014*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* out_hmac, 4015*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4016*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4017*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& random_bytes)> 4018*4f2df630SAndroid Build Coastguard Worker GetRandomResponse; 4019*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetRandom( 4020*4f2df630SAndroid Build Coastguard Worker const UINT16& bytes_requested, 4021*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4022*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4023*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetRandom( 4024*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4025*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* random_bytes, 4026*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4027*4f2df630SAndroid Build Coastguard Worker virtual void GetRandom(const UINT16& bytes_requested, 4028*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4029*4f2df630SAndroid Build Coastguard Worker GetRandomResponse callback); 4030*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetRandomSync(const UINT16& bytes_requested, 4031*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* random_bytes, 4032*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4033*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> StirRandomResponse; 4034*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_StirRandom( 4035*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& in_data, 4036*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4037*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4038*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_StirRandom( 4039*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4040*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4041*4f2df630SAndroid Build Coastguard Worker virtual void StirRandom(const TPM2B_SENSITIVE_DATA& in_data, 4042*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4043*4f2df630SAndroid Build Coastguard Worker StirRandomResponse callback); 4044*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC StirRandomSync(const TPM2B_SENSITIVE_DATA& in_data, 4045*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4046*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4047*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle)> 4048*4f2df630SAndroid Build Coastguard Worker HMAC_StartResponse; 4049*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_HMAC_Start( 4050*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& handle, 4051*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 4052*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 4053*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4054*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4055*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4056*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_HMAC_Start( 4057*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4058*4f2df630SAndroid Build Coastguard Worker TPMI_DH_OBJECT* sequence_handle, 4059*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4060*4f2df630SAndroid Build Coastguard Worker virtual void HMAC_Start(const TPMI_DH_OBJECT& handle, 4061*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 4062*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 4063*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4064*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4065*4f2df630SAndroid Build Coastguard Worker HMAC_StartResponse callback); 4066*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HMAC_StartSync(const TPMI_DH_OBJECT& handle, 4067*4f2df630SAndroid Build Coastguard Worker const std::string& handle_name, 4068*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 4069*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4070*4f2df630SAndroid Build Coastguard Worker TPMI_DH_OBJECT* sequence_handle, 4071*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4072*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4073*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle)> 4074*4f2df630SAndroid Build Coastguard Worker HashSequenceStartResponse; 4075*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_HashSequenceStart( 4076*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 4077*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4078*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4079*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4080*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_HashSequenceStart( 4081*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4082*4f2df630SAndroid Build Coastguard Worker TPMI_DH_OBJECT* sequence_handle, 4083*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4084*4f2df630SAndroid Build Coastguard Worker virtual void HashSequenceStart(const TPM2B_AUTH& auth, 4085*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4086*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4087*4f2df630SAndroid Build Coastguard Worker HashSequenceStartResponse callback); 4088*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HashSequenceStartSync( 4089*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 4090*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 4091*4f2df630SAndroid Build Coastguard Worker TPMI_DH_OBJECT* sequence_handle, 4092*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4093*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> SequenceUpdateResponse; 4094*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SequenceUpdate( 4095*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4096*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4097*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4098*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4099*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4100*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SequenceUpdate( 4101*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4102*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4103*4f2df630SAndroid Build Coastguard Worker virtual void SequenceUpdate(const TPMI_DH_OBJECT& sequence_handle, 4104*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4105*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4106*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4107*4f2df630SAndroid Build Coastguard Worker SequenceUpdateResponse callback); 4108*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SequenceUpdateSync( 4109*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4110*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4111*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4112*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4113*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4114*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& result, 4115*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_HASHCHECK& validation)> 4116*4f2df630SAndroid Build Coastguard Worker SequenceCompleteResponse; 4117*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SequenceComplete( 4118*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4119*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4120*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4121*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 4122*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4123*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4124*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SequenceComplete( 4125*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4126*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* result, 4127*4f2df630SAndroid Build Coastguard Worker TPMT_TK_HASHCHECK* validation, 4128*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4129*4f2df630SAndroid Build Coastguard Worker virtual void SequenceComplete(const TPMI_DH_OBJECT& sequence_handle, 4130*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4131*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4132*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 4133*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4134*4f2df630SAndroid Build Coastguard Worker SequenceCompleteResponse callback); 4135*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SequenceCompleteSync( 4136*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4137*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4138*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4139*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& hierarchy, 4140*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* result, 4141*4f2df630SAndroid Build Coastguard Worker TPMT_TK_HASHCHECK* validation, 4142*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4143*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4144*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& results)> 4145*4f2df630SAndroid Build Coastguard Worker EventSequenceCompleteResponse; 4146*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_EventSequenceComplete( 4147*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4148*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4149*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4150*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4151*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4152*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4153*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4154*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_EventSequenceComplete( 4155*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4156*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST_VALUES* results, 4157*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4158*4f2df630SAndroid Build Coastguard Worker virtual void EventSequenceComplete( 4159*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4160*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4161*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4162*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4163*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4164*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4165*4f2df630SAndroid Build Coastguard Worker EventSequenceCompleteResponse callback); 4166*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC EventSequenceCompleteSync( 4167*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4168*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4169*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sequence_handle, 4170*4f2df630SAndroid Build Coastguard Worker const std::string& sequence_handle_name, 4171*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& buffer, 4172*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST_VALUES* results, 4173*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4174*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4175*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& certify_info, 4176*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4177*4f2df630SAndroid Build Coastguard Worker CertifyResponse; 4178*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Certify( 4179*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 4180*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4181*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4182*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4183*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4184*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4185*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4186*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4187*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Certify( 4188*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4189*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 4190*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4191*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4192*4f2df630SAndroid Build Coastguard Worker virtual void Certify(const TPMI_DH_OBJECT& object_handle, 4193*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4194*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4195*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4196*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4197*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4198*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4199*4f2df630SAndroid Build Coastguard Worker CertifyResponse callback); 4200*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC CertifySync(const TPMI_DH_OBJECT& object_handle, 4201*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4202*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4203*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4204*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4205*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4206*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 4207*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4208*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4209*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4210*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& certify_info, 4211*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4212*4f2df630SAndroid Build Coastguard Worker CertifyCreationResponse; 4213*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_CertifyCreation( 4214*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4215*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4216*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 4217*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4218*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4219*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& creation_hash, 4220*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4221*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_CREATION& creation_ticket, 4222*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4223*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4224*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_CertifyCreation( 4225*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4226*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 4227*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4228*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4229*4f2df630SAndroid Build Coastguard Worker virtual void CertifyCreation(const TPMI_DH_OBJECT& sign_handle, 4230*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4231*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 4232*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4233*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4234*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& creation_hash, 4235*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4236*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_CREATION& creation_ticket, 4237*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4238*4f2df630SAndroid Build Coastguard Worker CertifyCreationResponse callback); 4239*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC CertifyCreationSync( 4240*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4241*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4242*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 4243*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 4244*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4245*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& creation_hash, 4246*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4247*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_CREATION& creation_ticket, 4248*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 4249*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4250*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4251*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4252*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& quoted, 4253*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4254*4f2df630SAndroid Build Coastguard Worker QuoteResponse; 4255*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Quote( 4256*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4257*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4258*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4259*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4260*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrselect, 4261*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4262*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4263*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Quote( 4264*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4265*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* quoted, 4266*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4267*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4268*4f2df630SAndroid Build Coastguard Worker virtual void Quote(const TPMI_DH_OBJECT& sign_handle, 4269*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4270*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4271*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4272*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrselect, 4273*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4274*4f2df630SAndroid Build Coastguard Worker QuoteResponse callback); 4275*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC QuoteSync(const TPMI_DH_OBJECT& sign_handle, 4276*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4277*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4278*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4279*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrselect, 4280*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* quoted, 4281*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4282*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4283*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4284*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& audit_info, 4285*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4286*4f2df630SAndroid Build Coastguard Worker GetSessionAuditDigestResponse; 4287*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetSessionAuditDigest( 4288*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4289*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4290*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4291*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4292*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_HMAC& session_handle, 4293*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 4294*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4295*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4296*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4297*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4298*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetSessionAuditDigest( 4299*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4300*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* audit_info, 4301*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4302*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4303*4f2df630SAndroid Build Coastguard Worker virtual void GetSessionAuditDigest( 4304*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4305*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4306*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4307*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4308*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_HMAC& session_handle, 4309*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 4310*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4311*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4312*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4313*4f2df630SAndroid Build Coastguard Worker GetSessionAuditDigestResponse callback); 4314*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetSessionAuditDigestSync( 4315*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4316*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4317*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4318*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4319*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_HMAC& session_handle, 4320*4f2df630SAndroid Build Coastguard Worker const std::string& session_handle_name, 4321*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4322*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4323*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* audit_info, 4324*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4325*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4326*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4327*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& audit_info, 4328*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4329*4f2df630SAndroid Build Coastguard Worker GetCommandAuditDigestResponse; 4330*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetCommandAuditDigest( 4331*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_handle, 4332*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_handle_name, 4333*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4334*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4335*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4336*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4337*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4338*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4339*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetCommandAuditDigest( 4340*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4341*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* audit_info, 4342*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4343*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4344*4f2df630SAndroid Build Coastguard Worker virtual void GetCommandAuditDigest( 4345*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_handle, 4346*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_handle_name, 4347*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4348*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4349*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4350*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4351*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4352*4f2df630SAndroid Build Coastguard Worker GetCommandAuditDigestResponse callback); 4353*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetCommandAuditDigestSync( 4354*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_handle, 4355*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_handle_name, 4356*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4357*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4358*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4359*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4360*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* audit_info, 4361*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4362*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4363*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4364*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& time_info, 4365*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4366*4f2df630SAndroid Build Coastguard Worker GetTimeResponse; 4367*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetTime( 4368*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4369*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4370*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4371*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4372*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4373*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4374*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4375*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4376*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetTime( 4377*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4378*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* time_info, 4379*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4380*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4381*4f2df630SAndroid Build Coastguard Worker virtual void GetTime(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4382*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4383*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4384*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4385*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4386*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4387*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4388*4f2df630SAndroid Build Coastguard Worker GetTimeResponse callback); 4389*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetTimeSync(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 4390*4f2df630SAndroid Build Coastguard Worker const std::string& privacy_admin_handle_name, 4391*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4392*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4393*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 4394*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4395*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* time_info, 4396*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4397*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4398*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4399*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size_out, 4400*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& k, 4401*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& l, 4402*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& e, 4403*4f2df630SAndroid Build Coastguard Worker const UINT16& counter)> 4404*4f2df630SAndroid Build Coastguard Worker CommitResponse; 4405*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Commit( 4406*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 4407*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4408*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size, 4409*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& p1, 4410*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& s2, 4411*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_PARAMETER& y2, 4412*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4413*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4414*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Commit( 4415*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4416*4f2df630SAndroid Build Coastguard Worker UINT32* param_size_out, 4417*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* k, 4418*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* l, 4419*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* e, 4420*4f2df630SAndroid Build Coastguard Worker UINT16* counter, 4421*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4422*4f2df630SAndroid Build Coastguard Worker virtual void Commit(const TPMI_DH_OBJECT& sign_handle, 4423*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4424*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size, 4425*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& p1, 4426*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& s2, 4427*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_PARAMETER& y2, 4428*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4429*4f2df630SAndroid Build Coastguard Worker CommitResponse callback); 4430*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC CommitSync(const TPMI_DH_OBJECT& sign_handle, 4431*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 4432*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size, 4433*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& p1, 4434*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_DATA& s2, 4435*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_PARAMETER& y2, 4436*4f2df630SAndroid Build Coastguard Worker UINT32* param_size_out, 4437*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* k, 4438*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* l, 4439*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* e, 4440*4f2df630SAndroid Build Coastguard Worker UINT16* counter, 4441*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4442*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4443*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size_out, 4444*4f2df630SAndroid Build Coastguard Worker const TPM2B_ECC_POINT& q, 4445*4f2df630SAndroid Build Coastguard Worker const UINT16& counter)> 4446*4f2df630SAndroid Build Coastguard Worker EC_EphemeralResponse; 4447*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_EC_Ephemeral( 4448*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size, 4449*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_CURVE& curve_id, 4450*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4451*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4452*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_EC_Ephemeral( 4453*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4454*4f2df630SAndroid Build Coastguard Worker UINT32* param_size_out, 4455*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* q, 4456*4f2df630SAndroid Build Coastguard Worker UINT16* counter, 4457*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4458*4f2df630SAndroid Build Coastguard Worker virtual void EC_Ephemeral(const UINT32& param_size, 4459*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_CURVE& curve_id, 4460*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4461*4f2df630SAndroid Build Coastguard Worker EC_EphemeralResponse callback); 4462*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC EC_EphemeralSync( 4463*4f2df630SAndroid Build Coastguard Worker const UINT32& param_size, 4464*4f2df630SAndroid Build Coastguard Worker const TPMI_ECC_CURVE& curve_id, 4465*4f2df630SAndroid Build Coastguard Worker UINT32* param_size_out, 4466*4f2df630SAndroid Build Coastguard Worker TPM2B_ECC_POINT* q, 4467*4f2df630SAndroid Build Coastguard Worker UINT16* counter, 4468*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4469*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4470*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_VERIFIED& validation)> 4471*4f2df630SAndroid Build Coastguard Worker VerifySignatureResponse; 4472*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_VerifySignature( 4473*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 4474*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4475*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4476*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature, 4477*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4478*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4479*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_VerifySignature( 4480*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4481*4f2df630SAndroid Build Coastguard Worker TPMT_TK_VERIFIED* validation, 4482*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4483*4f2df630SAndroid Build Coastguard Worker virtual void VerifySignature(const TPMI_DH_OBJECT& key_handle, 4484*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4485*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4486*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature, 4487*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4488*4f2df630SAndroid Build Coastguard Worker VerifySignatureResponse callback); 4489*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC VerifySignatureSync( 4490*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 4491*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4492*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4493*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature, 4494*4f2df630SAndroid Build Coastguard Worker TPMT_TK_VERIFIED* validation, 4495*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4496*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4497*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 4498*4f2df630SAndroid Build Coastguard Worker SignResponse; 4499*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Sign( 4500*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 4501*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4502*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4503*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4504*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_HASHCHECK& validation, 4505*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4506*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4507*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Sign( 4508*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4509*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4510*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4511*4f2df630SAndroid Build Coastguard Worker virtual void Sign(const TPMI_DH_OBJECT& key_handle, 4512*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4513*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4514*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4515*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_HASHCHECK& validation, 4516*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4517*4f2df630SAndroid Build Coastguard Worker SignResponse callback); 4518*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SignSync(const TPMI_DH_OBJECT& key_handle, 4519*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 4520*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& digest, 4521*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 4522*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_HASHCHECK& validation, 4523*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 4524*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4525*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4526*4f2df630SAndroid Build Coastguard Worker SetCommandCodeAuditStatusResponse; 4527*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SetCommandCodeAuditStatus( 4528*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 4529*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 4530*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& audit_alg, 4531*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 4532*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 4533*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4534*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4535*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SetCommandCodeAuditStatus( 4536*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4537*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4538*4f2df630SAndroid Build Coastguard Worker virtual void SetCommandCodeAuditStatus( 4539*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 4540*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 4541*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& audit_alg, 4542*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 4543*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 4544*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4545*4f2df630SAndroid Build Coastguard Worker SetCommandCodeAuditStatusResponse callback); 4546*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SetCommandCodeAuditStatusSync( 4547*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 4548*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 4549*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& audit_alg, 4550*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 4551*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 4552*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4553*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PCR_ExtendResponse; 4554*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_Extend( 4555*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4556*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4557*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& digests, 4558*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4559*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4560*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_Extend( 4561*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4562*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4563*4f2df630SAndroid Build Coastguard Worker virtual void PCR_Extend(const TPMI_DH_PCR& pcr_handle, 4564*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4565*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& digests, 4566*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4567*4f2df630SAndroid Build Coastguard Worker PCR_ExtendResponse callback); 4568*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_ExtendSync(const TPMI_DH_PCR& pcr_handle, 4569*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4570*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& digests, 4571*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4572*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4573*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST_VALUES& digests)> 4574*4f2df630SAndroid Build Coastguard Worker PCR_EventResponse; 4575*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_Event( 4576*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4577*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4578*4f2df630SAndroid Build Coastguard Worker const TPM2B_EVENT& event_data, 4579*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4580*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4581*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_Event( 4582*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4583*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST_VALUES* digests, 4584*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4585*4f2df630SAndroid Build Coastguard Worker virtual void PCR_Event(const TPMI_DH_PCR& pcr_handle, 4586*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4587*4f2df630SAndroid Build Coastguard Worker const TPM2B_EVENT& event_data, 4588*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4589*4f2df630SAndroid Build Coastguard Worker PCR_EventResponse callback); 4590*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_EventSync(const TPMI_DH_PCR& pcr_handle, 4591*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4592*4f2df630SAndroid Build Coastguard Worker const TPM2B_EVENT& event_data, 4593*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST_VALUES* digests, 4594*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4595*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4596*4f2df630SAndroid Build Coastguard Worker const UINT32& pcr_update_counter, 4597*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcr_selection_out, 4598*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST& pcr_values)> 4599*4f2df630SAndroid Build Coastguard Worker PCR_ReadResponse; 4600*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_Read( 4601*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcr_selection_in, 4602*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4603*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4604*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_Read( 4605*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4606*4f2df630SAndroid Build Coastguard Worker UINT32* pcr_update_counter, 4607*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION* pcr_selection_out, 4608*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST* pcr_values, 4609*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4610*4f2df630SAndroid Build Coastguard Worker virtual void PCR_Read(const TPML_PCR_SELECTION& pcr_selection_in, 4611*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4612*4f2df630SAndroid Build Coastguard Worker PCR_ReadResponse callback); 4613*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_ReadSync(const TPML_PCR_SELECTION& pcr_selection_in, 4614*4f2df630SAndroid Build Coastguard Worker UINT32* pcr_update_counter, 4615*4f2df630SAndroid Build Coastguard Worker TPML_PCR_SELECTION* pcr_selection_out, 4616*4f2df630SAndroid Build Coastguard Worker TPML_DIGEST* pcr_values, 4617*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4618*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4619*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& allocation_success, 4620*4f2df630SAndroid Build Coastguard Worker const UINT32& max_pcr, 4621*4f2df630SAndroid Build Coastguard Worker const UINT32& size_needed, 4622*4f2df630SAndroid Build Coastguard Worker const UINT32& size_available)> 4623*4f2df630SAndroid Build Coastguard Worker PCR_AllocateResponse; 4624*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_Allocate( 4625*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 4626*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4627*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcr_allocation, 4628*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4629*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4630*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_Allocate( 4631*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4632*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO* allocation_success, 4633*4f2df630SAndroid Build Coastguard Worker UINT32* max_pcr, 4634*4f2df630SAndroid Build Coastguard Worker UINT32* size_needed, 4635*4f2df630SAndroid Build Coastguard Worker UINT32* size_available, 4636*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4637*4f2df630SAndroid Build Coastguard Worker virtual void PCR_Allocate(const TPMI_RH_PLATFORM& auth_handle, 4638*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4639*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcr_allocation, 4640*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4641*4f2df630SAndroid Build Coastguard Worker PCR_AllocateResponse callback); 4642*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_AllocateSync( 4643*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 4644*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4645*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcr_allocation, 4646*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO* allocation_success, 4647*4f2df630SAndroid Build Coastguard Worker UINT32* max_pcr, 4648*4f2df630SAndroid Build Coastguard Worker UINT32* size_needed, 4649*4f2df630SAndroid Build Coastguard Worker UINT32* size_available, 4650*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4651*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4652*4f2df630SAndroid Build Coastguard Worker PCR_SetAuthPolicyResponse; 4653*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_SetAuthPolicy( 4654*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 4655*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4656*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_num, 4657*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_num_name, 4658*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 4659*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& policy_digest, 4660*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4661*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4662*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_SetAuthPolicy( 4663*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4664*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4665*4f2df630SAndroid Build Coastguard Worker virtual void PCR_SetAuthPolicy(const TPMI_RH_PLATFORM& auth_handle, 4666*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4667*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_num, 4668*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_num_name, 4669*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 4670*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& policy_digest, 4671*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4672*4f2df630SAndroid Build Coastguard Worker PCR_SetAuthPolicyResponse callback); 4673*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_SetAuthPolicySync( 4674*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 4675*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4676*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_num, 4677*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_num_name, 4678*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 4679*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& policy_digest, 4680*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4681*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4682*4f2df630SAndroid Build Coastguard Worker PCR_SetAuthValueResponse; 4683*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_SetAuthValue( 4684*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4685*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4686*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth, 4687*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4688*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4689*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_SetAuthValue( 4690*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4691*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4692*4f2df630SAndroid Build Coastguard Worker virtual void PCR_SetAuthValue(const TPMI_DH_PCR& pcr_handle, 4693*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4694*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth, 4695*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4696*4f2df630SAndroid Build Coastguard Worker PCR_SetAuthValueResponse callback); 4697*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_SetAuthValueSync( 4698*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4699*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4700*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth, 4701*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4702*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PCR_ResetResponse; 4703*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PCR_Reset( 4704*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PCR& pcr_handle, 4705*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4706*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4707*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4708*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PCR_Reset( 4709*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4710*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4711*4f2df630SAndroid Build Coastguard Worker virtual void PCR_Reset(const TPMI_DH_PCR& pcr_handle, 4712*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4713*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4714*4f2df630SAndroid Build Coastguard Worker PCR_ResetResponse callback); 4715*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PCR_ResetSync(const TPMI_DH_PCR& pcr_handle, 4716*4f2df630SAndroid Build Coastguard Worker const std::string& pcr_handle_name, 4717*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4718*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4719*4f2df630SAndroid Build Coastguard Worker const TPM2B_TIMEOUT& timeout, 4720*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_AUTH& policy_ticket)> 4721*4f2df630SAndroid Build Coastguard Worker PolicySignedResponse; 4722*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicySigned( 4723*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& auth_object, 4724*4f2df630SAndroid Build Coastguard Worker const std::string& auth_object_name, 4725*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4726*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4727*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4728*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4729*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4730*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4731*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& auth, 4732*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4733*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4734*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicySigned( 4735*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4736*4f2df630SAndroid Build Coastguard Worker TPM2B_TIMEOUT* timeout, 4737*4f2df630SAndroid Build Coastguard Worker TPMT_TK_AUTH* policy_ticket, 4738*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4739*4f2df630SAndroid Build Coastguard Worker virtual void PolicySigned(const TPMI_DH_OBJECT& auth_object, 4740*4f2df630SAndroid Build Coastguard Worker const std::string& auth_object_name, 4741*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4742*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4743*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4744*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4745*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4746*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4747*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& auth, 4748*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4749*4f2df630SAndroid Build Coastguard Worker PolicySignedResponse callback); 4750*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicySignedSync( 4751*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& auth_object, 4752*4f2df630SAndroid Build Coastguard Worker const std::string& auth_object_name, 4753*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4754*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4755*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4756*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4757*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4758*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4759*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& auth, 4760*4f2df630SAndroid Build Coastguard Worker TPM2B_TIMEOUT* timeout, 4761*4f2df630SAndroid Build Coastguard Worker TPMT_TK_AUTH* policy_ticket, 4762*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4763*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 4764*4f2df630SAndroid Build Coastguard Worker const TPM2B_TIMEOUT& timeout, 4765*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_AUTH& policy_ticket)> 4766*4f2df630SAndroid Build Coastguard Worker PolicySecretResponse; 4767*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicySecret( 4768*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_ENTITY& auth_handle, 4769*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4770*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4771*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4772*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4773*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4774*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4775*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4776*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4777*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4778*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicySecret( 4779*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4780*4f2df630SAndroid Build Coastguard Worker TPM2B_TIMEOUT* timeout, 4781*4f2df630SAndroid Build Coastguard Worker TPMT_TK_AUTH* policy_ticket, 4782*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4783*4f2df630SAndroid Build Coastguard Worker virtual void PolicySecret(const TPMI_DH_ENTITY& auth_handle, 4784*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4785*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4786*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4787*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4788*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4789*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4790*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4791*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4792*4f2df630SAndroid Build Coastguard Worker PolicySecretResponse callback); 4793*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicySecretSync( 4794*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_ENTITY& auth_handle, 4795*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4796*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4797*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4798*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& nonce_tpm, 4799*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4800*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4801*4f2df630SAndroid Build Coastguard Worker const INT32& expiration, 4802*4f2df630SAndroid Build Coastguard Worker TPM2B_TIMEOUT* timeout, 4803*4f2df630SAndroid Build Coastguard Worker TPMT_TK_AUTH* policy_ticket, 4804*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4805*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyTicketResponse; 4806*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyTicket( 4807*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4808*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4809*4f2df630SAndroid Build Coastguard Worker const TPM2B_TIMEOUT& timeout, 4810*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4811*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4812*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& auth_name, 4813*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_AUTH& ticket, 4814*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4815*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4816*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyTicket( 4817*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4818*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4819*4f2df630SAndroid Build Coastguard Worker virtual void PolicyTicket(const TPMI_SH_POLICY& policy_session, 4820*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4821*4f2df630SAndroid Build Coastguard Worker const TPM2B_TIMEOUT& timeout, 4822*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4823*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4824*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& auth_name, 4825*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_AUTH& ticket, 4826*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4827*4f2df630SAndroid Build Coastguard Worker PolicyTicketResponse callback); 4828*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyTicketSync( 4829*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4830*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4831*4f2df630SAndroid Build Coastguard Worker const TPM2B_TIMEOUT& timeout, 4832*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 4833*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 4834*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& auth_name, 4835*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_AUTH& ticket, 4836*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4837*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyORResponse; 4838*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyOR( 4839*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4840*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4841*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST& p_hash_list, 4842*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4843*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4844*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyOR( 4845*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4846*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4847*4f2df630SAndroid Build Coastguard Worker virtual void PolicyOR(const TPMI_SH_POLICY& policy_session, 4848*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4849*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST& p_hash_list, 4850*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4851*4f2df630SAndroid Build Coastguard Worker PolicyORResponse callback); 4852*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyORSync(const TPMI_SH_POLICY& policy_session, 4853*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4854*4f2df630SAndroid Build Coastguard Worker const TPML_DIGEST& p_hash_list, 4855*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4856*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyPCRResponse; 4857*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyPCR( 4858*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4859*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4860*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& pcr_digest, 4861*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrs, 4862*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4863*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4864*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyPCR( 4865*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4866*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4867*4f2df630SAndroid Build Coastguard Worker virtual void PolicyPCR(const TPMI_SH_POLICY& policy_session, 4868*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4869*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& pcr_digest, 4870*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrs, 4871*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4872*4f2df630SAndroid Build Coastguard Worker PolicyPCRResponse callback); 4873*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyPCRSync(const TPMI_SH_POLICY& policy_session, 4874*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4875*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& pcr_digest, 4876*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& pcrs, 4877*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4878*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyLocalityResponse; 4879*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyLocality( 4880*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4881*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4882*4f2df630SAndroid Build Coastguard Worker const TPMA_LOCALITY& locality, 4883*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4884*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4885*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyLocality( 4886*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4887*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4888*4f2df630SAndroid Build Coastguard Worker virtual void PolicyLocality(const TPMI_SH_POLICY& policy_session, 4889*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4890*4f2df630SAndroid Build Coastguard Worker const TPMA_LOCALITY& locality, 4891*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4892*4f2df630SAndroid Build Coastguard Worker PolicyLocalityResponse callback); 4893*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyLocalitySync( 4894*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4895*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4896*4f2df630SAndroid Build Coastguard Worker const TPMA_LOCALITY& locality, 4897*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4898*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyNVResponse; 4899*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyNV( 4900*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 4901*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4902*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 4903*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 4904*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4905*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4906*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4907*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4908*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4909*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4910*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4911*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyNV( 4912*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4913*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4914*4f2df630SAndroid Build Coastguard Worker virtual void PolicyNV(const TPMI_RH_NV_AUTH& auth_handle, 4915*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4916*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 4917*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 4918*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4919*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4920*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4921*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4922*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4923*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4924*4f2df630SAndroid Build Coastguard Worker PolicyNVResponse callback); 4925*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyNVSync(const TPMI_RH_NV_AUTH& auth_handle, 4926*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 4927*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 4928*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 4929*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4930*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4931*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4932*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4933*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4934*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4935*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4936*4f2df630SAndroid Build Coastguard Worker PolicyCounterTimerResponse; 4937*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyCounterTimer( 4938*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4939*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4940*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4941*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4942*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4943*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4944*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4945*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyCounterTimer( 4946*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4947*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4948*4f2df630SAndroid Build Coastguard Worker virtual void PolicyCounterTimer(const TPMI_SH_POLICY& policy_session, 4949*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4950*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4951*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4952*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4953*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4954*4f2df630SAndroid Build Coastguard Worker PolicyCounterTimerResponse callback); 4955*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyCounterTimerSync( 4956*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4957*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4958*4f2df630SAndroid Build Coastguard Worker const TPM2B_OPERAND& operand_b, 4959*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 4960*4f2df630SAndroid Build Coastguard Worker const TPM_EO& operation, 4961*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4962*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4963*4f2df630SAndroid Build Coastguard Worker PolicyCommandCodeResponse; 4964*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyCommandCode( 4965*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4966*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4967*4f2df630SAndroid Build Coastguard Worker const TPM_CC& code, 4968*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4969*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4970*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyCommandCode( 4971*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4972*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4973*4f2df630SAndroid Build Coastguard Worker virtual void PolicyCommandCode(const TPMI_SH_POLICY& policy_session, 4974*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4975*4f2df630SAndroid Build Coastguard Worker const TPM_CC& code, 4976*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4977*4f2df630SAndroid Build Coastguard Worker PolicyCommandCodeResponse callback); 4978*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyCommandCodeSync( 4979*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4980*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4981*4f2df630SAndroid Build Coastguard Worker const TPM_CC& code, 4982*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4983*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 4984*4f2df630SAndroid Build Coastguard Worker PolicyPhysicalPresenceResponse; 4985*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyPhysicalPresence( 4986*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4987*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4988*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 4989*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4990*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyPhysicalPresence( 4991*4f2df630SAndroid Build Coastguard Worker const std::string& response, 4992*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 4993*4f2df630SAndroid Build Coastguard Worker virtual void PolicyPhysicalPresence( 4994*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 4995*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 4996*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 4997*4f2df630SAndroid Build Coastguard Worker PolicyPhysicalPresenceResponse callback); 4998*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyPhysicalPresenceSync( 4999*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5000*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5001*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5002*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyCpHashResponse; 5003*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyCpHash( 5004*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5005*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5006*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 5007*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5008*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5009*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyCpHash( 5010*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5011*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5012*4f2df630SAndroid Build Coastguard Worker virtual void PolicyCpHash(const TPMI_SH_POLICY& policy_session, 5013*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5014*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 5015*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5016*4f2df630SAndroid Build Coastguard Worker PolicyCpHashResponse callback); 5017*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyCpHashSync( 5018*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5019*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5020*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& cp_hash_a, 5021*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5022*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyNameHashResponse; 5023*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyNameHash( 5024*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5025*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5026*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& name_hash, 5027*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5028*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5029*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyNameHash( 5030*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5031*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5032*4f2df630SAndroid Build Coastguard Worker virtual void PolicyNameHash(const TPMI_SH_POLICY& policy_session, 5033*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5034*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& name_hash, 5035*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5036*4f2df630SAndroid Build Coastguard Worker PolicyNameHashResponse callback); 5037*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyNameHashSync( 5038*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5039*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5040*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& name_hash, 5041*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5042*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5043*4f2df630SAndroid Build Coastguard Worker PolicyDuplicationSelectResponse; 5044*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyDuplicationSelect( 5045*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5046*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5047*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 5048*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& new_parent_name, 5049*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& include_object, 5050*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5051*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5052*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyDuplicationSelect( 5053*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5054*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5055*4f2df630SAndroid Build Coastguard Worker virtual void PolicyDuplicationSelect( 5056*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5057*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5058*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 5059*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& new_parent_name, 5060*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& include_object, 5061*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5062*4f2df630SAndroid Build Coastguard Worker PolicyDuplicationSelectResponse callback); 5063*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyDuplicationSelectSync( 5064*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5065*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5066*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& object_name, 5067*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& new_parent_name, 5068*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& include_object, 5069*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5070*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5071*4f2df630SAndroid Build Coastguard Worker PolicyAuthorizeResponse; 5072*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyAuthorize( 5073*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5074*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5075*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& approved_policy, 5076*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 5077*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& key_sign, 5078*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_VERIFIED& check_ticket, 5079*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5080*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5081*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyAuthorize( 5082*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5083*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5084*4f2df630SAndroid Build Coastguard Worker virtual void PolicyAuthorize(const TPMI_SH_POLICY& policy_session, 5085*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5086*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& approved_policy, 5087*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 5088*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& key_sign, 5089*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_VERIFIED& check_ticket, 5090*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5091*4f2df630SAndroid Build Coastguard Worker PolicyAuthorizeResponse callback); 5092*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyAuthorizeSync( 5093*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5094*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5095*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& approved_policy, 5096*4f2df630SAndroid Build Coastguard Worker const TPM2B_NONCE& policy_ref, 5097*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& key_sign, 5098*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_VERIFIED& check_ticket, 5099*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5100*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5101*4f2df630SAndroid Build Coastguard Worker PolicyAuthValueResponse; 5102*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyAuthValue( 5103*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5104*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5105*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5106*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5107*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyAuthValue( 5108*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5109*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5110*4f2df630SAndroid Build Coastguard Worker virtual void PolicyAuthValue(const TPMI_SH_POLICY& policy_session, 5111*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5112*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5113*4f2df630SAndroid Build Coastguard Worker PolicyAuthValueResponse callback); 5114*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyAuthValueSync( 5115*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5116*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5117*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5118*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PolicyPasswordResponse; 5119*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyPassword( 5120*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5121*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5122*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5123*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5124*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyPassword( 5125*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5126*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5127*4f2df630SAndroid Build Coastguard Worker virtual void PolicyPassword(const TPMI_SH_POLICY& policy_session, 5128*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5129*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5130*4f2df630SAndroid Build Coastguard Worker PolicyPasswordResponse callback); 5131*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyPasswordSync( 5132*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5133*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5134*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5135*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5136*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& policy_digest)> 5137*4f2df630SAndroid Build Coastguard Worker PolicyGetDigestResponse; 5138*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyGetDigest( 5139*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5140*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5141*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5142*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5143*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyGetDigest( 5144*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5145*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* policy_digest, 5146*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5147*4f2df630SAndroid Build Coastguard Worker virtual void PolicyGetDigest(const TPMI_SH_POLICY& policy_session, 5148*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5149*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5150*4f2df630SAndroid Build Coastguard Worker PolicyGetDigestResponse callback); 5151*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyGetDigestSync( 5152*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5153*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5154*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* policy_digest, 5155*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5156*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5157*4f2df630SAndroid Build Coastguard Worker PolicyNvWrittenResponse; 5158*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyNvWritten( 5159*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5160*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5161*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& written_set, 5162*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5163*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5164*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyNvWritten( 5165*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5166*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5167*4f2df630SAndroid Build Coastguard Worker virtual void PolicyNvWritten(const TPMI_SH_POLICY& policy_session, 5168*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5169*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& written_set, 5170*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5171*4f2df630SAndroid Build Coastguard Worker PolicyNvWrittenResponse callback); 5172*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PolicyNvWrittenSync( 5173*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 5174*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 5175*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& written_set, 5176*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5177*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5178*4f2df630SAndroid Build Coastguard Worker const TPM_HANDLE& object_handle, 5179*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& out_public, 5180*4f2df630SAndroid Build Coastguard Worker const TPM2B_CREATION_DATA& creation_data, 5181*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& creation_hash, 5182*4f2df630SAndroid Build Coastguard Worker const TPMT_TK_CREATION& creation_ticket, 5183*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& name)> 5184*4f2df630SAndroid Build Coastguard Worker CreatePrimaryResponse; 5185*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_CreatePrimary( 5186*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& primary_handle, 5187*4f2df630SAndroid Build Coastguard Worker const std::string& primary_handle_name, 5188*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 5189*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 5190*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 5191*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 5192*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5193*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5194*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_CreatePrimary( 5195*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5196*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 5197*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 5198*4f2df630SAndroid Build Coastguard Worker TPM2B_CREATION_DATA* creation_data, 5199*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* creation_hash, 5200*4f2df630SAndroid Build Coastguard Worker TPMT_TK_CREATION* creation_ticket, 5201*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 5202*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5203*4f2df630SAndroid Build Coastguard Worker virtual void CreatePrimary(const TPMI_RH_HIERARCHY& primary_handle, 5204*4f2df630SAndroid Build Coastguard Worker const std::string& primary_handle_name, 5205*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 5206*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 5207*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 5208*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 5209*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5210*4f2df630SAndroid Build Coastguard Worker CreatePrimaryResponse callback); 5211*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC CreatePrimarySync( 5212*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& primary_handle, 5213*4f2df630SAndroid Build Coastguard Worker const std::string& primary_handle_name, 5214*4f2df630SAndroid Build Coastguard Worker const TPM2B_SENSITIVE_CREATE& in_sensitive, 5215*4f2df630SAndroid Build Coastguard Worker const TPM2B_PUBLIC& in_public, 5216*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& outside_info, 5217*4f2df630SAndroid Build Coastguard Worker const TPML_PCR_SELECTION& creation_pcr, 5218*4f2df630SAndroid Build Coastguard Worker TPM_HANDLE* object_handle, 5219*4f2df630SAndroid Build Coastguard Worker TPM2B_PUBLIC* out_public, 5220*4f2df630SAndroid Build Coastguard Worker TPM2B_CREATION_DATA* creation_data, 5221*4f2df630SAndroid Build Coastguard Worker TPM2B_DIGEST* creation_hash, 5222*4f2df630SAndroid Build Coastguard Worker TPMT_TK_CREATION* creation_ticket, 5223*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* name, 5224*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5225*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5226*4f2df630SAndroid Build Coastguard Worker HierarchyControlResponse; 5227*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_HierarchyControl( 5228*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& auth_handle, 5229*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5230*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENABLES& enable, 5231*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& state, 5232*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5233*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5234*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_HierarchyControl( 5235*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5236*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5237*4f2df630SAndroid Build Coastguard Worker virtual void HierarchyControl(const TPMI_RH_HIERARCHY& auth_handle, 5238*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5239*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENABLES& enable, 5240*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& state, 5241*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5242*4f2df630SAndroid Build Coastguard Worker HierarchyControlResponse callback); 5243*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HierarchyControlSync( 5244*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& auth_handle, 5245*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5246*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_ENABLES& enable, 5247*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& state, 5248*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5249*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5250*4f2df630SAndroid Build Coastguard Worker SetPrimaryPolicyResponse; 5251*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SetPrimaryPolicy( 5252*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& auth_handle, 5253*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5254*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 5255*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 5256*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5257*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5258*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SetPrimaryPolicy( 5259*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5260*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5261*4f2df630SAndroid Build Coastguard Worker virtual void SetPrimaryPolicy(const TPMI_RH_HIERARCHY& auth_handle, 5262*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5263*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 5264*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 5265*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5266*4f2df630SAndroid Build Coastguard Worker SetPrimaryPolicyResponse callback); 5267*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SetPrimaryPolicySync( 5268*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY& auth_handle, 5269*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5270*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& auth_policy, 5271*4f2df630SAndroid Build Coastguard Worker const TPMI_ALG_HASH& hash_alg, 5272*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5273*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ChangePPSResponse; 5274*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ChangePPS( 5275*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 5276*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5277*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5278*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5279*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ChangePPS( 5280*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5281*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5282*4f2df630SAndroid Build Coastguard Worker virtual void ChangePPS(const TPMI_RH_PLATFORM& auth_handle, 5283*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5284*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5285*4f2df630SAndroid Build Coastguard Worker ChangePPSResponse callback); 5286*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ChangePPSSync(const TPMI_RH_PLATFORM& auth_handle, 5287*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5288*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5289*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ChangeEPSResponse; 5290*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ChangeEPS( 5291*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 5292*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5293*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5294*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5295*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ChangeEPS( 5296*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5297*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5298*4f2df630SAndroid Build Coastguard Worker virtual void ChangeEPS(const TPMI_RH_PLATFORM& auth_handle, 5299*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5300*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5301*4f2df630SAndroid Build Coastguard Worker ChangeEPSResponse callback); 5302*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ChangeEPSSync(const TPMI_RH_PLATFORM& auth_handle, 5303*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5304*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5305*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ClearResponse; 5306*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_Clear( 5307*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_CLEAR& auth_handle, 5308*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5309*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5310*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5311*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_Clear( 5312*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5313*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5314*4f2df630SAndroid Build Coastguard Worker virtual void Clear(const TPMI_RH_CLEAR& auth_handle, 5315*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5316*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5317*4f2df630SAndroid Build Coastguard Worker ClearResponse callback); 5318*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ClearSync(const TPMI_RH_CLEAR& auth_handle, 5319*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5320*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5321*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ClearControlResponse; 5322*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ClearControl( 5323*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_CLEAR& auth, 5324*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5325*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& disable, 5326*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5327*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5328*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ClearControl( 5329*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5330*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5331*4f2df630SAndroid Build Coastguard Worker virtual void ClearControl(const TPMI_RH_CLEAR& auth, 5332*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5333*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& disable, 5334*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5335*4f2df630SAndroid Build Coastguard Worker ClearControlResponse callback); 5336*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ClearControlSync( 5337*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_CLEAR& auth, 5338*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5339*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& disable, 5340*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5341*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5342*4f2df630SAndroid Build Coastguard Worker HierarchyChangeAuthResponse; 5343*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_HierarchyChangeAuth( 5344*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY_AUTH& auth_handle, 5345*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5346*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 5347*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5348*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5349*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_HierarchyChangeAuth( 5350*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5351*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5352*4f2df630SAndroid Build Coastguard Worker virtual void HierarchyChangeAuth( 5353*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY_AUTH& auth_handle, 5354*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5355*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 5356*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5357*4f2df630SAndroid Build Coastguard Worker HierarchyChangeAuthResponse callback); 5358*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC HierarchyChangeAuthSync( 5359*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_HIERARCHY_AUTH& auth_handle, 5360*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5361*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 5362*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5363*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5364*4f2df630SAndroid Build Coastguard Worker DictionaryAttackLockResetResponse; 5365*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_DictionaryAttackLockReset( 5366*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5367*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5368*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5369*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5370*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_DictionaryAttackLockReset( 5371*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5372*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5373*4f2df630SAndroid Build Coastguard Worker virtual void DictionaryAttackLockReset( 5374*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5375*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5376*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5377*4f2df630SAndroid Build Coastguard Worker DictionaryAttackLockResetResponse callback); 5378*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC DictionaryAttackLockResetSync( 5379*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5380*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5381*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5382*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5383*4f2df630SAndroid Build Coastguard Worker DictionaryAttackParametersResponse; 5384*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_DictionaryAttackParameters( 5385*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5386*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5387*4f2df630SAndroid Build Coastguard Worker const UINT32& new_max_tries, 5388*4f2df630SAndroid Build Coastguard Worker const UINT32& new_recovery_time, 5389*4f2df630SAndroid Build Coastguard Worker const UINT32& lockout_recovery, 5390*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5391*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5392*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_DictionaryAttackParameters( 5393*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5394*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5395*4f2df630SAndroid Build Coastguard Worker virtual void DictionaryAttackParameters( 5396*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5397*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5398*4f2df630SAndroid Build Coastguard Worker const UINT32& new_max_tries, 5399*4f2df630SAndroid Build Coastguard Worker const UINT32& new_recovery_time, 5400*4f2df630SAndroid Build Coastguard Worker const UINT32& lockout_recovery, 5401*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5402*4f2df630SAndroid Build Coastguard Worker DictionaryAttackParametersResponse callback); 5403*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC DictionaryAttackParametersSync( 5404*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_LOCKOUT& lock_handle, 5405*4f2df630SAndroid Build Coastguard Worker const std::string& lock_handle_name, 5406*4f2df630SAndroid Build Coastguard Worker const UINT32& new_max_tries, 5407*4f2df630SAndroid Build Coastguard Worker const UINT32& new_recovery_time, 5408*4f2df630SAndroid Build Coastguard Worker const UINT32& lockout_recovery, 5409*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5410*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> PP_CommandsResponse; 5411*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PP_Commands( 5412*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth, 5413*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5414*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 5415*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 5416*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5417*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5418*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PP_Commands( 5419*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5420*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5421*4f2df630SAndroid Build Coastguard Worker virtual void PP_Commands(const TPMI_RH_PLATFORM& auth, 5422*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5423*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 5424*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 5425*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5426*4f2df630SAndroid Build Coastguard Worker PP_CommandsResponse callback); 5427*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC PP_CommandsSync(const TPMI_RH_PLATFORM& auth, 5428*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5429*4f2df630SAndroid Build Coastguard Worker const TPML_CC& set_list, 5430*4f2df630SAndroid Build Coastguard Worker const TPML_CC& clear_list, 5431*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5432*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5433*4f2df630SAndroid Build Coastguard Worker SetAlgorithmSetResponse; 5434*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_SetAlgorithmSet( 5435*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 5436*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5437*4f2df630SAndroid Build Coastguard Worker const UINT32& algorithm_set, 5438*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5439*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5440*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_SetAlgorithmSet( 5441*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5442*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5443*4f2df630SAndroid Build Coastguard Worker virtual void SetAlgorithmSet(const TPMI_RH_PLATFORM& auth_handle, 5444*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5445*4f2df630SAndroid Build Coastguard Worker const UINT32& algorithm_set, 5446*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5447*4f2df630SAndroid Build Coastguard Worker SetAlgorithmSetResponse callback); 5448*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC SetAlgorithmSetSync( 5449*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& auth_handle, 5450*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5451*4f2df630SAndroid Build Coastguard Worker const UINT32& algorithm_set, 5452*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5453*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5454*4f2df630SAndroid Build Coastguard Worker FieldUpgradeStartResponse; 5455*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_FieldUpgradeStart( 5456*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& authorization, 5457*4f2df630SAndroid Build Coastguard Worker const std::string& authorization_name, 5458*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 5459*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 5460*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& fu_digest, 5461*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& manifest_signature, 5462*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5463*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5464*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_FieldUpgradeStart( 5465*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5466*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5467*4f2df630SAndroid Build Coastguard Worker virtual void FieldUpgradeStart(const TPMI_RH_PLATFORM& authorization, 5468*4f2df630SAndroid Build Coastguard Worker const std::string& authorization_name, 5469*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 5470*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 5471*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& fu_digest, 5472*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& manifest_signature, 5473*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5474*4f2df630SAndroid Build Coastguard Worker FieldUpgradeStartResponse callback); 5475*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC FieldUpgradeStartSync( 5476*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& authorization, 5477*4f2df630SAndroid Build Coastguard Worker const std::string& authorization_name, 5478*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& key_handle, 5479*4f2df630SAndroid Build Coastguard Worker const std::string& key_handle_name, 5480*4f2df630SAndroid Build Coastguard Worker const TPM2B_DIGEST& fu_digest, 5481*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& manifest_signature, 5482*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5483*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5484*4f2df630SAndroid Build Coastguard Worker const TPMT_HA& next_digest, 5485*4f2df630SAndroid Build Coastguard Worker const TPMT_HA& first_digest)> 5486*4f2df630SAndroid Build Coastguard Worker FieldUpgradeDataResponse; 5487*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_FieldUpgradeData( 5488*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& fu_data, 5489*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5490*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5491*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_FieldUpgradeData( 5492*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5493*4f2df630SAndroid Build Coastguard Worker TPMT_HA* next_digest, 5494*4f2df630SAndroid Build Coastguard Worker TPMT_HA* first_digest, 5495*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5496*4f2df630SAndroid Build Coastguard Worker virtual void FieldUpgradeData(const TPM2B_MAX_BUFFER& fu_data, 5497*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5498*4f2df630SAndroid Build Coastguard Worker FieldUpgradeDataResponse callback); 5499*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC FieldUpgradeDataSync( 5500*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& fu_data, 5501*4f2df630SAndroid Build Coastguard Worker TPMT_HA* next_digest, 5502*4f2df630SAndroid Build Coastguard Worker TPMT_HA* first_digest, 5503*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5504*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5505*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_BUFFER& fu_data)> 5506*4f2df630SAndroid Build Coastguard Worker FirmwareReadResponse; 5507*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_FirmwareRead( 5508*4f2df630SAndroid Build Coastguard Worker const UINT32& sequence_number, 5509*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5510*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5511*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_FirmwareRead( 5512*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5513*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* fu_data, 5514*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5515*4f2df630SAndroid Build Coastguard Worker virtual void FirmwareRead(const UINT32& sequence_number, 5516*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5517*4f2df630SAndroid Build Coastguard Worker FirmwareReadResponse callback); 5518*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC FirmwareReadSync( 5519*4f2df630SAndroid Build Coastguard Worker const UINT32& sequence_number, 5520*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_BUFFER* fu_data, 5521*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5522*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5523*4f2df630SAndroid Build Coastguard Worker const TPMS_CONTEXT& context)> 5524*4f2df630SAndroid Build Coastguard Worker ContextSaveResponse; 5525*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ContextSave( 5526*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_CONTEXT& save_handle, 5527*4f2df630SAndroid Build Coastguard Worker const std::string& save_handle_name, 5528*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5529*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5530*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ContextSave( 5531*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5532*4f2df630SAndroid Build Coastguard Worker TPMS_CONTEXT* context, 5533*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5534*4f2df630SAndroid Build Coastguard Worker virtual void ContextSave(const TPMI_DH_CONTEXT& save_handle, 5535*4f2df630SAndroid Build Coastguard Worker const std::string& save_handle_name, 5536*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5537*4f2df630SAndroid Build Coastguard Worker ContextSaveResponse callback); 5538*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ContextSaveSync(const TPMI_DH_CONTEXT& save_handle, 5539*4f2df630SAndroid Build Coastguard Worker const std::string& save_handle_name, 5540*4f2df630SAndroid Build Coastguard Worker TPMS_CONTEXT* context, 5541*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5542*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5543*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_CONTEXT& loaded_handle)> 5544*4f2df630SAndroid Build Coastguard Worker ContextLoadResponse; 5545*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ContextLoad( 5546*4f2df630SAndroid Build Coastguard Worker const TPMS_CONTEXT& context, 5547*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5548*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5549*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ContextLoad( 5550*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5551*4f2df630SAndroid Build Coastguard Worker TPMI_DH_CONTEXT* loaded_handle, 5552*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5553*4f2df630SAndroid Build Coastguard Worker virtual void ContextLoad(const TPMS_CONTEXT& context, 5554*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5555*4f2df630SAndroid Build Coastguard Worker ContextLoadResponse callback); 5556*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ContextLoadSync(const TPMS_CONTEXT& context, 5557*4f2df630SAndroid Build Coastguard Worker TPMI_DH_CONTEXT* loaded_handle, 5558*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5559*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> FlushContextResponse; 5560*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_FlushContext( 5561*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_CONTEXT& flush_handle, 5562*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5563*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5564*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_FlushContext( 5565*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5566*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5567*4f2df630SAndroid Build Coastguard Worker virtual void FlushContext(const TPMI_DH_CONTEXT& flush_handle, 5568*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5569*4f2df630SAndroid Build Coastguard Worker FlushContextResponse callback); 5570*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC FlushContextSync( 5571*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_CONTEXT& flush_handle, 5572*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5573*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> EvictControlResponse; 5574*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_EvictControl( 5575*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 5576*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5577*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 5578*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 5579*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PERSISTENT& persistent_handle, 5580*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5581*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5582*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_EvictControl( 5583*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5584*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5585*4f2df630SAndroid Build Coastguard Worker virtual void EvictControl(const TPMI_RH_PROVISION& auth, 5586*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5587*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 5588*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 5589*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PERSISTENT& persistent_handle, 5590*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5591*4f2df630SAndroid Build Coastguard Worker EvictControlResponse callback); 5592*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC EvictControlSync( 5593*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 5594*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5595*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& object_handle, 5596*4f2df630SAndroid Build Coastguard Worker const std::string& object_handle_name, 5597*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_PERSISTENT& persistent_handle, 5598*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5599*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5600*4f2df630SAndroid Build Coastguard Worker const TPMS_TIME_INFO& current_time)> 5601*4f2df630SAndroid Build Coastguard Worker ReadClockResponse; 5602*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ReadClock( 5603*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5604*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5605*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ReadClock( 5606*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5607*4f2df630SAndroid Build Coastguard Worker TPMS_TIME_INFO* current_time, 5608*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5609*4f2df630SAndroid Build Coastguard Worker virtual void ReadClock(AuthorizationDelegate* authorization_delegate, 5610*4f2df630SAndroid Build Coastguard Worker ReadClockResponse callback); 5611*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ReadClockSync(TPMS_TIME_INFO* current_time, 5612*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5613*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> ClockSetResponse; 5614*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ClockSet( 5615*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 5616*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5617*4f2df630SAndroid Build Coastguard Worker const UINT64& new_time, 5618*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5619*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5620*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ClockSet( 5621*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5622*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5623*4f2df630SAndroid Build Coastguard Worker virtual void ClockSet(const TPMI_RH_PROVISION& auth, 5624*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5625*4f2df630SAndroid Build Coastguard Worker const UINT64& new_time, 5626*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5627*4f2df630SAndroid Build Coastguard Worker ClockSetResponse callback); 5628*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ClockSetSync(const TPMI_RH_PROVISION& auth, 5629*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5630*4f2df630SAndroid Build Coastguard Worker const UINT64& new_time, 5631*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5632*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5633*4f2df630SAndroid Build Coastguard Worker ClockRateAdjustResponse; 5634*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_ClockRateAdjust( 5635*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 5636*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5637*4f2df630SAndroid Build Coastguard Worker const TPM_CLOCK_ADJUST& rate_adjust, 5638*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5639*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5640*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_ClockRateAdjust( 5641*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5642*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5643*4f2df630SAndroid Build Coastguard Worker virtual void ClockRateAdjust(const TPMI_RH_PROVISION& auth, 5644*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5645*4f2df630SAndroid Build Coastguard Worker const TPM_CLOCK_ADJUST& rate_adjust, 5646*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5647*4f2df630SAndroid Build Coastguard Worker ClockRateAdjustResponse callback); 5648*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC ClockRateAdjustSync( 5649*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth, 5650*4f2df630SAndroid Build Coastguard Worker const std::string& auth_name, 5651*4f2df630SAndroid Build Coastguard Worker const TPM_CLOCK_ADJUST& rate_adjust, 5652*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5653*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5654*4f2df630SAndroid Build Coastguard Worker const TPMI_YES_NO& more_data, 5655*4f2df630SAndroid Build Coastguard Worker const TPMS_CAPABILITY_DATA& capability_data)> 5656*4f2df630SAndroid Build Coastguard Worker GetCapabilityResponse; 5657*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_GetCapability( 5658*4f2df630SAndroid Build Coastguard Worker const TPM_CAP& capability, 5659*4f2df630SAndroid Build Coastguard Worker const UINT32& property, 5660*4f2df630SAndroid Build Coastguard Worker const UINT32& property_count, 5661*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5662*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5663*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_GetCapability( 5664*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5665*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO* more_data, 5666*4f2df630SAndroid Build Coastguard Worker TPMS_CAPABILITY_DATA* capability_data, 5667*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5668*4f2df630SAndroid Build Coastguard Worker virtual void GetCapability(const TPM_CAP& capability, 5669*4f2df630SAndroid Build Coastguard Worker const UINT32& property, 5670*4f2df630SAndroid Build Coastguard Worker const UINT32& property_count, 5671*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5672*4f2df630SAndroid Build Coastguard Worker GetCapabilityResponse callback); 5673*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC GetCapabilitySync( 5674*4f2df630SAndroid Build Coastguard Worker const TPM_CAP& capability, 5675*4f2df630SAndroid Build Coastguard Worker const UINT32& property, 5676*4f2df630SAndroid Build Coastguard Worker const UINT32& property_count, 5677*4f2df630SAndroid Build Coastguard Worker TPMI_YES_NO* more_data, 5678*4f2df630SAndroid Build Coastguard Worker TPMS_CAPABILITY_DATA* capability_data, 5679*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5680*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> TestParmsResponse; 5681*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_TestParms( 5682*4f2df630SAndroid Build Coastguard Worker const TPMT_PUBLIC_PARMS& parameters, 5683*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5684*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5685*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_TestParms( 5686*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5687*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5688*4f2df630SAndroid Build Coastguard Worker virtual void TestParms(const TPMT_PUBLIC_PARMS& parameters, 5689*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5690*4f2df630SAndroid Build Coastguard Worker TestParmsResponse callback); 5691*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC TestParmsSync(const TPMT_PUBLIC_PARMS& parameters, 5692*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5693*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_DefineSpaceResponse; 5694*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_DefineSpace( 5695*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5696*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5697*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 5698*4f2df630SAndroid Build Coastguard Worker const TPM2B_NV_PUBLIC& public_info, 5699*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5700*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5701*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_DefineSpace( 5702*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5703*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5704*4f2df630SAndroid Build Coastguard Worker virtual void NV_DefineSpace(const TPMI_RH_PROVISION& auth_handle, 5705*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5706*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 5707*4f2df630SAndroid Build Coastguard Worker const TPM2B_NV_PUBLIC& public_info, 5708*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5709*4f2df630SAndroid Build Coastguard Worker NV_DefineSpaceResponse callback); 5710*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_DefineSpaceSync( 5711*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5712*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5713*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& auth, 5714*4f2df630SAndroid Build Coastguard Worker const TPM2B_NV_PUBLIC& public_info, 5715*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5716*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5717*4f2df630SAndroid Build Coastguard Worker NV_UndefineSpaceResponse; 5718*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_UndefineSpace( 5719*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5720*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5721*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5722*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5723*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5724*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5725*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_UndefineSpace( 5726*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5727*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5728*4f2df630SAndroid Build Coastguard Worker virtual void NV_UndefineSpace(const TPMI_RH_PROVISION& auth_handle, 5729*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5730*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5731*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5732*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5733*4f2df630SAndroid Build Coastguard Worker NV_UndefineSpaceResponse callback); 5734*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_UndefineSpaceSync( 5735*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5736*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5737*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5738*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5739*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5740*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5741*4f2df630SAndroid Build Coastguard Worker NV_UndefineSpaceSpecialResponse; 5742*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_UndefineSpaceSpecial( 5743*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5744*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5745*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& platform, 5746*4f2df630SAndroid Build Coastguard Worker const std::string& platform_name, 5747*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5748*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5749*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_UndefineSpaceSpecial( 5750*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5751*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5752*4f2df630SAndroid Build Coastguard Worker virtual void NV_UndefineSpaceSpecial( 5753*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5754*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5755*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& platform, 5756*4f2df630SAndroid Build Coastguard Worker const std::string& platform_name, 5757*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5758*4f2df630SAndroid Build Coastguard Worker NV_UndefineSpaceSpecialResponse callback); 5759*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_UndefineSpaceSpecialSync( 5760*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5761*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5762*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PLATFORM& platform, 5763*4f2df630SAndroid Build Coastguard Worker const std::string& platform_name, 5764*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5765*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5766*4f2df630SAndroid Build Coastguard Worker const TPM2B_NV_PUBLIC& nv_public, 5767*4f2df630SAndroid Build Coastguard Worker const TPM2B_NAME& nv_name)> 5768*4f2df630SAndroid Build Coastguard Worker NV_ReadPublicResponse; 5769*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_ReadPublic( 5770*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5771*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5772*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5773*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5774*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_ReadPublic( 5775*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5776*4f2df630SAndroid Build Coastguard Worker TPM2B_NV_PUBLIC* nv_public, 5777*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* nv_name, 5778*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5779*4f2df630SAndroid Build Coastguard Worker virtual void NV_ReadPublic(const TPMI_RH_NV_INDEX& nv_index, 5780*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5781*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5782*4f2df630SAndroid Build Coastguard Worker NV_ReadPublicResponse callback); 5783*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_ReadPublicSync( 5784*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5785*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5786*4f2df630SAndroid Build Coastguard Worker TPM2B_NV_PUBLIC* nv_public, 5787*4f2df630SAndroid Build Coastguard Worker TPM2B_NAME* nv_name, 5788*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5789*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_WriteResponse; 5790*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_Write( 5791*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5792*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5793*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5794*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5795*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5796*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5797*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5798*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5799*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_Write( 5800*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5801*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5802*4f2df630SAndroid Build Coastguard Worker virtual void NV_Write(const TPMI_RH_NV_AUTH& auth_handle, 5803*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5804*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5805*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5806*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5807*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5808*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5809*4f2df630SAndroid Build Coastguard Worker NV_WriteResponse callback); 5810*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_WriteSync(const TPMI_RH_NV_AUTH& auth_handle, 5811*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5812*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5813*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5814*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5815*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5816*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5817*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_IncrementResponse; 5818*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_Increment( 5819*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5820*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5821*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5822*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5823*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5824*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5825*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_Increment( 5826*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5827*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5828*4f2df630SAndroid Build Coastguard Worker virtual void NV_Increment(const TPMI_RH_NV_AUTH& auth_handle, 5829*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5830*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5831*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5832*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5833*4f2df630SAndroid Build Coastguard Worker NV_IncrementResponse callback); 5834*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_IncrementSync( 5835*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5836*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5837*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5838*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5839*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5840*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_ExtendResponse; 5841*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_Extend( 5842*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5843*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5844*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5845*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5846*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5847*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5848*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5849*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_Extend( 5850*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5851*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5852*4f2df630SAndroid Build Coastguard Worker virtual void NV_Extend(const TPMI_RH_NV_AUTH& auth_handle, 5853*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5854*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5855*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5856*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5857*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5858*4f2df630SAndroid Build Coastguard Worker NV_ExtendResponse callback); 5859*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_ExtendSync(const TPMI_RH_NV_AUTH& auth_handle, 5860*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5861*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5862*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5863*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data, 5864*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5865*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_SetBitsResponse; 5866*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_SetBits( 5867*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5868*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5869*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5870*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5871*4f2df630SAndroid Build Coastguard Worker const UINT64& bits, 5872*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5873*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5874*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_SetBits( 5875*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5876*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5877*4f2df630SAndroid Build Coastguard Worker virtual void NV_SetBits(const TPMI_RH_NV_AUTH& auth_handle, 5878*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5879*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5880*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5881*4f2df630SAndroid Build Coastguard Worker const UINT64& bits, 5882*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5883*4f2df630SAndroid Build Coastguard Worker NV_SetBitsResponse callback); 5884*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_SetBitsSync(const TPMI_RH_NV_AUTH& auth_handle, 5885*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5886*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5887*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5888*4f2df630SAndroid Build Coastguard Worker const UINT64& bits, 5889*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5890*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_WriteLockResponse; 5891*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_WriteLock( 5892*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5893*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5894*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5895*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5896*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5897*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5898*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_WriteLock( 5899*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5900*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5901*4f2df630SAndroid Build Coastguard Worker virtual void NV_WriteLock(const TPMI_RH_NV_AUTH& auth_handle, 5902*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5903*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5904*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5905*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5906*4f2df630SAndroid Build Coastguard Worker NV_WriteLockResponse callback); 5907*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_WriteLockSync( 5908*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5909*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5910*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5911*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5912*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5913*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 5914*4f2df630SAndroid Build Coastguard Worker NV_GlobalWriteLockResponse; 5915*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_GlobalWriteLock( 5916*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5917*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5918*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5919*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5920*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_GlobalWriteLock( 5921*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5922*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5923*4f2df630SAndroid Build Coastguard Worker virtual void NV_GlobalWriteLock(const TPMI_RH_PROVISION& auth_handle, 5924*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5925*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5926*4f2df630SAndroid Build Coastguard Worker NV_GlobalWriteLockResponse callback); 5927*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_GlobalWriteLockSync( 5928*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_PROVISION& auth_handle, 5929*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5930*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5931*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 5932*4f2df630SAndroid Build Coastguard Worker const TPM2B_MAX_NV_BUFFER& data)> 5933*4f2df630SAndroid Build Coastguard Worker NV_ReadResponse; 5934*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_Read( 5935*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5936*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5937*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5938*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5939*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 5940*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5941*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5942*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5943*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_Read( 5944*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5945*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_NV_BUFFER* data, 5946*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5947*4f2df630SAndroid Build Coastguard Worker virtual void NV_Read(const TPMI_RH_NV_AUTH& auth_handle, 5948*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5949*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5950*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5951*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 5952*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5953*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5954*4f2df630SAndroid Build Coastguard Worker NV_ReadResponse callback); 5955*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_ReadSync(const TPMI_RH_NV_AUTH& auth_handle, 5956*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5957*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5958*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5959*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 5960*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 5961*4f2df630SAndroid Build Coastguard Worker TPM2B_MAX_NV_BUFFER* data, 5962*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5963*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_ReadLockResponse; 5964*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_ReadLock( 5965*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 5966*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5967*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5968*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5969*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5970*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5971*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_ReadLock( 5972*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5973*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5974*4f2df630SAndroid Build Coastguard Worker virtual void NV_ReadLock(const TPMI_RH_NV_AUTH& auth_handle, 5975*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5976*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5977*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5978*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5979*4f2df630SAndroid Build Coastguard Worker NV_ReadLockResponse callback); 5980*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_ReadLockSync(const TPMI_RH_NV_AUTH& auth_handle, 5981*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 5982*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5983*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5984*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5985*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> NV_ChangeAuthResponse; 5986*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_ChangeAuth( 5987*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 5988*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5989*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 5990*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 5991*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5992*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_ChangeAuth( 5993*4f2df630SAndroid Build Coastguard Worker const std::string& response, 5994*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 5995*4f2df630SAndroid Build Coastguard Worker virtual void NV_ChangeAuth(const TPMI_RH_NV_INDEX& nv_index, 5996*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 5997*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 5998*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 5999*4f2df630SAndroid Build Coastguard Worker NV_ChangeAuthResponse callback); 6000*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_ChangeAuthSync( 6001*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 6002*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 6003*4f2df630SAndroid Build Coastguard Worker const TPM2B_AUTH& new_auth, 6004*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6005*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code, 6006*4f2df630SAndroid Build Coastguard Worker const TPM2B_ATTEST& certify_info, 6007*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& signature)> 6008*4f2df630SAndroid Build Coastguard Worker NV_CertifyResponse; 6009*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_NV_Certify( 6010*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& sign_handle, 6011*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 6012*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 6013*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 6014*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 6015*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 6016*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 6017*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 6018*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 6019*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 6020*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 6021*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6022*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_NV_Certify( 6023*4f2df630SAndroid Build Coastguard Worker const std::string& response, 6024*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 6025*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 6026*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6027*4f2df630SAndroid Build Coastguard Worker virtual void NV_Certify(const TPMI_DH_OBJECT& sign_handle, 6028*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 6029*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 6030*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 6031*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 6032*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 6033*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 6034*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 6035*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 6036*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 6037*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate, 6038*4f2df630SAndroid Build Coastguard Worker NV_CertifyResponse callback); 6039*4f2df630SAndroid Build Coastguard Worker virtual TPM_RC NV_CertifySync(const TPMI_DH_OBJECT& sign_handle, 6040*4f2df630SAndroid Build Coastguard Worker const std::string& sign_handle_name, 6041*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_AUTH& auth_handle, 6042*4f2df630SAndroid Build Coastguard Worker const std::string& auth_handle_name, 6043*4f2df630SAndroid Build Coastguard Worker const TPMI_RH_NV_INDEX& nv_index, 6044*4f2df630SAndroid Build Coastguard Worker const std::string& nv_index_name, 6045*4f2df630SAndroid Build Coastguard Worker const TPM2B_DATA& qualifying_data, 6046*4f2df630SAndroid Build Coastguard Worker const TPMT_SIG_SCHEME& in_scheme, 6047*4f2df630SAndroid Build Coastguard Worker const UINT16& size, 6048*4f2df630SAndroid Build Coastguard Worker const UINT16& offset, 6049*4f2df630SAndroid Build Coastguard Worker TPM2B_ATTEST* certify_info, 6050*4f2df630SAndroid Build Coastguard Worker TPMT_SIGNATURE* signature, 6051*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6052*4f2df630SAndroid Build Coastguard Worker 6053*4f2df630SAndroid Build Coastguard Worker typedef base::OnceCallback<void(TPM_RC response_code)> 6054*4f2df630SAndroid Build Coastguard Worker PolicyFidoSignedResponse; 6055*4f2df630SAndroid Build Coastguard Worker static TPM_RC SerializeCommand_PolicyFidoSigned( 6056*4f2df630SAndroid Build Coastguard Worker const TPMI_DH_OBJECT& auth_object, 6057*4f2df630SAndroid Build Coastguard Worker const std::string& auth_object_name, 6058*4f2df630SAndroid Build Coastguard Worker const TPMI_SH_POLICY& policy_session, 6059*4f2df630SAndroid Build Coastguard Worker const std::string& policy_session_name, 6060*4f2df630SAndroid Build Coastguard Worker const std::string& auth_data, 6061*4f2df630SAndroid Build Coastguard Worker const std::vector<FIDO_DATA_RANGE>& auth_data_descr, 6062*4f2df630SAndroid Build Coastguard Worker const TPMT_SIGNATURE& auth, 6063*4f2df630SAndroid Build Coastguard Worker std::string* serialized_command, 6064*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6065*4f2df630SAndroid Build Coastguard Worker static TPM_RC ParseResponse_PolicyFidoSigned( 6066*4f2df630SAndroid Build Coastguard Worker const std::string& response, 6067*4f2df630SAndroid Build Coastguard Worker AuthorizationDelegate* authorization_delegate); 6068*4f2df630SAndroid Build Coastguard Worker 6069*4f2df630SAndroid Build Coastguard Worker private: 6070*4f2df630SAndroid Build Coastguard Worker CommandTransceiver* transceiver_; 6071*4f2df630SAndroid Build Coastguard Worker }; 6072*4f2df630SAndroid Build Coastguard Worker 6073*4f2df630SAndroid Build Coastguard Worker } // namespace trunks 6074*4f2df630SAndroid Build Coastguard Worker 6075*4f2df630SAndroid Build Coastguard Worker #endif // TRUNKS_TPM_GENERATED_H_ 6076