diff options
author | David Benjamin <davidben@chromium.org> | 2014-12-15 03:05:38 +0300 |
---|---|---|
committer | Adam Langley <agl@google.com> | 2014-12-16 04:37:33 +0300 |
commit | bf42f82ad9461bb36ff8fa5b945857e6dac1e9cf (patch) | |
tree | a1d0971f6d4ce743f2e8b3f8d190fab48f3f64ba /ssl/s3_srvr.c | |
parent | 07046a094637630f7e8255100b0a4bc47d7a5c9d (diff) |
Add comments explaining what NETSCAPE_HANG_BUG does.
(Or should we just drop this? It only matters for servers trying to use client
auth.)
Change-Id: I50b6999375dc8f9246bf617f17929ae304503c57
Reviewed-on: https://boringssl-review.googlesource.com/2602
Reviewed-by: Adam Langley <agl@google.com>
Diffstat (limited to 'ssl/s3_srvr.c')
-rw-r--r-- | ssl/s3_srvr.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ssl/s3_srvr.c b/ssl/s3_srvr.c index fba45eb0..433d81b2 100644 --- a/ssl/s3_srvr.c +++ b/ssl/s3_srvr.c @@ -465,6 +465,8 @@ int ssl3_accept(SSL *s) #ifndef NETSCAPE_HANG_BUG s->state=SSL3_ST_SW_SRVR_DONE_A; #else + /* ServerHelloDone was already sent in the + * previous record. */ s->state=SSL3_ST_SW_FLUSH; s->s3->tmp.next_state=SSL3_ST_SR_CERT_A; #endif @@ -1883,6 +1885,8 @@ int ssl3_send_certificate_request(SSL *s) #ifdef NETSCAPE_HANG_BUG if (!SSL_IS_DTLS(s)) { + /* Prepare a ServerHelloDone in the same record. This is + * to workaround a hang in Netscape. */ if (!BUF_MEM_grow_clean(buf, s->init_num + 4)) { OPENSSL_PUT_ERROR(SSL, ssl3_send_certificate_request, ERR_R_BUF_LIB); |