diff options
| author | jsing <> | 2018-05-13 17:31:06 +0000 |
|---|---|---|
| committer | jsing <> | 2018-05-13 17:31:06 +0000 |
| commit | 7708822eabecc90c22b24a7eac609134b4831ca9 (patch) | |
| tree | 72469c2b539b0fcf477285fdb9fc159f07b44505 /src/lib/libssl/ssl_clnt.c | |
| parent | 890dea926dfa56013e185fe6550bcdbef1a37256 (diff) | |
| download | openbsd-7708822eabecc90c22b24a7eac609134b4831ca9.tar.gz openbsd-7708822eabecc90c22b24a7eac609134b4831ca9.tar.bz2 openbsd-7708822eabecc90c22b24a7eac609134b4831ca9.zip | |
Fix a malloc() NULL check in ssl3_send_client_kex_ecdhe_ecp(), by adding
the missing goto. While here also remove a set of unnecessary parentheses.
Diffstat (limited to 'src/lib/libssl/ssl_clnt.c')
| -rw-r--r-- | src/lib/libssl/ssl_clnt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl_clnt.c b/src/lib/libssl/ssl_clnt.c index 0ecbae4695..e189c82fdd 100644 --- a/src/lib/libssl/ssl_clnt.c +++ b/src/lib/libssl/ssl_clnt.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ssl_clnt.c,v 1.24 2018/04/07 16:55:13 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_clnt.c,v 1.25 2018/05/13 17:31:06 jsing Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -2113,7 +2113,7 @@ ssl3_send_client_kex_ecdhe_ecp(SSL *s, SESS_CERT *sc, CBB *cbb) | |||
| 2113 | } | 2113 | } |
| 2114 | 2114 | ||
| 2115 | /* Generate a new ECDH key pair. */ | 2115 | /* Generate a new ECDH key pair. */ |
| 2116 | if (!(EC_KEY_generate_key(ecdh))) { | 2116 | if (!EC_KEY_generate_key(ecdh)) { |
| 2117 | SSLerror(s, ERR_R_ECDH_LIB); | 2117 | SSLerror(s, ERR_R_ECDH_LIB); |
| 2118 | goto err; | 2118 | goto err; |
| 2119 | } | 2119 | } |
| @@ -2123,6 +2123,7 @@ ssl3_send_client_kex_ecdhe_ecp(SSL *s, SESS_CERT *sc, CBB *cbb) | |||
| 2123 | } | 2123 | } |
| 2124 | if ((key = malloc(key_size)) == NULL) { | 2124 | if ((key = malloc(key_size)) == NULL) { |
| 2125 | SSLerror(s, ERR_R_MALLOC_FAILURE); | 2125 | SSLerror(s, ERR_R_MALLOC_FAILURE); |
| 2126 | goto err; | ||
| 2126 | } | 2127 | } |
| 2127 | key_len = ECDH_compute_key(key, key_size, point, ecdh, NULL); | 2128 | key_len = ECDH_compute_key(key, key_size, point, ecdh, NULL); |
| 2128 | if (key_len <= 0) { | 2129 | if (key_len <= 0) { |
