|
1 -- |
|
2 -- Public domain |
|
3 -- |
|
4 require("ssl") |
|
5 |
|
6 local pass = "foobar" |
|
7 local cfg = { |
|
8 protocol = "tlsv1", |
|
9 mode = "client", |
|
10 key = "key.pem", |
|
11 } |
|
12 |
|
13 -- Shell |
|
14 print(string.format("*** Hint: password is '%s' ***", pass)) |
|
15 ctx, err = ssl.newcontext(cfg) |
|
16 assert(ctx, err) |
|
17 print("Shell: ok") |
|
18 |
|
19 -- Text password |
|
20 cfg.password = pass |
|
21 ctx, err = ssl.newcontext(cfg) |
|
22 assert(ctx, err) |
|
23 print("Text: ok") |
|
24 |
|
25 -- Callback |
|
26 cfg.password = function() return pass end |
|
27 ctx, err = ssl.newcontext(cfg) |
|
28 assert(ctx, err) |
|
29 print("Callback: ok") |