| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Reduce the amount of wasted space on the recovery image by statically
linking all of the adb libraries into minadbd.
Bug: http://b/150317254
Test: booted aosp_walleye-eng into recovery
Change-Id: I5233b1a23c14f9d478bb77c25ebdbb0ce45bcc5a
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`adb rescue getprop rescue.battery_level` returns the current battery
level.
Bug: 134560109
Test: Build and boot into rescue mode.
Test: `adb rescue getprop ro.build.fingerprint`
Test: `adb rescue getprop rescue.battery_level`
Test: `adb rescue getprop` to dump all the properties.
Test: Run recovery_unit_test.
Change-Id: I78a9e8ab9783ffc8532cb93e6a64fb2157c19bd5
|
|
|
|
|
| |
Test: mmma bootable/recovery
Change-Id: I503e942b23cc51024aa752c1eb3db5455a44a9d1
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We start minadbd and rescue services in two processes. In particular,
minadbd handles the requests from host, then communicates with rescue
service to do install/wipe works. When resuce service doesn't see any
request in a pre-defined timeout (currently 300s), rescue service will
exit to avoid endless waiting.
This CL changes minadbd to additionally send a no-op command to rescue
service as a heartbeat signal, so that host side can finish
time-consuming operations (e.g. downloading over network) while keeping
rescue service alive.
Bug: 136457446
Test: Enter resuce mode on blueline. Send `adb rescue getprop
ro.build.fingerprint` and check that rescue service doesn't exit.
Test: Stop sending the getprop command. Check that rescue service exits
after 300s.
Change-Id: Ib9d5ed710cfa94ecfe6cf393a71a0b67b2539531
|
|/
|
|
|
| |
Test: treehugger
Change-Id: I09e9850dabbd71bffbe568f240f9fde8b3743e5e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change addresses the comment in [1], which makes the results of
`adb shell getprop foo` and `adb rescue getprop foo` more consistent.
That is, both will return newline-terminated results now.
[1] https://r.android.com/c/platform/bootable/recovery/+/976340/3/minadbd/minadbd_services.cpp#188
Test: Run the following commands on taimen (under rescue mode):
`adb rescue getprop ro.build.fingerprint`
`adb rescue getprop ro.nonexistent`
`adb rescue getprop`
Change-Id: I5af47f8ea4d569b8507e259daef87749c0945f47
|
|
|
|
|
|
|
|
| |
It dumps all the allowed properties, similar to `adb shell getprop`.
Bug: 134027350
Test: Run the command under rescue mode.
Change-Id: Ic0864ca0fb51505ec1e4f38af2464591aa576201
|
|
|
|
|
|
|
|
|
|
|
| |
Most of these properties are already part of the fingerprint. This CL
allows querying them directly, instead of encouraging users to decode
from fingerprints.
Bug: 134027350
Test: Boot into rescue mode on taimen. Run `adb rescue getprop` with new
props.
Change-Id: Id4667fcaf0e908c391085b22e22c957acd01d9c4
|
|
|
|
|
| |
Test: treehugger
Change-Id: I2feecabb77986d3e007de1009b123c2d98454631
|
|
|
|
|
|
| |
Bug: 131037235
Test: unit tests pass, run `adb rescue wipe`
Change-Id: I22668f2c98fe2d9195d2561f961c28a7c08e712c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug: 128415917
Test: Run the following commands under sideload and rescue modes
respectively.
$ adb reboot
$ adb reboot bootloader
$ adb reboot recovery
$ adb reboot rescue
$ adb reboot invalid
Change-Id: I84daf63e3360b7b4a0af5e055149a4f54e10ba90
|
|
|
|
|
|
|
|
|
|
|
| |
Ass some unit tests to check if the minadbd service exit correctly in
the failure case. Also start the fuse and verify the socket communication
between minadbd with adb host, and minadbd with recovery.
Bug: 131037235
Test: run unit tests repeatedly, injects some errors and test fails
without dangling process.
Change-Id: I2f073b701b25d7f1aafc59868a7a91a8cbefaf49
|
|
|
|
|
|
|
|
|
|
| |
Bug: 128415917
Test: Enter rescue mode on taimen. Send the following commands:
`adb rescue getprop ro.build.fingerprint`
`adb rescue getprop ro.build.date.utc`
`adb rescue install /path/to/package.zip`
Test: Sideload on taimen w/ `adb sideload /path/to/package.zip`.
Change-Id: Ibc25daf9fd13f7002e54789f67aaf85d06976bb8
|
|
|
|
|
|
|
|
|
| |
Only enabled on debuggable builds.
Bug: 128415917
Test: Sideload package on taimen.
Test: Choose "Enter rescue" from recovery UI.
Change-Id: I913dbdbcffd3179e6fa72ca862f74ca8f1364b02
|
|
|
|
|
|
|
|
|
|
|
| |
This leaves the FD implementation details to subclasses. In particular,
it allows minadbd to do additional works with the FD after sideloading.
Bug: 128415917
Test: atest recovery_component_test
Test: atest minadbd_test
Test: Sideload package on taimen.
Change-Id: I106bbaad05201227bbc5fe28890bbbb06fdcb67e
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This cl adds a socket pair to support the communication between recovery
and minadbd. Therefore, minadbd will be able to issue multiple commands
to recovery and get back the status of each command.
This cl also switches the adb sideload from the recovery menu to use
this protocol; and moves minadbd to a separate binary.
Bug: 130166585
Test: sideload a package
Change-Id: I80d36d5c4e6fe1ae3ea23640907bc50c0dc0d482
|
|
|
|
|
|
|
|
|
| |
It's no longer needed with the newly added FuseDataProvider class. Also
cleans up the parameters for run_fuse_sideload.
Bug: 127071893
Test: unit tests pass, run a sideload
Change-Id: I1ccd6798d187cfc6ac9f559ffb3f3edf08dad55c
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fuse data provider for adb/sdcard shares common code and structures.
This cl creates a FuseDataProvider base class and provides
implementations for adb and sdcard.
In the follow cls, we can kill the provider_vtab struct; and also add
another implementation to parse a block map file and provides data.
Test: unit tests pass, sideload a package, apply a package from sdcard
Change-Id: If8311666a52a2e3c0fbae0ee9688fa6d01e4ad09
|
|
|
|
|
|
|
|
|
|
|
|
| |
The caller of daemon_service_to_fd() in core adb has switched to
std::string_view in [1]. The mismatch breaks the sideload service, as it
picks up the wrong daemon_service_to_fd() when serving sideload.
[1] https://android-review.googlesource.com/c/platform/system/core/+/850392
Bug: 122171762
Test: `adb sideload` on taimen.
Change-Id: Ie828400768523c35c5576e2c029e38fc0ad0aff9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At present, multiple partitions such as vendor have been added,
which reduces the coupling between mobile phone manufacturers
and Android systems. However, it may increase the generated
package size substantially (e.g. from ~200MB to ~800MB).
Causes the package size to exceed the int limit (2147483647 bytes).
Change the int length parameters to long.
Bug: http://b/112003354
Test: adb sideload ota.zip (ota.zip bigger than 2147483647 bytes)
Change-Id: Ifb656431f7b961ac0e91754107578dc8b89ff14e
Signed-off-by: katao <katao@xiaomi.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we were relying on linker ordering pulling in minadbd's
copy of services_to_fd instead of libadbd's, which breaks when we
switch to dynamically linking. Separate out libadbd's services into a
separate function that's in a file that isn't built into libadbd, so
that we can provide our own here.
Bug: http://b/111831478
Test: mma
Change-Id: I2479947b2d81db5e750020fffc2c2c770cb31a78
|
|
|
|
|
|
|
| |
Bug: http://b/37066218
Bug: http://b/71898863
Test: treehugger
Change-Id: I5f2b14c65cff8d41dd3230d78b87e3e27e489bf6
|
|
|
|
|
|
|
| |
The only one left is libedify. Will handle that in a separate CL.
Test: mmma bootable/recovery
Change-Id: I732a5f85229da90fd767bee2e46c5c95f529c396
|
|
|
|
|
|
|
|
| |
Switch some function signatures to std::string to avoid memory leak.
Bug: 30039381
Test: sideload a package on angler
Change-Id: Iae1e75871a782d6e5d6dde5dcf3f18469eb63f7d
|
|
|
|
|
| |
Test: treehugger
Change-Id: I7edcb13eb1fc6d4f36f5a764a1b647fbf9cd063e
|
|
|
|
|
|
|
|
|
|
|
| |
static_cast is preferable to reinterpret_cast when casting from void*
pointers returned by malloc/calloc/realloc/mmap calls.
Discovered while looking at compiler warnings (b/26936282).
Test: WITH_TIDY=1 WITH_STATIC_ANALYZER=1 mma
Change-Id: Iaffd537784aa857108f6981fdfd82d0496eb5592
Merged-In: I151642d5a60c94f312d0611576ad0143c249ba3d
|
|
Distinguish our "services.cpp" more clearly from the regular adbd
"services.cpp", and remove a few useless includes of "sysdeps.h".
Change-Id: Ided4945a3ac5916133322ca7e95fa51add9abaa4
|