# HG changeset patch # User Marco Cirillo # Date 1322494090 0 # Node ID f4ada087c743b596e7c0f6991a65c6a98eb4b9c7 # Parent 9d62586e7aaef90625d1d5eed184e48af4177ec5 mod_ircd: added listener port configuration, added utf8 checks to TOPIC, added check so that module wonn't get loaded if conference_server is unset. diff -r 9d62586e7aae -r f4ada087c743 mod_ircd/mod_ircd.in.lua --- a/mod_ircd/mod_ircd.in.lua Mon Nov 28 15:07:20 2011 +0000 +++ b/mod_ircd/mod_ircd.in.lua Mon Nov 28 15:28:10 2011 +0000 @@ -8,8 +8,13 @@ module = _G.module local module = _module -- -local component_jid, component_secret, muc_server = - module.host, nil, module:get_option("conference_server"); +local component_jid, component_secret, muc_server, port_number = + module.host, nil, module:get_option_string("conference_server"), module:get_option_number("listener_port", 7000); + +if not muc_server then + module:log ("error", "You need to set the MUC server! halting.") + return false; +end package.loaded["util.sha1"] = require "util.encodings"; local verse = require "verse" @@ -154,7 +159,7 @@ none = "" } -local irc_listener = { default_port = 7000, default_mode = "*l" }; +local irc_listener = { default_port = port_number, default_mode = "*l" }; local sessions = {}; local jids = {}; @@ -447,7 +452,9 @@ function commands.TOPIC(session, message) if not message then return end - local channel, topic = message[1], message[2]; + local channel, topic = message[1], message[2]; + channel = utf8_clean(channel); + topic = utf8_clean(topic); if not channel then return end local room = session.rooms[channel];