view mod_block_subscriptions/mod_block_subscriptions.lua @ 6322:f110bce35630

mod_block_registrations: Support blocking confusable usernames (UTS 39) This prevents registering e.g. "admin" but with a Cyrillic 'a' U+0430 and other such variations, including keming like "adrnin".
author Kim Alvefur <zash@zash.se>
date Sat, 06 Sep 2025 21:02:26 +0200
parents 107eb83aa732
children
line wrap: on
line source

local allowed_presence_types = { probe = true, unavailable = true };

function filter_presence(event)
	local stanza = event.stanza;
	local presence_type = stanza.attr.type;
	if presence_type == nil or allowed_presence_types[presence_type] then
		return;
	end
	return true; -- Drop
end

module:hook("pre-presence/bare", filter_presence, 200); -- Client sending
module:hook("presence/bare", filter_presence, 200); -- Client receiving