Commit Graph

3116 Commits

Author SHA1 Message Date
Tao Bao 1bb63f0dc2 Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)" am: d255b661a1 am: be54feda58
am: 83b649ee1d

Change-Id: I785c6ec399ee2695af9276b47559f93d7d010a48
2016-11-30 21:39:24 +00:00
Tao Bao 83b649ee1d Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)" am: d255b661a1
am: be54feda58

Change-Id: I2ba381a2c142df54122009bdcec539afca800824
2016-11-30 21:34:24 +00:00
Tao Bao be54feda58 Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)"
am: d255b661a1

Change-Id: I700b0591b9e67ff7932598da1e48c9fa793bb763
2016-11-30 21:30:01 +00:00
Tao Bao d255b661a1 Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)" 2016-11-30 21:19:42 +00:00
Connor O'Brien 848519fcfa Merge "Switch update verifier to HIDL HAL" am: 1528def46e am: ae2463bb35
am: 95beb966e2

Change-Id: I55f81ecdf29f79736f111bd54b0e38e476a2e0c6
2016-11-30 19:23:16 +00:00
Connor O'Brien 95beb966e2 Merge "Switch update verifier to HIDL HAL" am: 1528def46e
am: ae2463bb35

Change-Id: I92b714794116eb2bc07689995a9ac90932f2e30f
2016-11-30 19:17:46 +00:00
Connor O'Brien ae2463bb35 Merge "Switch update verifier to HIDL HAL"
am: 1528def46e

Change-Id: I77f12c0c865b04e191039de4b15482c02d5d5d9e
2016-11-30 19:12:14 +00:00
Connor O'Brien 1528def46e Merge "Switch update verifier to HIDL HAL" 2016-11-30 18:58:53 +00:00
Tao Bao 6478f3804d Merge "Remove ota_close(int) and ota_fclose(FILE*)." am: 7b59b45b08 am: 1f934beedd
am: 8762a560fc

Change-Id: Icb260caeb155cbd6db7b8810816b237ade3ed49f
2016-11-29 18:09:12 +00:00
Tao Bao 8762a560fc Merge "Remove ota_close(int) and ota_fclose(FILE*)." am: 7b59b45b08
am: 1f934beedd

Change-Id: I8b6c56b88212b7e4b3095371a34aa5313a0a8cf2
2016-11-29 18:04:12 +00:00
Tao Bao 1f934beedd Merge "Remove ota_close(int) and ota_fclose(FILE*)."
am: 7b59b45b08

Change-Id: I5d325de48d99c8056bdf95381537ba6b938822f0
2016-11-29 17:59:10 +00:00
Tao Bao 7b59b45b08 Merge "Remove ota_close(int) and ota_fclose(FILE*)." 2016-11-29 17:55:11 +00:00
Tao Bao f14a5ecbcf Merge "Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&)." am: eed7f607cf am: 839fbbdad3
am: 6a8e0eb164

Change-Id: I481327e831b2748d6dfa1b347ede324fdd2b9629
2016-11-29 05:31:05 +00:00
Tao Bao 5e5555d6c7 Merge "tests: Add testcases for EMMC targets." am: d226f28e87 am: fcfdda98da
am: 5e52ac31d4

Change-Id: If3d7b3363f1fb92fb0cc47006c659facf1615db7
2016-11-29 05:30:54 +00:00
Tao Bao 6a8e0eb164 Merge "Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&)." am: eed7f607cf
am: 839fbbdad3

Change-Id: I20241752ad6de90c0db0dea41d7af791c75dec4b
2016-11-29 05:26:08 +00:00
Tao Bao 5e52ac31d4 Merge "tests: Add testcases for EMMC targets." am: d226f28e87
am: fcfdda98da

Change-Id: If516f2b4b970fb1ef4688983cb890df8043dc704
2016-11-29 05:25:55 +00:00
Tao Bao 839fbbdad3 Merge "Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&)."
am: eed7f607cf

Change-Id: Ib570d0f548cc680e9c8f38c43573f71c52494ee9
2016-11-29 05:21:37 +00:00
Tao Bao fcfdda98da Merge "tests: Add testcases for EMMC targets."
am: d226f28e87

Change-Id: Ifadb3608e4856e5b4075b717cdb9c21c04162548
2016-11-29 05:21:24 +00:00
Tao Bao eed7f607cf Merge "Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&)." 2016-11-29 05:15:18 +00:00
Tao Bao d226f28e87 Merge "tests: Add testcases for EMMC targets." 2016-11-29 05:13:10 +00:00
Tao Bao 358c2ec1dc Remove ota_close(int) and ota_fclose(FILE*).
We should always use unique_fd or unique_file to hold the FD or FILE*
pointer when opening via ota_(f)open functions.

