From a9a5869173101c90ad3d0cb398488d29cd519c22 Mon Sep 17 00:00:00 2001 From: david Date: Thu, 30 Dec 2010 21:08:25 +0000 Subject: [PATCH] Normalize tab.lua usage so that a call to tab.nextrow comes after (not before) each group of tab.add, and there is no tab.nextrow before or after tab.addrow. Also remove manual indenting that was accomplished by padding the first column with spaces; this is done by stdnse.format_output now. --- nselib/tab.lua | 2 ++ scripts/dns-zone-transfer.nse | 14 +++++++------- scripts/firewalk.nse | 3 ++- scripts/nfs-ls.nse | 11 ++++------- scripts/nfs-statfs.nse | 11 +++-------- scripts/qscan.nse | 3 ++- 6 files changed, 20 insertions(+), 24 deletions(-) diff --git a/nselib/tab.lua b/nselib/tab.lua index c553dccd9..c5ea46afa 100644 --- a/nselib/tab.lua +++ b/nselib/tab.lua @@ -12,6 +12,8 @@ -- tab.nextrow(t) -- tab.add(t, 1, 'BBBBBBBBB1') -- tab.add(t, 2, 'BBB2') +-- tab.nextrow(t) +-- tab.addrow(t, 'C1', 'C2') -- tab.dump(t) -- -- @copyright Same as Nmap--See http://nmap.org/book/man-legal.html diff --git a/scripts/dns-zone-transfer.nse b/scripts/dns-zone-transfer.nse index 0210b2c0f..f34dce5a9 100644 --- a/scripts/dns-zone-transfer.nse +++ b/scripts/dns-zone-transfer.nse @@ -348,7 +348,6 @@ function parse_records_table(number, data, table, offset) local answer, st = {} st, offset = get_answer_record(answer, data, offset) if st then - tab.nextrow(table) if answer.domain then tab.add(table, 1, answer.domain) end @@ -358,6 +357,7 @@ function parse_records_table(number, data, table, offset) if answer.rdata then tab.add(table, 3, answer.rdata) end + tab.nextrow(table) end number = number - 1 end @@ -429,8 +429,7 @@ function add_zone_info(response) local outtab, nhosts = tab.new(), 0 local newhosts_count, status, ret = 0, false - tab.nextrow(outtab) - tab.addrow(outtab, " Domains", "Added Targets") + tab.addrow(outtab, "Domains", "Added Targets") for rdata in pairs(RR['Node Names']) do status, ret = target.add(rdata) if not status then @@ -442,11 +441,12 @@ function add_zone_info(response) if newhosts_count == 0 then return false, ret and ret or "Error: failed to add DNS records." end - tab.addrow(outtab, " Node Names", newhosts_count) + tab.addrow(outtab, "Node Names", newhosts_count) nhosts = newhosts_count tab.nextrow(outtab) - tab.addrow(outtab, " DNS Records", "Added Targets") + + tab.addrow(outtab, "DNS Records", "Added Targets") for rectype in pairs(RR) do newhosts_count = 0 -- filter Private IPs @@ -475,7 +475,7 @@ function add_zone_info(response) end if newhosts_count ~= 0 then - tab.addrow(outtab, " "..rectype, newhosts_count) + tab.addrow(outtab, rectype, newhosts_count) nhosts = nhosts + newhosts_count elseif nhosts == 0 then -- error: we can't add new targets @@ -488,7 +488,7 @@ function add_zone_info(response) return false, "Error: failed to add valid DNS records." end - return true, tab.dump(outtab) .. + return true, tab.dump(outtab) .. "\n" .. string.format("Total new targets added to Nmap scan queue: %d.", nhosts) end diff --git a/scripts/firewalk.nse b/scripts/firewalk.nse index b8ab40751..7f3b133c4 100644 --- a/scripts/firewalk.nse +++ b/scripts/firewalk.nse @@ -395,13 +395,14 @@ local function report(tested, forwarded) tab.add(output, 1, "PROTOCOL") tab.add(output, 2, "FORWARDED PORTS") + tab.nextrow(output) -- script output: one line per protocol for proto in pairs(tested) do if #tested[proto] ~= 0 then - tab.nextrow(output) tab.add(output, 1, proto) tab.add(output, 2, portrange(forwarded[proto])) + tab.nextrow(output) end end diff --git a/scripts/nfs-ls.nse b/scripts/nfs-ls.nse index db7f2fb9a..e674ab66c 100644 --- a/scripts/nfs-ls.nse +++ b/scripts/nfs-ls.nse @@ -30,7 +30,6 @@ These access permissions are shown only with NFSv3: -- | nfs-ls: -- | Arguments: -- | maxfiles: 10 (file listing output limited) --- | -- | NFS Export: /mnt/nfs/files -- | NFS Access: Read Lookup NoModify NoExtend NoDelete NoExecute -- | @@ -38,7 +37,6 @@ These access permissions are shown only with NFSv3: -- | drwxr-xr-x 1000 100 4096 2010-06-17 12:28 /mnt/nfs/files -- | drwxr--r-- 1000 1002 4096 2010-05-14 12:58 sources -- | -rw------- 1000 1002 23606 2010-06-17 12:28 notes --- | -- | NFS Export: /home/storage/backup -- | NFS Access: Read Lookup Modify Extend Delete NoExecute -- | @@ -217,17 +215,16 @@ local function report(nfs, table) time = "CHANGE TIME" end - tab.nextrow(outtab) - tab.add(outtab, 1, " PERMISSION") + tab.add(outtab, 1, "PERMISSION") tab.add(outtab, 2, "UID") tab.add(outtab, 3, "GID") tab.add(outtab, 4, "SIZE") tab.add(outtab, 5, time) tab.add(outtab, 6, "FILENAME") + tab.nextrow(outtab) for _,f in pairs(table) do - local perm = " " .. f.type .. f.mode - tab.nextrow(outtab) + local perm = f.type .. f.mode tab.addrow(outtab, perm, f.uid, f.gid, f.size, f.time, f.filename) end @@ -283,7 +280,7 @@ action = function(host, port) if #access ~= 0 then table.insert(o, string.format("NFS Access: %s", access[1])) end - table.insert(o, report(nfs_info, results)) + table.insert(o, {report(nfs_info, results)}) end end diff --git a/scripts/nfs-statfs.nse b/scripts/nfs-statfs.nse index e7e70f163..129c68ea9 100644 --- a/scripts/nfs-statfs.nse +++ b/scripts/nfs-statfs.nse @@ -10,7 +10,6 @@ the version used is NFSv3. -- @output -- PORT STATE SERVICE -- | nfs-statfs: --- | -- | Filesystem 1K-blocks Used Available Use% Blocksize -- | /mnt/nfs/files 5542276 2732012 2528728 52% 4096 -- |_ /mnt/nfs/opensource 5534416 620640 4632644 12% 4096 @@ -72,7 +71,7 @@ end local function report(nfs, tables) local outtab, tab_size, tab_avail local tab_filesys, tab_used, tab_use, - tab_bs, tab_maxfs, tab_linkmax = " Filesystem", + tab_bs, tab_maxfs, tab_linkmax = "Filesystem", "Used", "Use%", "Blocksize", "Maxfilesize", "Maxlink" if nfs.human then @@ -85,22 +84,18 @@ local function report(nfs, tables) if nfs.version == 2 then outtab = tab.new() - tab.nextrow(outtab) tab.addrow(outtab, tab_filesys, tab_size, tab_used, tab_avail, tab_use, tab_bs) for _, t in ipairs(tables) do - tab.nextrow(outtab) - tab.addrow(outtab, " "..t.filesystem, t.size, + tab.addrow(outtab, t.filesystem, t.size, t.used, t.available, t.use, t.bsize) end elseif nfs.version == 3 then outtab = tab.new() - tab.nextrow(outtab) tab.addrow(outtab, tab_filesys, tab_size, tab_used, tab_avail, tab_use, tab_maxfs, tab_linkmax) for _, t in ipairs(tables) do - tab.nextrow(outtab) - tab.addrow(outtab, " "..t.filesystem, t.size, t.used, + tab.addrow(outtab, t.filesystem, t.size, t.used, t.available, t.use, t.maxfilesize, t.linkmax) end end diff --git a/scripts/qscan.nse b/scripts/qscan.nse index 3e20f4230..e6c80b1f7 100644 --- a/scripts/qscan.nse +++ b/scripts/qscan.nse @@ -238,6 +238,7 @@ local report = function(stats) tab.add(outtab, 3, "MEAN (us)") tab.add(outtab, 4, "STDDEV") tab.add(outtab, 5, "LOSS (%)") + tab.nextrow(outtab) for _, j in pairs(stats) do port = tostring(j.port) @@ -246,12 +247,12 @@ local report = function(stats) stddev = string.format("%.2f", math.sqrt(j.K / (j.num - 1))) loss = string.format("%.1f%%", 100 * (1 - j.num / j.sent)) - tab.nextrow(outtab) tab.add(outtab, 1, port) tab.add(outtab, 2, fam) tab.add(outtab, 3, mean) tab.add(outtab, 4, stddev) tab.add(outtab, 5, loss) + tab.nextrow(outtab) end return tab.dump(outtab)