summaryrefslogtreecommitdiff
path: root/tests/verify_kernel.c
diff options
context:
space:
mode:
authorJoel Kitching <kitching@google.com>2019-10-07 15:50:01 +0800
committerCommit Bot <commit-bot@chromium.org>2019-12-17 11:52:45 +0000
commit53332109acd90d34c82e0450b1329096b942523e (patch)
tree3f9bcf681e1081a3a09c54fa36fc36980513b8e1 /tests/verify_kernel.c
parent1d9945764bb9e159680ef4b3a15c9bcd23fad8fe (diff)
downloadvboot-53332109acd90d34c82e0450b1329096b942523e.tar.gz
vboot: remove some vboot1 SharedData-related functions
Remove VbSharedDataInit, VbSharedDataReserve, VbSharedDataSetKernelKey, along with their corresponding tests. In tests/verify_kernel and utility/load_kernel_test, just copy the kernel subkey manually for now, until we update LoadKernel to retrieve the key from vboot2 workbuf instead. BUG=b:124141368, chromium:968464 TEST=make clean && make runtests BRANCH=none Change-Id: I7055be10f0d7a38502fd8108f0bc93c5b78f06c9 Signed-off-by: Joel Kitching <kitching@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/1844598 Reviewed-by: Joel Kitching <kitching@chromium.org> Commit-Queue: Joel Kitching <kitching@chromium.org> Tested-by: Joel Kitching <kitching@chromium.org>
Diffstat (limited to 'tests/verify_kernel.c')
-rw-r--r--tests/verify_kernel.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/tests/verify_kernel.c b/tests/verify_kernel.c
index 051e629d..ddb1fe30 100644
--- a/tests/verify_kernel.c
+++ b/tests/verify_kernel.c
@@ -26,7 +26,8 @@ static struct vb2_shared_data *sd;
static uint8_t *diskbuf;
-static uint8_t shared_data[VB_SHARED_DATA_MIN_SIZE];
+static uint8_t shared_data[VB_SHARED_DATA_MIN_SIZE]
+ __attribute__((aligned(VB2_WORKBUF_ALIGN)));
static VbSharedDataHeader *shared = (VbSharedDataHeader *)shared_data;
static LoadKernelParams params;
@@ -91,11 +92,6 @@ int main(int argc, char *argv[])
return 1;
}
- /* Set up shared data blob */
- VbSharedDataInit(shared, sizeof(shared_data));
- VbSharedDataSetKernelKey(shared, kernkey);
- /* TODO: optional TPM current kernel version */
-
/* Set up params */
params.disk_handle = (VbExDiskHandle_t)1;
params.bytes_per_lba = 512;
@@ -116,9 +112,21 @@ int main(int argc, char *argv[])
fprintf(stderr, "Can't initialize workbuf\n");
return 1;
}
+ memset(&shared_data, 0, sizeof(shared_data));
sd = vb2_get_sd(ctx);
sd->vbsd = shared;
+ /* Copy kernel subkey to VBSD */
+ struct vb2_packed_key *dst = (struct vb2_packed_key *)
+ (shared_data + vb2_wb_round_up(sizeof(VbSharedDataHeader)));
+ shared->kernel_subkey.key_offset =
+ (uintptr_t)dst - (uintptr_t)&shared->kernel_subkey;
+ shared->kernel_subkey.key_size = kernkey->key_size;
+ shared->kernel_subkey.algorithm = kernkey->algorithm;
+ shared->kernel_subkey.key_version = kernkey->key_version;
+ memcpy(vb2_packed_key_data_mutable(dst), vb2_packed_key_data(kernkey),
+ kernkey->key_size);
+
/*
* LoadKernel() cares only about VBNV_DEV_BOOT_SIGNED_ONLY, and only in
* dev mode. So just use defaults for nv storage.