Skip to content

Commit b14b0da

Browse files
doujiang24agentzh
authored andcommitted
tests: ssl_session_fetch/store_by_lua_* are now only allowed in http context.
Signed-off-by: Yichun Zhang (agentzh) <[email protected]>
1 parent 7ae24d3 commit b14b0da

File tree

2 files changed

+106
-106
lines changed

2 files changed

+106
-106
lines changed

t/ssl-session-fetch.t

Lines changed: 55 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ __DATA__
3131
=== TEST 1: get resume session id serialized
3232
--- http_config
3333
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
34+
ssl_session_fetch_by_lua_block {
35+
local ssl = require "ngx.ssl.session"
36+
local sid = ssl.get_session_id()
37+
print("session id: ", sid)
38+
}
3439
3540
server {
3641
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
3742
server_name test.com;
38-
ssl_session_fetch_by_lua_block {
39-
local ssl = require "ngx.ssl.session"
40-
local sid = ssl.get_session_id()
41-
print("session id: ", sid)
42-
}
4343
ssl_protocols SSLv3;
4444
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
4545
ssl_certificate_key $TEST_NGINX_CERT_DIR/cert/test.key;
@@ -112,21 +112,21 @@ qr/ssl_session_fetch_by_lua_block:4: session id: [a-fA-f\d]+/s,
112112
=== TEST 2: attempt to fetch new session in lua_ctx during resumption.
113113
--- http_config
114114
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
115+
ssl_session_fetch_by_lua_block {
116+
local ssl = require "ngx.ssl.session"
117+
local sess, err = ssl.get_serialized_session()
118+
if sess then
119+
print("session size: ", #sess)
120+
end
121+
122+
if err then
123+
print("get session error: ", err)
124+
end
125+
}
115126
116127
server {
117128
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
118129
server_name test.com;
119-
ssl_session_fetch_by_lua_block {
120-
local ssl = require "ngx.ssl.session"
121-
local sess, err = ssl.get_serialized_session()
122-
if sess then
123-
print("session size: ", #sess)
124-
end
125-
126-
if err then
127-
print("get session error: ", err)
128-
end
129-
}
130130
ssl_protocols SSLv3;
131131
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
132132
ssl_certificate_key $TEST_NGINX_CERT_DIR/cert/test.key;
@@ -203,32 +203,32 @@ Use a tmp file to store and resume session. This is for testing only.
203203
In practice, never store session in plaintext on persistent storage.
204204
--- http_config
205205
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
206+
ssl_session_store_by_lua_block {
207+
local ssl = require "ngx.ssl.session"
206208
207-
server {
208-
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
209-
server_name test.com;
210-
ssl_session_store_by_lua_block {
211-
local ssl = require "ngx.ssl.session"
209+
local sid = ssl.get_session_id()
210+
print("session id: ", sid)
211+
local sess = ssl.get_serialized_session()
212+
print("session size: ", #sess)
212213
213-
local sid = ssl.get_session_id()
214-
print("session id: ", sid)
215-
local sess = ssl.get_serialized_session()
216-
print("session size: ", #sess)
214+
local f = assert(io.open("t/servroot/html/session.tmp", "w"))
215+
f:write(sess)
216+
f:close()
217+
}
217218
218-
local f = assert(io.open("t/servroot/html/session.tmp", "w"))
219-
f:write(sess)
220-
f:close()
221-
}
219+
ssl_session_fetch_by_lua_block {
220+
local ssl = require "ngx.ssl.session"
221+
local sid = ssl.get_session_id()
222+
print("session id: ", sid)
223+
local f = assert(io.open("t/servroot/html/session.tmp"))
224+
local sess = f:read("*a")
225+
f:close()
226+
ssl.set_serialized_session(sess)
227+
}
222228
223-
ssl_session_fetch_by_lua_block {
224-
local ssl = require "ngx.ssl.session"
225-
local sid = ssl.get_session_id()
226-
print("session id: ", sid)
227-
local f = assert(io.open("t/servroot/html/session.tmp"))
228-
local sess = f:read("*a")
229-
f:close()
230-
ssl.set_serialized_session(sess)
231-
}
229+
server {
230+
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
231+
server_name test.com;
232232
233233
ssl_protocols SSLv3;
234234
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
@@ -304,27 +304,27 @@ Session resumption should fail, but the handshake should be
304304
able to carry on and negotiate a new session.
305305
--- http_config
306306
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
307+
ssl_session_store_by_lua_block {
308+
local ssl = require "ngx.ssl.session"
309+
310+
local sid = ssl.get_session_id()
311+
print("session id: ", sid)
312+
}
313+
314+
ssl_session_fetch_by_lua_block {
315+
local ssl = require "ngx.ssl.session"
316+
local sid = ssl.get_session_id()
317+
print("session id: ", sid)
318+
local sess = "==garbage data=="
319+
local ok, err = ssl.set_serialized_session(sess)
320+
if not ok or err then
321+
print("failed to resume session: ", err)
322+
end
323+
}
307324
308325
server {
309326
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
310327
server_name test.com;
311-
ssl_session_store_by_lua_block {
312-
local ssl = require "ngx.ssl.session"
313-
314-
local sid = ssl.get_session_id()
315-
print("session id: ", sid)
316-
}
317-
318-
ssl_session_fetch_by_lua_block {
319-
local ssl = require "ngx.ssl.session"
320-
local sid = ssl.get_session_id()
321-
print("session id: ", sid)
322-
local sess = "==garbage data=="
323-
local ok, err = ssl.set_serialized_session(sess)
324-
if not ok or err then
325-
print("failed to resume session: ", err)
326-
end
327-
}
328328
329329
ssl_protocols SSLv3;
330330
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;

t/ssl-session-store.t

Lines changed: 51 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ __DATA__
3131
=== TEST 1: get new session serialized
3232
--- http_config
3333
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
34+
ssl_session_store_by_lua_block {
35+
local ssl = require "ngx.ssl.session"
36+
local sess = ssl.get_serialized_session()
37+
print("session size: ", #sess)
38+
}
3439
3540
server {
3641
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
3742
server_name test.com;
38-
ssl_session_store_by_lua_block {
39-
local ssl = require "ngx.ssl.session"
40-
local sess = ssl.get_serialized_session()
41-
print("session size: ", #sess)
42-
}
4343
ssl_protocols SSLv3;
4444
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
4545
ssl_certificate_key $TEST_NGINX_CERT_DIR/cert/test.key;
@@ -103,15 +103,15 @@ qr/ssl_session_store_by_lua_block:4: session size: \d+/s
103103
=== TEST 2: get new session id serialized
104104
--- http_config
105105
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
106+
ssl_session_store_by_lua_block {
107+
local ssl = require "ngx.ssl.session"
108+
local sid = ssl.get_session_id()
109+
print("session id: ", sid)
110+
}
106111
107112
server {
108113
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
109114
server_name test.com;
110-
ssl_session_store_by_lua_block {
111-
local ssl = require "ngx.ssl.session"
112-
local sid = ssl.get_session_id()
113-
print("session id: ", sid)
114-
}
115115
ssl_protocols SSLv3;
116116
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
117117
ssl_certificate_key $TEST_NGINX_CERT_DIR/cert/test.key;
@@ -175,51 +175,51 @@ qr/ssl_session_store_by_lua_block:4: session id: [a-fA-f\d]+/s
175175
=== TEST 3: store the session via timer to memcached
176176
--- http_config
177177
lua_package_path "$TEST_NGINX_LUA_PACKAGE_PATH/?.lua;;";
178+
ssl_session_store_by_lua_block {
179+
local ssl = require "ngx.ssl.session"
180+
local function f(premature, key, value)
181+
local sock = ngx.socket.tcp()
182+
183+
sock:settimeout(5000)
184+
185+
local ok, err = sock:connect("127.0.0.1", $TEST_NGINX_MEMCACHED_PORT)
186+
if not ok then
187+
ngx.log(ngx.ERR, "failed to connect to memc: ", err)
188+
return
189+
end
190+
191+
local bytes, err = sock:send("set " .. key .. " 0 0 "
192+
.. tostring(#value) .. " \r\n"
193+
.. value .. "\r\n")
194+
if not bytes then
195+
ngx.log(ngx.ERR, "failed to send set command: ", err)
196+
return
197+
end
198+
199+
local res, err = sock:receive()
200+
if not res then
201+
ngx.log(ngx.ERR, "failed to receive memc reply: ", err)
202+
return
203+
end
204+
205+
print("received memc reply: ", res)
206+
end
207+
208+
local sid = ssl.get_session_id()
209+
print("session id: ", sid)
210+
local sess = ssl.get_serialized_session()
211+
print("session size: ", #sess)
212+
213+
local ok, err = ngx.timer.at(0, f, sid, sess)
214+
if not ok then
215+
ngx.log(ngx.ERR, "failed to create timer: ", err)
216+
return
217+
end
218+
}
178219
179220
server {
180221
listen unix:$TEST_NGINX_HTML_DIR/nginx.sock ssl;
181222
server_name test.com;
182-
ssl_session_store_by_lua_block {
183-
local ssl = require "ngx.ssl.session"
184-
local function f(premature, key, value)
185-
local sock = ngx.socket.tcp()
186-
187-
sock:settimeout(5000)
188-
189-
local ok, err = sock:connect("127.0.0.1", $TEST_NGINX_MEMCACHED_PORT)
190-
if not ok then
191-
ngx.log(ngx.ERR, "failed to connect to memc: ", err)
192-
return
193-
end
194-
195-
local bytes, err = sock:send("set " .. key .. " 0 0 "
196-
.. tostring(#value) .. " \r\n"
197-
.. value .. "\r\n")
198-
if not bytes then
199-
ngx.log(ngx.ERR, "failed to send set command: ", err)
200-
return
201-
end
202-
203-
local res, err = sock:receive()
204-
if not res then
205-
ngx.log(ngx.ERR, "failed to receive memc reply: ", err)
206-
return
207-
end
208-
209-
print("received memc reply: ", res)
210-
end
211-
212-
local sid = ssl.get_session_id()
213-
print("session id: ", sid)
214-
local sess = ssl.get_serialized_session()
215-
print("session size: ", #sess)
216-
217-
local ok, err = ngx.timer.at(0, f, sid, sess)
218-
if not ok then
219-
ngx.log(ngx.ERR, "failed to create timer: ", err)
220-
return
221-
end
222-
}
223223
ssl_protocols SSLv3;
224224
ssl_certificate $TEST_NGINX_CERT_DIR/cert/test.crt;
225225
ssl_certificate_key $TEST_NGINX_CERT_DIR/cert/test.key;

0 commit comments

Comments
 (0)