summaryrefslogtreecommitdiff
path: root/tests/vboot_detach_menu_tests.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/vboot_detach_menu_tests.c')
-rw-r--r--tests/vboot_detach_menu_tests.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/tests/vboot_detach_menu_tests.c b/tests/vboot_detach_menu_tests.c
index f0440cfb..d85acbc6 100644
--- a/tests/vboot_detach_menu_tests.c
+++ b/tests/vboot_detach_menu_tests.c
@@ -9,6 +9,7 @@
#include "2misc.h"
#include "2nvstorage.h"
#include "2secdata.h"
+#include "2secdata_struct.h"
#include "host_common.h"
#include "load_kernel_fw.h"
#include "secdata_tpm.h"
@@ -32,6 +33,7 @@ static uint8_t workbuf[VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE]
static struct vb2_context *ctx;
static struct vb2_shared_data *sd;
static struct vb2_gbb_header gbb;
+static struct vb2_secdata_fwmp *fwmp;
static int shutdown_request_calls_left;
static int audio_looping_calls_left;
@@ -61,8 +63,6 @@ static int vbexaltfwmask_called;
/* Reset mock data (for use before each test) */
static void ResetMocks(void)
{
- memset(VbApiKernelGetFwmp(), 0, sizeof(struct RollbackSpaceFwmp));
-
memset(&shared_data, 0, sizeof(shared_data));
VbSharedDataInit(shared, sizeof(shared_data));
shared->flags = VBSD_BOOT_FIRMWARE_VBOOT2;
@@ -76,6 +76,10 @@ static void ResetMocks(void)
sd = vb2_get_sd(ctx);
sd->vbsd = shared;
+ /* CRC will be invalid after here, but nobody's checking */
+ sd->status |= VB2_SD_STATUS_SECDATA_FWMP_INIT;
+ fwmp = (struct vb2_secdata_fwmp *)ctx->secdata_fwmp;
+
memset(&gbb, 0, sizeof(gbb));
/* In recovery we have 50 keyscans per disk scan, this must be high. */
@@ -124,7 +128,8 @@ static void ResetMocksForManualRecovery(void)
}
/* Mock functions */
-uint32_t RollbackKernelLock(int recovery_mode)
+
+uint32_t secdata_kernel_lock(struct vb2_context *c)
{
return TPM_SUCCESS;
}
@@ -252,9 +257,9 @@ vb2_error_t VbExBeep(uint32_t msec, uint32_t frequency)
return VB2_SUCCESS;
}
-vb2_error_t SetVirtualDevMode(int val)
+vb2_error_t vb2_enable_developer_mode(struct vb2_context *c)
{
- virtdev_set = val;
+ virtdev_set = 1;
return virtdev_retval;
}
@@ -665,7 +670,7 @@ static void VbBootDevTest(void)
/* Ctrl+L boots legacy if enabled by FWMP */
ResetMocksForDeveloper();
- VbApiKernelGetFwmp()->flags |= FWMP_DEV_ENABLE_LEGACY;
+ fwmp->flags |= VB2_SECDATA_FWMP_DEV_ENABLE_LEGACY;
mock_keypress[0] = VB_KEY_CTRL('L');
mock_keypress[1] = VB_BUTTON_POWER_SHORT_PRESS;
TEST_EQ(VbBootDeveloperMenu(ctx), vbtlk_retval_fixed,
@@ -755,7 +760,7 @@ static void VbBootDevTest(void)
/* Ctrl+U enabled via FWMP */
ResetMocksForDeveloper();
- VbApiKernelGetFwmp()->flags |= FWMP_DEV_ENABLE_USB;
+ fwmp->flags |= VB2_SECDATA_FWMP_DEV_ENABLE_USB;
mock_keypress[0] = VB_KEY_CTRL('U');
vbtlk_retval[0] = VB2_SUCCESS - VB_DISK_FLAG_REMOVABLE;
TEST_EQ(VbBootDeveloperMenu(ctx), VB2_SUCCESS, "Ctrl+U force USB");
@@ -1148,7 +1153,7 @@ static void VbBootDevTest(void)
/* If dev mode is disabled, goes to TONORM screen repeatedly */
ResetMocksForDeveloper();
- VbApiKernelGetFwmp()->flags |= FWMP_DEV_DISABLE_BOOT;
+ fwmp->flags |= VB2_SECDATA_FWMP_DEV_DISABLE_BOOT;
audio_looping_calls_left = 1; /* Confirm audio doesn't tick down. */
i = 0;
mock_keypress[i++] = VB_KEY_CTRL('D'); /* Just stays on TONORM and flashes */
@@ -1202,7 +1207,7 @@ static void VbBootDevTest(void)
/* Shutdown requested when dev disabled */
ResetMocksForDeveloper();
- VbApiKernelGetFwmp()->flags |= FWMP_DEV_DISABLE_BOOT;
+ fwmp->flags |= VB2_SECDATA_FWMP_DEV_DISABLE_BOOT;
shutdown_request_calls_left = 1;
TEST_EQ(VbBootDeveloperMenu(ctx), VBERROR_SHUTDOWN_REQUESTED,
"Shutdown requested when dev disabled");
@@ -1218,7 +1223,7 @@ static void VbBootDevTest(void)
/* Explicit Power Off when dev disabled */
ResetMocksForDeveloper();
- VbApiKernelGetFwmp()->flags |= FWMP_DEV_DISABLE_BOOT;
+ fwmp->flags |= VB2_SECDATA_FWMP_DEV_DISABLE_BOOT;
i = 0;
mock_keypress[i++] = VB_BUTTON_VOL_DOWN_SHORT_PRESS; // Power Off
mock_keypress[i++] = VB_BUTTON_POWER_SHORT_PRESS;