Allocate extra space when NETSCAPE_HANG_BUG defined.
authorDavid Ramos <daramos@stanford.edu>
Sun, 1 Jun 2014 13:30:10 +0000 (14:30 +0100)
committerDr. Stephen Henson <steve@openssl.org>
Sun, 1 Jun 2014 13:31:30 +0000 (14:31 +0100)
Make sure there is an extra 4 bytes for server done message when
NETSCAPE_HANG_BUG is defined.

PR#3361
(cherry picked from commit 673c42b2380c34e7500f05e7f00c674cc677a065)

ssl/s3_srvr.c

index cdfe035ba913d62d864963377cf70088a19e29ef..b4ec010115f78ae87e02c219b9a211b4e3e5337f 100644 (file)
@@ -1944,6 +1944,11 @@ int ssl3_send_certificate_request(SSL *s)
                s->init_num=n+4;
                s->init_off=0;
 #ifdef NETSCAPE_HANG_BUG
+               if (!BUF_MEM_grow_clean(buf, s->init_num + 4))
+                       {
+                       SSLerr(SSL_F_SSL3_SEND_CERTIFICATE_REQUEST,ERR_R_BUF_LIB);
+                       goto err;
+                       }
                p=(unsigned char *)s->init_buf->data + s->init_num;
 
                /* do the header */