ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_mdl_sha256_iface Struct Reference

Streaming SHA-256 seam with caller-owned fixed storage. More...

#include <ra8_c6link_mdl_transfer.h>

Data Fields

ra8_err_t(* init )(void *ctx)
 Reset the caller-owned context for a SHA-256 operation.
ra8_err_t(* update )(void *ctx, const uint8_t *data, uint16_t len)
 Feed one ordered byte span to the running hash.
ra8_err_t(* final )(void *ctx, uint8_t out[k_ra8_mdl_sha256_bytes])
 Finalise the hash into the caller-provided digest.
void * ctx
 Hash context passed to every function.

Detailed Description

Streaming SHA-256 seam with caller-owned fixed storage.

The implementation may wrap RSIP, PSA Crypto, or a bounded software implementation. The coordinator never allocates or knows the concrete context type.

Invariant
init, update, final, and ctx are non-null.
final writes exactly k_ra8_mdl_sha256_bytes bytes.
.init = sha_init, .update = sha_update, .final = sha_final, .ctx = &sha,
};
See also
ra8_mdl_transfer_config_t
Since
0.1.0

Definition at line 103 of file ra8_c6link_mdl_transfer.h.

Field Documentation

◆ ctx

◆ final

ra8_err_t(* ra8_mdl_sha256_iface::final) (void *ctx, uint8_t out[k_ra8_mdl_sha256_bytes])

Finalise the hash into the caller-provided digest.

Definition at line 109 of file ra8_c6link_mdl_transfer.h.

Referenced by internal_check_transfer(), internal_mdl_transfer_commit(), internal_mdl_transfer_validate(), internal_publish(), and mdl_net_c6link_init().

◆ init

ra8_err_t(* ra8_mdl_sha256_iface::init) (void *ctx)

Reset the caller-owned context for a SHA-256 operation.

Definition at line 105 of file ra8_c6link_mdl_transfer.h.

Referenced by internal_check_transfer(), internal_mdl_transfer_begin(), internal_mdl_transfer_validate(), internal_publish(), and mdl_net_c6link_init().

◆ update

ra8_err_t(* ra8_mdl_sha256_iface::update) (void *ctx, const uint8_t *data, uint16_t len)

The documentation for this struct was generated from the following file: