From 91e3aee9bdc1a503affdd925dd4da352a198abca Mon Sep 17 00:00:00 2001 From: Elliott Hughes Date: Fri, 23 Sep 2016 15:30:55 -0700 Subject: Switch to . Bug: http://b/23102347 Test: boot into recovery. Change-Id: Ib2ca560f1312961c21fbaa294bb068de19cb883e --- adb_install.cpp | 7 ++++--- bootloader_message/bootloader_message.cpp | 11 +++++------ recovery.cpp | 20 ++++++++------------ screen_ui.cpp | 8 ++++---- ui.cpp | 4 ++-- uncrypt/uncrypt.cpp | 14 +++++++------- updater/install.cpp | 19 +++++++------------ wear_ui.cpp | 6 +++--- 8 files changed, 40 insertions(+), 49 deletions(-) diff --git a/adb_install.cpp b/adb_install.cpp index b05fda13a..fab72f8a4 100644 --- a/adb_install.cpp +++ b/adb_install.cpp @@ -26,13 +26,14 @@ #include #include "ui.h" -#include "cutils/properties.h" #include "install.h" #include "common.h" #include "adb_install.h" #include "minadbd/fuse_adb_provider.h" #include "fuse_sideload.h" +#include + static void set_usb_driver(RecoveryUI* ui, bool enabled) { int fd = open("/sys/class/android_usb/android0/enable", O_WRONLY); if (fd < 0) { @@ -49,7 +50,7 @@ static void set_usb_driver(RecoveryUI* ui, bool enabled) { static void stop_adbd(RecoveryUI* ui) { ui->Print("Stopping adbd...\n"); - property_set("ctl.stop", "adbd"); + android::base::SetProperty("ctl.stop", "adbd"); set_usb_driver(ui, false); } @@ -57,7 +58,7 @@ static void maybe_restart_adbd(RecoveryUI* ui) { if (is_ro_debuggable()) { ui->Print("Restarting adbd...\n"); set_usb_driver(ui, true); - property_set("ctl.start", "adbd"); + android::base::SetProperty("ctl.start", "adbd"); } } diff --git a/bootloader_message/bootloader_message.cpp b/bootloader_message/bootloader_message.cpp index 9de7dff40..e0c95d223 100644 --- a/bootloader_message/bootloader_message.cpp +++ b/bootloader_message/bootloader_message.cpp @@ -19,25 +19,24 @@ #include #include #include -#include #include #include #include +#include #include #include #include static struct fstab* read_fstab(std::string* err) { - // The fstab path is always "/fstab.${ro.hardware}". - std::string fstab_path = "/fstab."; - char value[PROP_VALUE_MAX]; - if (__system_property_get("ro.hardware", value) == 0) { + std::string ro_hardware = android::base::GetProperty("ro.hardware", ""); + if (ro_hardware.empty()) { *err = "failed to get ro.hardware"; return nullptr; } - fstab_path += value; + // 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; diff --git a/recovery.cpp b/recovery.cpp index d3f9c47ae..e0f5a2ee3 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -43,12 +43,13 @@ #include #include #include +#include #include #include #include #include #include -#include +#include /* for property_list */ #include #include /* private pmsg functions */ #include @@ -213,8 +214,7 @@ static void check_and_fclose(FILE *fp, const char *name) { } bool is_ro_debuggable() { - char value[PROPERTY_VALUE_MAX+1]; - return (property_get("ro.debuggable", value, NULL) == 1 && value[0] == '1'); + return android::base::GetBoolProperty("ro.debuggable", false); } static void redirect_stdio(const char* filename) { @@ -1264,15 +1264,12 @@ prompt_and_wait(Device* device, int status) { break; case Device::MOUNT_SYSTEM: - char system_root_image[PROPERTY_VALUE_MAX]; - property_get("ro.build.system_root_image", system_root_image, ""); - // For a system image built with the root directory (i.e. // system_root_image == "true"), we mount it to /system_root, and symlink /system // to /system_root/system to make adb shell work (the symlink is created through // the build system). // Bug: 22855115 - if (strcmp(system_root_image, "true") == 0) { + if (android::base::GetBoolProperty("ro.build.system_root_image", false)) { if (ensure_path_mounted_at("/", "/system_root") != -1) { ui->Print("Mounted /system.\n"); } @@ -1694,8 +1691,7 @@ int main(int argc, char **argv) { ui->Print("Retry attempt %d\n", retry_count); // Reboot and retry the update - int ret = property_set(ANDROID_RB_PROPERTY, "reboot,recovery"); - if (ret < 0) { + if (!android::base::SetProperty(ANDROID_RB_PROPERTY, "reboot,recovery")) { ui->Print("Reboot failed\n"); } else { while (true) { @@ -1775,17 +1771,17 @@ int main(int argc, char **argv) { switch (after) { case Device::SHUTDOWN: ui->Print("Shutting down...\n"); - property_set(ANDROID_RB_PROPERTY, "shutdown,"); + android::base::SetProperty(ANDROID_RB_PROPERTY, "shutdown,"); break; case Device::REBOOT_BOOTLOADER: ui->Print("Rebooting to bootloader...\n"); - property_set(ANDROID_RB_PROPERTY, "reboot,bootloader"); + android::base::SetProperty(ANDROID_RB_PROPERTY, "reboot,bootloader"); break; default: ui->Print("Rebooting...\n"); - property_set(ANDROID_RB_PROPERTY, "reboot,"); + android::base::SetProperty(ANDROID_RB_PROPERTY, "reboot,"); break; } while (true) { diff --git a/screen_ui.cpp b/screen_ui.cpp index a33605ac0..a7b03c50d 100644 --- a/screen_ui.cpp +++ b/screen_ui.cpp @@ -32,9 +32,9 @@ #include #include +#include #include #include -#include #include "common.h" #include "device.h" @@ -293,8 +293,8 @@ void ScreenRecoveryUI::draw_screen_locked() { int y = 0; if (show_menu) { - char recovery_fingerprint[PROPERTY_VALUE_MAX]; - property_get("ro.bootimage.build.fingerprint", recovery_fingerprint, ""); + std::string recovery_fingerprint = + android::base::GetProperty("ro.bootimage.build.fingerprint", ""); SetColor(INFO); DrawTextLine(TEXT_INDENT, &y, "Android Recovery", true); @@ -460,7 +460,7 @@ void ScreenRecoveryUI::Init() { RecoveryUI::Init(); InitTextParams(); - density_ = static_cast(property_get_int32("ro.sf.lcd_density", 160)) / 160.f; + density_ = static_cast(android::base::GetIntProperty("ro.sf.lcd_density", 160)) / 160.f; // Are we portrait or landscape? layout_ = (gr_fb_width() > gr_fb_height()) ? LANDSCAPE : PORTRAIT; diff --git a/ui.cpp b/ui.cpp index 2efb759db..78b6e4f1b 100644 --- a/ui.cpp +++ b/ui.cpp @@ -28,7 +28,7 @@ #include #include -#include +#include #include #include "common.h" @@ -175,7 +175,7 @@ void RecoveryUI::ProcessKey(int key_code, int updown) { case RecoveryUI::REBOOT: if (reboot_enabled) { - property_set(ANDROID_RB_PROPERTY, "reboot,"); + android::base::SetProperty(ANDROID_RB_PROPERTY, "reboot,"); while (true) { pause(); } } break; diff --git a/uncrypt/uncrypt.cpp b/uncrypt/uncrypt.cpp index 1fba717f3..904ddad1b 100644 --- a/uncrypt/uncrypt.cpp +++ b/uncrypt/uncrypt.cpp @@ -107,12 +107,12 @@ #include #include +#include #include #include #include #include #include -#include #include #include @@ -163,13 +163,15 @@ static struct fstab* read_fstab() { fstab = NULL; // The fstab path is always "/fstab.${ro.hardware}". - char fstab_path[PATH_MAX+1] = "/fstab."; - if (!property_get("ro.hardware", fstab_path+strlen(fstab_path), "")) { + std::string ro_hardware = android::base::GetProperty("ro.hardware", ""); + if (ro_hardware.empty()) { LOG(ERROR) << "failed to get ro.hardware"; return NULL; } - fstab = fs_mgr_read_fstab(fstab_path); + std::string fstab_path = "/fstab." + ro_hardware; + + fstab = fs_mgr_read_fstab(fstab_path.c_str()); if (!fstab) { LOG(ERROR) << "failed to read " << fstab_path; return NULL; @@ -194,9 +196,7 @@ static const char* find_block_device(const char* path, bool* encryptable, bool* *encryptable = false; if (fs_mgr_is_encryptable(v) || fs_mgr_is_file_encrypted(v)) { *encryptable = true; - char buffer[PROPERTY_VALUE_MAX+1]; - if (property_get("ro.crypto.state", buffer, "") && - strcmp(buffer, "encrypted") == 0) { + if (android::base::GetProperty("ro.crypto.state", "") == "encrypted") { *encrypted = true; } } diff --git a/updater/install.cpp b/updater/install.cpp index 4c4886d51..8c33c2bf3 100644 --- a/updater/install.cpp +++ b/updater/install.cpp @@ -37,6 +37,7 @@ #include #include +#include #include #include #include @@ -46,7 +47,6 @@ #include "applypatch/applypatch.h" #include "cutils/android_reboot.h" #include "cutils/misc.h" -#include "cutils/properties.h" #include "edify/expr.h" #include "error_code.h" #include "minzip/DirUtil.h" @@ -906,11 +906,10 @@ Value* GetPropFn(const char* name, State* state, int argc, Expr* argv[]) { char* key = Evaluate(state, argv[0]); if (key == NULL) return NULL; - char value[PROPERTY_VALUE_MAX]; - property_get(key, value, ""); + std::string value = android::base::GetProperty(key, ""); free(key); - return StringValue(strdup(value)); + return StringValue(strdup(value.c_str())); } @@ -1301,9 +1300,8 @@ Value* RebootNowFn(const char* name, State* state, int argc, Expr* argv[]) { char* property; if (ReadArgs(state, argv, 2, &filename, &property) < 0) return NULL; - char buffer[80]; - // zero out the 'command' field of the bootloader message. + char buffer[80]; memset(buffer, 0, sizeof(((struct bootloader_message*)0)->command)); FILE* f = ota_fopen(filename, "r+b"); fseek(f, offsetof(struct bootloader_message, command), SEEK_SET); @@ -1311,12 +1309,9 @@ Value* RebootNowFn(const char* name, State* state, int argc, Expr* argv[]) { ota_fclose(f); free(filename); - strcpy(buffer, "reboot,"); - if (property != NULL) { - strncat(buffer, property, sizeof(buffer)-10); - } - - property_set(ANDROID_RB_PROPERTY, buffer); + std::string reboot_cmd = "reboot,"; + if (property != nullptr) reboot_cmd += property; + android::base::SetProperty(ANDROID_RB_PROPERTY, reboot_cmd); sleep(5); free(property); diff --git a/wear_ui.cpp b/wear_ui.cpp index 3ea1060e4..0918ac457 100644 --- a/wear_ui.cpp +++ b/wear_ui.cpp @@ -30,7 +30,7 @@ #include "common.h" #include "device.h" #include "wear_ui.h" -#include "cutils/properties.h" +#include "android-base/properties.h" #include "android-base/strings.h" #include "android-base/stringprintf.h" @@ -119,8 +119,8 @@ void WearRecoveryUI::draw_screen_locked() int y = outer_height; int x = outer_width; if (show_menu) { - char recovery_fingerprint[PROPERTY_VALUE_MAX]; - property_get("ro.bootimage.build.fingerprint", recovery_fingerprint, ""); + std::string recovery_fingerprint = + android::base::GetProperty("ro.bootimage.build.fingerprint", ""); SetColor(HEADER); DrawTextLine(x + 4, &y, "Android Recovery", true); for (auto& chunk: android::base::Split(recovery_fingerprint, ":")) { -- cgit v1.2.3