Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,10 +153,12 @@ jobs:
https://github.com/openresty/openresty-deps-prebuild/releases/download/v20230902/drizzle7-$DRIZZLE_VER.tar.gz
fi
wget https://github.com/openresty/openresty-deps-prebuild/releases/download/v20230902/boringssl-20230902-x64-focal.tar.gz
wget https://github.com/openresty/openresty-deps-prebuild/releases/download/v20230902/curl-h3-x64-focal.tar.gz
wget https://github.com/stunnel/static-curl/releases/download/8.20.0/curl-linux-x86_64-glibc-8.20.0.tar.xz

- name: Install curl-h3
run: sudo tar -C / -xf curl-h3-x64-focal.tar.gz
- name: Install HTTP/3-capable curl
run: |
sudo mkdir -p /opt/curl/bin
sudo tar -C /opt/curl/bin -xf curl-linux-x86_64-glibc-8.20.0.tar.xz curl

- name: Start memcached (native, UDP enabled)
run: |
Expand Down Expand Up @@ -239,7 +241,7 @@ jobs:
- name: Build nginx
run: |
export LD_LIBRARY_PATH=$LUAJIT_LIB:$LD_LIBRARY_PATH
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl-h3/bin:$PATH
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl/bin:$PATH
export NGX_BUILD_CC=$CC
sh util/build-without-ssl.sh ${{ matrix.NGINX_VERSION }} > build.log 2>&1 || (cat build.log && exit 1)
sh util/build-with-dd.sh ${{ matrix.NGINX_VERSION }} > build.log 2>&1 || (cat build.log && exit 1)
Expand All @@ -250,7 +252,7 @@ jobs:

- name: Run releng check
run: |
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl-h3/bin:$PATH
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl/bin:$PATH
ngx-releng > check.txt || true
lines=$(wc -l check.txt | awk '{print $1}')
if [ "$lines" -gt 5 ]; then cat check.txt; exit 1; fi
Expand All @@ -272,7 +274,7 @@ jobs:
- name: Run tests
run: |
export LD_LIBRARY_PATH=$LUAJIT_LIB:$PWD/mockeagain:$LD_LIBRARY_PATH
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl-h3/bin:$PATH
export PATH=$PWD/work/nginx/sbin:$PWD/openresty-devel-utils:/opt/curl/bin:$PATH
export LD_PRELOAD=$PWD/mockeagain/mockeagain.so
export TEST_NGINX_HTTP3_CRT=$PWD/t/cert/http3/http3.crt
export TEST_NGINX_HTTP3_KEY=$PWD/t/cert/http3/http3.key
Expand Down
5 changes: 2 additions & 3 deletions t/005-exit.t
Original file line number Diff line number Diff line change
Expand Up @@ -783,7 +783,7 @@ GET /t
--- no_error_log
[error]
--- curl_error
curl: (95) HTTP/3 stream 0 reset by server
curl: (95) HTTP/3 stream 0 reset by server (error 0x102 INTERNAL_ERROR)



Expand All @@ -802,8 +802,7 @@ GET /t
--- no_error_log
[error]
--- curl_error
curl: (95) HTTP/3 stream 0 reset by server

curl: (95) HTTP/3 stream 0 reset by server (error 0x102 INTERNAL_ERROR)


