| 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 795 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 806 } | 806 } |
| 807 | 807 |
| 808 // CryptohomeClient override. | 808 // CryptohomeClient override. |
| 809 virtual void ResetAsyncCallStatusHandlers() OVERRIDE { | 809 virtual void ResetAsyncCallStatusHandlers() OVERRIDE { |
| 810 async_call_status_handler_.Reset(); | 810 async_call_status_handler_.Reset(); |
| 811 async_call_status_data_handler_.Reset(); | 811 async_call_status_data_handler_.Reset(); |
| 812 } | 812 } |
| 813 | 813 |
| 814 // CryptohomeClient override. | 814 // CryptohomeClient override. |
| 815 virtual void IsMounted(const BoolDBusMethodCallback& callback) OVERRIDE { | 815 virtual void IsMounted(const BoolDBusMethodCallback& callback) OVERRIDE { |
| 816 MessageLoop::current()->PostTask( | 816 base::MessageLoop::current()->PostTask( |
| 817 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 817 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 818 } | 818 } |
| 819 | 819 |
| 820 // CryptohomeClient override. | 820 // CryptohomeClient override. |
| 821 virtual bool Unmount(bool* success) OVERRIDE { | 821 virtual bool Unmount(bool* success) OVERRIDE { |
| 822 *success = true; | 822 *success = true; |
| 823 return true; | 823 return true; |
| 824 } | 824 } |
| 825 | 825 |
| 826 // CryptohomeClient override. | 826 // CryptohomeClient override. |
| (...skipping 25 matching lines...) Expand all Loading... |
| 852 return true; | 852 return true; |
| 853 } | 853 } |
| 854 | 854 |
| 855 // CryptohomeClient override. | 855 // CryptohomeClient override. |
| 856 virtual void GetSanitizedUsername( | 856 virtual void GetSanitizedUsername( |
| 857 const std::string& username, | 857 const std::string& username, |
| 858 const StringDBusMethodCallback& callback) OVERRIDE { | 858 const StringDBusMethodCallback& callback) OVERRIDE { |
| 859 // Even for stub implementation we have to return different values | 859 // Even for stub implementation we have to return different values |
| 860 // so that multi-profiles would work. | 860 // so that multi-profiles would work. |
| 861 std::string sanitized_username = GetStubSanitizedUsername(username); | 861 std::string sanitized_username = GetStubSanitizedUsername(username); |
| 862 MessageLoop::current()->PostTask( | 862 base::MessageLoop::current()->PostTask( |
| 863 FROM_HERE, | 863 FROM_HERE, |
| 864 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, sanitized_username)); | 864 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, sanitized_username)); |
| 865 } | 865 } |
| 866 | 866 |
| 867 // CryptohomeClient override. | 867 // CryptohomeClient override. |
| 868 virtual void AsyncMount(const std::string& username, | 868 virtual void AsyncMount(const std::string& username, |
| 869 const std::string& key, | 869 const std::string& key, |
| 870 int flags, | 870 int flags, |
| 871 const AsyncMethodCallback& callback) OVERRIDE { | 871 const AsyncMethodCallback& callback) OVERRIDE { |
| 872 ReturnAsyncMethodResult(callback, false); | 872 ReturnAsyncMethodResult(callback, false); |
| 873 } | 873 } |
| 874 | 874 |
| 875 // CryptohomeClient override. | 875 // CryptohomeClient override. |
| 876 virtual void AsyncMountGuest(const AsyncMethodCallback& callback) OVERRIDE { | 876 virtual void AsyncMountGuest(const AsyncMethodCallback& callback) OVERRIDE { |
| 877 ReturnAsyncMethodResult(callback, false); | 877 ReturnAsyncMethodResult(callback, false); |
| 878 } | 878 } |
| 879 | 879 |
| 880 // CryptohomeClient override. | 880 // CryptohomeClient override. |
| 881 virtual void TpmIsReady(const BoolDBusMethodCallback& callback) OVERRIDE { | 881 virtual void TpmIsReady(const BoolDBusMethodCallback& callback) OVERRIDE { |
| 882 MessageLoop::current()->PostTask( | 882 base::MessageLoop::current()->PostTask( |
| 883 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 883 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 884 } | 884 } |
| 885 | 885 |
| 886 // CryptohomeClient override. | 886 // CryptohomeClient override. |
| 887 virtual void TpmIsEnabled(const BoolDBusMethodCallback& callback) OVERRIDE { | 887 virtual void TpmIsEnabled(const BoolDBusMethodCallback& callback) OVERRIDE { |
| 888 MessageLoop::current()->PostTask( | 888 base::MessageLoop::current()->PostTask( |
| 889 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 889 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 890 } | 890 } |
| 891 | 891 |
| 892 // CryptohomeClient override. | 892 // CryptohomeClient override. |
| 893 virtual bool CallTpmIsEnabledAndBlock(bool* enabled) OVERRIDE { | 893 virtual bool CallTpmIsEnabledAndBlock(bool* enabled) OVERRIDE { |
| 894 *enabled = true; | 894 *enabled = true; |
| 895 return true; | 895 return true; |
| 896 } | 896 } |
| 897 | 897 |
| 898 // CryptohomeClient override. | 898 // CryptohomeClient override. |
| 899 virtual void TpmGetPassword( | 899 virtual void TpmGetPassword( |
| 900 const StringDBusMethodCallback& callback) OVERRIDE { | 900 const StringDBusMethodCallback& callback) OVERRIDE { |
| 901 const char kStubTpmPassword[] = "Stub-TPM-password"; | 901 const char kStubTpmPassword[] = "Stub-TPM-password"; |
| 902 MessageLoop::current()->PostTask( | 902 base::MessageLoop::current()->PostTask( |
| 903 FROM_HERE, | 903 FROM_HERE, |
| 904 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, kStubTpmPassword)); | 904 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, kStubTpmPassword)); |
| 905 } | 905 } |
| 906 | 906 |
| 907 // CryptohomeClient override. | 907 // CryptohomeClient override. |
| 908 virtual void TpmIsOwned(const BoolDBusMethodCallback& callback) OVERRIDE { | 908 virtual void TpmIsOwned(const BoolDBusMethodCallback& callback) OVERRIDE { |
| 909 MessageLoop::current()->PostTask( | 909 base::MessageLoop::current()->PostTask( |
| 910 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 910 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 911 } | 911 } |
| 912 | 912 |
| 913 // CryptohomeClient override. | 913 // CryptohomeClient override. |
| 914 virtual bool CallTpmIsOwnedAndBlock(bool* owned) OVERRIDE { | 914 virtual bool CallTpmIsOwnedAndBlock(bool* owned) OVERRIDE { |
| 915 *owned = true; | 915 *owned = true; |
| 916 return true; | 916 return true; |
| 917 } | 917 } |
| 918 | 918 |
| 919 // CryptohomeClient override. | 919 // CryptohomeClient override. |
| 920 virtual void TpmIsBeingOwned(const BoolDBusMethodCallback& callback) | 920 virtual void TpmIsBeingOwned(const BoolDBusMethodCallback& callback) |
| 921 OVERRIDE { | 921 OVERRIDE { |
| 922 MessageLoop::current()->PostTask( | 922 base::MessageLoop::current()->PostTask( |
| 923 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 923 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 924 } | 924 } |
| 925 | 925 |
| 926 // CryptohomeClient override. | 926 // CryptohomeClient override. |
| 927 virtual bool CallTpmIsBeingOwnedAndBlock(bool* owning) OVERRIDE { | 927 virtual bool CallTpmIsBeingOwnedAndBlock(bool* owning) OVERRIDE { |
| 928 *owning = true; | 928 *owning = true; |
| 929 return true; | 929 return true; |
| 930 } | 930 } |
| 931 | 931 |
| 932 // CryptohomeClient override. | 932 // CryptohomeClient override. |
| 933 virtual void TpmCanAttemptOwnership( | 933 virtual void TpmCanAttemptOwnership( |
| 934 const VoidDBusMethodCallback& callback) OVERRIDE { | 934 const VoidDBusMethodCallback& callback) OVERRIDE { |
| 935 MessageLoop::current()->PostTask( | 935 base::MessageLoop::current()->PostTask( |
| 936 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS)); | 936 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS)); |
| 937 } | 937 } |
| 938 | 938 |
| 939 // CryptohomeClient override. | 939 // CryptohomeClient override. |
| 940 virtual void TpmClearStoredPassword(const VoidDBusMethodCallback& callback) | 940 virtual void TpmClearStoredPassword(const VoidDBusMethodCallback& callback) |
| 941 OVERRIDE { | 941 OVERRIDE { |
| 942 MessageLoop::current()->PostTask( | 942 base::MessageLoop::current()->PostTask( |
| 943 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS)); | 943 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS)); |
| 944 } | 944 } |
| 945 | 945 |
| 946 // CryptohomeClient override. | 946 // CryptohomeClient override. |
| 947 virtual bool CallTpmClearStoredPasswordAndBlock() OVERRIDE { return true; } | 947 virtual bool CallTpmClearStoredPasswordAndBlock() OVERRIDE { return true; } |
| 948 | 948 |
| 949 // CryptohomeClient override. | 949 // CryptohomeClient override. |
| 950 virtual void Pkcs11IsTpmTokenReady( | 950 virtual void Pkcs11IsTpmTokenReady( |
| 951 const BoolDBusMethodCallback& callback) OVERRIDE { | 951 const BoolDBusMethodCallback& callback) OVERRIDE { |
| 952 MessageLoop::current()->PostTask( | 952 base::MessageLoop::current()->PostTask( |
| 953 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 953 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 954 } | 954 } |
| 955 | 955 |
| 956 // CryptohomeClient override. | 956 // CryptohomeClient override. |
| 957 virtual void Pkcs11GetTpmTokenInfo( | 957 virtual void Pkcs11GetTpmTokenInfo( |
| 958 const Pkcs11GetTpmTokenInfoCallback& callback) OVERRIDE { | 958 const Pkcs11GetTpmTokenInfoCallback& callback) OVERRIDE { |
| 959 const char kStubLabel[] = "Stub TPM Token"; | 959 const char kStubLabel[] = "Stub TPM Token"; |
| 960 const char kStubUserPin[] = "012345"; | 960 const char kStubUserPin[] = "012345"; |
| 961 MessageLoop::current()->PostTask( | 961 base::MessageLoop::current()->PostTask( |
| 962 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, kStubLabel, | 962 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, kStubLabel, |
| 963 kStubUserPin)); | 963 kStubUserPin)); |
| 964 } | 964 } |
| 965 | 965 |
| 966 // CryptohomeClient override. | 966 // CryptohomeClient override. |
| 967 virtual bool InstallAttributesGet(const std::string& name, | 967 virtual bool InstallAttributesGet(const std::string& name, |
| 968 std::vector<uint8>* value, | 968 std::vector<uint8>* value, |
| 969 bool* successful) OVERRIDE { | 969 bool* successful) OVERRIDE { |
| 970 if (install_attrs_.find(name) != install_attrs_.end()) { | 970 if (install_attrs_.find(name) != install_attrs_.end()) { |
| 971 *value = install_attrs_[name]; | 971 *value = install_attrs_[name]; |
| (...skipping 17 matching lines...) Expand all Loading... |
| 989 // CryptohomeClient override. | 989 // CryptohomeClient override. |
| 990 virtual bool InstallAttributesFinalize(bool* successful) OVERRIDE { | 990 virtual bool InstallAttributesFinalize(bool* successful) OVERRIDE { |
| 991 locked_ = true; | 991 locked_ = true; |
| 992 *successful = true; | 992 *successful = true; |
| 993 return true; | 993 return true; |
| 994 } | 994 } |
| 995 | 995 |
| 996 // CryptohomeClient override. | 996 // CryptohomeClient override. |
| 997 virtual void InstallAttributesIsReady(const BoolDBusMethodCallback& callback) | 997 virtual void InstallAttributesIsReady(const BoolDBusMethodCallback& callback) |
| 998 OVERRIDE { | 998 OVERRIDE { |
| 999 MessageLoop::current()->PostTask( | 999 base::MessageLoop::current()->PostTask( |
| 1000 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 1000 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 1001 } | 1001 } |
| 1002 | 1002 |
| 1003 // CryptohomeClient override. | 1003 // CryptohomeClient override. |
| 1004 virtual bool InstallAttributesIsInvalid(bool* is_invalid) OVERRIDE { | 1004 virtual bool InstallAttributesIsInvalid(bool* is_invalid) OVERRIDE { |
| 1005 *is_invalid = false; | 1005 *is_invalid = false; |
| 1006 return true; | 1006 return true; |
| 1007 } | 1007 } |
| 1008 | 1008 |
| 1009 // CryptohomeClient override. | 1009 // CryptohomeClient override. |
| 1010 virtual bool InstallAttributesIsFirstInstall( | 1010 virtual bool InstallAttributesIsFirstInstall( |
| 1011 bool* is_first_install) OVERRIDE { | 1011 bool* is_first_install) OVERRIDE { |
| 1012 *is_first_install = !locked_; | 1012 *is_first_install = !locked_; |
| 1013 return true; | 1013 return true; |
| 1014 } | 1014 } |
| 1015 | 1015 |
| 1016 // CryptohomeClient override. | 1016 // CryptohomeClient override. |
| 1017 virtual void TpmAttestationIsPrepared( | 1017 virtual void TpmAttestationIsPrepared( |
| 1018 const BoolDBusMethodCallback& callback) OVERRIDE { | 1018 const BoolDBusMethodCallback& callback) OVERRIDE { |
| 1019 MessageLoop::current()->PostTask( | 1019 base::MessageLoop::current()->PostTask( |
| 1020 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 1020 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 1021 } | 1021 } |
| 1022 | 1022 |
| 1023 // CryptohomeClient override. | 1023 // CryptohomeClient override. |
| 1024 virtual void TpmAttestationIsEnrolled( | 1024 virtual void TpmAttestationIsEnrolled( |
| 1025 const BoolDBusMethodCallback& callback) OVERRIDE { | 1025 const BoolDBusMethodCallback& callback) OVERRIDE { |
| 1026 MessageLoop::current()->PostTask( | 1026 base::MessageLoop::current()->PostTask( |
| 1027 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); | 1027 FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, true)); |
| 1028 } | 1028 } |
| 1029 | 1029 |
| 1030 // CryptohomeClient override. | 1030 // CryptohomeClient override. |
| 1031 virtual void AsyncTpmAttestationCreateEnrollRequest( | 1031 virtual void AsyncTpmAttestationCreateEnrollRequest( |
| 1032 const AsyncMethodCallback& callback) OVERRIDE { | 1032 const AsyncMethodCallback& callback) OVERRIDE { |
| 1033 ReturnAsyncMethodResult(callback, true); | 1033 ReturnAsyncMethodResult(callback, true); |
| 1034 } | 1034 } |
| 1035 | 1035 |
| 1036 // CryptohomeClient override. | 1036 // CryptohomeClient override. |
| (...skipping 17 matching lines...) Expand all Loading... |
| 1054 const std::string& key_name, | 1054 const std::string& key_name, |
| 1055 const AsyncMethodCallback& callback) OVERRIDE { | 1055 const AsyncMethodCallback& callback) OVERRIDE { |
| 1056 ReturnAsyncMethodResult(callback, true); | 1056 ReturnAsyncMethodResult(callback, true); |
| 1057 } | 1057 } |
| 1058 | 1058 |
| 1059 // CryptohomeClient override. | 1059 // CryptohomeClient override. |
| 1060 virtual void TpmAttestationDoesKeyExist( | 1060 virtual void TpmAttestationDoesKeyExist( |
| 1061 attestation::AttestationKeyType key_type, | 1061 attestation::AttestationKeyType key_type, |
| 1062 const std::string& key_name, | 1062 const std::string& key_name, |
| 1063 const BoolDBusMethodCallback& callback) OVERRIDE { | 1063 const BoolDBusMethodCallback& callback) OVERRIDE { |
| 1064 MessageLoop::current()->PostTask( | 1064 base::MessageLoop::current()->PostTask( |
| 1065 FROM_HERE, | 1065 FROM_HERE, |
| 1066 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); | 1066 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); |
| 1067 } | 1067 } |
| 1068 | 1068 |
| 1069 // CryptohomeClient override. | 1069 // CryptohomeClient override. |
| 1070 virtual void TpmAttestationGetCertificate( | 1070 virtual void TpmAttestationGetCertificate( |
| 1071 attestation::AttestationKeyType key_type, | 1071 attestation::AttestationKeyType key_type, |
| 1072 const std::string& key_name, | 1072 const std::string& key_name, |
| 1073 const DataMethodCallback& callback) OVERRIDE { | 1073 const DataMethodCallback& callback) OVERRIDE { |
| 1074 MessageLoop::current()->PostTask( | 1074 base::MessageLoop::current()->PostTask( |
| 1075 FROM_HERE, | 1075 FROM_HERE, |
| 1076 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1076 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
| 1077 } | 1077 } |
| 1078 | 1078 |
| 1079 // CryptohomeClient override. | 1079 // CryptohomeClient override. |
| 1080 virtual void TpmAttestationGetPublicKey( | 1080 virtual void TpmAttestationGetPublicKey( |
| 1081 attestation::AttestationKeyType key_type, | 1081 attestation::AttestationKeyType key_type, |
| 1082 const std::string& key_name, | 1082 const std::string& key_name, |
| 1083 const DataMethodCallback& callback) OVERRIDE { | 1083 const DataMethodCallback& callback) OVERRIDE { |
| 1084 MessageLoop::current()->PostTask( | 1084 base::MessageLoop::current()->PostTask( |
| 1085 FROM_HERE, | 1085 FROM_HERE, |
| 1086 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1086 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
| 1087 } | 1087 } |
| 1088 | 1088 |
| 1089 // CryptohomeClient override. | 1089 // CryptohomeClient override. |
| 1090 virtual void TpmAttestationRegisterKey( | 1090 virtual void TpmAttestationRegisterKey( |
| 1091 attestation::AttestationKeyType key_type, | 1091 attestation::AttestationKeyType key_type, |
| 1092 const std::string& key_name, | 1092 const std::string& key_name, |
| 1093 const AsyncMethodCallback& callback) OVERRIDE { | 1093 const AsyncMethodCallback& callback) OVERRIDE { |
| 1094 ReturnAsyncMethodResult(callback, true); | 1094 ReturnAsyncMethodResult(callback, true); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 1112 const std::string& key_name, | 1112 const std::string& key_name, |
| 1113 const std::string& challenge, | 1113 const std::string& challenge, |
| 1114 const AsyncMethodCallback& callback) OVERRIDE { | 1114 const AsyncMethodCallback& callback) OVERRIDE { |
| 1115 ReturnAsyncMethodResult(callback, true); | 1115 ReturnAsyncMethodResult(callback, true); |
| 1116 } | 1116 } |
| 1117 | 1117 |
| 1118 virtual void TpmAttestationGetKeyPayload( | 1118 virtual void TpmAttestationGetKeyPayload( |
| 1119 attestation::AttestationKeyType key_type, | 1119 attestation::AttestationKeyType key_type, |
| 1120 const std::string& key_name, | 1120 const std::string& key_name, |
| 1121 const DataMethodCallback& callback) OVERRIDE { | 1121 const DataMethodCallback& callback) OVERRIDE { |
| 1122 MessageLoop::current()->PostTask( | 1122 base::MessageLoop::current()->PostTask( |
| 1123 FROM_HERE, | 1123 FROM_HERE, |
| 1124 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); | 1124 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false, std::string())); |
| 1125 } | 1125 } |
| 1126 | 1126 |
| 1127 virtual void TpmAttestationSetKeyPayload( | 1127 virtual void TpmAttestationSetKeyPayload( |
| 1128 attestation::AttestationKeyType key_type, | 1128 attestation::AttestationKeyType key_type, |
| 1129 const std::string& key_name, | 1129 const std::string& key_name, |
| 1130 const std::string& payload, | 1130 const std::string& payload, |
| 1131 const BoolDBusMethodCallback& callback) OVERRIDE { | 1131 const BoolDBusMethodCallback& callback) OVERRIDE { |
| 1132 MessageLoop::current()->PostTask( | 1132 base::MessageLoop::current()->PostTask( |
| 1133 FROM_HERE, | 1133 FROM_HERE, |
| 1134 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); | 1134 base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false)); |
| 1135 } | 1135 } |
| 1136 | 1136 |
| 1137 | 1137 |
| 1138 private: | 1138 private: |
| 1139 // Posts tasks which return fake results to the UI thread. | 1139 // Posts tasks which return fake results to the UI thread. |
| 1140 void ReturnAsyncMethodResult(const AsyncMethodCallback& callback, | 1140 void ReturnAsyncMethodResult(const AsyncMethodCallback& callback, |
| 1141 bool returns_data) { | 1141 bool returns_data) { |
| 1142 MessageLoop::current()->PostTask( | 1142 base::MessageLoop::current()->PostTask( |
| 1143 FROM_HERE, | 1143 FROM_HERE, |
| 1144 base::Bind(&CryptohomeClientStubImpl::ReturnAsyncMethodResultInternal, | 1144 base::Bind(&CryptohomeClientStubImpl::ReturnAsyncMethodResultInternal, |
| 1145 weak_ptr_factory_.GetWeakPtr(), | 1145 weak_ptr_factory_.GetWeakPtr(), |
| 1146 callback, | 1146 callback, |
| 1147 returns_data)); | 1147 returns_data)); |
| 1148 } | 1148 } |
| 1149 | 1149 |
| 1150 // This method is used to implement ReturnAsyncMethodResult. | 1150 // This method is used to implement ReturnAsyncMethodResult. |
| 1151 void ReturnAsyncMethodResultInternal(const AsyncMethodCallback& callback, | 1151 void ReturnAsyncMethodResultInternal(const AsyncMethodCallback& callback, |
| 1152 bool returns_data) { | 1152 bool returns_data) { |
| 1153 callback.Run(async_call_id_); | 1153 callback.Run(async_call_id_); |
| 1154 if (!returns_data && !async_call_status_handler_.is_null()) { | 1154 if (!returns_data && !async_call_status_handler_.is_null()) { |
| 1155 MessageLoop::current()->PostTask( | 1155 base::MessageLoop::current()->PostTask( |
| 1156 FROM_HERE, | 1156 FROM_HERE, |
| 1157 base::Bind(async_call_status_handler_, | 1157 base::Bind(async_call_status_handler_, |
| 1158 async_call_id_, | 1158 async_call_id_, |
| 1159 true, | 1159 true, |
| 1160 cryptohome::MOUNT_ERROR_NONE)); | 1160 cryptohome::MOUNT_ERROR_NONE)); |
| 1161 } else if (returns_data && !async_call_status_data_handler_.is_null()) { | 1161 } else if (returns_data && !async_call_status_data_handler_.is_null()) { |
| 1162 MessageLoop::current()->PostTask( | 1162 base::MessageLoop::current()->PostTask( |
| 1163 FROM_HERE, | 1163 FROM_HERE, |
| 1164 base::Bind(async_call_status_data_handler_, | 1164 base::Bind(async_call_status_data_handler_, |
| 1165 async_call_id_, | 1165 async_call_id_, |
| 1166 true, | 1166 true, |
| 1167 std::string())); | 1167 std::string())); |
| 1168 } | 1168 } |
| 1169 ++async_call_id_; | 1169 ++async_call_id_; |
| 1170 } | 1170 } |
| 1171 | 1171 |
| 1172 int async_call_id_; | 1172 int async_call_id_; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 1198 return new CryptohomeClientStubImpl(); | 1198 return new CryptohomeClientStubImpl(); |
| 1199 } | 1199 } |
| 1200 | 1200 |
| 1201 // static | 1201 // static |
| 1202 std::string CryptohomeClient::GetStubSanitizedUsername( | 1202 std::string CryptohomeClient::GetStubSanitizedUsername( |
| 1203 const std::string& username) { | 1203 const std::string& username) { |
| 1204 return username + kUserIdStubHashSuffix; | 1204 return username + kUserIdStubHashSuffix; |
| 1205 } | 1205 } |
| 1206 | 1206 |
| 1207 } // namespace chromeos | 1207 } // namespace chromeos |
| OLD | NEW |