@@ -8,6 +8,13 @@ repeat_each(2);
88
99plan tests => repeat_each() * (blocks() * 7 + 2 );
1010
11+ my $ NginxBinary = $ ENV {' TEST_NGINX_BINARY' } || ' nginx' ;
12+ my $ openssl_version = eval { `$ NginxBinary -V 2 > &1` };
13+
14+ if ($ openssl_version =~ m /\bBoringSSL\b /) {
15+ $ ENV {TEST_NGINX_BORINGSSL} = 1 ;
16+ }
17+
1118$ ENV {TEST_NGINX_HTML_DIR} ||= html_dir();
1219$ ENV {TEST_NGINX_MEMCACHED_PORT} ||= 11211 ;
1320$ ENV {TEST_NGINX_RESOLVER} ||= ' 8.8.8.8' ;
11421149-- - error_log eval
11431150[
11441151' lua ssl server name: "openresty.org"' ,
1145- qr/ SSL: TLSv1\. 2, cipher: " (?:ECDHE-RSA-AES(?:256|128)-GCM-SHA(?:384|256)|ECDHE-(?:RSA|ECDSA)-CHACHA20-POLY1305) TLSv1\.2/,
1152+ qr/ SSL: TLSv1\. 2, cipher: " (?:ECDHE-RSA-AES(?:256|128)-GCM-SHA(?:384|256)|ECDHE-(?:RSA|ECDSA)-CHACHA20-POLY1305) ( TLSv1\.2|Kx=ECDH Au=RSA Enc=AESGCM\(256\) Mac=AEAD) /,
11461153]
11471154--- no_error_log
11481155SSL reused session
@@ -1159,7 +1166,7 @@ SSL reused session
11591166 server_name test. com;
11601167 ssl_certificate $ TEST_NGINX_CERT_DIR / cert/ test. crt;
11611168 ssl_certificate_key $ TEST_NGINX_CERT_DIR / cert/ test. key ;
1162- ssl_protocols TLSv1;
1169+ ssl_protocols TLSv1 TLSv1 . 2 ;
11631170
11641171 location / {
11651172 content_by_lua_block {
@@ -1229,7 +1236,8 @@ lua ssl free session: ([0-9A-F]+)
12291236$/
12301237--- error_log eval
12311238['lua ssl server name: " test. com" ',
1232- qr/SSL: TLSv\d(?:\.\d)?, cipher: " ECDHE-RSA-AES256-SHA (SSLv3| TLSv1)/ ]
1239+ qr/SSL: TLSv\d(?:\.\d)?, cipher: " ECDHE-RSA-AES256-SHA (SSLv3| TLSv1)?/ ]
1240+
12331241-- - no_error_log
12341242SSL reused session
12351243[error]
@@ -1245,7 +1253,7 @@ SSL reused session
12451253 server_name test. com;
12461254 ssl_certificate $ TEST_NGINX_CERT_DIR / cert/ test. crt;
12471255 ssl_certificate_key $ TEST_NGINX_CERT_DIR / cert/ test. key ;
1248- ssl_protocols TLSv1;
1256+ ssl_protocols TLSv1 TLSv1 . 2 ;
12491257
12501258 location / {
12511259 content_by_lua_block {
@@ -1254,7 +1262,7 @@ SSL reused session
12541262 }
12551263 }
12561264-- - stream_server_config
1257- lua_ssl_protocols TLSv1;
1265+ lua_ssl_protocols TLSv1. 2 ;
12581266
12591267 content_by_lua '
12601268 local sock = ngx.socket.tcp()
13171325-- - error_log eval
13181326[
13191327' lua ssl server name: "test.com"' ,
1320- qr/ SSL : TLSv1 , cipher: " ECDHE-RSA-AES256-SHA (SSLv3| TLSv1) /
1328+ qr/ \QTLSv1 . 2 , cipher: " ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD " \E /
13211329]
13221330-- - no_error_log
13231331SSL reused session
@@ -1396,6 +1404,8 @@ SSL reused session
13961404[alert]
13971405[emerg]
13981406-- - timeout: 5
1407+ -- - skip_eval
1408+ 8 : $ ENV {TEST_NGINX_BORINGSSL}
13991409
14001410
14011411
@@ -1850,7 +1860,7 @@ $::TestCertificate"
18501860-- - grep_error_log eval: qr/ lua ssl (?: set| save| free) session: [0 -9A-F]+/
18511861-- - grep_error_log_out
18521862-- - error_log eval
1853- qr/SSL_do_handshake\(\) failed .*?(unknown protocol|wrong version number)/
1863+ qr/ SSL_do_handshake\(\) failed .*? (unknown protocol| wrong version number|.*? routines : OPENSSL_internal : WRONG_VERSION_NUMBER )/
18541864-- - no_error_log
18551865lua ssl server name :
18561866SSL reused session
@@ -2469,9 +2479,10 @@ SSL reused session
24692479 collectgarbage()
24702480 }
24712481
2472- --- stream_response
2473- connected: 1
2474- failed to do SSL handshake: 18: self signed certificate
2482+ -- - stream_response eval
2483+ qr/ connected: 1
2484+ failed to do SSL handshake: 18 : self [- ]signed certificate
2485+ / ms
24752486
24762487-- - user_files eval
24772488" >>> test.key
@@ -2481,8 +2492,8 @@ $::TestCertificate"
24812492
24822493-- - grep_error_log eval: qr/ lua ssl (?: set| save| free) session: [0 -9A-F]+/
24832494-- - grep_error_log_out
2484- --- error_log
2485- lua ssl certificate verify error: (18: self signed certificate)
2495+ -- - error_log eval
2496+ qr / lua ssl certificate verify error: \ (18 : self [- ] signed certificate\) / ms
24862497-- - no_error_log
24872498SSL reused session
24882499[alert]
25692580-- - error_log eval
25702581[
25712582' lua ssl server name: "test.com"' ,
2572- qr/SSL: TLSv1.3, cipher: " TLS_AES_256_GCM_SHA384 TLSv1. 3/ ,
2583+ qr/ SSL: TLSv1. 3, cipher: " ( TLS_AES_256_GCM_SHA384 TLSv1.3|TLS_AES_128_GCM_SHA256 Kx=GENERIC Au=GENERIC Enc=AESGCM\(128\) Mac=AEAD) /,
25732584]
25742585--- no_error_log
25752586SSL reused session
@@ -2582,6 +2593,7 @@ SSL reused session
25822593=== TEST 33: explicit cipher configuration - TLSv1.3
25832594--- skip_openssl: 8: < 1.1.1
25842595--- skip_nginx: 8: < 1.19.4
2596+ --- skip_eval: 8: $ ENV{ TEST_NGINX_BORINGSSL}
25852597--- http_config
25862598 server {
25872599 listen unix: $ TEST_NGINX_HTML_DIR / nginx. sock ssl;
@@ -2671,13 +2683,15 @@ SSL reused session
26712683=== TEST 34 : explicit cipher configuration not in the default list - TLSv1. 3
26722684-- - skip_openssl: 8 : < 1.1 . 1
26732685-- - skip_nginx: 8 : < 1.19 . 4
2686+ -- - skip_eval: 8 : $ ENV {TEST_NGINX_BORINGSSL}
26742687-- - http_config
26752688 server {
26762689 listen unix: $ TEST_NGINX_HTML_DIR / nginx. sock ssl;
26772690 server_name test. com;
26782691 ssl_certificate $ TEST_NGINX_CERT_DIR / cert/ test. crt;
26792692 ssl_certificate_key $ TEST_NGINX_CERT_DIR / cert/ test. key ;
26802693 ssl_protocols TLSv1. 3;
2694+ ssl_conf_command Ciphersuites TLS_AES_128_CCM_SHA256;
26812695
26822696 location / {
26832697 content_by_lua_block {
@@ -2687,7 +2701,7 @@ SSL reused session
26872701 }
26882702-- - stream_server_config
26892703 lua_ssl_protocols TLSv1. 3;
2690- lua_ssl_conf_command Ciphersuites TLS_AES_128_CCM_SHA256 ;
2704+ lua_ssl_conf_command Ciphersuites TLS_AES_256_GCM_SHA384 ;
26912705
26922706 content_by_lua_block {
26932707 local sock = ngx. socket. tcp()
0 commit comments