Move all AOSP code out of recovery binary

Improves license compatibility between GPL and Apache

Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
diff --git a/adb_install.cpp b/adb_install.cpp
index f227bc0..c18126d 100644
--- a/adb_install.cpp
+++ b/adb_install.cpp
@@ -24,17 +24,13 @@
 #include <sys/stat.h>
 #include <signal.h>
 #include <fcntl.h>
+#include <stdio.h>
 
 #include "ui.h"
 #include "cutils/properties.h"
-#include "install.h"
-#include "common.h"
 #include "adb_install.h"
 extern "C" {
 #include "minadbd/adb.h"
-#include "twinstall.h"
-#include "data.h"
-int TWinstall_zip(const char* path, int* wipe_cache);
 }
 
 static RecoveryUI* ui = NULL;
@@ -47,20 +43,20 @@
    It's not a critical error so we're disabling the error messages.
         ui->Print("failed to open driver control: %s\n", strerror(errno));
 */
-		LOGI("failed to open driver control: %s\n", strerror(errno));
+		printf("failed to open driver control: %s\n", strerror(errno));
         return;
     }
     if (write(fd, enabled ? "1" : "0", 1) < 0) {
 /*
         ui->Print("failed to set driver control: %s\n", strerror(errno));
 */
-		LOGI("failed to set driver control: %s\n", strerror(errno));
+		printf("failed to set driver control: %s\n", strerror(errno));
     }
     if (close(fd) < 0) {
 /*
         ui->Print("failed to close driver control: %s\n", strerror(errno));
 */
-		LOGI("failed to close driver control: %s\n", strerror(errno));
+		printf("failed to close driver control: %s\n", strerror(errno));
     }
 }
 
@@ -76,28 +72,29 @@
     char value[PROPERTY_VALUE_MAX+1];
     int len = property_get("ro.debuggable", value, NULL);
     if (len == 1 && value[0] == '1') {
-        ui->Print("Restarting adbd...\n");
+        printf("Restarting adbd...\n");
         set_usb_driver(true);
         property_set("ctl.start", "adbd");
     }
 }
 
 int
-apply_from_adb(RecoveryUI* ui_, int* wipe_cache, const char* install_file) {
-    ui = ui_;
+apply_from_adb(const char* install_file) {
 
     stop_adbd();
     set_usb_driver(true);
-
+/*
     ui->Print("\n\nNow send the package you want to apply\n"
               "to the device with \"adb sideload <filename>\"...\n");
-
+*/
     pid_t child;
     if ((child = fork()) == 0) {
         execl("/sbin/recovery", "recovery", "--adbd", install_file, NULL);
         _exit(-1);
     }
-	DataManager_SetIntValue("tw_child_pid", child);
+	char child_prop[PROPERTY_VALUE_MAX];
+	sprintf(child_prop, "%i", child);
+	property_set("tw_child_pid", child_prop);
     int status;
     // TODO(dougz): there should be a way to cancel waiting for a
     // package (by pushing some button combo on the device).  For now
@@ -105,20 +102,19 @@
     // package, like "/dev/null".
     waitpid(child, &status, 0);
     if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
-        ui->Print("status %d\n", WEXITSTATUS(status));
+        printf("status %d\n", WEXITSTATUS(status));
     }
-	DataManager_SetIntValue("tw_has_cancel", 0); // Remove cancel button from gui now that the zip install is going to start
     set_usb_driver(false);
     maybe_restart_adbd();
 
     struct stat st;
     if (stat(install_file, &st) != 0) {
         if (errno == ENOENT) {
-            ui->Print("No package received.\n");
+            printf("No package received.\n");
         } else {
-            ui->Print("Error reading package:\n  %s\n", strerror(errno));
+            printf("Error reading package:\n  %s\n", strerror(errno));
         }
-        return INSTALL_ERROR;
+        return -1;
     }
-	return TWinstall_zip(install_file, wipe_cache);
+	return 0;
 }