Add admin firmware upload support
Implement authenticated HTTPS OTA uploads with bounded streaming, image validation, reboot coordination, and lifecycle exclusion. Add the admin UI, regression tests, and Phase 10 acceptance documentation.
This commit is contained in:
@@ -39,6 +39,8 @@ static esp_err_t web_server_stop(void) { ++stops; return stop_result; }
|
||||
static esp_err_t web_server_start(void) { assert(false); return ESP_FAIL; }
|
||||
static esp_err_t web_server_clear_counters(void) { assert(false); return ESP_FAIL; }
|
||||
static esp_err_t web_serial_transport_clear_counters(void) { assert(false); return ESP_FAIL; }
|
||||
static bool reboot_busy;
|
||||
static esp_err_t web_firmware_update_reserve_reboot(void) { return reboot_busy ? ESP_FAIL : ESP_OK; }
|
||||
static void esp_restart(void) { ++reboots; }
|
||||
static void vTaskDelay(unsigned delay) { assert(delay==100); ++waits; }
|
||||
#define pdMS_TO_TICKS(ms) (ms)
|
||||
@@ -95,6 +97,9 @@ int main(void) {
|
||||
assert(command_reboot(1,NULL)==1 && scheduled==5 && !reboots);
|
||||
assert(command_reboot(2,NULL)==1 && scheduled==5 && !reboots);
|
||||
remote=false;
|
||||
reboot_busy=true;
|
||||
assert(command_reboot(1,NULL)==1 && !reboots && !waits && scheduled==5);
|
||||
reboot_busy=false;
|
||||
assert(command_reboot(1,NULL)==0 && reboots==1 && waits==1 && scheduled==5);
|
||||
char *rotate[]={"web", "certificate", "rotate", "--force", "extra"};
|
||||
remote=web=true; schedule_result=ESP_OK;
|
||||
|
||||
Reference in New Issue
Block a user