Commit Graph

2247 Commits

Author SHA1 Message Date
Tianjie Xu e0d3b0ceab Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45 am: 6ea9888d51 am: a055eb93c3 am: 15ca2a4763 am: ca50d7b66a am: 64f0de7a13
am: e4ec60e045

Change-Id: If13ea5ee5c963357e73f82c677782d569c745acd
2017-01-18 22:40:19 +00:00
Tianjie Xu e4ec60e045 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45 am: 6ea9888d51 am: a055eb93c3 am: 15ca2a4763 am: ca50d7b66a
am: 64f0de7a13

Change-Id: I3b67824479c820d06e84e6611e4aff87265dab11
2017-01-18 22:37:48 +00:00
Tianjie Xu 64f0de7a13 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45 am: 6ea9888d51 am: a055eb93c3 am: 15ca2a4763
am: ca50d7b66a

Change-Id: Ic6e05b8812f4b765b9114149373c7a00ad9ec78d
2017-01-18 22:36:48 +00:00
Tianjie Xu ca50d7b66a Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45 am: 6ea9888d51 am: a055eb93c3
am: 15ca2a4763

Change-Id: I5481d39f0d2fdb92c95e964d2a55512f4df3acb3
2017-01-18 22:34:18 +00:00
Tianjie Xu 15ca2a4763 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45 am: 6ea9888d51
am: a055eb93c3

Change-Id: I8d26eefd2de6b7245a110c27d4210d5fdd2bd151
2017-01-18 22:32:47 +00:00
Tianjie Xu a055eb93c3 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d am: d3d5e54a45
am: 6ea9888d51

Change-Id: I7bbabdbe543c54f18dd42cb64030ca2174bf9bf2
2017-01-18 22:30:47 +00:00
Tianjie Xu 6ea9888d51 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b am: fb80b4f72d
am: d3d5e54a45

Change-Id: Ib892c1745197ccb42d77c7bc8647f2e6b725a7dd
2017-01-18 22:28:46 +00:00
Tianjie Xu d3d5e54a45 Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b
am: fb80b4f72d

Change-Id: Iba2da78981e4bd7a2b263b2f6b18ab6c176e5fc8
2017-01-18 22:26:47 +00:00
Tianjie Xu fb80b4f72d Add a checker for signature boundary in verifier am: 54ea136fde
am: 0a34b17c8b

Change-Id: I4dbba92ea717951307dbcb6bf287edf4f6144a38
2017-01-18 22:24:16 +00:00
Tianjie Xu 0a34b17c8b Add a checker for signature boundary in verifier
am: 54ea136fde

Change-Id: Ide2da96e322c6a913b7f2e950e43c4d11278338e
2017-01-18 22:22:16 +00:00
Tianjie Xu 54ea136fde Add a checker for signature boundary in verifier
The 'signature_start' variable marks the location of the signature
from the end of a zip archive. And a boundary check is missing where
'signature_start' should be within the EOCD comment field. This causes
problems when sideloading a malicious package. Also add a corresponding
test.

Bug: 31914369
Test: Verification fails correctly when sideloading recovery_test.zip on
angler.

Change-Id: I6ea96bf04dac5d8d4d6719e678d504f957b4d5c1
(cherry-picked from f69e6a9475)
2016-12-16 16:24:09 -08:00
Tim Kryger 48be23c8ed 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
2016-11-29 13:50:56 -08:00
Andriy Naborskyy 67bc0b9573 DO NOT MERGE ANYWHERE init: move healthd to late-init am: 195ff7f79e -s ours am: 7ceb371048 -s ours am: b8c1788e7b -s ours am: 8837b0d25d -s ours
am: 3fdf1fd515  -s ours

Change-Id: I8cfd3782a8cac351057b258d44caaa987397201d
2016-10-27 16:21:56 +00:00
Andriy Naborskyy 3fdf1fd515 DO NOT MERGE ANYWHERE init: move healthd to late-init am: 195ff7f79e -s ours am: 7ceb371048 -s ours am: b8c1788e7b -s ours
am: 8837b0d25d  -s ours

