diff options
author | Fernando Lugo <flugo@google.com> | 2018-04-09 20:08:30 -0700 |
---|---|---|
committer | Fernando Lugo <flugo@google.com> | 2018-04-11 18:06:14 +0000 |
commit | 5f2f70aee423a44209a7b0e274e09647b29a4e37 (patch) | |
tree | 5f1ed777a4de3c0adf0e8ecc29594696f0d83a07 /src/avb_tests.cc | |
parent | a9a148d33ef31bd45047907feb3227b92002162b (diff) | |
download | system-test-harness-5f2f70aee423a44209a7b0e274e09647b29a4e37.tar.gz |
avb_tests: fix OwnerLockTest
Changing OWNER lock should fail if the BOOT lock is set. Modify
OwnerLockTest accordingly.
Change-Id: I375aa612e48f0f1f029672303b634eba7245312e
Signed-off-by: Fernando Lugo <flugo@google.com>
Diffstat (limited to 'src/avb_tests.cc')
-rw-r--r-- | src/avb_tests.cc | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/avb_tests.cc b/src/avb_tests.cc index b72a3cc..3cc22f5 100644 --- a/src/avb_tests.cc +++ b/src/avb_tests.cc @@ -556,19 +556,7 @@ TEST_F(AvbTest, OwnerLockTest) owner_key[i + 1] = (i >> 8) & 0xFF; } - // This should fail when boot lock is not set - code = SetOwnerLock(0x21, owner_key, sizeof(owner_key)); - ASSERT_EQ(code, APP_ERROR_AVB_DENIED); - - // Set the boot lock - SetBootloader(); - code = SetBootLock(0x43); - ASSERT_NO_ERROR(code, ""); - - GetState(client.get(), NULL, NULL, locks); - ASSERT_EQ(locks[BOOT], 0x43); - - // Try the owner lock again + // This should pass when BOOT lock is not set code = SetOwnerLock(0x65, owner_key, sizeof(owner_key)); ASSERT_NO_ERROR(code, ""); @@ -600,6 +588,18 @@ TEST_F(AvbTest, OwnerLockTest) GetState(client.get(), NULL, NULL, locks); ASSERT_EQ(locks[OWNER], 0x00); + + // Set the boot lock + SetBootloader(); + code = SetBootLock(0x43); + ASSERT_NO_ERROR(code, ""); + + GetState(client.get(), NULL, NULL, locks); + ASSERT_EQ(locks[BOOT], 0x43); + + // Test setting the lock while BOOT is locked fails + code = SetOwnerLock(0x21, owner_key, sizeof(owner_key)); + ASSERT_EQ(code, APP_ERROR_AVB_DENIED); } TEST_F(AvbTest, ProductionMode) @@ -614,10 +614,10 @@ TEST_F(AvbTest, ProductionMode) // Set some lock values to make sure production doesn't affect them SetBootloader(); - code = SetBootLock(0x11); + code = SetOwnerLock(0x11, NULL, 0); ASSERT_NO_ERROR(code, ""); - code = SetOwnerLock(0x22, NULL, 0); + code = SetBootLock(0x22); ASSERT_NO_ERROR(code, ""); code = SetCarrierLock(0x33, DEVICE_DATA, sizeof(DEVICE_DATA)); @@ -632,8 +632,8 @@ TEST_F(AvbTest, ProductionMode) GetState(client.get(), NULL, &production, locks); ASSERT_TRUE(production); - ASSERT_EQ(locks[BOOT], 0x11); - ASSERT_EQ(locks[OWNER], 0x22); + ASSERT_EQ(locks[OWNER], 0x11); + ASSERT_EQ(locks[BOOT], 0x22); ASSERT_EQ(locks[CARRIER], 0x33); ASSERT_EQ(locks[DEVICE], 0x44); |