Add a binder function verifyPayloadApplicable().
This CL adds the following function to the Android binder service.
boolean verifyPayloadApplicable(in String metadataFilename);
It verifies whether a payload (delegated by the payload metadta) can be
applied to the current device. A caller can download only the payload
metadata (from the start of the payload, past the last byte that
contains the metadata signature - the actual size is parsable from the
header). The metadata should be saved to a local file, and passed to
update_engine to query whether the payload can be applied.
This is useful for a caller to determine if a delta payload can be
applied to the device, by downloading minimal data (payload metadata
usually takes a few hundred KiB or less). On verification failures, the
caller can take better strategies (e.g. switching to a full payload).
Bug: 65283633
Test: Build and flash on walleye. Trigger a call to the Java API, then
verify the logcat output.
Change-Id: I2e8d21d1073baa0da6faf1292497d61f60e6742f
(cherry picked from commit 07fbb1b7dff86d8b26bf976b72f2722fde66b603)
3 files changed