Commit Graph

3033 Commits

Author SHA1 Message Date
Tao Bao c844c06faf updater: Refactor parse_range().
Returning the parsed RangeSet directly (as opposed to using some pointer
parameter) to make the code cleaner.

Test: Apply an incremental with the new updater.
Change-Id: I8c99e701f189eb6a3eacc0d647e5a3a85fbeb3eb
2017-01-03 17:51:30 -08:00
Tao Bao 71633ebfb0 Merge "Remove outdated reference to icon_installing.png" 2017-01-04 01:26:56 +00:00
Tim Kryger 825b6b0c0b Remove outdated reference to icon_installing.png
The Wear recovery UI doesn't draw the installing icon but it was still
trying to open it.  Ever since these images were removed eight months
ago, this has resulted in an error printing to the screen at runtime.
Since the image wasn't really used, the lines to open it can simply be
removed.

Bug: 33203397
Change-Id: Id820f6d75e316c51d19b6095df407ecd61c0410e
(cherry picked from commit 48be23c8ed)
2017-01-03 16:28:13 -08:00
Tao Bao f9684c22c1 Merge "updater: Update the header name for bootloader.h." 2017-01-03 23:45:02 +00:00
Tao Bao 0d3f84f237 updater: Update the header name for bootloader.h.
We should include "bootloader_message/bootloader_message.h" now.

Test: m updater
Change-Id: I65b22a8a0bcc5976ff1ba827bd30b46ee9d59c53
2016-12-28 15:09:20 -08:00
Tao Bao b8d6523acf Merge "applypatch: Don't expose FindMatchingPatch()." 2016-12-28 22:11:49 +00:00
Tao Bao c8e79340e4 applypatch: Don't expose FindMatchingPatch().
Test: make
Change-Id: Ic77c4669574b6129e06aa6051804f419bcc8196c
2016-12-28 10:11:22 -08:00
Tao Bao 344c8eb453 Merge "Add tests for imgdiff." 2016-12-28 18:05:45 +00:00
Tao Bao f24d2a6b39 Merge "tests: Add test coverage for DirUtil." 2016-12-23 17:22:51 +00:00
Tao Bao f19295c5dc tests: Add test coverage for DirUtil.
Test: recovery_unit_test passes.
Change-Id: I764c56404c7ccdd57ae5486c946fbc9ac6ae7bc9
2016-12-22 09:57:49 -08:00
Tao Bao 3b9645288e Merge "tests: Replace the O_RDONLY in access(2)." 2016-12-22 17:13:44 +00:00
Tao Bao aa305e9ce8 Merge "tests: Add testcase for ZipUtil." 2016-12-22 17:13:30 +00:00
Treehugger Robot 7ec4e6f5a3 Merge "Support a "ask before wiping" boot flag." 2016-12-22 15:52:43 +00:00
Tao Bao e7e7b46666 tests: Add testcase for ZipUtil.
Test: recovery_unit_test passes.
Change-Id: I8ad364e88aaee31579ed7206aad8e5620518d797
2016-12-21 20:39:58 -08:00
Tao Bao a3ece96f9f tests: Replace the O_RDONLY in access(2).
Although O_RDONLY gives the same value as F_OK (0), it's not the right
friend of access(2).

Also clean up the temporary files from ZipTest (TemporaryDir doesn't
like non-empty directory).

Test: recovery_unit_test passes and has no leftover.
Change-Id: I66b90e43c0954c89ce08b36b9e2b4e84183b28f5
2016-12-21 18:56:53 -08:00
Paul Crowley 08404b48f7 Support a "ask before wiping" boot flag.
In the event of a catastrophic data error which should never happen,
ask the user before wiping the device.

Test: Cause an init builtin to fail and generate this error, observe.
Bug: 28693324
Change-Id: I38a2b815157d816cba1f30ad37eb4cdcc01db582
2016-12-21 13:38:48 -08:00
Tao Bao 97555da4a6 Add tests for imgdiff.
Factor out libimgdiff static library for testing purpose.

This CL adds the imgdiff tests on host and on target both (similar to
libimgpatch). In practice, we only need imgdiff binary on host, and
libimgpatch on target. But they should build and pass tests on both
platforms.

