diff options
author | jkim <jkim@FreeBSD.org> | 2015-01-09 00:58:20 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2015-01-09 00:58:20 +0000 |
commit | 27e2f26e1531b869ff531fab5ac3ef06aae4d4f4 (patch) | |
tree | 11138272980644b3ccdbfe7c0ebead1536be5efb /crypto/openssl/crypto/ec/ec_mult.c | |
parent | 3e6f1de34088867465b6a1a87fb10c25fc811e50 (diff) | |
download | FreeBSD-src-27e2f26e1531b869ff531fab5ac3ef06aae4d4f4.zip FreeBSD-src-27e2f26e1531b869ff531fab5ac3ef06aae4d4f4.tar.gz |
MFC: r276861, r276863
Merge OpenSSL 1.0.1k.
Diffstat (limited to 'crypto/openssl/crypto/ec/ec_mult.c')
-rw-r--r-- | crypto/openssl/crypto/ec/ec_mult.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/crypto/openssl/crypto/ec/ec_mult.c b/crypto/openssl/crypto/ec/ec_mult.c index 19f2167..e81200b 100644 --- a/crypto/openssl/crypto/ec/ec_mult.c +++ b/crypto/openssl/crypto/ec/ec_mult.c @@ -445,15 +445,16 @@ int ec_wNAF_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, wNAF_len = OPENSSL_malloc(totalnum * sizeof wNAF_len[0]); wNAF = OPENSSL_malloc((totalnum + 1) * sizeof wNAF[0]); /* includes space for pivot */ val_sub = OPENSSL_malloc(totalnum * sizeof val_sub[0]); - + + /* Ensure wNAF is initialised in case we end up going to err */ + if (wNAF) wNAF[0] = NULL; /* preliminary pivot */ + if (!wsize || !wNAF_len || !wNAF || !val_sub) { ECerr(EC_F_EC_WNAF_MUL, ERR_R_MALLOC_FAILURE); goto err; } - wNAF[0] = NULL; /* preliminary pivot */ - /* num_val will be the total number of temporarily precomputed points */ num_val = 0; |