firmware-utils: tplink-safeloader: refactor meta-partition padding
authorSander Vanheule <sander@svanheule.net>
Sat, 15 Aug 2020 07:51:18 +0000 (09:51 +0200)
committerAlexander Couzens <lynxis@fe80.eu>
Mon, 7 Dec 2020 00:57:19 +0000 (01:57 +0100)
commit7c1e3f7ec945566d58bef93567ffd8b0b90c6381
treef0c1d973f8d8c8f52635d4575dca295adb981562
parentfc742610a34dc98cb6186487965c1514b432099a
firmware-utils: tplink-safeloader: refactor meta-partition padding

Because some padding values in the TP-Link safeloader image generation
were hardcoded, different values were sometimes used throughout a
factory image. TP-Link's upgrade images use the same value everywhere,
so let's do the same here.

Although a lot of TP-Link's safeloader images have padded partition
payloads, images for the EAP-series of AC devices don't. This padding is
therefore also made optional.

By replacing the type of the padding value byte with a wider datatype,
new values outside of the previously valid range become available. Use
these new values to denote that padding should not be performed.
Because char might be signed, also replace the char literals by a
numeric literal. Otherwise '\xff' might be sign extended to 0xffff.

This results in factory images differing by 1 byte for:
* C2600
* ARCHER-C5-V2
* ARCHERC9
* TLWA850REV2
* TLWA855REV1
* TL-WPA8630P-V2-EU
* TL-WPA8630P-V2-INT
* TL-WPA8630P-V2.1-EU
* TLWR1043NDV4
* TL-WR902AC-V1
* TLWR942NV1
* RE200-V2
* RE200-V3
* RE220-V2
* RE305-V1
* RE350-V1
* RE350K-V1
* RE355
* RE450
* RE450-V2
* RE450-V3
* RE500-V1
* RE650-V1

The following factory images no longer have padding, shrinking the
factory images by a few bytes for:
* EAP225-OUTDOOR-V1
* EAP225-V3
* EAP225-WALL-V2
* EAP245-V1
* EAP245-V3

Signed-off-by: Sander Vanheule <sander@svanheule.net>
Makefile
src/tplink-safeloader.c