Mercurial > hg > nginx-tests
comparison lib/Test/Nginx/HTTP3.pm @ 1926:0fb9ca9046bf
Tests: fixed variable-length encoding of QUIC Stream ID.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Mon, 14 Aug 2023 17:10:19 +0400 |
parents | a4f1cbd87f0d |
children | 55e0dee863e2 |
comparison
equal
deleted
inserted
replaced
1925:a4f1cbd87f0d | 1926:0fb9ca9046bf |
---|---|
1967 my ($self, $r, %extra) = @_; | 1967 my ($self, $r, %extra) = @_; |
1968 my $stream = $extra{start} ? 0xe : 0xf; | 1968 my $stream = $extra{start} ? 0xe : 0xf; |
1969 my $length = $extra{length} ? $extra{length} : build_int(length($r)); | 1969 my $length = $extra{length} ? $extra{length} : build_int(length($r)); |
1970 my $offset = build_int($extra{offset} ? $extra{offset} : 0); | 1970 my $offset = build_int($extra{offset} ? $extra{offset} : 0); |
1971 my $sid = defined $extra{sid} ? $extra{sid} : $self->{requests}++; | 1971 my $sid = defined $extra{sid} ? $extra{sid} : $self->{requests}++; |
1972 pack("CC", $stream, 4 * $sid) . $offset . $length . $r; | 1972 $sid = build_int(4 * $sid); |
1973 pack("C", $stream) . $sid . $offset . $length . $r; | |
1973 } | 1974 } |
1974 | 1975 |
1975 sub parse_int { | 1976 sub parse_int { |
1976 my ($buf) = @_; | 1977 my ($buf) = @_; |
1977 my $val = unpack("C", substr($buf, 0, 1)); | 1978 my $val = unpack("C", substr($buf, 0, 1)); |