Skip to content

Commit 4a745e3

Browse files
committed
suit: Add tests for severable sequences
Add a test that verifies installation of manifests with severable sequences. Update suit-processor revision to make it possible. Ref: NCSDK-29653 Signed-off-by: Tomasz Chyrowicz <[email protected]>
1 parent dca7c75 commit 4a745e3

File tree

11 files changed

+1244
-1
lines changed

11 files changed

+1244
-1
lines changed

tests/subsys/suit/manifest_common/regenerate_all.sh

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,10 @@ declare -A dependency_envelopes=(
8989
../orchestrator/manifest/src/manifest_valid_app_54.c"
9090
["../orchestrator/manifest/sample_valid.yaml"]="
9191
../orchestrator/manifest/src/manifest_valid_app.c"
92+
["../orchestrator/manifest/sample_valid_severable_54.yaml"]="
93+
../orchestrator/manifest/src/manifest_valid_app_severable_54.c"
94+
["../orchestrator/manifest/sample_valid_severable.yaml"]="
95+
../orchestrator/manifest/src/manifest_valid_app_severable.c"
9296
)
9397
declare -A root_envelopes=(
9498
["../storage/manifest/manifest_root.yaml"]="
@@ -101,6 +105,10 @@ declare -A root_envelopes=(
101105
../orchestrator/manifest/src/manifest_valid_54.c"
102106
["../orchestrator/manifest/sample_valid_root.yaml"]="
103107
../orchestrator/manifest/src/manifest_valid.c"
108+
["../orchestrator/manifest/sample_valid_root_severable_54.yaml"]="
109+
../orchestrator/manifest/src/manifest_valid_severable_54.c"
110+
["../orchestrator/manifest/sample_valid_root_severable.yaml"]="
111+
../orchestrator/manifest/src/manifest_valid_severable.c"
104112
)
105113
declare -A envelope_dependency_names=(
106114
["../storage/manifest/manifest_app.yaml"]="app.suit"
@@ -114,6 +122,10 @@ declare -A envelope_dependency_names=(
114122
["../orchestrator/manifest/sample_valid.yaml"]="sample_app_posix.suit"
115123
["../orchestrator/manifest/sample_valid_root_54.yaml"]="sample_root.suit"
116124
["../orchestrator/manifest/sample_valid_root.yaml"]="sample_root_posix.suit"
125+
["../orchestrator/manifest/sample_valid_severable_54.yaml"]="sample_app_severable.suit"
126+
["../orchestrator/manifest/sample_valid_severable.yaml"]="sample_app_severable_posix.suit"
127+
["../orchestrator/manifest/sample_valid_root_severable_54.yaml"]="sample_root_severable.suit"
128+
["../orchestrator/manifest/sample_valid_root_severable.yaml"]="sample_root_severable_posix.suit"
117129
)
118130

119131

Lines changed: 214 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,214 @@
1+
SUIT_Envelope_Tagged:
2+
suit-authentication-wrapper:
3+
SuitDigest:
4+
suit-digest-algorithm-id: cose-alg-sha-256
5+
suit-manifest:
6+
suit-manifest-version: 1
7+
suit-manifest-sequence-number: 1
8+
suit-common:
9+
suit-components:
10+
- - CAND_MFST
11+
- 0
12+
- - INSTLD_MFST
13+
- RFC4122_UUID:
14+
namespace: nordicsemi.com
15+
name: test_sample_app
16+
suit-shared-sequence:
17+
- suit-directive-set-component-index: 1
18+
- suit-directive-override-parameters:
19+
suit-parameter-vendor-identifier:
20+
RFC4122_UUID: nordicsemi.com
21+
suit-parameter-class-identifier:
22+
RFC4122_UUID:
23+
namespace: nordicsemi.com
24+
name: test_sample_root
25+
26+
- suit-condition-vendor-identifier:
27+
- suit-send-record-success
28+
- suit-send-record-failure
29+
- suit-send-sysinfo-success
30+
- suit-send-sysinfo-failure
31+
- suit-condition-class-identifier:
32+
- suit-send-record-success
33+
- suit-send-record-failure
34+
- suit-send-sysinfo-success
35+
- suit-send-sysinfo-failure
36+
suit-dependencies:
37+
# Key is the index of suit-components that describe the dependency manifest
38+
"0": {}
39+
"1": {}
40+
41+
suit-validate:
42+
- suit-directive-set-component-index: 1
43+
- suit-condition-dependency-integrity:
44+
- suit-send-record-success
45+
- suit-send-record-failure
46+
- suit-send-sysinfo-success
47+
- suit-send-sysinfo-failure
48+
- suit-directive-process-dependency:
49+
- suit-send-record-success
50+
- suit-send-record-failure
51+
- suit-send-sysinfo-success
52+
- suit-send-sysinfo-failure
53+
54+
suit-invoke:
55+
- suit-directive-set-component-index: 1
56+
- suit-condition-dependency-integrity:
57+
- suit-send-record-success
58+
- suit-send-record-failure
59+
- suit-send-sysinfo-success
60+
- suit-send-sysinfo-failure
61+
- suit-directive-process-dependency:
62+
- suit-send-record-success
63+
- suit-send-record-failure
64+
- suit-send-sysinfo-success
65+
- suit-send-sysinfo-failure
66+
67+
###
68+
# All SUIT_Severable_Members_Choice
69+
###
70+
suit-payload-fetch:
71+
suit-digest-algorithm-id: cose-alg-sha-256
72+
suit-install:
73+
suit-digest-algorithm-id: cose-alg-sha-256
74+
suit-text:
75+
suit-digest-algorithm-id: cose-alg-sha-256
76+
77+
###
78+
# All severable-manifest-members-choice-extensions
79+
###
80+
suit-dependency-resolution:
81+
suit-digest-algorithm-id: cose-alg-sha-256
82+
suit-candidate-verification:
83+
suit-digest-algorithm-id: cose-alg-sha-256
84+
85+
suit-manifest-component-id:
86+
- INSTLD_MFST
87+
- RFC4122_UUID:
88+
namespace: nordicsemi.com
89+
name: test_sample_root
90+
91+
###
92+
# All SUIT_Severable_Manifest_Members
93+
###
94+
suit-payload-fetch:
95+
- suit-directive-set-component-index: 0
96+
- suit-directive-override-parameters:
97+
suit-parameter-uri: '#app.suit'
98+
suit-parameter-image-digest:
99+
suit-digest-algorithm-id: cose-alg-sha-256
100+
suit-digest-bytes:
101+
envelope: sample_app_posix.suit
102+
- suit-directive-fetch:
103+
- suit-send-record-failure
104+
- suit-condition-image-match:
105+
- suit-send-record-success
106+
- suit-send-record-failure
107+
- suit-send-sysinfo-success
108+
- suit-send-sysinfo-failure
109+
- suit-condition-dependency-integrity:
110+
- suit-send-record-success
111+
- suit-send-record-failure
112+
- suit-send-sysinfo-success
113+
- suit-send-sysinfo-failure
114+
- suit-directive-process-dependency:
115+
- suit-send-record-success
116+
- suit-send-record-failure
117+
- suit-send-sysinfo-success
118+
- suit-send-sysinfo-failure
119+
120+
suit-install:
121+
- suit-directive-set-component-index: 0
122+
- suit-directive-override-parameters:
123+
suit-parameter-uri: '#app.suit'
124+
suit-parameter-image-digest:
125+
suit-digest-algorithm-id: cose-alg-sha-256
126+
suit-digest-bytes:
127+
envelope: sample_app_posix.suit
128+
- suit-directive-fetch:
129+
- suit-send-record-failure
130+
- suit-condition-image-match:
131+
- suit-send-record-success
132+
- suit-send-record-failure
133+
- suit-send-sysinfo-success
134+
- suit-send-sysinfo-failure
135+
- suit-condition-dependency-integrity:
136+
- suit-send-record-success
137+
- suit-send-record-failure
138+
- suit-send-sysinfo-success
139+
- suit-send-sysinfo-failure
140+
- suit-directive-process-dependency:
141+
- suit-send-record-success
142+
- suit-send-record-failure
143+
- suit-send-sysinfo-success
144+
- suit-send-sysinfo-failure
145+
# Manifest copied to I/APP s a result of sequence completion
146+
# Manifest copied to I/ROOT s a result of sequence completion
147+
148+
suit-text:
149+
en:
150+
'["CAND_MFST", 0]':
151+
suit-text-vendor-name: Nordic Semiconductor ASA
152+
suit-text-model-name: test
153+
suit-text-vendor-domain: nordicsemi.com
154+
suit-text-model-info: The test root manifest
155+
suit-text-component-description: Sample root manifest
156+
suit-text-component-version: v1.0.0
157+
158+
###
159+
# All SUIT_severable-members-extensions
160+
###
161+
suit-dependency-resolution:
162+
- suit-directive-set-component-index: 0
163+
- suit-directive-override-parameters:
164+
suit-parameter-uri: '#app.suit'
165+
suit-parameter-image-digest:
166+
suit-digest-algorithm-id: cose-alg-sha-256
167+
suit-digest-bytes:
168+
envelope: sample_app_posix.suit
169+
- suit-directive-fetch:
170+
- suit-send-record-failure
171+
- suit-condition-image-match:
172+
- suit-send-record-success
173+
- suit-send-record-failure
174+
- suit-send-sysinfo-success
175+
- suit-send-sysinfo-failure
176+
- suit-condition-dependency-integrity:
177+
- suit-send-record-success
178+
- suit-send-record-failure
179+
- suit-send-sysinfo-success
180+
- suit-send-sysinfo-failure
181+
- suit-directive-process-dependency:
182+
- suit-send-record-success
183+
- suit-send-record-failure
184+
- suit-send-sysinfo-success
185+
- suit-send-sysinfo-failure
186+
187+
suit-candidate-verification:
188+
- suit-directive-set-component-index: 0
189+
- suit-directive-override-parameters:
190+
suit-parameter-uri: '#app.suit'
191+
suit-parameter-image-digest:
192+
suit-digest-algorithm-id: cose-alg-sha-256
193+
suit-digest-bytes:
194+
envelope: sample_app_posix.suit
195+
- suit-directive-fetch:
196+
- suit-send-record-failure
197+
- suit-condition-image-match:
198+
- suit-send-record-success
199+
- suit-send-record-failure
200+
- suit-send-sysinfo-success
201+
- suit-send-sysinfo-failure
202+
- suit-condition-dependency-integrity:
203+
- suit-send-record-success
204+
- suit-send-record-failure
205+
- suit-send-sysinfo-success
206+
- suit-send-sysinfo-failure
207+
- suit-directive-process-dependency:
208+
- suit-send-record-success
209+
- suit-send-record-failure
210+
- suit-send-sysinfo-success
211+
- suit-send-sysinfo-failure
212+
213+
suit-integrated-dependencies:
214+
'#app.suit': sample_app_severable_posix.suit

0 commit comments

Comments
 (0)