From a6d317b2f316fa86896ec857afab43ff70aadab0 Mon Sep 17 00:00:00 2001 From: Frank Denis Date: Thu, 6 Feb 2020 00:44:51 +0100 Subject: [PATCH] Don't even define a .mult_base placeholder for sandy2x Avoid two indirections for fixed base multiplication until another implementation possibly exists. --- .../curve25519/sandy2x/curve25519_sandy2x.c | 11 +---------- .../curve25519/scalarmult_curve25519.c | 3 ++- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/src/libsodium/crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c b/src/libsodium/crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c index ab4382c4..0f8f8b13 100644 --- a/src/libsodium/crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c +++ b/src/libsodium/crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c @@ -11,7 +11,6 @@ #include "utils.h" #include "curve25519_sandy2x.h" -#include "../ref10/x25519_ref10.h" #include "../scalarmult_curve25519.h" #include "fe.h" #include "fe51.h" @@ -61,18 +60,10 @@ crypto_scalarmult_curve25519_sandy2x(unsigned char *q, const unsigned char *n, return 0; } -static int -crypto_scalarmult_curve25519_sandy2x_base(unsigned char *q, - const unsigned char *n) -{ - return crypto_scalarmult_curve25519_ref10_implementation. - mult_base(q, n); -} - struct crypto_scalarmult_curve25519_implementation crypto_scalarmult_curve25519_sandy2x_implementation = { SODIUM_C99(.mult = ) crypto_scalarmult_curve25519_sandy2x, - SODIUM_C99(.mult_base = ) crypto_scalarmult_curve25519_sandy2x_base + SODIUM_C99(.mult_base = ) NULL }; #endif diff --git a/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c b/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c index 2d3ffc05..c55e45e2 100644 --- a/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c +++ b/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c @@ -30,7 +30,8 @@ crypto_scalarmult_curve25519(unsigned char *q, const unsigned char *n, int crypto_scalarmult_curve25519_base(unsigned char *q, const unsigned char *n) { - return implementation->mult_base(q, n); + return crypto_scalarmult_curve25519_ref10_implementation + .mult_base(q, n); } size_t