=== TEST 29: refuses NGX_AGAIN
Expand Down
2 changes: 1 addition & 1 deletion t/033-ctx.t
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@ GET /t
--- error_log
ngx.ctx = 32
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down
44 changes: 22 additions & 22 deletions t/041-header-filter.t
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ GET /read
--- error_code
--- response_body
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down Expand Up @@ -469,7 +469,7 @@ failed to run header_filter_by_lua*: header_filter_by_lua(nginx.conf:47):2: Some
--- no_error_log
[alert]
--- curl_error eval
qr/curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(28\) Remote peer returned unexpected data|curl: \(52\) Empty reply from server|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(56\) ngtcp2_conn_writev_stream returned error: ERR_CLOSING|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(28\) Remote peer returned unexpected data|curl: \(52\) Empty reply from server|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -494,7 +494,7 @@ failed to run header_filter_by_lua*: unknown reason
--- no_error_log
[alert]
--- curl_error eval
qr/curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(28\) Remote peer returned unexpected data|curl: \(52\) Empty reply from server|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(56\) ngtcp2_conn_writev_stream returned error: ERR_CLOSING|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(28\) Remote peer returned unexpected data|curl: \(52\) Empty reply from server|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -510,7 +510,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -526,7 +526,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -542,7 +542,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -558,7 +558,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -574,7 +574,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -594,7 +594,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -614,7 +614,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -630,7 +630,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -646,7 +646,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -662,7 +662,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down Expand Up @@ -696,7 +696,7 @@ GET /lua
--- error_log eval
qr/API disabled in the context of header_filter_by_lua\*|http3 requests are not supported without content-length header/ms
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -720,7 +720,7 @@ if (defined $ENV{TEST_NGINX_USE_HTTP3}) {

$err_log;
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -736,7 +736,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -752,7 +752,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down Expand Up @@ -801,7 +801,7 @@ in function 'error'
in function 'bar'
in function 'foo'
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand All @@ -821,7 +821,7 @@ GET /lua?a=1&b=2
--- error_log eval
qr/failed to load external Lua file ".*?test2\.lua": cannot open .*? No such file or directory/
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down Expand Up @@ -870,7 +870,7 @@ failed to load inlined Lua code: header_filter_by_lua(nginx.conf:41):2: unexpect
--- no_error_log
no_such_error
--- curl_error eval
qr/curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly: INTERNAL_ERROR \(err 2\)/
qr/curl: \(56\) ngtcp2_conn_writev_stream returned error: ERR_CLOSING|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)/



Expand Down Expand Up @@ -901,7 +901,7 @@ failed to load inlined Lua code: header_filter_by_lua(nginx.conf:49):2: unexpect
--- no_error_log
no_such_error
--- curl_error eval
qr/curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly: INTERNAL_ERROR \(err 2\)/
qr/curl: \(56\) ngtcp2_conn_writev_stream returned error: ERR_CLOSING|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)/



Expand All @@ -927,4 +927,4 @@ failed to load inlined Lua code: header_filter_by_lua(...90123456789012345678901
--- no_error_log
[alert]
--- curl_error eval
qr/curl: \(56\) Failure when receiving data from the peer|curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly: INTERNAL_ERROR \(err 2\)/
qr/curl: \(56\) ngtcp2_conn_writev_stream returned error: ERR_CLOSING|curl: \(56\) Failure when receiving data from the peer|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)/
4 changes: 2 additions & 2 deletions t/091-coroutine.t
Original file line number Diff line number Diff line change
Expand Up @@ -763,7 +763,7 @@ GET /lua
--- error_log
API disabled in the context of header_filter_by_lua*
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down Expand Up @@ -1701,7 +1701,7 @@ GET /t
"in function 'co'"
]
--- curl_error eval
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 was not closed cleanly|curl: \(95\) HTTP\/3 stream 0 reset by server/
qr/curl: \(52\) Empty reply from server|curl: \(92\) HTTP\/2 stream 1 reset by server \(error 0x2 INTERNAL_ERROR\)|curl: \(95\) HTTP\/3 stream 0 reset by server/



Expand Down
2 changes: 1 addition & 1 deletion t/166-ssl-client-hello.t
Original file line number Diff line number Diff line change
Expand Up @@ -3437,7 +3437,7 @@ qr/test completed/,
GET /t
--- ignore_response
--- curl_error eval
qr/Connection time/
qr/Failed to connect to .* port .* after .* ms: Could not connect to server/
--- grep_error_log eval: qr/(client hello: cosocket test start|client hello: received memc reply: VERSION|client hello: cosocket test done|cert by: test start)/
--- grep_error_log_out eval
[
Expand Down
Loading