From: Matthew Wild Date: Thu, 10 Dec 2015 18:00:08 +0000 (+0000) Subject: mod_admin_telnet: Add http:list() command to get info about current HTTP endpoints... X-Git-Url: https://git.enpas.org/?a=commitdiff_plain;h=c1fad768112c887b1f5d71c17cac9e85faec27d4;p=prosody.git mod_admin_telnet: Add http:list() command to get info about current HTTP endpoints on the server --- diff --git a/plugins/mod_admin_telnet.lua b/plugins/mod_admin_telnet.lua index 16bc786d..b77a1f56 100644 --- a/plugins/mod_admin_telnet.lua +++ b/plugins/mod_admin_telnet.lua @@ -282,6 +282,8 @@ end -- Session environment -- -- Anything in def_env will be accessible within the session as a global variable +--luacheck: ignore 212/self + def_env.server = {}; function def_env.server:insane_reload() @@ -1093,6 +1095,33 @@ function def_env.dns:cache() return true, "Cache:\n"..tostring(dns.cache()) end +def_env.http = {}; + +function def_env.http:list() + local print = self.session.print; + + for host in pairs(prosody.hosts) do + local http_apps = modulemanager.get_items("http-provider", host); + if #http_apps > 0 then + local http_host = module:context(host):get_option("http_host"); + print("HTTP endpoints on "..host..(http_host and (" (using "..http_host.."):") or ":")); + for _, provider in ipairs(http_apps) do + local url = module:context(host):http_url(provider.name); + print("", url); + end + print(""); + end + end + + local default_host = module:get_option("http_default_host"); + if not default_host then + print("HTTP requests to unknown hosts will return 404 Not Found"); + else + print("HTTP requests to unknown hosts will be handled by "..default_host); + end + return true; +end + ------------- function printbanner(session)