Mercurial > hg > nginx-tests
comparison lib/Test/Nginx/HTTP2.pm @ 1218:24e175025ad8
Tests: minimal handling of HTTP/2 dynamic table size update.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 12 Sep 2017 05:34:31 +0300 |
parents | eb813f7e0bfa |
children | 0f0ad7acb314 |
comparison
equal
deleted
inserted
replaced
1217:7df2265e61be | 1218:24e175025ad8 |
---|---|
728 sub hunpack { | 728 sub hunpack { |
729 my ($ctx, $data, $length) = @_; | 729 my ($ctx, $data, $length) = @_; |
730 my $table = $ctx->{dynamic_decode}; | 730 my $table = $ctx->{dynamic_decode}; |
731 my %headers; | 731 my %headers; |
732 my $skip = 0; | 732 my $skip = 0; |
733 my ($index, $name, $value); | 733 my ($index, $name, $value, $size); |
734 | 734 |
735 my $field = sub { | 735 my $field = sub { |
736 my ($b) = @_; | 736 my ($b) = @_; |
737 my ($len, $s, $huff) = iunpack(7, @_); | 737 my ($len, $s, $huff) = iunpack(7, @_); |
738 | 738 |
780 ($value, $skip) = $field->($data, $skip); | 780 ($value, $skip) = $field->($data, $skip); |
781 | 781 |
782 $add->(\%headers, $name, $value); | 782 $add->(\%headers, $name, $value); |
783 next; | 783 next; |
784 } | 784 } |
785 | |
786 if (substr($ib, 0, 3) eq '001') { | |
787 ($size, $skip) = iunpack(5, $data, $skip); | |
788 | |
789 # TODO: handle dynamic table size update | |
790 | |
791 next; | |
792 } | |
793 | |
785 last; | 794 last; |
786 } | 795 } |
787 | 796 |
788 return \%headers; | 797 return \%headers; |
789 } | 798 } |