]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - doc/technical/ts6-protocol.txt
Allow the final parameter of MLOCK to be empty, to remove an existing mlock
[irc/rqf/shadowircd.git] / doc / technical / ts6-protocol.txt
index 902cdd77e08c5c3cbeb0feef011922b017c7aa3c..64beadbb1e9f1ff5c526e829149d8eb75e1375fd 100644 (file)
@@ -157,7 +157,9 @@ parameters: type, user mask, host mask, creation TS, duration, lifetime, oper, r
 
 Propagates a network wide ban.
 
-The type is K for K:lines; other types are reserved.
+The type is K for K:lines, R for resvs and X for X:lines; other types are
+reserved. The user mask field is only used for K:lines; for resvs and X:lines
+the field is ignored in input and sent as an asterisk.
 
 The creation TS indicates when this ban was last modified. An incoming ban MUST
 be ignored and not propagated if the creation TS is older than the creation TS
@@ -452,6 +454,28 @@ parameters: server mask, hunted
 
 Remote LUSERS request. Most servers ignore the server mask, treating it as '*'.
 
+MLOCK
+charybdis TS6
+source: services server
+parameters: channelTS, channel, cmode changes, opt. cmode parameters...
+propagation: broadcast (restricted)
+
+Propagates a channel mode lock change.  
+
+If the channelTS is greater (newer) than the current TS of the channel, drop
+the message.
+
+On input, only the limit on parameters per line restricts how many cmode
+parameters can be present. Apart from this, arbitrary modes shall be
+processed. Redundant modes may be dropped. For example, +n-n may be applied and
+propagated as +n-n, -n or (if the channel was already -n) nothing, but not as
++n.
+
+The parameter for mode -k (removing a key) shall be ignored.
+
+An MLOCK message with no modes disables the MLOCK, therefore the MLOCK message
+always contains the literal MLOCK for simplicity.
+
 MODE
 1.
 source: user