Test: recovery_host_test passes; recovery_component_test passes.
Change-Id: I0eafb7faf727cdf70066310e845af6ee245d4f60
2016-12-19 16:53:03 -08:00
Tao Bao e81719dde3 Merge "Bugfix:updater always retry apply patch failed,when memcpy failed." 2016-12-19 19:19:41 +00:00
katao 9a6f520419 Bugfix:updater always retry apply patch failed,when memcpy failed.
https://code.google.com/p/android/issues/detail?id=230602
On the second attempt, open the file with O_RDONLY,
which causing a write failure。

Change-Id: If89165b8c7619fe25722073a46b3cc7c61530a71
Signed-off-by: katao <ustckato@gmail.com>
2016-12-19 08:51:07 +00:00
Tao Bao 26d972c9d2 Merge "Add update_bootloader_message() to fix two-step OTAs." 2016-12-15 22:32:37 +00:00
Tao Bao 2292db819b Add update_bootloader_message() to fix two-step OTAs.
This is a retry of commit 7e31f421a5.

Commit bd56f1590c switches to calling
write_bootloader_message(<options>) in get_args(), which
unintentionally resets the stage field thus breaks two-step OTAs.

This CL adds update_bootloader_message(<options>), which only sets
the command field (to "boot-recovery") and the recovery field (with
the specified options).

Bug: 33534933
Test: Apply a two-step package.
Test: recovery_component_test passes.
Change-Id: Ie0b1ed4053d2d3c97d9cb84310d616b28fcfc72e
2016-12-15 12:36:26 -08:00
Tao Bao 07d985b75b Merge "tests: Add tests for bootloader_message." 2016-12-15 20:28:22 +00:00
Tao Bao 8b7301b711 tests: Add tests for bootloader_message.
Test: recovery_component_test passes.
Change-Id: Ib9aa2ffd6b018546223c76b7424f4ba355f5b088
2016-12-14 15:59:32 -08:00
Sen Jiang 8c1584feaf Merge "Add a stub recovery UI." 2016-12-14 21:50:49 +00:00
Treehugger Robot 2bb3a2270e Merge "updater: Fix the operator order." 2016-12-14 20:28:31 +00:00
Tao Bao 5354f60f2b updater: Fix the operator order.
Shift operator ("<<") has a higher precedence level than ternary
operator ("?").

Test: BBOTA update log says "performing update" as opposed to
      "performing 0".

Change-Id: I0cf60cbfc11415e94f1f9f6effe75f14d13a1874
2016-12-14 11:34:49 -08:00
Tao Bao 833ecb03f2 Merge "Remove the obsolete comments for firmware update." 2016-12-14 18:34:26 +00:00
Tao Bao c0336399ae Remove the obsolete comments for firmware update.
The corresponding code was removed in commit
e08991e02a in 2010 (Froyo).

Test: N/A
Change-Id: I2b296e1b07d54232bade79fda7501387d65a4c37
2016-12-13 22:36:02 -08:00
Tao Bao 4e48a6c1a1 Merge "Add tests for setup-bcb and clear-bcb via uncrypt." 2016-12-14 05:17:47 +00:00
Tao Bao 1033408801 Add tests for setup-bcb and clear-bcb via uncrypt.
Bug: http://b/33534933
Test: recovery_component_test passes (and fails on buggy build due to
      the CL in [1]).

[1]: commit 7e31f421a5

Change-Id: I120498048ec1db8f9fcbb3cf135c05d3a48cfcdf
2016-12-13 17:46:03 -08:00
Tao Bao 28bbe029b6 Merge "recovery: Clean up the log saving while wiping." 2016-12-13 22:36:38 +00:00
Sen Jiang d530449e54 Add a stub recovery UI.
This allows recovery to work on devices without screen.
The stub recovery UI does nothing except print to stdout.

Test: write 'recovery\n--wipe_data\n--reason=wipe_data_from_ota\n'
      to misc and boot to recovery on a device without screen.
Bug: 33175036

Change-Id: Icde698aa2e2e29f4b3d0532dfd3c6a939ac2bc63
2016-12-13 13:29:33 -08:00
Tao Bao 3f5a3821be recovery: Clean up the log saving while wiping.
Test: Wipe /cache and check the logs.
      Wipe /data and check the logs.
Change-Id: I1968e3a0a9ed80134811a91508c4473f1dcdf953
2016-12-13 11:47:46 -08:00
Tao Bao d6a5005fcb Merge "clang-format: Adjust short functions / if settings." 2016-12-13 18:13:56 +00:00
Tao Bao c908f4f0e3 Merge "Revert "write_bootloader_message(<options>) should not reset stage field."" 2016-12-13 01:24:04 +00:00
Tao Bao 26d5ae741e Revert "write_bootloader_message(<options>) should not reset stage field."
This reverts commit 7e31f421a5.

