Commit graph

4119 commits

Author SHA1 Message Date
Tao Bao
6e30101834 Merge "Refactor asn1_decoder functions into a class." am: ea3d0b923d
am: d7846b7303

Change-Id: I4a41296ab8d4629a8db12bd7a23abd9e27f0a613
2017-03-22 17:09:14 +00:00
Tao Bao
d7846b7303 Merge "Refactor asn1_decoder functions into a class."
am: ea3d0b923d

Change-Id: I581e85f453fe1dc8b3a7cb6a7b660539f99ec55e
2017-03-22 17:07:14 +00:00
Tao Bao
ea3d0b923d Merge "Refactor asn1_decoder functions into a class." 2017-03-22 17:01:44 +00:00
Dan Willemsen
9e13f18e76 Merge "Fix updater include generation w/installclean" am: 6d0262218a am: c1cb30f842
am: 8a77b9d831

Change-Id: Ieea27e48e4fee300b42d4de9887038224b33b491
2017-03-22 01:35:47 +00:00
Dan Willemsen
8a77b9d831 Merge "Fix updater include generation w/installclean" am: 6d0262218a
am: c1cb30f842

Change-Id: Ie68499bd9ba2e31f2a04dc0fe7ce09ba94eed8a9
2017-03-22 01:33:47 +00:00
Dan Willemsen
c1cb30f842 Merge "Fix updater include generation w/installclean"
am: 6d0262218a

Change-Id: I9ed72b119c9c416aa038f2bcf04c90dfcac2d81b
2017-03-22 01:31:47 +00:00
Treehugger Robot
6d0262218a Merge "Fix updater include generation w/installclean" 2017-03-22 01:28:04 +00:00
Tianjie Xu
a946b9e241 Fix the permission of stashed blocks created by updater
Our updater created the stashes with root permission. This causes an
access denial when the RecoverySystem service tries to clean up these
blocks after a failing update. As a result, the subsequent OTA updates
may fail due to insufficient cache space.

Bug: 36457133
Test: stashed blocks cleaned successfully after reboot
Change-Id: If0ca99638cdfa1033646f29d9cc92b5ff1bacac1
2017-03-21 17:40:01 -07:00
Dan Willemsen
edec27a5bd Fix updater include generation w/installclean
Since this was putting the intermediate file in obj/PACKAGING, every
installclean was removing it and triggering updater to rebuild. Instead,
use the standard generated-sources-dir. The dep file can also be removed
now that ninja will re-run the generator if the command line changes.

Test: m -j updater; m installclean; m -j updater
Test: Only change to aosp_fugu updater before/after is the debug info
Change-Id: I20928bd2049d4a3d4e21f83fd64d16cfdc541958
2017-03-21 16:46:24 -07:00
Tao Bao
861c53c6c5 Refactor asn1_decoder functions into a class.
Test: mmma bootable/recovery
Test: recovery_unit_test passes.
Test: recovery_component_test passes.
Change-Id: If0bf25993158eaebeedff55ba4f4dd0f6e5f937d
2017-03-21 15:17:43 -07:00
Tao Bao
9d9f310f4e Merge "verify_file: Add constness to a few addresses." am: 5b2bf90e13 am: 43bd2c8414
am: 1c456cd3a5

Change-Id: I6d423a2fe19727e0d41b083a4020be30ae9400fb
2017-03-21 19:16:39 +00:00
Tao Bao
1c456cd3a5 Merge "verify_file: Add constness to a few addresses." am: 5b2bf90e13
am: 43bd2c8414

Change-Id: Ia7da54b2c532bb75ae4554e2642e95eae09821e3
2017-03-21 19:13:07 +00:00
Tao Bao
43bd2c8414 Merge "verify_file: Add constness to a few addresses."
am: 5b2bf90e13

Change-Id: I6e04bf2bc3dc8c978edafafcbb41401189865233
2017-03-21 19:09:37 +00:00
Tao Bao
5b2bf90e13 Merge "verify_file: Add constness to a few addresses." 2017-03-21 19:01:23 +00:00
Tao Bao
76fdb2419b verify_file: Add constness to a few addresses.
We should not touch any data while verifying packages (or parsing the
in-memory ASN.1 structures).

Test: mmma bootable/recovery
Test: recovery_component_test passes.
Test: recovery_unit_test passes.
Change-Id: Ie990662c6451ec066a1807b3081c9296afbdb0bf
2017-03-20 22:13:56 -07:00
Tao Bao
e44af82043 Merge "Add testcases for load_keys()." am: 110102f37e am: 43f5ad6e90
am: 60ea643afb

Change-Id: I2246094d0db184726cae34d7b916c127512ad6d2
2017-03-20 19:36:05 +00:00
Tao Bao
60ea643afb Merge "Add testcases for load_keys()." am: 110102f37e
am: 43f5ad6e90

