Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
fota_http.h File Reference

Firmware Over-the-Air over HTTP. More...

#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <zephyr/dfu/mcuboot.h>
#include <zephyr/net/tls_credentials.h>

Go to the source code of this file.

Data Structures

struct  fota_http_progress
 Transfer state reported while an image is being written. More...
struct  fota_http_download_params
 Parameters of a download. More...

Typedefs

typedef void(* fota_http_progress_cb_t) (const struct fota_http_progress *progress, void *user_data)
 Progress callback.
typedef void(* fota_http_done_cb_t) (int result, void *user_data)
 Completion callback of fota_http_download_async().

Functions

int fota_http_download (const struct fota_http_download_params *params)
 Download a firmware image into the MCUboot secondary slot.
int fota_http_download_async (const struct fota_http_download_params *params, fota_http_done_cb_t done_cb)
 Download a firmware image on the library thread.
int fota_http_cancel (void)
 Abort the download in progress.
int fota_http_apply (uint8_t image_index, bool permanent)
 Request MCUboot to boot a downloaded image on the next reset.
int fota_http_confirm (uint8_t image_index)
 Confirm a running image so the bootloader stops reverting it.
bool fota_http_confirm_pending (void)
 Check whether the running image still has to be confirmed.
int fota_http_get_download_slot (uint8_t image_index)
 Flash area identifier of the slot a download is written to.
int fota_http_get_image_header (uint8_t image_index, struct mcuboot_img_header *header)
 Read the MCUboot header of the image in the secondary slot.
size_t fota_http_nvm_bytes_written (void)
 Bytes written to non-volatile memory by the most recent download.
int fota_http_tls_add_ca (const void *cert, size_t len)
 Register the CA certificate used to authenticate https servers.
int fota_http_tls_add_client_cert (const void *cert, size_t cert_len, const void *key, size_t key_len)
 Register a client certificate and key for mutual TLS.

Detailed Description

Firmware Over-the-Air over HTTP.