61fc692d66
DSU installation service fetches a key revocation list (key blacklist). Revocation list is a https URL specified in a resource string. Fetched result is cached in HttpResponseCache to save bandwidth, and the cached result is always forced validated with server to ensure freshness. In other words, fetching a revocation list is done via a "conditional GET", such http GET returns a brief (304 NOT MODIFIED) response if ours cache is still valid, else the server sends a (200 OK) response with new data. TODO: Compare the installed DSU image's public key with the revocation list and boot-ramdisk. If the public key is revoked then abort installation. Bug: 128892201 Test: atest DynamicSystemInstallationServiceTests Test: adb shell am start-activity \ -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \ -a android.os.image.action.START_INSTALL \ --el KEY_USERDATA_SIZE 8589934592 \ -d file:///storage/emulated/0/Download/aosp_arm64-dsu_test.zip \ --es KEY_PUBKEY key1 Change-Id: I29ae088acb1bd23336ec09654f38b4fc464316d8
30 lines
1.0 KiB
XML
30 lines
1.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright (C) 2019 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
package="com.android.dynsystem.tests">
|
|
|
|
<application>
|
|
<uses-library android:name="android.test.runner" />
|
|
</application>
|
|
|
|
<instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
|
|
android:targetPackage="com.android.dynsystem"
|
|
android:label="Tests for DynamicSystemInstallationService" />
|
|
|
|
</manifest>
|