OLD | NEW |
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 Loading... |
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 = (options & attestation::INCLUDE_STABLE_ID); |
416 writer.AppendBool(include_stable_id); | 416 writer.AppendBool(include_stable_id); |
417 bool include_device_state = (options & INCLUDE_DEVICE_STATE); | 417 bool include_device_state = (options & attestation::INCLUDE_DEVICE_STATE); |
418 writer.AppendBool(include_device_state); | 418 writer.AppendBool(include_device_state); |
419 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 419 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
420 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, | 420 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, |
421 weak_ptr_factory_.GetWeakPtr(), | 421 weak_ptr_factory_.GetWeakPtr(), |
422 callback)); | 422 callback)); |
423 } | 423 } |
424 | 424 |
425 // CryptohomeClient override. | 425 // CryptohomeClient override. |
426 virtual void AsyncTpmAttestationFinishCertRequest( | 426 virtual void AsyncTpmAttestationFinishCertRequest( |
427 const std::string& pca_response, | 427 const std::string& pca_response, |
428 AttestationKeyType key_type, | 428 attestation::AttestationKeyType key_type, |
429 const std::string& key_name, | 429 const std::string& key_name, |
430 const AsyncMethodCallback& callback) OVERRIDE { | 430 const AsyncMethodCallback& callback) OVERRIDE { |
431 dbus::MethodCall method_call( | 431 dbus::MethodCall method_call( |
432 cryptohome::kCryptohomeInterface, | 432 cryptohome::kCryptohomeInterface, |
433 cryptohome::kCryptohomeAsyncTpmAttestationFinishCertRequest); | 433 cryptohome::kCryptohomeAsyncTpmAttestationFinishCertRequest); |
434 dbus::MessageWriter writer(&method_call); | 434 dbus::MessageWriter writer(&method_call); |
435 writer.AppendArrayOfBytes( | 435 writer.AppendArrayOfBytes( |
436 reinterpret_cast<const uint8*>(pca_response.data()), | 436 reinterpret_cast<const uint8*>(pca_response.data()), |
437 pca_response.size()); | 437 pca_response.size()); |
438 bool is_user_specific = (key_type == USER_KEY); | 438 bool is_user_specific = (key_type == attestation::USER_KEY); |
439 writer.AppendBool(is_user_specific); | 439 writer.AppendBool(is_user_specific); |
440 writer.AppendString(key_name); | 440 writer.AppendString(key_name); |
441 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 441 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
442 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, | 442 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, |
443 weak_ptr_factory_.GetWeakPtr(), | 443 weak_ptr_factory_.GetWeakPtr(), |
444 callback)); | 444 callback)); |
445 } | 445 } |
446 | 446 |
447 // CryptohomeClient override. | 447 // CryptohomeClient override. |
448 virtual void TpmAttestationDoesKeyExist( | 448 virtual void TpmAttestationDoesKeyExist( |
449 AttestationKeyType key_type, | 449 attestation::AttestationKeyType key_type, |
450 const std::string& key_name, | 450 const std::string& key_name, |
451 const BoolDBusMethodCallback& callback) OVERRIDE { | 451 const BoolDBusMethodCallback& callback) OVERRIDE { |
452 dbus::MethodCall method_call( | 452 dbus::MethodCall method_call( |
453 cryptohome::kCryptohomeInterface, | 453 cryptohome::kCryptohomeInterface, |
454 cryptohome::kCryptohomeTpmAttestationDoesKeyExist); | 454 cryptohome::kCryptohomeTpmAttestationDoesKeyExist); |
455 dbus::MessageWriter writer(&method_call); | 455 dbus::MessageWriter writer(&method_call); |
456 bool is_user_specific = (key_type == USER_KEY); | 456 bool is_user_specific = (key_type == attestation::USER_KEY); |
457 writer.AppendBool(is_user_specific); | 457 writer.AppendBool(is_user_specific); |
458 writer.AppendString(key_name); | 458 writer.AppendString(key_name); |
459 CallBoolMethod(&method_call, callback); | 459 CallBoolMethod(&method_call, callback); |
460 } | 460 } |
461 | 461 |
462 // CryptohomeClient override. | 462 // CryptohomeClient override. |
463 virtual void TpmAttestationGetCertificate( | 463 virtual void TpmAttestationGetCertificate( |
464 AttestationKeyType key_type, | 464 attestation::AttestationKeyType key_type, |
465 const std::string& key_name, | 465 const std::string& key_name, |
466 const DataMethodCallback& callback) OVERRIDE { | 466 const DataMethodCallback& callback) OVERRIDE { |
467 dbus::MethodCall method_call( | 467 dbus::MethodCall method_call( |
468 cryptohome::kCryptohomeInterface, | 468 cryptohome::kCryptohomeInterface, |
469 cryptohome::kCryptohomeTpmAttestationGetCertificate); | 469 cryptohome::kCryptohomeTpmAttestationGetCertificate); |
470 dbus::MessageWriter writer(&method_call); | 470 dbus::MessageWriter writer(&method_call); |
471 bool is_user_specific = (key_type == USER_KEY); | 471 bool is_user_specific = (key_type == attestation::USER_KEY); |
472 writer.AppendBool(is_user_specific); | 472 writer.AppendBool(is_user_specific); |
473 writer.AppendString(key_name); | 473 writer.AppendString(key_name); |
474 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 474 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
475 base::Bind(&CryptohomeClientImpl::OnDataMethod, | 475 base::Bind(&CryptohomeClientImpl::OnDataMethod, |
476 weak_ptr_factory_.GetWeakPtr(), | 476 weak_ptr_factory_.GetWeakPtr(), |
477 callback)); | 477 callback)); |
478 } | 478 } |
479 | 479 |
480 // CryptohomeClient override. | 480 // CryptohomeClient override. |
481 virtual void TpmAttestationGetPublicKey( | 481 virtual void TpmAttestationGetPublicKey( |
482 AttestationKeyType key_type, | 482 attestation::AttestationKeyType key_type, |
483 const std::string& key_name, | 483 const std::string& key_name, |
484 const DataMethodCallback& callback) OVERRIDE { | 484 const DataMethodCallback& callback) OVERRIDE { |
485 dbus::MethodCall method_call( | 485 dbus::MethodCall method_call( |
486 cryptohome::kCryptohomeInterface, | 486 cryptohome::kCryptohomeInterface, |
487 cryptohome::kCryptohomeTpmAttestationGetPublicKey); | 487 cryptohome::kCryptohomeTpmAttestationGetPublicKey); |
488 dbus::MessageWriter writer(&method_call); | 488 dbus::MessageWriter writer(&method_call); |
489 bool is_user_specific = (key_type == USER_KEY); | 489 bool is_user_specific = (key_type == attestation::USER_KEY); |
490 writer.AppendBool(is_user_specific); | 490 writer.AppendBool(is_user_specific); |
491 writer.AppendString(key_name); | 491 writer.AppendString(key_name); |
492 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 492 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
493 base::Bind(&CryptohomeClientImpl::OnDataMethod, | 493 base::Bind(&CryptohomeClientImpl::OnDataMethod, |
494 weak_ptr_factory_.GetWeakPtr(), | 494 weak_ptr_factory_.GetWeakPtr(), |
495 callback)); | 495 callback)); |
496 } | 496 } |
497 | 497 |
498 // CryptohomeClient override. | 498 // CryptohomeClient override. |
499 virtual void TpmAttestationRegisterKey( | 499 virtual void TpmAttestationRegisterKey( |
500 AttestationKeyType key_type, | 500 attestation::AttestationKeyType key_type, |
501 const std::string& key_name, | 501 const std::string& key_name, |
502 const AsyncMethodCallback& callback) OVERRIDE { | 502 const AsyncMethodCallback& callback) OVERRIDE { |
503 dbus::MethodCall method_call( | 503 dbus::MethodCall method_call( |
504 cryptohome::kCryptohomeInterface, | 504 cryptohome::kCryptohomeInterface, |
505 cryptohome::kCryptohomeTpmAttestationRegisterKey); | 505 cryptohome::kCryptohomeTpmAttestationRegisterKey); |
506 dbus::MessageWriter writer(&method_call); | 506 dbus::MessageWriter writer(&method_call); |
507 bool is_user_specific = (key_type == USER_KEY); | 507 bool is_user_specific = (key_type == attestation::USER_KEY); |
508 writer.AppendBool(is_user_specific); | 508 writer.AppendBool(is_user_specific); |
509 writer.AppendString(key_name); | 509 writer.AppendString(key_name); |
510 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 510 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
511 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, | 511 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, |
512 weak_ptr_factory_.GetWeakPtr(), | 512 weak_ptr_factory_.GetWeakPtr(), |
513 callback)); | 513 callback)); |
514 } | 514 } |
515 | 515 |
516 // CryptohomeClient override. | 516 // CryptohomeClient override. |
517 virtual void TpmAttestationSignEnterpriseChallenge( | 517 virtual void TpmAttestationSignEnterpriseChallenge( |
518 AttestationKeyType key_type, | 518 attestation::AttestationKeyType key_type, |
519 const std::string& key_name, | 519 const std::string& key_name, |
520 const std::string& domain, | 520 const std::string& domain, |
521 const std::string& device_id, | 521 const std::string& device_id, |
522 AttestationChallengeOptions options, | 522 attestation::AttestationChallengeOptions options, |
523 const std::string& challenge, | 523 const std::string& challenge, |
524 const AsyncMethodCallback& callback) OVERRIDE { | 524 const AsyncMethodCallback& callback) OVERRIDE { |
525 dbus::MethodCall method_call( | 525 dbus::MethodCall method_call( |
526 cryptohome::kCryptohomeInterface, | 526 cryptohome::kCryptohomeInterface, |
527 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); | 527 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); |
528 dbus::MessageWriter writer(&method_call); | 528 dbus::MessageWriter writer(&method_call); |
529 bool is_user_specific = (key_type == USER_KEY); | 529 bool is_user_specific = (key_type == attestation::USER_KEY); |
530 writer.AppendBool(is_user_specific); | 530 writer.AppendBool(is_user_specific); |
531 writer.AppendString(key_name); | 531 writer.AppendString(key_name); |
532 writer.AppendString(domain); | 532 writer.AppendString(domain); |
533 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(device_id.data()), | 533 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(device_id.data()), |
534 device_id.size()); | 534 device_id.size()); |
535 bool include_signed_public_key = (options & INCLUDE_SIGNED_PUBLIC_KEY); | 535 bool include_signed_public_key = |
| 536 (options & attestation::INCLUDE_SIGNED_PUBLIC_KEY); |
536 writer.AppendBool(include_signed_public_key); | 537 writer.AppendBool(include_signed_public_key); |
537 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), | 538 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), |
538 challenge.size()); | 539 challenge.size()); |
539 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 540 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
540 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, | 541 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, |
541 weak_ptr_factory_.GetWeakPtr(), | 542 weak_ptr_factory_.GetWeakPtr(), |
542 callback)); | 543 callback)); |
543 } | 544 } |
544 | 545 |
545 // CryptohomeClient override. | 546 // CryptohomeClient override. |
546 virtual void TpmAttestationSignSimpleChallenge( | 547 virtual void TpmAttestationSignSimpleChallenge( |
547 AttestationKeyType key_type, | 548 attestation::AttestationKeyType key_type, |
548 const std::string& key_name, | 549 const std::string& key_name, |
549 const std::string& challenge, | 550 const std::string& challenge, |
550 const AsyncMethodCallback& callback) OVERRIDE { | 551 const AsyncMethodCallback& callback) OVERRIDE { |
551 dbus::MethodCall method_call( | 552 dbus::MethodCall method_call( |
552 cryptohome::kCryptohomeInterface, | 553 cryptohome::kCryptohomeInterface, |
553 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); | 554 cryptohome::kCryptohomeTpmAttestationSignEnterpriseChallenge); |
554 dbus::MessageWriter writer(&method_call); | 555 dbus::MessageWriter writer(&method_call); |
555 bool is_user_specific = (key_type == USER_KEY); | 556 bool is_user_specific = (key_type == attestation::USER_KEY); |
556 writer.AppendBool(is_user_specific); | 557 writer.AppendBool(is_user_specific); |
557 writer.AppendString(key_name); | 558 writer.AppendString(key_name); |
558 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), | 559 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()), |
559 challenge.size()); | 560 challenge.size()); |
560 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 561 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
561 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, | 562 base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall, |
562 weak_ptr_factory_.GetWeakPtr(), | 563 weak_ptr_factory_.GetWeakPtr(), |
563 callback)); | 564 callback)); |
564 } | 565 } |
565 | 566 |
566 // CryptohomeClient override. | 567 // CryptohomeClient override. |
567 virtual void TpmAttestationGetKeyPayload( | 568 virtual void TpmAttestationGetKeyPayload( |
568 AttestationKeyType key_type, | 569 attestation::AttestationKeyType key_type, |
569 const std::string& key_name, | 570 const std::string& key_name, |
570 const DataMethodCallback& callback) OVERRIDE { | 571 const DataMethodCallback& callback) OVERRIDE { |
571 dbus::MethodCall method_call( | 572 dbus::MethodCall method_call( |
572 cryptohome::kCryptohomeInterface, | 573 cryptohome::kCryptohomeInterface, |
573 cryptohome::kCryptohomeTpmAttestationGetKeyPayload); | 574 cryptohome::kCryptohomeTpmAttestationGetKeyPayload); |
574 dbus::MessageWriter writer(&method_call); | 575 dbus::MessageWriter writer(&method_call); |
575 bool is_user_specific = (key_type == USER_KEY); | 576 bool is_user_specific = (key_type == attestation::USER_KEY); |
576 writer.AppendBool(is_user_specific); | 577 writer.AppendBool(is_user_specific); |
577 writer.AppendString(key_name); | 578 writer.AppendString(key_name); |
578 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 579 proxy_->CallMethod(&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
579 base::Bind(&CryptohomeClientImpl::OnDataMethod, | 580 base::Bind(&CryptohomeClientImpl::OnDataMethod, |
580 weak_ptr_factory_.GetWeakPtr(), | 581 weak_ptr_factory_.GetWeakPtr(), |
581 callback)); | 582 callback)); |
582 } | 583 } |
583 | 584 |
584 // CryptohomeClient override. | 585 // CryptohomeClient override. |
585 virtual void TpmAttestationSetKeyPayload( | 586 virtual void TpmAttestationSetKeyPayload( |
586 AttestationKeyType key_type, | 587 attestation::AttestationKeyType key_type, |
587 const std::string& key_name, | 588 const std::string& key_name, |
588 const std::string& payload, | 589 const std::string& payload, |
589 const BoolDBusMethodCallback& callback) OVERRIDE { | 590 const BoolDBusMethodCallback& callback) OVERRIDE { |
590 dbus::MethodCall method_call( | 591 dbus::MethodCall method_call( |
591 cryptohome::kCryptohomeInterface, | 592 cryptohome::kCryptohomeInterface, |
592 cryptohome::kCryptohomeTpmAttestationSetKeyPayload); | 593 cryptohome::kCryptohomeTpmAttestationSetKeyPayload); |
593 dbus::MessageWriter writer(&method_call); | 594 dbus::MessageWriter writer(&method_call); |
594 bool is_user_specific = (key_type == USER_KEY); | 595 bool is_user_specific = (key_type == attestation::USER_KEY); |
595 writer.AppendBool(is_user_specific); | 596 writer.AppendBool(is_user_specific); |
596 writer.AppendString(key_name); | 597 writer.AppendString(key_name); |
597 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(payload.data()), | 598 writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(payload.data()), |
598 payload.size()); | 599 payload.size()); |
599 CallBoolMethod(&method_call, callback); | 600 CallBoolMethod(&method_call, callback); |
600 } | 601 } |
601 | 602 |
602 private: | 603 private: |
603 // Handles the result of AsyncXXX methods. | 604 // Handles the result of AsyncXXX methods. |
604 void OnAsyncMethodCall(const AsyncMethodCallback& callback, | 605 void OnAsyncMethodCall(const AsyncMethodCallback& callback, |
(...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1036 // CryptohomeClient override. | 1037 // CryptohomeClient override. |
1037 virtual void AsyncTpmAttestationCreateCertRequest( | 1038 virtual void AsyncTpmAttestationCreateCertRequest( |
1038 int options, | 1039 int options, |
1039 const AsyncMethodCallback& callback) OVERRIDE { | 1040 const AsyncMethodCallback& callback) OVERRIDE { |
1040 ReturnAsyncMethodResult(callback, true); | 1041 ReturnAsyncMethodResult(callback, true); |
1041 } | 1042 } |
1042 | 1043 |
1043 // CryptohomeClient override. | 1044 // CryptohomeClient override. |
1044 virtual void AsyncTpmAttestationFinishCertRequest( | 1045 virtual void AsyncTpmAttestationFinishCertRequest( |
1045 const std::string& pca_response, | 1046 const std::string& pca_response, |
1046 AttestationKeyType key_type, | 1047 attestation::AttestationKeyType key_type, |
1047 const std::string& key_name, | 1048 const std::string& key_name, |
1048 const AsyncMethodCallback& callback) OVERRIDE { | 1049 const AsyncMethodCallback& callback) OVERRIDE { |
1049 ReturnAsyncMethodResult(callback, true); | 1050 ReturnAsyncMethodResult(callback, true); |
1050 } | 1051 } |
1051 | 1052 |
1052 // CryptohomeClient override. | 1053 // CryptohomeClient override. |
1053 virtual void TpmAttestationDoesKeyExist( | 1054 virtual void TpmAttestationDoesKeyExist( |
1054 AttestationKeyType key_type, | 1055 attestation::AttestationKeyType key_type, |
1055 const std::string& key_name, | 1056 const std::string& key_name, |
1056 const BoolDBusMethodCallback& callback) OVERRIDE { | 1057 const BoolDBusMethodCallback& callback) OVERRIDE { |
1057 MessageLoop::current()->PostTask( | 1058 MessageLoop::current()->PostTask( |
1058 FROM_HERE, | 1059 FROM_HERE, |
1059 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); | 1060 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); |
1060 } | 1061 } |
1061 | 1062 |
1062 // CryptohomeClient override. | 1063 // CryptohomeClient override. |
1063 virtual void TpmAttestationGetCertificate( | 1064 virtual void TpmAttestationGetCertificate( |
1064 AttestationKeyType key_type, | 1065 attestation::AttestationKeyType key_type, |
1065 const std::string& key_name, | 1066 const std::string& key_name, |
1066 const DataMethodCallback& callback) OVERRIDE { | 1067 const DataMethodCallback& callback) OVERRIDE { |
1067 MessageLoop::current()->PostTask( | 1068 MessageLoop::current()->PostTask( |
1068 FROM_HERE, | 1069 FROM_HERE, |
1069 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1070 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
1070 } | 1071 } |
1071 | 1072 |
1072 // CryptohomeClient override. | 1073 // CryptohomeClient override. |
1073 virtual void TpmAttestationGetPublicKey( | 1074 virtual void TpmAttestationGetPublicKey( |
1074 AttestationKeyType key_type, | 1075 attestation::AttestationKeyType key_type, |
1075 const std::string& key_name, | 1076 const std::string& key_name, |
1076 const DataMethodCallback& callback) OVERRIDE { | 1077 const DataMethodCallback& callback) OVERRIDE { |
1077 MessageLoop::current()->PostTask( | 1078 MessageLoop::current()->PostTask( |
1078 FROM_HERE, | 1079 FROM_HERE, |
1079 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1080 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
1080 } | 1081 } |
1081 | 1082 |
1082 // CryptohomeClient override. | 1083 // CryptohomeClient override. |
1083 virtual void TpmAttestationRegisterKey( | 1084 virtual void TpmAttestationRegisterKey( |
1084 AttestationKeyType key_type, | 1085 attestation::AttestationKeyType key_type, |
1085 const std::string& key_name, | 1086 const std::string& key_name, |
1086 const AsyncMethodCallback& callback) OVERRIDE { | 1087 const AsyncMethodCallback& callback) OVERRIDE { |
1087 ReturnAsyncMethodResult(callback, true); | 1088 ReturnAsyncMethodResult(callback, true); |
1088 } | 1089 } |
1089 | 1090 |
1090 // CryptohomeClient override. | 1091 // CryptohomeClient override. |
1091 virtual void TpmAttestationSignEnterpriseChallenge( | 1092 virtual void TpmAttestationSignEnterpriseChallenge( |
1092 AttestationKeyType key_type, | 1093 attestation::AttestationKeyType key_type, |
1093 const std::string& key_name, | 1094 const std::string& key_name, |
1094 const std::string& domain, | 1095 const std::string& domain, |
1095 const std::string& device_id, | 1096 const std::string& device_id, |
1096 AttestationChallengeOptions options, | 1097 attestation::AttestationChallengeOptions options, |
1097 const std::string& challenge, | 1098 const std::string& challenge, |
1098 const AsyncMethodCallback& callback) OVERRIDE { | 1099 const AsyncMethodCallback& callback) OVERRIDE { |
1099 ReturnAsyncMethodResult(callback, true); | 1100 ReturnAsyncMethodResult(callback, true); |
1100 } | 1101 } |
1101 | 1102 |
1102 // CryptohomeClient override. | 1103 // CryptohomeClient override. |
1103 virtual void TpmAttestationSignSimpleChallenge( | 1104 virtual void TpmAttestationSignSimpleChallenge( |
1104 AttestationKeyType key_type, | 1105 attestation::AttestationKeyType key_type, |
1105 const std::string& key_name, | 1106 const std::string& key_name, |
1106 const std::string& challenge, | 1107 const std::string& challenge, |
1107 const AsyncMethodCallback& callback) OVERRIDE { | 1108 const AsyncMethodCallback& callback) OVERRIDE { |
1108 ReturnAsyncMethodResult(callback, true); | 1109 ReturnAsyncMethodResult(callback, true); |
1109 } | 1110 } |
1110 | 1111 |
1111 virtual void TpmAttestationGetKeyPayload( | 1112 virtual void TpmAttestationGetKeyPayload( |
1112 AttestationKeyType key_type, | 1113 attestation::AttestationKeyType key_type, |
1113 const std::string& key_name, | 1114 const std::string& key_name, |
1114 const DataMethodCallback& callback) OVERRIDE { | 1115 const DataMethodCallback& callback) OVERRIDE { |
1115 MessageLoop::current()->PostTask( | 1116 MessageLoop::current()->PostTask( |
1116 FROM_HERE, | 1117 FROM_HERE, |
1117 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1118 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
1118 } | 1119 } |
1119 | 1120 |
1120 virtual void TpmAttestationSetKeyPayload( | 1121 virtual void TpmAttestationSetKeyPayload( |
1121 AttestationKeyType key_type, | 1122 attestation::AttestationKeyType key_type, |
1122 const std::string& key_name, | 1123 const std::string& key_name, |
1123 const std::string& payload, | 1124 const std::string& payload, |
1124 const BoolDBusMethodCallback& callback) OVERRIDE { | 1125 const BoolDBusMethodCallback& callback) OVERRIDE { |
1125 MessageLoop::current()->PostTask( | 1126 MessageLoop::current()->PostTask( |
1126 FROM_HERE, | 1127 FROM_HERE, |
1127 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); | 1128 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); |
1128 } | 1129 } |
1129 | 1130 |
1130 | 1131 |
1131 private: | 1132 private: |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1185 // static | 1186 // static |
1186 CryptohomeClient* CryptohomeClient::Create(DBusClientImplementationType type, | 1187 CryptohomeClient* CryptohomeClient::Create(DBusClientImplementationType type, |
1187 dbus::Bus* bus) { | 1188 dbus::Bus* bus) { |
1188 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) | 1189 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) |
1189 return new CryptohomeClientImpl(bus); | 1190 return new CryptohomeClientImpl(bus); |
1190 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); | 1191 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); |
1191 return new CryptohomeClientStubImpl(); | 1192 return new CryptohomeClientStubImpl(); |
1192 } | 1193 } |
1193 | 1194 |
1194 } // namespace chromeos | 1195 } // namespace chromeos |
OLD | NEW |