]> jfr.im git - irc/ircd-hybrid/anope-protocol-module.git/commitdiff
- Add support for channel mode `Q`
authormiwob <redacted>
Sat, 13 Aug 2022 15:20:09 +0000 (17:20 +0200)
committermiwob <redacted>
Sat, 13 Aug 2022 15:20:09 +0000 (17:20 +0200)
hybrid.cpp

index 4e4e1e5d63ec6e2f7fc3d4c61ac33d3d7cc37159..d9afa6df109a9ca9ea346b16fb1ec84200be8ac2 100644 (file)
@@ -346,6 +346,8 @@ struct IRCDMessageCapab : Message::Capab
 {
        IRCDMessageCapab(Module *creator) : Message::Capab(creator, "CAPAB") { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
 
+       /*       0                 */
+       /* CAPAB :TBURST EOB MLOCK */
        void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override
        {
                spacesepstream sep(params[0]);
@@ -541,11 +543,8 @@ struct IRCDMessageSVSMode : IRCDMessage
 {
        IRCDMessageSVSMode(Module *creator) : IRCDMessage(creator, "SVSMODE", 3) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
 
-       /*
-        * parv[0] = nickname
-        * parv[1] = TS
-        * parv[2] = mode
-        */
+       /*              0         1          2  */
+       /* :0MC SVSMODE 0MCAAAAAB 1350157102 +r */
        void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override
        {
                User *u = User::Find(params[0]);
@@ -582,6 +581,8 @@ struct IRCDMessageTMode : IRCDMessage
 {
        IRCDMessageTMode(Module *creator) : IRCDMessage(creator, "TMODE", 3) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
 
+       /*            0          1       2    */
+       /* :0MC TMODE 1654867975 #nether +ntR */
        void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override
        {
                time_t ts = 0;
@@ -730,6 +731,7 @@ class ProtoHybrid : public Module
                ModeManager::AddChannelMode(new ChannelMode("REGMODERATED", 'M'));
                ModeManager::AddChannelMode(new ChannelMode("NONICK", 'N'));
                ModeManager::AddChannelMode(new ChannelModeOperOnly("OPERONLY", 'O'));
+               ModeManager::AddChannelMode(new ChannelMode("NOKICK", 'Q'));
                ModeManager::AddChannelMode(new ChannelMode("REGISTEREDONLY", 'R'));
                ModeManager::AddChannelMode(new ChannelMode("SSL", 'S'));
                ModeManager::AddChannelMode(new ChannelMode("NONOTICE", 'T'));