diff --git a/crypto/dsa/dsa_gen.c b/crypto/dsa/dsa_gen.c index 3efeab84fa4245732378c2597e41aa8199cc145f..e58ad8d70d315eb771b1940514b8073887cf554b 100644 --- a/crypto/dsa/dsa_gen.c +++ b/crypto/dsa/dsa_gen.c @@ -376,6 +376,8 @@ int dsa_builtin_paramgen2(DSA *ret, size_t L, size_t N, } else { p = BN_CTX_get(ctx); q = BN_CTX_get(ctx); + if (q == NULL) + goto err; } if (!BN_lshift(test, BN_value_one(), L - 1))