Change-Id: I7ecada4bf93f79a8b308064c417e85d4e7f9ecc3
2016-10-27 16:16:55 +00:00
Andriy Naborskyy 8837b0d25d DO NOT MERGE ANYWHERE init: move healthd to late-init am: 195ff7f79e -s ours am: 7ceb371048 -s ours
am: b8c1788e7b  -s ours

Change-Id: I14de8cfdef94dfcb2d3f0760daf519537fa796d5
2016-10-27 16:11:55 +00:00
Andriy Naborskyy b8c1788e7b DO NOT MERGE ANYWHERE init: move healthd to late-init am: 195ff7f79e -s ours
am: 7ceb371048  -s ours

Change-Id: I5c36f2e8ee5e410e9027376c32e86baa7fa2e65a
2016-10-27 16:07:25 +00:00
Andriy Naborskyy 7ceb371048 DO NOT MERGE ANYWHERE init: move healthd to late-init
am: 195ff7f79e  -s ours

Change-Id: Ibf16373a783458fd91284254156d5a9a0d70252d
2016-10-27 16:02:24 +00:00
Andriy Naborskyy 195ff7f79e DO NOT MERGE ANYWHERE init: move healthd to late-init
Starting healthd in early-init can cause SELinux denials if healthd
or any device-specific libraries try to log.

Now healthd is starting at boot as usual service.

Bug: 30292927
Change-Id: I367d022f5885122da49181db3db536012e83f564
2016-10-25 19:49:57 +00:00
Damien Bargiacchi 2f2c723d1b Shrink all recovery loop images with zopflipng
Reduces recovery image size 800k - 2.8MB depending on device type

Change-Id: Ib703c8f17394759fb9bad068525737188a4e8965
2016-10-19 19:19:15 -07:00
Tianjie Xu 4c53af080d DO NOT MERGE Report uncrypt errors in details
am: 37d7d67ca2

Change-Id: I4da910cde3f1a84b9dfb5839a43b00818a942dbd
2016-09-29 18:13:20 +00:00
Tianjie Xu 37d7d67ca2 DO NOT MERGE Report uncrypt errors in details
Add the error codes for uncrypt and report the failure details in
uncrypt_status.

Test: uncrypt_error logs correctly in last_install
Bug: 31603820
Change-Id: I8e0de845ce1707b6f8f5ae84564c5e93fd5f5ef5
(cherry picked from commit da44cf18f3)
2016-09-29 18:06:04 +00:00
Tao Bao 64b92dfb5d DO NOT MERGE Duplicate the last_install content into last_log.
am: a8c0d0b43a

Change-Id: I6ba873dcf7b833daaf6ca74d49a6410be3e4fbcb
2016-09-27 20:24:22 +00:00
Tao Bao a8c0d0b43a DO NOT MERGE Duplicate the last_install content into last_log.
Currently we save the OTA metrics in last_install, which keeps the data
for the _last_ install only. This CL logs the same content into last_log
so that we keep the metrics for every install.

Bug: 31607469
Test: Apply an update (via OTA and sideload) and check last_log and last_install.

Change-Id: Id8f174d79534fddc9f06d72a4e69b2b1d8ab186c
(cherry picked from commit f4885adc18)
2016-09-26 22:10:07 -07:00
Matthew Bouyack de1b53d067 DO NOT MERGE Fail gracefully when we fail to fork the update binary
See bug b/31395655

Change-Id: Ic5a046bc80ea88d7eb52755838bdbf4e1e47da50
2016-09-20 11:32:17 -07:00
Tianjie Xu 914f39d2d3 Check corruption when reading uncrypt_status file
am: 41a3fd4e20

