Software /
code /
prosody
Diff
plugins/mod_admin_telnet.lua @ 4514:ae48e0abc233
mod_admin_telnet: Commond and flexible way to show stream properties.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 05 Mar 2012 22:07:40 +0100 |
parent | 4328:c71777a8b9c7 |
child | 4515:e2774644688d |
line wrap: on
line diff
--- a/plugins/mod_admin_telnet.lua Sun Mar 04 17:38:47 2012 +0100 +++ b/plugins/mod_admin_telnet.lua Mon Mar 05 22:07:40 2012 +0100 @@ -487,6 +487,19 @@ return true, "Total: "..count.." sessions closed"; end +local function session_flags(session, line) + if session.cert_identity_status == "valid" then + line[#line+1] = "(secure)"; + end + if session.secure then + line[#line+1] = "(encrypted)"; + end + if session.compressed then + line[#line+1] = "(compressed)"; + end + return table.concat(line, " "); +end + def_env.s2s = {}; function def_env.s2s:show(match_jid) local _print = self.session.print; @@ -499,7 +512,7 @@ for remotehost, session in pairs(host_session.s2sout) do if (not match_jid) or remotehost:match(match_jid) or host:match(match_jid) then count_out = count_out + 1; - print(" "..host.." -> "..remotehost..(session.cert_identity_status == "valid" and " (secure)" or "")..(session.secure and " (encrypted)" or "")..(session.compressed and " (compressed)" or "")); + print(session_flags(session, {" ", host, "->", remotehost})); if session.sendq then print(" There are "..#session.sendq.." queued outgoing stanzas for this connection"); end @@ -536,7 +549,7 @@ -- Pft! is what I say to list comprehensions or (session.hosts and #array.collect(keys(session.hosts)):filter(subhost_filter)>0)) then count_in = count_in + 1; - print(" "..host.." <- "..(session.from_host or "(unknown)")..(session.cert_identity_status == "valid" and " (secure)" or "")..(session.secure and " (encrypted)" or "")..(session.compressed and " (compressed)" or "")); + print(session_flags(session, {" ", host, "<-", session.from_host or "(unknown)"})); if session.type == "s2sin_unauthed" then print(" Connection not yet authenticated"); end