Skip to content

Commit e0328d0

Browse files
committed
Tests: adapted session reuse tests to work with TLSv1.3.
In TLSv1.3, session tickets are sent after the handshake, and saving session right after the handshake is not going to work. To properly test session resumption, sessions are now saved after some data exchange.
1 parent f6826fc commit e0328d0

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

mail_ssl.t

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,24 +182,28 @@ $s->check(qr/\+ VXNlcm5hbWU6/, 'login');
182182
my ($ssl, $ses);
183183

184184
($s, $ssl) = get_ssl_socket(8145);
185+
Net::SSLeay::read($ssl);
185186
$ses = Net::SSLeay::get_session($ssl);
186187

187188
($s, $ssl) = get_ssl_socket(8145, $ses);
188189
is(Net::SSLeay::session_reused($ssl), 1, 'builtin session reused');
189190

190191
($s, $ssl) = get_ssl_socket(8146);
192+
Net::SSLeay::read($ssl);
191193
$ses = Net::SSLeay::get_session($ssl);
192194

193195
($s, $ssl) = get_ssl_socket(8146, $ses);
194196
is(Net::SSLeay::session_reused($ssl), 0, 'session not reused');
195197

196198
($s, $ssl) = get_ssl_socket(8147);
199+
Net::SSLeay::read($ssl);
197200
$ses = Net::SSLeay::get_session($ssl);
198201

199202
($s, $ssl) = get_ssl_socket(8147, $ses);
200203
is(Net::SSLeay::session_reused($ssl), 1, 'builtin size session reused');
201204

202205
($s, $ssl) = get_ssl_socket(8148);
206+
Net::SSLeay::read($ssl);
203207
$ses = Net::SSLeay::get_session($ssl);
204208

205209
($s, $ssl) = get_ssl_socket(8148, $ses);

stream_ssl.t

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,24 +147,32 @@ like(Net::SSLeay::read($ssl), qr/200 OK/, 'ssl');
147147
# ssl_session_cache
148148

149149
($s, $ssl) = get_ssl_socket(port(8080));
150+
Net::SSLeay::write($ssl, "GET / HTTP/1.0$CRLF$CRLF");
151+
Net::SSLeay::read($ssl);
150152
$ses = Net::SSLeay::get_session($ssl);
151153

152154
($s, $ssl) = get_ssl_socket(port(8080), $ses);
153155
is(Net::SSLeay::session_reused($ssl), 1, 'builtin session reused');
154156

155157
($s, $ssl) = get_ssl_socket(port(8082));
158+
Net::SSLeay::write($ssl, "GET / HTTP/1.0$CRLF$CRLF");
159+
Net::SSLeay::read($ssl);
156160
$ses = Net::SSLeay::get_session($ssl);
157161

158162
($s, $ssl) = get_ssl_socket(port(8082), $ses);
159163
isnt(Net::SSLeay::session_reused($ssl), 1, 'session not reused');
160164

161165
($s, $ssl) = get_ssl_socket(port(8083));
166+
Net::SSLeay::write($ssl, "GET / HTTP/1.0$CRLF$CRLF");
167+
Net::SSLeay::read($ssl);
162168
$ses = Net::SSLeay::get_session($ssl);
163169

164170
($s, $ssl) = get_ssl_socket(port(8083), $ses);
165171
is(Net::SSLeay::session_reused($ssl), 1, 'builtin size session reused');
166172

167173
($s, $ssl) = get_ssl_socket(port(8084));
174+
Net::SSLeay::write($ssl, "GET / HTTP/1.0$CRLF$CRLF");
175+
Net::SSLeay::read($ssl);
168176
$ses = Net::SSLeay::get_session($ssl);
169177

170178
($s, $ssl) = get_ssl_socket(port(8084), $ses);

0 commit comments

Comments
 (0)