diff options
-rw-r--r-- | firmware/lib/include/vboot_common.h | 5 | ||||
-rw-r--r-- | firmware/lib/vboot_common.c | 9 | ||||
-rw-r--r-- | firmware/linktest/main.c | 1 | ||||
-rw-r--r-- | tests/vb2_common_tests.c | 2 | ||||
-rw-r--r-- | tests/vboot_common_tests.c | 17 |
5 files changed, 9 insertions, 25 deletions
diff --git a/firmware/lib/include/vboot_common.h b/firmware/lib/include/vboot_common.h index deaa8d92..a3d1851a 100644 --- a/firmware/lib/include/vboot_common.h +++ b/firmware/lib/include/vboot_common.h @@ -47,11 +47,6 @@ enum { }; extern const char *kVbootErrors[VBOOT_ERROR_MAX]; -/** - * Return offset of ptr from base. - */ -uint64_t OffsetOf(const void *base, const void *ptr); - /* * Helper functions to get data pointed to by a public key or signature. */ diff --git a/firmware/lib/vboot_common.c b/firmware/lib/vboot_common.c index fc32917b..ea44588c 100644 --- a/firmware/lib/vboot_common.c +++ b/firmware/lib/vboot_common.c @@ -28,11 +28,6 @@ const char *kVbootErrors[VBOOT_ERROR_MAX] = { "Shared data invalid." }; -uint64_t OffsetOf(const void *base, const void *ptr) -{ - return (uint64_t)(size_t)ptr - (uint64_t)(size_t)base; -} - /* Helper functions to get data pointed to by a public key or signature. */ uint8_t *GetPublicKeyData(VbPublicKey *key) @@ -65,7 +60,7 @@ int VerifyMemberInside(const void *parent, uint64_t parent_size, uint64_t member_data_offset, uint64_t member_data_size) { - uint64_t end = OffsetOf(parent, member); + uint64_t end = vb2_offset_of(parent, member); if (end > parent_size) return 1; @@ -107,7 +102,7 @@ int VerifySignatureInside(const void *parent, uint64_t parent_size, void PublicKeyInit(VbPublicKey *key, uint8_t *key_data, uint64_t key_size) { - key->key_offset = OffsetOf(key, key_data); + key->key_offset = vb2_offset_of(key, key_data); key->key_size = key_size; key->algorithm = VB2_ALG_COUNT; /* Key not present yet */ key->key_version = 0; diff --git a/firmware/linktest/main.c b/firmware/linktest/main.c index 95a5d0fc..6877bfad 100644 --- a/firmware/linktest/main.c +++ b/firmware/linktest/main.c @@ -58,7 +58,6 @@ int main(void) VbVerifyMemoryBootImage(0, 0, 0, 0, 0); /* vboot_common.h */ - OffsetOf(0, 0); GetPublicKeyData(0); GetPublicKeyDataC(0); GetSignatureData(0); diff --git a/tests/vb2_common_tests.c b/tests/vb2_common_tests.c index a9b25b61..3bb24e3b 100644 --- a/tests/vb2_common_tests.c +++ b/tests/vb2_common_tests.c @@ -152,6 +152,8 @@ static void test_helper_functions(void) TEST_EQ((int)vb2_offset_of(p, p), 0, "vb2_offset_of() equal"); TEST_EQ((int)vb2_offset_of(p, p+10), 10, "vb2_offset_of() positive"); + TEST_EQ((int)vb2_offset_of(p, p+0x12345678), 0x12345678, + "vb2_offset_of() large"); } { diff --git a/tests/vboot_common_tests.c b/tests/vboot_common_tests.c index 225d0bbb..04d32611 100644 --- a/tests/vboot_common_tests.c +++ b/tests/vboot_common_tests.c @@ -9,6 +9,7 @@ #include <stdio.h> #include <stdlib.h> +#include "2common.h" #include "host_common.h" #include "test_common.h" #include "utility.h" @@ -55,26 +56,18 @@ static void ArraySizeTest(void) static void VerifyHelperFunctions(void) { { - uint8_t *p = (uint8_t *)VerifyHelperFunctions; - TEST_EQ((int)OffsetOf(p, p), 0, "OffsetOf() equal"); - TEST_EQ((int)OffsetOf(p, p+10), 10, "OffsetOf() positive"); - TEST_EQ((int)OffsetOf(p, p+0x12345678), 0x12345678, - "OffsetOf() large"); - } - - { VbPublicKey k = {sizeof(k), 2, 3, 4}; - TEST_EQ((int)OffsetOf(&k, GetPublicKeyData(&k)), sizeof(k), + TEST_EQ((int)vb2_offset_of(&k, GetPublicKeyData(&k)), sizeof(k), "GetPublicKeyData() adjacent"); - TEST_EQ((int)OffsetOf(&k, GetPublicKeyDataC(&k)), sizeof(k), + TEST_EQ((int)vb2_offset_of(&k, GetPublicKeyDataC(&k)), sizeof(k), "GetPublicKeyDataC() adjacent"); } { VbPublicKey k = {123, 2, 3, 4}; - TEST_EQ((int)OffsetOf(&k, GetPublicKeyData(&k)), 123, + TEST_EQ((int)vb2_offset_of(&k, GetPublicKeyData(&k)), 123, "GetPublicKeyData() spaced"); - TEST_EQ((int)OffsetOf(&k, GetPublicKeyDataC(&k)), 123, + TEST_EQ((int)vb2_offset_of(&k, GetPublicKeyDataC(&k)), 123, "GetPublicKeyDataC() spaced"); } |