mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 23:12:32 +00:00
8ad9a72cbe
So they're tidy and apply cleanly. Signed-off-by: Petr Štetiar <ynezz@true.cz>
51 lines
1.2 KiB
Diff
51 lines
1.2 KiB
Diff
Since commit 6467de5a8840 ("Randomize z ordinates in scalar
|
|
mult when timing resistant") wolfssl requires a RNG for an EC
|
|
key when the hardened built option is selected.
|
|
|
|
wc_ecc_set_rng is only available when built hardened, so there
|
|
is no safe way to install the RNG to the key regardless whether
|
|
or not wolfssl is compiled hardened.
|
|
|
|
Always export wc_ecc_set_rng so tools such as hostapd can install
|
|
RNG regardless of the built settings for wolfssl.
|
|
|
|
--- a/wolfcrypt/src/ecc.c
|
|
+++ b/wolfcrypt/src/ecc.c
|
|
@@ -12505,21 +12505,21 @@ void wc_ecc_fp_free(void)
|
|
|
|
#endif /* FP_ECC */
|
|
|
|
-#ifdef ECC_TIMING_RESISTANT
|
|
int wc_ecc_set_rng(ecc_key* key, WC_RNG* rng)
|
|
{
|
|
int err = 0;
|
|
|
|
+#ifdef ECC_TIMING_RESISTANT
|
|
if (key == NULL) {
|
|
err = BAD_FUNC_ARG;
|
|
}
|
|
else {
|
|
key->rng = rng;
|
|
}
|
|
+#endif
|
|
|
|
return err;
|
|
}
|
|
-#endif
|
|
|
|
#ifdef HAVE_ECC_ENCRYPT
|
|
|
|
--- a/wolfssl/wolfcrypt/ecc.h
|
|
+++ b/wolfssl/wolfcrypt/ecc.h
|
|
@@ -656,10 +656,8 @@ WOLFSSL_ABI WOLFSSL_API
|
|
void wc_ecc_fp_free(void);
|
|
WOLFSSL_LOCAL
|
|
void wc_ecc_fp_init(void);
|
|
-#ifdef ECC_TIMING_RESISTANT
|
|
WOLFSSL_API
|
|
int wc_ecc_set_rng(ecc_key* key, WC_RNG* rng);
|
|
-#endif
|
|
|
|
WOLFSSL_API
|
|
int wc_ecc_set_curve(ecc_key* key, int keysize, int curve_id);
|