diff options
-rw-r--r-- | core/certmanager.lua | 2 | ||||
-rw-r--r-- | core/configmanager.lua | 21 | ||||
-rwxr-xr-x | prosody | 21 |
3 files changed, 22 insertions, 22 deletions
diff --git a/core/certmanager.lua b/core/certmanager.lua index 79651242..7f1ca42e 100644 --- a/core/certmanager.lua +++ b/core/certmanager.lua @@ -14,7 +14,7 @@ local ssl_newcontext = ssl and ssl.newcontext; local setmetatable, tostring = setmetatable, tostring; local prosody = prosody; -local resolve_path = prosody.resolve_relative_path; +local resolve_path = configmanager.resolve_relative_path; local config_path = prosody.paths.config; module "certmanager" diff --git a/core/configmanager.lua b/core/configmanager.lua index ca23b136..b9618f86 100644 --- a/core/configmanager.lua +++ b/core/configmanager.lua @@ -13,6 +13,8 @@ local setmetatable, loadfile, pcall, rawget, rawset, io, error, dofile, type, p local fire_event = prosody and prosody.events.fire_event or function () end; +local path_sep = package.config:sub(1,1); + module "configmanager" local parsers = {}; @@ -64,6 +66,25 @@ function _M.set(host, section, key, value) return set(config, host, section, key, value); end +-- Helper function to resolve relative paths (needed by config) +do + local rel_path_start = ".."..path_sep; + function resolve_relative_path(parent_path, path) + if path then + local is_relative; + if path_sep == "/" and path:sub(1,1) ~= "/" then + is_relative = true; + elseif path_sep == "\\" and (path:sub(1,1) ~= "/" and path:sub(2,3) ~= ":\\") then + is_relative = true; + end + if is_relative then + return parent_path..path_sep..path; + end + end + return path; + end +end + function load(filename, format) format = format or filename:match("%w+$"); @@ -163,23 +163,6 @@ function init_global_state() prosody.paths = { source = CFG_SOURCEDIR, config = CFG_CONFIGDIR, plugins = CFG_PLUGINDIR, data = CFG_DATADIR }; - local path_sep = package.config:sub(1,1); - local rel_path_start = ".."..path_sep; - function prosody.resolve_relative_path(parent_path, path) - if path then - local is_relative; - if path_sep == "/" and path:sub(1,1) ~= "/" then - is_relative = true; - elseif path_sep == "\\" and (path:sub(1,1) ~= "/" and path:sub(2,3) ~= ":\\") then - is_relative = true; - end - if is_relative then - return parent_path..path_sep..path; - end - end - return path; - end - prosody.arg = _G.arg; prosody.platform = "unknown"; @@ -310,10 +293,6 @@ function load_secondary_libraries() require "core.usermanager" require "core.sessionmanager" require "core.stanza_router" - package.loaded['core.componentmanager'] = setmetatable({},{__index=function() - log("warn", "componentmanager is deprecated: %s", debug.traceback():match("\n[^\n]*\n[\s\t]*([^\n]*)")); - return function() end - end}); require "net.http" |