24#ifndef SUIT_HANDLERS_H
25#define SUIT_HANDLERS_H
32#include "nanocbor/nanocbor.h"
42#define SUIT_WRAPPER_AUTHENTICATION (2)
43#define SUIT_WRAPPER_MANIFEST (3)
50#define SUIT_CONTAINER_VERSION (1)
51#define SUIT_CONTAINER_SEQ_NO (2)
52#define SUIT_CONTAINER_COMMON (3)
53#define SUIT_CONTAINER_DEPS_RESOLUTION (7)
54#define SUIT_CONTAINER_PAYLOAD_FETCH (8)
55#define SUIT_CONTAINER_INSTALL (9)
56#define SUIT_CONTAINER_VALIDATE (10)
57#define SUIT_CONTAINER_LOAD (11)
58#define SUIT_CONTAINER_RUN (12)
59#define SUIT_CONTAINER_TEXT (13)
66#define SUIT_COMMON_DEPENDENCIES (1)
67#define SUIT_COMMON_COMPONENTS (2)
68#define SUIT_COMMON_DEP_COMPONENTS (3)
69#define SUIT_COMMON_COMMAND_SEQUENCE (4)
76#define SUIT_COND_VENDOR_ID (1)
77#define SUIT_COND_CLASS_ID (2)
78#define SUIT_COND_IMAGE_MATCH (3)
79#define SUIT_COND_USE_BEFORE (4)
80#define SUIT_COND_COMPONENT_OFFSET (5)
81#define SUIT_COND_DEVICE_ID (24)
82#define SUIT_COND_IMAGE_NOT_MATCH (25)
83#define SUIT_COND_MIN_BATTERY (26)
84#define SUIT_COND_UPDATE_AUTHZ (27)
85#define SUIT_COND_VERSION (28)
92#define SUIT_DIR_SET_COMPONENT_IDX (12)
93#define SUIT_DIR_SET_DEPENDENCY_IDX (13)
94#define SUIT_DIR_ABORT (14)
95#define SUIT_DIR_TRY_EACH (15)
96#define SUIT_DIR_PROCESS_DEPS (18)
97#define SUIT_DIR_SET_PARAM (19)
98#define SUIT_DIR_OVERRIDE_PARAM (20)
99#define SUIT_DIR_FETCH (21)
100#define SUIT_DIR_COPY (22)
101#define SUIT_DIR_RUN (23)
102#define SUIT_DIR_WAIT (29)
103#define SUIT_DIR_RUN_SEQUENCE (30)
104#define SUIT_DIR_RUN_WITH_ARGS (31)
105#define SUIT_DIR_SWAP (32)
118typedef int (*suit_manifest_handler_t)(
suit_manifest_t *manifest,
int key,
119 nanocbor_value_t *it);
124extern const suit_manifest_handler_t suit_global_handlers[];
125extern const size_t suit_global_handlers_len;
130extern const suit_manifest_handler_t suit_command_sequence_handlers[];
135extern const size_t suit_command_sequence_handlers_len;
140extern const suit_manifest_handler_t suit_envelope_handlers[];
145extern const size_t suit_envelope_handlers_len;
150extern const suit_manifest_handler_t suit_common_handlers[];
155extern const size_t suit_common_handlers_len;
172 nanocbor_value_t *it,
173 const suit_manifest_handler_t *handlers,
174 size_t handlers_len);
192 nanocbor_value_t *bseq,
193 const suit_manifest_handler_t *handlers,
194 size_t handlers_len);
212 nanocbor_value_t *val);
224 const nanocbor_value_t *val);
SUIT parameter reference.