(This page was automatically generated by the tools in the opsboy project on 04:52:00 11-Oct-2024 GMT.)
Commit | Testing Time | Unexpected Failures |
Expected Failures |
Files | Tests | Elapsed Time |
---|---|---|---|---|---|---|
630f8fab | 2019-05-08 17:40:00 GMT | 1 | 324 | 73 | 8141 | 1924 sec |
File | Name | Details |
---|---|---|
process-type-hup.t | TEST 1: sanity - pattern "init_worker_by_lua:6: process type: privileged" should match a line in error.log (req 0) |
Looks like you failed 1 test of 8. |
File | Name | Details |
---|---|---|
balancer.t | TEST 17: https (no keepalive) - status code ok |
got: '502' expected: '200' |
balancer.t | TEST 17: https (no keepalive) - response_body - response is expected (repeated req 0, req 0) |
got: '<html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.15.8 (no pool)</center> </body> </html> ' expected: 'ok' |
balancer.t | TEST 17: https (no keepalive) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:22:22 [alert] 13811\#0: *1 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking to upstream, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", upstream: \"https://127.0.0.1:12347/back\", host: \"localhost\"" (req 0) |
2019/05/08 20:22:22 [debug] 13811\#0: *1 SSL_do_handshake: -1 2019/05/08 20:22:22 [debug] 13811\#0: *1 SSL_get_error: 1 2019/05/08 20:22:22 [crit] 13811\#0: *1 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking to upstream, client: 127.0.0.1, server: localhost, request: "GET /t HTTP/1.1", upstream: "https://127.0.0.1:12347/back", host: "localhost" 2019/05/08 20:22:22 [debug] 13811\#0: *1 http next upstream, 2 2019/05/08 20:22:22 [debug] 13811\#0: *1 lua balancer free peer, tries: 1 2019/05/08 20:22:22 [debug] 13811\#0: *1 finalize http upstream request: 502 2019/05/08 20:22:22 [debug] 13811\#0: *1 finalize http proxy request 2019/05/08 20:22:22 [debug] 13811\#0: *1 close http upstream connection: 9 2019/05/08 20:22:22 [debug] 13811\#0: *1 free: 00000000088B7F70, unused: 0 ' |
balancer.t | TEST 17: https (no keepalive) - status code ok |
got: '502' expected: '200' |
balancer.t | TEST 17: https (no keepalive) - response_body - response is expected (repeated req 1, req 0) |
got: '<html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.15.8 (no pool)</center> </body> </html> ' expected: 'ok' |
balancer.t | TEST 16: https (keepalive) - status code ok |
got: '502' expected: '200' |
balancer.t | TEST 16: https (keepalive) - response_body - response is expected (repeated req 0, req 0) |
got: '<html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.15.8 (no pool)</center> </body> </html> ' expected: 'ok' |
balancer.t | TEST 16: https (keepalive) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:22:42 [alert] 13820\#0: *1 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking to upstream, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", upstream: \"https://127.0.0.1:1234/back\", host: \"localhost\"" (req 0) |
2019/05/08 20:22:42 [debug] 13820\#0: *1 SSL_do_handshake: -1 2019/05/08 20:22:42 [debug] 13820\#0: *1 SSL_get_error: 1 2019/05/08 20:22:42 [crit] 13820\#0: *1 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking to upstream, client: 127.0.0.1, server: localhost, request: "GET /t HTTP/1.1", upstream: "https://127.0.0.1:1234/back", host: "localhost" 2019/05/08 20:22:42 [debug] 13820\#0: *1 http next upstream, 2 2019/05/08 20:22:42 [debug] 13820\#0: *1 free keepalive peer 2019/05/08 20:22:42 [debug] 13820\#0: *1 lua balancer free peer, tries: 1 2019/05/08 20:22:42 [debug] 13820\#0: *1 finalize http upstream request: 502 2019/05/08 20:22:42 [debug] 13820\#0: *1 finalize http proxy request 2019/05/08 20:22:42 [debug] 13820\#0: *1 close http upstream connection: 9 ' |
balancer.t | TEST 16: https (keepalive) - status code ok |
got: '502' expected: '200' |
balancer.t | TEST 16: https (keepalive) - response_body - response is expected (repeated req 1, req 0) |
got: '<html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.15.8 (no pool)</center> </body> </html> ' expected: 'ok' |
errlog-raw-log.t | nginx: [error] | hello world from init_by_lua |
errlog.t | nginx: [emerg] | invalid number of arguments in "lua_capture_error_log" directive in /home/ec2-user/git/lua-resty-core/t/servroot/conf/nginx.conf:25 |
errlog.t | nginx: [emerg] | invalid capture error log size "3k", minimum size is 4096 in /home/ec2-user/git/lua-resty-core/t/servroot/conf/nginx.conf:25 |
ocsp.t | TEST 12: validate good OCSP response - no certs in response - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 12: validate good OCSP response - no certs in response - pattern "OCSP response validation ok" should match a line in error.log (req 0) | |
ocsp.t | TEST 12: validate good OCSP response - no certs in response - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 12: validate good OCSP response - no certs in response - pattern "OCSP response validation ok" should match a line in error.log (req 1) | |
ocsp.t | TEST 17: no status req from client - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 17: no status req from client - pattern "ocsp status resp set ok: no status req," should match a line in error.log (req 0) | |
ocsp.t | TEST 17: no status req from client - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 17: no status req from client - pattern "ocsp status resp set ok: no status req," should match a line in error.log (req 1) | |
ocsp.t | TEST 15: fail to validate OCSP response - OCSP response returns revoked status - pattern "failed to validate OCSP response: certificate status "revoked" in the OCSP response" should match a line in error.log (req 0) | |
ocsp.t | TEST 15: fail to validate OCSP response - OCSP response returns revoked status - pattern "failed to validate OCSP response: certificate status "revoked" in the OCSP response" should match a line in error.log (req 1) | |
ocsp.t | TEST 6: create OCSP request (good) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 6: create OCSP request (good) - pattern "OCSP request created with length 68" should match a line in error.log (req 0) | |
ocsp.t | TEST 6: create OCSP request (good) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 6: create OCSP request (good) - pattern "OCSP request created with length 68" should match a line in error.log (req 1) | |
ocsp.t | TEST 5: get OCSP responder (truncated) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 5: get OCSP responder (truncated) - pattern "OCSP url found: http:/," should match a line in error.log (req 0) | |
ocsp.t | TEST 5: get OCSP responder (truncated) - pattern "still get an error: truncated" should match a line in error.log (req 0) | |
ocsp.t | TEST 5: get OCSP responder (truncated) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 5: get OCSP responder (truncated) - pattern "OCSP url found: http:/," should match a line in error.log (req 1) | |
ocsp.t | TEST 5: get OCSP responder (truncated) - pattern "still get an error: truncated" should match a line in error.log (req 1) | |
ocsp.t | TEST 2: get OCSP responder (not found) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 2: get OCSP responder (not found) - pattern "OCSP responder not found" should match a line in error.log (req 0) | |
ocsp.t | TEST 2: get OCSP responder (not found) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 2: get OCSP responder (not found) - pattern "OCSP responder not found" should match a line in error.log (req 1) | |
ocsp.t | TEST 11: fail to validate OCSP response - no issuer cert - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 11: fail to validate OCSP response - no issuer cert - pattern "failed to validate OCSP response: no issuer certificate in chain" should match a line in error.log (req 0) | |
ocsp.t | TEST 11: fail to validate OCSP response - no issuer cert - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 11: fail to validate OCSP response - no issuer cert - pattern "failed to validate OCSP response: no issuer certificate in chain" should match a line in error.log (req 1) | |
ocsp.t | TEST 4: get OCSP responder (issuer cert not next to the leaf cert) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 4: get OCSP responder (issuer cert not next to the leaf cert) - pattern "failed to get OCSP responder: issuer certificate not next to leaf" should match a line in error.log (req 0) | |
ocsp.t | TEST 4: get OCSP responder (issuer cert not next to the leaf cert) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 4: get OCSP responder (issuer cert not next to the leaf cert) - pattern "failed to get OCSP responder: issuer certificate not next to leaf" should match a line in error.log (req 1) | |
ocsp.t | TEST 14: fail to validate OCSP response - OCSP response signed by an unknown cert and the OCSP response does not contain the unknown cert - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 14: fail to validate OCSP response - OCSP response signed by an unknown cert and the OCSP response does not contain the unknown cert - pattern "failed to validate OCSP response: OCSP_basic_verify() failed" should match a line in error.log (req 0) | |
ocsp.t | TEST 14: fail to validate OCSP response - OCSP response signed by an unknown cert and the OCSP response does not contain the unknown cert - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 14: fail to validate OCSP response - OCSP response signed by an unknown cert and the OCSP response does not contain the unknown cert - pattern "failed to validate OCSP response: OCSP_basic_verify() failed" should match a line in error.log (req 1) | |
ocsp.t | TEST 9: create OCSP request (no issuer cert in the chain) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 9: create OCSP request (no issuer cert in the chain) - pattern "failed to create OCSP request: no issuer certificate in chain" should match a line in error.log (req 0) | |
ocsp.t | TEST 9: create OCSP request (no issuer cert in the chain) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 9: create OCSP request (no issuer cert in the chain) - pattern "failed to create OCSP request: no issuer certificate in chain" should match a line in error.log (req 1) | |
ocsp.t | TEST 3: get OCSP responder (no issuer cert at all) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 3: get OCSP responder (no issuer cert at all) - pattern "failed to get OCSP responder: no issuer certificate in chain" should match a line in error.log (req 0) | |
ocsp.t | TEST 3: get OCSP responder (no issuer cert at all) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 3: get OCSP responder (no issuer cert at all) - pattern "failed to get OCSP responder: no issuer certificate in chain" should match a line in error.log (req 1) | |
ocsp.t | TEST 16: good status req from client - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 16: good status req from client - pattern "ocsp status resp set ok: nil," should match a line in error.log (req 0) | |
ocsp.t | TEST 16: good status req from client - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 16: good status req from client - pattern "ocsp status resp set ok: nil," should match a line in error.log (req 1) | |
ocsp.t | TEST 7: create OCSP request (buffer too small) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 7: create OCSP request (buffer too small) - pattern "failed to create OCSP request: output buffer too small: 68 > 67" should match a line in error.log (req 0) | |
ocsp.t | TEST 7: create OCSP request (buffer too small) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 7: create OCSP request (buffer too small) - pattern "failed to create OCSP request: output buffer too small: 68 > 67" should match a line in error.log (req 1) | |
ocsp.t | TEST 13: validate OCSP response - OCSP response signed by an unknown cert and the OCSP response contains the unknown cert - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 13: validate OCSP response - OCSP response signed by an unknown cert and the OCSP response contains the unknown cert - pattern "OCSP response validation ok" should match a line in error.log (req 0) | |
ocsp.t | TEST 13: validate OCSP response - OCSP response signed by an unknown cert and the OCSP response contains the unknown cert - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 13: validate OCSP response - OCSP response signed by an unknown cert and the OCSP response contains the unknown cert - pattern "OCSP response validation ok" should match a line in error.log (req 1) | |
ocsp.t | TEST 10: validate good OCSP response - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 10: validate good OCSP response - pattern "OCSP response validation ok" should match a line in error.log (req 0) | |
ocsp.t | TEST 10: validate good OCSP response - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 10: validate good OCSP response - pattern "OCSP response validation ok" should match a line in error.log (req 1) | |
ocsp.t | TEST 8: create OCSP request (empty string cert chain) - pattern "failed to create OCSP request: d2i_X509_bio() failed" should match a line in error.log (req 0) | |
ocsp.t | TEST 8: create OCSP request (empty string cert chain) - pattern "failed to create OCSP request: d2i_X509_bio() failed" should match a line in error.log (req 1) | |
ocsp.t | TEST 1: get OCSP responder (good case) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 1: get OCSP responder (good case) - pattern "OCSP url found: http://127.0.0.1:8888/ocsp?foo=1," should match a line in error.log (req 0) | |
ocsp.t | TEST 1: get OCSP responder (good case) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed ' |
ocsp.t | TEST 1: get OCSP responder (good case) - pattern "OCSP url found: http://127.0.0.1:8888/ocsp?foo=1," should match a line in error.log (req 1) | |
pipe-stderr.t | TEST 7: read stderr, pattern is read any - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ hello -world +w ' |
pipe-stderr.t | TEST 7: read stderr, pattern is read any - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ -hello +h -world +e ' |
pipe-stdin.t | TEST 9: write process, support table, number and boolean arguments - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,3 @@ 2 11 -10hello world +1 ' |
pipe-stdin.t | TEST 8: write and read process - response_body - response is expected (repeated req 0, req 0) |
got: 'a ' expected: 'payload ' |
pipe-stdin.t | TEST 8: write and read process - response_body - response is expected (repeated req 1, req 0) |
got: 'a ' expected: 'payload ' |
pipe-stdin.t | TEST 1: write process - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,4 @@ 0 5 6 -hello world +h ' |
pipe-stdout.t | TEST 8: read process, pattern is read any - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ hello -world +w ' |
pipe-stdout.t | TEST 8: read process, pattern is read any - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ -hello +h -world +e ' |
pipe-stdout.t | TEST 21: read process, mix read pattern - response_body - response is expected (repeated req 0, req 0) |
@@ -7,7 +7,7 @@ reading 2 mo reading any -re - +r reading all +e data ' |
pipe-stdout.t | TEST 21: read process, mix read pattern - response_body - response is expected (repeated req 1, req 0) |
@@ -1,13 +1,13 @@ reading any -hello +h reading 3 -wor +ell reading line -ld +oworld reading 2 mo reading any -re - +r reading all +e data ' |
pipe-stdout.t | TEST 10: read process, pattern is read any, with limited, limit larger than read data - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ hello -world +w ' |
pipe-stdout.t | TEST 10: read process, pattern is read any, with limited, limit larger than read data - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ -hello +h -world +e ' |
pipe-stdout.t | TEST 30: user case with read and wait - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1 @@ -ok exit ' |
pipe-stdout.t | TEST 30: user case with read and wait - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1 @@ -ok exit ' |
pipe-stdout.t | TEST 11: read process, pattern is read any, with limited, limit smaller than read data - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,3 @@ hell o -world +w ' |
pipe-stdout.t | TEST 11: read process, pattern is read any, with limited, limit smaller than read data - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,3 @@ -hell +h -o +e -world +l ' |
request.t | TEST 7: ngx.req.start_time() - response_body - response is expected (repeated req 0, req 0) |
got: "true\x{0a}>= 0.099: true\x{0a}< 0.11: false\x{0a}" length: 34 expected: "true\x{0a}>= 0.099: true\x{0a}< 0.11: true\x{0a}" length: 33 strings begin to differ at char 29 (line 3 column 9) |
ssl-session-fetch.t | TEST 3: store new session, and resume it - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 3: store new session, and resume it - grep_error_log_out (req 0) |
'' doesn't match '(?^s:ssl_session_store_by_lua_block:5: session id: [a-fA-F\d]+)' |
ssl-session-fetch.t | TEST 3: store new session, and resume it - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 3: store new session, and resume it - grep_error_log_out (req 1) |
'' doesn't match '(?^s:ssl_session_fetch_by_lua_block:4: session id: [a-fA-F\d]+)' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 0, req 0) |
got: '' expected: 'ok ' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - grep_error_log_out (req 0) |
'' doesn't match '(?^s:^ssl_session_store_by_lua_block:\d+: session id: [a-fA-F\d]+$)' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 0) | |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:40:39 [error] 14963\#0: *1 [lua] content_by_lua(nginx.conf:114):33: openssl client handshake timeout, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 0) |
2019/05/08 20:40:39 [debug] 14963\#0: *1 lua resume returned 0 2019/05/08 20:40:39 [debug] 14963\#0: *1 lua light thread ended normally 2019/05/08 20:40:39 [debug] 14963\#0: *1 lua deleting light thread 2019/05/08 20:40:39 [debug] 14963\#0: *1 lua capture header filter, uri "/t" 2019/05/08 20:40:39 [debug] 14963\#0: *1 malloc: 00000000088B9850:16 2019/05/08 20:40:39 [debug] 14963\#0: *1 malloc: 00000000088B98A0:16 2019/05/08 20:40:39 [debug] 14963\#0: *1 malloc: 00000000088B98F0:80 2019/05/08 20:40:39 [debug] 14963\#0: *1 malloc: 00000000088B9980:16 2019/05/08 20:40:39 [debug] 14963\#0: *1 malloc: 00000000088B99D0:161 ' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 1, req 0) |
got: '' expected: 'ok ' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - grep_error_log_out (req 1) |
'' doesn't match '(?^s:^ssl_session_fetch_by_lua_block:\d+: session id: [a-fA-F\d]+ failed to resume session: failed to de-serialize session ssl_session_store_by_lua_block:\d+: session id: [a-fA-F\d]+ $)' |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 1) | |
ssl-session-fetch.t | TEST 5: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:40:41 [error] 14963\#0: *3 [lua] content_by_lua(nginx.conf:114):33: openssl client handshake timeout, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 1) |
2019/05/08 20:40:41 [debug] 14963\#0: *3 lua resume returned 0 2019/05/08 20:40:41 [debug] 14963\#0: *3 lua light thread ended normally 2019/05/08 20:40:41 [debug] 14963\#0: *3 lua deleting light thread 2019/05/08 20:40:41 [debug] 14963\#0: *3 lua capture header filter, uri "/t" 2019/05/08 20:40:41 [debug] 14963\#0: *3 malloc: 00000000088BD5A0:16 2019/05/08 20:40:41 [debug] 14963\#0: *3 malloc: 00000000088BD5F0:16 2019/05/08 20:40:41 [debug] 14963\#0: *3 malloc: 00000000088BD640:80 2019/05/08 20:40:41 [debug] 14963\#0: *3 malloc: 00000000088BD6D0:16 2019/05/08 20:40:41 [debug] 14963\#0: *3 malloc: 00000000088BD720:161 ' |
ssl-session-fetch.t | TEST 4: attempt to resume a corrupted session - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 4: attempt to resume a corrupted session - grep_error_log_out (req 0) |
'' doesn't match '(?^s:^ssl_session_store_by_lua_block:5: session id: [a-fA-F\d]+$)' |
ssl-session-fetch.t | TEST 4: attempt to resume a corrupted session - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 4: attempt to resume a corrupted session - grep_error_log_out (req 1) |
'' doesn't match '(?^s:^ssl_session_fetch_by_lua_block:4: session id: [a-fA-F\d]+ failed to resume session: failed to de-serialize session ssl_session_store_by_lua_block:5: session id: [a-fA-F\d]+ $)' |
ssl-session-fetch.t | TEST 2: attempt to fetch new session in lua_ctx during resumption. - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 2: attempt to fetch new session in lua_ctx during resumption. - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 2: attempt to fetch new session in lua_ctx during resumption. - grep_error_log_out (req 1) |
got: '' expected: 'get session error: bad session in lua context ' |
ssl-session-fetch.t | TEST 1: get resume session id serialized - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 1: get resume session id serialized - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 1: get resume session id serialized - grep_error_log_out (req 1) |
'' doesn't match '(?^s:ssl_session_fetch_by_lua_block:4: session id: [a-fA-f\d]+)' |
ssl-session-fetch.t | TEST 6: store new session, and resume it, avoid memory leak when calling repeatly - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-fetch.t | TEST 6: store new session, and resume it, avoid memory leak when calling repeatly - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 3: store the session via timer to memcached - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:ssl_session_store_by_lua_block:32: session id: [a-fA-f\d]+)" should match a line in error.log (req 0) | |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:ssl_session_store_by_lua_block:34: session size: \d+)" should match a line in error.log (req 0) | |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:received memc reply: STORED)" should match a line in error.log (req 0) | |
ssl-session-store.t | TEST 3: store the session via timer to memcached - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:ssl_session_store_by_lua_block:32: session id: [a-fA-f\d]+)" should match a line in error.log (req 1) | |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:ssl_session_store_by_lua_block:34: session size: \d+)" should match a line in error.log (req 1) | |
ssl-session-store.t | TEST 3: store the session via timer to memcached - pattern "(?^s:received memc reply: STORED)" should match a line in error.log (req 1) | |
ssl-session-store.t | TEST 2: get new session id serialized - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 2: get new session id serialized - pattern "(?^s:ssl_session_store_by_lua_block:4: session id: [a-fA-f\d]+)" should match a line in error.log (req 0) | |
ssl-session-store.t | TEST 2: get new session id serialized - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 2: get new session id serialized - pattern "(?^s:ssl_session_store_by_lua_block:4: session id: [a-fA-f\d]+)" should match a line in error.log (req 1) | |
ssl-session-store.t | TEST 1: get new session serialized - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 1: get new session serialized - pattern "(?^s:ssl_session_store_by_lua_block:4: session size: \d+)" should match a line in error.log (req 0) | |
ssl-session-store.t | TEST 1: get new session serialized - response_body - response is expected (repeated req 1, req 0) |
@@ -1,3 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -close: 1 nil ' |
ssl-session-store.t | TEST 1: get new session serialized - pattern "(?^s:ssl_session_store_by_lua_block:4: session size: \d+)" should match a line in error.log (req 1) | |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - grep_error_log_out (req 0) |
@@ -1,4 +0,0 @@ -http lua semaphore new -http lua semaphore wait -http lua semaphore wait yielding -http lua semaphore post ' |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - pattern "ssl cert by lua done" should match a line in error.log (req 0) | |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - grep_error_log_out (req 1) |
@@ -1,4 +0,0 @@ -http lua semaphore new -http lua semaphore wait -http lua semaphore wait yielding -http lua semaphore post ' |
ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - pattern "ssl cert by lua done" should match a line in error.log (req 1) | |
ssl.t | TEST 15: read PEM key chain but set DER key chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 15: read PEM key chain but set DER key chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 2: set DER cert and private key - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 2: set DER cert and private key - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 12: tls version - TLSv1.1 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 12: tls version - TLSv1.1 - pattern "got TLS1 version: TLSv1.1," should match a line in error.log (req 0) | |
ssl.t | TEST 12: tls version - TLSv1.1 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 12: tls version - TLSv1.1 - pattern "got TLS1 version: TLSv1.1," should match a line in error.log (req 1) | |
ssl.t | TEST 9: read PEM cert chain but set DER cert chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 9: read PEM cert chain but set DER cert chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 10: tls version - SSLv3 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 10: tls version - SSLv3 - pattern "got TLS1 version: SSLv3," should match a line in error.log (req 0) | |
ssl.t | TEST 10: tls version - SSLv3 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 10: tls version - SSLv3 - pattern "got TLS1 version: SSLv3," should match a line in error.log (req 1) | |
ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509_AUX\(\) failed)" should match a line in error.log (req 0) | |
ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:12 [crit] 14991\#0: *1 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 0) |
2019/05/08 20:41:12 [debug] 14991\#0: *1 lua tcp socket error retval handler 2019/05/08 20:41:12 [debug] 14991\#0: *1 lua finalize socket 2019/05/08 20:41:12 [debug] 14991\#0: *1 lua http cleanup free: 00000000088B4B60 2019/05/08 20:41:12 [debug] 14991\#0: *1 poll del event: fd:9 ev:1 2019/05/08 20:41:12 [debug] 14991\#0: *1 lua close socket connection 2019/05/08 20:41:12 [debug] 14991\#0: *1 free: 00000000088B5A10, unused: 0 2019/05/08 20:41:12 [debug] 14991\#0: *1 reusable connection: 0 2019/05/08 20:41:12 [debug] 14991\#0: *1 malloc: 00000000088CB6A0:16 2019/05/08 20:41:12 [debug] 14991\#0: *1 malloc: 00000000088CB6F0:16 ' |
ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509_AUX\(\) failed)" should match a line in error.log (req 1) | |
ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:12 [crit] 14991\#0: *4 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 1) |
2019/05/08 20:41:12 [debug] 14991\#0: *4 lua tcp socket error retval handler 2019/05/08 20:41:12 [debug] 14991\#0: *4 lua finalize socket 2019/05/08 20:41:12 [debug] 14991\#0: *4 lua http cleanup free: 00000000088CF330 2019/05/08 20:41:12 [debug] 14991\#0: *4 poll del event: fd:9 ev:1 2019/05/08 20:41:12 [debug] 14991\#0: *4 lua close socket connection 2019/05/08 20:41:12 [debug] 14991\#0: *4 free: 00000000088D0180, unused: 0 2019/05/08 20:41:12 [debug] 14991\#0: *4 reusable connection: 0 2019/05/08 20:41:12 [debug] 14991\#0: *4 malloc: 00000000088E5DA0:16 2019/05/08 20:41:12 [debug] 14991\#0: *4 malloc: 00000000088E5DF0:16 ' |
ssl.t | TEST 1: clear certs - pattern "sslv3 alert handshake failure" should match a line in error.log (req 0) | |
ssl.t | TEST 1: clear certs - pattern "sslv3 alert handshake failure" should match a line in error.log (req 1) | |
ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - pattern "client ip: 127.0.0.1" should match a line in error.log (req 0) | |
ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - pattern "client ip: 127.0.0.1" should match a line in error.log (req 1) | |
ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "(?^:\[error\] .*? failed to parse pem key: PEM_read_bio_PrivateKey\(\) failed)" should match a line in error.log (req 0) | |
ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:18 [crit] 14994\#0: *1 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 0) |
2019/05/08 20:41:18 [debug] 14994\#0: *1 lua tcp socket error retval handler 2019/05/08 20:41:18 [debug] 14994\#0: *1 lua finalize socket 2019/05/08 20:41:18 [debug] 14994\#0: *1 lua http cleanup free: 00000000088B4B50 2019/05/08 20:41:18 [debug] 14994\#0: *1 poll del event: fd:9 ev:1 2019/05/08 20:41:18 [debug] 14994\#0: *1 lua close socket connection 2019/05/08 20:41:18 [debug] 14994\#0: *1 free: 00000000088B5A00, unused: 0 2019/05/08 20:41:18 [debug] 14994\#0: *1 reusable connection: 0 2019/05/08 20:41:18 [debug] 14994\#0: *1 malloc: 00000000088CB690:16 2019/05/08 20:41:18 [debug] 14994\#0: *1 malloc: 00000000088CB6E0:16 ' |
ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "(?^:\[error\] .*? failed to parse pem key: PEM_read_bio_PrivateKey\(\) failed)" should match a line in error.log (req 1) | |
ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:18 [crit] 14994\#0: *4 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 1) |
2019/05/08 20:41:18 [debug] 14994\#0: *4 lua tcp socket error retval handler 2019/05/08 20:41:18 [debug] 14994\#0: *4 lua finalize socket 2019/05/08 20:41:18 [debug] 14994\#0: *4 lua http cleanup free: 00000000088CF320 2019/05/08 20:41:18 [debug] 14994\#0: *4 poll del event: fd:9 ev:1 2019/05/08 20:41:18 [debug] 14994\#0: *4 lua close socket connection 2019/05/08 20:41:18 [debug] 14994\#0: *4 free: 00000000088D0170, unused: 0 2019/05/08 20:41:18 [debug] 14994\#0: *4 reusable connection: 0 2019/05/08 20:41:18 [debug] 14994\#0: *4 malloc: 00000000088E5D90:16 2019/05/08 20:41:18 [debug] 14994\#0: *4 malloc: 00000000088E5DE0:16 ' |
ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - pattern "(?^:Using unix socket file .*?nginx\.sock)" should match a line in error.log (req 0) | |
ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - pattern "(?^:Using unix socket file .*?nginx\.sock)" should match a line in error.log (req 1) | |
ssl.t | TEST 13: tls version - TLSv1.2 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 13: tls version - TLSv1.2 - pattern "got TLS1 version: TLSv1.2," should match a line in error.log (req 0) | |
ssl.t | TEST 13: tls version - TLSv1.2 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 13: tls version - TLSv1.2 - pattern "got TLS1 version: TLSv1.2," should match a line in error.log (req 1) | |
ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - pattern "read SNI name from Lua: nil, type: nil" should match a line in error.log (req 0) | |
ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - pattern "read SNI name from Lua: nil, type: nil" should match a line in error.log (req 1) | |
ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - pattern "Using IPv6 address: 0.0.0.1" should match a line in error.log (req 0) | |
ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - pattern "Using IPv6 address: 0.0.0.1" should match a line in error.log (req 1) | |
ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - pattern "Using IPv4 address: 127.0.0.1" should match a line in error.log (req 0) | |
ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - pattern "Using IPv4 address: 127.0.0.1" should match a line in error.log (req 1) | |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 0, req 0) |
got: '' expected: 'ok ' |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 0) | |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "subject=/C=US/ST=California/L=San Francisco/O=OpenResty/OU=OpenResty/CN=test.com/emailAddress=agentzh@gmail.com" should match a line in error.log (req 0) | |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:41:33 [error] 15002\#0: *1 [lua] content_by_lua(nginx.conf:111):25: openssl client handshake timeout, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 0) |
2019/05/08 20:41:33 [debug] 15002\#0: *1 lua resume returned 0 2019/05/08 20:41:33 [debug] 15002\#0: *1 lua light thread ended normally 2019/05/08 20:41:33 [debug] 15002\#0: *1 lua deleting light thread 2019/05/08 20:41:33 [debug] 15002\#0: *1 lua capture header filter, uri "/t" 2019/05/08 20:41:33 [debug] 15002\#0: *1 malloc: 00000000088B7BA0:16 2019/05/08 20:41:33 [debug] 15002\#0: *1 malloc: 00000000088B7BF0:16 2019/05/08 20:41:33 [debug] 15002\#0: *1 malloc: 00000000088B7C40:80 2019/05/08 20:41:33 [debug] 15002\#0: *1 malloc: 00000000088B7CD0:16 2019/05/08 20:41:33 [debug] 15002\#0: *1 malloc: 00000000088B7D20:161 ' |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 1, req 0) |
got: '' expected: 'ok ' |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 1) | |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "subject=/C=US/ST=California/L=San Francisco/O=OpenResty/OU=OpenResty/CN=test.com/emailAddress=agentzh@gmail.com" should match a line in error.log (req 1) | |
ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:41:35 [error] 15002\#0: *3 [lua] content_by_lua(nginx.conf:111):25: openssl client handshake timeout, client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 1) |
2019/05/08 20:41:35 [debug] 15002\#0: *3 lua resume returned 0 2019/05/08 20:41:35 [debug] 15002\#0: *3 lua light thread ended normally 2019/05/08 20:41:35 [debug] 15002\#0: *3 lua deleting light thread 2019/05/08 20:41:35 [debug] 15002\#0: *3 lua capture header filter, uri "/t" 2019/05/08 20:41:35 [debug] 15002\#0: *3 malloc: 00000000088BB870:16 2019/05/08 20:41:35 [debug] 15002\#0: *3 malloc: 00000000088BB8C0:16 2019/05/08 20:41:35 [debug] 15002\#0: *3 malloc: 00000000088BB910:80 2019/05/08 20:41:35 [debug] 15002\#0: *3 malloc: 00000000088BB9A0:16 2019/05/08 20:41:35 [debug] 15002\#0: *3 malloc: 00000000088BB9F0:161 ' |
ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509\(\) failed)" should match a line in error.log (req 0) | |
ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:37 [crit] 15011\#0: *1 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 0) |
2019/05/08 20:41:37 [debug] 15011\#0: *1 lua tcp socket error retval handler 2019/05/08 20:41:37 [debug] 15011\#0: *1 lua finalize socket 2019/05/08 20:41:37 [debug] 15011\#0: *1 lua http cleanup free: 00000000088B4B60 2019/05/08 20:41:37 [debug] 15011\#0: *1 poll del event: fd:9 ev:1 2019/05/08 20:41:37 [debug] 15011\#0: *1 lua close socket connection 2019/05/08 20:41:37 [debug] 15011\#0: *1 free: 00000000088B5A10, unused: 0 2019/05/08 20:41:37 [debug] 15011\#0: *1 reusable connection: 0 2019/05/08 20:41:37 [debug] 15011\#0: *1 malloc: 00000000088CB6A0:16 2019/05/08 20:41:37 [debug] 15011\#0: *1 malloc: 00000000088CB6F0:16 ' |
ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509\(\) failed)" should match a line in error.log (req 1) | |
ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:41:37 [crit] 15011\#0: *4 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: localhost, request: \"GET /t HTTP/1.1\", host: \"localhost\"" (req 1) |
2019/05/08 20:41:37 [debug] 15011\#0: *4 lua tcp socket error retval handler 2019/05/08 20:41:37 [debug] 15011\#0: *4 lua finalize socket 2019/05/08 20:41:37 [debug] 15011\#0: *4 lua http cleanup free: 00000000088CF330 2019/05/08 20:41:37 [debug] 15011\#0: *4 poll del event: fd:9 ev:1 2019/05/08 20:41:37 [debug] 15011\#0: *4 lua close socket connection 2019/05/08 20:41:37 [debug] 15011\#0: *4 free: 00000000088D0180, unused: 0 2019/05/08 20:41:37 [debug] 15011\#0: *4 reusable connection: 0 2019/05/08 20:41:37 [debug] 15011\#0: *4 malloc: 00000000088E5DA0:16 2019/05/08 20:41:37 [debug] 15011\#0: *4 malloc: 00000000088E5DF0:16 ' |
ssl.t | TEST 11: tls version - TLSv1 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 11: tls version - TLSv1 - pattern "got TLS1 version: TLSv1," should match a line in error.log (req 0) | |
ssl.t | TEST 11: tls version - TLSv1 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
ssl.t | TEST 11: tls version - TLSv1 - pattern "got TLS1 version: TLSv1," should match a line in error.log (req 1) | |
ssl.t | TEST 16: parse PEM cert and key to cdata - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 16: parse PEM cert and key to cdata - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 3: read SNI name via ssl.server_name() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 3: read SNI name via ssl.server_name() - pattern "read SNI name from Lua: test.com" should match a line in error.log (req 0) | |
ssl.t | TEST 3: read SNI name via ssl.server_name() - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 3: read SNI name via ssl.server_name() - pattern "read SNI name from Lua: test.com" should match a line in error.log (req 1) | |
ssl.t | TEST 8: set DER cert chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
ssl.t | TEST 8: set DER cert chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,11 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -sent http request: 56 bytes. -received: HTTP/1.1 201 Created -received: Server: nginx -received: Content-Type: text/plain -received: Content-Length: 4 -received: Connection: close -received: -received: foo -close: 1 nil ' |
stream/errlog-raw-log.t | nginx: [error] | hello world from init_by_lua |
stream/errlog.t | nginx: [emerg] | invalid number of arguments in "lua_capture_error_log" directive in /home/ec2-user/git/lua-resty-core/t/servroot/conf/nginx.conf:17 |
stream/errlog.t | nginx: [emerg] | invalid capture error log size "3k", minimum size is 4096 in /home/ec2-user/git/lua-resty-core/t/servroot/conf/nginx.conf:17 |
stream/re-sub.t | ERROR: client socket timed out - TEST 5: replace template + submatches (exceeding buffers) |
' |
stream/re-sub.t | TEST 5: replace template + submatches (exceeding buffers) - status code ok |
got: '' expected: '200' |
stream/re-sub.t | TEST 5: replace template + submatches (exceeding buffers) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +0,0 @@ -s: [bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd -n: 2048 ' |
stream/re-sub.t | ERROR: client socket timed out - TEST 5: replace template + submatches (exceeding buffers) |
' |
stream/re-sub.t | TEST 5: replace template + submatches (exceeding buffers) - status code ok |
got: '' expected: '200' |
stream/re-sub.t | TEST 5: replace template + submatches (exceeding buffers) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +0,0 @@ -s: [bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd[bc(c)]bd -n: 2048 ' |
stream/ssl.t | TEST 15: read PEM key chain but set DER key chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 15: read PEM key chain but set DER key chain - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:18 [alert] 15485\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:18 [debug] 15485\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:18 [debug] 15485\#0: *3 SSL_get_error: 1 2019/05/08 20:51:18 [crit] 15485\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:18 [debug] 15485\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:18 [debug] 15485\#0: *3 stream lua finalize socket 2019/05/08 20:51:18 [debug] 15485\#0: *3 lua stream cleanup free: 0000000008944310 2019/05/08 20:51:18 [debug] 15485\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:18 [debug] 15485\#0: *3 lua close socket connection 2019/05/08 20:51:18 [debug] 15485\#0: *3 free: 0000000008944890, unused: 0 ' |
stream/ssl.t | TEST 15: read PEM key chain but set DER key chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - grep_error_log_out (req 0) |
@@ -1,4 +0,0 @@ -stream lua semaphore new -stream lua semaphore wait -stream lua semaphore wait yielding -stream lua semaphore post ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - pattern "ssl cert by lua done" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:21 [alert] 15486\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.2:23456" (req 0) |
2019/05/08 20:51:21 [debug] 15486\#0: *5 SSL_do_handshake: -1 2019/05/08 20:51:21 [debug] 15486\#0: *5 SSL_get_error: 2 2019/05/08 20:51:21 [debug] 15486\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:51:21 [debug] 15486\#0: *5 event timer add: 13: 60000:11612319 2019/05/08 20:51:21 [debug] 15486\#0: posted event 000000000893AF40 2019/05/08 20:51:21 [debug] 15486\#0: *3 delete posted event 000000000893AF40 2019/05/08 20:51:21 [debug] 15486\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:51:21 [debug] 15486\#0: *3 event timer del: 12: 11555287 2019/05/08 20:51:21 [debug] 15486\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - grep_error_log_out (req 1) |
@@ -1,4 +0,0 @@ -stream lua semaphore new -stream lua semaphore wait -stream lua semaphore wait yielding -stream lua semaphore post ' |
stream/ssl.t | TEST 14: ngx.semaphore in ssl_certificate_by_lua* - pattern "ssl cert by lua done" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 9: read PEM cert chain but set DER cert chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 9: read PEM cert chain but set DER cert chain - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:23 [alert] 15487\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:23 [debug] 15487\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:23 [debug] 15487\#0: *3 SSL_get_error: 1 2019/05/08 20:51:23 [crit] 15487\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:23 [debug] 15487\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:23 [debug] 15487\#0: *3 stream lua finalize socket 2019/05/08 20:51:23 [debug] 15487\#0: *3 lua stream cleanup free: 0000000008943F90 2019/05/08 20:51:23 [debug] 15487\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:23 [debug] 15487\#0: *3 lua close socket connection 2019/05/08 20:51:23 [debug] 15487\#0: *3 free: 0000000008944510, unused: 0 ' |
stream/ssl.t | TEST 9: read PEM cert chain but set DER cert chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 1: clear certs - pattern "sslv3 alert handshake failure" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 1: clear certs - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:25 [alert] 15488\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:25 [debug] 15488\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:25 [debug] 15488\#0: *3 SSL_get_error: 1 2019/05/08 20:51:25 [crit] 15488\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:25 [debug] 15488\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:25 [debug] 15488\#0: *3 stream lua finalize socket 2019/05/08 20:51:25 [debug] 15488\#0: *3 lua stream cleanup free: 0000000008944130 2019/05/08 20:51:25 [debug] 15488\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:25 [debug] 15488\#0: *3 lua close socket connection 2019/05/08 20:51:25 [debug] 15488\#0: *3 free: 00000000089446B0, unused: 0 ' |
stream/ssl.t | TEST 1: clear certs - pattern "sslv3 alert handshake failure" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 8: set DER cert chain - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 8: set DER cert chain - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:27 [alert] 15489\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:27 [debug] 15489\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:27 [debug] 15489\#0: *3 SSL_get_error: 1 2019/05/08 20:51:27 [crit] 15489\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:27 [debug] 15489\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:27 [debug] 15489\#0: *3 stream lua finalize socket 2019/05/08 20:51:27 [debug] 15489\#0: *3 lua stream cleanup free: 0000000008943BB0 2019/05/08 20:51:27 [debug] 15489\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:27 [debug] 15489\#0: *3 lua close socket connection 2019/05/08 20:51:27 [debug] 15489\#0: *3 free: 0000000008944130, unused: 0 ' |
stream/ssl.t | TEST 8: set DER cert chain - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 12: tls version - TLSv1.1 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 12: tls version - TLSv1.1 - pattern "got TLS1 version: TLSv1.1," should match a line in error.log (req 0) | |
stream/ssl.t | TEST 12: tls version - TLSv1.1 - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:30 [alert] 15490\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.2:23456" (req 0) |
2019/05/08 20:51:30 [debug] 15490\#0: *5 SSL_do_handshake: -1 2019/05/08 20:51:30 [debug] 15490\#0: *5 SSL_get_error: 2 2019/05/08 20:51:30 [debug] 15490\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:51:30 [debug] 15490\#0: *5 event timer add: 13: 60000:11621259 2019/05/08 20:51:30 [debug] 15490\#0: posted event 000000000893AEB0 2019/05/08 20:51:30 [debug] 15490\#0: *3 delete posted event 000000000893AEB0 2019/05/08 20:51:30 [debug] 15490\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:51:30 [debug] 15490\#0: *3 event timer del: 12: 11564231 2019/05/08 20:51:30 [debug] 15490\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 12: tls version - TLSv1.1 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 12: tls version - TLSv1.1 - pattern "got TLS1 version: TLSv1.1," should match a line in error.log (req 1) | |
stream/ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509_AUX\(\) failed)" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:32 [alert] 15491\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:32 [debug] 15491\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:32 [debug] 15491\#0: *3 SSL_get_error: 1 2019/05/08 20:51:32 [crit] 15491\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:32 [debug] 15491\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:32 [debug] 15491\#0: *3 stream lua finalize socket 2019/05/08 20:51:32 [debug] 15491\#0: *3 lua stream cleanup free: 0000000008944200 2019/05/08 20:51:32 [debug] 15491\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:32 [debug] 15491\#0: *3 lua close socket connection 2019/05/08 20:51:32 [debug] 15491\#0: *3 free: 0000000008944780, unused: 0 ' |
stream/ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:51:32 [crit] 15491\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:32 [debug] 15491\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:32 [debug] 15491\#0: *3 stream lua finalize socket 2019/05/08 20:51:32 [debug] 15491\#0: *3 lua stream cleanup free: 0000000008944200 2019/05/08 20:51:32 [debug] 15491\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:32 [debug] 15491\#0: *3 lua close socket connection 2019/05/08 20:51:32 [debug] 15491\#0: *3 free: 0000000008944780, unused: 0 2019/05/08 20:51:32 [debug] 15491\#0: *3 reusable connection: 0 2019/05/08 20:51:32 [debug] 15491\#0: *3 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008944380, p:0000000008944500 2019/05/08 20:51:32 [debug] 15491\#0: *3 free: 0000000008944500 ' |
stream/ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509_AUX\(\) failed)" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 17: parse PEM cert and key to cdata (bad cert 0 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:51:32 [crit] 15491\#0: *8 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 1) |
2019/05/08 20:51:32 [debug] 15491\#0: *8 stream lua tcp socket error retval handler 2019/05/08 20:51:32 [debug] 15491\#0: *8 stream lua finalize socket 2019/05/08 20:51:32 [debug] 15491\#0: *8 lua stream cleanup free: 0000000008976990 2019/05/08 20:51:32 [debug] 15491\#0: *8 poll del event: fd:12 ev:1 2019/05/08 20:51:32 [debug] 15491\#0: *8 lua close socket connection 2019/05/08 20:51:32 [debug] 15491\#0: *8 free: 0000000008976EB0, unused: 0 2019/05/08 20:51:32 [debug] 15491\#0: *8 reusable connection: 0 2019/05/08 20:51:32 [debug] 15491\#0: *8 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008976AB0, p:0000000008976C30 2019/05/08 20:51:32 [debug] 15491\#0: *8 free: 0000000008976C30 ' |
stream/ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - pattern "read SNI name from Lua: nil, type: nil" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:34 [alert] 15492\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:34 [debug] 15492\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:34 [debug] 15492\#0: *3 SSL_get_error: 1 2019/05/08 20:51:34 [crit] 15492\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:34 [debug] 15492\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:34 [debug] 15492\#0: *3 stream lua finalize socket 2019/05/08 20:51:34 [debug] 15492\#0: *3 lua stream cleanup free: 0000000008944170 2019/05/08 20:51:34 [debug] 15492\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:34 [debug] 15492\#0: *3 lua close socket connection 2019/05/08 20:51:34 [debug] 15492\#0: *3 free: 00000000089446F0, unused: 0 ' |
stream/ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 4: read SNI name via ssl.server_name() when no SNI name specified - pattern "read SNI name from Lua: nil, type: nil" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 0, req 0) |
got: '' expected: 'ok ' |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "subject=/C=US/ST=California/L=San Francisco/O=OpenResty/OU=OpenResty/CN=test.com/emailAddress=agentzh@gmail.com" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:36 [alert] 15493\#0: *4 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 0.0.0.0:4433" (req 0) |
2019/05/08 20:51:36 [debug] 15493\#0: *4 SSL_do_handshake: -1 2019/05/08 20:51:36 [debug] 15493\#0: *4 SSL_get_error: 2 2019/05/08 20:51:36 [debug] 15493\#0: *4 poll add event: fd:13 ev:1 2019/05/08 20:51:36 [debug] 15493\#0: *4 event timer add: 13: 60000:11627999 2019/05/08 20:51:36 [debug] 15493\#0: *3 event timer del: 0: 11567989 2019/05/08 20:51:36 [debug] 15493\#0: *3 stream lua sleep timer expired 2019/05/08 20:51:36 [debug] 15493\#0: *3 lua run thread, top:9 2019/05/08 20:51:36 [debug] 15493\#0: fetching key "handshake" in shared dict "done" 2019/05/08 20:51:36 [debug] 15493\#0: shmtx lock ' |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:51:38 [error] 15493\#0: *3 stream [lua] content_by_lua(nginx.conf:89):25: openssl client handshake timeout, client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:38 [debug] 15493\#0: *3 lua resume returned 0 2019/05/08 20:51:38 [debug] 15493\#0: *3 lua light thread ended normally 2019/05/08 20:51:38 [debug] 15493\#0: *3 lua deleting light thread 2019/05/08 20:51:38 [debug] 15493\#0: *3 lua run thread returned 0 2019/05/08 20:51:38 [debug] 15493\#0: *3 finalize stream request: 0 2019/05/08 20:51:38 [debug] 15493\#0: *3 finalize stream session: 200 2019/05/08 20:51:38 [debug] 15493\#0: *3 stream log handler 2019/05/08 20:51:38 [debug] 15493\#0: *3 close stream connection: 11 2019/05/08 20:51:38 [debug] 15493\#0: *3 reusable connection: 0 ' |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - response_body - response is expected (repeated req 1, req 0) |
got: '' expected: 'ok ' |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "(?^:content_by_lua\(nginx\.conf:\d+\):\d+: CONNECTED)" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "subject=/C=US/ST=California/L=San Francisco/O=OpenResty/OU=OpenResty/CN=test.com/emailAddress=agentzh@gmail.com" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 21: yield during doing handshake with client which uses low version OpenSSL - pattern "[error]" should not match any line in error.log but matches line "2019/05/08 20:51:41 [error] 15493\#0: *7 stream [lua] content_by_lua(nginx.conf:89):25: openssl client handshake timeout, client: 127.0.0.1, server: 0.0.0.0:1985" (req 1) |
2019/05/08 20:51:41 [debug] 15493\#0: *7 lua resume returned 0 2019/05/08 20:51:41 [debug] 15493\#0: *7 lua light thread ended normally 2019/05/08 20:51:41 [debug] 15493\#0: *7 lua deleting light thread 2019/05/08 20:51:41 [debug] 15493\#0: *7 lua run thread returned 0 2019/05/08 20:51:41 [debug] 15493\#0: *7 finalize stream request: 0 2019/05/08 20:51:41 [debug] 15493\#0: *7 finalize stream session: 200 2019/05/08 20:51:41 [debug] 15493\#0: *7 stream log handler 2019/05/08 20:51:41 [debug] 15493\#0: *7 close stream connection: 11 2019/05/08 20:51:41 [debug] 15493\#0: *7 reusable connection: 0 ' |
stream/ssl.t | TEST 3: read SNI name via ssl.server_name() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 3: read SNI name via ssl.server_name() - pattern "read SNI name from Lua: test.com" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 3: read SNI name via ssl.server_name() - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:42 [alert] 15502\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:42 [debug] 15502\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:42 [debug] 15502\#0: *3 SSL_get_error: 1 2019/05/08 20:51:42 [crit] 15502\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:42 [debug] 15502\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:42 [debug] 15502\#0: *3 stream lua finalize socket 2019/05/08 20:51:42 [debug] 15502\#0: *3 lua stream cleanup free: 0000000008944230 2019/05/08 20:51:42 [debug] 15502\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:42 [debug] 15502\#0: *3 lua close socket connection 2019/05/08 20:51:42 [debug] 15502\#0: *3 free: 00000000089447B0, unused: 0 ' |
stream/ssl.t | TEST 3: read SNI name via ssl.server_name() - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 3: read SNI name via ssl.server_name() - pattern "read SNI name from Lua: test.com" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "(?^:\[error\] .*? failed to parse pem key: PEM_read_bio_PrivateKey\(\) failed)" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:45 [alert] 15503\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:45 [debug] 15503\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:45 [debug] 15503\#0: *3 SSL_get_error: 1 2019/05/08 20:51:45 [crit] 15503\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:45 [debug] 15503\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:45 [debug] 15503\#0: *3 stream lua finalize socket 2019/05/08 20:51:45 [debug] 15503\#0: *3 lua stream cleanup free: 00000000089441F0 2019/05/08 20:51:45 [debug] 15503\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:45 [debug] 15503\#0: *3 lua close socket connection 2019/05/08 20:51:45 [debug] 15503\#0: *3 free: 0000000008944770, unused: 0 ' |
stream/ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:51:45 [crit] 15503\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:45 [debug] 15503\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:45 [debug] 15503\#0: *3 stream lua finalize socket 2019/05/08 20:51:45 [debug] 15503\#0: *3 lua stream cleanup free: 00000000089441F0 2019/05/08 20:51:45 [debug] 15503\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:45 [debug] 15503\#0: *3 lua close socket connection 2019/05/08 20:51:45 [debug] 15503\#0: *3 free: 0000000008944770, unused: 0 2019/05/08 20:51:45 [debug] 15503\#0: *3 reusable connection: 0 2019/05/08 20:51:45 [debug] 15503\#0: *3 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008944370, p:00000000089444F0 2019/05/08 20:51:45 [debug] 15503\#0: *3 free: 00000000089444F0 ' |
stream/ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "(?^:\[error\] .*? failed to parse pem key: PEM_read_bio_PrivateKey\(\) failed)" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 19: parse PEM cert and key to cdata (bad priv key) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:51:45 [crit] 15503\#0: *8 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 1) |
2019/05/08 20:51:45 [debug] 15503\#0: *8 stream lua tcp socket error retval handler 2019/05/08 20:51:45 [debug] 15503\#0: *8 stream lua finalize socket 2019/05/08 20:51:45 [debug] 15503\#0: *8 lua stream cleanup free: 0000000008976980 2019/05/08 20:51:45 [debug] 15503\#0: *8 poll del event: fd:12 ev:1 2019/05/08 20:51:45 [debug] 15503\#0: *8 lua close socket connection 2019/05/08 20:51:45 [debug] 15503\#0: *8 free: 0000000008976EA0, unused: 0 2019/05/08 20:51:45 [debug] 15503\#0: *8 reusable connection: 0 2019/05/08 20:51:45 [debug] 15503\#0: *8 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008976AA0, p:0000000008976C20 2019/05/08 20:51:45 [debug] 15503\#0: *8 free: 0000000008976C20 ' |
stream/ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - pattern "(?^:Using unix socket file .*?nginx\.sock)" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:47 [alert] 15504\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:47 [debug] 15504\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:47 [debug] 15504\#0: *3 SSL_get_error: 1 2019/05/08 20:51:47 [crit] 15504\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:47 [debug] 15504\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:47 [debug] 15504\#0: *3 stream lua finalize socket 2019/05/08 20:51:47 [debug] 15504\#0: *3 lua stream cleanup free: 00000000089453A0 2019/05/08 20:51:47 [debug] 15504\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:47 [debug] 15504\#0: *3 lua close socket connection 2019/05/08 20:51:47 [debug] 15504\#0: *3 free: 0000000008945920, unused: 0 ' |
stream/ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 5: read raw server addr via ssl.raw_server_addr() (unix domain socket) - pattern "(?^:Using unix socket file .*?nginx\.sock)" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - pattern "Using IPv4 address: 127.0.0.1" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:49 [alert] 15505\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.1:12345" (req 0) |
2019/05/08 20:51:49 [debug] 15505\#0: *5 SSL_do_handshake: -1 2019/05/08 20:51:49 [debug] 15505\#0: *5 SSL_get_error: 2 2019/05/08 20:51:49 [debug] 15505\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:51:49 [debug] 15505\#0: *5 event timer add: 13: 60000:11640955 2019/05/08 20:51:49 [debug] 15505\#0: posted event 000000000893C510 2019/05/08 20:51:49 [debug] 15505\#0: *3 delete posted event 000000000893C510 2019/05/08 20:51:49 [debug] 15505\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:51:49 [debug] 15505\#0: *3 event timer del: 12: 11583927 2019/05/08 20:51:49 [debug] 15505\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 6: read raw server addr via ssl.raw_server_addr() (IPv4) - pattern "Using IPv4 address: 127.0.0.1" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 13: tls version - TLSv1.2 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 13: tls version - TLSv1.2 - pattern "got TLS1 version: TLSv1.2," should match a line in error.log (req 0) | |
stream/ssl.t | TEST 13: tls version - TLSv1.2 - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:51 [alert] 15506\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.2:23456" (req 0) |
2019/05/08 20:51:51 [debug] 15506\#0: *5 SSL_do_handshake: -1 2019/05/08 20:51:51 [debug] 15506\#0: *5 SSL_get_error: 2 2019/05/08 20:51:51 [debug] 15506\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:51:51 [debug] 15506\#0: *5 event timer add: 13: 60000:11643195 2019/05/08 20:51:51 [debug] 15506\#0: posted event 000000000893AE50 2019/05/08 20:51:51 [debug] 15506\#0: *3 delete posted event 000000000893AE50 2019/05/08 20:51:51 [debug] 15506\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:51:51 [debug] 15506\#0: *3 event timer del: 12: 11586167 2019/05/08 20:51:51 [debug] 15506\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 13: tls version - TLSv1.2 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 13: tls version - TLSv1.2 - pattern "got TLS1 version: TLSv1.2," should match a line in error.log (req 1) | |
stream/ssl.t | TEST 2: set DER cert and private key - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 2: set DER cert and private key - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:54 [alert] 15507\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:54 [debug] 15507\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:54 [debug] 15507\#0: *3 SSL_get_error: 1 2019/05/08 20:51:54 [crit] 15507\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:54 [debug] 15507\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:54 [debug] 15507\#0: *3 stream lua finalize socket 2019/05/08 20:51:54 [debug] 15507\#0: *3 lua stream cleanup free: 0000000008944500 2019/05/08 20:51:54 [debug] 15507\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:54 [debug] 15507\#0: *3 lua close socket connection 2019/05/08 20:51:54 [debug] 15507\#0: *3 free: 0000000008944A80, unused: 0 ' |
stream/ssl.t | TEST 2: set DER cert and private key - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - pattern "client ip: 127.0.0.1" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:56 [alert] 15508\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.1:12345" (req 0) |
2019/05/08 20:51:56 [debug] 15508\#0: *5 SSL_do_handshake: -1 2019/05/08 20:51:56 [debug] 15508\#0: *5 SSL_get_error: 2 2019/05/08 20:51:56 [debug] 15508\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:51:56 [debug] 15508\#0: *5 event timer add: 13: 60000:11647667 2019/05/08 20:51:56 [debug] 15508\#0: posted event 000000000893B430 2019/05/08 20:51:56 [debug] 15508\#0: *3 delete posted event 000000000893B430 2019/05/08 20:51:56 [debug] 15508\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:51:56 [debug] 15508\#0: *3 event timer del: 12: 11590635 2019/05/08 20:51:56 [debug] 15508\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 20: read client addr via ssl.raw_client_addr() - pattern "client ip: 127.0.0.1" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 16: parse PEM cert and key to cdata - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 16: parse PEM cert and key to cdata - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:51:58 [alert] 15509\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:51:58 [debug] 15509\#0: *3 SSL_do_handshake: -1 2019/05/08 20:51:58 [debug] 15509\#0: *3 SSL_get_error: 1 2019/05/08 20:51:58 [crit] 15509\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:51:58 [debug] 15509\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:51:58 [debug] 15509\#0: *3 stream lua finalize socket 2019/05/08 20:51:58 [debug] 15509\#0: *3 lua stream cleanup free: 00000000089441F0 2019/05/08 20:51:58 [debug] 15509\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:51:58 [debug] 15509\#0: *3 lua close socket connection 2019/05/08 20:51:58 [debug] 15509\#0: *3 free: 0000000008944770, unused: 0 ' |
stream/ssl.t | TEST 16: parse PEM cert and key to cdata - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 10: tls version - SSLv3 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 10: tls version - SSLv3 - pattern "got TLS1 version: SSLv3," should match a line in error.log (req 0) | |
stream/ssl.t | TEST 10: tls version - SSLv3 - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:52:00 [alert] 15510\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.2:23456" (req 0) |
2019/05/08 20:52:00 [debug] 15510\#0: *5 SSL_do_handshake: -1 2019/05/08 20:52:00 [debug] 15510\#0: *5 SSL_get_error: 2 2019/05/08 20:52:00 [debug] 15510\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:52:00 [debug] 15510\#0: *5 event timer add: 13: 60000:11652139 2019/05/08 20:52:00 [debug] 15510\#0: posted event 000000000893AF20 2019/05/08 20:52:00 [debug] 15510\#0: *3 delete posted event 000000000893AF20 2019/05/08 20:52:00 [debug] 15510\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:52:00 [debug] 15510\#0: *3 event timer del: 12: 11595111 2019/05/08 20:52:00 [debug] 15510\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 10: tls version - SSLv3 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 10: tls version - SSLv3 - pattern "got TLS1 version: SSLv3," should match a line in error.log (req 1) | |
stream/ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509\(\) failed)" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:52:03 [alert] 15511\#0: *3 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:52:03 [debug] 15511\#0: *3 SSL_do_handshake: -1 2019/05/08 20:52:03 [debug] 15511\#0: *3 SSL_get_error: 1 2019/05/08 20:52:03 [crit] 15511\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985 2019/05/08 20:52:03 [debug] 15511\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:52:03 [debug] 15511\#0: *3 stream lua finalize socket 2019/05/08 20:52:03 [debug] 15511\#0: *3 lua stream cleanup free: 0000000008944200 2019/05/08 20:52:03 [debug] 15511\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:52:03 [debug] 15511\#0: *3 lua close socket connection 2019/05/08 20:52:03 [debug] 15511\#0: *3 free: 0000000008944780, unused: 0 ' |
stream/ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:52:03 [crit] 15511\#0: *3 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 0) |
2019/05/08 20:52:03 [debug] 15511\#0: *3 stream lua tcp socket error retval handler 2019/05/08 20:52:03 [debug] 15511\#0: *3 stream lua finalize socket 2019/05/08 20:52:03 [debug] 15511\#0: *3 lua stream cleanup free: 0000000008944200 2019/05/08 20:52:03 [debug] 15511\#0: *3 poll del event: fd:12 ev:1 2019/05/08 20:52:03 [debug] 15511\#0: *3 lua close socket connection 2019/05/08 20:52:03 [debug] 15511\#0: *3 free: 0000000008944780, unused: 0 2019/05/08 20:52:03 [debug] 15511\#0: *3 reusable connection: 0 2019/05/08 20:52:03 [debug] 15511\#0: *3 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008944380, p:0000000008944500 2019/05/08 20:52:03 [debug] 15511\#0: *3 free: 0000000008944500 ' |
stream/ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "(?^:\[error\] .*? failed to parse pem cert: PEM_read_bio_X509\(\) failed)" should match a line in error.log (req 1) | |
stream/ssl.t | TEST 18: parse PEM cert and key to cdata (bad cert 2 in the chain) - pattern "[crit]" should not match any line in error.log but matches line "2019/05/08 20:52:03 [crit] 15511\#0: *8 SSL_do_handshake() failed (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html), client: 127.0.0.1, server: 0.0.0.0:1985" (req 1) |
2019/05/08 20:52:03 [debug] 15511\#0: *8 stream lua tcp socket error retval handler 2019/05/08 20:52:03 [debug] 15511\#0: *8 stream lua finalize socket 2019/05/08 20:52:03 [debug] 15511\#0: *8 lua stream cleanup free: 0000000008976990 2019/05/08 20:52:03 [debug] 15511\#0: *8 poll del event: fd:12 ev:1 2019/05/08 20:52:03 [debug] 15511\#0: *8 lua close socket connection 2019/05/08 20:52:03 [debug] 15511\#0: *8 free: 0000000008976EB0, unused: 0 2019/05/08 20:52:03 [debug] 15511\#0: *8 reusable connection: 0 2019/05/08 20:52:03 [debug] 15511\#0: *8 lua reuse free buf chain, but reallocate memory because 45 >= 13, cl:0000000008976AB0, p:0000000008976C30 2019/05/08 20:52:03 [debug] 15511\#0: *8 free: 0000000008976C30 ' |
stream/ssl.t | TEST 11: tls version - TLSv1 - response_body - response is expected (repeated req 0, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 11: tls version - TLSv1 - pattern "got TLS1 version: TLSv1," should match a line in error.log (req 0) | |
stream/ssl.t | TEST 11: tls version - TLSv1 - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:52:05 [alert] 15512\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: 127.0.0.1, server: 127.0.0.2:23456" (req 0) |
2019/05/08 20:52:05 [debug] 15512\#0: *5 SSL_do_handshake: -1 2019/05/08 20:52:05 [debug] 15512\#0: *5 SSL_get_error: 2 2019/05/08 20:52:05 [debug] 15512\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:52:05 [debug] 15512\#0: *5 event timer add: 13: 60000:11656611 2019/05/08 20:52:05 [debug] 15512\#0: posted event 000000000893AE50 2019/05/08 20:52:05 [debug] 15512\#0: *3 delete posted event 000000000893AE50 2019/05/08 20:52:05 [debug] 15512\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:52:05 [debug] 15512\#0: *3 event timer del: 12: 11599583 2019/05/08 20:52:05 [debug] 15512\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 11: tls version - TLSv1 - response_body - response is expected (repeated req 1, req 0) |
@@ -1,2 +1,2 @@ connected: 1 -ssl handshake: boolean +failed to do SSL handshake: handshake failed ' |
stream/ssl.t | TEST 11: tls version - TLSv1 - pattern "got TLS1 version: TLSv1," should match a line in error.log (req 1) | |
stream/ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - response_body - response is expected (repeated req 0, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - pattern "Using IPv6 address: 0.0.0.1" should match a line in error.log (req 0) | |
stream/ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - pattern "[alert]" should not match any line in error.log but matches line "2019/05/08 20:52:07 [alert] 15515\#0: *5 ignoring stale global SSL error (SSL: error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html error:24064064:random number generator:RAND_bytes:PRNG not seeded:You need to read the OpenSSL FAQ, https://www.openssl.org/docs/faq.html) while SSL handshaking, client: ::1, server: [::1]:12345" (req 0) |
2019/05/08 20:52:07 [debug] 15515\#0: *5 SSL_do_handshake: -1 2019/05/08 20:52:07 [debug] 15515\#0: *5 SSL_get_error: 2 2019/05/08 20:52:07 [debug] 15515\#0: *5 poll add event: fd:13 ev:1 2019/05/08 20:52:07 [debug] 15515\#0: *5 event timer add: 13: 60000:11658855 2019/05/08 20:52:07 [debug] 15515\#0: posted event 000000000893C460 2019/05/08 20:52:07 [debug] 15515\#0: *3 delete posted event 000000000893C460 2019/05/08 20:52:07 [debug] 15515\#0: *3 stream lua tcp socket handler: wev 1 2019/05/08 20:52:07 [debug] 15515\#0: *3 event timer del: 12: 11601823 2019/05/08 20:52:07 [debug] 15515\#0: *3 stream lua tcp socket connected ' |
stream/ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - response_body - response is expected (repeated req 1, req 0) |
@@ -1,4 +1,2 @@ connected: 1 -ssl handshake: userdata +failed to do SSL handshake: handshake failed -received: it works! -close: 1 nil ' |
stream/ssl.t | TEST 7: read raw server addr via ssl.raw_server_addr() (IPv6) - pattern "Using IPv6 address: 0.0.0.1" should match a line in error.log (req 1) | |
stream/time.t | TEST 1: ngx.now() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,3 @@ true >= 0.099: true -< 0.11: true +< 0.11: false ' |
time.t | TEST 1: ngx.now() - response_body - response is expected (repeated req 0, req 0) |
@@ -1,3 +1,3 @@ true >= 0.099: true -< 0.11: true +< 0.11: false ' |
Go back to the index page.