summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipsectools-model.lua13
-rw-r--r--ipsectools-status-html.lsp25
2 files changed, 21 insertions, 17 deletions
diff --git a/ipsectools-model.lua b/ipsectools-model.lua
index 9e68b3d..c30fbb7 100644
--- a/ipsectools-model.lua
+++ b/ipsectools-model.lua
@@ -46,8 +46,8 @@ end
local function phase2details(dst)
local output = {}
dst = string.match(dst,"^(.*)%.") -- Removes the portnumber
- table.insert(output, {label="Outgoing", value=ip_xfrm("state list src ".. dst)})
- table.insert(output, {label="Incoming", value=ip_xfrm("state list dst ".. dst)})
+ table.insert(output, {label="Outgoing", value=ip_xfrm("state list src ".. dst .. " | grep '^src'")})
+ table.insert(output, {label="Incoming", value=ip_xfrm("state list dst ".. dst .. " | grep '^src'")})
return output
end
@@ -105,11 +105,18 @@ local function racoonctl_table()
value=(variable[8] or "") .. " " .. (variable[9] or ""),
})
+ local phase2s = phase2details(variable[2])
output[k]['Phase2']=cfe({
name="Phase2",
label="Phase2",
value=variable[10],
- option=phase2details(variable[2]),
+ option=phase2s,
+ })
+
+ output[k]['Phase2details']=cfe({
+ name="Phase2details",
+ label="Phase2details",
+ value=tostring(string.gsub(phase2s[1]['value'],"\n","<BR>")) .. tostring(string.gsub(phase2s[2]['value'],"\n","<BR>"))
})
end
end
diff --git a/ipsectools-status-html.lsp b/ipsectools-status-html.lsp
index 83e1474..447f007 100644
--- a/ipsectools-status-html.lsp
+++ b/ipsectools-status-html.lsp
@@ -1,6 +1,10 @@
-<% local form = ... %>
-<%
+<% local form = ...
require("viewfunctions")
+--[[ DEBUG INFORMATION
+io.write("<H1>DEBUGGING</H1><span style='color:red'><H2>DEBUG INFO: CFE</H2>")
+io.write(html.cfe_unpack(form))
+io.write("</span>")
+--]]
%>
<H1>SYSTEM INFO</H1>
@@ -13,34 +17,27 @@ displayinfo(myform,tags,"viewonly")
</DL>
<H2>PROGRAM SPECIFIC OPTIONS/INFORMATION</H2>
-<H3>Phase1 and Phase2 information</H3>
<DL>
<%
local myform = form.status.show_isakmp.option
for k,v in pairs(myform) do
if (type(v) == "table") and (v.Destination) and (v.Destination.value) and (#v.Destination.value > 0) then
- io.write("<DT><IMG SRC='/skins/static/tango/16x16/status/network-")
+ io.write("<H3><IMG SRC='/skins/static/tango/16x16/status/network-")
if (tonumber(v['St']['value']) < 9) then
io.write("error")
else
io.write("idle")
end
- io.write(".png' width='16' height='16'> ".. v['Destination']['value'] .. "</DT>")
- io.write("<DD><TABLE>\n")
- io.write("<TR><TD COLSPAN=2 CLASS='header'>Phase1 details</TD></TR>")
- local tags = {"Created","Source", "St", "S", "E",}
+ io.write(".png' width='16' height='16'> ".. v['Destination']['value'] .. "</H3>")
+ io.write("<TABLE>\n")
+ local tags = {"Created","Source","Destination", "St", "Phase2details"}
for k1,v1 in pairs(tags) do
io.write("<TR><TD STYLE='font-weight:bold;width:120px;border:none;'>" ..
(v[v1]['label'] or "") .. "</TD><TD STYLE='border:none;'>"..(v[v1]['value'] or ""))
if (v[v1]['descr']) and (#v[v1]['descr'] > 0) then io.write(" (".. v[v1]['descr'] .. ")") end
io.write("</TD></TR>")
end
- io.write("<TR><TD COLSPAN=2 CLASS='header' STYLE='padding-left:15px;'>Phase2 details</TD></TR>")
- for k1,v1 in pairs(v['Phase2']['option']) do
- io.write("<TR><TD STYLE='padding-left:15px;' COLSPAN=2><PRE>" .. (v1['value'] or "") .. "</PRE>")
- io.write("</TD></TR>")
- end
- io.write("</TABLE></DD>")
+ io.write("</TABLE>")
end
end
%>