diff options
Diffstat (limited to 'install')
-rw-r--r-- | install/adb_install.cpp | 2 | ||||
-rw-r--r-- | install/include/install/wipe_data.h | 2 | ||||
-rw-r--r-- | install/install.cpp | 2 | ||||
-rw-r--r-- | install/wipe_data.cpp | 38 |
4 files changed, 10 insertions, 34 deletions
diff --git a/install/adb_install.cpp b/install/adb_install.cpp index 5cba7b67c..b12e52944 100644 --- a/install/adb_install.cpp +++ b/install/adb_install.cpp @@ -369,7 +369,7 @@ InstallResult ApplyFromAdb(Device* device, bool rescue_mode, Device::BuiltinActi "to the device with \"adb sideload <filename>\"...\n"); } else { command_map.emplace(MinadbdCommand::kWipeData, [&device]() { - bool result = WipeData(device, false); + bool result = WipeData(device); return std::make_pair(result, true); }); command_map.emplace(MinadbdCommand::kNoOp, []() { return std::make_pair(true, true); }); diff --git a/install/include/install/wipe_data.h b/install/include/install/wipe_data.h index b34891f3d..42cad871e 100644 --- a/install/include/install/wipe_data.h +++ b/install/include/install/wipe_data.h @@ -27,4 +27,4 @@ struct selabel_handle; bool WipeCache(RecoveryUI* ui, const std::function<bool()>& confirm); // Returns true on success. -bool WipeData(Device* device, bool convert_fbe); +bool WipeData(Device* device); diff --git a/install/install.cpp b/install/install.cpp index 811bcb021..83f3cad6b 100644 --- a/install/install.cpp +++ b/install/install.cpp @@ -347,7 +347,7 @@ static bool PerformPowerwashIfRequired(ZipArchiveHandle zip, Device *device) { const auto payload_properties = ExtractPayloadProperties(zip); if (payload_properties.find("POWERWASH=1") != std::string::npos) { LOG(INFO) << "Payload properties has POWERWASH=1, wiping userdata..."; - return WipeData(device, true); + return WipeData(device); } return true; } diff --git a/install/wipe_data.cpp b/install/wipe_data.cpp index 4eecf72c6..024c1e1d5 100644 --- a/install/wipe_data.cpp +++ b/install/wipe_data.cpp @@ -16,9 +16,7 @@ #include "install/wipe_data.h" -#include <stdio.h> #include <string.h> -#include <sys/stat.h> #include <functional> #include <vector> @@ -37,9 +35,8 @@ constexpr const char* CACHE_ROOT = "/cache"; constexpr const char* DATA_ROOT = "/data"; constexpr const char* METADATA_ROOT = "/metadata"; -static bool EraseVolume(const char* volume, RecoveryUI* ui, bool convert_fbe) { +static bool EraseVolume(const char* volume, RecoveryUI* ui) { bool is_cache = (strcmp(volume, CACHE_ROOT) == 0); - bool is_data = (strcmp(volume, DATA_ROOT) == 0); std::vector<saved_log_file> log_files; if (is_cache) { @@ -52,28 +49,7 @@ static bool EraseVolume(const char* volume, RecoveryUI* ui, bool convert_fbe) { ensure_path_unmounted(volume); - int result; - if (is_data && convert_fbe) { - constexpr const char* CONVERT_FBE_DIR = "/tmp/convert_fbe"; - constexpr const char* CONVERT_FBE_FILE = "/tmp/convert_fbe/convert_fbe"; - // Create convert_fbe breadcrumb file to signal init to convert to file based encryption, not - // full disk encryption. - if (mkdir(CONVERT_FBE_DIR, 0700) != 0) { - PLOG(ERROR) << "Failed to mkdir " << CONVERT_FBE_DIR; - return false; - } - FILE* f = fopen(CONVERT_FBE_FILE, "wbe"); - if (!f) { - PLOG(ERROR) << "Failed to convert to file encryption"; - return false; - } - fclose(f); - result = format_volume(volume, CONVERT_FBE_DIR); - remove(CONVERT_FBE_FILE); - rmdir(CONVERT_FBE_DIR); - } else { - result = format_volume(volume); - } + int result = format_volume(volume); if (is_cache) { RestoreLogFilesAfterFormat(log_files); @@ -97,12 +73,12 @@ bool WipeCache(RecoveryUI* ui, const std::function<bool()>& confirm_func) { ui->SetBackground(RecoveryUI::ERASING); ui->SetProgressType(RecoveryUI::INDETERMINATE); - bool success = EraseVolume("/cache", ui, false); + bool success = EraseVolume("/cache", ui); ui->Print("Cache wipe %s.\n", success ? "complete" : "failed"); return success; } -bool WipeData(Device* device, bool convert_fbe) { +bool WipeData(Device* device) { RecoveryUI* ui = device->GetUI(); ui->Print("\n-- Wiping data...\n"); ui->SetBackground(RecoveryUI::ERASING); @@ -115,13 +91,13 @@ bool WipeData(Device* device, bool convert_fbe) { bool success = device->PreWipeData(); if (success) { - success &= EraseVolume(DATA_ROOT, ui, convert_fbe); + success &= EraseVolume(DATA_ROOT, ui); bool has_cache = volume_for_mount_point("/cache") != nullptr; if (has_cache) { - success &= EraseVolume(CACHE_ROOT, ui, false); + success &= EraseVolume(CACHE_ROOT, ui); } if (volume_for_mount_point(METADATA_ROOT) != nullptr) { - success &= EraseVolume(METADATA_ROOT, ui, false); + success &= EraseVolume(METADATA_ROOT, ui); } } if (success) { |