author | Kim Alvefur <zash@zash.se> |
Tue, 24 Nov 2015 19:26:27 +0100 | |
changeset 6943 | 2be5e19485aa |
parent 6942 | a9ae0c6ac4f4 |
child 6944 | 33fbc835697d |
permissions | -rw-r--r-- |
6942
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
1 |
local logger = require "util.logger"; |
6940 | 2 |
|
3 |
local function new_session(typ) |
|
4 |
local session = { |
|
5 |
type = typ .. "_unauthed"; |
|
6 |
}; |
|
7 |
return session; |
|
8 |
end |
|
9 |
||
6941
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
10 |
local function set_id(session) |
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
11 |
local id = typ .. tostring(session):match("%x+$"):lower(); |
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
12 |
session.id = id; |
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
13 |
return session; |
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
14 |
end |
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
15 |
|
6942
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
16 |
local function set_logger(session) |
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
17 |
local log = logger.init(id); |
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
18 |
session.log = log; |
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
19 |
return session; |
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
20 |
end |
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
21 |
|
6943
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
22 |
local function set_conn(session, conn) |
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
23 |
session.conn = conn; |
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
24 |
session.ip = conn:ip(); |
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
25 |
return session; |
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
26 |
end |
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
27 |
|
6940 | 28 |
return { |
29 |
new = new_session; |
|
6941
9df70e9e006b
util.session: What is the identity of a session?
Kim Alvefur <zash@zash.se>
parents:
6940
diff
changeset
|
30 |
set_id = set_id; |
6942
a9ae0c6ac4f4
util.session: What does the session say?
Kim Alvefur <zash@zash.se>
parents:
6941
diff
changeset
|
31 |
set_logger = set_logger; |
6943
2be5e19485aa
util.session: How does a session relate do a connection?
Kim Alvefur <zash@zash.se>
parents:
6942
diff
changeset
|
32 |
set_conn = set_conn; |
6940 | 33 |
} |