diff --git a/protocols/clientbot.py b/protocols/clientbot.py index 60bcd34..1627797 100644 --- a/protocols/clientbot.py +++ b/protocols/clientbot.py @@ -14,7 +14,7 @@ class ClientbotWrapperProtocol(Protocol): def __init__(self, irc): super().__init__(irc) - self.protocol_caps = {'clear-channels-on-leave'} + self.protocol_caps = {'clear-channels-on-leave', 'slash-in-nicks', 'slash-in-hosts', 'underscore-in-hosts'} self.has_eob = False diff --git a/protocols/inspircd.py b/protocols/inspircd.py index 1929e23..05fdcf7 100644 --- a/protocols/inspircd.py +++ b/protocols/inspircd.py @@ -13,6 +13,9 @@ from pylinkirc.protocols.ts6_common import * class InspIRCdProtocol(TS6BaseProtocol): def __init__(self, irc): super().__init__(irc) + + self.protocol_caps |= {'slash-in-nicks', 'slash-in-hosts', 'underscore-in-hosts'} + # Set our case mapping (rfc1459 maps "\" and "|" together, for example). self.casemapping = 'rfc1459' diff --git a/protocols/nefarious.py b/protocols/nefarious.py index 14642ac..85b39e1 100644 --- a/protocols/nefarious.py +++ b/protocols/nefarious.py @@ -35,6 +35,9 @@ def p10b64encode(num, length=2): class P10SIDGenerator(): def __init__(self, irc): self.irc = irc + + self.protocol_caps |= {'slash-in-hosts', 'underscore-in-hosts'} + try: query = irc.serverdata["sidrange"] except (KeyError, ValueError): diff --git a/protocols/ts6.py b/protocols/ts6.py index ff9ac05..1097bb3 100644 --- a/protocols/ts6.py +++ b/protocols/ts6.py @@ -15,6 +15,7 @@ S2S_BUFSIZE = 510 class TS6Protocol(TS6BaseProtocol): def __init__(self, irc): super().__init__(irc) + self.protocol_caps |= {'slash-in-hosts'} self.casemapping = 'rfc1459' self.hook_map = {'SJOIN': 'JOIN', 'TB': 'TOPIC', 'TMODE': 'MODE', 'BMASK': 'MODE', 'EUID': 'UID', 'RSFNC': 'SVSNICK', 'ETB': 'TOPIC'} diff --git a/protocols/unreal.py b/protocols/unreal.py index ff29767..010a4d7 100644 --- a/protocols/unreal.py +++ b/protocols/unreal.py @@ -23,6 +23,7 @@ S2S_BUFSIZE = 427 class UnrealProtocol(TS6BaseProtocol): def __init__(self, irc): super().__init__(irc) + self.protocol_caps |= {'slash-in-nicks', 'underscore-in-hosts'} # Set our case mapping (rfc1459 maps "\" and "|" together, for example) self.casemapping = 'ascii' self.proto_ver = 4000