From e5ed8553e2860641daab1a32ac486765df1bb5ea Mon Sep 17 00:00:00 2001 From: Hakase Date: Sun, 7 Oct 2018 20:09:06 +0900 Subject: [PATCH] Improved patch to nginx strict sni --- src/event/ngx_event_openssl.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c index 6109724..e6e3199 100644 --- a/src/event/ngx_event_openssl.c +++ b/src/event/ngx_event_openssl.c @@ -2626,16 +2626,17 @@ ngx_ssl_connection_error(ngx_connection_t *c, int sslerr, ngx_err_t err, } else if (sslerr == SSL_ERROR_SSL) { n = ERR_GET_REASON(ERR_peek_error()); - f = ERR_GET_FUNC(ERR_peek_error()); /* Strict SNI Error Patch * https://github.com/hakasenyang/openssl-patch/issues/1#issuecomment-427040319 */ - if (n == SSL_R_CALLBACK_FAILED - && f == SSL_F_FINAL_SERVER_NAME) { - ERR_peek_error(); - ERR_clear_error(); - return; + if (n == SSL_R_CALLBACK_FAILED) { + f = ERR_GET_FUNC(ERR_peek_error()); + if (f == SSL_F_FINAL_SERVER_NAME) { + ERR_peek_error(); + ERR_clear_error(); + return; + } } /* handshake failures */