Commit Graph

7145 Commits

Author SHA1 Message Date
xunchang b2d56cb5ff Merge "Update_verifier: Remove the support for legacy text format CareMap"
am: 2e6fbfc31e

Change-Id: If9cd6ba2cf97395d05575eeb842176bc6ab1e5bf
2019-03-14 04:10:07 -07:00
Treehugger Robot 2e6fbfc31e Merge "Update_verifier: Remove the support for legacy text format CareMap" 2019-03-14 11:00:30 +00:00
Tao Bao 6105a6fb6e Merge "update_verifier: Add some missing #include's."
am: 05f9a8e100

Change-Id: Icd531dd8a88a4c49c288edf5449e93e81ddde203
2019-03-13 19:25:35 -07:00
Treehugger Robot 05f9a8e100 Merge "update_verifier: Add some missing #include's." 2019-03-14 02:10:18 +00:00
Tao Bao c89c394b46 update_verifier: Add some missing #include's.
<stdint.h> for uint8_t; <stdlib.h> for free(3); <thread> for
std::thread.

Test: mmma -j bootable/recovery
Test: Run unit tests on crosshatch.
Change-Id: Id99b29b3d514f4e453983599c8b1aa6b0fab4ef8
2019-03-13 15:45:39 -07:00
xunchang aaa6103ae7 Update_verifier: Remove the support for legacy text format CareMap
We have already switched to the protobuf format for new builds, and
the downgrade packages will require a data wipe. So it should be safe
to drop the support for text format.

This also helps to save the issue when users sideload a package with a
pending OTA, because the new CareMap contains the fingerprint of the
intended build.

Bug: 128536706
Test: unit tests pass, run update_verifier with legacy CareMap
Change-Id: I1c4d0e54ec591f16cc0a65dac76767725ff9e7c4
2019-03-13 15:24:13 -07:00
Tianjie Xu 682cd4fbc4 Merge "Use the package class for wipe packages"
am: 2a33682ef5

Change-Id: I443b7120d47083bdc31412bc2d49dd61be4ba848
2019-03-12 21:54:03 -07:00
Tianjie Xu 2a33682ef5 Merge "Use the package class for wipe packages" 2019-03-13 02:11:47 +00:00
xunchang 55e3d22223 Use the package class for wipe packages
The wipe package used to open the zip file directly from the content
string. Switch to use the interface from the new package class instead.

Bug: 127071893
Test: unit tests pass
Change-Id: I990e7f00c5148710722d17140bab2e343eea3b6b
2019-03-12 15:10:41 -07:00
Tao Bao 7b8303f072 Merge "minui: Managed FDs with smart pointers."
am: fc7a0dc3a2

Change-Id: I0cddcea8559d8aa90db80be4a5f3ef5d667ad139
2019-03-12 14:23:25 -07:00
Tao Bao fc7a0dc3a2 Merge "minui: Managed FDs with smart pointers." 2019-03-12 21:05:41 +00:00
Tao Bao ea37122996 Merge "minui: Fix the wrong move of the callback."
am: aefc9e3ba9

Change-Id: I2bdfb43f7d161de8cda635a48547db15ce05438c
2019-03-11 16:11:13 -07:00
Tao Bao 835bf09a14 minui: Managed FDs with smart pointers.
Also clean up a few variable names.

Test: Boot into recovery. Check key inputs.
Change-Id: I058475ac22f3db8523bd8aa30ccb61be1ef45559
2019-03-11 15:59:09 -07:00
Tao Bao aefc9e3ba9 Merge "minui: Fix the wrong move of the callback." 2019-03-11 22:51:50 +00:00
Tianjie Xu d4f28312dc Merge "Create a wrapper class for update package"
am: ba9965199a

Change-Id: I47c82792b37d0e720ab54876915c8aba288382c7
2019-03-11 13:13:57 -07:00
Tianjie Xu ba9965199a Merge "Create a wrapper class for update package" 2019-03-11 19:53:57 +00:00
Xin Li c4c7abfb41 [automerger skipped] Merge "DO NOT MERGE - Merge PPRL.190305.001 into master"
am: 6c54127462 -s ours
am skip reason: subject contains skip directive

Change-Id: I77cd31b071f61d3d010af29408c732134d9b7028
2019-03-11 12:52:32 -07:00
Xin Li 645f73ac4b [automerger skipped] DO NOT MERGE - Merge PPRL.190305.001 into master
am: 3399fdabf5 -s ours
am skip reason: subject contains skip directive