Change-Id: Ic627f06818729779fb6593ac083708c1a71190fe
2017-03-20 19:32:05 +00:00
Tao Bao
43f5ad6e90 Merge "Add testcases for load_keys()."
am: 110102f37e

Change-Id: I67989c074351f4a9d2a39ee894fd744f4b35c901
2017-03-20 19:28:05 +00:00
Tao Bao
110102f37e Merge "Add testcases for load_keys()." 2017-03-20 19:24:23 +00:00
Tao Bao
b7d07f7b1e Merge "Remove the dead #include's in verifier.cpp." am: 64d25024b9 am: b2617e882e
am: cc3f3c3d1c

Change-Id: Ib78b586044938d9ec41cabfb07e8a274cc7d4d73
2017-03-20 16:32:24 +00:00
Tao Bao
cc3f3c3d1c Merge "Remove the dead #include's in verifier.cpp." am: 64d25024b9
am: b2617e882e

Change-Id: I8b99bd307e38e4dc4a477bf3ae2bd89495434507
2017-03-20 16:28:24 +00:00
Tao Bao
b2617e882e Merge "Remove the dead #include's in verifier.cpp."
am: 64d25024b9

Change-Id: I36aed07781b1b9bff0ffe6cabeb5d1f3b8546072
2017-03-20 16:24:23 +00:00
Tao Bao
64d25024b9 Merge "Remove the dead #include's in verifier.cpp." 2017-03-20 16:20:46 +00:00
Tao Bao
3116ce4651 Add testcases for load_keys().
Test: recovery_component_test passes.
Change-Id: I6276b59981c87c50736d69d4af7647c8ed892965
2017-03-18 14:16:21 -07:00
Tao Bao
d7bf82eb53 Remove the dead #include's in verifier.cpp.
A follow-up to commit 5e535014dd.
Also clean up Android.mk, since libverifier no longer needs anything
from libminui.

Test: mmma bootable/recovery
Test: recovery_component_test passes.
Change-Id: I1c11e4bbeef67ca34a2054debf1f5b280d509217
2017-03-18 09:28:42 -07:00
Tao Bao
b6d60d69c5 resolve merge conflicts of 90d3f20c to stage-aosp-master am: 553c7bd307
am: f3db68dd61  -s ours

Change-Id: I98c0681152bd8dcb7f04b281acbbb7ffb9a39f51
2017-03-18 15:55:55 +00:00
Tao Bao
f3db68dd61 resolve merge conflicts of 90d3f20c to stage-aosp-master
am: 553c7bd307

Change-Id: I78b16c412ce3487651c0b2da467256488dd75ff5
2017-03-18 15:33:23 +00:00
Tao Bao
553c7bd307 resolve merge conflicts of 90d3f20c to stage-aosp-master
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I9c1806eceb56712c4b3d1c67d54f4b21bd3fe50a
2017-03-18 07:33:26 -07:00
Tao Bao
90d3f20c99 Merge "Drop the dependency on 'ui' in verify_file()." 2017-03-18 14:16:16 +00:00
Tao Bao
2b83f36355 Merge "Drop the dependency on 'ui' in verify_file()." 2017-03-17 23:41:45 +00:00
Tao Bao
7b22c92ac1 Drop the dependency on 'ui' in verify_file().
verify_file() has a dependency on the global variable of 'ui' for
posting the verification progress, which requires the users of
libverifier to provide a UI instance.

This CL adds an optional argument to verify_file() so that it can
post the progress through the provided callback function. As a result,
we can drop the MockUI class in verifier_test.cpp.

Test: recovery_component_test passes.
Test: verify_file() posts progress update when installing an OTA.
Change-Id: I8b87d0f0d99777ea755d33d6dbbe2b6d44243bf1
(cherry picked from commit 5e535014dd)
2017-03-17 14:14:07 -07:00
Tao Bao
5e535014dd Drop the dependency on 'ui' in verify_file().
verify_file() has a dependency on the global variable of 'ui' for
posting the verification progress, which requires the users of
libverifier to provide a UI instance.

This CL adds an optional argument to verify_file() so that it can
post the progress through the provided callback function. As a result,
we can drop the MockUI class in verifier_test.cpp.

Test: recovery_component_test passes.
Test: verify_file() posts progress update when installing an OTA.
Change-Id: I8b87d0f0d99777ea755d33d6dbbe2b6d44243bf1
2017-03-17 14:07:12 -07:00
Tianjie Xu
b3871a5d7b Merge "Revert "Revert "Print SHA-1 in hex for corrupted blocks""" am: 73cb75b46c am: 9accc96dd1
am: 592078f554

