This memory leak was found by running the Valgrind testing mode against
lua-resty-core's `ssl-session-fetch.t` test suite:
TEST 5: yield during doing handshake with client which uses low version OpenSSL
==16956== 64 (32 direct, 32 indirect) bytes in 1 blocks are definitely lost in loss record 5 of 15
==16956== at 0x4C2B002: malloc (vg_replace_malloc.c:298)
==16956== by 0x5FFC868: CRYPTO_malloc (mem.c:222)
==16956== by 0x5FFC96F: CRYPTO_zalloc (mem.c:230)
==16956== by 0x603C54A: OPENSSL_sk_new_reserve (stack.c:209)
==16956== by 0x603C597: OPENSSL_sk_new_null (stack.c:118)
==16956== by 0x5C94A86: sk_SSL_CIPHER_new_null (ssl.h:960)
==16956== by 0x5C94A86: bytes_to_cipher_list (ssl_lib.c:5361)
==16956== by 0x5CB52E9: tls_early_post_process_client_hello (statem_srvr.c:1713)
==16956== by 0x5CB52E9: tls_post_process_client_hello (statem_srvr.c:2231)
==16956== by 0x5CB6F39: ossl_statem_server_post_process_message (statem_srvr.c:1218)
==16956== by 0x5CA4C11: read_state_machine (statem.c:664)
==16956== by 0x5CA4C11: state_machine (statem.c:434)
==16956== by 0x5CA538A: ossl_statem_accept (statem.c:255)
==16956== by 0x5C91759: SSL_do_handshake (ssl_lib.c:3609)
==16956== by 0x45456B: ngx_ssl_handshake (ngx_event_openssl.c:1606)
==16956== by 0x4698D3: ngx_http_ssl_handshake (ngx_http_request.c:751)
==16956== by 0x44ECA8: ngx_epoll_process_events (ngx_epoll_module.c:901)
==16956== by 0x443E94: ngx_process_events_and_timers (ngx_event.c:257)
==16956== by 0x44DC25: ngx_single_process_cycle (ngx_process_cycle.c:333)
==16956== by 0x4236AB: main (nginx.c:382)
==16956==
{
<insert_a_suppression_name_here>
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:CRYPTO_malloc
fun:CRYPTO_zalloc
fun:OPENSSL_sk_new_reserve
fun:OPENSSL_sk_new_null
fun:sk_SSL_CIPHER_new_null
fun:bytes_to_cipher_list
fun:tls_early_post_process_client_hello
fun:tls_post_process_client_hello
fun:ossl_statem_server_post_process_message
fun:read_state_machine
fun:state_machine
fun:ossl_statem_accept
fun:SSL_do_handshake
fun:ngx_ssl_handshake
fun:ngx_http_ssl_handshake
fun:ngx_epoll_process_events
fun:ngx_process_events_and_timers
fun:ngx_single_process_cycle
fun:main
}
==16956== 368 (32 direct, 336 indirect) bytes in 1 blocks are definitely lost in loss record 8 of 15
==16956== at 0x4C2B002: malloc (vg_replace_malloc.c:298)
==16956== by 0x5FFC868: CRYPTO_malloc (mem.c:222)
==16956== by 0x5FFC96F: CRYPTO_zalloc (mem.c:230)
==16956== by 0x603C54A: OPENSSL_sk_new_reserve (stack.c:209)
==16956== by 0x603C597: OPENSSL_sk_new_null (stack.c:118)
==16956== by 0x5C94A79: sk_SSL_CIPHER_new_null (ssl.h:960)
==16956== by 0x5C94A79: bytes_to_cipher_list (ssl_lib.c:5360)
==16956== by 0x5CB52E9: tls_early_post_process_client_hello (statem_srvr.c:1713)
==16956== by 0x5CB52E9: tls_post_process_client_hello (statem_srvr.c:2231)
==16956== by 0x5CB6F39: ossl_statem_server_post_process_message (statem_srvr.c:1218)
==16956== by 0x5CA4C11: read_state_machine (statem.c:664)
==16956== by 0x5CA4C11: state_machine (statem.c:434)
==16956== by 0x5CA538A: ossl_statem_accept (statem.c:255)
==16956== by 0x5C91759: SSL_do_handshake (ssl_lib.c:3609)
==16956== by 0x45456B: ngx_ssl_handshake (ngx_event_openssl.c:1606)
==16956== by 0x4698D3: ngx_http_ssl_handshake (ngx_http_request.c:751)
==16956== by 0x44ECA8: ngx_epoll_process_events (ngx_epoll_module.c:901)
==16956== by 0x443E94: ngx_process_events_and_timers (ngx_event.c:257)
==16956== by 0x44DC25: ngx_single_process_cycle (ngx_process_cycle.c:333)
==16956== by 0x4236AB: main (nginx.c:382)
==16956==
{
<insert_a_suppression_name_here>
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:CRYPTO_malloc
fun:CRYPTO_zalloc
fun:OPENSSL_sk_new_reserve
fun:OPENSSL_sk_new_null
fun:sk_SSL_CIPHER_new_null
fun:bytes_to_cipher_list
fun:tls_early_post_process_client_hello
fun:tls_post_process_client_hello
fun:ossl_statem_server_post_process_message
fun:read_state_machine
fun:state_machine
fun:ossl_statem_accept
fun:SSL_do_handshake
fun:ngx_ssl_handshake
fun:ngx_http_ssl_handshake
fun:ngx_epoll_process_events
fun:ngx_process_events_and_timers
fun:ngx_single_process_cycle
fun:main
}
The script started failing with:
mv: cannot stat 'simplresty-ngx_devel_kit-*': No such file or directory
Since the GitHub organization owning the ngx_devel_kit repository was
updated to be 'vision5' instead of 'simplresty'.
This failure was first fixed in
1f3cf84a8a, but mistakenly reverted in
395bed2b14, causing Travis-CI to fail on
this test again.
It was then reverted again in 41abd0f3b5,
and now fixed one more time.
This reduces the size of the release tarball from 4.7MB down to 3.5MB.
Diff of openresty-tarball-master (prior) and openresty-tarball-refactor
(after this patch) with NGINX core 1.17.1:
Only in ./openresty-tarball-master/bundle/array-var-nginx-module-0.05: .gitattributes
Only in ./openresty-tarball-master/bundle/array-var-nginx-module-0.05: .gitignore
Only in ./openresty-tarball-master/bundle/array-var-nginx-module-0.05: t
Only in ./openresty-tarball-master/bundle/array-var-nginx-module-0.05: util
Only in ./openresty-tarball-master/bundle/array-var-nginx-module-0.05: valgrind.suppress
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: .gitattributes
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: .gitignore
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: t
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: .travis.yml
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: util
Only in ./openresty-tarball-master/bundle/drizzle-nginx-module-0.1.11: valgrind.suppress
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: .gitattributes
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: .gitignore
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: t
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: .travis.yml
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: util
Only in ./openresty-tarball-master/bundle/echo-nginx-module-0.61: valgrind.suppress
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: .gitattributes
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: .gitignore
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: t
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: .travis.yml
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: util
Only in ./openresty-tarball-master/bundle/encrypted-session-nginx-module-0.08: valgrind.suppress
Only in ./openresty-tarball-master/bundle/form-input-nginx-module-0.12: .gitignore
Only in ./openresty-tarball-master/bundle/form-input-nginx-module-0.12: t
Only in ./openresty-tarball-master/bundle/form-input-nginx-module-0.12: util
Only in ./openresty-tarball-master/bundle/form-input-nginx-module-0.12: valgrind.suppress
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: .gitattributes
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: .gitignore
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: t
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: .travis.yml
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: util
Only in ./openresty-tarball-master/bundle/headers-more-nginx-module-0.33: valgrind.suppress
Only in ./openresty-tarball-master/bundle/iconv-nginx-module-0.14: .gitignore
Only in ./openresty-tarball-master/bundle/iconv-nginx-module-0.14: t
Only in ./openresty-tarball-master/bundle/iconv-nginx-module-0.14: util
Only in ./openresty-tarball-master/bundle/iconv-nginx-module-0.14: valgrind.suppress
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912: doc
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912: .gitignore
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912/src: .gitignore
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912/src/host: .gitignore
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912/src/jit: .gitignore
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912: t
Only in ./openresty-tarball-master/bundle/LuaJIT-2.1-20190912: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-rds-parser-0.06: .gitignore
Only in ./openresty-tarball-master/bundle/lua-rds-parser-0.06: t
Only in ./openresty-tarball-master/bundle/lua-redis-parser-0.13: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-redis-parser-0.13: .gitignore
Only in ./openresty-tarball-master/bundle/lua-redis-parser-0.13: t
Only in ./openresty-tarball-master/bundle/lua-redis-parser-0.13: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: .github
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: .luacheckrc
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: t
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-core-0.1.17: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: t
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-dns-0.21: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: t
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-limit-traffic-0.06: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: t
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-lock-0.08: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: t
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-lrucache-0.09: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-memcached-0.14: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-memcached-0.14: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-memcached-0.14: t
Only in ./openresty-tarball-master/bundle/lua-resty-memcached-0.14: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: .github
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: t
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-mysql-0.21: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: t
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-redis-0.27: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-shell-0.02: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-shell-0.02: t
Only in ./openresty-tarball-master/bundle/lua-resty-shell-0.02: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-shell-0.02: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-signal-0.02: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-signal-0.02: t
Only in ./openresty-tarball-master/bundle/lua-resty-signal-0.02: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-signal-0.02: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: t
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-string-0.12rc1: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: t
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-upload-0.10: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: t
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-upstream-healthcheck-0.06: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: dist.ini
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: .gitattributes
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: .gitignore
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: t
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: .travis.yml
Only in ./openresty-tarball-master/bundle/lua-resty-websocket-0.07: valgrind.suppress
Only in ./openresty-tarball-master/bundle/lua-tablepool-0.01: .gitignore
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: .gitattributes
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: .gitignore
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: t
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: .travis.yml
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: util
Only in ./openresty-tarball-master/bundle/memc-nginx-module-0.19: valgrind.suppress
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto/cc: clang.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto/cc: conf.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto/cc: gcc.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto/cc: icc.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto: options.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto/os: linux.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto: sources.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/auto: unix.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/core: nginx.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/core: ngx_connection.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/core: ngx_cycle.h.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/core: ngx_log.h.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/core: ngx_resolver.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/dtrace: nginx.stp
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/event: ngx_event_accept.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/event: ngx_event_connect.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/event: ngx_event.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/event: ngx_event_openssl.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http/modules: ngx_http_log_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http/modules: ngx_http_proxy_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http/modules/perl: nginx.pm
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http: ngx_http_core_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http: ngx_http_request.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http: ngx_http_special_response.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http: ngx_http_upstream.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http: ngx_http_upstream.h.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/http/v2: ngx_http_v2_filter_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/os/unix: ngx_process_cycle.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/stream: ngx_stream.h.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/stream: ngx_stream_proxy_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/stream: ngx_stream_ssl_preread_module.c.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/stream: ngx_stream_upstream.h.orig
Only in ./openresty-tarball-master/bundle/nginx-1.17.1/src/stream: ngx_stream_upstream_round_robin.c.orig
Only in ./openresty-tarball-master/bundle/ngx_coolkit-0.2: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_coolkit-0.2: t
Only in ./openresty-tarball-master/bundle/ngx_coolkit-0.2: valgrind.suppress
Only in ./openresty-tarball-master/bundle/ngx_devel_kit-0.3.1rc1: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: .gitattributes
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: .github
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15/misc/recv-until-pm/lib: RecvUntil.pm
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15/misc/recv-until-pm: t
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: t
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15/tapset: ngx_lua.stp
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: .travis.yml
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: util
Only in ./openresty-tarball-master/bundle/ngx_lua-0.10.15: valgrind.suppress
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: .gitattributes
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: t
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: .travis.yml
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: util
Only in ./openresty-tarball-master/bundle/ngx_lua_upstream-0.07: valgrind.suppress
Only in ./openresty-tarball-master/bundle/ngx_postgres-1.0: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_postgres-1.0: t
Only in ./openresty-tarball-master/bundle/ngx_postgres-1.0: valgrind.suppress
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: .gitattributes
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: .gitignore
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: t
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: .travis.yml
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: util
Only in ./openresty-tarball-master/bundle/ngx_stream_lua-0.0.7: valgrind.suppress
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8: lua-cjson-2.1.0.6-1.rockspec
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8: lua-cjson.spec
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: example1.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: example2.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: example3.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: example4.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: example5.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: numbers.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: rfc-example1.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: rfc-example2.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: TestLua.pm
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8/tests: types.json
Only in ./openresty-tarball-master/bundle/openresty-lua-cjson-82e71d8: .travis.yml
Only in ./openresty-tarball-master/bundle/opm-0.0.5: .gitignore
Only in ./openresty-tarball-master/bundle/opm-0.0.5: init.sql
Only in ./openresty-tarball-master/bundle/opm-0.0.5: util
Only in ./openresty-tarball-master/bundle/opm-0.0.5: web
Only in ./openresty-tarball-master/bundle/pod/lua-resty-core-0.1.17: .github.issue_template.pod
Only in ./openresty-tarball-master/bundle/pod/lua-resty-core-0.1.17: .github.pull_request_template.pod
Only in ./openresty-tarball-master/bundle/pod/lua-resty-mysql-0.21: .github.issue_template.pod
Only in ./openresty-tarball-master/bundle/pod/ngx_lua-0.10.15: .github.issue_template.pod
Only in ./openresty-tarball-master/bundle/pod/ngx_lua-0.10.15: .github.pull_request_template.pod
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: .gitattributes
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: .gitignore
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: t
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: .travis.yml
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: util
Only in ./openresty-tarball-master/bundle/rds-csv-nginx-module-0.09: valgrind.suppress
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: .gitattributes
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: .gitignore
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: t
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: .travis.yml
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: util
Only in ./openresty-tarball-master/bundle/rds-json-nginx-module-0.15: valgrind.suppress
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: .gitattributes
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: .gitignore
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: t
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: .travis.yml
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: util
Only in ./openresty-tarball-master/bundle/redis2-nginx-module-0.15: valgrind.suppress
Only in ./openresty-tarball-master/bundle/redis-nginx-module-0.3.7: ngx_http_redis_module.c.orig
Only in ./openresty-tarball-master/bundle/redis-nginx-module-0.3.7: t
Only in ./openresty-tarball-master/bundle/resty-cli-0.25rc2: .gitattributes
Only in ./openresty-tarball-master/bundle/resty-cli-0.25rc2: .gitignore
Only in ./openresty-tarball-master/bundle/resty-cli-0.25rc2: t
Only in ./openresty-tarball-master/bundle/resty-cli-0.25rc2: .travis.yml
Only in ./openresty-tarball-master/bundle/resty-cli-0.25rc2: valgrind.suppress
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: .gitattributes
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: .gitignore
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: t
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: .travis.yml
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: util
Only in ./openresty-tarball-master/bundle/set-misc-nginx-module-0.32: valgrind.suppress
Only in ./openresty-tarball-master/bundle/srcache-nginx-module-0.31: .gitattributes
Only in ./openresty-tarball-master/bundle/srcache-nginx-module-0.31: .gitignore
Only in ./openresty-tarball-master/bundle/srcache-nginx-module-0.31: t
Only in ./openresty-tarball-master/bundle/srcache-nginx-module-0.31: util
Only in ./openresty-tarball-master/bundle/srcache-nginx-module-0.31: valgrind.suppress
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: .gitattributes
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: .gitignore
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: t
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: .travis.yml
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: util
Only in ./openresty-tarball-master/bundle/xss-nginx-module-0.06: valgrind.suppress
When `reuseport` is enabled in the `listen` directive, Nginx will create
a listening fd for each worker process in the master process.
These fds will be inherited by the worker processes, but most of them
are unused. For example, considering we have 32 listening ip:port
configurations and 64 worker processes, each worker process will inherit
2048 (32 * 64) listening fds, but only 32 fds are used. By closing the
unused fds, this change could save up to 2016 (32 * 63) fds in a worker
process.
It doesn't affect the listening socket, since there is only one used fd
which associates to the socket with or without this change.
Co-authored-by: Thibault Charbonnier <thibaultcha@me.com>
Previously, we used the OpenSSL 1.1.1 ClientHello callback to do ssl
session fetching non-blockingly. However, this way cannot handle an edge
case: the ssl session resumption via session ticket might fail, and the
client fallbacks to session ID resumption. The ClientHello callback is
run too early to know if the client will fallback to use session ID
resumption.
Therefore, we have to take back the OpenSSL sess_set_get_cb_yield patch
and upgrade it to adapt OpenSSL 1.1.1.
Thanks Yongjian Xu and crasyangel for their help.
See 08e9e50.
Signed-off-by: Thibault Charbonnier <thibaultcha@me.com>
Its naming is now aligned with the `ssl_cert_cb_yield` patch.
See 08e9e50 for details on why this renaming was reverted for the 1.15.8
version of this patch.
This reverts commit 9e834398de.
Support for OpenSSL 1.1.1 will come with the 1.17.1 series of NGINX
patches. Since no other 1.15.8.* releases are planned, we are reverting
the state of the 1.15.8 patches to that of the 1.15.8.1 release.
The patch was also renamed from `ssl_pending_session.patch` to
`ssl_sess_cb_yield.patch` (similarly to the existing
`ssl_cert_cb_yield.patch` one).
Signed-off-by: Thibault Charbonnier <thibaultcha@me.com>