view mod_portcheck/mod_portcheck.lua @ 5285:8e1f1eb00b58

mod_sasl2_fast: Fix harmless off-by-one error (invalidates existing tokens!) Problem: This was causing the key to become "<token>--cur" instead of the expected "<token>-cur". As the same key was used by the code to both set and get, it still worked. Rationale for change: Although it worked, it's unintended, inconsistent and messy. It increases the chances of future bugs due to the unexpected format. Side-effects of change: Existing '--cur' entries will not be checked after this change, and therefore existing FAST clients will fail to authenticate until they attempt password auth and obtain a new FAST token. Existing '--cur' entries in storage will not be cleaned up by this commit, but this is considered a minor issue, and okay for the relatively few FAST deployments.
author Matthew Wild <mwild1@gmail.com>
date Wed, 29 Mar 2023 16:12:15 +0100
parents 3abbcb8584d2
children
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
		assert(portmanager.get_service_at(interface, tonumber(port)), desc);
	end
	session.print "OK";
end

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