openwrt/package
Rafał Miłecki f522047958 base-files: use JSON for storing firmware validation info
So far firmware validation result was binary limited: it was either
successful or not. That meant various limitations, e.g.:
1) Lack of proper feedback on validation problems
2) No way of marking firmware as totally broken (impossible to install)

This change introduces JSON for storing detailed validation info. It
provides a list of performed validation tests and their results. It
allows marking firmware as non-forceable (broken image that can't be
even forced to install).
Example:
{
        "tests": {
                "fwtool_signature": true,
                "fwtool_device_match": true
        },
        "valid": true,
        "forceable": true
}

Implementation is based on *internal* check_image bash script that:
1) Uses existing validation functions
2) Provides helpers for setting extra validation info

This allows e.g. platform_check_image() to call notify_check_broken()
when needed & prevent user from bricking a device.

Right now the new JSON info is used by /sbin/sysupgrade only. It still
doesn't make use of "forceable" as that is planned for later
development.

Further plans for this feature are:
1) Expose firmware validation using some new ubus method
2) Move validation step from /sbin/sysupgrade into "sysupgrade" ubus
   method so:
   a) It's possible to safely sysupgrade using ubus only
   b) /sbin/sysupgrade can be more like just a CLI

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-08-30 08:34:10 +02:00
..
base-files base-files: use JSON for storing firmware validation info 2019-08-30 08:34:10 +02:00
boot mvebu: uDPU: add sysupgrade support 2019-08-24 23:11:15 +02:00
devel perf: simplify the build process 2019-07-17 12:16:29 +02:00
firmware linux-firmware: add mediatek BT firmware 2019-08-30 07:27:51 +02:00
kernel mac80211: rt2x00: revert commit causing regression in 5GHz band 2019-08-29 22:29:54 +02:00
libs openssl: refresh patches 2019-08-24 23:23:31 +02:00
network iwinfo: update to latest Git HEAD 2019-08-28 12:09:14 +02:00
system procd: fix compile issue with glibc (FS#2469) 2019-08-28 15:30:40 +02:00
utils mtd-utils: update to 2.1.1 2019-08-27 10:32:44 +02:00
Makefile packages: apply usign padding workarounds to package indexes if needed 2019-08-07 07:15:07 +02:00