summaryrefslogtreecommitdiff
path: root/Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c
diff options
context:
space:
mode:
authorMatthew Garrett <mjg@redhat.com>2012-07-02 12:33:42 -0400
committerMatthew Garrett <mjg@redhat.com>2012-07-02 12:33:42 -0400
commite21cbf4d9bafebb2560d1acac1e47e879c7f7493 (patch)
tree308e31c8b7338e11843ac324ce20b89d765c3f45 /Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c
parent5b1bf5583c3b6b523446b2b938f5f8355f488052 (diff)
downloadefi-boot-shim-e21cbf4d9bafebb2560d1acac1e47e879c7f7493.tar.gz
efi-boot-shim-e21cbf4d9bafebb2560d1acac1e47e879c7f7493.zip
Update OpenSSL
Diffstat (limited to 'Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c')
-rwxr-xr-xCryptlib/OpenSSL/crypto/dsa/dsa_ossl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c b/Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c
index 412cf1d8..17277608 100755
--- a/Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c
+++ b/Cryptlib/OpenSSL/crypto/dsa/dsa_ossl.c
@@ -178,7 +178,8 @@ static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa)
if (!BN_mod_mul(&xr,dsa->priv_key,r,dsa->q,ctx)) goto err;/* s = xr */
if (!BN_add(s, &xr, &m)) goto err; /* s = m + xr */
if (BN_cmp(s,dsa->q) > 0)
- BN_sub(s,s,dsa->q);
+ if (!BN_sub(s,s,dsa->q))
+ goto err;
if (!BN_mod_mul(s,s,kinv,dsa->q,ctx)) goto err;
ret=DSA_SIG_new();