ircd: implement EXTENDCHANS, based on ircd-seven (with some improvements from chatircd)

This commit is contained in:
William Pitcock 2016-01-11 23:32:23 -06:00
parent fe749d3709
commit a4721f5e9f
13 changed files with 164 additions and 12 deletions

View file

@ -25,6 +25,7 @@
#loadmodule "extensions/extb_server.la";
#loadmodule "extensions/extb_ssl.la";
#loadmodule "extensions/hurt.la";
#loadmodule "extensions/m_extendchans.la";
#loadmodule "extensions/m_findforwards.la";
#loadmodule "extensions/m_identify.la";
#loadmodule "extensions/no_oper_invis.la";
@ -349,6 +350,7 @@ channel {
knock_delay = 5 minutes;
knock_delay_channel = 1 minute;
max_chans_per_user = 15;
max_chans_per_user_large = 60;
max_bans = 100;
max_bans_large = 500;
default_split_user_count = 0;

View file

@ -64,6 +64,7 @@
* HURT system -- hurt.la
* New host mangling (umode +x) -- ip_cloaking_4.0.la
* Old host mangling (umode +h) -- ip_cloaking.la
* Dynamically extend channel limits -- m_extendchans.la
* Find channel forwards -- m_findforwards.la
* /identify support -- m_identify.la
* Opers cannot be invisible (umode +i) -- no_oper_invis.la
@ -94,6 +95,7 @@
#loadmodule "extensions/hurt.la";
#loadmodule "extensions/ip_cloaking_4.0.la";
#loadmodule "extensions/ip_cloaking.la";
#loadmodule "extensions/m_extendchans.la";
#loadmodule "extensions/m_findforwards.la";
#loadmodule "extensions/m_identify.la";
#loadmodule "extensions/no_oper_invis.la";
@ -376,6 +378,7 @@ auth {
* need_ident (old + flag) | require ident for user in this class
* need_ssl | require SSL/TLS for user in this class
* need_sasl | require SASL id for user in this class
* extend_chans | allow this user to join more channels than normal
*/
flags = kline_exempt, exceed_limit;
@ -735,6 +738,9 @@ channel {
/* max chans: The maximum number of channels a user can join/be on. */
max_chans_per_user = 15;
/* max chans (large): The extended maximum number of channels a user can join. */
max_chans_per_user_large = 60;
/* max bans: maximum number of +b/e/I/q modes in a channel */
max_bans = 100;