9270a20a80
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
26 lines
827 B
C
26 lines
827 B
C
/* the list of mutexes used by adb */
|
|
/* #ifndef __MUTEX_LIST_H
|
|
* Do not use an include-guard. This file is included once to declare the locks
|
|
* and once in win32 to actually do the runtime initialization.
|
|
*/
|
|
#ifndef ADB_MUTEX
|
|
#error ADB_MUTEX not defined when including this file
|
|
#endif
|
|
ADB_MUTEX(dns_lock)
|
|
ADB_MUTEX(socket_list_lock)
|
|
ADB_MUTEX(transport_lock)
|
|
#if ADB_HOST
|
|
ADB_MUTEX(local_transports_lock)
|
|
#endif
|
|
ADB_MUTEX(usb_lock)
|
|
|
|
// Sadly logging to /data/adb/adb-... is not thread safe.
|
|
// After modifying adb.h::D() to count invocations:
|
|
// DEBUG(jpa):0:Handling main()
|
|
// DEBUG(jpa):1:[ usb_init - starting thread ]
|
|
// (Oopsies, no :2:, and matching message is also gone.)
|
|
// DEBUG(jpa):3:[ usb_thread - opening device ]
|
|
// DEBUG(jpa):4:jdwp control socket started (10)
|
|
ADB_MUTEX(D_lock)
|
|
|
|
#undef ADB_MUTEX
|