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 = |
| 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 Loading... |
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 Loading... |
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 |
OLD | NEW |