base-files: validate firmware for compatibility with backup
[openwrt/openwrt.git] / package / base-files / files / usr / libexec / validate_firmware_image
index a07796c9dc91d5654979f262fc4d51ec42297755..f85fb9e4b4352022a6ddf108e9adabdb8f57ea71 100755 (executable)
@@ -8,6 +8,7 @@ include /lib/upgrade
 
 VALID=1
 FORCEABLE=1
+ALLOW_BACKUP=1
 
 # Mark image as invalid but still possible to install
 notify_firmware_invalid() {
@@ -20,6 +21,11 @@ notify_firmware_broken() {
        FORCEABLE=0
 }
 
+# Mark image as incompatible with preserving a backup
+notify_firmware_no_backup() {
+       ALLOW_BACKUP=0
+}
+
 # Add result of validation test
 notify_firmware_test_result() {
        local old_ns
@@ -55,5 +61,6 @@ json_init
        json_close_object
        json_add_boolean valid "$VALID"
        json_add_boolean forceable "$FORCEABLE"
+       json_add_boolean allow_backup "$ALLOW_BACKUP"
 json_dump -i
 json_set_namespace $old_ns