]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - conf/modules.conf.example
Small example config changes; patch by jdhore
[user/henk/code/inspircd.git] / conf / modules.conf.example
index 7fb0b69a1fb1fc80ceb9193b7d4341bc7cba0558..c1796ce03febfc8dbf8293df29833a965b0ce3ac 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" replace="PRIVMSG NickServ :$2-" requires="NickServ" uline="yes">
 #<alias text="CHANSERV" replace="PRIVMSG ChanServ :$2-" requires="ChanServ" uline="yes">
 #<alias text="OPERSERV" replace="PRIVMSG OperServ :$2-" requires="OperServ" uline="yes" operonly="yes">
+#<alias text="BOTSERV" replace="PRIVMSG BotServ :$2-" requires="BotServ" uline="yes">
+#<alias text="HOSTSERV" replace="PRIVMSG HostServ :$2-" requires="HostServ" uline="yes">
+#<alias text="MEMOSERV" replace="PRIVMSG MemoServ :$2-" requires="MemoServ" uline="yes">
 #<alias text="NS" replace="PRIVMSG NickServ :$2-" requires="NickServ" uline="yes">
 #<alias text="CS" replace="PRIVMSG ChanServ :$2-" requires="ChanServ" uline="yes">
 #<alias text="OS" replace="PRIVMSG OperServ :$2-" requires="OperServ" uline="yes" operonly="yes">
+#<alias text="BS" replace="PRIVMSG BotServ :$2-" requires="BotServ" uline="yes">
+#<alias text="HS" replace="PRIVMSG HostServ :$2-" requires="HostServ" uline="yes">
+#<alias text="MS" replace="PRIVMSG MemoServ :$2-" requires="MemoServ" uline="yes">
 #
 # An example of using the format value to create an alias with two
 # different behaviours depending on the format of the parameters.
 #
 #<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
 #<module name="m_chanprotect.so">
 
 <chanprotect
-       # noservices: With this set to no, when a user joins a empty channel,
-       # the server will set +q on them. If set to yes, it will only set +o
+       # noservices: With this set to yes, when a user joins a empty channel,
+       # the server will set +q on them. If set to no, it will only set +o
        # on them until they register the channel.
        noservices="no"
 
 # CHGHOST module: Adds the /CHGHOST command
 # This module is oper-only.
 # To use, CHGHOST must be in one of your oper class blocks.
+# NOTE: Services will not be able to set vhosts on users if this module
+# isn't loaded. If you're planning on running services, you probably
+# want to load this.
 #<module name="m_chghost.so">
 #
 #-#-#-#-#-#-#-#-# /CHGHOST - /SETHOST  CONFIGURATION #-#-#-#-#-#-#-#-#
 #-#-#-#-#-#-#-#-#-#-  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          #
 # GeoIP module: Allows the server admin to ban users by country code.
 # This modules is in extras. Re-run configure with: ./configure --enable-extras=m_geoip.cpp
 # and run make install, then uncomment this module to enable it.
+# This module requires GeoIP to be installed on your system,
+# use your package manager to find the appropriate packages
+# or check the InspIRCd wiki page for this module.
 #<module name="m_geoip.so">
 #
 #-#-#-#-#-#-#-#-#-#-#-#  GEOIP CONFIGURATION  #-#-#-#-#-#-#-#-#-#-#-#-#
 #-#-#-#-#-#-#-#-#-#-#-  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">
 # 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.
+# This module is oper-only and seen by many to be quite abusive.
 #
 #<module name="m_invisible.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#- 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">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Registered users only channel creation
 # Allows only registered users and opers to create new channels.
+#
+# You probably *DO NOT* want to load this module on a public network.
+#
 #<module name="m_regonlycreate.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 #<module name="m_remove.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# Restricted channels module: Allows only opers to create channels
+# Restricted channels module: Allows only opers to create channels.
+#
+# You probably *DO NOT* want to load this module on a public network.
+#
 #<module name="m_restrictchans.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# Restrict message module: Allows users to only message opers
+# Restrict message module: Allows users to only message opers.
+#
+# You probably *DO NOT* want to load this module on a public network.
+#
 #<module name="m_restrictmsg.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # 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 
 # does not do anything useful without a working SSL module (see below)
 #<module name="m_sslmodes.so">
 
-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# Dummy ssl module: If you have other servers on your network which
-# have SSL, but your server does not have ssl enabled, you should load
-# this module, which will handle SSL metadata (e.g. the "Is using ssl"
-# field in the WHOIS information).
-#<module name="m_ssl_dummy.so">
-
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # GnuTLS ssl module: Adds support for client-server SSL using GnuTLS,
 # if enabled. You must copy the source for this module from the directory
 #-#-#-#-#-#-#-#-#-#-#-  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 #
 # SSL Info module: Allows users to retrieve information about other
 # user's peer SSL certificates and keys. This can be used by client
 # scripts to validate users. For this to work, one of m_ssl_gnutls.so
-# or m_ssl_openssl.so must be loaded. You must symlink the source for
-# this module from the directory src/modules/extra.
-# This modules is in extras. Re-run configure with: ./configure --enable-extras=m_sslinfo.cpp
-# and run make install, then uncomment this module to enable it.
+# or m_ssl_openssl.so must be loaded. This module also adds the 
+# "* <user> is using a secure connection" whois line, the ability for
+# opers to use SSL fingerprints to verify their identity and the ability
+# to force opers to use SSL connections in order to oper up.
+# It is highly recommended to load this module especially if
+# you use SSL on your network.
+# For how to use the oper features, please see the first example <oper> tag
+# in opers.conf.example.
 #
 #<module name="m_sslinfo.so">
 
 #-#-#-#-#-#-#-#-#-#-#- 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 #
 # your configuration file!                                            #
 
-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# SSL Cert Oper module: Allows opers to oper up using the key fingerprint
-# stored within their SSL certificate and key pair.
-# When using this module, one of m_ssl_gnutls.so or m_ssl_openssl.so must
-# be loaded. An extra value should be added to enabled opers, which
-# is in the following format: fingerprint="<hash>". For more information,
-# see the example in the oper blocks.
-# This module is oper-only.
-#<module name="m_ssl_oper_cert.so">
-
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # Strip colour module: Adds the channel mode +S
 #<module name="m_stripcolor.so">
 #-#-#-#-#-#-#-#-#-#-#-#- 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">
 
 #<module name="m_testcommand.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# Timed bans module: Adds timed bans and the /TBAN command
-# This module is oper-only.
-# To use, TBAN must be in one of your oper class blocks.
+# Timed bans module: Adds timed channel bans and the /TBAN command
 #<module name="m_timedbans.so">
 
 #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
 # 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