summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBowgo Tsai <bowgotsai@google.com>2017-03-10 09:00:40 +0100
committerBowgo Tsai <bowgotsai@google.com>2017-03-10 10:27:31 +0100
commitd13b6cf29c71412adac3b0dca5eddcd6c75f5163 (patch)
treed31cee0706e0d942689c65cd30a0edf94c591c32
parentMerge "recovery: Fix the FIXME in get_menu_selection()." (diff)
downloadandroid_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar.gz
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar.bz2
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar.lz
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar.xz
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.tar.zst
android_bootable_recovery-d13b6cf29c71412adac3b0dca5eddcd6c75f5163.zip
-rw-r--r--bootloader_message/bootloader_message.cpp23
-rw-r--r--roots.cpp2
-rw-r--r--tests/common/component_test_util.h17
-rw-r--r--uncrypt/uncrypt.cpp15
4 files changed, 13 insertions, 44 deletions
diff --git a/bootloader_message/bootloader_message.cpp b/bootloader_message/bootloader_message.cpp
index b873d3dc3..d8086be28 100644
--- a/bootloader_message/bootloader_message.cpp
+++ b/bootloader_message/bootloader_message.cpp
@@ -29,27 +29,14 @@
#include <android-base/unique_fd.h>
#include <fs_mgr.h>
-static struct fstab* read_fstab(std::string* err) {
- std::string ro_hardware = android::base::GetProperty("ro.hardware", "");
- if (ro_hardware.empty()) {
- *err = "failed to get ro.hardware";
- return nullptr;
- }
- // The fstab path is always "/fstab.${ro.hardware}".
- std::string fstab_path = "/fstab." + ro_hardware;
- struct fstab* fstab = fs_mgr_read_fstab(fstab_path.c_str());
- if (fstab == nullptr) {
- *err = "failed to read " + fstab_path;
- }
- return fstab;
-}
-
static std::string get_misc_blk_device(std::string* err) {
- struct fstab* fstab = read_fstab(err);
- if (fstab == nullptr) {
+ std::unique_ptr<fstab, decltype(&fs_mgr_free_fstab)> fstab(fs_mgr_read_fstab_default(),
+ fs_mgr_free_fstab);
+ if (!fstab) {
+ *err = "failed to read default fstab";
return "";
}
- fstab_rec* record = fs_mgr_get_entry_for_mount_point(fstab, "/misc");
+ fstab_rec* record = fs_mgr_get_entry_for_mount_point(fstab.get(), "/misc");
if (record == nullptr) {
*err = "failed to find /misc partition";
return "";
diff --git a/roots.cpp b/roots.cpp
index 4a0a4948a..5ba53c245 100644
--- a/roots.cpp
+++ b/roots.cpp
@@ -44,7 +44,7 @@ void load_volume_table()
int i;
int ret;
- fstab = fs_mgr_read_fstab("/etc/recovery.fstab");
+ fstab = fs_mgr_read_fstab_with_dt("/etc/recovery.fstab");
if (!fstab) {
LOG(ERROR) << "failed to read /etc/recovery.fstab";
return;
diff --git a/tests/common/component_test_util.h b/tests/common/component_test_util.h
index 44322972b..3fee32d62 100644
--- a/tests/common/component_test_util.h
+++ b/tests/common/component_test_util.h
@@ -24,21 +24,14 @@
// Check if the /misc entry exists in the fstab.
static bool parse_misc() {
- // The fstab path is "/fstab.${ro.hardware}".
- std::string ro_hardware = android::base::GetProperty("ro.hardware", "");
- if (ro_hardware.empty()) {
- GTEST_LOG_(INFO) << "Failed to get ro.hardware.";
+ std::unique_ptr<fstab, decltype(&fs_mgr_free_fstab)> fstab(fs_mgr_read_fstab_default(),
+ fs_mgr_free_fstab);
+ if (!fstab) {
+ GTEST_LOG_(INFO) << "Failed to read default fstab";
return false;
}
- std::string fstab_path = "/fstab." + ro_hardware;
- fstab* fstab = fs_mgr_read_fstab(fstab_path.c_str());
- if (fstab == nullptr) {
- GTEST_LOG_(INFO) << "Failed to read " << fstab_path;
- return false;
- }
-
- fstab_rec* record = fs_mgr_get_entry_for_mount_point(fstab, "/misc");
+ fstab_rec* record = fs_mgr_get_entry_for_mount_point(fstab.get(), "/misc");
if (record == nullptr) {
GTEST_LOG_(INFO) << "Failed to find /misc in fstab.";
return false;
diff --git a/uncrypt/uncrypt.cpp b/uncrypt/uncrypt.cpp
index a06384dd5..07d183be2 100644
--- a/uncrypt/uncrypt.cpp
+++ b/uncrypt/uncrypt.cpp
@@ -163,20 +163,9 @@ static void add_block_to_ranges(std::vector<int>& ranges, int new_block) {
}
static struct fstab* read_fstab() {
- fstab = NULL;
-
- // The fstab path is always "/fstab.${ro.hardware}".
- std::string ro_hardware = android::base::GetProperty("ro.hardware", "");
- if (ro_hardware.empty()) {
- LOG(ERROR) << "failed to get ro.hardware";
- return NULL;
- }
-
- std::string fstab_path = "/fstab." + ro_hardware;
-
- fstab = fs_mgr_read_fstab(fstab_path.c_str());
+ fstab = fs_mgr_read_fstab_default();
if (!fstab) {
- LOG(ERROR) << "failed to read " << fstab_path;
+ LOG(ERROR) << "failed to read default fstab";
return NULL;
}