Loading fastboot/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,7 @@ cc_binary { "android.hardware.fastboot@1.1", "android.hardware.fastboot-V1-ndk", "android.hardware.health@2.0", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libasyncio", "libbase", "libbinder_ndk", Loading fs_mgr/libdm/dm.cpp +14 −0 Original line number Diff line number Diff line Loading @@ -551,6 +551,17 @@ bool DeviceMapper::GetTableInfo(const std::string& name, std::vector<TargetInfo> return GetTable(name, DM_STATUS_TABLE_FLAG, table); } void RedactTableInfo(const struct dm_target_spec& spec, std::string* data) { if (DeviceMapper::GetTargetType(spec) == "crypt") { auto parts = android::base::Split(*data, " "); if (parts.size() < 2) { return; } parts[1] = "redacted"; *data = android::base::Join(parts, " "); } } // private methods of DeviceMapper bool DeviceMapper::GetTable(const std::string& name, uint32_t flags, std::vector<TargetInfo>* table) { Loading Loading @@ -589,6 +600,9 @@ bool DeviceMapper::GetTable(const std::string& name, uint32_t flags, // Note: we use c_str() to eliminate any extra trailing 0s. data = std::string(&buffer[data_offset], next_cursor - data_offset).c_str(); } if (flags & DM_STATUS_TABLE_FLAG) { RedactTableInfo(*spec, &data); } table->emplace_back(*spec, data); cursor = next_cursor; } Loading fs_mgr/libdm/dm_test.cpp +28 −0 Original line number Diff line number Diff line Loading @@ -814,3 +814,31 @@ TEST_F(DmTest, ThinProvisioning) { TempDevice thin("thin", thinTable); ASSERT_TRUE(thin.valid()); } TEST_F(DmTest, RedactDmCrypt) { static constexpr uint64_t kImageSize = 65536; unique_fd temp_file(CreateTempFile("file_1", kImageSize)); ASSERT_GE(temp_file, 0); LoopDevice loop(temp_file, 10s); ASSERT_TRUE(loop.valid()); static constexpr const char* kAlgorithm = "aes-cbc-essiv:sha256"; static constexpr const char* kKey = "0e64ef514e6a1315b1f6390cb57c9e6a"; auto target = std::make_unique<DmTargetCrypt>(0, kImageSize / 512, kAlgorithm, kKey, 0, loop.device(), 0); target->AllowDiscards(); DmTable table; table.AddTarget(std::move(target)); auto& dm = DeviceMapper::Instance(); std::string crypt_path; ASSERT_TRUE(dm.CreateDevice(test_name_, table, &crypt_path, 10s)); std::vector<DeviceMapper::TargetInfo> targets; ASSERT_TRUE(dm.GetTableInfo(test_name_, &targets)); ASSERT_EQ(targets.size(), 1); EXPECT_EQ(targets[0].data.find(kKey), std::string::npos); } healthd/Android.bp +11 −8 Original line number Diff line number Diff line Loading @@ -4,7 +4,10 @@ package { cc_defaults { name: "libbatterymonitor_defaults", cflags: ["-Wall", "-Werror"], cflags: [ "-Wall", "-Werror", ], vendor_available: true, recovery_available: true, export_include_dirs: ["include"], Loading Loading @@ -76,7 +79,7 @@ cc_library_static { defaults: ["libbatterymonitor_defaults"], srcs: ["BatteryMonitor.cpp"], static_libs: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", ], whole_static_libs: [ // Need to translate HIDL to AIDL to support legacy APIs in Loading Loading @@ -165,12 +168,12 @@ cc_library_static { defaults: ["libhealthd_charger_ui_defaults"], static_libs: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "android.hardware.health-translate-ndk", ], export_static_lib_headers: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", ], } Loading Loading @@ -242,7 +245,7 @@ cc_defaults { static_libs: [ // common "android.hardware.health@1.0-convert", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libbatterymonitor", "libcharger_sysprop", "libhealthd_charger_nops", Loading Loading @@ -287,8 +290,8 @@ cc_binary { "libminui", "libsuspend", ], } } }, }, } cc_test { Loading @@ -307,7 +310,7 @@ cc_test { defaults: ["charger_defaults"], srcs: [ "AnimationParser_test.cpp", "healthd_mode_charger_test.cpp" "healthd_mode_charger_test.cpp", ], static_libs: [ "android.hardware.health@1.0", Loading storaged/Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ cc_defaults { shared_libs: [ "android.hardware.health@1.0", "android.hardware.health@2.0", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libbase", "libbinder", "libbinder_ndk", Loading @@ -47,7 +47,7 @@ cc_defaults { "-Wall", "-Werror", "-Wextra", "-Wno-unused-parameter" "-Wno-unused-parameter", ], } Loading Loading
fastboot/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,7 @@ cc_binary { "android.hardware.fastboot@1.1", "android.hardware.fastboot-V1-ndk", "android.hardware.health@2.0", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libasyncio", "libbase", "libbinder_ndk", Loading
fs_mgr/libdm/dm.cpp +14 −0 Original line number Diff line number Diff line Loading @@ -551,6 +551,17 @@ bool DeviceMapper::GetTableInfo(const std::string& name, std::vector<TargetInfo> return GetTable(name, DM_STATUS_TABLE_FLAG, table); } void RedactTableInfo(const struct dm_target_spec& spec, std::string* data) { if (DeviceMapper::GetTargetType(spec) == "crypt") { auto parts = android::base::Split(*data, " "); if (parts.size() < 2) { return; } parts[1] = "redacted"; *data = android::base::Join(parts, " "); } } // private methods of DeviceMapper bool DeviceMapper::GetTable(const std::string& name, uint32_t flags, std::vector<TargetInfo>* table) { Loading Loading @@ -589,6 +600,9 @@ bool DeviceMapper::GetTable(const std::string& name, uint32_t flags, // Note: we use c_str() to eliminate any extra trailing 0s. data = std::string(&buffer[data_offset], next_cursor - data_offset).c_str(); } if (flags & DM_STATUS_TABLE_FLAG) { RedactTableInfo(*spec, &data); } table->emplace_back(*spec, data); cursor = next_cursor; } Loading
fs_mgr/libdm/dm_test.cpp +28 −0 Original line number Diff line number Diff line Loading @@ -814,3 +814,31 @@ TEST_F(DmTest, ThinProvisioning) { TempDevice thin("thin", thinTable); ASSERT_TRUE(thin.valid()); } TEST_F(DmTest, RedactDmCrypt) { static constexpr uint64_t kImageSize = 65536; unique_fd temp_file(CreateTempFile("file_1", kImageSize)); ASSERT_GE(temp_file, 0); LoopDevice loop(temp_file, 10s); ASSERT_TRUE(loop.valid()); static constexpr const char* kAlgorithm = "aes-cbc-essiv:sha256"; static constexpr const char* kKey = "0e64ef514e6a1315b1f6390cb57c9e6a"; auto target = std::make_unique<DmTargetCrypt>(0, kImageSize / 512, kAlgorithm, kKey, 0, loop.device(), 0); target->AllowDiscards(); DmTable table; table.AddTarget(std::move(target)); auto& dm = DeviceMapper::Instance(); std::string crypt_path; ASSERT_TRUE(dm.CreateDevice(test_name_, table, &crypt_path, 10s)); std::vector<DeviceMapper::TargetInfo> targets; ASSERT_TRUE(dm.GetTableInfo(test_name_, &targets)); ASSERT_EQ(targets.size(), 1); EXPECT_EQ(targets[0].data.find(kKey), std::string::npos); }
healthd/Android.bp +11 −8 Original line number Diff line number Diff line Loading @@ -4,7 +4,10 @@ package { cc_defaults { name: "libbatterymonitor_defaults", cflags: ["-Wall", "-Werror"], cflags: [ "-Wall", "-Werror", ], vendor_available: true, recovery_available: true, export_include_dirs: ["include"], Loading Loading @@ -76,7 +79,7 @@ cc_library_static { defaults: ["libbatterymonitor_defaults"], srcs: ["BatteryMonitor.cpp"], static_libs: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", ], whole_static_libs: [ // Need to translate HIDL to AIDL to support legacy APIs in Loading Loading @@ -165,12 +168,12 @@ cc_library_static { defaults: ["libhealthd_charger_ui_defaults"], static_libs: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "android.hardware.health-translate-ndk", ], export_static_lib_headers: [ "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", ], } Loading Loading @@ -242,7 +245,7 @@ cc_defaults { static_libs: [ // common "android.hardware.health@1.0-convert", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libbatterymonitor", "libcharger_sysprop", "libhealthd_charger_nops", Loading Loading @@ -287,8 +290,8 @@ cc_binary { "libminui", "libsuspend", ], } } }, }, } cc_test { Loading @@ -307,7 +310,7 @@ cc_test { defaults: ["charger_defaults"], srcs: [ "AnimationParser_test.cpp", "healthd_mode_charger_test.cpp" "healthd_mode_charger_test.cpp", ], static_libs: [ "android.hardware.health@1.0", Loading
storaged/Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ cc_defaults { shared_libs: [ "android.hardware.health@1.0", "android.hardware.health@2.0", "android.hardware.health-V3-ndk", "android.hardware.health-V4-ndk", "libbase", "libbinder", "libbinder_ndk", Loading @@ -47,7 +47,7 @@ cc_defaults { "-Wall", "-Werror", "-Wextra", "-Wno-unused-parameter" "-Wno-unused-parameter", ], } Loading