generalize "install from sdcard" to "install from external storage"

Allow sideloading of OTA packages from USB drives that appear as
/dev/block/sda1.

Change-Id: I1908576c24547cd0088475d8c8917699cd906868
diff --git a/recovery.c b/recovery.c
index 6c4507f..a0df165 100644
--- a/recovery.c
+++ b/recovery.c
@@ -52,7 +52,7 @@
 static const char *COMMAND_FILE = "CACHE:recovery/command";
 static const char *INTENT_FILE = "CACHE:recovery/intent";
 static const char *LOG_FILE = "CACHE:recovery/log";
-static const char *SDCARD_ROOT = "SDCARD:";
+static const char *EXT_ROOT = "EXT:";
 static const char *TEMPORARY_LOG_FILE = "/tmp/recovery.log";
 static const char *SIDELOAD_TEMP_DIR = "TMP:sideload";
 
@@ -479,7 +479,7 @@
     // Mount the sdcard when the package selection menu is enabled so
     // you can "adb push" packages to the sdcard and immediately
     // install them.
-    ensure_root_path_mounted(SDCARD_ROOT);
+    ensure_root_path_mounted(EXT_ROOT);
 
     const char* MENU_HEADERS[] = { "Choose a package to install:",
                                    root_path,
@@ -491,6 +491,7 @@
     d = opendir(translate_root_path(root_path, path, sizeof(path)));
     if (d == NULL) {
         LOGE("error opening %s: %s\n", path, strerror(errno));
+        ensure_root_path_unmounted(EXT_ROOT);
         return 0;
     }
 
@@ -588,6 +589,7 @@
     free(zips);
     free(headers);
 
+    ensure_root_path_unmounted(EXT_ROOT);
     return result;
 }
 
@@ -661,9 +663,9 @@
                 if (!ui_text_visible()) return;
                 break;
 
-            case ITEM_APPLY_SDCARD:
+            case ITEM_APPLY_EXT:
                 ;
-                int status = sdcard_directory(SDCARD_ROOT);
+                int status = sdcard_directory(EXT_ROOT);
                 if (status >= 0) {
                     if (status != INSTALL_SUCCESS) {
                         ui_set_background(BACKGROUND_ICON_ERROR);