Change-Id: I3c6e06a86fc53d03d97bd8ad5c5231ea69e0116f
2017-03-17 19:20:35 +00:00
Tianjie Xu
592078f554 Merge "Revert "Revert "Print SHA-1 in hex for corrupted blocks""" am: 73cb75b46c
am: 9accc96dd1

Change-Id: I90f0e8dfef1cee02ebb4531560173392d3e5d1fa
2017-03-17 19:17:04 +00:00
Tianjie Xu
9accc96dd1 Merge "Revert "Revert "Print SHA-1 in hex for corrupted blocks"""
am: 73cb75b46c

Change-Id: I81b1dc17eb5947f361d7b31b5bc8d07c34fe24b0
2017-03-17 19:13:35 +00:00
Tianjie Xu
73cb75b46c Merge "Revert "Revert "Print SHA-1 in hex for corrupted blocks""" 2017-03-17 19:06:38 +00:00
Tianjie Xu
c76805952e Merge "Add a test to perform block_image_update" am: 881b08ecd2 am: 5c06706d51
am: 640fc1d338

Change-Id: If611a8023bb5411ac2a1063411d0030121ce0de2
2017-03-17 18:34:31 +00:00
Tianjie Xu
640fc1d338 Merge "Add a test to perform block_image_update" am: 881b08ecd2
am: 5c06706d51

Change-Id: I8d8961b0db84e7cedf12e0505d62f7321aace9ed
2017-03-17 18:31:00 +00:00
Tianjie Xu
5c06706d51 Merge "Add a test to perform block_image_update"
am: 881b08ecd2

Change-Id: Id80b5d9376bbf65dbbeb82aa1c3d7cdd8921c9ff
2017-03-17 18:28:30 +00:00
Tianjie Xu
881b08ecd2 Merge "Add a test to perform block_image_update" 2017-03-17 18:22:11 +00:00
Tao Bao
edc96fdc44 Merge "Add the missing #include of <functional>." am: dd553d280f am: 965021ab8d
am: 26d00e87f9

Change-Id: Ib707f1282c3280374a014fadd7f27580f8bedaf0
2017-03-17 15:55:49 +00:00
Tao Bao
26d00e87f9 Merge "Add the missing #include of <functional>." am: dd553d280f
am: 965021ab8d

Change-Id: I31d1c3bb2729886457d4f5a573af7cd13cec74d2
2017-03-17 15:49:18 +00:00
Tao Bao
965021ab8d Merge "Add the missing #include of <functional>."
am: dd553d280f

Change-Id: I9592ef7ff84d12acc027ba4f9f5014abbb45b805
2017-03-17 15:43:17 +00:00
Tao Bao
dd553d280f Merge "Add the missing #include of <functional>." 2017-03-17 15:35:54 +00:00
Tao Bao
9468fc0429 Add the missing #include of <functional>.
For the use of std::function and std::bind. They were relying on the
transitive inclusion from <minui/minui.h>.

Test: mmma bootable/recovery
Change-Id: Ia138e1cbdd035b11d6cdca9e16c5591303b6ee13
2017-03-17 01:00:25 -07:00
Tianjie Xu
2cd36ba522 Revert "Revert "Print SHA-1 in hex for corrupted blocks""
This reverts commit 90eff6a340.
Also fix the bug where stashed blocks are not freed.

Bug: 21124445
Test: Previous failed update succeeded on bullhead
Change-Id: I23d232331a2beb51b6dcc82c957c87bc247d0268
2017-03-16 23:33:01 -07:00
Tianjie Xu
56ebe620a2 Add a test to perform block_image_update
Add the following tests:
stash src
bspatch stashed_src tgt
free stashed_src
(expected a successful update)

stash src
free stashed_src
fail_the_update
(expected stashed_src freed)

Bug: 36242722
Test: Test identified unfreed stashes correctly.
Change-Id: I5a136e8dc31774367972fbfe8c63cbc1ddb3a113
2017-03-16 23:06:37 -07:00
Tianjie Xu
92d167513d Merge "More cleanup to imgdiff & imgpatch" am: 3541934ff5 am: 91f8574061
am: dda128abbf

Change-Id: I4369d91759d40a1fb261766fb5b1e6aa0ecb36c4
2017-03-17 01:06:49 +00:00
Tianjie Xu
dda128abbf Merge "More cleanup to imgdiff & imgpatch" am: 3541934ff5
am: 91f8574061

Change-Id: I2ae1939a2a9452d23b3e659815e9e8f097c116a2
2017-03-17 01:03:49 +00:00
Tianjie Xu
91f8574061 Merge "More cleanup to imgdiff & imgpatch"
am: 3541934ff5

Change-Id: Icd54cbc1ca04fbe959a16fa6ac59ac4c20aeddcf
2017-03-17 01:00:20 +00:00