aboutsummaryrefslogtreecommitdiffstats
path: root/ssl/t1_lib.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2012-03-14 13:46:50 +0000
committerDr. Stephen Henson <steve@openssl.org>2012-03-14 13:46:50 +0000
commit156421a2af4d1295a4c188019bfe2f76af6ec895 (patch)
tree98b19290e0250a1197c7b380bfe5c935930fed0f /ssl/t1_lib.c
parent61ad8262a066aa0953df3cc84031390c0a903a28 (diff)
downloadopenssl-156421a2af4d1295a4c188019bfe2f76af6ec895.tar.gz
oops, revert unrelated patches
Diffstat (limited to 'ssl/t1_lib.c')
-rw-r--r--ssl/t1_lib.c30
1 files changed, 12 insertions, 18 deletions
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
index 33c0b654d6..dfd397f9b7 100644
--- a/ssl/t1_lib.c
+++ b/ssl/t1_lib.c
@@ -1678,26 +1678,20 @@ int ssl_prepare_clienthello_tlsext(SSL *s)
s->tlsext_ecpointformatlist[2] = TLSEXT_ECPOINTFORMAT_ansiX962_compressed_char2;
/* we support all named elliptic curves in draft-ietf-tls-ecc-12 */
- if (s->tlsext_ellipticcurvelist == NULL)
+ if (s->tlsext_ellipticcurvelist != NULL) OPENSSL_free(s->tlsext_ellipticcurvelist);
+ s->tlsext_ellipticcurvelist_length = sizeof(pref_list)/sizeof(pref_list[0]) * 2;
+ if ((s->tlsext_ellipticcurvelist = OPENSSL_malloc(s->tlsext_ellipticcurvelist_length)) == NULL)
{
- unsigned char *clist;
- size_t clistlen;
s->tlsext_ellipticcurvelist_length = 0;
- clistlen = sizeof(pref_list)/sizeof(pref_list[0]) * 2;
- clist = OPENSSL_malloc(clistlen);
- if (!clist)
- {
- SSLerr(SSL_F_SSL_PREPARE_CLIENTHELLO_TLSEXT,ERR_R_MALLOC_FAILURE);
- return -1;
- }
- for (i = 0, j = clist; i < (int)clistlen/2; i++)
- {
- int id = tls1_ec_nid2curve_id(pref_list[i]);
- s2n(id,j);
- }
- s->tlsext_ellipticcurvelist = clist;
- s->tlsext_ellipticcurvelist_length = clistlen;
- }
+ SSLerr(SSL_F_SSL_PREPARE_CLIENTHELLO_TLSEXT,ERR_R_MALLOC_FAILURE);
+ return -1;
+ }
+ for (i = 0, j = s->tlsext_ellipticcurvelist; (unsigned int)i <
+ sizeof(pref_list)/sizeof(pref_list[0]); i++)
+ {
+ int id = tls1_ec_nid2curve_id(pref_list[i]);
+ s2n(id,j);
+ }
}
#endif /* OPENSSL_NO_EC */