Merge changes I1cc5d702,I32ab9854 am: 420f7f8df4 am: c4ba6b738f
am: 13415d9138
Change-Id: If1f0b46e3134fc8a36553ad98f8e03b3e3488f81
diff --git a/Android.mk b/Android.mk
index 57b1803..eff4b01 100644
--- a/Android.mk
+++ b/Android.mk
@@ -65,6 +65,7 @@
LOCAL_STATIC_LIBRARIES := \
libminui \
+ libotautil \
libbase
ifneq ($(TARGET_RECOVERY_UI_MARGIN_HEIGHT),)
diff --git a/common.h b/common.h
index 33c5ba0..de536fd 100644
--- a/common.h
+++ b/common.h
@@ -48,6 +48,4 @@
bool is_ro_debuggable();
-bool reboot(const std::string& command);
-
#endif // RECOVERY_COMMON_H
diff --git a/install.cpp b/install.cpp
index 30fd2c6..a4c6986 100644
--- a/install.cpp
+++ b/install.cpp
@@ -49,10 +49,10 @@
#include <ziparchive/zip_archive.h>
#include "common.h"
-#include "otautil/SysUtil.h"
-#include "otautil/ThermalUtil.h"
#include "otautil/error_code.h"
#include "otautil/paths.h"
+#include "otautil/sysutil.h"
+#include "otautil/thermalutil.h"
#include "private/install.h"
#include "roots.h"
#include "ui.h"
diff --git a/otautil/Android.bp b/otautil/Android.bp
index 572d8df..b058f7b 100644
--- a/otautil/Android.bp
+++ b/otautil/Android.bp
@@ -40,14 +40,15 @@
target: {
android: {
srcs: [
- "DirUtil.cpp",
- "SysUtil.cpp",
- "ThermalUtil.cpp",
+ "dirutil.cpp",
"mounts.cpp",
+ "sysutil.cpp",
+ "thermalutil.cpp",
],
static_libs: [
"libselinux",
+ "libcutils",
],
},
},
diff --git a/otautil/DirUtil.cpp b/otautil/dirutil.cpp
similarity index 98%
rename from otautil/DirUtil.cpp
rename to otautil/dirutil.cpp
index 61c8328..ae1cd5c 100644
--- a/otautil/DirUtil.cpp
+++ b/otautil/dirutil.cpp
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "otautil/DirUtil.h"
+#include "otautil/dirutil.h"
#include <dirent.h>
#include <errno.h>
diff --git a/otautil/include/otautil/DirUtil.h b/otautil/include/otautil/dirutil.h
similarity index 100%
rename from otautil/include/otautil/DirUtil.h
rename to otautil/include/otautil/dirutil.h
diff --git a/otautil/include/otautil/SysUtil.h b/otautil/include/otautil/sysutil.h
similarity index 86%
rename from otautil/include/otautil/SysUtil.h
rename to otautil/include/otautil/sysutil.h
index 52f6d20..649f8ff 100644
--- a/otautil/include/otautil/SysUtil.h
+++ b/otautil/include/otautil/sysutil.h
@@ -50,4 +50,8 @@
std::vector<MappedRange> ranges_;
};
+// Wrapper function to trigger a reboot, by additionally handling quiescent reboot mode. The
+// command should start with "reboot," (e.g. "reboot,bootloader" or "reboot,").
+bool reboot(const std::string& command);
+
#endif // _OTAUTIL_SYSUTIL
diff --git a/otautil/include/otautil/ThermalUtil.h b/otautil/include/otautil/thermalutil.h
similarity index 100%
rename from otautil/include/otautil/ThermalUtil.h
rename to otautil/include/otautil/thermalutil.h
diff --git a/otautil/SysUtil.cpp b/otautil/sysutil.cpp
similarity index 94%
rename from otautil/SysUtil.cpp
rename to otautil/sysutil.cpp
index 48336ad..ab15130 100644
--- a/otautil/SysUtil.cpp
+++ b/otautil/sysutil.cpp
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "otautil/SysUtil.h"
+#include "otautil/sysutil.h"
#include <errno.h> // TEMP_FAILURE_RETRY
#include <fcntl.h>
@@ -28,8 +28,10 @@
#include <android-base/file.h>
#include <android-base/logging.h>
+#include <android-base/properties.h>
#include <android-base/strings.h>
#include <android-base/unique_fd.h>
+#include <cutils/android_reboot.h>
bool MemMapping::MapFD(int fd) {
struct stat sb;
@@ -201,3 +203,11 @@
};
ranges_.clear();
}
+
+bool reboot(const std::string& command) {
+ std::string cmd = command;
+ if (android::base::GetBoolProperty("ro.boot.quiescent", false)) {
+ cmd += ",quiescent";
+ }
+ return android::base::SetProperty(ANDROID_RB_PROPERTY, cmd);
+}
diff --git a/otautil/ThermalUtil.cpp b/otautil/thermalutil.cpp
similarity index 98%
rename from otautil/ThermalUtil.cpp
rename to otautil/thermalutil.cpp
index 5d9bd45..4660e05 100644
--- a/otautil/ThermalUtil.cpp
+++ b/otautil/thermalutil.cpp
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "otautil/ThermalUtil.h"
+#include "otautil/thermalutil.h"
#include <dirent.h>
#include <stdio.h>
diff --git a/recovery.cpp b/recovery.cpp
index d7ece4e..00f3859 100644
--- a/recovery.cpp
+++ b/recovery.cpp
@@ -67,9 +67,10 @@
#include "fuse_sideload.h"
#include "install.h"
#include "minui/minui.h"
-#include "otautil/DirUtil.h"
+#include "otautil/dirutil.h"
#include "otautil/error_code.h"
#include "otautil/paths.h"
+#include "otautil/sysutil.h"
#include "roots.h"
#include "rotate_logs.h"
#include "screen_ui.h"
@@ -177,14 +178,6 @@
return android::base::GetBoolProperty("ro.debuggable", false);
}
-bool reboot(const std::string& command) {
- std::string cmd = command;
- if (android::base::GetBoolProperty("ro.boot.quiescent", false)) {
- cmd += ",quiescent";
- }
- return android::base::SetProperty(ANDROID_RB_PROPERTY, cmd);
-}
-
// command line args come from, in decreasing precedence:
// - the actual command line
// - the bootloader control block (one per line, after "recovery")
diff --git a/tests/component/updater_test.cpp b/tests/component/updater_test.cpp
index 5d3b2d9..48363a6 100644
--- a/tests/component/updater_test.cpp
+++ b/tests/component/updater_test.cpp
@@ -40,10 +40,10 @@
#include "common/test_constants.h"
#include "edify/expr.h"
-#include "otautil/SysUtil.h"
#include "otautil/error_code.h"
#include "otautil/paths.h"
#include "otautil/print_sha1.h"
+#include "otautil/sysutil.h"
#include "updater/blockimg.h"
#include "updater/install.h"
#include "updater/updater.h"
diff --git a/tests/component/verifier_test.cpp b/tests/component/verifier_test.cpp
index 2ef3828..3246ecd 100644
--- a/tests/component/verifier_test.cpp
+++ b/tests/component/verifier_test.cpp
@@ -16,7 +16,6 @@
#include <errno.h>
#include <fcntl.h>
-#include <gtest/gtest.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
@@ -28,9 +27,10 @@
#include <android-base/file.h>
#include <android-base/stringprintf.h>
#include <android-base/test_utils.h>
+#include <gtest/gtest.h>
#include "common/test_constants.h"
-#include "otautil/SysUtil.h"
+#include "otautil/sysutil.h"
#include "verifier.h"
using namespace std::string_literals;
diff --git a/tests/unit/dirutil_test.cpp b/tests/unit/dirutil_test.cpp
index 7f85d13..1ca786c 100644
--- a/tests/unit/dirutil_test.cpp
+++ b/tests/unit/dirutil_test.cpp
@@ -22,7 +22,8 @@
#include <android-base/test_utils.h>
#include <gtest/gtest.h>
-#include <otautil/DirUtil.h>
+
+#include "otautil/dirutil.h"
TEST(DirUtilTest, create_invalid) {
// Requesting to create an empty dir is invalid.
diff --git a/tests/unit/sysutil_test.cpp b/tests/unit/sysutil_test.cpp
index 434ee25..19fa4c5 100644
--- a/tests/unit/sysutil_test.cpp
+++ b/tests/unit/sysutil_test.cpp
@@ -14,14 +14,13 @@
* limitations under the License.
*/
-#include <gtest/gtest.h>
-
#include <string>
#include <android-base/file.h>
#include <android-base/test_utils.h>
+#include <gtest/gtest.h>
-#include "otautil/SysUtil.h"
+#include "otautil/sysutil.h"
TEST(SysUtilTest, InvalidArgs) {
MemMapping mapping;
diff --git a/tests/unit/zip_test.cpp b/tests/unit/zip_test.cpp
index 8276685..47f33d9 100644
--- a/tests/unit/zip_test.cpp
+++ b/tests/unit/zip_test.cpp
@@ -23,10 +23,10 @@
#include <android-base/file.h>
#include <android-base/test_utils.h>
#include <gtest/gtest.h>
-#include <otautil/SysUtil.h>
#include <ziparchive/zip_archive.h>
#include "common/test_constants.h"
+#include "otautil/sysutil.h"
TEST(ZipTest, OpenFromMemory) {
std::string zip_path = from_testdata_base("ziptest_dummy-update.zip");
diff --git a/ui.cpp b/ui.cpp
index 3c9ded7..8983d76 100644
--- a/ui.cpp
+++ b/ui.cpp
@@ -36,14 +36,12 @@
#include <android-base/file.h>
#include <android-base/logging.h>
#include <android-base/parseint.h>
-#include <android-base/properties.h>
#include <android-base/strings.h>
-#include <cutils/android_reboot.h>
#include <minui/minui.h>
-#include "common.h"
-#include "roots.h"
#include "device.h"
+#include "otautil/sysutil.h"
+#include "roots.h"
static constexpr int UI_WAIT_KEY_TIMEOUT_SEC = 120;
static constexpr const char* BRIGHTNESS_FILE = "/sys/class/leds/lcd-backlight/brightness";
diff --git a/updater/install.cpp b/updater/install.cpp
index 9f40fc5..dfd2dc3 100644
--- a/updater/install.cpp
+++ b/updater/install.cpp
@@ -48,7 +48,6 @@
#include <android-base/strings.h>
#include <applypatch/applypatch.h>
#include <bootloader_message/bootloader_message.h>
-#include <cutils/android_reboot.h>
#include <ext4_utils/wipe.h>
#include <openssl/sha.h>
#include <selinux/label.h>
@@ -58,10 +57,11 @@
#include "edify/expr.h"
#include "otafault/ota_io.h"
-#include "otautil/DirUtil.h"
+#include "otautil/dirutil.h"
#include "otautil/error_code.h"
#include "otautil/mounts.h"
#include "otautil/print_sha1.h"
+#include "otautil/sysutil.h"
#include "updater/updater.h"
// Send over the buffer to recovery though the command pipe.
@@ -872,11 +872,7 @@
return StringValue("");
}
- std::string reboot_cmd = "reboot," + property;
- if (android::base::GetBoolProperty("ro.boot.quiescent", false)) {
- reboot_cmd += ",quiescent";
- }
- android::base::SetProperty(ANDROID_RB_PROPERTY, reboot_cmd);
+ reboot("reboot," + property);
sleep(5);
return ErrorAbort(state, kRebootFailure, "%s() failed to reboot", name);
diff --git a/updater/updater.cpp b/updater/updater.cpp
index bf7c36c..40e3f1f 100644
--- a/updater/updater.cpp
+++ b/updater/updater.cpp
@@ -32,9 +32,9 @@
#include "edify/expr.h"
#include "otafault/config.h"
-#include "otautil/DirUtil.h"
-#include "otautil/SysUtil.h"
+#include "otautil/dirutil.h"
#include "otautil/error_code.h"
+#include "otautil/sysutil.h"
#include "updater/blockimg.h"
#include "updater/install.h"