summaryrefslogtreecommitdiff
path: root/firmware/2lib/include/2return_codes.h
diff options
context:
space:
mode:
authorJoel Kitching <kitching@google.com>2021-02-12 11:13:33 +0800
committerCommit Bot <commit-bot@chromium.org>2021-03-30 07:18:26 +0000
commit21655916f255ed92ad27110f0a65d392f18f6280 (patch)
tree83ba6a9cf18687378a1777f1fa65fc7c6dc09471 /firmware/2lib/include/2return_codes.h
parent230d9688b9498518774096109a5c31639f5f6cc0 (diff)
downloadvboot-21655916f255ed92ad27110f0a65d392f18f6280.tar.gz
vboot/vboot_kernel: return value from failed functions
Instead of just checking for failure/success on functions returning vb2_error_t and mapping to a completely different return value, pass that value directly back to the caller. Also, create VB2_ERROR_KEYBLOCK_HASH_INVALID_IN_DEV_MODE to replace uses of VB2_ERROR_KEYBLOCK_SIG_INVALID when keyblock hash is invalid (dev mode, using self-signed kernels). This CL is part of a series to merge vboot1 and vboot2.0 kernel verification code; see b/181739551. BUG=b:181739551 TEST=make clean && make runtests BRANCH=none Signed-off-by: Joel Kitching <kitching@google.com> Change-Id: Iefc00ccee6b6d29fb94e4acd652c033321f2d8af Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/2772138 Reviewed-by: Joel Kitching <kitching@chromium.org> Tested-by: Joel Kitching <kitching@chromium.org> Commit-Queue: Joel Kitching <kitching@chromium.org>
Diffstat (limited to 'firmware/2lib/include/2return_codes.h')
-rw-r--r--firmware/2lib/include/2return_codes.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/firmware/2lib/include/2return_codes.h b/firmware/2lib/include/2return_codes.h
index c795a342..44d0c28f 100644
--- a/firmware/2lib/include/2return_codes.h
+++ b/firmware/2lib/include/2return_codes.h
@@ -398,6 +398,9 @@ enum vb2_return_code {
/* No signature matching key ID */
VB2_ERROR_KEYBLOCK_SIG_ID,
+ /* Invalid keyblock hash in dev mode (self-signed kernel) */
+ VB2_ERROR_KEYBLOCK_HASH_INVALID_IN_DEV_MODE,
+
/**********************************************************************
* Preamble verification errors (all in vb2_verify_preamble())
*/
@@ -546,12 +549,14 @@ enum vb2_return_code {
/*
* Got a self-signed kernel in vb2_verify_vblock(), but need an
- * officially signed one.
+ * officially signed one; deprecated and replaced with
+ * VB2_ERROR_KERNEL_KEYBLOCK_*.
*/
- VB2_ERROR_VBLOCK_SELF_SIGNED,
+ VB2_ERROR_DEPRECATED_VBLOCK_SELF_SIGNED,
- /* Invalid keyblock hash in vb2_verify_vblock() */
- VB2_ERROR_VBLOCK_KEYBLOCK_HASH,
+ /* Invalid keyblock hash in vb2_verify_vblock();
+ * deprecated and replaced with VB2_ERROR_KERNEL_KEYBLOCK_* */
+ VB2_ERROR_DEPRECATED_VBLOCK_KEYBLOCK_HASH,
/* Invalid keyblock in vb2_verify_vblock();
* deprecated and replaced with VB2_ERROR_KERNEL_KEYBLOCK_* */