summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2018-05-13 17:31:06 +0000
committerjsing <>2018-05-13 17:31:06 +0000
commit5f9011c0bb4e1e157a2e91cb7a47b1be0cc74905 (patch)
tree72469c2b539b0fcf477285fdb9fc159f07b44505
parenteda20a55ec41152c4502175d4acb4d1378734f42 (diff)
downloadopenbsd-5f9011c0bb4e1e157a2e91cb7a47b1be0cc74905.tar.gz
openbsd-5f9011c0bb4e1e157a2e91cb7a47b1be0cc74905.tar.bz2
openbsd-5f9011c0bb4e1e157a2e91cb7a47b1be0cc74905.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 '')
-rw-r--r--src/lib/libssl/ssl_clnt.c5
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) {