From be1c7e50e1e8809ea56f2c9d472eccd8ffd73a97 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 04:57:58 +0200 Subject: Adding upstream version 1.44.3. Signed-off-by: Daniel Baumann --- web/server/h2o/libh2o/t/80issues595.t | 42 +++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 web/server/h2o/libh2o/t/80issues595.t (limited to 'web/server/h2o/libh2o/t/80issues595.t') diff --git a/web/server/h2o/libh2o/t/80issues595.t b/web/server/h2o/libh2o/t/80issues595.t new file mode 100644 index 00000000..721e054e --- /dev/null +++ b/web/server/h2o/libh2o/t/80issues595.t @@ -0,0 +1,42 @@ +use strict; +use warnings; +use Test::More; +use t::Util; + +plan skip_all => 'nghttp not found' + unless prog_exists('nghttp'); + +my $server = spawn_h2o(<< "EOT"); +hosts: + default: + paths: + /: + file.dir: @{[DOC_ROOT]} +EOT + +subtest "trailing HEADERS" => sub { + my $doit = sub { + my ($proto, $opts, $port) = @_; + my $resp = `nghttp $opts -M 1 -m 3 -H ':method: GET' -d /dev/null --trailer 'foo: bar' '$proto://127.0.0.1:$port/'`; + is $resp, "hello\n" x 3, $proto; + }; + $doit->("http", "", $server->{port}); + $doit->("https", "", $server->{tls_port}); +}; + +subtest "trailing HEADERS with CONTINUATION" => sub { + my $doit = sub { + my ($proto, $opts, $port) = @_; + my $cmd = "nghttp $opts -M 1 -m 3 -H ':method: GET' -d /dev/null"; + $cmd .= join "", map { + " --trailer 'foo$_: 0123456789abcdef:$_'" + } 1..1000; + $cmd .= " '$proto://127.0.0.1:$port/'"; + my $resp = `$cmd`; + is $resp, "hello\n" x 3, $proto; + }; + $doit->("http", "", $server->{port}); + $doit->("https", "", $server->{tls_port}); +}; + +done_testing; -- cgit v1.2.3