Change-Id: I19d9b6605d75d636eef0c770979b9f71c2e6a7f2
2016-09-13 22:45:34 +00:00
Tianjie Xu 41a3fd4e20 Check corruption when reading uncrypt_status file
Bug: 31383361
Change-Id: I0de920916da213528d73b742e4823b4a98c63ea1
(cherry picked from commit 1c1864f321)
2016-09-13 14:04:55 -07:00
Damien Bargiacchi 7a97733f7a Merge "Have gr_init_font alloc memory for the font" into cw-f-dev 2016-09-13 13:40:25 +00:00
Tianjie Xu 4769f209dc save uncrypt status to last_install
am: e16e799dfd

Change-Id: I0cac4258690c9ab6a6122a9e67c8453050aabcfc
2016-09-13 01:48:10 +00:00
Tianjie Xu e16e799dfd save uncrypt status to last_install
Save the uncrypt time cost to /cache/recovery/uncrypt_status. Recovery
reads the file and saves its contents to last_install.

Bug: 31383361
Test: Tested on angler and uncrypt_time reports correctly.

(cherry picked from commit fe16b5ccaf)

Change-Id: Id69681a35c7eb2f0eb21b48e3616dcda82ce41b8
2016-09-12 16:59:48 -07:00
Damien Bargiacchi d00f5eb63a Have gr_init_font alloc memory for the font
Change-Id: I8ccf369d52011bc5d07d8e041fe558ce734a78fc
2016-09-09 08:32:21 -07:00
Damien Bargiacchi ad8b5a6c11 Remove duplicate thread loop
Fixes animation running at 2x speed

Change-Id: Ieec353097b6eee1cf40530e6f4f1e69927d2bc98
2016-09-09 08:22:49 -07:00
Damien Bargiacchi 43d186021a Remove debug log statement; fix build
Change-Id: Ief92ec99d902ed58a48be9c2486cb99fdb184d7b
2016-09-07 17:11:07 -07:00
Damien Bargiacchi 5e7cfb9af6 Remove duplicate methods and variables from WearRecoveryUI
Copy pasta is never as delicious as ones hopes.

Also fix the Pike not rendering recovery bug.

Change-Id: I903da7da436e3347a22ff51633e8a0f28fea2c46
2016-09-07 02:26:50 -07:00
Damien Bargiacchi 929ffefdcc Merge "Support use of custom fonts in miniui" into cw-f-dev 2016-08-24 20:36:36 +00:00
Damien Bargiacchi 35fff61b1c Support use of custom fonts in miniui
Bug: 29547343
Change-Id: I398160c85daac90ffab2fa9bb2e96795b9e9885a
2016-08-18 19:51:45 -07:00
Tianjie Xu a44d4355ba "view recovery logs" will show /tmp/recovery.log
am: 62ab2a0fbc

Change-Id: I6acbbfd21b370df044413c4d15414b612b5654bb
2016-08-17 23:40:48 +00:00
Tianjie Xu 62ab2a0fbc "view recovery logs" will show /tmp/recovery.log
For A/B devices, "view recovery logs" doesn't work due to the lack
of cache partition. To help debugging, we'll show /tmp/recovery.log
instead if /cache is not found.

Change-Id: Idb77c3a4c30388148a210b38d732a7b27e757bba
Test: Tested on an A/B device and /tmp/recovery.log showed up.
Bug: 30905700
(cherry picked from commit a54f75ede8)
2016-08-17 15:07:50 -07:00
Alex Deymo 0d345b6731 Add inttypes.h for PRIu64.
am: 53c107f068

Change-Id: I2c84d557d7ee32508eded49b2061bf80fecc35ae
2016-08-12 22:11:47 +00:00
Alex Deymo 53c107f068 Add inttypes.h for PRIu64.
This missing header is needed to use PRIu64 macros.

Bug: 27178350
TEST=`mma bootable/recovery` on the failing branch.

Change-Id: I165701e8019256426d3f6a4168db52c6a0197c4d
2016-08-12 13:46:17 -07:00
Alex Deymo 66940b9f33 Call update_engine_sideload from recovery.
am: 4344d636d4

