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

Unified Diff: components/password_manager/core/browser/login_database.cc

Issue 1192493005: Encrypt password values in LoginDatabase on Mac. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments Created 5 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: components/password_manager/core/browser/login_database.cc
diff --git a/components/password_manager/core/browser/login_database.cc b/components/password_manager/core/browser/login_database.cc
index e7865668b2fd14df35fb1647a93275ed849118e6..d4609ce68c888a91b29c403103ce8529440a0694 100644
--- a/components/password_manager/core/browser/login_database.cc
+++ b/components/password_manager/core/browser/login_database.cc
@@ -199,7 +199,7 @@ bool CreateIndexOnSignonRealm(sql::Connection* db, const char* table_name) {
} // namespace
LoginDatabase::LoginDatabase(const base::FilePath& db_path)
- : db_path_(db_path) {
+ : db_path_(db_path), clear_password_values_(false) {
}
LoginDatabase::~LoginDatabase() {
@@ -534,8 +534,9 @@ PasswordStoreChangeList LoginDatabase::AddLogin(const PasswordForm& form) {
if (!DoesMatchConstraints(form))
return list;
std::string encrypted_password;
- if (EncryptedString(form.password_value, &encrypted_password) !=
- ENCRYPTION_RESULT_SUCCESS)
+ if (EncryptedString(
+ clear_password_values_ ? base::string16() : form.password_value,
+ &encrypted_password) != ENCRYPTION_RESULT_SUCCESS)
return list;
// You *must* change LoginTableColumns if this query changes.
@@ -578,8 +579,9 @@ PasswordStoreChangeList LoginDatabase::AddLogin(const PasswordForm& form) {
PasswordStoreChangeList LoginDatabase::UpdateLogin(const PasswordForm& form) {
std::string encrypted_password;
- if (EncryptedString(form.password_value, &encrypted_password) !=
- ENCRYPTION_RESULT_SUCCESS)
+ if (EncryptedString(
+ clear_password_values_ ? base::string16() : form.password_value,
+ &encrypted_password) != ENCRYPTION_RESULT_SUCCESS)
return PasswordStoreChangeList();
// Replacement is necessary to deal with updating imported credentials. See

Powered by Google App Engine
This is Rietveld 408576698