Change-Id: I76691bb68b90c6cc4165c64b90daeb3bb71b77e1
2019-03-11 12:31:39 -07:00
Tao Bao dfdf63501e minui: Fix the wrong move of the callback.
The input_cb in ev_init() should be shared among the detected input
devices.

Test: Boot into recovery. Check key inputs.
Change-Id: I0315f6a23625bacedd333fefacbf4ac6797bc1fd
2019-03-11 12:07:11 -07:00
Treehugger Robot 6c54127462 Merge "DO NOT MERGE - Merge PPRL.190305.001 into master" 2019-03-11 18:56:28 +00:00
xunchang f07ed2efeb Create a wrapper class for update package
Creates a new class handle the package in memory and package read from fd.
Define the new interface functions, and make approximate changes to the
verify and install functions.

Bug: 127071893
Test: unit tests pass, sideload a package
Change-Id: I66ab00654df92471184536fd147b237a86e9c5b5
2019-03-11 10:43:52 -07:00
Xin Li 3399fdabf5 DO NOT MERGE - Merge PPRL.190305.001 into master
Bug: 127812889
Change-Id: Ieceaef8b4dd56737a5836dd5e968b609cd084d36
2019-03-11 09:13:10 -07:00
Tianjie Xu de5ba7ab97 Merge "Add a new entry in wipe package to list all wipe partitions"
am: a8969842ae

Change-Id: I436eebb747d7474c5cae754e6c1d2f6ad0546b56
2019-03-07 16:51:46 -08:00
Tianjie Xu a8969842ae Merge "Add a new entry in wipe package to list all wipe partitions" 2019-03-07 22:14:43 +00:00
xunchang e0d991ceca Add a new entry in wipe package to list all wipe partitions
This gives us finer control over the partitions to wipe on the host
side.

Bug: 127492427
Test: unit tests pass, install a wipe package on sailfish
Change-Id: I612f8bac743a310f28e365b490ef388b278cfccb
2019-03-06 15:37:28 -08:00
Tao Bao 4e95d7503e Merge "Use O_CLOEXEC at a few places."
am: e3857ca43e

Change-Id: If5b1622ca66d0722107bdac5daef1eda823cdf20
2019-03-01 16:14:07 -08:00
Treehugger Robot e3857ca43e Merge "Use O_CLOEXEC at a few places." 2019-03-02 00:04:26 +00:00
Tao Bao b549243b27 Use O_CLOEXEC at a few places.
Found these FDs unintentionally propagated into forked processes (e.g.
updater) during my local debugging. Use O_CLOEXEC to avoid that.

Test: Dump open FDs in updater process.
Test: Sideload a package on taimen (which uses framebuffer).
Test: Run graphics test on taimen.
Change-Id: I1fb65dd4a103c47d28b15973def9e9359c251ca3
2019-03-01 14:24:41 -08:00
Tao Bao a04a7d89c2 Merge "Use android::base::Pipe."
am: 21cfc8b6f4

Change-Id: Ic7c2cb62062710984fa3fbd5ed3c577cd84cd926
2019-02-28 18:29:35 -08:00
Treehugger Robot 21cfc8b6f4 Merge "Use android::base::Pipe." 2019-03-01 02:17:24 +00:00
Tao Bao 6fcd208db4 Use android::base::Pipe.
Also clean up the comments regarding updater/recovery protocol.

Test: Sideload a package on taimen. Check that /tmp/recovery.log
      contains the log from update_engine_sideload.
Test: Factory reset on taimen. Check that log file has the info from
      mke2fs.
Change-Id: If560269ce7007769fc85a63bd228813bdd75bebd
2019-02-28 15:53:28 -08:00
Zhomart Mukhamejanov 2ee3614be3 Merge "Updater updater_sample/README.md - build instructions."
am: 52db3dc12e

Change-Id: I71784d07fc6952377c5a06116f2aa0850d613ee3
2019-02-25 20:57:58 -08:00
Zhomart Mukhamejanov 52db3dc12e Merge "Updater updater_sample/README.md - build instructions." 2019-02-26 04:00:52 +00:00
Zhomart Mukhamejanov 011b5bbc06 Updater updater_sample/README.md - build instructions.
Change-Id: Icbd577e3ceeec2766eca690b529b31f562df6fb2
Test: docs only
2019-02-25 16:19:55 -08:00
Xin Li d429ddca6b Merge "DO NOT MERGE - Merge pi-dev@5234907 into stage-aosp-master" into stage-aosp-master 2019-02-21 07:04:42 +00:00
David Anderson dbefca86b8 Merge "Add a logo to the fastbootd screen."
am: d294935bf7