Bug: 33534933
Change-Id: Ib173f6b1e36a79deafc3592785195693a6779471
2016-12-13 01:06:24 +00:00
Tao Bao e65fa0a892 clang-format: Adjust short functions / if settings.
http://clang.llvm.org/docs/ClangFormatStyleOptions.html

AllowShortFunctionsOnASingleLine: Empty
  Empty functions like "int f() {}" can be put on a single line.

AllowShortIfStatementsOnASingleLine: true
  If true, "if (a) return;" can be put on a single line.

Test: N/A
Change-Id: Ia4f411a958235ab18d16972f2c9d0f55b645b4ba
2016-12-12 15:00:52 -08:00
Tao Bao 594dc4f5be Merge "recovery: Remove obsolete code that supports "CACHE:foo" format." 2016-12-10 20:50:16 +00:00
Tao Bao f038ca00f4 recovery: Remove obsolete code that supports "CACHE:foo" format.
The passing of "--update_package=CACHE:foo" format has been removed
in Gingerbread, with commit 4baf641e7d96375eba3f9a3aff5400b9e3d28cd6
in frameworks/base (core/java/android/os/RecoverySystem.java).

Test: Recovery image with --update_package still works.
Change-Id: I37b56ccf98f62cadf2a3975bbc38b16fea6fe9a1
2016-12-10 09:29:16 -08:00
Tao Bao f28afc191d Merge "write_bootloader_message(<options>) should not reset stage field." 2016-12-09 22:33:49 +00:00
Tao Bao 332af25b7c Merge "recovery: Fix the argument parsing from COMMAND_FILE." 2016-12-09 19:48:58 +00:00
Tao Bao 7d34fa17ab recovery: Fix the argument parsing from COMMAND_FILE.
Commit f0ed159f48 didn't ensure mounting
COMMAND_FILE (i.e. /cache) prior to reading. Also the first argument in
COMMAND_FILE should not be dropped (unlike the first "recovery" argument
in BCB message).

Bug: 33431888
Test: Push /cache/recovery/command and recovery imag parses the
      arguments successfully.

Change-Id: Ica3157a0bb03a2355315123354617eaf3fff15a4
2016-12-08 18:15:29 -08:00
Tao Bao c3ab25c237 Merge "recovery: Clean up get_args()."
am: 3aadbbac39

Change-Id: I8dd8003433ae2a33da51d69c25fe1b51628c8f97
2016-12-05 23:35:16 +00:00
Tao Bao 7e31f421a5 write_bootloader_message(<options>) should not reset stage field.
Commit bd56f1590c switches to calling
write_bootloader_message(<options>) in get_args(), which
unintentionally resets the stage field thus breaks two-step OTAs.

This CL changes write_bootloader_message(<options>) to only set the
command field (to "boot-recovery") and the recovery field (with the
specified options).

Test: Apply a two-step package.
Change-Id: I6905918812c7d3402cc1524688079066a4d22d29
2016-12-05 15:31:52 -08:00
Tao Bao 3aadbbac39 Merge "recovery: Clean up get_args()." 2016-12-05 23:28:36 +00:00
Tao Bao f0ed159f48 recovery: Clean up get_args().
Test: Boot into new recovery image, verify the parsed parameters.
Change-Id: Ieefafb26cc4147ce4cb9ced4297cdb3b5d1d3789
2016-12-05 11:39:46 -08:00
Tao Bao 1d9779b57b Merge "updater: Switch to libbase logging."
am: d2c56629ab

Change-Id: Iadb27da225c4b0c7c6bc80d177d36bdf87296a5b
2016-12-02 05:37:54 +00:00
Tao Bao d2c56629ab Merge "updater: Switch to libbase logging." 2016-12-02 05:27:04 +00:00
Tao Bao 80cd188162 Merge "bootable/recovery: cleanup compiler warnings (unused value)"
am: ef3bea15b8

Change-Id: I401597b9d7bad8a13c98093019cd6ad915d325f3
2016-12-01 17:25:37 +00:00
Tao Bao ef3bea15b8 Merge "bootable/recovery: cleanup compiler warnings (unused value)" 2016-12-01 17:03:13 +00:00