aboutsummaryrefslogtreecommitdiffstats
path: root/minadbd/README.txt
diff options
context:
space:
mode:
authorDoug Zongker <dougz@android.com>2012-01-09 15:16:13 -0800
committerDoug Zongker <dougz@android.com>2012-01-10 10:18:17 -0800
commit9270a20a801403c9f60d6a701b39eae70d380403 (patch)
tree5bdb058af5b05a65112297a504018ee356e0ddbb /minadbd/README.txt
parent210f887382e0fd7e51ec6ce071972374a76f0722 (diff)
downloadbootable_recovery-9270a20a801403c9f60d6a701b39eae70d380403.zip
bootable_recovery-9270a20a801403c9f60d6a701b39eae70d380403.tar.gz
bootable_recovery-9270a20a801403c9f60d6a701b39eae70d380403.tar.bz2
support "sideload over ADB" mode
Rather than depending on the existence of some place to store a file that is accessible to users on an an unbootable device (eg, a physical sdcard, external USB drive, etc.), add support for sideloading packages sent to the device with adb. This change adds a "minimal adbd" which supports nothing but receiving a package over adb (with the "adb sideload" command) and storing it to a fixed filename in the /tmp ramdisk, from where it can be verified and sideloaded in the usual way. This should be leave available even on locked user-build devices. The user can select "apply package from ADB" from the recovery menu, which starts minimal-adb mode (shutting down any real adbd that may be running). Once minimal-adb has received a package it exits (restarting real adbd if appropriate) and then verification and installation of the received package proceeds. Change-Id: I6fe13161ca064a98d06fa32104e1f432826582f5
Diffstat (limited to 'minadbd/README.txt')
-rw-r--r--minadbd/README.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/minadbd/README.txt b/minadbd/README.txt
new file mode 100644
index 0000000..0c190d0
--- /dev/null
+++ b/minadbd/README.txt
@@ -0,0 +1,27 @@
+The contents of this directory are copied from system/core/adb, with
+the following changes:
+
+adb.c
+ - much support for host mode and non-linux OS's stripped out; this
+ version only runs as adbd on the device.
+ - does not setuid/setgid itself (always stays root)
+ - only uses USB transport
+ - references to JDWP removed
+ - main() removed
+
+adb.h
+ - minor changes to match adb.c changes
+
+sockets.c
+ - references to JDWP removed
+
+services.c
+ - all services except echo_service (which is commented out) removed
+ - all host mode support removed
+ - sideload_service() added; this is the only service supported. It
+ receives a single blob of data, writes it to a fixed filename, and
+ makes the process exit.
+
+Android.mk
+ - only builds in adbd mode; builds as static library instead of a
+ standalone executable.