mirror of
https://github.com/bunkerity/bunkerweb
synced 2026-05-24 09:28:37 +00:00
tls - fix wrong variables when using multiple server_name
This commit is contained in:
parent
224f11d88f
commit
bc891cc2f9
4 changed files with 38 additions and 28 deletions
|
|
@ -57,6 +57,19 @@ utils.get_variable = function(variable, site_search, ctx)
|
|||
end
|
||||
if variables[server_name] then
|
||||
value = variables[server_name][variable]
|
||||
else
|
||||
for first_server, server_variables in pairs(variables) do
|
||||
if first_server ~= "global" then
|
||||
all_server_name = server_variables["SERVER_NAME"]
|
||||
if all_server_name then
|
||||
for single_server_name in all_server_name:gmatch("%S+") do
|
||||
if single_server_name == server_name then
|
||||
return server_variables[variable], "success"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return value, "success"
|
||||
|
|
|
|||
|
|
@ -87,15 +87,14 @@ function customcert:ssl_certificate()
|
|||
if not server_name then
|
||||
return self:ret(false, "can't get server_name : " .. err)
|
||||
end
|
||||
if self.variables["USE_CUSTOM_SSL"] == "yes" then
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_customcert_" .. server_name, true)
|
||||
if not data then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_customcert_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
end
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_customcert_" .. server_name, true)
|
||||
if not data and err ~= "not found" then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_customcert_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
elseif data then
|
||||
return self:ret(true, "certificate/key data found", data)
|
||||
end
|
||||
return self:ret(true, "custom certificate is not used")
|
||||
|
|
|
|||
|
|
@ -100,15 +100,14 @@ function letsencrypt:ssl_certificate()
|
|||
if not server_name then
|
||||
return self:ret(false, "can't get server_name : " .. err)
|
||||
end
|
||||
if self.variables["AUTO_LETS_ENCRYPT"] == "yes" then
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_letsencrypt_" .. server_name, true)
|
||||
if not data then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_letsencrypt_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
end
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_letsencrypt_" .. server_name, true)
|
||||
if not data and err ~= "not found" then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_letsencrypt_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
elseif data then
|
||||
return self:ret(true, "certificate/key data found", data)
|
||||
end
|
||||
return self:ret(true, "let's encrypt is not used")
|
||||
|
|
|
|||
|
|
@ -87,18 +87,17 @@ function selfsigned:ssl_certificate()
|
|||
if not server_name then
|
||||
return self:ret(false, "can't get server_name : " .. err)
|
||||
end
|
||||
if self.variables["GENERATE_SELF_SIGNED_SSL"] == "yes" then
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_selfsigned_" .. server_name, true)
|
||||
if not data then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_selfsigned_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
end
|
||||
local data
|
||||
data, err = self.datastore:get("plugin_selfsigned_" .. server_name, true)
|
||||
if not data and err ~= "not found" then
|
||||
return self:ret(
|
||||
false,
|
||||
"error while getting plugin_selfsigned_" .. server_name .. " from datastore : " .. err
|
||||
)
|
||||
elseif data then
|
||||
return self:ret(true, "certificate/key data found", data)
|
||||
end
|
||||
return self:ret(true, "selfsigned is not used")
|
||||
return self:ret(true, "self signed is not used")
|
||||
end
|
||||
|
||||
function selfsigned:load_data(data, server_name)
|
||||
|
|
|
|||
Loading…
Reference in a new issue