Change-Id: I1cbd17fbd7636c1e5779b376c01984e9986bbcec
2019-02-20 20:18:05 -08:00
David Anderson d294935bf7 Merge "Add a logo to the fastbootd screen." 2019-02-21 04:07:29 +00:00
Xin Li 6b72e3f03b DO NOT MERGE - Merge pi-dev@5234907 into stage-aosp-master
Bug: 120848293
Change-Id: I4ac749387dca39a09e96ea5588b651d06728033b
2019-02-20 16:17:20 -08:00
David Anderson 983e2d5718 Add a logo to the fastbootd screen.
fastbootd looks too much like recovery, even if you're carefully reading
the menu. It's not obvious the device is in a flashing mode, and it's
too tempting to reboot or unplug the device in this state.

As a first step, this patch adds a big red "fastbootd" logo so it's less
obviously in recovery mode.

Bug: 120429730
Test: manual test
Change-Id: I73359f1fdfdc0b1694993f760fe7f35c5713b24e
2019-02-11 19:22:03 -08:00
Xin Li c98e5d4ad1 DO NOT MERGE - Merge pi-platform-release (PPRL.190205.001) into stage-aosp-master
Bug: 124234733
Change-Id: Ice617995cbe56d367124b3a3420a2caad300acb1
2019-02-11 15:54:16 -08:00
android-build-team Robot 96f7786965 Snap for 5180536 from 8b508c984d to pi-platform-release
Change-Id: I18ffadbdab03199e33f4476135b95da658880541
2019-02-09 02:15:09 +00:00
Daniel Rosenberg 5837eba8ed Merge "Defer marking boot successful when checkpointing"
am: 90edbb17f8

Change-Id: Ic211f79ddd70dd4dcf6c7de7336d5ec98f7b46d6
2019-02-07 17:49:46 -08:00
Daniel Rosenberg 90edbb17f8 Merge "Defer marking boot successful when checkpointing" 2019-02-08 01:40:54 +00:00
Daniel Rosenberg 15f22bddfb Defer marking boot successful when checkpointing
This moves actually marking the slot as successful to a later point
so that on devices with checkpointing enabled we can still roll back to
the previous version if we fail to boot to the point that the checkpoint
is marked as successful.

Test: When taking an update on a checkpoint enabled device, it
      defers marking the slot as successful instead of directly
      marking it. Visible in logs.
Bug: 123260515

Change-Id: I7ed3595c1b0904ddbfe20d1cad4f69ecbf1ea351
2019-02-07 13:26:05 -08:00
Tianjie Xu 644e290d2d Merge "Recovery test: Fix an parameter issue in string construction"
am: e13b39bbb1

Change-Id: I4cafef20f443adc11776587028b176dfcb75becd
2019-02-05 17:07:13 -08:00
Tianjie Xu e13b39bbb1 Merge "Recovery test: Fix an parameter issue in string construction" 2019-02-06 00:53:25 +00:00
xunchang 7b08a5a6eb Recovery test: Fix an parameter issue in string construction
The intended string constructor is supposed be
basic_string(size_type count, CharT ch). But the parameter is
accidentally reversed when calling the constructor in install_test.

Test: A failed unit test pass
Change-Id: Id9765bfa7d2368ff0d7fbeea45c9c8357864e060
2019-02-05 12:44:53 -08:00
Tom Cherry 9594188eea Merge "Add android::fs_mgr namespace for new Fstab code"
am: 990807a95f

Change-Id: I215dd9dd7336953f65abbde5a0b8ef47b6407326
2019-01-31 11:50:09 -08:00
Tom Cherry 990807a95f Merge "Add android::fs_mgr namespace for new Fstab code" 2019-01-31 19:35:54 +00:00
Tom Cherry 72a114a3e1 Add android::fs_mgr namespace for new Fstab code
Also add libfstab dependencies where needed.  Previously the
`typedef struct FstabEntry Volume;` line served to both define a
`struct FstabEntry` as well as alias Volume to it.  With the new
namespace for android::fs_mgr::FstabEntry, `struct FstabEntry` isn't
compatible anymore, so we need to alias Volume to the real
android::fs_mgr::FstabEntry.

In doing so, we need to include <fstab/fstab.h> and this requires
libfstab as a library, which a few modules did not have before.

Test: treehugger
Change-Id: I655209a0efb304b3e0568db0748bd5cf7cecbdb7
2019-01-31 09:00:40 -08:00