summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/2lib/include/2return_codes.h3
-rw-r--r--firmware/lib21/packed_key.c11
-rw-r--r--tests/vb2_common2_tests.c7
3 files changed, 6 insertions, 15 deletions
diff --git a/firmware/2lib/include/2return_codes.h b/firmware/2lib/include/2return_codes.h
index 3d1c611a..f41d784e 100644
--- a/firmware/2lib/include/2return_codes.h
+++ b/firmware/2lib/include/2return_codes.h
@@ -226,6 +226,9 @@ enum vb2_return_code {
/* Key algorithm doesn't match signature algorithm */
VB2_ERROR_VDATA_ALGORITHM_MISMATCH,
+ /* Bad magic number in vb2_unpack_key2() */
+ VB2_ERROR_UNPACK_KEY_MAGIC,
+
/**********************************************************************
* Keyblock verification errors (all in vb2_verify_keyblock())
*/
diff --git a/firmware/lib21/packed_key.c b/firmware/lib21/packed_key.c
index 4019213b..d872d446 100644
--- a/firmware/lib21/packed_key.c
+++ b/firmware/lib21/packed_key.c
@@ -51,16 +51,9 @@ int vb2_unpack_key2(struct vb2_public_key *key,
uint32_t min_offset = 0;
int rv;
- /*
- * Check magic number.
- *
- * If it doesn't match, pass through to the old packed key format.
- *
- * TODO: remove passthru when signing scripts have switched over to
- * use the new format.
- */
+ /* Check magic number */
if (pkey->c.magic != VB2_MAGIC_PACKED_KEY2)
- return vb2_unpack_key(key, buf, size);
+ return VB2_ERROR_UNPACK_KEY_MAGIC;
rv = vb2_verify_common_header(buf, size);
if (rv)
diff --git a/tests/vb2_common2_tests.c b/tests/vb2_common2_tests.c
index 519d7f93..88dbf23e 100644
--- a/tests/vb2_common2_tests.c
+++ b/tests/vb2_common2_tests.c
@@ -87,11 +87,6 @@ static void test_unpack_key2(const struct vb2_packed_key *key1,
/* Make a copy of the key for testing */
key2 = (struct vb2_packed_key2 *)malloc(size);
- /* Should be able to handle a vboot1-style key binary as well */
- TEST_SUCC(vb2_unpack_key2(&pubk, (uint8_t *)key1,
- key1->key_offset + key1->key_size),
- "vb2_unpack_key2() passthru");
-
memcpy(key2, key, size);
TEST_SUCC(vb2_unpack_key2(&pubk, (uint8_t *)key2, size),
"vb2_unpack_key2() ok");
@@ -117,7 +112,7 @@ static void test_unpack_key2(const struct vb2_packed_key *key1,
memcpy(key2, key, size);
key2->c.magic++;
TEST_EQ(vb2_unpack_key2(&pubk, (uint8_t *)key2, size),
- VB2_ERROR_INSIDE_DATA_OUTSIDE,
+ VB2_ERROR_UNPACK_KEY_MAGIC,
"vb2_unpack_key2() bad magic");
memcpy(key2, key, size);