mirror of
https://github.com/jlu5/PyLink.git
synced 2024-11-24 03:29:28 +01:00
ts6: handle ChatIRCd ENCAP USERMODE
Per https://github.com/ChatLounge/ChatIRCd/blob/master/doc/technical/ChatIRCd-extra.txt
This commit is contained in:
parent
4ec1727888
commit
785fc8d2d2
@ -18,13 +18,18 @@ class TS6Protocol(TS6BaseProtocol):
|
|||||||
self.protocol_caps |= {'slash-in-hosts'}
|
self.protocol_caps |= {'slash-in-hosts'}
|
||||||
self.casemapping = 'rfc1459'
|
self.casemapping = 'rfc1459'
|
||||||
self.hook_map = {'SJOIN': 'JOIN', 'TB': 'TOPIC', 'TMODE': 'MODE', 'BMASK': 'MODE',
|
self.hook_map = {'SJOIN': 'JOIN', 'TB': 'TOPIC', 'TMODE': 'MODE', 'BMASK': 'MODE',
|
||||||
'EUID': 'UID', 'RSFNC': 'SVSNICK', 'ETB': 'TOPIC'}
|
'EUID': 'UID', 'RSFNC': 'SVSNICK', 'ETB': 'TOPIC', 'USERMODE': 'MODE'}
|
||||||
|
|
||||||
# Track whether we've received end-of-burst from the uplink.
|
# Track whether we've received end-of-burst from the uplink.
|
||||||
self.has_eob = False
|
self.has_eob = False
|
||||||
|
|
||||||
self.required_caps = {'EUID', 'SAVE', 'TB', 'ENCAP', 'QS', 'CHW'}
|
self.required_caps = {'EUID', 'SAVE', 'TB', 'ENCAP', 'QS', 'CHW'}
|
||||||
|
|
||||||
|
# From ChatIRCd: https://github.com/ChatLounge/ChatIRCd/blob/master/doc/technical/ChatIRCd-extra.txt
|
||||||
|
# Our command handler rewrites ENCAP so that this is the exact same syntax as MODE.
|
||||||
|
# <- :101AAAAAB ENCAP test.hub2 USERMODE 111AAAAAB :+Qw
|
||||||
|
self.handle_usermode = self.handle_mode
|
||||||
|
|
||||||
### OUTGOING COMMANDS
|
### OUTGOING COMMANDS
|
||||||
|
|
||||||
def spawn_client(self, nick, ident='null', host='null', realhost=None, modes=set(),
|
def spawn_client(self, nick, ident='null', host='null', realhost=None, modes=set(),
|
||||||
|
Loading…
Reference in New Issue
Block a user