diff --git a/protocols/inspircd.py b/protocols/inspircd.py index 2525c56..b7b31a9 100644 --- a/protocols/inspircd.py +++ b/protocols/inspircd.py @@ -443,7 +443,7 @@ class InspIRCdProtocol(TS6BaseProtocol): # Strip c_ prefixes to be consistent with other protocols. name = name.lstrip('c_') - if name == 'reginvite': # Reginvite? That's a dumb name. + if name == 'reginvite': # Reginvite? That's an odd name. name = 'regonly' if name == 'founder': # Channel mode +q @@ -452,6 +452,11 @@ class InspIRCdProtocol(TS6BaseProtocol): # but I personally prefer the latter. name = 'owner' + if name in ('repeat', 'kicknorejoin'): + # Suffix modes using inspircd-specific arguments so that it can + # be safely relayed. + name += '_insp' + # We don't care about mode prefixes; just the mode char. self.irc.cmodes[name] = char[-1]