1// 2// Copyright (C) 2014 The Android Open Source Project 3// 4// Licensed under the Apache License, Version 2.0 (the "License"); 5// you may not use this file except in compliance with the License. 6// You may obtain a copy of the License at 7// 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// See the License for the specific language governing permissions and 14// limitations under the License. 15// 16 17#ifndef TRUNKS_MOCK_TPM_H_ 18#define TRUNKS_MOCK_TPM_H_ 19 20#include <string> 21 22#include <base/callback.h> 23#include <gmock/gmock.h> 24 25#include "trunks/tpm_generated.h" 26 27namespace trunks { 28 29class MockTpm : public Tpm { 30 public: 31 MockTpm(); 32 ~MockTpm() override; 33 34 MOCK_METHOD3(Startup, 35 void(const TPM_SU& startup_type, 36 AuthorizationDelegate* authorization_delegate, 37 const StartupResponse& callback)); 38 MOCK_METHOD2(StartupSync, 39 TPM_RC(const TPM_SU& startup_type, 40 AuthorizationDelegate* authorization_delegate)); 41 MOCK_METHOD3(Shutdown, 42 void(const TPM_SU& shutdown_type, 43 AuthorizationDelegate* authorization_delegate, 44 const ShutdownResponse& callback)); 45 MOCK_METHOD2(ShutdownSync, 46 TPM_RC(const TPM_SU& shutdown_type, 47 AuthorizationDelegate* authorization_delegate)); 48 MOCK_METHOD3(SelfTest, 49 void(const TPMI_YES_NO& full_test, 50 AuthorizationDelegate* authorization_delegate, 51 const SelfTestResponse& callback)); 52 MOCK_METHOD2(SelfTestSync, 53 TPM_RC(const TPMI_YES_NO& full_test, 54 AuthorizationDelegate* authorization_delegate)); 55 MOCK_METHOD3(IncrementalSelfTest, 56 void(const TPML_ALG& to_test, 57 AuthorizationDelegate* authorization_delegate, 58 const IncrementalSelfTestResponse& callback)); 59 MOCK_METHOD3(IncrementalSelfTestSync, 60 TPM_RC(const TPML_ALG& to_test, 61 TPML_ALG* to_do_list, 62 AuthorizationDelegate* authorization_delegate)); 63 MOCK_METHOD2(GetTestResult, 64 void(AuthorizationDelegate* authorization_delegate, 65 const GetTestResultResponse& callback)); 66 MOCK_METHOD3(GetTestResultSync, 67 TPM_RC(TPM2B_MAX_BUFFER* out_data, 68 TPM_RC* test_result, 69 AuthorizationDelegate* authorization_delegate)); 70 // Too many args to mock, forward to *Short version. 71 void StartAuthSession(const TPMI_DH_OBJECT& tpm_key, 72 const std::string& tpm_key_name, 73 const TPMI_DH_ENTITY& bind, 74 const std::string& bind_name, 75 const TPM2B_NONCE& nonce_caller, 76 const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 77 const TPM_SE& session_type, 78 const TPMT_SYM_DEF& symmetric, 79 const TPMI_ALG_HASH& auth_hash, 80 AuthorizationDelegate* authorization_delegate, 81 const StartAuthSessionResponse& callback) override; 82 MOCK_METHOD9(StartAuthSessionShort, 83 void(const TPMI_DH_OBJECT& tpm_key, 84 const TPMI_DH_ENTITY& bind, 85 const TPM2B_NONCE& nonce_caller, 86 const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 87 const TPM_SE& session_type, 88 const TPMT_SYM_DEF& symmetric, 89 const TPMI_ALG_HASH& auth_hash, 90 AuthorizationDelegate* authorization_delegate, 91 const StartAuthSessionResponse& callback)); 92 // Too many args to mock, forward to *Short version. 93 TPM_RC StartAuthSessionSync( 94 const TPMI_DH_OBJECT& tpm_key, 95 const std::string& tpm_key_name, 96 const TPMI_DH_ENTITY& bind, 97 const std::string& bind_name, 98 const TPM2B_NONCE& nonce_caller, 99 const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 100 const TPM_SE& session_type, 101 const TPMT_SYM_DEF& symmetric, 102 const TPMI_ALG_HASH& auth_hash, 103 TPMI_SH_AUTH_SESSION* session_handle, 104 TPM2B_NONCE* nonce_tpm, 105 AuthorizationDelegate* authorization_delegate) override; 106 MOCK_METHOD10(StartAuthSessionSyncShort, 107 TPM_RC(const TPMI_DH_OBJECT& tpm_key, 108 const TPMI_DH_ENTITY& bind, 109 const TPM2B_NONCE& nonce_caller, 110 const TPM2B_ENCRYPTED_SECRET& encrypted_salt, 111 const TPM_SE& session_type, 112 const TPMT_SYM_DEF& symmetric, 113 const TPMI_ALG_HASH& auth_hash, 114 TPMI_SH_AUTH_SESSION* session_handle, 115 TPM2B_NONCE* nonce_tpm, 116 AuthorizationDelegate* authorization_delegate)); 117 MOCK_METHOD4(PolicyRestart, 118 void(const TPMI_SH_POLICY& session_handle, 119 const std::string& session_handle_name, 120 AuthorizationDelegate* authorization_delegate, 121 const PolicyRestartResponse& callback)); 122 MOCK_METHOD3(PolicyRestartSync, 123 TPM_RC(const TPMI_SH_POLICY& session_handle, 124 const std::string& session_handle_name, 125 AuthorizationDelegate* authorization_delegate)); 126 MOCK_METHOD8(Create, 127 void(const TPMI_DH_OBJECT& parent_handle, 128 const std::string& parent_handle_name, 129 const TPM2B_SENSITIVE_CREATE& in_sensitive, 130 const TPM2B_PUBLIC& in_public, 131 const TPM2B_DATA& outside_info, 132 const TPML_PCR_SELECTION& creation_pcr, 133 AuthorizationDelegate* authorization_delegate, 134 const CreateResponse& callback)); 135 // Too many args to mock, forward to *Short version. 136 TPM_RC CreateSync(const TPMI_DH_OBJECT& parent_handle, 137 const std::string& parent_handle_name, 138 const TPM2B_SENSITIVE_CREATE& in_sensitive, 139 const TPM2B_PUBLIC& in_public, 140 const TPM2B_DATA& outside_info, 141 const TPML_PCR_SELECTION& creation_pcr, 142 TPM2B_PRIVATE* out_private, 143 TPM2B_PUBLIC* out_public, 144 TPM2B_CREATION_DATA* creation_data, 145 TPM2B_DIGEST* creation_hash, 146 TPMT_TK_CREATION* creation_ticket, 147 AuthorizationDelegate* authorization_delegate) override; 148 MOCK_METHOD10(CreateSyncShort, 149 TPM_RC(const TPMI_DH_OBJECT& parent_handle, 150 const TPM2B_SENSITIVE_CREATE& in_sensitive, 151 const TPM2B_PUBLIC& in_public, 152 const TPML_PCR_SELECTION& creation_pcr, 153 TPM2B_PRIVATE* out_private, 154 TPM2B_PUBLIC* out_public, 155 TPM2B_CREATION_DATA* creation_data, 156 TPM2B_DIGEST* creation_hash, 157 TPMT_TK_CREATION* creation_ticket, 158 AuthorizationDelegate* authorization_delegate)); 159 MOCK_METHOD6(Load, 160 void(const TPMI_DH_OBJECT& parent_handle, 161 const std::string& parent_handle_name, 162 const TPM2B_PRIVATE& in_private, 163 const TPM2B_PUBLIC& in_public, 164 AuthorizationDelegate* authorization_delegate, 165 const LoadResponse& callback)); 166 MOCK_METHOD7(LoadSync, 167 TPM_RC(const TPMI_DH_OBJECT& parent_handle, 168 const std::string& parent_handle_name, 169 const TPM2B_PRIVATE& in_private, 170 const TPM2B_PUBLIC& in_public, 171 TPM_HANDLE* object_handle, 172 TPM2B_NAME* name, 173 AuthorizationDelegate* authorization_delegate)); 174 MOCK_METHOD5(LoadExternal, 175 void(const TPM2B_SENSITIVE& in_private, 176 const TPM2B_PUBLIC& in_public, 177 const TPMI_RH_HIERARCHY& hierarchy, 178 AuthorizationDelegate* authorization_delegate, 179 const LoadExternalResponse& callback)); 180 MOCK_METHOD6(LoadExternalSync, 181 TPM_RC(const TPM2B_SENSITIVE& in_private, 182 const TPM2B_PUBLIC& in_public, 183 const TPMI_RH_HIERARCHY& hierarchy, 184 TPM_HANDLE* object_handle, 185 TPM2B_NAME* name, 186 AuthorizationDelegate* authorization_delegate)); 187 MOCK_METHOD4(ReadPublic, 188 void(const TPMI_DH_OBJECT& object_handle, 189 const std::string& object_handle_name, 190 AuthorizationDelegate* authorization_delegate, 191 const ReadPublicResponse& callback)); 192 MOCK_METHOD6(ReadPublicSync, 193 TPM_RC(const TPMI_DH_OBJECT& object_handle, 194 const std::string& object_handle_name, 195 TPM2B_PUBLIC* out_public, 196 TPM2B_NAME* name, 197 TPM2B_NAME* qualified_name, 198 AuthorizationDelegate* authorization_delegate)); 199 MOCK_METHOD8(ActivateCredential, 200 void(const TPMI_DH_OBJECT& activate_handle, 201 const std::string& activate_handle_name, 202 const TPMI_DH_OBJECT& key_handle, 203 const std::string& key_handle_name, 204 const TPM2B_ID_OBJECT& credential_blob, 205 const TPM2B_ENCRYPTED_SECRET& secret, 206 AuthorizationDelegate* authorization_delegate, 207 const ActivateCredentialResponse& callback)); 208 MOCK_METHOD8(ActivateCredentialSync, 209 TPM_RC(const TPMI_DH_OBJECT& activate_handle, 210 const std::string& activate_handle_name, 211 const TPMI_DH_OBJECT& key_handle, 212 const std::string& key_handle_name, 213 const TPM2B_ID_OBJECT& credential_blob, 214 const TPM2B_ENCRYPTED_SECRET& secret, 215 TPM2B_DIGEST* cert_info, 216 AuthorizationDelegate* authorization_delegate)); 217 MOCK_METHOD6(MakeCredential, 218 void(const TPMI_DH_OBJECT& handle, 219 const std::string& handle_name, 220 const TPM2B_DIGEST& credential, 221 const TPM2B_NAME& object_name, 222 AuthorizationDelegate* authorization_delegate, 223 const MakeCredentialResponse& callback)); 224 MOCK_METHOD7(MakeCredentialSync, 225 TPM_RC(const TPMI_DH_OBJECT& handle, 226 const std::string& handle_name, 227 const TPM2B_DIGEST& credential, 228 const TPM2B_NAME& object_name, 229 TPM2B_ID_OBJECT* credential_blob, 230 TPM2B_ENCRYPTED_SECRET* secret, 231 AuthorizationDelegate* authorization_delegate)); 232 MOCK_METHOD4(Unseal, 233 void(const TPMI_DH_OBJECT& item_handle, 234 const std::string& item_handle_name, 235 AuthorizationDelegate* authorization_delegate, 236 const UnsealResponse& callback)); 237 MOCK_METHOD4(UnsealSync, 238 TPM_RC(const TPMI_DH_OBJECT& item_handle, 239 const std::string& item_handle_name, 240 TPM2B_SENSITIVE_DATA* out_data, 241 AuthorizationDelegate* authorization_delegate)); 242 MOCK_METHOD7(ObjectChangeAuth, 243 void(const TPMI_DH_OBJECT& object_handle, 244 const std::string& object_handle_name, 245 const TPMI_DH_OBJECT& parent_handle, 246 const std::string& parent_handle_name, 247 const TPM2B_AUTH& new_auth, 248 AuthorizationDelegate* authorization_delegate, 249 const ObjectChangeAuthResponse& callback)); 250 MOCK_METHOD7(ObjectChangeAuthSync, 251 TPM_RC(const TPMI_DH_OBJECT& object_handle, 252 const std::string& object_handle_name, 253 const TPMI_DH_OBJECT& parent_handle, 254 const std::string& parent_handle_name, 255 const TPM2B_AUTH& new_auth, 256 TPM2B_PRIVATE* out_private, 257 AuthorizationDelegate* authorization_delegate)); 258 MOCK_METHOD8(Duplicate, 259 void(const TPMI_DH_OBJECT& object_handle, 260 const std::string& object_handle_name, 261 const TPMI_DH_OBJECT& new_parent_handle, 262 const std::string& new_parent_handle_name, 263 const TPM2B_DATA& encryption_key_in, 264 const TPMT_SYM_DEF_OBJECT& symmetric_alg, 265 AuthorizationDelegate* authorization_delegate, 266 const DuplicateResponse& callback)); 267 MOCK_METHOD10(DuplicateSync, 268 TPM_RC(const TPMI_DH_OBJECT& object_handle, 269 const std::string& object_handle_name, 270 const TPMI_DH_OBJECT& new_parent_handle, 271 const std::string& new_parent_handle_name, 272 const TPM2B_DATA& encryption_key_in, 273 const TPMT_SYM_DEF_OBJECT& symmetric_alg, 274 TPM2B_DATA* encryption_key_out, 275 TPM2B_PRIVATE* duplicate, 276 TPM2B_ENCRYPTED_SECRET* out_sym_seed, 277 AuthorizationDelegate* authorization_delegate)); 278 MOCK_METHOD9(Rewrap, 279 void(const TPMI_DH_OBJECT& old_parent, 280 const std::string& old_parent_name, 281 const TPMI_DH_OBJECT& new_parent, 282 const std::string& new_parent_name, 283 const TPM2B_PRIVATE& in_duplicate, 284 const TPM2B_NAME& name, 285 const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 286 AuthorizationDelegate* authorization_delegate, 287 const RewrapResponse& callback)); 288 MOCK_METHOD10(RewrapSync, 289 TPM_RC(const TPMI_DH_OBJECT& old_parent, 290 const std::string& old_parent_name, 291 const TPMI_DH_OBJECT& new_parent, 292 const std::string& new_parent_name, 293 const TPM2B_PRIVATE& in_duplicate, 294 const TPM2B_NAME& name, 295 const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 296 TPM2B_PRIVATE* out_duplicate, 297 TPM2B_ENCRYPTED_SECRET* out_sym_seed, 298 AuthorizationDelegate* authorization_delegate)); 299 MOCK_METHOD9(Import, 300 void(const TPMI_DH_OBJECT& parent_handle, 301 const std::string& parent_handle_name, 302 const TPM2B_DATA& encryption_key, 303 const TPM2B_PUBLIC& object_public, 304 const TPM2B_PRIVATE& duplicate, 305 const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 306 const TPMT_SYM_DEF_OBJECT& symmetric_alg, 307 AuthorizationDelegate* authorization_delegate, 308 const ImportResponse& callback)); 309 MOCK_METHOD9(ImportSync, 310 TPM_RC(const TPMI_DH_OBJECT& parent_handle, 311 const std::string& parent_handle_name, 312 const TPM2B_DATA& encryption_key, 313 const TPM2B_PUBLIC& object_public, 314 const TPM2B_PRIVATE& duplicate, 315 const TPM2B_ENCRYPTED_SECRET& in_sym_seed, 316 const TPMT_SYM_DEF_OBJECT& symmetric_alg, 317 TPM2B_PRIVATE* out_private, 318 AuthorizationDelegate* authorization_delegate)); 319 MOCK_METHOD7(RSA_Encrypt, 320 void(const TPMI_DH_OBJECT& key_handle, 321 const std::string& key_handle_name, 322 const TPM2B_PUBLIC_KEY_RSA& message, 323 const TPMT_RSA_DECRYPT& in_scheme, 324 const TPM2B_DATA& label, 325 AuthorizationDelegate* authorization_delegate, 326 const RSA_EncryptResponse& callback)); 327 MOCK_METHOD7(RSA_EncryptSync, 328 TPM_RC(const TPMI_DH_OBJECT& key_handle, 329 const std::string& key_handle_name, 330 const TPM2B_PUBLIC_KEY_RSA& message, 331 const TPMT_RSA_DECRYPT& in_scheme, 332 const TPM2B_DATA& label, 333 TPM2B_PUBLIC_KEY_RSA* out_data, 334 AuthorizationDelegate* authorization_delegate)); 335 MOCK_METHOD7(RSA_Decrypt, 336 void(const TPMI_DH_OBJECT& key_handle, 337 const std::string& key_handle_name, 338 const TPM2B_PUBLIC_KEY_RSA& cipher_text, 339 const TPMT_RSA_DECRYPT& in_scheme, 340 const TPM2B_DATA& label, 341 AuthorizationDelegate* authorization_delegate, 342 const RSA_DecryptResponse& callback)); 343 MOCK_METHOD7(RSA_DecryptSync, 344 TPM_RC(const TPMI_DH_OBJECT& key_handle, 345 const std::string& key_handle_name, 346 const TPM2B_PUBLIC_KEY_RSA& cipher_text, 347 const TPMT_RSA_DECRYPT& in_scheme, 348 const TPM2B_DATA& label, 349 TPM2B_PUBLIC_KEY_RSA* message, 350 AuthorizationDelegate* authorization_delegate)); 351 MOCK_METHOD4(ECDH_KeyGen, 352 void(const TPMI_DH_OBJECT& key_handle, 353 const std::string& key_handle_name, 354 AuthorizationDelegate* authorization_delegate, 355 const ECDH_KeyGenResponse& callback)); 356 MOCK_METHOD5(ECDH_KeyGenSync, 357 TPM_RC(const TPMI_DH_OBJECT& key_handle, 358 const std::string& key_handle_name, 359 TPM2B_ECC_POINT* z_point, 360 TPM2B_ECC_POINT* pub_point, 361 AuthorizationDelegate* authorization_delegate)); 362 MOCK_METHOD5(ECDH_ZGen, 363 void(const TPMI_DH_OBJECT& key_handle, 364 const std::string& key_handle_name, 365 const TPM2B_ECC_POINT& in_point, 366 AuthorizationDelegate* authorization_delegate, 367 const ECDH_ZGenResponse& callback)); 368 MOCK_METHOD5(ECDH_ZGenSync, 369 TPM_RC(const TPMI_DH_OBJECT& key_handle, 370 const std::string& key_handle_name, 371 const TPM2B_ECC_POINT& in_point, 372 TPM2B_ECC_POINT* out_point, 373 AuthorizationDelegate* authorization_delegate)); 374 MOCK_METHOD3(ECC_Parameters, 375 void(const TPMI_ECC_CURVE& curve_id, 376 AuthorizationDelegate* authorization_delegate, 377 const ECC_ParametersResponse& callback)); 378 MOCK_METHOD3(ECC_ParametersSync, 379 TPM_RC(const TPMI_ECC_CURVE& curve_id, 380 TPMS_ALGORITHM_DETAIL_ECC* parameters, 381 AuthorizationDelegate* authorization_delegate)); 382 MOCK_METHOD8(ZGen_2Phase, 383 void(const TPMI_DH_OBJECT& key_a, 384 const std::string& key_a_name, 385 const TPM2B_ECC_POINT& in_qs_b, 386 const TPM2B_ECC_POINT& in_qe_b, 387 const TPMI_ECC_KEY_EXCHANGE& in_scheme, 388 const UINT16& counter, 389 AuthorizationDelegate* authorization_delegate, 390 const ZGen_2PhaseResponse& callback)); 391 MOCK_METHOD9(ZGen_2PhaseSync, 392 TPM_RC(const TPMI_DH_OBJECT& key_a, 393 const std::string& key_a_name, 394 const TPM2B_ECC_POINT& in_qs_b, 395 const TPM2B_ECC_POINT& in_qe_b, 396 const TPMI_ECC_KEY_EXCHANGE& in_scheme, 397 const UINT16& counter, 398 TPM2B_ECC_POINT* out_z1, 399 TPM2B_ECC_POINT* out_z2, 400 AuthorizationDelegate* authorization_delegate)); 401 MOCK_METHOD8(EncryptDecrypt, 402 void(const TPMI_DH_OBJECT& key_handle, 403 const std::string& key_handle_name, 404 const TPMI_YES_NO& decrypt, 405 const TPMI_ALG_SYM_MODE& mode, 406 const TPM2B_IV& iv_in, 407 const TPM2B_MAX_BUFFER& in_data, 408 AuthorizationDelegate* authorization_delegate, 409 const EncryptDecryptResponse& callback)); 410 MOCK_METHOD9(EncryptDecryptSync, 411 TPM_RC(const TPMI_DH_OBJECT& key_handle, 412 const std::string& key_handle_name, 413 const TPMI_YES_NO& decrypt, 414 const TPMI_ALG_SYM_MODE& mode, 415 const TPM2B_IV& iv_in, 416 const TPM2B_MAX_BUFFER& in_data, 417 TPM2B_MAX_BUFFER* out_data, 418 TPM2B_IV* iv_out, 419 AuthorizationDelegate* authorization_delegate)); 420 MOCK_METHOD5(Hash, 421 void(const TPM2B_MAX_BUFFER& data, 422 const TPMI_ALG_HASH& hash_alg, 423 const TPMI_RH_HIERARCHY& hierarchy, 424 AuthorizationDelegate* authorization_delegate, 425 const HashResponse& callback)); 426 MOCK_METHOD6(HashSync, 427 TPM_RC(const TPM2B_MAX_BUFFER& data, 428 const TPMI_ALG_HASH& hash_alg, 429 const TPMI_RH_HIERARCHY& hierarchy, 430 TPM2B_DIGEST* out_hash, 431 TPMT_TK_HASHCHECK* validation, 432 AuthorizationDelegate* authorization_delegate)); 433 MOCK_METHOD6(HMAC, 434 void(const TPMI_DH_OBJECT& handle, 435 const std::string& handle_name, 436 const TPM2B_MAX_BUFFER& buffer, 437 const TPMI_ALG_HASH& hash_alg, 438 AuthorizationDelegate* authorization_delegate, 439 const HMACResponse& callback)); 440 MOCK_METHOD6(HMACSync, 441 TPM_RC(const TPMI_DH_OBJECT& handle, 442 const std::string& handle_name, 443 const TPM2B_MAX_BUFFER& buffer, 444 const TPMI_ALG_HASH& hash_alg, 445 TPM2B_DIGEST* out_hmac, 446 AuthorizationDelegate* authorization_delegate)); 447 MOCK_METHOD3(GetRandom, 448 void(const UINT16& bytes_requested, 449 AuthorizationDelegate* authorization_delegate, 450 const GetRandomResponse& callback)); 451 MOCK_METHOD3(GetRandomSync, 452 TPM_RC(const UINT16& bytes_requested, 453 TPM2B_DIGEST* random_bytes, 454 AuthorizationDelegate* authorization_delegate)); 455 MOCK_METHOD3(StirRandom, 456 void(const TPM2B_SENSITIVE_DATA& in_data, 457 AuthorizationDelegate* authorization_delegate, 458 const StirRandomResponse& callback)); 459 MOCK_METHOD2(StirRandomSync, 460 TPM_RC(const TPM2B_SENSITIVE_DATA& in_data, 461 AuthorizationDelegate* authorization_delegate)); 462 MOCK_METHOD6(HMAC_Start, 463 void(const TPMI_DH_OBJECT& handle, 464 const std::string& handle_name, 465 const TPM2B_AUTH& auth, 466 const TPMI_ALG_HASH& hash_alg, 467 AuthorizationDelegate* authorization_delegate, 468 const HMAC_StartResponse& callback)); 469 MOCK_METHOD6(HMAC_StartSync, 470 TPM_RC(const TPMI_DH_OBJECT& handle, 471 const std::string& handle_name, 472 const TPM2B_AUTH& auth, 473 const TPMI_ALG_HASH& hash_alg, 474 TPMI_DH_OBJECT* sequence_handle, 475 AuthorizationDelegate* authorization_delegate)); 476 MOCK_METHOD4(HashSequenceStart, 477 void(const TPM2B_AUTH& auth, 478 const TPMI_ALG_HASH& hash_alg, 479 AuthorizationDelegate* authorization_delegate, 480 const HashSequenceStartResponse& callback)); 481 MOCK_METHOD4(HashSequenceStartSync, 482 TPM_RC(const TPM2B_AUTH& auth, 483 const TPMI_ALG_HASH& hash_alg, 484 TPMI_DH_OBJECT* sequence_handle, 485 AuthorizationDelegate* authorization_delegate)); 486 MOCK_METHOD5(SequenceUpdate, 487 void(const TPMI_DH_OBJECT& sequence_handle, 488 const std::string& sequence_handle_name, 489 const TPM2B_MAX_BUFFER& buffer, 490 AuthorizationDelegate* authorization_delegate, 491 const SequenceUpdateResponse& callback)); 492 MOCK_METHOD4(SequenceUpdateSync, 493 TPM_RC(const TPMI_DH_OBJECT& sequence_handle, 494 const std::string& sequence_handle_name, 495 const TPM2B_MAX_BUFFER& buffer, 496 AuthorizationDelegate* authorization_delegate)); 497 MOCK_METHOD6(SequenceComplete, 498 void(const TPMI_DH_OBJECT& sequence_handle, 499 const std::string& sequence_handle_name, 500 const TPM2B_MAX_BUFFER& buffer, 501 const TPMI_RH_HIERARCHY& hierarchy, 502 AuthorizationDelegate* authorization_delegate, 503 const SequenceCompleteResponse& callback)); 504 MOCK_METHOD7(SequenceCompleteSync, 505 TPM_RC(const TPMI_DH_OBJECT& sequence_handle, 506 const std::string& sequence_handle_name, 507 const TPM2B_MAX_BUFFER& buffer, 508 const TPMI_RH_HIERARCHY& hierarchy, 509 TPM2B_DIGEST* result, 510 TPMT_TK_HASHCHECK* validation, 511 AuthorizationDelegate* authorization_delegate)); 512 MOCK_METHOD7(EventSequenceComplete, 513 void(const TPMI_DH_PCR& pcr_handle, 514 const std::string& pcr_handle_name, 515 const TPMI_DH_OBJECT& sequence_handle, 516 const std::string& sequence_handle_name, 517 const TPM2B_MAX_BUFFER& buffer, 518 AuthorizationDelegate* authorization_delegate, 519 const EventSequenceCompleteResponse& callback)); 520 MOCK_METHOD7(EventSequenceCompleteSync, 521 TPM_RC(const TPMI_DH_PCR& pcr_handle, 522 const std::string& pcr_handle_name, 523 const TPMI_DH_OBJECT& sequence_handle, 524 const std::string& sequence_handle_name, 525 const TPM2B_MAX_BUFFER& buffer, 526 TPML_DIGEST_VALUES* results, 527 AuthorizationDelegate* authorization_delegate)); 528 MOCK_METHOD8(Certify, 529 void(const TPMI_DH_OBJECT& object_handle, 530 const std::string& object_handle_name, 531 const TPMI_DH_OBJECT& sign_handle, 532 const std::string& sign_handle_name, 533 const TPM2B_DATA& qualifying_data, 534 const TPMT_SIG_SCHEME& in_scheme, 535 AuthorizationDelegate* authorization_delegate, 536 const CertifyResponse& callback)); 537 MOCK_METHOD9(CertifySync, 538 TPM_RC(const TPMI_DH_OBJECT& object_handle, 539 const std::string& object_handle_name, 540 const TPMI_DH_OBJECT& sign_handle, 541 const std::string& sign_handle_name, 542 const TPM2B_DATA& qualifying_data, 543 const TPMT_SIG_SCHEME& in_scheme, 544 TPM2B_ATTEST* certify_info, 545 TPMT_SIGNATURE* signature, 546 AuthorizationDelegate* authorization_delegate)); 547 MOCK_METHOD10(CertifyCreation, 548 void(const TPMI_DH_OBJECT& sign_handle, 549 const std::string& sign_handle_name, 550 const TPMI_DH_OBJECT& object_handle, 551 const std::string& object_handle_name, 552 const TPM2B_DATA& qualifying_data, 553 const TPM2B_DIGEST& creation_hash, 554 const TPMT_SIG_SCHEME& in_scheme, 555 const TPMT_TK_CREATION& creation_ticket, 556 AuthorizationDelegate* authorization_delegate, 557 const CertifyCreationResponse& callback)); 558 // Too many args to mock, forward to *Short version. 559 TPM_RC CertifyCreationSync( 560 const TPMI_DH_OBJECT& sign_handle, 561 const std::string& sign_handle_name, 562 const TPMI_DH_OBJECT& object_handle, 563 const std::string& object_handle_name, 564 const TPM2B_DATA& qualifying_data, 565 const TPM2B_DIGEST& creation_hash, 566 const TPMT_SIG_SCHEME& in_scheme, 567 const TPMT_TK_CREATION& creation_ticket, 568 TPM2B_ATTEST* certify_info, 569 TPMT_SIGNATURE* signature, 570 AuthorizationDelegate* authorization_delegate) override; 571 MOCK_METHOD9(CertifyCreationSyncShort, 572 TPM_RC(const TPMI_DH_OBJECT& sign_handle, 573 const TPMI_DH_OBJECT& object_handle, 574 const TPM2B_DATA& qualifying_data, 575 const TPM2B_DIGEST& creation_hash, 576 const TPMT_SIG_SCHEME& in_scheme, 577 const TPMT_TK_CREATION& creation_ticket, 578 TPM2B_ATTEST* certify_info, 579 TPMT_SIGNATURE* signature, 580 AuthorizationDelegate* authorization_delegate)); 581 MOCK_METHOD7(Quote, 582 void(const TPMI_DH_OBJECT& sign_handle, 583 const std::string& sign_handle_name, 584 const TPM2B_DATA& qualifying_data, 585 const TPMT_SIG_SCHEME& in_scheme, 586 const TPML_PCR_SELECTION& pcrselect, 587 AuthorizationDelegate* authorization_delegate, 588 const QuoteResponse& callback)); 589 MOCK_METHOD8(QuoteSync, 590 TPM_RC(const TPMI_DH_OBJECT& sign_handle, 591 const std::string& sign_handle_name, 592 const TPM2B_DATA& qualifying_data, 593 const TPMT_SIG_SCHEME& in_scheme, 594 const TPML_PCR_SELECTION& pcrselect, 595 TPM2B_ATTEST* quoted, 596 TPMT_SIGNATURE* signature, 597 AuthorizationDelegate* authorization_delegate)); 598 MOCK_METHOD10(GetSessionAuditDigest, 599 void(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 600 const std::string& privacy_admin_handle_name, 601 const TPMI_DH_OBJECT& sign_handle, 602 const std::string& sign_handle_name, 603 const TPMI_SH_HMAC& session_handle, 604 const std::string& session_handle_name, 605 const TPM2B_DATA& qualifying_data, 606 const TPMT_SIG_SCHEME& in_scheme, 607 AuthorizationDelegate* authorization_delegate, 608 const GetSessionAuditDigestResponse& callback)); 609 // Too many args to mock, forward to *Short version. 610 TPM_RC GetSessionAuditDigestSync( 611 const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 612 const std::string& privacy_admin_handle_name, 613 const TPMI_DH_OBJECT& sign_handle, 614 const std::string& sign_handle_name, 615 const TPMI_SH_HMAC& session_handle, 616 const std::string& session_handle_name, 617 const TPM2B_DATA& qualifying_data, 618 const TPMT_SIG_SCHEME& in_scheme, 619 TPM2B_ATTEST* audit_info, 620 TPMT_SIGNATURE* signature, 621 AuthorizationDelegate* authorization_delegate) override; 622 MOCK_METHOD8(GetSessionAuditDigestSyncShort, 623 TPM_RC(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 624 const TPMI_DH_OBJECT& sign_handle, 625 const TPMI_SH_HMAC& session_handle, 626 const TPM2B_DATA& qualifying_data, 627 const TPMT_SIG_SCHEME& in_scheme, 628 TPM2B_ATTEST* audit_info, 629 TPMT_SIGNATURE* signature, 630 AuthorizationDelegate* authorization_delegate)); 631 MOCK_METHOD8(GetCommandAuditDigest, 632 void(const TPMI_RH_ENDORSEMENT& privacy_handle, 633 const std::string& privacy_handle_name, 634 const TPMI_DH_OBJECT& sign_handle, 635 const std::string& sign_handle_name, 636 const TPM2B_DATA& qualifying_data, 637 const TPMT_SIG_SCHEME& in_scheme, 638 AuthorizationDelegate* authorization_delegate, 639 const GetCommandAuditDigestResponse& callback)); 640 MOCK_METHOD9(GetCommandAuditDigestSync, 641 TPM_RC(const TPMI_RH_ENDORSEMENT& privacy_handle, 642 const std::string& privacy_handle_name, 643 const TPMI_DH_OBJECT& sign_handle, 644 const std::string& sign_handle_name, 645 const TPM2B_DATA& qualifying_data, 646 const TPMT_SIG_SCHEME& in_scheme, 647 TPM2B_ATTEST* audit_info, 648 TPMT_SIGNATURE* signature, 649 AuthorizationDelegate* authorization_delegate)); 650 MOCK_METHOD8(GetTime, 651 void(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 652 const std::string& privacy_admin_handle_name, 653 const TPMI_DH_OBJECT& sign_handle, 654 const std::string& sign_handle_name, 655 const TPM2B_DATA& qualifying_data, 656 const TPMT_SIG_SCHEME& in_scheme, 657 AuthorizationDelegate* authorization_delegate, 658 const GetTimeResponse& callback)); 659 MOCK_METHOD9(GetTimeSync, 660 TPM_RC(const TPMI_RH_ENDORSEMENT& privacy_admin_handle, 661 const std::string& privacy_admin_handle_name, 662 const TPMI_DH_OBJECT& sign_handle, 663 const std::string& sign_handle_name, 664 const TPM2B_DATA& qualifying_data, 665 const TPMT_SIG_SCHEME& in_scheme, 666 TPM2B_ATTEST* time_info, 667 TPMT_SIGNATURE* signature, 668 AuthorizationDelegate* authorization_delegate)); 669 MOCK_METHOD8(Commit, 670 void(const TPMI_DH_OBJECT& sign_handle, 671 const std::string& sign_handle_name, 672 const UINT32& param_size, 673 const TPM2B_ECC_POINT& p1, 674 const TPM2B_SENSITIVE_DATA& s2, 675 const TPM2B_ECC_PARAMETER& y2, 676 AuthorizationDelegate* authorization_delegate, 677 const CommitResponse& callback)); 678 // Too many args to mock, forward to *Short version. 679 TPM_RC CommitSync(const TPMI_DH_OBJECT& sign_handle, 680 const std::string& sign_handle_name, 681 const UINT32& param_size, 682 const TPM2B_ECC_POINT& p1, 683 const TPM2B_SENSITIVE_DATA& s2, 684 const TPM2B_ECC_PARAMETER& y2, 685 UINT32* param_size_out, 686 TPM2B_ECC_POINT* k, 687 TPM2B_ECC_POINT* l, 688 TPM2B_ECC_POINT* e, 689 UINT16* counter, 690 AuthorizationDelegate* authorization_delegate) override; 691 MOCK_METHOD10(CommitSyncShort, 692 TPM_RC(const TPMI_DH_OBJECT& sign_handle, 693 const UINT32& param_size, 694 const TPM2B_ECC_POINT& p1, 695 const TPM2B_ECC_PARAMETER& y2, 696 UINT32* param_size_out, 697 TPM2B_ECC_POINT* k, 698 TPM2B_ECC_POINT* l, 699 TPM2B_ECC_POINT* e, 700 UINT16* counter, 701 AuthorizationDelegate* authorization_delegate)); 702 MOCK_METHOD4(EC_Ephemeral, 703 void(const UINT32& param_size, 704 const TPMI_ECC_CURVE& curve_id, 705 AuthorizationDelegate* authorization_delegate, 706 const EC_EphemeralResponse& callback)); 707 MOCK_METHOD6(EC_EphemeralSync, 708 TPM_RC(const UINT32& param_size, 709 const TPMI_ECC_CURVE& curve_id, 710 UINT32* param_size_out, 711 TPM2B_ECC_POINT* q, 712 UINT16* counter, 713 AuthorizationDelegate* authorization_delegate)); 714 MOCK_METHOD6(VerifySignature, 715 void(const TPMI_DH_OBJECT& key_handle, 716 const std::string& key_handle_name, 717 const TPM2B_DIGEST& digest, 718 const TPMT_SIGNATURE& signature, 719 AuthorizationDelegate* authorization_delegate, 720 const VerifySignatureResponse& callback)); 721 MOCK_METHOD6(VerifySignatureSync, 722 TPM_RC(const TPMI_DH_OBJECT& key_handle, 723 const std::string& key_handle_name, 724 const TPM2B_DIGEST& digest, 725 const TPMT_SIGNATURE& signature, 726 TPMT_TK_VERIFIED* validation, 727 AuthorizationDelegate* authorization_delegate)); 728 MOCK_METHOD7(Sign, 729 void(const TPMI_DH_OBJECT& key_handle, 730 const std::string& key_handle_name, 731 const TPM2B_DIGEST& digest, 732 const TPMT_SIG_SCHEME& in_scheme, 733 const TPMT_TK_HASHCHECK& validation, 734 AuthorizationDelegate* authorization_delegate, 735 const SignResponse& callback)); 736 MOCK_METHOD7(SignSync, 737 TPM_RC(const TPMI_DH_OBJECT& key_handle, 738 const std::string& key_handle_name, 739 const TPM2B_DIGEST& digest, 740 const TPMT_SIG_SCHEME& in_scheme, 741 const TPMT_TK_HASHCHECK& validation, 742 TPMT_SIGNATURE* signature, 743 AuthorizationDelegate* authorization_delegate)); 744 MOCK_METHOD7(SetCommandCodeAuditStatus, 745 void(const TPMI_RH_PROVISION& auth, 746 const std::string& auth_name, 747 const TPMI_ALG_HASH& audit_alg, 748 const TPML_CC& set_list, 749 const TPML_CC& clear_list, 750 AuthorizationDelegate* authorization_delegate, 751 const SetCommandCodeAuditStatusResponse& callback)); 752 MOCK_METHOD6(SetCommandCodeAuditStatusSync, 753 TPM_RC(const TPMI_RH_PROVISION& auth, 754 const std::string& auth_name, 755 const TPMI_ALG_HASH& audit_alg, 756 const TPML_CC& set_list, 757 const TPML_CC& clear_list, 758 AuthorizationDelegate* authorization_delegate)); 759 MOCK_METHOD5(PCR_Extend, 760 void(const TPMI_DH_PCR& pcr_handle, 761 const std::string& pcr_handle_name, 762 const TPML_DIGEST_VALUES& digests, 763 AuthorizationDelegate* authorization_delegate, 764 const PCR_ExtendResponse& callback)); 765 MOCK_METHOD4(PCR_ExtendSync, 766 TPM_RC(const TPMI_DH_PCR& pcr_handle, 767 const std::string& pcr_handle_name, 768 const TPML_DIGEST_VALUES& digests, 769 AuthorizationDelegate* authorization_delegate)); 770 MOCK_METHOD5(PCR_Event, 771 void(const TPMI_DH_PCR& pcr_handle, 772 const std::string& pcr_handle_name, 773 const TPM2B_EVENT& event_data, 774 AuthorizationDelegate* authorization_delegate, 775 const PCR_EventResponse& callback)); 776 MOCK_METHOD5(PCR_EventSync, 777 TPM_RC(const TPMI_DH_PCR& pcr_handle, 778 const std::string& pcr_handle_name, 779 const TPM2B_EVENT& event_data, 780 TPML_DIGEST_VALUES* digests, 781 AuthorizationDelegate* authorization_delegate)); 782 MOCK_METHOD3(PCR_Read, 783 void(const TPML_PCR_SELECTION& pcr_selection_in, 784 AuthorizationDelegate* authorization_delegate, 785 const PCR_ReadResponse& callback)); 786 MOCK_METHOD5(PCR_ReadSync, 787 TPM_RC(const TPML_PCR_SELECTION& pcr_selection_in, 788 UINT32* pcr_update_counter, 789 TPML_PCR_SELECTION* pcr_selection_out, 790 TPML_DIGEST* pcr_values, 791 AuthorizationDelegate* authorization_delegate)); 792 MOCK_METHOD5(PCR_Allocate, 793 void(const TPMI_RH_PLATFORM& auth_handle, 794 const std::string& auth_handle_name, 795 const TPML_PCR_SELECTION& pcr_allocation, 796 AuthorizationDelegate* authorization_delegate, 797 const PCR_AllocateResponse& callback)); 798 MOCK_METHOD8(PCR_AllocateSync, 799 TPM_RC(const TPMI_RH_PLATFORM& auth_handle, 800 const std::string& auth_handle_name, 801 const TPML_PCR_SELECTION& pcr_allocation, 802 TPMI_YES_NO* allocation_success, 803 UINT32* max_pcr, 804 UINT32* size_needed, 805 UINT32* size_available, 806 AuthorizationDelegate* authorization_delegate)); 807 MOCK_METHOD8(PCR_SetAuthPolicy, 808 void(const TPMI_RH_PLATFORM& auth_handle, 809 const std::string& auth_handle_name, 810 const TPMI_DH_PCR& pcr_num, 811 const std::string& pcr_num_name, 812 const TPM2B_DIGEST& auth_policy, 813 const TPMI_ALG_HASH& policy_digest, 814 AuthorizationDelegate* authorization_delegate, 815 const PCR_SetAuthPolicyResponse& callback)); 816 MOCK_METHOD7(PCR_SetAuthPolicySync, 817 TPM_RC(const TPMI_RH_PLATFORM& auth_handle, 818 const std::string& auth_handle_name, 819 const TPMI_DH_PCR& pcr_num, 820 const std::string& pcr_num_name, 821 const TPM2B_DIGEST& auth_policy, 822 const TPMI_ALG_HASH& policy_digest, 823 AuthorizationDelegate* authorization_delegate)); 824 MOCK_METHOD5(PCR_SetAuthValue, 825 void(const TPMI_DH_PCR& pcr_handle, 826 const std::string& pcr_handle_name, 827 const TPM2B_DIGEST& auth, 828 AuthorizationDelegate* authorization_delegate, 829 const PCR_SetAuthValueResponse& callback)); 830 MOCK_METHOD4(PCR_SetAuthValueSync, 831 TPM_RC(const TPMI_DH_PCR& pcr_handle, 832 const std::string& pcr_handle_name, 833 const TPM2B_DIGEST& auth, 834 AuthorizationDelegate* authorization_delegate)); 835 MOCK_METHOD4(PCR_Reset, 836 void(const TPMI_DH_PCR& pcr_handle, 837 const std::string& pcr_handle_name, 838 AuthorizationDelegate* authorization_delegate, 839 const PCR_ResetResponse& callback)); 840 MOCK_METHOD3(PCR_ResetSync, 841 TPM_RC(const TPMI_DH_PCR& pcr_handle, 842 const std::string& pcr_handle_name, 843 AuthorizationDelegate* authorization_delegate)); 844 // Too many args to mock, forward to *Short version. 845 void PolicySigned(const TPMI_DH_OBJECT& auth_object, 846 const std::string& auth_object_name, 847 const TPMI_SH_POLICY& policy_session, 848 const std::string& policy_session_name, 849 const TPM2B_NONCE& nonce_tpm, 850 const TPM2B_DIGEST& cp_hash_a, 851 const TPM2B_NONCE& policy_ref, 852 const INT32& expiration, 853 const TPMT_SIGNATURE& auth, 854 AuthorizationDelegate* authorization_delegate, 855 const PolicySignedResponse& callback) override; 856 MOCK_METHOD9(PolicySignedShort, 857 void(const TPMI_DH_OBJECT& auth_object, 858 const TPMI_SH_POLICY& policy_session, 859 const TPM2B_NONCE& nonce_tpm, 860 const TPM2B_DIGEST& cp_hash_a, 861 const TPM2B_NONCE& policy_ref, 862 const INT32& expiration, 863 const TPMT_SIGNATURE& auth, 864 AuthorizationDelegate* authorization_delegate, 865 const PolicySignedResponse& callback)); 866 // Too many args to mock, forward to *Short version. 867 TPM_RC PolicySignedSync( 868 const TPMI_DH_OBJECT& auth_object, 869 const std::string& auth_object_name, 870 const TPMI_SH_POLICY& policy_session, 871 const std::string& policy_session_name, 872 const TPM2B_NONCE& nonce_tpm, 873 const TPM2B_DIGEST& cp_hash_a, 874 const TPM2B_NONCE& policy_ref, 875 const INT32& expiration, 876 const TPMT_SIGNATURE& auth, 877 TPM2B_TIMEOUT* timeout, 878 TPMT_TK_AUTH* policy_ticket, 879 AuthorizationDelegate* authorization_delegate) override; 880 MOCK_METHOD10(PolicySignedSyncShort, 881 TPM_RC(const TPMI_DH_OBJECT& auth_object, 882 const TPMI_SH_POLICY& policy_session, 883 const TPM2B_NONCE& nonce_tpm, 884 const TPM2B_DIGEST& cp_hash_a, 885 const TPM2B_NONCE& policy_ref, 886 const INT32& expiration, 887 const TPMT_SIGNATURE& auth, 888 TPM2B_TIMEOUT* timeout, 889 TPMT_TK_AUTH* policy_ticket, 890 AuthorizationDelegate* authorization_delegate)); 891 MOCK_METHOD10(PolicySecret, 892 void(const TPMI_DH_ENTITY& auth_handle, 893 const std::string& auth_handle_name, 894 const TPMI_SH_POLICY& policy_session, 895 const std::string& policy_session_name, 896 const TPM2B_NONCE& nonce_tpm, 897 const TPM2B_DIGEST& cp_hash_a, 898 const TPM2B_NONCE& policy_ref, 899 const INT32& expiration, 900 AuthorizationDelegate* authorization_delegate, 901 const PolicySecretResponse& callback)); 902 // Too many args to mock, forward to *Short version. 903 TPM_RC PolicySecretSync( 904 const TPMI_DH_ENTITY& auth_handle, 905 const std::string& auth_handle_name, 906 const TPMI_SH_POLICY& policy_session, 907 const std::string& policy_session_name, 908 const TPM2B_NONCE& nonce_tpm, 909 const TPM2B_DIGEST& cp_hash_a, 910 const TPM2B_NONCE& policy_ref, 911 const INT32& expiration, 912 TPM2B_TIMEOUT* timeout, 913 TPMT_TK_AUTH* policy_ticket, 914 AuthorizationDelegate* authorization_delegate) override; 915 MOCK_METHOD9(PolicySecretSyncShort, 916 TPM_RC(const TPMI_DH_ENTITY& auth_handle, 917 const TPMI_SH_POLICY& policy_session, 918 const TPM2B_NONCE& nonce_tpm, 919 const TPM2B_DIGEST& cp_hash_a, 920 const TPM2B_NONCE& policy_ref, 921 const INT32& expiration, 922 TPM2B_TIMEOUT* timeout, 923 TPMT_TK_AUTH* policy_ticket, 924 AuthorizationDelegate* authorization_delegate)); 925 MOCK_METHOD9(PolicyTicket, 926 void(const TPMI_SH_POLICY& policy_session, 927 const std::string& policy_session_name, 928 const TPM2B_TIMEOUT& timeout, 929 const TPM2B_DIGEST& cp_hash_a, 930 const TPM2B_NONCE& policy_ref, 931 const TPM2B_NAME& auth_name, 932 const TPMT_TK_AUTH& ticket, 933 AuthorizationDelegate* authorization_delegate, 934 const PolicyTicketResponse& callback)); 935 MOCK_METHOD8(PolicyTicketSync, 936 TPM_RC(const TPMI_SH_POLICY& policy_session, 937 const std::string& policy_session_name, 938 const TPM2B_TIMEOUT& timeout, 939 const TPM2B_DIGEST& cp_hash_a, 940 const TPM2B_NONCE& policy_ref, 941 const TPM2B_NAME& auth_name, 942 const TPMT_TK_AUTH& ticket, 943 AuthorizationDelegate* authorization_delegate)); 944 MOCK_METHOD5(PolicyOR, 945 void(const TPMI_SH_POLICY& policy_session, 946 const std::string& policy_session_name, 947 const TPML_DIGEST& p_hash_list, 948 AuthorizationDelegate* authorization_delegate, 949 const PolicyORResponse& callback)); 950 MOCK_METHOD4(PolicyORSync, 951 TPM_RC(const TPMI_SH_POLICY& policy_session, 952 const std::string& policy_session_name, 953 const TPML_DIGEST& p_hash_list, 954 AuthorizationDelegate* authorization_delegate)); 955 MOCK_METHOD6(PolicyPCR, 956 void(const TPMI_SH_POLICY& policy_session, 957 const std::string& policy_session_name, 958 const TPM2B_DIGEST& pcr_digest, 959 const TPML_PCR_SELECTION& pcrs, 960 AuthorizationDelegate* authorization_delegate, 961 const PolicyPCRResponse& callback)); 962 MOCK_METHOD5(PolicyPCRSync, 963 TPM_RC(const TPMI_SH_POLICY& policy_session, 964 const std::string& policy_session_name, 965 const TPM2B_DIGEST& pcr_digest, 966 const TPML_PCR_SELECTION& pcrs, 967 AuthorizationDelegate* authorization_delegate)); 968 MOCK_METHOD5(PolicyLocality, 969 void(const TPMI_SH_POLICY& policy_session, 970 const std::string& policy_session_name, 971 const TPMA_LOCALITY& locality, 972 AuthorizationDelegate* authorization_delegate, 973 const PolicyLocalityResponse& callback)); 974 MOCK_METHOD4(PolicyLocalitySync, 975 TPM_RC(const TPMI_SH_POLICY& policy_session, 976 const std::string& policy_session_name, 977 const TPMA_LOCALITY& locality, 978 AuthorizationDelegate* authorization_delegate)); 979 // Too many args to mock, forward to *Short version. 980 void PolicyNV(const TPMI_RH_NV_AUTH& auth_handle, 981 const std::string& auth_handle_name, 982 const TPMI_RH_NV_INDEX& nv_index, 983 const std::string& nv_index_name, 984 const TPMI_SH_POLICY& policy_session, 985 const std::string& policy_session_name, 986 const TPM2B_OPERAND& operand_b, 987 const UINT16& offset, 988 const TPM_EO& operation, 989 AuthorizationDelegate* authorization_delegate, 990 const PolicyNVResponse& callback) override; 991 MOCK_METHOD8(PolicyNVShort, 992 void(const TPMI_RH_NV_AUTH& auth_handle, 993 const TPMI_RH_NV_INDEX& nv_index, 994 const TPMI_SH_POLICY& policy_session, 995 const TPM2B_OPERAND& operand_b, 996 const UINT16& offset, 997 const TPM_EO& operation, 998 AuthorizationDelegate* authorization_delegate, 999 const PolicyNVResponse& callback)); 1000 MOCK_METHOD10(PolicyNVSync, 1001 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1002 const std::string& auth_handle_name, 1003 const TPMI_RH_NV_INDEX& nv_index, 1004 const std::string& nv_index_name, 1005 const TPMI_SH_POLICY& policy_session, 1006 const std::string& policy_session_name, 1007 const TPM2B_OPERAND& operand_b, 1008 const UINT16& offset, 1009 const TPM_EO& operation, 1010 AuthorizationDelegate* authorization_delegate)); 1011 MOCK_METHOD7(PolicyCounterTimer, 1012 void(const TPMI_SH_POLICY& policy_session, 1013 const std::string& policy_session_name, 1014 const TPM2B_OPERAND& operand_b, 1015 const UINT16& offset, 1016 const TPM_EO& operation, 1017 AuthorizationDelegate* authorization_delegate, 1018 const PolicyCounterTimerResponse& callback)); 1019 MOCK_METHOD6(PolicyCounterTimerSync, 1020 TPM_RC(const TPMI_SH_POLICY& policy_session, 1021 const std::string& policy_session_name, 1022 const TPM2B_OPERAND& operand_b, 1023 const UINT16& offset, 1024 const TPM_EO& operation, 1025 AuthorizationDelegate* authorization_delegate)); 1026 MOCK_METHOD5(PolicyCommandCode, 1027 void(const TPMI_SH_POLICY& policy_session, 1028 const std::string& policy_session_name, 1029 const TPM_CC& code, 1030 AuthorizationDelegate* authorization_delegate, 1031 const PolicyCommandCodeResponse& callback)); 1032 MOCK_METHOD4(PolicyCommandCodeSync, 1033 TPM_RC(const TPMI_SH_POLICY& policy_session, 1034 const std::string& policy_session_name, 1035 const TPM_CC& code, 1036 AuthorizationDelegate* authorization_delegate)); 1037 MOCK_METHOD4(PolicyPhysicalPresence, 1038 void(const TPMI_SH_POLICY& policy_session, 1039 const std::string& policy_session_name, 1040 AuthorizationDelegate* authorization_delegate, 1041 const PolicyPhysicalPresenceResponse& callback)); 1042 MOCK_METHOD3(PolicyPhysicalPresenceSync, 1043 TPM_RC(const TPMI_SH_POLICY& policy_session, 1044 const std::string& policy_session_name, 1045 AuthorizationDelegate* authorization_delegate)); 1046 MOCK_METHOD5(PolicyCpHash, 1047 void(const TPMI_SH_POLICY& policy_session, 1048 const std::string& policy_session_name, 1049 const TPM2B_DIGEST& cp_hash_a, 1050 AuthorizationDelegate* authorization_delegate, 1051 const PolicyCpHashResponse& callback)); 1052 MOCK_METHOD4(PolicyCpHashSync, 1053 TPM_RC(const TPMI_SH_POLICY& policy_session, 1054 const std::string& policy_session_name, 1055 const TPM2B_DIGEST& cp_hash_a, 1056 AuthorizationDelegate* authorization_delegate)); 1057 MOCK_METHOD5(PolicyNameHash, 1058 void(const TPMI_SH_POLICY& policy_session, 1059 const std::string& policy_session_name, 1060 const TPM2B_DIGEST& name_hash, 1061 AuthorizationDelegate* authorization_delegate, 1062 const PolicyNameHashResponse& callback)); 1063 MOCK_METHOD4(PolicyNameHashSync, 1064 TPM_RC(const TPMI_SH_POLICY& policy_session, 1065 const std::string& policy_session_name, 1066 const TPM2B_DIGEST& name_hash, 1067 AuthorizationDelegate* authorization_delegate)); 1068 MOCK_METHOD7(PolicyDuplicationSelect, 1069 void(const TPMI_SH_POLICY& policy_session, 1070 const std::string& policy_session_name, 1071 const TPM2B_NAME& object_name, 1072 const TPM2B_NAME& new_parent_name, 1073 const TPMI_YES_NO& include_object, 1074 AuthorizationDelegate* authorization_delegate, 1075 const PolicyDuplicationSelectResponse& callback)); 1076 MOCK_METHOD6(PolicyDuplicationSelectSync, 1077 TPM_RC(const TPMI_SH_POLICY& policy_session, 1078 const std::string& policy_session_name, 1079 const TPM2B_NAME& object_name, 1080 const TPM2B_NAME& new_parent_name, 1081 const TPMI_YES_NO& include_object, 1082 AuthorizationDelegate* authorization_delegate)); 1083 MOCK_METHOD8(PolicyAuthorize, 1084 void(const TPMI_SH_POLICY& policy_session, 1085 const std::string& policy_session_name, 1086 const TPM2B_DIGEST& approved_policy, 1087 const TPM2B_NONCE& policy_ref, 1088 const TPM2B_NAME& key_sign, 1089 const TPMT_TK_VERIFIED& check_ticket, 1090 AuthorizationDelegate* authorization_delegate, 1091 const PolicyAuthorizeResponse& callback)); 1092 MOCK_METHOD7(PolicyAuthorizeSync, 1093 TPM_RC(const TPMI_SH_POLICY& policy_session, 1094 const std::string& policy_session_name, 1095 const TPM2B_DIGEST& approved_policy, 1096 const TPM2B_NONCE& policy_ref, 1097 const TPM2B_NAME& key_sign, 1098 const TPMT_TK_VERIFIED& check_ticket, 1099 AuthorizationDelegate* authorization_delegate)); 1100 MOCK_METHOD4(PolicyAuthValue, 1101 void(const TPMI_SH_POLICY& policy_session, 1102 const std::string& policy_session_name, 1103 AuthorizationDelegate* authorization_delegate, 1104 const PolicyAuthValueResponse& callback)); 1105 MOCK_METHOD3(PolicyAuthValueSync, 1106 TPM_RC(const TPMI_SH_POLICY& policy_session, 1107 const std::string& policy_session_name, 1108 AuthorizationDelegate* authorization_delegate)); 1109 MOCK_METHOD4(PolicyPassword, 1110 void(const TPMI_SH_POLICY& policy_session, 1111 const std::string& policy_session_name, 1112 AuthorizationDelegate* authorization_delegate, 1113 const PolicyPasswordResponse& callback)); 1114 MOCK_METHOD3(PolicyPasswordSync, 1115 TPM_RC(const TPMI_SH_POLICY& policy_session, 1116 const std::string& policy_session_name, 1117 AuthorizationDelegate* authorization_delegate)); 1118 MOCK_METHOD4(PolicyGetDigest, 1119 void(const TPMI_SH_POLICY& policy_session, 1120 const std::string& policy_session_name, 1121 AuthorizationDelegate* authorization_delegate, 1122 const PolicyGetDigestResponse& callback)); 1123 MOCK_METHOD4(PolicyGetDigestSync, 1124 TPM_RC(const TPMI_SH_POLICY& policy_session, 1125 const std::string& policy_session_name, 1126 TPM2B_DIGEST* policy_digest, 1127 AuthorizationDelegate* authorization_delegate)); 1128 MOCK_METHOD5(PolicyNvWritten, 1129 void(const TPMI_SH_POLICY& policy_session, 1130 const std::string& policy_session_name, 1131 const TPMI_YES_NO& written_set, 1132 AuthorizationDelegate* authorization_delegate, 1133 const PolicyNvWrittenResponse& callback)); 1134 MOCK_METHOD4(PolicyNvWrittenSync, 1135 TPM_RC(const TPMI_SH_POLICY& policy_session, 1136 const std::string& policy_session_name, 1137 const TPMI_YES_NO& written_set, 1138 AuthorizationDelegate* authorization_delegate)); 1139 MOCK_METHOD8(CreatePrimary, 1140 void(const TPMI_RH_HIERARCHY& primary_handle, 1141 const std::string& primary_handle_name, 1142 const TPM2B_SENSITIVE_CREATE& in_sensitive, 1143 const TPM2B_PUBLIC& in_public, 1144 const TPM2B_DATA& outside_info, 1145 const TPML_PCR_SELECTION& creation_pcr, 1146 AuthorizationDelegate* authorization_delegate, 1147 const CreatePrimaryResponse& callback)); 1148 // Too many args to mock, forward to *Short version. 1149 TPM_RC CreatePrimarySync( 1150 const TPMI_RH_HIERARCHY& primary_handle, 1151 const std::string& primary_handle_name, 1152 const TPM2B_SENSITIVE_CREATE& in_sensitive, 1153 const TPM2B_PUBLIC& in_public, 1154 const TPM2B_DATA& outside_info, 1155 const TPML_PCR_SELECTION& creation_pcr, 1156 TPM_HANDLE* object_handle, 1157 TPM2B_PUBLIC* out_public, 1158 TPM2B_CREATION_DATA* creation_data, 1159 TPM2B_DIGEST* creation_hash, 1160 TPMT_TK_CREATION* creation_ticket, 1161 TPM2B_NAME* name, 1162 AuthorizationDelegate* authorization_delegate) override; 1163 MOCK_METHOD10(CreatePrimarySyncShort, 1164 TPM_RC(const TPMI_RH_HIERARCHY& primary_handle, 1165 const TPM2B_PUBLIC& in_public, 1166 const TPML_PCR_SELECTION& creation_pcr, 1167 TPM_HANDLE* object_handle, 1168 TPM2B_PUBLIC* out_public, 1169 TPM2B_CREATION_DATA* creation_data, 1170 TPM2B_DIGEST* creation_hash, 1171 TPMT_TK_CREATION* creation_ticket, 1172 TPM2B_NAME* name, 1173 AuthorizationDelegate* authorization_delegate)); 1174 MOCK_METHOD6(HierarchyControl, 1175 void(const TPMI_RH_HIERARCHY& auth_handle, 1176 const std::string& auth_handle_name, 1177 const TPMI_RH_ENABLES& enable, 1178 const TPMI_YES_NO& state, 1179 AuthorizationDelegate* authorization_delegate, 1180 const HierarchyControlResponse& callback)); 1181 MOCK_METHOD5(HierarchyControlSync, 1182 TPM_RC(const TPMI_RH_HIERARCHY& auth_handle, 1183 const std::string& auth_handle_name, 1184 const TPMI_RH_ENABLES& enable, 1185 const TPMI_YES_NO& state, 1186 AuthorizationDelegate* authorization_delegate)); 1187 MOCK_METHOD6(SetPrimaryPolicy, 1188 void(const TPMI_RH_HIERARCHY& auth_handle, 1189 const std::string& auth_handle_name, 1190 const TPM2B_DIGEST& auth_policy, 1191 const TPMI_ALG_HASH& hash_alg, 1192 AuthorizationDelegate* authorization_delegate, 1193 const SetPrimaryPolicyResponse& callback)); 1194 MOCK_METHOD5(SetPrimaryPolicySync, 1195 TPM_RC(const TPMI_RH_HIERARCHY& auth_handle, 1196 const std::string& auth_handle_name, 1197 const TPM2B_DIGEST& auth_policy, 1198 const TPMI_ALG_HASH& hash_alg, 1199 AuthorizationDelegate* authorization_delegate)); 1200 MOCK_METHOD4(ChangePPS, 1201 void(const TPMI_RH_PLATFORM& auth_handle, 1202 const std::string& auth_handle_name, 1203 AuthorizationDelegate* authorization_delegate, 1204 const ChangePPSResponse& callback)); 1205 MOCK_METHOD3(ChangePPSSync, 1206 TPM_RC(const TPMI_RH_PLATFORM& auth_handle, 1207 const std::string& auth_handle_name, 1208 AuthorizationDelegate* authorization_delegate)); 1209 MOCK_METHOD4(ChangeEPS, 1210 void(const TPMI_RH_PLATFORM& auth_handle, 1211 const std::string& auth_handle_name, 1212 AuthorizationDelegate* authorization_delegate, 1213 const ChangeEPSResponse& callback)); 1214 MOCK_METHOD3(ChangeEPSSync, 1215 TPM_RC(const TPMI_RH_PLATFORM& auth_handle, 1216 const std::string& auth_handle_name, 1217 AuthorizationDelegate* authorization_delegate)); 1218 MOCK_METHOD4(Clear, 1219 void(const TPMI_RH_CLEAR& auth_handle, 1220 const std::string& auth_handle_name, 1221 AuthorizationDelegate* authorization_delegate, 1222 const ClearResponse& callback)); 1223 MOCK_METHOD3(ClearSync, 1224 TPM_RC(const TPMI_RH_CLEAR& auth_handle, 1225 const std::string& auth_handle_name, 1226 AuthorizationDelegate* authorization_delegate)); 1227 MOCK_METHOD5(ClearControl, 1228 void(const TPMI_RH_CLEAR& auth, 1229 const std::string& auth_name, 1230 const TPMI_YES_NO& disable, 1231 AuthorizationDelegate* authorization_delegate, 1232 const ClearControlResponse& callback)); 1233 MOCK_METHOD4(ClearControlSync, 1234 TPM_RC(const TPMI_RH_CLEAR& auth, 1235 const std::string& auth_name, 1236 const TPMI_YES_NO& disable, 1237 AuthorizationDelegate* authorization_delegate)); 1238 MOCK_METHOD5(HierarchyChangeAuth, 1239 void(const TPMI_RH_HIERARCHY_AUTH& auth_handle, 1240 const std::string& auth_handle_name, 1241 const TPM2B_AUTH& new_auth, 1242 AuthorizationDelegate* authorization_delegate, 1243 const HierarchyChangeAuthResponse& callback)); 1244 MOCK_METHOD4(HierarchyChangeAuthSync, 1245 TPM_RC(const TPMI_RH_HIERARCHY_AUTH& auth_handle, 1246 const std::string& auth_handle_name, 1247 const TPM2B_AUTH& new_auth, 1248 AuthorizationDelegate* authorization_delegate)); 1249 MOCK_METHOD4(DictionaryAttackLockReset, 1250 void(const TPMI_RH_LOCKOUT& lock_handle, 1251 const std::string& lock_handle_name, 1252 AuthorizationDelegate* authorization_delegate, 1253 const DictionaryAttackLockResetResponse& callback)); 1254 MOCK_METHOD3(DictionaryAttackLockResetSync, 1255 TPM_RC(const TPMI_RH_LOCKOUT& lock_handle, 1256 const std::string& lock_handle_name, 1257 AuthorizationDelegate* authorization_delegate)); 1258 MOCK_METHOD7(DictionaryAttackParameters, 1259 void(const TPMI_RH_LOCKOUT& lock_handle, 1260 const std::string& lock_handle_name, 1261 const UINT32& new_max_tries, 1262 const UINT32& new_recovery_time, 1263 const UINT32& lockout_recovery, 1264 AuthorizationDelegate* authorization_delegate, 1265 const DictionaryAttackParametersResponse& callback)); 1266 MOCK_METHOD6(DictionaryAttackParametersSync, 1267 TPM_RC(const TPMI_RH_LOCKOUT& lock_handle, 1268 const std::string& lock_handle_name, 1269 const UINT32& new_max_tries, 1270 const UINT32& new_recovery_time, 1271 const UINT32& lockout_recovery, 1272 AuthorizationDelegate* authorization_delegate)); 1273 MOCK_METHOD6(PP_Commands, 1274 void(const TPMI_RH_PLATFORM& auth, 1275 const std::string& auth_name, 1276 const TPML_CC& set_list, 1277 const TPML_CC& clear_list, 1278 AuthorizationDelegate* authorization_delegate, 1279 const PP_CommandsResponse& callback)); 1280 MOCK_METHOD5(PP_CommandsSync, 1281 TPM_RC(const TPMI_RH_PLATFORM& auth, 1282 const std::string& auth_name, 1283 const TPML_CC& set_list, 1284 const TPML_CC& clear_list, 1285 AuthorizationDelegate* authorization_delegate)); 1286 MOCK_METHOD5(SetAlgorithmSet, 1287 void(const TPMI_RH_PLATFORM& auth_handle, 1288 const std::string& auth_handle_name, 1289 const UINT32& algorithm_set, 1290 AuthorizationDelegate* authorization_delegate, 1291 const SetAlgorithmSetResponse& callback)); 1292 MOCK_METHOD4(SetAlgorithmSetSync, 1293 TPM_RC(const TPMI_RH_PLATFORM& auth_handle, 1294 const std::string& auth_handle_name, 1295 const UINT32& algorithm_set, 1296 AuthorizationDelegate* authorization_delegate)); 1297 MOCK_METHOD8(FieldUpgradeStart, 1298 void(const TPMI_RH_PLATFORM& authorization, 1299 const std::string& authorization_name, 1300 const TPMI_DH_OBJECT& key_handle, 1301 const std::string& key_handle_name, 1302 const TPM2B_DIGEST& fu_digest, 1303 const TPMT_SIGNATURE& manifest_signature, 1304 AuthorizationDelegate* authorization_delegate, 1305 const FieldUpgradeStartResponse& callback)); 1306 MOCK_METHOD7(FieldUpgradeStartSync, 1307 TPM_RC(const TPMI_RH_PLATFORM& authorization, 1308 const std::string& authorization_name, 1309 const TPMI_DH_OBJECT& key_handle, 1310 const std::string& key_handle_name, 1311 const TPM2B_DIGEST& fu_digest, 1312 const TPMT_SIGNATURE& manifest_signature, 1313 AuthorizationDelegate* authorization_delegate)); 1314 MOCK_METHOD3(FieldUpgradeData, 1315 void(const TPM2B_MAX_BUFFER& fu_data, 1316 AuthorizationDelegate* authorization_delegate, 1317 const FieldUpgradeDataResponse& callback)); 1318 MOCK_METHOD4(FieldUpgradeDataSync, 1319 TPM_RC(const TPM2B_MAX_BUFFER& fu_data, 1320 TPMT_HA* next_digest, 1321 TPMT_HA* first_digest, 1322 AuthorizationDelegate* authorization_delegate)); 1323 MOCK_METHOD3(FirmwareRead, 1324 void(const UINT32& sequence_number, 1325 AuthorizationDelegate* authorization_delegate, 1326 const FirmwareReadResponse& callback)); 1327 MOCK_METHOD3(FirmwareReadSync, 1328 TPM_RC(const UINT32& sequence_number, 1329 TPM2B_MAX_BUFFER* fu_data, 1330 AuthorizationDelegate* authorization_delegate)); 1331 MOCK_METHOD4(ContextSave, 1332 void(const TPMI_DH_CONTEXT& save_handle, 1333 const std::string& save_handle_name, 1334 AuthorizationDelegate* authorization_delegate, 1335 const ContextSaveResponse& callback)); 1336 MOCK_METHOD4(ContextSaveSync, 1337 TPM_RC(const TPMI_DH_CONTEXT& save_handle, 1338 const std::string& save_handle_name, 1339 TPMS_CONTEXT* context, 1340 AuthorizationDelegate* authorization_delegate)); 1341 MOCK_METHOD3(ContextLoad, 1342 void(const TPMS_CONTEXT& context, 1343 AuthorizationDelegate* authorization_delegate, 1344 const ContextLoadResponse& callback)); 1345 MOCK_METHOD3(ContextLoadSync, 1346 TPM_RC(const TPMS_CONTEXT& context, 1347 TPMI_DH_CONTEXT* loaded_handle, 1348 AuthorizationDelegate* authorization_delegate)); 1349 MOCK_METHOD3(FlushContext, 1350 void(const TPMI_DH_CONTEXT& flush_handle, 1351 AuthorizationDelegate* authorization_delegate, 1352 const FlushContextResponse& callback)); 1353 MOCK_METHOD2(FlushContextSync, 1354 TPM_RC(const TPMI_DH_CONTEXT& flush_handle, 1355 AuthorizationDelegate* authorization_delegate)); 1356 MOCK_METHOD7(EvictControl, 1357 void(const TPMI_RH_PROVISION& auth, 1358 const std::string& auth_name, 1359 const TPMI_DH_OBJECT& object_handle, 1360 const std::string& object_handle_name, 1361 const TPMI_DH_PERSISTENT& persistent_handle, 1362 AuthorizationDelegate* authorization_delegate, 1363 const EvictControlResponse& callback)); 1364 MOCK_METHOD6(EvictControlSync, 1365 TPM_RC(const TPMI_RH_PROVISION& auth, 1366 const std::string& auth_name, 1367 const TPMI_DH_OBJECT& object_handle, 1368 const std::string& object_handle_name, 1369 const TPMI_DH_PERSISTENT& persistent_handle, 1370 AuthorizationDelegate* authorization_delegate)); 1371 MOCK_METHOD2(ReadClock, 1372 void(AuthorizationDelegate* authorization_delegate, 1373 const ReadClockResponse& callback)); 1374 MOCK_METHOD2(ReadClockSync, 1375 TPM_RC(TPMS_TIME_INFO* current_time, 1376 AuthorizationDelegate* authorization_delegate)); 1377 MOCK_METHOD5(ClockSet, 1378 void(const TPMI_RH_PROVISION& auth, 1379 const std::string& auth_name, 1380 const UINT64& new_time, 1381 AuthorizationDelegate* authorization_delegate, 1382 const ClockSetResponse& callback)); 1383 MOCK_METHOD4(ClockSetSync, 1384 TPM_RC(const TPMI_RH_PROVISION& auth, 1385 const std::string& auth_name, 1386 const UINT64& new_time, 1387 AuthorizationDelegate* authorization_delegate)); 1388 MOCK_METHOD5(ClockRateAdjust, 1389 void(const TPMI_RH_PROVISION& auth, 1390 const std::string& auth_name, 1391 const TPM_CLOCK_ADJUST& rate_adjust, 1392 AuthorizationDelegate* authorization_delegate, 1393 const ClockRateAdjustResponse& callback)); 1394 MOCK_METHOD4(ClockRateAdjustSync, 1395 TPM_RC(const TPMI_RH_PROVISION& auth, 1396 const std::string& auth_name, 1397 const TPM_CLOCK_ADJUST& rate_adjust, 1398 AuthorizationDelegate* authorization_delegate)); 1399 MOCK_METHOD5(GetCapability, 1400 void(const TPM_CAP& capability, 1401 const UINT32& property, 1402 const UINT32& property_count, 1403 AuthorizationDelegate* authorization_delegate, 1404 const GetCapabilityResponse& callback)); 1405 MOCK_METHOD6(GetCapabilitySync, 1406 TPM_RC(const TPM_CAP& capability, 1407 const UINT32& property, 1408 const UINT32& property_count, 1409 TPMI_YES_NO* more_data, 1410 TPMS_CAPABILITY_DATA* capability_data, 1411 AuthorizationDelegate* authorization_delegate)); 1412 MOCK_METHOD3(TestParms, 1413 void(const TPMT_PUBLIC_PARMS& parameters, 1414 AuthorizationDelegate* authorization_delegate, 1415 const TestParmsResponse& callback)); 1416 MOCK_METHOD2(TestParmsSync, 1417 TPM_RC(const TPMT_PUBLIC_PARMS& parameters, 1418 AuthorizationDelegate* authorization_delegate)); 1419 MOCK_METHOD6(NV_DefineSpace, 1420 void(const TPMI_RH_PROVISION& auth_handle, 1421 const std::string& auth_handle_name, 1422 const TPM2B_AUTH& auth, 1423 const TPM2B_NV_PUBLIC& public_info, 1424 AuthorizationDelegate* authorization_delegate, 1425 const NV_DefineSpaceResponse& callback)); 1426 MOCK_METHOD5(NV_DefineSpaceSync, 1427 TPM_RC(const TPMI_RH_PROVISION& auth_handle, 1428 const std::string& auth_handle_name, 1429 const TPM2B_AUTH& auth, 1430 const TPM2B_NV_PUBLIC& public_info, 1431 AuthorizationDelegate* authorization_delegate)); 1432 MOCK_METHOD6(NV_UndefineSpace, 1433 void(const TPMI_RH_PROVISION& auth_handle, 1434 const std::string& auth_handle_name, 1435 const TPMI_RH_NV_INDEX& nv_index, 1436 const std::string& nv_index_name, 1437 AuthorizationDelegate* authorization_delegate, 1438 const NV_UndefineSpaceResponse& callback)); 1439 MOCK_METHOD5(NV_UndefineSpaceSync, 1440 TPM_RC(const TPMI_RH_PROVISION& auth_handle, 1441 const std::string& auth_handle_name, 1442 const TPMI_RH_NV_INDEX& nv_index, 1443 const std::string& nv_index_name, 1444 AuthorizationDelegate* authorization_delegate)); 1445 MOCK_METHOD6(NV_UndefineSpaceSpecial, 1446 void(const TPMI_RH_NV_INDEX& nv_index, 1447 const std::string& nv_index_name, 1448 const TPMI_RH_PLATFORM& platform, 1449 const std::string& platform_name, 1450 AuthorizationDelegate* authorization_delegate, 1451 const NV_UndefineSpaceSpecialResponse& callback)); 1452 MOCK_METHOD5(NV_UndefineSpaceSpecialSync, 1453 TPM_RC(const TPMI_RH_NV_INDEX& nv_index, 1454 const std::string& nv_index_name, 1455 const TPMI_RH_PLATFORM& platform, 1456 const std::string& platform_name, 1457 AuthorizationDelegate* authorization_delegate)); 1458 MOCK_METHOD4(NV_ReadPublic, 1459 void(const TPMI_RH_NV_INDEX& nv_index, 1460 const std::string& nv_index_name, 1461 AuthorizationDelegate* authorization_delegate, 1462 const NV_ReadPublicResponse& callback)); 1463 MOCK_METHOD5(NV_ReadPublicSync, 1464 TPM_RC(const TPMI_RH_NV_INDEX& nv_index, 1465 const std::string& nv_index_name, 1466 TPM2B_NV_PUBLIC* nv_public, 1467 TPM2B_NAME* nv_name, 1468 AuthorizationDelegate* authorization_delegate)); 1469 MOCK_METHOD8(NV_Write, 1470 void(const TPMI_RH_NV_AUTH& auth_handle, 1471 const std::string& auth_handle_name, 1472 const TPMI_RH_NV_INDEX& nv_index, 1473 const std::string& nv_index_name, 1474 const TPM2B_MAX_NV_BUFFER& data, 1475 const UINT16& offset, 1476 AuthorizationDelegate* authorization_delegate, 1477 const NV_WriteResponse& callback)); 1478 MOCK_METHOD7(NV_WriteSync, 1479 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1480 const std::string& auth_handle_name, 1481 const TPMI_RH_NV_INDEX& nv_index, 1482 const std::string& nv_index_name, 1483 const TPM2B_MAX_NV_BUFFER& data, 1484 const UINT16& offset, 1485 AuthorizationDelegate* authorization_delegate)); 1486 MOCK_METHOD6(NV_Increment, 1487 void(const TPMI_RH_NV_AUTH& auth_handle, 1488 const std::string& auth_handle_name, 1489 const TPMI_RH_NV_INDEX& nv_index, 1490 const std::string& nv_index_name, 1491 AuthorizationDelegate* authorization_delegate, 1492 const NV_IncrementResponse& callback)); 1493 MOCK_METHOD5(NV_IncrementSync, 1494 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1495 const std::string& auth_handle_name, 1496 const TPMI_RH_NV_INDEX& nv_index, 1497 const std::string& nv_index_name, 1498 AuthorizationDelegate* authorization_delegate)); 1499 MOCK_METHOD7(NV_Extend, 1500 void(const TPMI_RH_NV_AUTH& auth_handle, 1501 const std::string& auth_handle_name, 1502 const TPMI_RH_NV_INDEX& nv_index, 1503 const std::string& nv_index_name, 1504 const TPM2B_MAX_NV_BUFFER& data, 1505 AuthorizationDelegate* authorization_delegate, 1506 const NV_ExtendResponse& callback)); 1507 MOCK_METHOD6(NV_ExtendSync, 1508 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1509 const std::string& auth_handle_name, 1510 const TPMI_RH_NV_INDEX& nv_index, 1511 const std::string& nv_index_name, 1512 const TPM2B_MAX_NV_BUFFER& data, 1513 AuthorizationDelegate* authorization_delegate)); 1514 MOCK_METHOD7(NV_SetBits, 1515 void(const TPMI_RH_NV_AUTH& auth_handle, 1516 const std::string& auth_handle_name, 1517 const TPMI_RH_NV_INDEX& nv_index, 1518 const std::string& nv_index_name, 1519 const UINT64& bits, 1520 AuthorizationDelegate* authorization_delegate, 1521 const NV_SetBitsResponse& callback)); 1522 MOCK_METHOD6(NV_SetBitsSync, 1523 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1524 const std::string& auth_handle_name, 1525 const TPMI_RH_NV_INDEX& nv_index, 1526 const std::string& nv_index_name, 1527 const UINT64& bits, 1528 AuthorizationDelegate* authorization_delegate)); 1529 MOCK_METHOD6(NV_WriteLock, 1530 void(const TPMI_RH_NV_AUTH& auth_handle, 1531 const std::string& auth_handle_name, 1532 const TPMI_RH_NV_INDEX& nv_index, 1533 const std::string& nv_index_name, 1534 AuthorizationDelegate* authorization_delegate, 1535 const NV_WriteLockResponse& callback)); 1536 MOCK_METHOD5(NV_WriteLockSync, 1537 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1538 const std::string& auth_handle_name, 1539 const TPMI_RH_NV_INDEX& nv_index, 1540 const std::string& nv_index_name, 1541 AuthorizationDelegate* authorization_delegate)); 1542 MOCK_METHOD4(NV_GlobalWriteLock, 1543 void(const TPMI_RH_PROVISION& auth_handle, 1544 const std::string& auth_handle_name, 1545 AuthorizationDelegate* authorization_delegate, 1546 const NV_GlobalWriteLockResponse& callback)); 1547 MOCK_METHOD3(NV_GlobalWriteLockSync, 1548 TPM_RC(const TPMI_RH_PROVISION& auth_handle, 1549 const std::string& auth_handle_name, 1550 AuthorizationDelegate* authorization_delegate)); 1551 MOCK_METHOD8(NV_Read, 1552 void(const TPMI_RH_NV_AUTH& auth_handle, 1553 const std::string& auth_handle_name, 1554 const TPMI_RH_NV_INDEX& nv_index, 1555 const std::string& nv_index_name, 1556 const UINT16& size, 1557 const UINT16& offset, 1558 AuthorizationDelegate* authorization_delegate, 1559 const NV_ReadResponse& callback)); 1560 MOCK_METHOD8(NV_ReadSync, 1561 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1562 const std::string& auth_handle_name, 1563 const TPMI_RH_NV_INDEX& nv_index, 1564 const std::string& nv_index_name, 1565 const UINT16& size, 1566 const UINT16& offset, 1567 TPM2B_MAX_NV_BUFFER* data, 1568 AuthorizationDelegate* authorization_delegate)); 1569 MOCK_METHOD6(NV_ReadLock, 1570 void(const TPMI_RH_NV_AUTH& auth_handle, 1571 const std::string& auth_handle_name, 1572 const TPMI_RH_NV_INDEX& nv_index, 1573 const std::string& nv_index_name, 1574 AuthorizationDelegate* authorization_delegate, 1575 const NV_ReadLockResponse& callback)); 1576 MOCK_METHOD5(NV_ReadLockSync, 1577 TPM_RC(const TPMI_RH_NV_AUTH& auth_handle, 1578 const std::string& auth_handle_name, 1579 const TPMI_RH_NV_INDEX& nv_index, 1580 const std::string& nv_index_name, 1581 AuthorizationDelegate* authorization_delegate)); 1582 MOCK_METHOD5(NV_ChangeAuth, 1583 void(const TPMI_RH_NV_INDEX& nv_index, 1584 const std::string& nv_index_name, 1585 const TPM2B_AUTH& new_auth, 1586 AuthorizationDelegate* authorization_delegate, 1587 const NV_ChangeAuthResponse& callback)); 1588 MOCK_METHOD4(NV_ChangeAuthSync, 1589 TPM_RC(const TPMI_RH_NV_INDEX& nv_index, 1590 const std::string& nv_index_name, 1591 const TPM2B_AUTH& new_auth, 1592 AuthorizationDelegate* authorization_delegate)); 1593 // Too many args to mock, forward to *Short version. 1594 void NV_Certify(const TPMI_DH_OBJECT& sign_handle, 1595 const std::string& sign_handle_name, 1596 const TPMI_RH_NV_AUTH& auth_handle, 1597 const std::string& auth_handle_name, 1598 const TPMI_RH_NV_INDEX& nv_index, 1599 const std::string& nv_index_name, 1600 const TPM2B_DATA& qualifying_data, 1601 const TPMT_SIG_SCHEME& in_scheme, 1602 const UINT16& size, 1603 const UINT16& offset, 1604 AuthorizationDelegate* authorization_delegate, 1605 const NV_CertifyResponse& callback) override; 1606 MOCK_METHOD9(NV_CertifyShort, 1607 void(const TPMI_DH_OBJECT& sign_handle, 1608 const TPMI_RH_NV_AUTH& auth_handle, 1609 const TPMI_RH_NV_INDEX& nv_index, 1610 const TPM2B_DATA& qualifying_data, 1611 const TPMT_SIG_SCHEME& in_scheme, 1612 const UINT16& size, 1613 const UINT16& offset, 1614 AuthorizationDelegate* authorization_delegate, 1615 const NV_CertifyResponse& callback)); 1616 // Too many args to mock, forward to *Short version. 1617 TPM_RC NV_CertifySync(const TPMI_DH_OBJECT& sign_handle, 1618 const std::string& sign_handle_name, 1619 const TPMI_RH_NV_AUTH& auth_handle, 1620 const std::string& auth_handle_name, 1621 const TPMI_RH_NV_INDEX& nv_index, 1622 const std::string& nv_index_name, 1623 const TPM2B_DATA& qualifying_data, 1624 const TPMT_SIG_SCHEME& in_scheme, 1625 const UINT16& size, 1626 const UINT16& offset, 1627 TPM2B_ATTEST* certify_info, 1628 TPMT_SIGNATURE* signature, 1629 AuthorizationDelegate* authorization_delegate) override; 1630 MOCK_METHOD10(NV_CertifySyncShort, 1631 TPM_RC(const TPMI_DH_OBJECT& sign_handle, 1632 const TPMI_RH_NV_AUTH& auth_handle, 1633 const TPMI_RH_NV_INDEX& nv_index, 1634 const TPM2B_DATA& qualifying_data, 1635 const TPMT_SIG_SCHEME& in_scheme, 1636 const UINT16& size, 1637 const UINT16& offset, 1638 TPM2B_ATTEST* certify_info, 1639 TPMT_SIGNATURE* signature, 1640 AuthorizationDelegate* authorization_delegate)); 1641}; 1642 1643} // namespace trunks 1644 1645#endif // TRUNKS_MOCK_TPM_H_ 1646