| Index: tests/vboot_common2_tests.c
|
| diff --git a/tests/vboot_common2_tests.c b/tests/vboot_common2_tests.c
|
| index f5815741ffb87db41d5aacd9fcbd90b53047d005..d03b60e38587e6ec3ee840dad8099e7fadac82ca 100644
|
| --- a/tests/vboot_common2_tests.c
|
| +++ b/tests/vboot_common2_tests.c
|
| @@ -45,23 +45,29 @@ static void VerifyDataTest(const VbPublicKey* public_key,
|
| const VbPrivateKey* private_key) {
|
|
|
| const uint8_t test_data[] = "This is some test data to sign.";
|
| + const uint64_t test_size = sizeof(test_data);
|
| VbSignature* sig;
|
| RSAPublicKey* rsa;
|
|
|
| - sig = CalculateSignature(test_data, sizeof(test_data), private_key);
|
| + sig = CalculateSignature(test_data, test_size, private_key);
|
| rsa = PublicKeyToRSA(public_key);
|
| TEST_NEQ(sig && rsa, 0, "VerifyData() prerequisites");
|
| if (!sig || !rsa)
|
| return;
|
|
|
| - TEST_EQ(VerifyData(test_data, sig, rsa), 0, "VerifyData() ok");
|
| + TEST_EQ(VerifyData(test_data, test_size, sig, rsa), 0, "VerifyData() ok");
|
|
|
| sig->sig_size -= 16;
|
| - TEST_EQ(VerifyData(test_data, sig, rsa), 1, "VerifyData() wrong sig size");
|
| + TEST_EQ(VerifyData(test_data, test_size, sig, rsa), 1,
|
| + "VerifyData() wrong sig size");
|
| sig->sig_size += 16;
|
|
|
| + TEST_EQ(VerifyData(test_data, test_size - 1, sig, rsa), 1,
|
| + "VerifyData() input buffer too small");
|
| +
|
| GetSignatureData(sig)[0] ^= 0x5A;
|
| - TEST_EQ(VerifyData(test_data, sig, rsa), 1, "VerifyData() wrong sig");
|
| + TEST_EQ(VerifyData(test_data, test_size, sig, rsa), 1,
|
| + "VerifyData() wrong sig");
|
|
|
| RSAPublicKeyFree(rsa);
|
| Free(sig);
|
| @@ -118,61 +124,61 @@ static void VerifyKernelPreambleTest(const VbPublicKey* public_key,
|
| rsa = PublicKeyToRSA(public_key);
|
| hdr = CreateKernelPreamble(0x1234, 0x100000, 0x300000, 0x4000, body_sig,
|
| 0, private_key);
|
| - TEST_NEQ(hdr && rsa, 0, "VerifyKernelPreamble2() prerequisites");
|
| + TEST_NEQ(hdr && rsa, 0, "VerifyKernelPreamble() prerequisites");
|
| if (!hdr)
|
| return;
|
| hsize = (unsigned) hdr->preamble_size;
|
| h = (VbKernelPreambleHeader*)Malloc(hsize + 16384);
|
|
|
| - TEST_EQ(VerifyKernelPreamble2(hdr, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() ok using key");
|
| - TEST_NEQ(VerifyKernelPreamble2(hdr, hsize - 1, rsa), 0,
|
| - "VerifyKernelPreamble2() size--");
|
| - TEST_EQ(VerifyKernelPreamble2(hdr, hsize + 1, rsa), 0,
|
| - "VerifyKernelPreamble2() size++");
|
| + TEST_EQ(VerifyKernelPreamble(hdr, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() ok using key");
|
| + TEST_NEQ(VerifyKernelPreamble(hdr, hsize - 1, rsa), 0,
|
| + "VerifyKernelPreamble() size--");
|
| + TEST_EQ(VerifyKernelPreamble(hdr, hsize + 1, rsa), 0,
|
| + "VerifyKernelPreamble() size++");
|
|
|
| /* Care about major version but not minor */
|
| Memcpy(h, hdr, hsize);
|
| h->header_version_major++;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() major++");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() major++");
|
|
|
| Memcpy(h, hdr, hsize);
|
| h->header_version_major--;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() major--");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() major--");
|
|
|
| Memcpy(h, hdr, hsize);
|
| h->header_version_minor++;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_EQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() minor++");
|
| + TEST_EQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() minor++");
|
|
|
| Memcpy(h, hdr, hsize);
|
| h->header_version_minor--;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_EQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() minor--");
|
| + TEST_EQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() minor--");
|
|
|
| /* Check signature */
|
| Memcpy(h, hdr, hsize);
|
| h->preamble_signature.sig_offset = hsize;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() sig off end");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() sig off end");
|
|
|
| Memcpy(h, hdr, hsize);
|
| h->preamble_signature.sig_size--;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() sig too small");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() sig too small");
|
|
|
| Memcpy(h, hdr, hsize);
|
| GetSignatureData(&h->body_signature)[0] ^= 0x34;
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() sig mismatch");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() sig mismatch");
|
|
|
| /* Check that we signed header and body sig */
|
| Memcpy(h, hdr, hsize);
|
| @@ -180,14 +186,14 @@ static void VerifyKernelPreambleTest(const VbPublicKey* public_key,
|
| h->body_signature.sig_offset = 0;
|
| h->body_signature.sig_size = 0;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() didn't sign header");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() didn't sign header");
|
|
|
| Memcpy(h, hdr, hsize);
|
| h->body_signature.sig_offset = hsize;
|
| ReSignKernelPreamble(h, private_key);
|
| - TEST_NEQ(VerifyKernelPreamble2(h, hsize, rsa), 0,
|
| - "VerifyKernelPreamble2() body sig off end");
|
| + TEST_NEQ(VerifyKernelPreamble(h, hsize, rsa), 0,
|
| + "VerifyKernelPreamble() body sig off end");
|
|
|
| /* TODO: verify parser can support a bigger header. */
|
|
|
|
|