mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-07-08 11:43:13 +02:00
a8c191b291
so they can fetch more history than the standard on-join history. In the future we are also likely to implement IRCv3 CHATHISTORY once that becomes an official specification. However, until it is specified and until most major clients support it, several years are likely to pass. It would be a shame to withhold channel history to many end-users in the meantime when it takes so little effort from us to provide an easy command. See also https://www.unrealircd.org/docs/Channel_history And in particular the new section: https://www.unrealircd.org/docs/Channel_history#Playback_frontends which explains the relationship between on-join playback, HISTORY and CHATHISTORY.
228 lines
8.2 KiB
Plaintext
228 lines
8.2 KiB
Plaintext
/* This file will load (nearly) all modules available on UnrealIRCd.
|
|
* So all commands, channel modes, user modes, etc..
|
|
*
|
|
* If you want to have all UnrealIRCd functionality, then include this
|
|
* file from your unrealircd.conf by using:
|
|
* include "modules.default.conf";
|
|
*
|
|
* DO NOT EDIT THIS FILE! IT WILL BE OVERWRITTEN DURING NEXT UPGRADE!!
|
|
* If you want to customize the modules to load you have two options:
|
|
* 1) Keep the include for modules.default.conf as usual and make use
|
|
* of blacklist-module "xyz"; to selectively disable modules.
|
|
* See https://www.unrealircd.org/docs/Blacklist-module_directive
|
|
* 2) OR, make a copy of this file (eg: name it modules.custom.conf)
|
|
* and edit it. Then include that file from your unrealircd.conf
|
|
* instead of this one.
|
|
* The downside of option #2 is that you will need to track changes
|
|
* in the original modules.default.conf with each new UnrealIRCd
|
|
* release to make sure you don't miss any new functionality (as new
|
|
* important modules may be added you need to add them to your conf).
|
|
* You don't have this problem with option #1.
|
|
*/
|
|
|
|
/*** Cloaking (for user mode +x) ***/
|
|
loadmodule "cloak";
|
|
|
|
|
|
/*** Commands ***/
|
|
|
|
// User commands (MINIMAL)
|
|
// These provide just the minimal set of IRC commands that are
|
|
// required by RFC1459 along with WATCH and MAP.
|
|
loadmodule "admin";
|
|
loadmodule "away";
|
|
loadmodule "invite";
|
|
loadmodule "ison";
|
|
loadmodule "join";
|
|
loadmodule "kick";
|
|
loadmodule "links";
|
|
loadmodule "list";
|
|
loadmodule "lusers";
|
|
loadmodule "map";
|
|
loadmodule "message";
|
|
loadmodule "mode";
|
|
loadmodule "motd";
|
|
loadmodule "names";
|
|
loadmodule "nick";
|
|
loadmodule "part";
|
|
loadmodule "pass";
|
|
loadmodule "pingpong";
|
|
loadmodule "protoctl";
|
|
loadmodule "quit";
|
|
loadmodule "rules";
|
|
loadmodule "topic";
|
|
loadmodule "user";
|
|
loadmodule "userhost";
|
|
loadmodule "watch";
|
|
loadmodule "whox";
|
|
loadmodule "whois";
|
|
loadmodule "whowas";
|
|
|
|
// User commands (EXTENDED)
|
|
// These are commands that provide extended functionality.
|
|
loadmodule "botmotd";
|
|
loadmodule "cap";
|
|
loadmodule "cycle";
|
|
loadmodule "dccallow";
|
|
loadmodule "help";
|
|
loadmodule "knock";
|
|
loadmodule "lag";
|
|
loadmodule "sasl";
|
|
loadmodule "setname";
|
|
loadmodule "silence";
|
|
loadmodule "starttls";
|
|
loadmodule "time";
|
|
loadmodule "userip";
|
|
loadmodule "vhost";
|
|
loadmodule "history";
|
|
|
|
// IRC Operator commands
|
|
// Note: several of these like kill are also server-to-server commands
|
|
// which are required if you link to other servers.
|
|
loadmodule "addmotd";
|
|
loadmodule "addomotd";
|
|
loadmodule "chghost";
|
|
loadmodule "chgident";
|
|
loadmodule "chgname";
|
|
loadmodule "close";
|
|
loadmodule "connect";
|
|
loadmodule "squit";
|
|
loadmodule "dccdeny";
|
|
loadmodule "globops";
|
|
loadmodule "kill"; /* also server-to-server */
|
|
loadmodule "locops";
|
|
loadmodule "mkpasswd";
|
|
loadmodule "oper";
|
|
loadmodule "opermotd";
|
|
loadmodule "sajoin";
|
|
loadmodule "samode";
|
|
loadmodule "sapart";
|
|
loadmodule "sdesc";
|
|
loadmodule "sethost";
|
|
loadmodule "setident";
|
|
loadmodule "stats";
|
|
loadmodule "tkl"; /* also server-to-server */
|
|
loadmodule "trace";
|
|
loadmodule "tsctl";
|
|
loadmodule "unsqline";
|
|
loadmodule "wallops";
|
|
loadmodule "jumpserver";
|
|
|
|
// Server-to-server commands
|
|
// Don't remove these, unless you never link to other servers.
|
|
loadmodule "eos";
|
|
loadmodule "md";
|
|
loadmodule "netinfo";
|
|
loadmodule "server";
|
|
loadmodule "sjoin";
|
|
loadmodule "sqline";
|
|
loadmodule "swhois";
|
|
loadmodule "umode2";
|
|
loadmodule "sinfo";
|
|
loadmodule "require-module";
|
|
|
|
// Services commands
|
|
// You could disable these if you don't use Services
|
|
// https://www.unrealircd.org/docs/Services
|
|
loadmodule "sendsno";
|
|
loadmodule "sendumode";
|
|
loadmodule "svsjoin";
|
|
loadmodule "svskill";
|
|
loadmodule "svslusers";
|
|
loadmodule "svsmode";
|
|
loadmodule "svsmotd";
|
|
loadmodule "svsnick";
|
|
loadmodule "svsnline";
|
|
loadmodule "svsnolag";
|
|
loadmodule "svsnoop";
|
|
loadmodule "svspart";
|
|
loadmodule "svssilence";
|
|
loadmodule "svssno";
|
|
loadmodule "svswatch";
|
|
|
|
|
|
/*** Channel modes ***/
|
|
loadmodule "chanmodes/floodprot"; /* +f */
|
|
loadmodule "chanmodes/nocolor"; /* +c */
|
|
loadmodule "chanmodes/noctcp"; /* +C */
|
|
loadmodule "chanmodes/stripcolor"; /* +S */
|
|
loadmodule "chanmodes/issecure"; /* +Z */
|
|
loadmodule "chanmodes/permanent"; /* +P */
|
|
loadmodule "chanmodes/link"; /* +L */
|
|
loadmodule "chanmodes/censor"; /* +G */
|
|
loadmodule "chanmodes/delayjoin"; /* +D */
|
|
loadmodule "chanmodes/noknock"; /* +K */
|
|
loadmodule "chanmodes/noinvite"; /* +V */
|
|
loadmodule "chanmodes/operonly"; /* +O */
|
|
loadmodule "chanmodes/nonotice"; /* +T */
|
|
loadmodule "chanmodes/regonly"; /* +R */
|
|
loadmodule "chanmodes/nonickchange"; /* +N */
|
|
loadmodule "chanmodes/nokick"; /* +Q */
|
|
loadmodule "chanmodes/regonlyspeak"; /* +M */
|
|
loadmodule "chanmodes/secureonly"; /* +z */
|
|
loadmodule "chanmodes/history"; /* +H */
|
|
|
|
|
|
/*** User modes ***/
|
|
loadmodule "usermodes/bot"; /* +B (mark yourself as a bot) */
|
|
loadmodule "usermodes/servicebot"; /* +S (service bot) */
|
|
loadmodule "usermodes/noctcp"; /* +T (block CTCP's) */
|
|
loadmodule "usermodes/censor"; /* +G (censor bad words) */
|
|
loadmodule "usermodes/showwhois"; /* +W (show if someone does /WHOIS) */
|
|
loadmodule "usermodes/privacy"; /* +p (privacy, hide channels in /WHOIS) */
|
|
loadmodule "usermodes/nokick"; /* +q (unkickable oper) */
|
|
loadmodule "usermodes/regonlymsg"; /* +R (only registered users may private message you) */
|
|
loadmodule "usermodes/secureonlymsg"; /* +Z (only SSL/TLS users may private message you) */
|
|
loadmodule "usermodes/privdeaf"; /* +D (don't let other user PM you) */
|
|
|
|
|
|
/*** Server notice masks */
|
|
loadmodule "snomasks/dccreject"; /* +D (rejected DCC's) */
|
|
|
|
|
|
/*** Extended Bans ***/
|
|
loadmodule "extbans/join"; /* +b ~j (prevent only joins) */
|
|
loadmodule "extbans/quiet"; /* +b ~q (prevent only messaging) */
|
|
loadmodule "extbans/nickchange"; /* +b ~n (prevent only nick changes) */
|
|
loadmodule "extbans/realname"; /* +b ~r (ban by real name) */
|
|
loadmodule "extbans/account"; /* +b ~a (ban/exempt if logged in with services account) */
|
|
loadmodule "extbans/inchannel"; /* +b ~c (ban/exempt if in channel) */
|
|
loadmodule "extbans/operclass"; /* +b ~O (ban/exempt by operclass) */
|
|
loadmodule "extbans/certfp"; /* +b ~S (ban/exempt by certfp) */
|
|
loadmodule "extbans/textban"; /* +b ~T (censor or block text) */
|
|
loadmodule "extbans/msgbypass"; /* +e ~m (bypass message restrictions) */
|
|
loadmodule "extbans/timedban"; /* +b ~t (timed bans / temporary bans) */
|
|
loadmodule "extbans/partmsg"; /* +b ~p (hide part/quit message) */
|
|
|
|
|
|
/** IRCv3 extensions */
|
|
loadmodule "message-tags"; /* add tags to messages, required for various IRCv3 features */
|
|
loadmodule "batch"; /* also required for several IRCv3 features */
|
|
loadmodule "account-tag"; /* adds services account information to messages */
|
|
loadmodule "link-security"; /* link-security announce */
|
|
loadmodule "message-ids"; /* adds unique msgid to various messages */
|
|
loadmodule "plaintext-policy"; /* plaintext-policy announce */
|
|
loadmodule "server-time"; /* adds server timestamp to various messages */
|
|
loadmodule "sts"; /* strict transport policy (set::tls::sts-policy) */
|
|
loadmodule "echo-message"; /* shows clients if their messages are altered/filtered */
|
|
|
|
|
|
/*** Other ***/
|
|
// These are modules that don't fit in any of the previous sections
|
|
loadmodule "ident_lookup"; /* Ident lookups if set::options::identd-check is set*/
|
|
loadmodule "certfp"; /* SSL/TLS certificate fingerprint in /WHOIS (& more) */
|
|
loadmodule "tls_antidos"; /* prevent TLS DoS (renegotiate floods) */
|
|
loadmodule "webirc"; /* WEBIRC command. See webirc block. */
|
|
loadmodule "blacklist"; /* Blacklist support (DNSBL). See blacklist block. */
|
|
loadmodule "jointhrottle"; /* set::anti-flood::join-flood (previously chanmode +j) */
|
|
loadmodule "charsys"; /* Provides set::allowed-nickchars (must always be loaded!) */
|
|
loadmodule "authprompt"; /* Authentication prompt, see set::authentication-prompt */
|
|
loadmodule "history_backend_mem"; /* History storage backend (used by chanmodes/history) */
|
|
loadmodule "tkldb"; /* Write TKLines to .db file */
|
|
loadmodule "channeldb"; /* Write channel settings to .db file (+P channels only) */
|
|
loadmodule "rmtkl"; /* Easily remove *-Lines in bulk with /RMTKL */
|
|
loadmodule "restrict-commands"; /* Provides set::restrict-commands settings */
|
|
loadmodule "reputation"; /* used by Connthrottle and others, see next */
|
|
loadmodule "connthrottle"; /* see https://www.unrealircd.org/docs/Connthrottle */
|
|
loadmodule "labeled-response"; /* currently in draft - loaded here to get it tested*/
|