This CL avoids accidentally closing raw FDs or FILE* pointers that are
managed by unique_fd/unique_file.

Test: recovery_component_test passes.
Change-Id: If58eb8b5c5da507563f85efd5d56276472a1c957
2016-11-28 12:09:39 -08:00
Andriy Naborskyy 59590f325b 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 am: 67bc0b9573 -s ours
am: b7d4d77b3e  -s ours

Change-Id: Iae68e9050b51755d1d33ad9834beadc696402d32
2016-11-23 22:52:19 +00:00
Andriy Naborskyy b7d4d77b3e 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
am: 67bc0b9573  -s ours

Change-Id: Id74374ae2d659ebc50a7612c80a81f53abff77f0
2016-11-23 22:45:04 +00:00
Tao Bao 3dc14cb429 Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&).
We were using the below sequence prior to the CL in [1].

unique_fd fd(ota_open(...));
ota_close(fd);
fd.reset(ota_open(...));

fd.reset() may unintentionally close the newly opened FD if it
has the same value as the early ota_open. The CL in [1] changed to
"ota_close(fd.release())" to avoid the issue. This CL adds a new
overloaded function ota_close(unique_fd&) to handle the release
automatically.

Similarly add ota_fclose(std::unique_ptr<FILE>&).

[1] commit 48cf770471.

Bug: 33034669
Test: recovery_component_test passes.
Change-Id: Ief91edc590e95a7426e33364b28754173efb1056
2016-11-22 16:44:41 -08:00
Tao Bao eb718e1c99 DO NOT MERGE updater: Add "write_value()" function.
am: 1bf1772625  -s ours

Change-Id: I91141b6af02c5146e41eccf66a6700b44dc8cfb1
2016-11-22 21:10:58 +00:00
Tao Bao 8dd44e907a tests: Add testcases for EMMC targets.
There're two types of targets in applypatch: regular files and EMMC
targets. We have two sets of functions to handle them respectively.

This CL adds testcases to use "EMMC:filename:size:sha1" as the target
name, which triggers the code path for patching EMMC targets.

Bug: 33034669
Test: recovery_component_test passes.

Change-Id: I8f10c6c8d2c1fb083f06a83de91d9e23cb41fb6d
2016-11-21 23:32:33 -08:00
Connor O'Brien ad43d2dd30 Switch update verifier to HIDL HAL
Test: UV logs show success in both binderized and passthrough modes.
Bug: 31864052
Change-Id: Ied67a52c458dba7fe600e0fe7eca84db1a9f2587
Signed-off-by: Connor O'Brien <connoro@google.com>
2016-11-21 13:48:42 -08:00
Tao Bao d8e4f12ae0 Merge "applypatch: Release FD when explicitly calling close." am: a511a3c407 am: 1aa41a106d
am: b4aae79230

Change-Id: Ifc6f913352d60e663fa5e1b7547938220167ea67
2016-11-21 19:42:38 +00:00
Tao Bao b4aae79230 Merge "applypatch: Release FD when explicitly calling close." am: a511a3c407
am: 1aa41a106d

Change-Id: I802d7ceb8cd6288d6c85e3faa15c4e2cb57a9865
2016-11-21 19:37:38 +00:00
Tao Bao 1aa41a106d Merge "applypatch: Release FD when explicitly calling close."
am: a511a3c407

Change-Id: Ie4188abf0d9a9dec56ae162f7bd6d1cd35aacb0f
2016-11-21 19:32:37 +00:00
Treehugger Robot a511a3c407 Merge "applypatch: Release FD when explicitly calling close." 2016-11-21 19:24:09 +00:00
Tao Bao 21a10e2cfa Merge "Fail gracefully when we fail to fork the update binary" am: 340a2d364f am: 2a962adc85
am: 5713071c81

Change-Id: I881011efc5449f5cedcbe395b82a8d58e024c6da
2016-11-21 19:22:07 +00:00
Tao Bao 5713071c81 Merge "Fail gracefully when we fail to fork the update binary" am: 340a2d364f
am: 2a962adc85

Change-Id: Ifad227336cc3a0db254a9bfef0de2678d8dd86bd
2016-11-21 19:16:37 +00:00
Tao Bao 2a962adc85 Merge "Fail gracefully when we fail to fork the update binary"
am: 340a2d364f

