Skip to content

Commit 08a716d

Browse files
committed
imgtool: fix --vector-to-sign usage
`--vector-to-sign` only exports the image payload, or digest, to be signed externally; it doesn't require any keys to be provided. This commit moves the code outside a key required block, after the payload and digest were already calculated from "image + headers + protected TLVs". Signed-off-by: Fabio Utzig <[email protected]>
1 parent e009e19 commit 08a716d

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

scripts/imgtool/image.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -434,22 +434,22 @@ def create(self, key, public_key_format, enckey, dependencies=None,
434434

435435
tlv.add('SHA256', digest)
436436

437+
if vector_to_sign == 'payload':
438+
# Stop amending data to the image
439+
# Just keep data vector which is expected to be signed
440+
print(os.path.basename(__file__) + ': export payload')
441+
return
442+
elif vector_to_sign == 'digest':
443+
self.payload = digest
444+
print(os.path.basename(__file__) + ': export digest')
445+
return
446+
437447
if key is not None or fixed_sig is not None:
438448
if public_key_format == 'hash':
439449
tlv.add('KEYHASH', pubbytes)
440450
else:
441451
tlv.add('PUBKEY', pub)
442452

443-
if vector_to_sign == 'payload':
444-
# Stop amending data to the image
445-
# Just keep data vector which is expected to be sigend
446-
print(os.path.basename(__file__) + ': export payload')
447-
return
448-
elif vector_to_sign == 'digest':
449-
self.payload = digest
450-
print(os.path.basename(__file__) + ': export digest')
451-
return
452-
453453
if key is not None and fixed_sig is None:
454454
# `sign` expects the full image payload (sha256 done internally),
455455
# while `sign_digest` expects only the digest of the payload

0 commit comments

Comments
 (0)