aboutsummaryrefslogtreecommitdiffstats
path: root/ssl/t1_lib.c
diff options
context:
space:
mode:
authorScott Deboy <sdeboy@secondstryke.com>2014-02-04 18:48:59 -0800
committerBen Laurie <ben@links.org>2014-02-05 18:25:47 +0000
commit9dabfce1a88ca00c0542502db51b60de8d8e3e79 (patch)
tree60af26e56df4d5a228a9bb69ccb22d02b7c651d2 /ssl/t1_lib.c
parent0a6028757a77769f09d5c6dd3a541971224a5d81 (diff)
downloadopenssl-9dabfce1a88ca00c0542502db51b60de8d8e3e79.tar.gz
Don't break out of the custom extension callback loop - continue instead
The contract for custom extension callbacks has changed - all custom extension callbacks are triggered
Diffstat (limited to 'ssl/t1_lib.c')
-rw-r--r--ssl/t1_lib.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
index 0626fc6fcb..6c988d1829 100644
--- a/ssl/t1_lib.c
+++ b/ssl/t1_lib.c
@@ -1708,14 +1708,14 @@ unsigned char *ssl_add_serverhello_tlsext(SSL *s, unsigned char *p, unsigned cha
/* NULL callback or -1 omits extension */
if (!record->fn2)
- break;
+ continue;
cb_retval = record->fn2(s, record->ext_type,
&out, &outlen, al,
record->arg);
if (cb_retval == 0)
return NULL; /* error */
if (cb_retval == -1)
- break; /* skip this extension */
+ continue; /* skip this extension */
if (limit < ret + 4 + outlen)
return NULL;
s2n(record->ext_type, ret);