Change-Id: If68e5c3b97e01186804076caf516512d8b9977b3
2016-11-21 19:11:35 +00:00
Tao Bao 340a2d364f Merge "Fail gracefully when we fail to fork the update binary" 2016-11-21 19:06:37 +00:00
Tao Bao 48cf770471 applypatch: Release FD when explicitly calling close.
We use android::base::unique_fd() to avoid leaking FD. We also want to
call close (or ota_close) to explicitly check the close result. When
combining the two together, we need to release the unique_fd to avoid
closing the same FD twice.

Bug: 33034669
Test: Trigger applypatch with install-recovery.sh.
Change-Id: I1a4f5d5fba7a23ef98d8bd7b7b07e87ae6f705c5
2016-11-21 09:47:34 -08:00
Matthew Bouyack 10cd48da1d Fail gracefully when we fail to fork the update binary
This change was original made in cw-f-dev but caused failures in
nyc-mr1-dev-plus-aosp due to lack of support for 'LOGE'

This version of the change uses the new 'LOG(ERROR)' style logging
instead.

See bug b/31395655
Test: attempt a memory intensive incremental OTA on a low-memory device

Change-Id: Ia87d989a66b0ce3f48e862abf9b9d6943f70e554
(cherry picked from commit c8db481780)
2016-11-20 22:38:37 -08:00
Bill Yi 5c11172849 Merge "Import translations. DO NOT MERGE" into stage-aosp-master am: cf589f523a -s ours
am: 92ac9041c1  -s ours

Change-Id: I905cc7cc9acbf5cc97d35cea376c0a5d83fcd335
2016-11-21 01:37:28 +00:00
Bill Yi e988840a88 Import translations. DO NOT MERGE am: 9a4ff5a900 -s ours
am: 8d7399f553  -s ours

Change-Id: I361b0acc015358c220c3288305efb9a3115f2f62
2016-11-21 01:37:15 +00:00
Bill Yi 92ac9041c1 Merge "Import translations. DO NOT MERGE" into stage-aosp-master
am: cf589f523a  -s ours

Change-Id: Ibfec2c461c31264dd31ffddbf938be364056eb50
2016-11-21 01:32:08 +00:00
Bill Yi 8d7399f553 Import translations. DO NOT MERGE
am: 9a4ff5a900  -s ours

Change-Id: I19ed28ded9e92d54b060d0a944cf318a0f1a4984
2016-11-21 01:32:08 +00:00
TreeHugger Robot cf589f523a Merge "Import translations. DO NOT MERGE" into stage-aosp-master 2016-11-21 01:24:53 +00:00
Bill Yi 9a4ff5a900 Import translations. DO NOT MERGE
Auto-generated-cl: translation import

Bug: 32177112
Change-Id: I4d68cd0c69b40d1765cd74dfa730f56be01b5b23
2016-11-20 15:25:37 -08:00
Tao Bao 073408a943 Merge "Call update_engine_sideload from recovery." am: 1d77c93bcc am: fa62ae6d0b
am: 4cbedcc679

Change-Id: I37af5d1ae1be07d6c1b233f5cf25896339db51cd
2016-11-20 18:29:07 +00:00
Tao Bao 4cbedcc679 Merge "Call update_engine_sideload from recovery." am: 1d77c93bcc
am: fa62ae6d0b

Change-Id: I516b0a177f66b6a3c1e51b2f470a29c8d2913780
2016-11-20 18:24:07 +00:00
Tao Bao fa62ae6d0b Merge "Call update_engine_sideload from recovery."
am: 1d77c93bcc

Change-Id: I110237afa38d616138e2ec8eec17b9c46b009a13
2016-11-20 18:19:37 +00:00
Tao Bao 1d77c93bcc Merge "Call update_engine_sideload from recovery." 2016-11-20 18:13:14 +00:00
Alex Deymo 9b10e6095a 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
(cherry picked from commit 4344d636d4)
2016-11-19 22:39:51 -08:00
Tao Bao 953851cb97 Merge "updater: Refactor set_stage() and get_stage() functions." am: c627cd6486 am: 146f92ab3e
am: 062a2cffb3

Change-Id: I4673e6b160fcf9e2b6069af91eeae97d4e4a17ed
2016-11-20 05:18:19 +00:00
Tao Bao 723b5d505f Merge "update_verifier: Sync Android.mk with aosp-master." into stage-aosp-master am: ad57e2ca2c
am: 9f4d385704

Change-Id: If6d2231e486ba91398ff8bef8d4f118e57c3324d
2016-11-20 05:14:00 +00:00