]> git.kaiwu.me - nginx.git/commitdiff
low SSL handshake errors level
authorIgor Sysoev <igor@sysoev.ru>
Fri, 1 Feb 2008 14:05:18 +0000 (14:05 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Fri, 1 Feb 2008 14:05:18 +0000 (14:05 +0000)
src/event/ngx_event_openssl.c

index 0c8b9d8edf4de29ff0f0fe142d15c59d5f9baac1..d4b565cb9141db4b3971f59295e0723821986f89 100644 (file)
@@ -1115,6 +1115,7 @@ static void
 ngx_ssl_connection_error(ngx_connection_t *c, int sslerr, ngx_err_t err,
     char *text)
 {
+    int         n;
     ngx_uint_t  level;
 
     level = NGX_LOG_CRIT;
@@ -1135,6 +1136,34 @@ ngx_ssl_connection_error(ngx_connection_t *c, int sslerr, ngx_err_t err,
         {
             switch (c->log_error) {
 
+            case NGX_ERROR_IGNORE_ECONNRESET:
+            case NGX_ERROR_INFO:
+                level = NGX_LOG_INFO;
+                break;
+
+            case NGX_ERROR_ERR:
+                level = NGX_LOG_ERR;
+                break;
+
+            default:
+                break;
+            }
+        }
+
+    } else if (sslerr == SSL_ERROR_SSL) {
+
+        n = ERR_GET_REASON(ERR_peek_error());
+
+            /* handshake failures */
+        if (n == SSL_R_NO_SHARED_CIPHER
+            || n == SSL_R_UNEXPECTED_MESSAGE
+            || n == SSL_R_WRONG_VERSION_NUMBER
+            || n == SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED
+            || n == SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER
+            || n == SSL_R_TLSV1_ALERT_UNKNOWN_CA)
+        {
+            switch (c->log_error) {
+
             case NGX_ERROR_IGNORE_ECONNRESET:
             case NGX_ERROR_INFO:
                 level = NGX_LOG_INFO;