]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/blob
3e93fe4e22c94503df6f9cccbc39088d36a6e797
[thirdparty/openembedded/openembedded-core-contrib.git] /
1 openssl: avoid NULL pointer dereference in dh_pub_encode()/dsa_pub_encode()
2
3 We should avoid accessing the pointer if ASN1_STRING_new()
4 allocates memory failed.
5
6 Upstream-Status: Submitted
7 http://www.mail-archive.com/openssl-dev@openssl.org/msg32859.html
8
9 Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com>
10 ---
11 --- a/crypto/dh/dh_ameth.c
12 +++ b/crypto/dh/dh_ameth.c
13 @@ -139,6 +139,12 @@
14 dh=pkey->pkey.dh;
15
16 str = ASN1_STRING_new();
17 + if (!str)
18 + {
19 + DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
20 + goto err;
21 + }
22 +
23 str->length = i2d_DHparams(dh, &str->data);
24 if (str->length <= 0)
25 {
26 --- a/crypto/dsa/dsa_ameth.c
27 +++ b/crypto/dsa/dsa_ameth.c
28 @@ -148,6 +148,11 @@
29 {
30 ASN1_STRING *str;
31 str = ASN1_STRING_new();
32 + if (!str)
33 + {
34 + DSAerr(DSA_F_DSA_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
35 + goto err;
36 + }
37 str->length = i2d_DSAparams(dsa, &str->data);
38 if (str->length <= 0)
39 {