diff options
| author | 2015-10-21 16:36:24 -0400 | |
|---|---|---|
| committer | 2015-10-21 16:40:55 -0400 | |
| commit | d67efeb58afe84dad077834fe51d4e798d585246 (patch) | |
| tree | b2b44e7e9dae4a0935a24d13bac71b890639880d | |
| parent | numeric: Add 716 and 717 to the numerics header (diff) | |
| download | KVIrc-d67efeb58afe84dad077834fe51d4e798d585246.tar.gz KVIrc-d67efeb58afe84dad077834fe51d4e798d585246.tar.bz2 KVIrc-d67efeb58afe84dad077834fe51d4e798d585246.zip | |
protocol: Add more support for InspIRCd
Add handlers for Channel Access List
Add handlers for Exempt Chanop List
Update description for cmode +g
| -rw-r--r-- | src/kvirc/kernel/KviIrcConnectionServerInfo.cpp | 4 | ||||
| -rw-r--r-- | src/kvirc/sparser/KviIrcServerParser.h | 4 | ||||
| -rw-r--r-- | src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp | 4 | ||||
| -rw-r--r-- | src/kvirc/sparser/KviIrcServerParser_tables.cpp | 18 |
4 files changed, 20 insertions, 10 deletions
diff --git a/src/kvirc/kernel/KviIrcConnectionServerInfo.cpp b/src/kvirc/kernel/KviIrcConnectionServerInfo.cpp index 948f5de98..d6ce0fcb7 100644 --- a/src/kvirc/kernel/KviIrcConnectionServerInfo.cpp +++ b/src/kvirc/kernel/KviIrcConnectionServerInfo.cpp @@ -1174,13 +1174,15 @@ const QString & KviInspIRCdIrcServerInfo::getChannelModeDescription(char mode) case 'R': return __tr2qs("Only registered nicks can join"); break; case 'S': return __tr2qs("Strip colors"); break; case 'T': return __tr2qs("Forbid channel NOTICEs"); break; + case 'X': return __tr2qs("Channel Exemptions"); break; case 'a': return __tr2qs("Protected/administrator nicks"); break; case 'c': return __tr2qs("No control codes (colors, bold, ..)"); break; case 'f': return __tr2qs("Kick/[*]ban on message flood ([*]<num>:<secs>)"); break; - case 'g': return __tr2qs("Block message matching"); break; + case 'g': return __tr2qs("Spam filter"); break; case 'j': return __tr2qs("Join throttling (<num>:<secs>)"); break; case 'q': return __tr2qs("Channel owners"); break; case 'u': return __tr2qs("Auditorium: /NAMES and /WHO show only ops"); break; + case 'w': return __tr2qs("Channel Access"); break; case 'y': return __tr2qs("Channel IRC op"); break; case 'z': return __tr2qs("Need SSL connection to join"); break; } diff --git a/src/kvirc/sparser/KviIrcServerParser.h b/src/kvirc/sparser/KviIrcServerParser.h index 1d95a0228..d878a2447 100644 --- a/src/kvirc/sparser/KviIrcServerParser.h +++ b/src/kvirc/sparser/KviIrcServerParser.h @@ -162,6 +162,10 @@ private: void parseNumericEndOfAList(KviIrcMessage *msg); void parseNumericReopList(KviIrcMessage *msg); void parseNumericEndOfReopList(KviIrcMessage * msg); + void parseNumericChanAccessList(KviIrcMessage * msg); + void parseNumericEndOfChanAccessList(KviIrcMessage * msg); + void parseNumericExemptChanOpList(KviIrcMessage * msg); + void parseNumericEndOfExemptChanOpList(KviIrcMessage * msg); void parseNumericInvited(KviIrcMessage * msg); void parseNumericSpamFilterList(KviIrcMessage *msg); void parseNumericEndOfSpamFilterList(KviIrcMessage *msg); diff --git a/src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp b/src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp index a66d32a61..101513849 100644 --- a/src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp +++ b/src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp @@ -796,6 +796,8 @@ PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfQList,'q',KVI_OUT_BAN,__tr2qs("owner li PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfAList,'a',KVI_OUT_BAN,__tr2qs("protected/admin list")) PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfReopList,'R',KVI_OUT_BAN,__tr2qs("reop list")) PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfSpamFilterList,'g',KVI_OUT_BAN,__tr2qs("spam filter list")) +PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfChanAccessList,'w',KVI_OUT_INVITEEXCEPT,__tr2qs("channel access list")) +PARSE_NUMERIC_ENDOFLIST(parseNumericEndOfExemptChanOpList,'X',KVI_OUT_INVITEEXCEPT,__tr2qs("channel exemptions list")) #define PARSE_NUMERIC_LIST(__funcname,__modechar,__ico,__szWhatQString) \ void KviIrcServerParser::__funcname(KviIrcMessage *msg) \ @@ -830,6 +832,8 @@ PARSE_NUMERIC_LIST(parseNumericQList,'q',KVI_OUT_BAN,__tr2qs("Owner listing")); PARSE_NUMERIC_LIST(parseNumericAList,'a',KVI_OUT_BAN,__tr2qs("Admin/protected nicks listing")); PARSE_NUMERIC_LIST(parseNumericReopList,'R',KVI_OUT_BAN,__tr2qs("Reop masks listing")); PARSE_NUMERIC_LIST(parseNumericSpamFilterList,'g',KVI_OUT_BAN,__tr2qs("Spam filter listing")); +PARSE_NUMERIC_LIST(parseNumericChanAccessList,'w',KVI_OUT_INVITEEXCEPT,__tr2qs("Channel access listing")); +PARSE_NUMERIC_LIST(parseNumericExemptChanOpList,'X',KVI_OUT_INVITEEXCEPT,__tr2qs("Channel exemptions listing")); void KviIrcServerParser::parseNumericWhoReply(KviIrcMessage *msg) { diff --git a/src/kvirc/sparser/KviIrcServerParser_tables.cpp b/src/kvirc/sparser/KviIrcServerParser_tables.cpp index 0f19c0800..11664e589 100644 --- a/src/kvirc/sparser/KviIrcServerParser_tables.cpp +++ b/src/kvirc/sparser/KviIrcServerParser_tables.cpp @@ -491,7 +491,7 @@ messageParseProc KviIrcServerParser::m_numericParseProcTable[1000]= 0, // 412 ERR_NOTEXTTOSEND 0, // 413 ERR_NOTOPLEVEL 0, // 414 ERR_WILDTOPLEVEL - 0, // 415 ERR_BADMASK + PTM(otherChannelError), // 415 ERR_BADMASK 0, // 416 ERR_TOOMANYMATCHES, ERR_QUERYTOOLONG 0, // 417 0, // 418 @@ -986,8 +986,8 @@ messageParseProc KviIrcServerParser::m_numericParseProcTable[1000]= PTM(parseNumericSaslFail), // 907 RPL_SASLALREADYAUTH PTM(parseNumericSaslFail), // 908 RPL_SASLMECHS 0, // 909 - 0, // 910 - 0, // 911 + PTM(parseNumericChanAccessList), // 910 RPL_CHANACCESS + PTM(parseNumericEndOfChanAccessList), // 911 RPL_ENDOFCHANACCESS 0, // 912 0, // 913 0, // 914 @@ -1011,11 +1011,11 @@ messageParseProc KviIrcServerParser::m_numericParseProcTable[1000]= 0, // 932 0, // 933 0, // 934 - 0, // 935 + PTM(otherChannelError), // 935 RPL_WORDFILTERTOOLONG 0, // 936 RPL_WORDFILTERED - 0, // 937 - 0, // 938 - 0, // 939 + PTM(otherChannelError), // 937 RPL_WORDALREADYEXISTS + PTM(otherChannelError), // 938 RPL_NOSUCHWORDFILTER + PTM(otherChannelError), // 939 RPL_WORDFILTERFULL PTM(parseNumericEndOfSpamFilterList), // 940 RPL_SPAMFILTERLIST PTM(parseNumericSpamFilterList), // 941 RPL_ENDOFSPAMFILTERLIST 0, // 942 @@ -1029,8 +1029,8 @@ messageParseProc KviIrcServerParser::m_numericParseProcTable[1000]= 0, // 950 0, // 951 0, // 952 - 0, // 953 - 0, // 954 + PTM(parseNumericEndOfExemptChanOpList), // 953 RPL_ENDOFEXEMPTCHANOPLIST + PTM(parseNumericExemptChanOpList), // 954 RPL_EXEMPTCHANOPLIST 0, // 955 0, // 956 0, // 957 |
