]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - conf/modules.conf.example
ThreadEngine: remove excessive mutex use on thread creation
[user/henk/code/inspircd.git] / conf / modules.conf.example
index e86f7392eafe8f53c92d620912a870b484409553..b8306dbb5c68e13ef757cf59cc4b42149b3a0103 100644 (file)
@@ -10,7 +10,7 @@
 #                                                                     #
 #  By default, ALL modules are commented out. You must uncomment them #
 #  or add lines to your config to load modules. Please refer to       #
-#  http://www.inspircd.org/wiki/Modules_List for a list of modules and#
+#  http://wiki.inspircd.org/Modules for a list of modules and         #
 #  each modules link for any additional conf tags they require.       #
 #                                                                     #
 #  You may use wildcards in a <module> tag to load all modules which  #
 # Alias module: Allows you to define server-side command aliases
 #<module name="m_alias.so">
 #
+# Fantasy settings:
+#
+#<fantasy prefix="!" allowbots="no">
+#
+# prefix:
+#  Set the prefix for in-channel aliases (fantasy commands) to the
+#  specified character. If not set, the default is "!".
+# allowbots:
+#  If this is set to no, +B clients will not be able to use fantasy
+#  commands. If not set, the default is no.
+#
 #-#-#-#-#-#-#-#-#-#-#-  ALIAS DEFINITIONS  -#-#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # If you have the m_alias.so module loaded, you may also define       #
 #                    matched, or it has no format value. Aliases are  #
 #                    read from the top of the file to the bottom.     #
 #                                                                     #
+# usercommand -      If this is true, the alias can be run simply as  #
+#                    /aliasname. Defaults to true.                    #
+#                                                                     #
+# channelcommand -   If this is true, the alias can be used as an     #
+#                    in-channel alias or 'fantasy command', prefixed  #
+#                    by the fantasy prefix character, !aliasname by   #
+#                    default. Defaults to false.                      #
+#                                                                     #
 # format      -      If this is defined, the parameters of the alias  #
 #                    must match this glob pattern. For example if you #
 #                    want the first parameter to start with a # for   #
 #
 #<alias text="NICKSERV" format=":IDENTIFY *" replace="PRIVMSG NickServ :IDENTIFY $3-"
 #  requires="NickServ" uline="yes">
+#
+# You may also add aliases to trigger based on something said in a
+# channel, aka 'fantasy' commands, configured in the same manner as any
+# other alias, with usercommand="no" and channelcommand="yes" The
+# command must be preceded by the fantasy prefix when used.
+#
+#<alias text="CS" usercommand="no" channelcommand="yes"
+#  replace="PRIVMSG ChanServ :$1 $chan $2-" requires="ChanServ" uline="yes">
+#
+# This would be used as "!cs <command> <options>", with the channel
+# being automatically inserted after the command in the message to
+# ChanServ, assuming the fantasy prefix is "!".
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Allowinvite module: Gives channel mode +A to allow all users to use
 #                                                                     #
 # Optional - If you specify to use the m_censor module, then you must #
 # specify some censor tags. See also:                                 #
-# http://www.inspircd.org/wiki/Censor_Module                          #
+# http://wiki.inspircd.org/Modules/censor                             #
 #
 #<include file="censor.conf">
 
 # Optional - If you specify to use m_cgiirc, then you must specify one
 # or more cgihost tags which indicate authorised CGI:IRC servers which
 # will be connecting to your network, and an optional cgiirc tag.
-# For more information see: http://www.inspircd.org/wiki/CGI-IRC_Module
+# For more information see: http://wiki.inspircd.org/Modules/cgiirc
 #
 # Set to yes if you want to notice opers when CGI clients connect
 # <cgiirc opernotice="no">
 # <cgihost type="ident" mask="otherbox.mysite.com"> # Get IP from ident
 # <cgihost type="passfirst" mask="www.mysite.com">  # See the docs
 # New style:
-# <cgihost type="webirc" pass="foobar"
+# <cgihost type="webirc" password="foobar"
 #   mask="somebox.mysite.com">                      # Get IP from WEBIRC
 #
 # IMPORTANT NOTE:
 # Channel filter module: Allows channel-op defined message
 # filtering using simple string matches (channel mode +g)
 #<module name="m_chanfilter.so">
+#
+# If hidemask is set to yes, the user will not be shown the mask when
+# his/her message is blocked.
+#<chanfilter hidemask="yes">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Channel logging module: used to send snotice output to channels, to
 #-#-#-#-#-#-#-#-#-#-  CUSTOM TITLE CONFIGURATION   -#-#-#-#-#-#-#-#-#-#
 #  name              - The username used to identify 
 #  password          - The password used to identify
