]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - crypto/dsa/dsa_sign.c
add checks for the return values of BN_new(), sk_RSA_PRIME_INFO_new_reserve(),
[thirdparty/openssl.git] / crypto / dsa / dsa_sign.c
index 6e87bd16571902d9a2f54f537ef0cdbc8b7498e7..21b0cbd5fbefac89f75303b395761afeba30dcb0 100644 (file)
@@ -65,7 +65,8 @@ DSA_SIG *d2i_DSA_SIG(DSA_SIG **psig, const unsigned char **ppin, long len)
         sig->r = BN_new();
     if (sig->s == NULL)
         sig->s = BN_new();
-    if (ossl_decode_der_dsa_sig(sig->r, sig->s, ppin, (size_t)len) == 0) {
+    if (sig->r == NULL || sig->s == NULL
+        || ossl_decode_der_dsa_sig(sig->r, sig->s, ppin, (size_t)len) == 0) {
         if (psig == NULL || *psig == NULL)
             DSA_SIG_free(sig);
         return NULL;