comparison lib/Test/Nginx/HTTP2.pm @ 1181:eb813f7e0bfa

Tests: adjusted HTTP2.pm to send SETTINGS params in a given order.
author Sergey Kandaurov <pluknet@nginx.com>
date Tue, 06 Jun 2017 14:40:46 +0300
parents eedb96f717ff
children 24e175025ad8
comparison
equal deleted inserted replaced
1180:a69de1aba1ad 1181:eb813f7e0bfa
114 $stream = 0 unless defined $stream; 114 $stream = 0 unless defined $stream;
115 raw_write($self->{socket}, pack("x2C2xNN", 4, 0x8, $stream, $win)); 115 raw_write($self->{socket}, pack("x2C2xNN", 4, 0x8, $stream, $win));
116 } 116 }
117 117
118 sub h2_settings { 118 sub h2_settings {
119 my ($self, $ack, %extra) = @_; 119 my ($self, $ack, @pairs) = @_;
120 120
121 my $len = 6 * keys %extra; 121 my $len = 6 * @pairs / 2;
122 my $buf = pack_length($len) . pack "CCx4", 0x4, $ack ? 0x1 : 0x0; 122 my $buf = pack_length($len) . pack "CCx4", 0x4, $ack ? 0x1 : 0x0;
123 $buf .= join '', map { pack "nN", $_, $extra{$_} } keys %extra; 123 $buf .= pack "nN", splice @pairs, 0, 2 while @pairs;
124 raw_write($self->{socket}, $buf); 124 raw_write($self->{socket}, $buf);
125 } 125 }
126 126
127 sub h2_unknown { 127 sub h2_unknown {
128 my ($self, $payload) = @_; 128 my ($self, $payload) = @_;