test: Settings-Format längentolerant machen, ota_pending ergänzen
read_rec() akzeptiert jetzt Records mit hdr.length <= sizeof(nl_settings_t): CRC wird nur über die tatsächlich geschriebenen Bytes geprüft, fehlende Felder bleiben auf 0 (Default). Ein zu langer (unbekannter) Record wird weiter abgelehnt. Ein durch massive Kürzung "leer" gelesener Record (fade_in_ms, fade_out_ms und token allesamt 0) fällt komplett auf die Defaults zurück. Neues Feld ota_pending (nach fade_out_ms) für den kommenden OTA-Ablauf.
This commit is contained in:
@@ -18,6 +18,7 @@ typedef struct {
|
||||
uint8_t power_on_behaviour; /* nl_pob_t */
|
||||
uint16_t fade_in_ms;
|
||||
uint16_t fade_out_ms;
|
||||
uint8_t ota_pending; /* set before an OTA; the next boot restores the last state */
|
||||
} nl_settings_t;
|
||||
|
||||
void nl_settings_defaults(nl_settings_t *s);
|
||||
|
||||
Reference in New Issue
Block a user