annotate proxy_protocol2_server.t @ 1619:436d0ffc2ea3

Tests: correctly shutdown ssl for reproducible session reuse tests. Previously, session reuse tests in stream_ssl_certificate.t were prone to testing errors, since the client doesn't write any application data before closing a connection, which is done so to pass tests on win32. In this case, the server may happened to get an unexpected eof meaning that it will abandon that session. This is specific to stream testing pattern, changes to ssl_certificate.t are applied too for consistency. This is also specific to SSL_R_UNEXPECTED_EOF_WHILE_READING, which is implemented in OpenSSL 3.0.0.
author Sergey Kandaurov <pluknet@nginx.com>
date Mon, 23 Nov 2020 22:46:06 +0000
parents 7676944968c1
children 5ac6efbe5552
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1527
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
1 #!/usr/bin/perl
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
2
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
3 # (C) Sergey Kandaurov
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
4 # (C) Nginx, Inc.
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
5
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
6 # Tests for haproxy protocol.
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
7
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
8 ###############################################################################
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
9
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
10 use warnings;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
11 use strict;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
12
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
13 use Test::More;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
14
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
15 BEGIN { use FindBin; chdir($FindBin::Bin); }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
16
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
17 use lib 'lib';
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
18 use Test::Nginx;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
19
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
20 ###############################################################################
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
21
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
22 select STDERR; $| = 1;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
23 select STDOUT; $| = 1;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
24
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
25 my $t = Test::Nginx->new()->has(qw/http access realip/);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
26
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
27 $t->write_file_expand('nginx.conf', <<'EOF');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
28
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
29 %%TEST_GLOBALS%%
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
30
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
31 daemon off;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
32
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
33 events {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
34 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
35
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
36 http {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
37 %%TEST_GLOBALS_HTTP%%
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
38
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
39 log_format pp $remote_addr:$remote_port;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
40
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
41 add_header X-IP $remote_addr!$remote_port;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
42 add_header X-PP $proxy_protocol_addr!$proxy_protocol_port;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
43 add_header X-PPS $proxy_protocol_server_addr!$proxy_protocol_server_port;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
44
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
45 server {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
46 listen 127.0.0.1:8080 proxy_protocol;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
47 server_name localhost;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
48
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
49 set_real_ip_from 127.0.0.1/32;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
50
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
51 location /pp {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
52 real_ip_header proxy_protocol;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
53 error_page 404 =200 /t1;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
54
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
55 location /pp_4 {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
56 deny 192.0.2.1/32;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
57 access_log %%TESTDIR%%/pp4.log pp;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
58 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
59
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
60 location /pp_6 {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
61 deny 2001:DB8::1/128;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
62 access_log %%TESTDIR%%/pp6.log pp;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
63 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
64 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
65
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
66 location / { }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
67 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
68 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
69
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
70 EOF
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
71
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
72 $t->write_file('t1', 'SEE-THIS');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
73 $t->try_run('no proxy_protocol_server_addr')->plan(28);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
74
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
75 ###############################################################################
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
76
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
77 my $p = pack("N3C", 0x0D0A0D0A, 0x000D0A51, 0x5549540A, 0x21);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
78 my $tcp4 = $p . pack("CnN2n2", 0x11, 12, 0xc0000201, 0xc0000202, 123, 567);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
79 my $tcp6 = $p . pack("CnNx8NNx8Nn2", 0x21, 36,
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
80 0x20010db8, 0x00000001, 0x20010db8, 0x00000002, 123, 567);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
81 my $tlv = $p . pack("CnN2n2x9", 0x11, 21, 0xc0000201, 0xc0000202, 123, 567);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
82 my $unk1 = $p . pack("Cxx", 0x01);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
83 my $unk2 = $p . pack("CnC4", 0x41, 4, 1, 2, 3, 4);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
84 my $r;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
85
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
86 # no realip, just PROXY header parsing
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
87
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
88 $r = pp_get('/t1', $tcp4);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
89 like($r, qr/SEE-THIS/, 'tcp4 request');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
90 like($r, qr/X-PP: 192.0.2.1!123\x0d/, 'tcp4 proxy');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
91 like($r, qr/X-PPS: 192.0.2.2!567\x0d/, 'tcp4 proxy server');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
92 unlike($r, qr/X-IP: (192.0.2.1|[^!]+!123\x0d)/, 'tcp4 client');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
93
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
94 $r = pp_get('/t1', $tcp6);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
95 like($r, qr/SEE-THIS/, 'tcp6 request');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
96 like($r, qr/X-PP: 2001:DB8::1!123\x0d/i, 'tcp6 proxy');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
97 like($r, qr/X-PPS: 2001:DB8::2!567\x0d/i, 'tcp6 proxy server');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
98 unlike($r, qr/X-IP: (2001:DB8::1|[^!]+!123\x0d)/i, 'tcp6 client');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
99
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
100 $r = pp_get('/t1', $tlv);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
101 like($r, qr/SEE-THIS/, 'tlv request');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
102 like($r, qr/X-PP: 192.0.2.1!123\x0d/, 'tlv proxy');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
103 like($r, qr/X-PPS: 192.0.2.2!567\x0d/, 'tlv proxy server');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
104 unlike($r, qr/X-IP: (192.0.2.1|[^!]+!123\x0d)/, 'tlv client');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
105
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
106 $r = pp_get('/t1', $unk1);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
107 like($r, qr/SEE-THIS/, 'unknown request 1');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
108 like($r, qr/X-PP: !\x0d/, 'unknown proxy 1');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
109 like($r, qr/X-PPS: !\x0d/, 'unknown proxy server 1');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
110
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
111 $r = pp_get('/t1', $unk2);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
112 like($r, qr/SEE-THIS/, 'unknown request 2');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
113 like($r, qr/X-PP: !\x0d/, 'unknown proxy 2');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
114 like($r, qr/X-PPS: !\x0d/, 'unknown proxy server 2');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
115
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
116 # realip
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
117
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
118 $r = pp_get('/pp', $tcp4);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
119 like($r, qr/SEE-THIS/, 'tcp4 request realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
120 like($r, qr/X-PP: 192.0.2.1!123\x0d/, 'tcp4 proxy realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
121 like($r, qr/X-IP: 192.0.2.1!123\x0d/, 'tcp4 client realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
122
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
123 $r = pp_get('/pp', $tcp6);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
124 like($r, qr/SEE-THIS/, 'tcp6 request realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
125 like($r, qr/X-PP: 2001:DB8::1!123\x0d/i, 'tcp6 proxy realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
126 like($r, qr/X-IP: 2001:DB8::1!123\x0d/i, 'tcp6 client realip');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
127
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
128 # access
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
129
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
130 $r = pp_get('/pp_4', $tcp4);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
131 like($r, qr/403 Forbidden/, 'tcp4 access');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
132
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
133 $r = pp_get('/pp_6', $tcp6);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
134 like($r, qr/403 Forbidden/, 'tcp6 access');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
135
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
136 # client address in access.log
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
137
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
138 $t->stop();
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
139
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
140 is($t->read_file('pp4.log'), "192.0.2.1:123\n", 'tcp4 log');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
141 is($t->read_file('pp6.log'), "2001:db8::1:123\n", 'tcp6 log');
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
142
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
143 ###############################################################################
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
144
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
145 sub pp_get {
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
146 my ($url, $proxy) = @_;
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
147 return http($proxy . <<EOF);
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
148 GET $url HTTP/1.0
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
149 Host: localhost
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
150
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
151 EOF
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
152 }
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
153
7676944968c1 Tests: proxy protocol server variables.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
154 ###############################################################################