File

mod_portcheck/mod_portcheck.lua @ 4897:42a362a2bf51

mod_portcheck: Shell command to check if ports are open
author Kim Alvefur <zash@zash.se>
date Fri, 18 Feb 2022 18:35:45 +0100
child 4899:adecfb36349e
line wrap: on
line source

module:set_global();
local portmanager = require "core.portmanager";

local commands = module:shared("admin_shell/commands")

function commands.portcheck(session, line)
	for desc, interface, port in line:gmatch("%s(%[?([%x:.]+)%]?:(%d+))") do
		if interface == "*" then
			interface = "0.0.0.0";
		end
		assert(portmanager.get_service_at(interface, tonumber(port)), desc);
	end
	session.print "OK";
end

function module.unload()
	commands.portcheck = nil;
end