+#  hash              - The hash for the specific user's password (optional)
+#                      m_password_hash.so and a hashing module must be loaded for this to work
 #  host              - Allowed hostmask [optional]
 #  title             - Title shown in whois
 #  vhost             - Displayed host [optional]
 #
 #<title name="foo" password="bar" title="Official Chat Helper">
 #<title name="bar" password="foo" host="ident@host.name" title="Official Chat Helper" vhost="helper.network.chat">
+#<title name="foo" password="fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9" hash="sha256" title="Official Chat Helper">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # DCCALLOW module: Adds the /DCCALLOW command
 #<module name="m_dnsbl.so">                                           #
 #                                                                     #
 # For configuration options please see the wiki page for m_dnsbl at   #
-# http://inspircd.org/wiki/DNS_Blacklist_Module                       #
+# http://wiki.inspircd.org/Modules/dnsbl                              #
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Filter module: Provides message filtering, similar to SPAMFILTER.
 #                                                                     #
 # Your choice of regex engine must match on all servers network-wide.
 #
+# You may specify specific channels that are exempt from being filtered:
+#<exemptfromfilter channel="#blah">
+#
 #-#-#-#-#-#-#-#-#-#-#-  FILTER  CONFIGURATION  -#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # Optional - If you specify to use the m_filter module, then          #
 #-#-#-#-#-#-#-#-#-#-#-  HOSTCHANGE  CONFIGURATION  -#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # Optional - If you choose to use the m_hostchange.so module.         #
-# Config Help -  See http://www.inspircd.org/wiki/Host_Changer_Module #
+# Config Help -  See http://wiki.inspircd.org/Modules/hostchange      #
 #                                                                     #
 #<host suffix="polarbears.org" separator="." prefix="">
 #<hostchange mask="*@fbi.gov" action="addnick">
 # http stats module: Provides basic stats pages over HTTP
 # Requires m_httpd.so to be loaded for it to function.
 #<module name="m_httpd_stats.so">
-#
-#-#-#-#-#-#-#-#-#-#-#-#- HTTPD STATS CONFIGURATION -#-#-#-#-#-#-#-#-#-#
-#
-#<httpstats stylesheet="http://remote.style/sheet.css">
-#
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Ident: Provides RFC 1413 ident lookup support
 # the user in a 'connecting' state until the lookup is complete.      #
 # The bind value indicates which IP to bind outbound requests to.     #
 #                                                                     #
-#<ident timeout="5" bind="">
+#<ident timeout="5">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Invite except module: Adds support for channel invite exceptions (+I)
 # oper go 'invisible' similar to unrealircd 3.1's +I mode. Note that
 # opers are still able to see invisible users, and if an oper with +Q
 # deopers, they will become visible. 
-# 
-# IMPORTANT NOTE: To allow this mode to be used by a type of oper, you
-# must first add the value canquiet="yes" to that oper's type tag.
 #
 # This module is oper-only.
 #
 #-#-#-#-#-#-#-#-#-#-#-#- SQL CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_mssql.so is more complex than described here, see wiki for more   #
-# info http://www.inspircd.org/wiki/SQLServer_Service_Provider_Module #
+# info http://wiki.inspircd.org/Modules/mssql                         #
 #
 #<database name="db" username="user" password="pass" hostname="localhost" id="db1">
 
 #-#-#-#-#-#-#-#-#-#-#-#- SQL CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_mysql.so is more complex than described here, see the wiki for    #
-# more: http://www.inspircd.org/wiki/SQL_Service_Provider_Module      #
+# more: http://wiki.inspircd.org/Modules/mysql                        #
 #
 #<database name="mydb" username="myuser" password="mypass" hostname="localhost" id="my_database2">
 
 # This is supported by mIRC, x-chat, klient, and maybe more.
 #<module name="m_namesx.so">
 
+#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# National characters module:
+# 1) Allows using national characters in nicknames.
+# 2) Allows using custom (national) casemapping over the network.
+# file -- filename of existing file in "locales" directory
+# casemapping -- custom value for 005 numeric (if you want it to be
+# different from the filename.
+#
+#<nationalchars file="bynets/russian-w1251-charlink" casemapping="ru_RU.cp1251-charlink">
+#<module name="m_nationalchars.so">
+
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Nickchange flood protection module: Allows up to X nick changes in Y seconds.
 # Provides channel mode +F.
 #<module name="m_nicklock.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# No ctcp module: Adds the channel mode +C to block CTCPs
+# No ctcp module: Adds the channel mode +C to block CTCPs and extban C
+# to block CTCPs sent by specific users.
 #<module name="m_noctcp.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# No kicks module: Adds the +Q channel mode
+# No kicks module: Adds the +Q channel mode and the Q: extban to deny
+# certain users from kicking.
 #<module name="m_nokicks.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 #<module name="m_nopartmsg.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# No Notice module: adds the channel mode +T
+# No Notice module: adds the channel mode +T and the extban T to block
+# specific users from noticing the channel.
 #<module name="m_nonotice.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # If you are using the m_opermotd.so module, specify the motd here    #
 #                                                                     #
