You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1005 B
33 lines
1005 B
From: Matt Caswell <matt@openssl.org> |
|
Date: Sun, 11 May 2014 23:38:37 +0000 (+0100) |
|
Subject: Fixed NULL pointer dereference. See PR#3321 |
|
X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff_plain;h=b107586 |
|
|
|
Fixed NULL pointer dereference. See PR#3321 |
|
--- |
|
|
|
diff --git a/ssl/s3_pkt.c b/ssl/s3_pkt.c |
|
index 40eb0dd..d961d12 100644 |
|
--- a/ssl/s3_pkt.c |
|
+++ b/ssl/s3_pkt.c |
|
@@ -657,9 +657,6 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf, |
|
SSL3_BUFFER *wb=&(s->s3->wbuf); |
|
SSL_SESSION *sess; |
|
|
|
- if (wb->buf == NULL) |
|
- if (!ssl3_setup_write_buffer(s)) |
|
- return -1; |
|
|
|
/* first check if there is a SSL3_BUFFER still being written |
|
* out. This will happen with non blocking IO */ |
|
@@ -675,6 +672,10 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf, |
|
/* if it went, fall through and send more stuff */ |
|
} |
|
|
|
+ if (wb->buf == NULL) |
|
+ if (!ssl3_setup_write_buffer(s)) |
|
+ return -1; |
|
+ |
|
if (len == 0 && !create_empty_fragment) |
|
return 0; |
|
|
|
|