summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornagendra modadugu <ngm@google.com>2016-05-03 06:30:28 -0700
committerchrome-bot <chrome-bot@chromium.org>2016-05-03 15:40:43 -0700
commit97ba68760539c4e678ef588adb8c75621673c88f (patch)
tree6eeffdd47fedac32ae742380365249d035518789
parent427b8f9cd9b7ef23c1562ca5ac0e4706b53f1c7e (diff)
downloadchrome-ec-97ba68760539c4e678ef588adb8c75621673c88f.tar.gz
CR50: fix issue in ecc parameter endian conversion
Only convert parameters that aren't NULL. BRANCH=none BUG=chrome-os-partner:43025,chrome-os-partner:47524 TEST=tests in test/tpm_test/tpmtest.py pass & CPCTPM_TC2_2_20_04_05 Change-Id: I7d8133a0068ba50dc47ead7b4ce002d96d868dbe Signed-off-by: nagendra modadugu <ngm@google.com> Reviewed-on: https://chromium-review.googlesource.com/341846 Commit-Ready: Nagendra Modadugu <ngm@google.com> Tested-by: Nagendra Modadugu <ngm@google.com> Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
-rw-r--r--board/cr50/tpm2/ecc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/board/cr50/tpm2/ecc.c b/board/cr50/tpm2/ecc.c
index b573284608..bd86817917 100644
--- a/board/cr50/tpm2/ecc.c
+++ b/board/cr50/tpm2/ecc.c
@@ -82,13 +82,15 @@ CRYPT_RESULT _cpri__EccPointMultiply(
if (n2 != NULL && !check_p256_param(n2))
return CRYPT_PARAMETER;
- reverse_tpm2b(&n1->b);
-
if (n1 != NULL) {
+ reverse_tpm2b(&n1->b);
+
result = DCRYPTO_p256_base_point_mul(
(p256_int *) out->x.b.buffer,
(p256_int *) out->y.b.buffer,
(p256_int *) n1->b.buffer);
+
+ reverse_tpm2b(&n1->b);
} else {
reverse_tpm2b(&n2->b);
reverse_tpm2b(&in->x.b);
@@ -106,8 +108,6 @@ CRYPT_RESULT _cpri__EccPointMultiply(
reverse_tpm2b(&in->y.b);
}
- reverse_tpm2b(&n1->b);
-
if (result) {
out->x.b.size = sizeof(p256_int);
out->y.b.size = sizeof(p256_int);