Add android::fs_mgr namespace for new Fstab code
Also add libfstab dependencies where needed. Previously the `typedef struct FstabEntry Volume;` line served to both define a `struct FstabEntry` as well as alias Volume to it. With the new namespace for android::fs_mgr::FstabEntry, `struct FstabEntry` isn't compatible anymore, so we need to alias Volume to the real android::fs_mgr::FstabEntry. In doing so, we need to include <fstab/fstab.h> and this requires libfstab as a library, which a few modules did not have before. Test: treehugger Change-Id: I655209a0efb304b3e0568db0748bd5cf7cecbdb7
This commit is contained in:
parent
9a54dd3bf9
commit
72a114a3e1
5 changed files with 18 additions and 5 deletions
|
@ -45,6 +45,7 @@ cc_library {
|
|||
static_libs: [
|
||||
"libminui",
|
||||
"libotautil",
|
||||
"libfstab",
|
||||
],
|
||||
|
||||
shared_libs: [
|
||||
|
@ -157,6 +158,7 @@ cc_defaults {
|
|||
"libhealthhalutils",
|
||||
"libvintf_recovery",
|
||||
"libvintf",
|
||||
"libfstab",
|
||||
],
|
||||
}
|
||||
|
||||
|
@ -260,6 +262,7 @@ cc_binary {
|
|||
|
||||
static_libs: [
|
||||
"libotautil",
|
||||
"libfstab",
|
||||
],
|
||||
|
||||
init_rc: [
|
||||
|
@ -287,6 +290,7 @@ cc_binary {
|
|||
|
||||
static_libs: [
|
||||
"libotautil",
|
||||
"libfstab",
|
||||
],
|
||||
|
||||
init_rc: [
|
||||
|
|
|
@ -29,6 +29,9 @@
|
|||
#include <android-base/unique_fd.h>
|
||||
#include <fstab/fstab.h>
|
||||
|
||||
using android::fs_mgr::Fstab;
|
||||
using android::fs_mgr::ReadDefaultFstab;
|
||||
|
||||
static std::string get_misc_blk_device(std::string* err) {
|
||||
Fstab fstab;
|
||||
if (!ReadDefaultFstab(&fstab)) {
|
||||
|
|
|
@ -45,6 +45,10 @@
|
|||
#include "otautil/mounts.h"
|
||||
#include "otautil/sysutil.h"
|
||||
|
||||
using android::fs_mgr::Fstab;
|
||||
using android::fs_mgr::FstabEntry;
|
||||
using android::fs_mgr::ReadDefaultFstab;
|
||||
|
||||
static Fstab fstab;
|
||||
|
||||
extern struct selabel_handle* sehandle;
|
||||
|
@ -69,10 +73,7 @@ void load_volume_table() {
|
|||
}
|
||||
|
||||
Volume* volume_for_mount_point(const std::string& mount_point) {
|
||||
auto it = std::find_if(fstab.begin(), fstab.end(), [&mount_point](const auto& entry) {
|
||||
return entry.mount_point == mount_point;
|
||||
});
|
||||
return it == fstab.end() ? nullptr : &*it;
|
||||
return android::fs_mgr::GetEntryForMountPoint(&fstab, mount_point);
|
||||
}
|
||||
|
||||
// Mount the volume specified by path at the given mount_point.
|
||||
|
|
4
roots.h
4
roots.h
|
@ -19,7 +19,9 @@
|
|||
|
||||
#include <string>
|
||||
|
||||
typedef struct FstabEntry Volume;
|
||||
#include <fstab/fstab.h>
|
||||
|
||||
using Volume = android::fs_mgr::FstabEntry;
|
||||
|
||||
// Load and parse volume data from /etc/recovery.fstab.
|
||||
void load_volume_table();
|
||||
|
|
|
@ -119,6 +119,9 @@
|
|||
|
||||
#include "otautil/error_code.h"
|
||||
|
||||
using android::fs_mgr::Fstab;
|
||||
using android::fs_mgr::ReadDefaultFstab;
|
||||
|
||||
static constexpr int WINDOW_SIZE = 5;
|
||||
static constexpr int FIBMAP_RETRY_LIMIT = 3;
|
||||
|
||||
|
|
Loading…
Reference in a new issue