Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: chromeos/dbus/cryptohome_client.cc

Issue 14305009: Enhanced and refactored the AttestationFlow interface. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased again Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chromeos/dbus/cryptohome_client.h ('k') | chromeos/dbus/fake_cryptohome_client.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chromeos/dbus/cryptohome_client.h" 5 #include "chromeos/dbus/cryptohome_client.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "chromeos/cryptohome/async_method_caller.h" 9 #include "chromeos/cryptohome/async_method_caller.h"
10 #include "chromeos/dbus/blocking_method_caller.h" 10 #include "chromeos/dbus/blocking_method_caller.h"
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after
405 } 405 }
406 406
407 // CryptohomeClient override. 407 // CryptohomeClient override.
408 virtual void AsyncTpmAttestationCreateCertRequest( 408 virtual void AsyncTpmAttestationCreateCertRequest(
409 int options, 409 int options,
410 const AsyncMethodCallback& callback) OVERRIDE { 410 const AsyncMethodCallback& callback) OVERRIDE {
411 dbus::MethodCall method_call( 411 dbus::MethodCall method_call(
412 cryptohome::kCryptohomeInterface, 412 cryptohome::kCryptohomeInterface,
413 cryptohome::kCryptohomeAsyncTpmAttestationCreateCertRequest); 413 cryptohome::kCryptohomeAsyncTpmAttestationCreateCertRequest);
414 dbus::MessageWriter writer(&method_call); 414 dbus::MessageWriter writer(&method_call);
415 bool include_stable_id = (options & INCLUDE_STABLE_ID); 415 bool include_stable_id =
416 (options & attestation::CERTIFICATE_INCLUDE_STABLE_ID);
416 writer.AppendBool(include_stable_id); 417 writer.AppendBool(include_stable_id);
417 bool include_device_state = (options & INCLUDE_DEVICE_STATE); 418 bool include_device_state =
419 (options & attestation::CERTIFICATE_INCLUDE_DEVICE_STATE);
418 writer.AppendBool(include_device_state); 420 writer.AppendBool(include_device_state);
419 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 421 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
420 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, 422 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
421 weak_ptr_factory_.GetWeakPtr(), 423 weak_ptr_factory_.GetWeakPtr(),
422 callback)); 424 callback));
423 } 425 }
424 426
425 // CryptohomeClient override. 427 // CryptohomeClient override.
426 virtual void AsyncTpmAttestationFinishCertRequest( 428 virtual void AsyncTpmAttestationFinishCertRequest(
427 const std::string& pca_response, 429 const std::string& pca_response,
428 AttestationKeyType key_type, 430 attestation::AttestationKeyType key_type,
429 const std::string& key_name, 431 const std::string& key_name,
430 const AsyncMethodCallback& callback) OVERRIDE { 432 const AsyncMethodCallback& callback) OVERRIDE {
431 dbus::MethodCall method_call( 433 dbus::MethodCall method_call(
432 cryptohome::kCryptohomeInterface, 434 cryptohome::kCryptohomeInterface,
433 cryptohome::kCryptohomeAsyncTpmAttestationFinishCertRequest); 435 cryptohome::kCryptohomeAsyncTpmAttestationFinishCertRequest);
434 dbus::MessageWriter writer(&method_call); 436 dbus::MessageWriter writer(&method_call);
435 writer.AppendArrayOfBytes( 437 writer.AppendArrayOfBytes(
436 reinterpret_cast<const uint8*>(pca_response.data()), 438 reinterpret_cast<const uint8*>(pca_response.data()),
437 pca_response.size()); 439 pca_response.size());
438 bool is_user_specific = (key_type == USER_KEY); 440 bool is_user_specific = (key_type == attestation::KEY_USER);
439 writer.AppendBool(is_user_specific); 441 writer.AppendBool(is_user_specific);
440 writer.AppendString(key_name); 442 writer.AppendString(key_name);
441 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 443 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
442 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, 444 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
443 weak_ptr_factory_.GetWeakPtr(), 445 weak_ptr_factory_.GetWeakPtr(),
444 callback)); 446 callback));
445 } 447 }
446 448
447 // CryptohomeClient override. 449 // CryptohomeClient override.
448 virtual void TpmAttestationDoesKeyExist( 450 virtual void TpmAttestationDoesKeyExist(
449 AttestationKeyType key_type, 451 attestation::AttestationKeyType key_type,
450 const std::string& key_name, 452 const std::string& key_name,
451 const BoolDBusMethodCallback& callback) OVERRIDE { 453 const BoolDBusMethodCallback& callback) OVERRIDE {
452 dbus::MethodCall method_call( 454 dbus::MethodCall method_call(
453 cryptohome::kCryptohomeInterface, 455 cryptohome::kCryptohomeInterface,
454 cryptohome::kCryptohomeTpmAttestationDoesKeyExist); 456 cryptohome::kCryptohomeTpmAttestationDoesKeyExist);
455 dbus::MessageWriter writer(&method_call); 457 dbus::MessageWriter writer(&method_call);
456 bool is_user_specific = (key_type == USER_KEY); 458 bool is_user_specific = (key_type == attestation::KEY_USER);
457 writer.AppendBool(is_user_specific); 459 writer.AppendBool(is_user_specific);
458 writer.AppendString(key_name); 460 writer.AppendString(key_name);
459 CallBoolMethod(&method_call, callback); 461 CallBoolMethod(&method_call, callback);
460 } 462 }
461 463
462 // CryptohomeClient override. 464 // CryptohomeClient override.
463 virtual void TpmAttestationGetCertificate( 465 virtual void TpmAttestationGetCertificate(
464 AttestationKeyType key_type, 466 attestation::AttestationKeyType key_type,
465 const std::string& key_name, 467 const std::string& key_name,
466 const DataMethodCallback& callback) OVERRIDE { 468 const DataMethodCallback& callback) OVERRIDE {
467 dbus::MethodCall method_call( 469 dbus::MethodCall method_call(
468 cryptohome::kCryptohomeInterface, 470 cryptohome::kCryptohomeInterface,
469 cryptohome::kCryptohomeTpmAttestationGetCertificate); 471 cryptohome::kCryptohomeTpmAttestationGetCertificate);
470 dbus::MessageWriter writer(&method_call); 472 dbus::MessageWriter writer(&method_call);
471 bool is_user_specific = (key_type == USER_KEY); 473 bool is_user_specific = (key_type == attestation::KEY_USER);
472 writer.AppendBool(is_user_specific); 474 writer.AppendBool(is_user_specific);
473 writer.AppendString(key_name); 475 writer.AppendString(key_name);
474 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 476 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
475 base::Bind(&CryptohomeClientImpl::OnDataMethod, 477 base::Bind(&CryptohomeClientImpl::OnDataMethod,
476 weak_ptr_factory_.GetWeakPtr(), 478 weak_ptr_factory_.GetWeakPtr(),
477 callback)); 479 callback));
478 } 480 }
479 481
480 // CryptohomeClient override. 482 // CryptohomeClient override.
481 virtual void TpmAttestationGetPublicKey( 483 virtual void TpmAttestationGetPublicKey(
482 AttestationKeyType key_type, 484 attestation::AttestationKeyType key_type,
483 const std::string& key_name, 485 const std::string& key_name,
484 const DataMethodCallback& callback) OVERRIDE { 486 const DataMethodCallback& callback) OVERRIDE {
485 dbus::MethodCall method_call( 487 dbus::MethodCall method_call(
486 cryptohome::kCryptohomeInterface, 488 cryptohome::kCryptohomeInterface,
487 cryptohome::kCryptohomeTpmAttestationGetPublicKey); 489 cryptohome::kCryptohomeTpmAttestationGetPublicKey);
488 dbus::MessageWriter writer(&method_call); 490 dbus::MessageWriter writer(&method_call);
489 bool is_user_specific = (key_type == USER_KEY); 491 bool is_user_specific = (key_type == attestation::KEY_USER);
490 writer.AppendBool(is_user_specific); 492 writer.AppendBool(is_user_specific);
491 writer.AppendString(key_name); 493 writer.AppendString(key_name);
492 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 494 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
493 base::Bind(&CryptohomeClientImpl::OnDataMethod, 495 base::Bind(&CryptohomeClientImpl::OnDataMethod,
494 weak_ptr_factory_.GetWeakPtr(), 496 weak_ptr_factory_.GetWeakPtr(),
495 callback)); 497 callback));
496 } 498 }
497 499
498 // CryptohomeClient override. 500 // CryptohomeClient override.
499 virtual void TpmAttestationRegisterKey( 501 virtual void TpmAttestationRegisterKey(
500 AttestationKeyType key_type, 502 attestation::AttestationKeyType key_type,
501 const std::string& key_name, 503 const std::string& key_name,
502 const AsyncMethodCallback& callback) OVERRIDE { 504 const AsyncMethodCallback& callback) OVERRIDE {
503 dbus::MethodCall method_call( 505 dbus::MethodCall method_call(
504 cryptohome::kCryptohomeInterface, 506 cryptohome::kCryptohomeInterface,
505 cryptohome::kCryptohomeTpmAttestationRegisterKey); 507 cryptohome::kCryptohomeTpmAttestationRegisterKey);
506 dbus::MessageWriter writer(&method_call); 508 dbus::MessageWriter writer(&method_call);
507 bool is_user_specific = (key_type == USER_KEY); 509 bool is_user_specific = (key_type == attestation::KEY_USER);
508 writer.AppendBool(is_user_specific); 510 writer.AppendBool(is_user_specific);
509 writer.AppendString(key_name); 511 writer.AppendString(key_name);
510 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 512 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
511 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, 513 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
512 weak_ptr_factory_.GetWeakPtr(), 514 weak_ptr_factory_.GetWeakPtr(),
513 callback)); 515 callback));
514 } 516 }
515 517
516 // CryptohomeClient override. 518 // CryptohomeClient override.
517 virtual void TpmAttestationSignEnterpriseChallenge( 519 virtual void TpmAttestationSignEnterpriseChallenge(
518 AttestationKeyType key_type, 520 attestation::AttestationKeyType key_type,
519 const std::string& key_name, 521 const std::string& key_name,
520 const std::string& domain, 522 const std::string& domain,
521 const std::string& device_id, 523 const std::string& device_id,
522 AttestationChallengeOptions options, 524 attestation::AttestationChallengeOptions options,
523 const std::string& challenge, 525 const std::string& challenge,
524 const AsyncMethodCallback& callback) OVERRIDE { 526 const AsyncMethodCallback& callback) OVERRIDE {
525 dbus::MethodCall method_call( 527 dbus::MethodCall method_call(
526 cryptohome::kCryptohomeInterface, 528 cryptohome::kCryptohomeInterface,
527 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); 529 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge);
528 dbus::MessageWriter writer(&method_call); 530 dbus::MessageWriter writer(&method_call);
529 bool is_user_specific = (key_type == USER_KEY); 531 bool is_user_specific = (key_type == attestation::KEY_USER);
530 writer.AppendBool(is_user_specific); 532 writer.AppendBool(is_user_specific);
531 writer.AppendString(key_name); 533 writer.AppendString(key_name);
532 writer.AppendString(domain); 534 writer.AppendString(domain);
533 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(device_id.data()), 535 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(device_id.data()),
534 device_id.size()); 536 device_id.size());
535 bool include_signed_public_key = (options & INCLUDE_SIGNED_PUBLIC_KEY); 537 bool include_signed_public_key =
538 (options & attestation::CHALLENGE_INCLUDE_SIGNED_PUBLIC_KEY);
536 writer.AppendBool(include_signed_public_key); 539 writer.AppendBool(include_signed_public_key);
537 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), 540 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()),
538 challenge.size()); 541 challenge.size());
539 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 542 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
540 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, 543 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
541 weak_ptr_factory_.GetWeakPtr(), 544 weak_ptr_factory_.GetWeakPtr(),
542 callback)); 545 callback));
543 } 546 }
544 547
545 // CryptohomeClient override. 548 // CryptohomeClient override.
546 virtual void TpmAttestationSignSimpleChallenge( 549 virtual void TpmAttestationSignSimpleChallenge(
547 AttestationKeyType key_type, 550 attestation::AttestationKeyType key_type,
548 const std::string& key_name, 551 const std::string& key_name,
549 const std::string& challenge, 552 const std::string& challenge,
550 const AsyncMethodCallback& callback) OVERRIDE { 553 const AsyncMethodCallback& callback) OVERRIDE {
551 dbus::MethodCall method_call( 554 dbus::MethodCall method_call(
552 cryptohome::kCryptohomeInterface, 555 cryptohome::kCryptohomeInterface,
553 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); 556 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge);
554 dbus::MessageWriter writer(&method_call); 557 dbus::MessageWriter writer(&method_call);
555 bool is_user_specific = (key_type == USER_KEY); 558 bool is_user_specific = (key_type == attestation::KEY_USER);
556 writer.AppendBool(is_user_specific); 559 writer.AppendBool(is_user_specific);
557 writer.AppendString(key_name); 560 writer.AppendString(key_name);
558 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), 561 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()),
559 challenge.size()); 562 challenge.size());
560 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 563 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
561 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, 564 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
562 weak_ptr_factory_.GetWeakPtr(), 565 weak_ptr_factory_.GetWeakPtr(),
563 callback)); 566 callback));
564 } 567 }
565 568
566 // CryptohomeClient override. 569 // CryptohomeClient override.
567 virtual void TpmAttestationGetKeyPayload( 570 virtual void TpmAttestationGetKeyPayload(
568 AttestationKeyType key_type, 571 attestation::AttestationKeyType key_type,
569 const std::string& key_name, 572 const std::string& key_name,
570 const DataMethodCallback& callback) OVERRIDE { 573 const DataMethodCallback& callback) OVERRIDE {
571 dbus::MethodCall method_call( 574 dbus::MethodCall method_call(
572 cryptohome::kCryptohomeInterface, 575 cryptohome::kCryptohomeInterface,
573 cryptohome::kCryptohomeTpmAttestationGetKeyPayload); 576 cryptohome::kCryptohomeTpmAttestationGetKeyPayload);
574 dbus::MessageWriter writer(&method_call); 577 dbus::MessageWriter writer(&method_call);
575 bool is_user_specific = (key_type == USER_KEY); 578 bool is_user_specific = (key_type == attestation::KEY_USER);
576 writer.AppendBool(is_user_specific); 579 writer.AppendBool(is_user_specific);
577 writer.AppendString(key_name); 580 writer.AppendString(key_name);
578 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 581 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
579 base::Bind(&CryptohomeClientImpl::OnDataMethod, 582 base::Bind(&CryptohomeClientImpl::OnDataMethod,
580 weak_ptr_factory_.GetWeakPtr(), 583 weak_ptr_factory_.GetWeakPtr(),
581 callback)); 584 callback));
582 } 585 }
583 586
584 // CryptohomeClient override. 587 // CryptohomeClient override.
585 virtual void TpmAttestationSetKeyPayload( 588 virtual void TpmAttestationSetKeyPayload(
586 AttestationKeyType key_type, 589 attestation::AttestationKeyType key_type,
587 const std::string& key_name, 590 const std::string& key_name,
588 const std::string& payload, 591 const std::string& payload,
589 const BoolDBusMethodCallback& callback) OVERRIDE { 592 const BoolDBusMethodCallback& callback) OVERRIDE {
590 dbus::MethodCall method_call( 593 dbus::MethodCall method_call(
591 cryptohome::kCryptohomeInterface, 594 cryptohome::kCryptohomeInterface,
592 cryptohome::kCryptohomeTpmAttestationSetKeyPayload); 595 cryptohome::kCryptohomeTpmAttestationSetKeyPayload);
593 dbus::MessageWriter writer(&method_call); 596 dbus::MessageWriter writer(&method_call);
594 bool is_user_specific = (key_type == USER_KEY); 597 bool is_user_specific = (key_type == attestation::KEY_USER);
595 writer.AppendBool(is_user_specific); 598 writer.AppendBool(is_user_specific);
596 writer.AppendString(key_name); 599 writer.AppendString(key_name);
597 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(payload.data()), 600 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(payload.data()),
598 payload.size()); 601 payload.size());
599 CallBoolMethod(&method_call, callback); 602 CallBoolMethod(&method_call, callback);
600 } 603 }
601 604
602 private: 605 private:
603 // Handles the result of AsyncXXX methods. 606 // Handles the result of AsyncXXX methods.
604 void OnAsyncMethodCall(const AsyncMethodCallback& callback, 607 void OnAsyncMethodCall(const AsyncMethodCallback& callback,
(...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after
1036 // CryptohomeClient override. 1039 // CryptohomeClient override.
1037 virtual void AsyncTpmAttestationCreateCertRequest( 1040 virtual void AsyncTpmAttestationCreateCertRequest(
1038 int options, 1041 int options,
1039 const AsyncMethodCallback& callback) OVERRIDE { 1042 const AsyncMethodCallback& callback) OVERRIDE {
1040 ReturnAsyncMethodResult(callback, true); 1043 ReturnAsyncMethodResult(callback, true);
1041 } 1044 }
1042 1045
1043 // CryptohomeClient override. 1046 // CryptohomeClient override.
1044 virtual void AsyncTpmAttestationFinishCertRequest( 1047 virtual void AsyncTpmAttestationFinishCertRequest(
1045 const std::string& pca_response, 1048 const std::string& pca_response,
1046 AttestationKeyType key_type, 1049 attestation::AttestationKeyType key_type,
1047 const std::string& key_name, 1050 const std::string& key_name,
1048 const AsyncMethodCallback& callback) OVERRIDE { 1051 const AsyncMethodCallback& callback) OVERRIDE {
1049 ReturnAsyncMethodResult(callback, true); 1052 ReturnAsyncMethodResult(callback, true);
1050 } 1053 }
1051 1054
1052 // CryptohomeClient override. 1055 // CryptohomeClient override.
1053 virtual void TpmAttestationDoesKeyExist( 1056 virtual void TpmAttestationDoesKeyExist(
1054 AttestationKeyType key_type, 1057 attestation::AttestationKeyType key_type,
1055 const std::string& key_name, 1058 const std::string& key_name,
1056 const BoolDBusMethodCallback& callback) OVERRIDE { 1059 const BoolDBusMethodCallback& callback) OVERRIDE {
1057 MessageLoop::current()->PostTask( 1060 MessageLoop::current()->PostTask(
1058 FROM_HERE, 1061 FROM_HERE,
1059 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); 1062 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false));
1060 } 1063 }
1061 1064
1062 // CryptohomeClient override. 1065 // CryptohomeClient override.
1063 virtual void TpmAttestationGetCertificate( 1066 virtual void TpmAttestationGetCertificate(
1064 AttestationKeyType key_type, 1067 attestation::AttestationKeyType key_type,
1065 const std::string& key_name, 1068 const std::string& key_name,
1066 const DataMethodCallback& callback) OVERRIDE { 1069 const DataMethodCallback& callback) OVERRIDE {
1067 MessageLoop::current()->PostTask( 1070 MessageLoop::current()->PostTask(
1068 FROM_HERE, 1071 FROM_HERE,
1069 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); 1072 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string()));
1070 } 1073 }
1071 1074
1072 // CryptohomeClient override. 1075 // CryptohomeClient override.
1073 virtual void TpmAttestationGetPublicKey( 1076 virtual void TpmAttestationGetPublicKey(
1074 AttestationKeyType key_type, 1077 attestation::AttestationKeyType key_type,
1075 const std::string& key_name, 1078 const std::string& key_name,
1076 const DataMethodCallback& callback) OVERRIDE { 1079 const DataMethodCallback& callback) OVERRIDE {
1077 MessageLoop::current()->PostTask( 1080 MessageLoop::current()->PostTask(
1078 FROM_HERE, 1081 FROM_HERE,
1079 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); 1082 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string()));
1080 } 1083 }
1081 1084
1082 // CryptohomeClient override. 1085 // CryptohomeClient override.
1083 virtual void TpmAttestationRegisterKey( 1086 virtual void TpmAttestationRegisterKey(
1084 AttestationKeyType key_type, 1087 attestation::AttestationKeyType key_type,
1085 const std::string& key_name, 1088 const std::string& key_name,
1086 const AsyncMethodCallback& callback) OVERRIDE { 1089 const AsyncMethodCallback& callback) OVERRIDE {
1087 ReturnAsyncMethodResult(callback, true); 1090 ReturnAsyncMethodResult(callback, true);
1088 } 1091 }
1089 1092
1090 // CryptohomeClient override. 1093 // CryptohomeClient override.
1091 virtual void TpmAttestationSignEnterpriseChallenge( 1094 virtual void TpmAttestationSignEnterpriseChallenge(
1092 AttestationKeyType key_type, 1095 attestation::AttestationKeyType key_type,
1093 const std::string& key_name, 1096 const std::string& key_name,
1094 const std::string& domain, 1097 const std::string& domain,
1095 const std::string& device_id, 1098 const std::string& device_id,
1096 AttestationChallengeOptions options, 1099 attestation::AttestationChallengeOptions options,
1097 const std::string& challenge, 1100 const std::string& challenge,
1098 const AsyncMethodCallback& callback) OVERRIDE { 1101 const AsyncMethodCallback& callback) OVERRIDE {
1099 ReturnAsyncMethodResult(callback, true); 1102 ReturnAsyncMethodResult(callback, true);
1100 } 1103 }
1101 1104
1102 // CryptohomeClient override. 1105 // CryptohomeClient override.
1103 virtual void TpmAttestationSignSimpleChallenge( 1106 virtual void TpmAttestationSignSimpleChallenge(
1104 AttestationKeyType key_type, 1107 attestation::AttestationKeyType key_type,
1105 const std::string& key_name, 1108 const std::string& key_name,
1106 const std::string& challenge, 1109 const std::string& challenge,
1107 const AsyncMethodCallback& callback) OVERRIDE { 1110 const AsyncMethodCallback& callback) OVERRIDE {
1108 ReturnAsyncMethodResult(callback, true); 1111 ReturnAsyncMethodResult(callback, true);
1109 } 1112 }
1110 1113
1111 virtual void TpmAttestationGetKeyPayload( 1114 virtual void TpmAttestationGetKeyPayload(
1112 AttestationKeyType key_type, 1115 attestation::AttestationKeyType key_type,
1113 const std::string& key_name, 1116 const std::string& key_name,
1114 const DataMethodCallback& callback) OVERRIDE { 1117 const DataMethodCallback& callback) OVERRIDE {
1115 MessageLoop::current()->PostTask( 1118 MessageLoop::current()->PostTask(
1116 FROM_HERE, 1119 FROM_HERE,
1117 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); 1120 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string()));
1118 } 1121 }
1119 1122
1120 virtual void TpmAttestationSetKeyPayload( 1123 virtual void TpmAttestationSetKeyPayload(
1121 AttestationKeyType key_type, 1124 attestation::AttestationKeyType key_type,
1122 const std::string& key_name, 1125 const std::string& key_name,
1123 const std::string& payload, 1126 const std::string& payload,
1124 const BoolDBusMethodCallback& callback) OVERRIDE { 1127 const BoolDBusMethodCallback& callback) OVERRIDE {
1125 MessageLoop::current()->PostTask( 1128 MessageLoop::current()->PostTask(
1126 FROM_HERE, 1129 FROM_HERE,
1127 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); 1130 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false));
1128 } 1131 }
1129 1132
1130 1133
1131 private: 1134 private:
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
1185 // static 1188 // static
1186 CryptohomeClient* CryptohomeClient::Create(DBusClientImplementationType type, 1189 CryptohomeClient* CryptohomeClient::Create(DBusClientImplementationType type,
1187 dbus::Bus* bus) { 1190 dbus::Bus* bus) {
1188 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) 1191 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION)
1189 return new CryptohomeClientImpl(bus); 1192 return new CryptohomeClientImpl(bus);
1190 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); 1193 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type);
1191 return new CryptohomeClientStubImpl(); 1194 return new CryptohomeClientStubImpl();
1192 } 1195 }
1193 1196
1194 } // namespace chromeos 1197 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/cryptohome_client.h ('k') | chromeos/dbus/fake_cryptohome_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698