Skip to content

Commit

Permalink
fscrypt_destroy_user_storage: continue when EnsurePolicy returns false
Browse files Browse the repository at this point in the history
Change-Id: I8a7d4343a12a7be346b96d27226f83d890a8597a
  • Loading branch information
DarthJabba9 authored and SIDDK24 committed Mar 3, 2022
1 parent df659a4 commit a53153a
Showing 1 changed file with 19 additions and 9 deletions.
28 changes: 19 additions & 9 deletions crypto/fscrypt/FsCrypt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -875,13 +875,18 @@ bool fscrypt_prepare_user_storage(const std::string& volume_uuid, userid_t user_
EncryptionPolicy de_policy;
if (volume_uuid.empty()) {
if (!lookup_policy(s_de_policies, user_id, &de_policy)) return false;
if (!EnsurePolicy(de_policy, system_de_path)) return false;
if (!EnsurePolicy(de_policy, misc_de_path)) return false;
if (!EnsurePolicy(de_policy, vendor_de_path)) return false;
if (!EnsurePolicy(de_policy, system_de_path))
LOG(INFO) << "EnsurePolicy returned false for " << system_de_path;
if (!EnsurePolicy(de_policy, misc_de_path))
LOG(INFO) << "EnsurePolicy returned false for " << misc_de_path;
if (!EnsurePolicy(de_policy, vendor_de_path))
LOG(INFO) << "EnsurePolicy returned false for " << vendor_de_path;
} else {
if (!read_or_create_volkey(misc_de_path, volume_uuid, &de_policy)) return false;
}
if (!EnsurePolicy(de_policy, user_de_path)) return false;
if (!EnsurePolicy(de_policy, user_de_path))
LOG(INFO) << "EnsurePolicy returned false for " << user_de_path;

}
}

Expand All @@ -906,14 +911,19 @@ bool fscrypt_prepare_user_storage(const std::string& volume_uuid, userid_t user_
EncryptionPolicy ce_policy;
if (volume_uuid.empty()) {
if (!lookup_policy(s_ce_policies, user_id, &ce_policy)) return false;
if (!EnsurePolicy(ce_policy, system_ce_path)) return false;
if (!EnsurePolicy(ce_policy, misc_ce_path)) return false;
if (!EnsurePolicy(ce_policy, vendor_ce_path)) return false;
if (!EnsurePolicy(ce_policy, system_ce_path))
LOG(INFO) << "EnsurePolicy returned false for " << system_ce_path;
if (!EnsurePolicy(ce_policy, misc_ce_path))
LOG(INFO) << "EnsurePolicy returned false for " << misc_ce_path;
if (!EnsurePolicy(ce_policy, vendor_ce_path))
LOG(INFO) << "EnsurePolicy returned false for " << vendor_ce_path;
} else {
if (!read_or_create_volkey(misc_ce_path, volume_uuid, &ce_policy)) return false;
}
if (!EnsurePolicy(ce_policy, media_ce_path)) return false;
if (!EnsurePolicy(ce_policy, user_ce_path)) return false;
if (!EnsurePolicy(ce_policy, media_ce_path))
LOG(INFO) << "EnsurePolicy returned false for " << media_ce_path;
if (!EnsurePolicy(ce_policy, user_ce_path))
LOG(INFO) << "EnsurePolicy returned false for " << user_ce_path;
}

if (volume_uuid.empty()) {
Expand Down

0 comments on commit a53153a

Please sign in to comment.