Change-Id: Ic9586cb3176bf608d2044e37b89e570c71130dcc
2016-08-12 18:06:56 +00:00
Alex Deymo 4344d636d4 Call update_engine_sideload from recovery.
This patch enables sideloading an OTA on A/B devices while running from
recovery. Recovery accepts the same OTA package format as recent
versions of GMS, which consists of .zip file with the payload in it.

Bug: 27178350
TEST=`adb sideload` successfully a full OTA (*)
TEST=Failed to take several invalid payloads (wrong product,
fingerprint, update type, serial, etc).

<small>(*) with no postinstall script.</small>

Change-Id: I951869340100feb5a37e41fac0ee59c10095659e
2016-08-11 18:55:11 -07:00
Bill Yi e49c0d6406 Import translations. DO NOT MERGE
Change-Id: If24c94c20f8e4c37c119dcaff765e9ee59e48ef4
Auto-generated-cl: translation import
2016-07-20 19:24:24 -07:00
Tianjie Xu da654af606 Skip update verification if care_map is not found
Recently flashed devices may not have care_map.txt in /data/ota_package.
This leads to a failure of update-verifier and prevents boot
success flag from being set. So, we need to skip verification
in case the file is not found.

Error message:
... I update_verifier: Started with arg 1: nonencrypted
... I update_verifier: Booting slot 1: isSlotMarkedSuccessful=0
... E update_verifier: Care map /data/ota_package/care_map.txt not found.
... E update_verifier: Failed to verify all blocks in care map file

Bug: 30156449
Change-Id: Ia15f5f3e7ca2ea6981d49678e799b9f70d134faa
2016-07-15 16:30:12 -07:00
Tianjie Xu 4bbe0c93c8 Fix a typo when comparing the verity mode
The veritymode string used by the bootloader should be lowercase 'eio'
instead of 'EIO'. Fix the typo and change to strcasecmp.

Bug: 27175949
Change-Id: I376dacc70eef7364e2b9931a7c940adedcdb1929
2016-07-14 23:57:43 +00:00
Tianjie Xu 13f44939b1 Merge "Touch blocks in care_map in update_verifier" into nyc-mr1-dev 2016-07-14 22:27:09 +00:00
Tianjie Xu 03ca853a1c Touch blocks in care_map in update_verifier
Read all blocks in system and vendor partition during boot time
so that dm-verity could verify this partition is properly flashed.

Bug: 27175949
Change-Id: I38ff7b18ee4f2733e639b89633d36f5ed551c989
2016-07-14 14:31:39 -07:00
Tianjie Xu 27b9fc8a36 Skip update-on-boot for bootreason in blacklist
Skip the OTA installation when bootreason is 'kernel_panic',
'Panic' etc.

Change-Id: Ic1202492bffefa1a9d8d0e691b5af979285e552c
Test: On angler, ota installation skips for one bootreason in the blacklist.
Bug: 29978689
2016-07-11 18:37:34 -07:00
Elliott Hughes 6d089a955f Support landscape layouts.
Add support for landscape layouts to the existing portrait support.

Bug: http://b/29418855
Test: tested manually with "Run graphics test" on flounder/fugu/ryu.
Change-Id: Ib4a62bf5f2b8a1cef6028a01f05145104660560a
2016-07-08 18:21:45 -07:00
Yabin Cui 9da04d595f Fix bootloader_message.
Bug: 29945717
Change-Id: I934fd6c52b0111937fa75455de2fa4157fb30f6f
2016-07-06 11:47:23 -07:00
Tao Bao ccb0ba908a updater: Fix the broken ReadFileFn.
Was accidentally broken by the CL in [1].

[1]: commit d6c93afcc2

Bug: 29767315
Change-Id: I851e13ccea6f5be6fcd47f712cc95867245f9934
(cherry picked from commit efacd80364)
2016-06-30 17:04:12 -07:00