diff options
| author | David Anderson <dvander@google.com> | 2019-04-01 14:37:33 -0700 |
|---|---|---|
| committer | David Anderson <dvander@google.com> | 2019-04-01 17:13:11 -0700 |
| commit | c52663c4ea118386b54fcaa5ef148e8a0c7d5b30 (patch) | |
| tree | eff3c98239c210d81bf334cb6844e768f53d2b15 /update_verifier | |
| parent | 3168ddf79dee2b7256eb43b404dad5c3a0d71af2 (diff) | |
Append -verity when looking for verity device-mapper names.
Bug: 123666267
Test: recovery_component_test passes
Change-Id: I9b608b3fbfa14cc45ad0b4de6cb5cecdef983acb
Diffstat (limited to 'update_verifier')
| -rw-r--r-- | update_verifier/update_verifier.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/update_verifier/update_verifier.cpp b/update_verifier/update_verifier.cpp index 0cf536ce..d04c455d 100644 --- a/update_verifier/update_verifier.cpp +++ b/update_verifier/update_verifier.cpp @@ -115,6 +115,15 @@ std::map<std::string, std::string> UpdateVerifier::FindDmPartitions() { // AVB is using 'vroot' for the root block device but we're expecting 'system'. if (dm_block_name == "vroot") { dm_block_name = "system"; + } else if (android::base::EndsWith(dm_block_name, "-verity")) { + auto npos = dm_block_name.rfind("-verity"); + dm_block_name = dm_block_name.substr(0, npos); + } else if (!android::base::GetProperty("ro.boot.avb_version", "").empty()) { + // Verified Boot 1.0 doesn't add a -verity suffix. On AVB 2 devices, + // if DAP is enabled, then a -verity suffix must be used to + // differentiate between dm-linear and dm-verity devices. If we get + // here, we're AVB 2 and looking at a non-verity partition. + continue; } dm_block_devices.emplace(dm_block_name, DEV_PATH + std::string(namelist[n]->d_name)); |
