Software /
code /
prosody-modules
Comparison
mod_s2s_auth_dane/mod_s2s_auth_dane.lua @ 1502:72ef98818b90
mod_s2s_auth_dane: Fix traceback caused by LuaSec not being loaded
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 14 Sep 2014 18:52:54 +0200 |
parent | 1437:161bbe0b9dd3 |
child | 1506:a40f9b8661d8 |
comparison
equal
deleted
inserted
replaced
1501:4b55110b0aa8 | 1502:72ef98818b90 |
---|---|
45 end | 45 end |
46 end | 46 end |
47 local use_map = { ["DANE-EE"] = 3; ["DANE-TA"] = 2; ["PKIX-EE"] = 1; ["PKIX-CA"] = 0 } | 47 local use_map = { ["DANE-EE"] = 3; ["DANE-TA"] = 2; ["PKIX-EE"] = 1; ["PKIX-CA"] = 0 } |
48 | 48 |
49 local implemented_uses = set.new { "DANE-EE", "PKIX-EE" }; | 49 local implemented_uses = set.new { "DANE-EE", "PKIX-EE" }; |
50 if debug.getregistry()["SSL:Certificate"].__index.issued then | 50 do |
51 -- Need cert:issued() for these | 51 local cert_mt = debug.getregistry()["SSL:Certificate"]; |
52 implemented_uses:add("DANE-TA"); | 52 if cert_mt and cert_mt.__index.issued then |
53 implemented_uses:add("PKIX-CA"); | 53 -- Need cert:issued() for these |
54 else | 54 implemented_uses:add("DANE-TA"); |
55 module:log("warn", "Unable to support DANE-TA and PKIX-CA"); | 55 implemented_uses:add("PKIX-CA"); |
56 else | |
57 module:log("warn", "Unable to support DANE-TA and PKIX-CA"); | |
58 end | |
56 end | 59 end |
57 local configured_uses = module:get_option_set("dane_uses", { "DANE-EE", "DANE-TA" }); | 60 local configured_uses = module:get_option_set("dane_uses", { "DANE-EE", "DANE-TA" }); |
58 local enabled_uses = set.intersection(implemented_uses, configured_uses) / function(use) return use_map[use] end; | 61 local enabled_uses = set.intersection(implemented_uses, configured_uses) / function(use) return use_map[use] end; |
59 | 62 |
60 local function dane_lookup(host_session, cb, a,b,c,e) | 63 local function dane_lookup(host_session, cb, a,b,c,e) |