Mercurial > hg > nginx-tests
annotate proxy_ssl_certificate_vars.t @ 1851:0351dee227a8
Tests: unbreak tests with dynamic certificates on stable.
In 74cffa9d4c43, ticket based session reuse is enabled in addition to
using a shared SSL session cache. This changed how a session can be
resumed in a different server:
- for a session ID based resumption, it is resumed in the same context
- when using session tickets, a key name is also checked for matching
- with a ticket callback, this is skipped in favor of callback's logic
This makes 'session id context match' tests fail with session tickets
on stable since ticket key names are unique in distinct SSL contexts.
On the other hand, tests pass on 1.23.2+ due to automatic ticket keys
rotation that installs ticket callback, and using a common shared SSL
session cache.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Tue, 28 Mar 2023 01:36:32 +0400 |
parents | 55816c5fc861 |
children | 2a0a6035a1af |
rev | line source |
---|---|
1674
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
2 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
3 # (C) Sergey Kandaurov |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
4 # (C) Nginx, Inc. |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
5 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
6 # Tests for http proxy module with variables in ssl certificates. |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
7 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
8 ############################################################################### |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
9 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
10 use warnings; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
11 use strict; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
12 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
13 use Test::More; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
14 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
15 BEGIN { use FindBin; chdir($FindBin::Bin); } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
16 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
17 use lib 'lib'; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
18 use Test::Nginx; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
19 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
20 ############################################################################### |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
21 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
22 select STDERR; $| = 1; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
23 select STDOUT; $| = 1; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
24 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
25 my $t = Test::Nginx->new()->has(qw/http http_ssl proxy/) |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
26 ->has_daemon('openssl'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
27 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
28 $t->write_file_expand('nginx.conf', <<'EOF'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
29 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
30 %%TEST_GLOBALS%% |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
31 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
32 daemon off; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
33 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
34 events { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
35 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
36 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
37 http { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
38 %%TEST_GLOBALS_HTTP%% |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
39 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
40 server { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
41 listen 127.0.0.1:8080; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
42 server_name localhost; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
43 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
44 proxy_ssl_session_reuse off; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
45 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
46 location / { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
47 proxy_pass https://127.0.0.1:8081/; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
48 proxy_ssl_certificate $arg_cert.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
49 proxy_ssl_certificate_key $arg_cert.example.com.key; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
50 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
51 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
52 location /encrypted { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
53 proxy_pass https://127.0.0.1:8082/; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
54 proxy_ssl_certificate $arg_cert.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
55 proxy_ssl_certificate_key $arg_cert.example.com.key; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
56 proxy_ssl_password_file password; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
57 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
58 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
59 location /none { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
60 proxy_pass https://127.0.0.1:8082/; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
61 proxy_ssl_certificate $arg_cert; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
62 proxy_ssl_certificate_key $arg_cert; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
63 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
64 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
65 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
66 server { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
67 listen 127.0.0.1:8081 ssl; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
68 server_name localhost; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
69 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
70 ssl_certificate 2.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
71 ssl_certificate_key 2.example.com.key; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
72 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
73 ssl_verify_client optional_no_ca; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
74 ssl_trusted_certificate 1.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
75 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
76 location / { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
77 add_header X-Verify $ssl_client_verify; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
78 add_header X-Name $ssl_client_s_dn; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
79 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
80 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
81 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
82 server { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
83 listen 127.0.0.1:8082 ssl; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
84 server_name localhost; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
85 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
86 ssl_certificate 1.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
87 ssl_certificate_key 1.example.com.key; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
88 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
89 ssl_verify_client optional_no_ca; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
90 ssl_trusted_certificate 3.example.com.crt; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
91 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
92 location / { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
93 add_header X-Verify $ssl_client_verify; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
94 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
95 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
96 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
97 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
98 EOF |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
99 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
100 $t->write_file('openssl.conf', <<EOF); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
101 [ req ] |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
102 default_bits = 2048 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
103 encrypt_key = no |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
104 distinguished_name = req_distinguished_name |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
105 [ req_distinguished_name ] |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
106 EOF |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
107 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
108 my $d = $t->testdir(); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
109 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
110 foreach my $name ('1.example.com', '2.example.com') { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
111 system('openssl req -x509 -new ' |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
112 . "-config $d/openssl.conf -subj /CN=$name/ " |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
113 . "-out $d/$name.crt -keyout $d/$name.key " |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
114 . ">>$d/openssl.out 2>&1") == 0 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
115 or die "Can't create certificate for $name: $!\n"; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
116 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
117 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
118 foreach my $name ('3.example.com') { |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
119 system("openssl genrsa -out $d/$name.key -passout pass:$name " |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
120 . "-aes128 2048 >>$d/openssl.out 2>&1") == 0 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
121 or die "Can't create private key: $!\n"; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
122 system('openssl req -x509 -new ' |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
123 . "-config $d/openssl.conf -subj /CN=$name/ " |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
124 . "-out $d/$name.crt " |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
125 . "-key $d/$name.key -passin pass:$name" |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
126 . ">>$d/openssl.out 2>&1") == 0 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
127 or die "Can't create certificate for $name: $!\n"; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
128 } |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
129 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
130 sleep 1 if $^O eq 'MSWin32'; |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
131 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
132 $t->write_file('password', '3.example.com'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
133 $t->write_file('index.html', ''); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
134 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
135 $t->try_run('no upstream ssl_certificate variables')->plan(4); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
136 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
137 ############################################################################### |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
138 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
139 like(http_get('/?cert=1'), |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
140 qr/X-Verify: SUCCESS/ms, 'variable - verify certificate'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
141 like(http_get('/?cert=2'), |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
142 qr/X-Verify: FAILED/ms, 'variable - fail certificate'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
143 like(http_get('/encrypted?cert=3'), |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
144 qr/X-Verify: SUCCESS/ms, 'variable - with encrypted key'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
145 like(http_get('/none'), |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
146 qr/X-Verify: NONE/ms, 'variable - no certificate'); |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
147 |
55816c5fc861
Tests: variables support in certificates to upstream.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
148 ############################################################################### |