summaryrefslogtreecommitdiffstats
path: root/rebootescrow
Commit message (Collapse)AuthorAgeFilesLines
* Rename vts-core to vtsDan Shi2020-09-261-1/+1
| | | | | | | Bug: 151896491 Test: none Change-Id: If74547c56b46ebc7fd728c1bf52fe9dedac65ffa Merged-In: I562b4dc50765e953800a814a8fd84a01c1b9352b
* Merge "RebootEscrow HAL: testing with secure implementations" into rvc-dev ↵TreeHugger Robot2020-06-232-4/+29
|\ | | | | | | | | | | | | | | am: 2519e6d079 Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/11953060 Change-Id: I98adaf41b1ff4519be7afc9c848e946a012d7952
| * RebootEscrow HAL: testing with secure implementationsKenny Root2020-06-222-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | To test implementations that use TEE keymaster with EARLY_BOOT_ONLY keys, it is required that the "earlyBootEnded" call in vold should be removed before they will pass. Mark those tests as DISABLED_... and include a comment and README indicating what needs to be done. Bug: 159513354 Bug: 158964050 Test: atest VtsHalRebootEscrowTargetTest Change-Id: Ie12969c0353ff42202b3dfcfa0be87ba3442e5d3
* | Merge "Freeze vintf aidl interfaces" into rvc-dev am: 1b33916a3bTreeHugger Robot2020-04-103-0/+25
|\| | | | | | | Change-Id: Ifb08d70f9a052c98612fa5d149ce6cec1c2ced8b
| * Freeze vintf aidl interfacesJeongik Cha2020-04-083-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AIDL interfaces which are vintf-stable have to be frozen in release. But these interfaces have been never frozen, so freeze them. - android.hardware.common - android.hardware.automotive.occupant_awareness - android.hardware.rebootescrow - android.hardware.graphics.common Bug: 153510296 Bug: 153510400 Bug: 153510960 Bug: 153511702 Test: m Change-Id: I56e53209eaf00518ec83f2a322e89d6d944eb0ac
| * Rename vts-core to vtsDan Shi2020-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | Bug: 151896491 Test: local build Exempt-From-Owner-Approval: This CL update suite name vts-core to vts as the suite name is updated. This CL won't change test logic or behavior. Change-Id: I562b4dc50765e953800a814a8fd84a01c1b9352b Merged-In: I562b4dc50765e953800a814a8fd84a01c1b9352b
* | Merge "Update the current API dump" into rvc-dev am: 2e152113d3TreeHugger Robot2020-03-311-0/+23
|\| | | | | | | Change-Id: I091127026ac81c113c3ef7f8413a14b5e2e0bdb7
| * Update the current API dumpJiyong Park2020-03-301-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All aidl_interface modules should by default considered as stable, in case it is used across system and vendor partitions, or across modules. Like other API surfaces, we need to have a dump for the current (yet-to-be-released) version and update it when there is an API change. This is done via . Then the owner of the interface can freeze the current version as a numbered version via . This change shal be rejected only when the owner is certain that the interface is not used across the updatable boundaries. Bug: 152655547 Test: m Change-Id: If899eb8ea77a20b0c097c61abe5bdab64cd6f487
* | use vector<uint8_t> for byte[] in AIDLJooyung Han2020-03-232-7/+5
|/ | | | | | | | | | | | | | | | In native world, byte stream is typically represented in uint8_t[] or vector<uint8_t>. C++ backend already generates that way. This change involves NDK backend. Now NDK backend also uses vector<uint8_t> just like C++ backend. Bug: 144957764 Test: atest CtsNdkBinderTestCases Merged-In: I8de348b57cf92dd99b3ee16252f56300ce5f4683 Change-Id: I8de348b57cf92dd99b3ee16252f56300ce5f4683 (cherry picked from commit 9070318462e5e73acf1509cf7e75ac260e51e43a) Exempt-From-Owner-Approval: cp from master to avoid merge-conflict
* Use a constant-time MAX functionPaul Crowley2020-03-131-14/+32
| | | | | | | | Bug: 146520538 Test: atest HadamardTest Change-Id: Ife1012c14d697141e6ee0c583dc32eaacdb72b73 Merged-In: Ife1012c14d697141e6ee0c583dc32eaacdb72b73 (cherry picked from commit b0d2062abebee358ac9d4fa66b8124ec37a916c8)
* rebootescrow: eliminate copy during readKenny Root2020-02-011-4/+3
| | | | | | | | | Instead of reading into a std::string, read directly into the std::vector of bytes This saves a copy and reduces memory overhead slightly. Test: atest VtsHalRebootEscrowTargetTest Bug: 148177693 Change-Id: I4dfe552f21394fb0891858b34a481b489dc3c684
* rebootescrow: use property to find deviceKenny Root2020-01-283-5/+14
| | | | | | | | | To allow vendors to have different names for their devices, read the device name from a system property. Test: atest VtsHalRebootEscrowTargetTest Bug: 146400078 Change-Id: I93f37e14139532ab192795dcad27c586545a1bc4
* Resume-on-Reboot: use uevent to chownKenny Root2020-01-271-4/+0
| | | | | | | | | | | | | We now allow this device to change names to accomodate other board types that use pmem. Setting this in the HAL .rc file now causes SELinux errors on those platforms. Switch to using the ueventd.rc method to avoid this SELinux problem. Bug: 63928581 Bug: 146400078 Test: atest VtsHalRebootEscrowTargetTest Change-Id: If5b83c087810f52fef4039748e9015a5f95f2f2a
* rebootescrow: skip testing unsupported devicesKenny Root2020-01-211-1/+11
| | | | | | | | | | This HAL is optional, so we should skip devices that do not have it implemented instead of failing the test. Bug: 143695053 Bug: 63928581 Test: atest VtsHalRebootEscrowTargetTest Change-Id: Idaabdbe621cca0b8896377cef6f561b106ea252c
* Merge changes from topics "vintf-rebootescrow", "vintf-vibrator"Steven Moreland2020-01-073-4/+4
|\ | | | | | | | | | | * changes: vibrator: use package as name rebootescrow: use package as name
| * rebootescrow: use package as nameSteven Moreland2020-01-063-4/+4
| | | | | | | | | | | | | | | | | | | | | | In order to provide a more descriptive name, and to be consistent with HIDL, the stable AIDL package names are switching from vintf-rebootescrow format to the package format (android.hardware.rebootescrow). Bug: N/A Test: all build time Change-Id: Ibb116e76761b751515d95ee8e515a6f7b97bb8d0
* | Merge "Add owners file for rebootescrow"TreeHugger Robot2020-01-062-0/+4
|\ \
| * | Add owners file for rebootescrowKenny Root2020-01-062-0/+4
| |/ | | | | | | | | | | | | | | Applies to the default implementation and VTS tests. The AIDL is still managed by API review council. Test: No functional change Change-Id: Icb2d9182c1b3376d6b46b467388785e7180db1e9
* | Speed up encodingPaul Crowley2019-12-232-16/+24
| | | | | | | | | | | | Bug: 63928581 Test: atest HadamardTest Change-Id: I1e37a9559892288f76e69fe81a746b77e2bf7495
* | Shuffle the encoding to prevent systematic errorsPaul Crowley2019-12-231-2/+34
|/ | | | | | Bug: 63928581 Test: atest HadamardTest Change-Id: Ide8ead4bf5efa629c631df52249cbb322265cc8c
* Merge "Transpose the encoding matrix"Paul Crowley2019-12-213-204/+83
|\
| * Transpose the encoding matrixPaul Crowley2019-12-203-204/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stripe together the encodings from each of the 16 codewords, so that if a 512-byte DRAM line is knocked out, it affects 256 bits from each codeword rather than 4096 bits from a single encoded codeword. Rather than using std::bitset, we directly set and read bits in the std::vector<uint8_t>, because the striping means that copying it will now cost not4k in allocation but 64k. Decode directly to a word, without using list decoding. It seems we don't need list decoding for the error rates that matter here, and we never completed the implementation of it anyway. Declare and test only the full interface, now that it doesn't decompose quite so neatly. Bug: 63928581 Test: atest HadamardTest Change-Id: If022d3f4a8d6fccdf68119d4666f83ce5005bccb
* | Resume on Reboot default implementationKenny Root2019-12-196-0/+202
|/ | | | | | | | | | | | | | | | | A default implementation of the RebootEscrow HAL which relies on RAM retention to keep a key around during a reboot to apply an OTA. This should work on devices that use a "warm reboot" and most likely will work on devices that use a "cold reboot" as well. DRAM will retain information for several seconds depending on the temperature and other factors. This is enough to survive a reboot. With the Hadamard code used in this change for error recovery, many errors can be recovered. Bug: 63928581 Test: make Test: atest VtsHalRebootEscrowTargetTest Change-Id: Ib8db7888d64fee8d827d7c06892b9a1f2af87add
* Add hadamard utilities to encode keysTianjie Xu2019-12-184-0/+392
| | | | | | | | | | | Add the utility functions to encode & decode 32 bytes keys. The hadamard encoding will expand a 2 bytes word to 2^15 bits. And thus the 32 byte key will expand to 64KiB in space. The encoded value is more robust and we will be able to recover the key even if there is some corruption. Test: unittest pass Change-Id: Iae8a28a8c7c1699f8641f9250f0eccde5c2ff138
* HAL for Resume on RebootKenny Root2019-12-164-0/+197
This adds a HAL interface for escrowing a key over reboot during an OTA that will unlock the Synthetic Password when the OTA has completed successfully. Bug: 63928581 Test: make Test: atest VtsHalRebootEscrowTargetTest Change-Id: I8485f3821157e67b6651f4fe425e46cb4499c710