base-files: validate firmware for compatibility with backup

This allows platform code to check if firmware image can be used with
preserving a backup. It may be used e.g. when installing vendor
firmwares that won't restore appended backup archive.

Suggested-by: Luis Araneda <luaraneda@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
Rafał Miłecki 2019-09-05 13:08:13 +02:00
parent 7db6559914
commit 1c510fe298
1 changed files with 7 additions and 0 deletions

View File

@ -8,6 +8,7 @@ include /lib/upgrade
VALID=1 VALID=1
FORCEABLE=1 FORCEABLE=1
ALLOW_BACKUP=1
# Mark image as invalid but still possible to install # Mark image as invalid but still possible to install
notify_firmware_invalid() { notify_firmware_invalid() {
@ -20,6 +21,11 @@ notify_firmware_broken() {
FORCEABLE=0 FORCEABLE=0
} }
# Mark image as incompatible with preserving a backup
notify_firmware_no_backup() {
ALLOW_BACKUP=0
}
# Add result of validation test # Add result of validation test
notify_firmware_test_result() { notify_firmware_test_result() {
local old_ns local old_ns
@ -55,5 +61,6 @@ json_init
json_close_object json_close_object
json_add_boolean valid "$VALID" json_add_boolean valid "$VALID"
json_add_boolean forceable "$FORCEABLE" json_add_boolean forceable "$FORCEABLE"
json_add_boolean allow_backup "$ALLOW_BACKUP"
json_dump -i json_dump -i
json_set_namespace $old_ns json_set_namespace $old_ns