diff options
author | Julius Werner <jwerner@chromium.org> | 2020-01-17 18:15:41 -0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-01-24 02:23:55 +0000 |
commit | c42385b0f740d882aec5b091745fbfd6d8b99055 (patch) | |
tree | 15305c39cb029393c1ad7a0a77150833faf48f02 | |
parent | 2efe82cbadaea5c5583da6ff775400171e99387b (diff) | |
download | vboot-c42385b0f740d882aec5b091745fbfd6d8b99055.tar.gz |
vb2_sha_api_tests: Silence UBSAN warning for zero length array access
Looks like UBSAN doesn't like zero-length arrays. We use those all the
time in firmware, but I guess that's the reason we don't even try to run
UBSAN on the real firmware repos. For this particular case in vboot's
tests, it's easy enough to work around.
BRANCH=None
BUG=chromium:1043405
TEST=make runtests
Change-Id: Ia799fdc57ee17dc46b55920dd1d2601adf98d3f7
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/2008766
Reviewed-by: Joel Kitching <kitching@chromium.org>
-rw-r--r-- | tests/vb2_sha_api_tests.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tests/vb2_sha_api_tests.c b/tests/vb2_sha_api_tests.c index 21e32684..6a23dcee 100644 --- a/tests/vb2_sha_api_tests.c +++ b/tests/vb2_sha_api_tests.c @@ -99,7 +99,7 @@ static void vb2_hash_verify_tests(void) "hash_verify wrong algo"); memcpy(mock_hash.bytes.sha1, mock_sha1, sizeof(mock_sha1)); - mock_hash.bytes.raw[5] = 0xfe; + mock_hash.bytes.sha1[5] = 0xfe; mock_hash.algo = VB2_HASH_SHA1; TEST_EQ(vb2_hash_verify(mock_buffer, sizeof(mock_buffer), &mock_hash), VB2_ERROR_SHA_MISMATCH, @@ -108,6 +108,9 @@ static void vb2_hash_verify_tests(void) int main(int argc, char *argv[]) { + TEST_EQ(sizeof(mock_hash.bytes), VB2_SHA512_DIGEST_SIZE, + "tests run with all SHA algorithms enabled"); + vb2_hash_calculate_tests(); vb2_hash_verify_tests(); |