annotate uwsgi_ssl.t @ 1940:aec72dcee93b

Tests: unconditional QUIC datagram expansion with Initial packets. Used to get rid of "quic UDP datagram is too small for initial packet" messages. In future, we may need this to reconsider to allow mocking with custom padding, but for now suppressing such messages is sufficiently good enough.
author Sergey Kandaurov <pluknet@nginx.com>
date Mon, 11 Dec 2023 14:01:49 +0400
parents 1b9f21836f57
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1575
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1 #!/usr/bin/perl
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 # (C) Maxim Dounin
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4 # (C) Nginx, Inc.
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6 # Test for uwsgi backend with SSL.
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8 ###############################################################################
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
10 use warnings;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
11 use strict;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
12
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
13 use Test::More;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14 use Socket qw/ CRLF /;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
15
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16 BEGIN { use FindBin; chdir($FindBin::Bin); }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
18 use lib 'lib';
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
19 use Test::Nginx;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
21 ###############################################################################
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
22
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
23 select STDERR; $| = 1;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
24 select STDOUT; $| = 1;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
25
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
26 my $t = Test::Nginx->new()->has(qw/http uwsgi http_ssl/)
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27 ->has_daemon('uwsgi')->has_daemon('openssl')->plan(7)
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28 ->write_file_expand('nginx.conf', <<'EOF');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30 %%TEST_GLOBALS%%
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
31
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32 daemon off;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 events {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
35 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
36
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
37 http {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
38 %%TEST_GLOBALS_HTTP%%
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
40 upstream u {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
41 server 127.0.0.1:8081;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44 server {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 listen 127.0.0.1:8080;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
46 server_name localhost;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
47
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
48 location / {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
49 uwsgi_pass suwsgi://127.0.0.1:8081;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
50 uwsgi_param SERVER_PROTOCOL $server_protocol;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
51 uwsgi_param HTTP_X_BLAH "blah";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
52 uwsgi_pass_request_body off;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
53 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
54
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
55 location /var {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
56 uwsgi_pass suwsgi://$arg_b;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
57 uwsgi_param SERVER_PROTOCOL $server_protocol;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
58 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
59 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
60 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
61
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
62 EOF
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
63
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
64 $t->write_file('openssl.conf', <<EOF);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
65 [ req ]
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
66 default_bits = 2048
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
67 encrypt_key = no
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
68 distinguished_name = req_distinguished_name
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
69 [ req_distinguished_name ]
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
70 EOF
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
71
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
72 my $d = $t->testdir();
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
73 my $crt = "$d/uwsgi.crt";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
74 my $key = "$d/uwsgi.key";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
75
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
76 foreach my $name ('uwsgi') {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
77 system('openssl req -x509 -new '
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
78 . "-config $d/openssl.conf -subj /CN=$name/ "
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
79 . "-out $d/$name.crt -keyout $d/$name.key "
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
80 . ">>$d/openssl.out 2>&1") == 0
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
81 or die "Can't create certificate for $name: $!\n";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
82 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
83
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
84 $t->write_file('uwsgi_test_app.py', <<END);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
85
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
86 def application(env, start_response):
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
87 start_response('200 OK', [('Content-Type','text/plain')])
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
88 return b"SEE-THIS"
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
89
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
90 END
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
91
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
92 my $uwsgihelp = `uwsgi -h`;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
93 my @uwsgiopts = ();
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
94
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
95 if ($uwsgihelp !~ /--wsgi-file/) {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
96 # uwsgi has no python support, maybe plugin load is necessary
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
97 push @uwsgiopts, '--plugin', 'python';
1598
f069dd7ba5a7 Tests: compatibility with uwsgi python package on Fedora Linux.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1575
diff changeset
98 push @uwsgiopts, '--plugin', 'python3';
1575
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
99 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
100
1923
1b9f21836f57 Tests: enabled TLSv1 in uwsgi SSL tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1693
diff changeset
101 if ($uwsgihelp =~ /--ssl-enable-tlsv1/) {
1b9f21836f57 Tests: enabled TLSv1 in uwsgi SSL tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1693
diff changeset
102 # uwsgi disables TLSv1 by default since 2.0.17.1
1b9f21836f57 Tests: enabled TLSv1 in uwsgi SSL tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1693
diff changeset
103 push @uwsgiopts, '--ssl-enable-tlsv1';
1b9f21836f57 Tests: enabled TLSv1 in uwsgi SSL tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1693
diff changeset
104 }
1b9f21836f57 Tests: enabled TLSv1 in uwsgi SSL tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1693
diff changeset
105
1598
f069dd7ba5a7 Tests: compatibility with uwsgi python package on Fedora Linux.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1575
diff changeset
106 open OLDERR, ">&", \*STDERR; close STDERR;
1575
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
107 $t->run_daemon('uwsgi', @uwsgiopts,
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
108 '--ssl-socket', '127.0.0.1:' . port(8081) . ",$crt,$key",
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
109 '--wsgi-file', $d . '/uwsgi_test_app.py',
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
110 '--logto', $d . '/uwsgi_log');
1598
f069dd7ba5a7 Tests: compatibility with uwsgi python package on Fedora Linux.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1575
diff changeset
111 open STDERR, ">&", \*OLDERR;
1575
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
112
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
113 $t->run();
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
114
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
115 $t->waitforsocket('127.0.0.1:' . port(8081))
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
116 or die "Can't start uwsgi";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
117
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
118 ###############################################################################
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
119
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
120 like(http_get('/'), qr/SEE-THIS/, 'uwsgi request');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
121 like(http_head('/head'), qr/200 OK(?!.*SEE-THIS)/s, 'no data in HEAD');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
122
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
123 like(http_get_headers('/headers'), qr/SEE-THIS/,
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
124 'uwsgi request with many ignored headers');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
125
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
126 like(http_get('/var?b=127.0.0.1:' . port(8081)), qr/SEE-THIS/,
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
127 'uwsgi with variables');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
128 like(http_get('/var?b=u'), qr/SEE-THIS/, 'uwsgi with variables to upstream');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
129
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
130 like(http_post('/'), qr/SEE-THIS/, 'uwsgi post');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
131 like(http_post_big('/'), qr/SEE-THIS/, 'uwsgi big post');
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
132
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
133 ###############################################################################
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
134
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
135 sub http_get_headers {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
136 my ($url, %extra) = @_;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
137 return http(<<EOF, %extra);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
138 GET $url HTTP/1.0
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
139 Host: localhost
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
140 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
141 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
142 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
143 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
144 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
145 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
146 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
147 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
148 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
149 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
150 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
151 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
152 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
153 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
154 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
155 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
156 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
157 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
158 X-Blah: ignored header
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
159
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
160 EOF
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
161 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
162
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
163 sub http_post {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
164 my ($url, %extra) = @_;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
165
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
166 my $p = "POST $url HTTP/1.0" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
167 "Host: localhost" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
168 "Content-Length: 10" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
169 CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
170 "1234567890";
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
171
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
172 return http($p, %extra);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
173 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
174
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
175 sub http_post_big {
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
176 my ($url, %extra) = @_;
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
177
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
178 my $p = "POST $url HTTP/1.0" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
179 "Host: localhost" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
180 "Content-Length: 10240" . CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
181 CRLF .
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
182 ("1234567890" x 1024);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
183
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
184 return http($p, %extra);
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
185 }
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
186
577e72267fec Tests: uwsgi tests with SSL.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
187 ###############################################################################