@@ -138,94 +138,126 @@ namespace ccf::js::extensions
138
138
139
139
JS_CHECK_SET (a.set (" policy" , std::move (policy)));
140
140
141
- auto family_id = jsctx.new_array_buffer_copy (attestation.family_id );
142
- JS_CHECK_EXC (family_id);
143
- JS_CHECK_SET (a.set (" family_id" , std::move (family_id)));
141
+ {
142
+ auto family_id = jsctx.new_array_buffer_copy (attestation.family_id );
143
+ JS_CHECK_EXC (family_id);
144
+ JS_CHECK_SET (a.set (" family_id" , std::move (family_id)));
145
+ }
144
146
145
- auto image_id = jsctx.new_array_buffer_copy (attestation.image_id );
146
- JS_CHECK_EXC (image_id);
147
- JS_CHECK_SET (a.set (" image_id" , std::move (image_id)));
147
+ {
148
+ auto image_id = jsctx.new_array_buffer_copy (attestation.image_id );
149
+ JS_CHECK_EXC (image_id);
150
+ JS_CHECK_SET (a.set (" image_id" , std::move (image_id)));
151
+ }
148
152
149
153
JS_CHECK_SET (a.set_uint32 (" vmpl" , attestation.vmpl ));
150
154
JS_CHECK_SET (a.set_uint32 (
151
155
" signature_algo" , static_cast <uint32_t >(attestation.signature_algo )));
152
156
153
- auto platform_version =
154
- jsctx.wrap (make_js_tcb_version (jsctx, attestation.platform_version ));
155
- JS_CHECK_EXC (platform_version);
156
- JS_CHECK_SET (a.set (" platform_version" , std::move (platform_version)));
157
+ {
158
+ auto platform_version =
159
+ jsctx.wrap (make_js_tcb_version (jsctx, attestation.platform_version ));
160
+ JS_CHECK_EXC (platform_version);
161
+ JS_CHECK_SET (a.set (" platform_version" , std::move (platform_version)));
162
+ }
157
163
158
- auto platform_info = jsctx.new_obj ();
159
- JS_CHECK_EXC (platform_info);
160
- JS_CHECK_SET (
161
- platform_info.set_uint32 (" smt_en" , attestation.platform_info .smt_en ));
162
- JS_CHECK_SET (
163
- platform_info.set_uint32 (" tsme_en" , attestation.platform_info .tsme_en ));
164
- JS_CHECK_SET (a.set (" plaform_info" , std::move (platform_info)));
164
+ {
165
+ auto platform_info = jsctx.new_obj ();
166
+ JS_CHECK_EXC (platform_info);
167
+ JS_CHECK_SET (
168
+ platform_info.set_uint32 (" smt_en" , attestation.platform_info .smt_en ));
169
+ JS_CHECK_SET (
170
+ platform_info.set_uint32 (" tsme_en" , attestation.platform_info .tsme_en ));
171
+ JS_CHECK_SET (a.set (" plaform_info" , std::move (platform_info)));
172
+ }
165
173
166
- auto flags = jsctx.new_obj ();
167
- JS_CHECK_EXC (flags);
168
- JS_CHECK_SET (
169
- flags.set_uint32 (" author_key_en" , attestation.flags .author_key_en ));
170
- JS_CHECK_SET (
171
- flags.set_uint32 (" mask_chip_key" , attestation.flags .mask_chip_key ));
172
- JS_CHECK_SET (
173
- flags.set_uint32 (" signing_key" , attestation.flags .signing_key ));
174
- JS_CHECK_SET (a.set (" flags" , std::move (flags)));
175
-
176
- auto attestation_report_data =
177
- jsctx.new_array_buffer_copy (attestation.report_data );
178
- JS_CHECK_EXC (attestation_report_data);
179
- JS_CHECK_SET (a.set (" report_data" , std::move (attestation_report_data)));
180
-
181
- auto attestation_measurement =
182
- jsctx.new_array_buffer_copy (attestation.measurement );
183
- JS_CHECK_EXC (attestation_measurement);
184
- JS_CHECK_SET (a.set (" measurement" , std::move (attestation_measurement)));
185
-
186
- auto attestation_host_data =
187
- jsctx.new_array_buffer_copy (attestation.host_data );
188
- JS_CHECK_EXC (attestation_host_data);
189
- JS_CHECK_SET (a.set (" host_data" , std::move (attestation_host_data)));
190
-
191
- auto attestation_id_key_digest =
192
- jsctx.new_array_buffer_copy (attestation.id_key_digest );
193
- JS_CHECK_EXC (attestation_id_key_digest);
194
- JS_CHECK_SET (a.set (" id_key_digest" , std::move (attestation_id_key_digest)));
195
-
196
- auto attestation_author_key_digest =
197
- jsctx.new_array_buffer_copy (attestation.author_key_digest );
198
- JS_CHECK_EXC (attestation_author_key_digest);
199
- JS_CHECK_SET (
200
- a.set (" author_key_digest" , std::move (attestation_id_key_digest)));
174
+ {
175
+ auto flags = jsctx.new_obj ();
176
+ JS_CHECK_EXC (flags);
177
+ JS_CHECK_SET (
178
+ flags.set_uint32 (" author_key_en" , attestation.flags .author_key_en ));
179
+ JS_CHECK_SET (
180
+ flags.set_uint32 (" mask_chip_key" , attestation.flags .mask_chip_key ));
181
+ JS_CHECK_SET (
182
+ flags.set_uint32 (" signing_key" , attestation.flags .signing_key ));
183
+ JS_CHECK_SET (a.set (" flags" , std::move (flags)));
184
+ }
201
185
202
- auto attestation_report_id =
203
- jsctx.new_array_buffer_copy (attestation.report_id );
204
- JS_CHECK_EXC (attestation_report_id);
205
- JS_CHECK_SET (a.set (" report_id" , std::move (attestation_id_key_digest)));
186
+ {
187
+ auto attestation_report_data =
188
+ jsctx.new_array_buffer_copy (attestation.report_data );
189
+ JS_CHECK_EXC (attestation_report_data);
190
+ JS_CHECK_SET (a.set (" report_data" , std::move (attestation_report_data)));
191
+ }
206
192
207
- auto attestation_report_id_ma =
208
- jsctx.new_array_buffer_copy (attestation.report_id_ma );
209
- JS_CHECK_EXC (attestation_report_id_ma);
210
- JS_CHECK_SET (a.set (" report_id_ma" , std::move (attestation_report_id_ma)));
193
+ {
194
+ auto attestation_measurement =
195
+ jsctx.new_array_buffer_copy (attestation.measurement );
196
+ JS_CHECK_EXC (attestation_measurement);
197
+ JS_CHECK_SET (a.set (" measurement" , std::move (attestation_measurement)));
198
+ }
211
199
212
- auto reported_tcb =
213
- jsctx.wrap (make_js_tcb_version (jsctx, attestation.reported_tcb ));
214
- JS_CHECK_EXC (reported_tcb);
215
- JS_CHECK_SET (a.set (" reported_tcb" , std::move (reported_tcb)));
200
+ {
201
+ auto attestation_host_data =
202
+ jsctx.new_array_buffer_copy (attestation.host_data );
203
+ JS_CHECK_EXC (attestation_host_data);
204
+ JS_CHECK_SET (a.set (" host_data" , std::move (attestation_host_data)));
205
+ }
206
+
207
+ {
208
+ auto attestation_id_key_digest =
209
+ jsctx.new_array_buffer_copy (attestation.id_key_digest );
210
+ JS_CHECK_EXC (attestation_id_key_digest);
211
+ JS_CHECK_SET (
212
+ a.set (" id_key_digest" , std::move (attestation_id_key_digest)));
213
+ }
214
+
215
+ {
216
+ auto attestation_author_key_digest =
217
+ jsctx.new_array_buffer_copy (attestation.author_key_digest );
218
+ JS_CHECK_EXC (attestation_author_key_digest);
219
+ JS_CHECK_SET (
220
+ a.set (" author_key_digest" , std::move (attestation_author_key_digest)));
221
+ }
222
+
223
+ {
224
+ auto attestation_report_id =
225
+ jsctx.new_array_buffer_copy (attestation.report_id );
226
+ JS_CHECK_EXC (attestation_report_id);
227
+ JS_CHECK_SET (a.set (" report_id" , std::move (attestation_report_id)));
228
+ }
229
+
230
+ {
231
+ auto attestation_report_id_ma =
232
+ jsctx.new_array_buffer_copy (attestation.report_id_ma );
233
+ JS_CHECK_EXC (attestation_report_id_ma);
234
+ JS_CHECK_SET (a.set (" report_id_ma" , std::move (attestation_report_id_ma)));
235
+ }
236
+
237
+ {
238
+ auto reported_tcb =
239
+ jsctx.wrap (make_js_tcb_version (jsctx, attestation.reported_tcb ));
240
+ JS_CHECK_EXC (reported_tcb);
241
+ JS_CHECK_SET (a.set (" reported_tcb" , std::move (reported_tcb)));
242
+ }
216
243
217
244
JS_CHECK_SET (a.set_uint32 (" cpuid_fam_id" , attestation.cpuid_fam_id ));
218
245
JS_CHECK_SET (a.set_uint32 (" cpuid_mod_id" , attestation.cpuid_mod_id ));
219
246
JS_CHECK_SET (a.set_uint32 (" cpuid_step" , attestation.cpuid_step ));
220
247
221
- auto attestation_chip_id = jsctx.new_array_buffer_copy (attestation.chip_id );
222
- JS_CHECK_EXC (attestation_chip_id);
223
- JS_CHECK_SET (a.set (" chip_id" , std::move (attestation_chip_id)));
248
+ {
249
+ auto attestation_chip_id =
250
+ jsctx.new_array_buffer_copy (attestation.chip_id );
251
+ JS_CHECK_EXC (attestation_chip_id);
252
+ JS_CHECK_SET (a.set (" chip_id" , std::move (attestation_chip_id)));
253
+ }
224
254
225
- auto committed_tcb =
226
- jsctx.wrap (make_js_tcb_version (jsctx, attestation.committed_tcb ));
227
- JS_CHECK_EXC (committed_tcb);
228
- JS_CHECK_SET (a.set (" committed_tcb" , std::move (committed_tcb)));
255
+ {
256
+ auto committed_tcb =
257
+ jsctx.wrap (make_js_tcb_version (jsctx, attestation.committed_tcb ));
258
+ JS_CHECK_EXC (committed_tcb);
259
+ JS_CHECK_SET (a.set (" committed_tcb" , std::move (committed_tcb)));
260
+ }
229
261
230
262
JS_CHECK_SET (a.set_uint32 (" current_minor" , attestation.current_minor ));
231
263
JS_CHECK_SET (a.set_uint32 (" current_build" , attestation.current_build ));
@@ -234,21 +266,27 @@ namespace ccf::js::extensions
234
266
JS_CHECK_SET (a.set_uint32 (" committed_minor" , attestation.committed_minor ));
235
267
JS_CHECK_SET (a.set_uint32 (" committed_major" , attestation.committed_major ));
236
268
237
- auto launch_tcb =
238
- jsctx.wrap (make_js_tcb_version (jsctx, attestation.launch_tcb ));
239
- JS_CHECK_EXC (launch_tcb);
240
- JS_CHECK_SET (a.set (" launch_tcb" , std::move (launch_tcb)));
269
+ {
270
+ auto launch_tcb =
271
+ jsctx.wrap (make_js_tcb_version (jsctx, attestation.launch_tcb ));
272
+ JS_CHECK_EXC (launch_tcb);
273
+ JS_CHECK_SET (a.set (" launch_tcb" , std::move (launch_tcb)));
274
+ }
241
275
242
276
auto signature = jsctx.new_obj ();
243
277
JS_CHECK_EXC (signature);
244
278
245
- auto signature_r = jsctx.new_array_buffer_copy (attestation.signature .r );
246
- JS_CHECK_EXC (signature_r);
247
- JS_CHECK_SET (signature.set (" r" , std::move (signature_r)));
279
+ {
280
+ auto signature_r = jsctx.new_array_buffer_copy (attestation.signature .r );
281
+ JS_CHECK_EXC (signature_r);
282
+ JS_CHECK_SET (signature.set (" r" , std::move (signature_r)));
283
+ }
248
284
249
- auto signature_s = jsctx.new_array_buffer_copy (attestation.signature .s );
250
- JS_CHECK_EXC (signature_s);
251
- JS_CHECK_SET (signature.set (" s" , std::move (signature_s)));
285
+ {
286
+ auto signature_s = jsctx.new_array_buffer_copy (attestation.signature .s );
287
+ JS_CHECK_EXC (signature_s);
288
+ JS_CHECK_SET (signature.set (" s" , std::move (signature_s)));
289
+ }
252
290
253
291
JS_CHECK_SET (a.set (" signature" , std::move (signature)));
254
292
JS_CHECK_SET (r.set (" attestation" , std::move (a)));
@@ -258,19 +296,27 @@ namespace ccf::js::extensions
258
296
auto u = jsctx.new_obj ();
259
297
JS_CHECK_EXC (u);
260
298
261
- auto did = jsctx.new_string (parsed_uvm_endorsements.value ().did .c_str ());
262
- JS_CHECK_EXC (did);
263
- JS_CHECK_SET (u.set (" did" , std::move (did)));
299
+ {
300
+ auto did =
301
+ jsctx.new_string (parsed_uvm_endorsements.value ().did .c_str ());
302
+ JS_CHECK_EXC (did);
303
+ JS_CHECK_SET (u.set (" did" , std::move (did)));
304
+ }
264
305
265
- auto feed =
266
- jsctx.new_string (parsed_uvm_endorsements.value ().feed .c_str ());
267
- JS_CHECK_EXC (feed);
268
- JS_CHECK_SET (u.set (" feed" , std::move (feed)));
306
+ {
307
+ auto feed =
308
+ jsctx.new_string (parsed_uvm_endorsements.value ().feed .c_str ());
309
+ JS_CHECK_EXC (feed);
310
+ JS_CHECK_SET (u.set (" feed" , std::move (feed)));
311
+ }
269
312
270
- auto svn = jsctx.new_string (parsed_uvm_endorsements.value ().svn .c_str ());
271
- JS_CHECK_EXC (svn);
272
- JS_CHECK_SET (u.set (" svn" , std::move (svn)));
273
- JS_CHECK_SET (r.set (" uvm_endorsements" , std::move (u)));
313
+ {
314
+ auto svn =
315
+ jsctx.new_string (parsed_uvm_endorsements.value ().svn .c_str ());
316
+ JS_CHECK_EXC (svn);
317
+ JS_CHECK_SET (u.set (" svn" , std::move (svn)));
318
+ JS_CHECK_SET (r.set (" uvm_endorsements" , std::move (u)));
319
+ }
274
320
}
275
321
276
322
return r.take ();
0 commit comments