-#<opermotd file="oper.motd">
+# onoper      -      Should the message be sent on /OPER or only when #
+#                    /OPERMOTD is used. Use "yes" or "no".            #
+#                                                                     #
+#<opermotd file="oper.motd" onoper="yes">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Override module: Adds support for oper override
 #-#-#-#-#-#-#-#-#-#-#   OVERRIDE CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_override.so is too complex it describe here, see the wiki:        #
-# http://www.inspircd.org/wiki/Oper_Override_Module                   #
+# http://wiki.inspircd.org/Modules/override                           #
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Oper levels module: Gives each oper a level and prevents
 #-#-#-#-#-#-#-#-#-#-#-#- SQL CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_pgsql.so is more complex than described here, see the wiki for    #
-# more: http://www.inspircd.org/wiki/SQL_Service_Provider_Module      #
+# more: http://wiki.inspircd.org/Modules/pgsql                        #
 #
 #<database name="mydb" username="myuser" password="mypass" hostname="localhost" id="my_database" ssl="no">
 
 # To use, SAJOIN must be in one of your oper class blocks.
 #<module name="m_sajoin.so">
 
+#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# SAKICK module: Adds the /SAKICK command
+# This module is oper-only.
+# To use, SAKICK must be in one of your oper class blocks.
+#<module name="m_sakick.so">
+
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # SAMODE module: Adds the oper /SAMODE command
 # This module is oper-only.
 # perform. It should be noted that if a shunned user issues QUIT or PART
 # then their message will be removed, as if they did not issue one.
 #
-# You may also (optionally) let the user know that their command was blocked.
-#<shun enabledcommands="PING PONG QUIT PART JOIN" notifyuser="yes">
+# You can (optionally) let the user know that their command was blocked.
+#
+# You may also let SHUN affect opers (defaults to no).
+#<shun enabledcommands="PING PONG QUIT PART JOIN" notifyuser="yes" affectopers="no">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Spy module: Provides the ability to see the complete names list of 
 #-#-#-#-#-#-#-#-#-#-#-  GNUTLS CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_ssl_gnutls.so is too complex it describe here, see the wiki:      #
-# http://www.inspircd.org/wiki/GnuTLS_SSL_Module                      #
+# http://wiki.inspircd.org/Modules/ssl_gnutls                         #
 #                                                                     #
 # NOTE: If you want to use this module to encrypt and sign your       #
 # server to server traffic, you MUST load it before m_spanningtree in #
 #-#-#-#-#-#-#-#-#-#-#- OPENSSL CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_ssl_openssl.so is too complex it describe here, see the wiki:     #
-# http://www.inspircd.org/wiki/OpenSSL_SSL_Module                     #
+# http://wiki.inspircd.org/Modules/ssl_openssl                        #
 #                                                                     #
 # NOTE: If you want to use this module to encrypt and sign your       #
 # server to server traffic, you MUST load it before m_spanningtree in #
 #-#-#-#-#-#-#-#-#-#-#-#- SQL CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_sqlite.so is more complex than described here, see the wiki for   #
-# more: http://www.inspircd.org/wiki/SQLite3_Service_Provider_Module  #
+# more: http://wiki.inspircd.org/Modules/sqlite3                      #
 #
 #<database hostname="/full/path/to/database.db" id="anytext">
 
 #-#-#-#-#-#-#-#-#-#-#- SQLAUTH CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-#
 #                                                                     #
 # m_sqlauth.so is too complex it describe here, see the wiki:         #
-# http://www.inspircd.org/wiki/SQL_Authentication_Module              #
+# http://wiki.inspircd.org/Modules/sqlauth                            #
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # SQL logging module: Allows you to log network-wide data for your
 #                                                                     #
 # dbid       - Database ID to use (see m_sql)                         #
 #                                                                     #
-# See also: http://www.inspircd.org/wiki/SQL_Logging_Module           #
+# See also: http://wiki.inspircd.org/Modules/sqllog                   #
 #                                                                     #
 #<sqllog dbid="1">
 
 # dbid       - Database ID to use (see m_sql)                         #
 # hash       - Hashing provider to use for password hashing           #
 #                                                                     #
-# See also: http://www.inspircd.org/wiki/SQL_Oper_Storage_Module      #
+# See also: http://wiki.inspircd.org/Modules/sqloper                  #
 #                                                                     #
 #<sqloper dbid="1" hash="md5">
 
 # user       - Username for the vhost.                                #
 #                                                                     #
 # pass       - Password for the vhost.                                #
+#                                                                    #
+# hash       - The hash for the specific user (optional)
+#              m_password_hash.so and a hashing module must be loaded for this to work
 #                                                                     #
 # host       - Vhost to set.                                          #
 #
 #<vhost user="some_username" pass="some_password" host="some.host">
+#<vhost user="foo" password="fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9" hash="sha256" host="some.other.host">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Watch module: Adds the WATCH command, which is used by clients to