Skip to content

Commit 0c43ea9

Browse files
committed
check master key after importing the cached session
1 parent 6c49aca commit 0c43ea9

File tree

1 file changed

+27
-7
lines changed

1 file changed

+27
-7
lines changed

tests/test_ssl.py

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2200,20 +2200,40 @@ def test_session_success(self):
22002200
b"\xa7\x9c\xcd\x9b\x87\xbb\xb3\xdc\xf6\x76\x70\xf9\xc0\xdd\xf4\xef"
22012201
)
22022202

2203+
master_key = (
2204+
b"\x0f\xb2\x51\xe3\x15\x60\x2d\xef\x6e\x6d\xd2\x94\x2d\xe5\x37\x96"
2205+
b"\x72\xfa\xce\xb0\x39\xcc\x8d\xdf\xab\x32\xcc\x75\x0c\x66\xf9\xfd"
2206+
b"\xef\xbc\xc6\x2a\x8f\x9c\x35\x16\xfd\x4d\x38\xd9\xf9\xeb\x1d\xe4"
2207+
)
2208+
22032209
session_data = (
2204-
b"\x30\x71\x02\x01\x01\x02\x02\x03\x03\x04\x02\xc0\x30\x04\x20" +
2205-
session_id +
2206-
b"\x04\x30\x0f\xb2\x51\xe3\x15\x60\x2d\xef\x6e\x6d\xd2\x94\x2d\xe5" +
2207-
b"\x37\x96\x72\xfa\xce\xb0\x39\xcc\x8d\xdf\xab\x32\xcc\x75\x0c\x66" +
2208-
b"\xf9\xfd\xef\xbc\xc6\x2a\x8f\x9c\x35\x16\xfd\x4d\x38\xd9\xf9\xeb" +
2209-
b"\x1d\xe4\xa1\x06\x02\x04\x66\xec\x4c\x2d\xa2\x04\x02\x02\x02\x58" +
2210-
b"\xa4\x02\x04\x00"
2210+
# sequence length=0x71
2211+
b"\x30\x71"
2212+
# integer (version)
2213+
b"\x02\x01\x01"
2214+
# integer (SSL version)
2215+
b"\x02\x02\x03\x03"
2216+
# octet-string (cipher suite)
2217+
b"\x04\x02\xc0\x30"
2218+
# octet-string length=0x20 (session id)
2219+
b"\x04\x20" + session_id +
2220+
# octet-string length=0x30 (master secret)
2221+
b"\x04\x30" + master_key +
2222+
# application (1), integer (time)
2223+
b"\xa1\x06\x02\x04" + b"\x66\xec\x4c\x2d" +
2224+
# application (2), integer (timeout)
2225+
b"\xa2\x04\x02\x02" + b"\x02\x58" +
2226+
# application (4), octet-string (session id context)
2227+
b"\xa4\x02\x04" + b"\x00"
22112228
)
22122229
serverSocket, clientSocket = socket_pair()
22132230

22142231
client = loopback_client_factory(clientSocket, session_data=session_data)
22152232
server = loopback_server_factory(serverSocket, session_data=session_data)
22162233

2234+
assert client.master_key() == master_key
2235+
assert server.master_key() == master_key
2236+
22172237
handshake(client, server)
22182238

22192239
client.send(b"hello world")

0 commit comments

Comments
 (0)