rendered paste body########################################################################
# #
# ___ ___ ____ ____ _ #
# |_ _|_ __ ___ _ __|_ _| _ \ / ___|__| | #
# | || '_ \/ __| '_ \| || |_) | | / _` | #
# | || | | \__ \ |_) | || _ <| |__| (_| | #
# |___|_| |_|___/ .__/___|_| \_\\____\__,_| #
# |_| #
# ____ __ _ _ _ #
# / ___|___ _ __ / _(_) __ _ _ _ _ __ __ _| |_(_) ___ _ __ #
# | | / _ \| '_ \| |_| |/ _` | | | | '__/ _` | __| |/ _ \| '_ \ #
# | |__| (_) | | | | _| | (_| | |_| | | | (_| | |_| | (_) | | | | #
# \____\___/|_| |_|_| |_|\__, |\__,_|_| \__,_|\__|_|\___/|_| |_| #
# |___/ #
# #
##################################||####################################
#||#
##################################||####################################
# #
# This is an example of the config file for InspIRCd. #
# Change the options to suit your network #
# #
# $Id: inspircd.conf.example 7305 2007-06-14 17:36:55Z brain $
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# Lines prefixed with READ THIS BIT, as shown above, are IMPORTANT #
# lines, and you REALLY SHOULD READ THEM. Yes, THIS MEANS YOU. Even #
# if you've configured InspIRCd before, these probably indicate #
# something new or different to this version and you SHOULD READ IT. #
# #
########################################################################
# #
# Unalphabeticalise the modules list at your own risk #
# #
########################################################################
#-#-#-#-#-#-#-#-#-#-#-#- SERVER DESCRIPTION -#-#-#-#-#-#-#-#-#-#-#-#-
# #
# Here is where you enter the information about your server. #
# #
# Syntax is as follows: #
# #
# <server name="server.name" #
# description="Server Description" #
# networkemail="Email address shown on g/k/z/q lines" #
# network="MyNetwork"> #
# #
<server name="irc.twisteddenial.net"
description="TwistedDenial"
network="TwistedDenial">
#-#-#-#-#-#-#-#-#-#-#-#- ADMIN INFORMATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# Describes the Server Administrator's real name (optionally), #
# nick, and email address. #
# #
# Syntax is as follows: #
# <admin name="real name" #
# nick="nick name" #
# email="email@address.com"> #
# #
<admin name="Brandon"
nick="Brandon/Rage"
email="brandon@twisteddenial.net">
#-#-#-#-#-#-#-#-#-#-#-#- PORT CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-
# #
# Enter the port and address bindings here. #
# #
# bind address - specifies which address ports bind to. Leaving this #
# field blank binds the port to all IPs available. #
# #
# port - The port number to bind to. You may specify a port #
# range here, e.g. "6667-6669,7000,7001". If you do #
# this, the server will count each port within your #
# range as a seperate binding, making the above #
# example equivalent to five seperate bind tags. #
# A failure on one port in the range does not prevent #
# the entire range from being bound, just that one #
# port number. #
# #
# type - can be 'clients' or 'servers'. The clients type is #
# a standard tcp based socket, the servers type is a #
# also a TCP based connection but of a different #
# format. SSL support is provided by modules, to #
# enable SSL support, please read the module section #
# of this configuration file. #
# #
# ssl - When using m_ssl_gnutls.so or m_ssl_openssl.so #
# modules, you must define this value to use ssl on #
# that port. valid values are 'gnutls' or 'openssl' #
# respectively. If the module is not loaded, this #
# setting is ignored. #
# #
# transport - If you have m_spanningtree.so loaded, along with #
# either of the SSL modules (m_ssl_gnutls or #
# m_ssl_openssl) or m_ziplinks.so, then you may make #
# use of this value. #
# setting it to 'openssl' or 'gnutls' or 'zip' #
# indicates that the port should accept connections #
# using the given transport name. Transports are #
# layers which sit on top of a socket and change the #
# way data is sent and received, e.g. encryption, #
# compression, and other such things. Because this #
# may not be limited in use to just encryption, #
# the 'ssl' value used for client ports does not #
# exist for servers, and this value is used instead. #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# If you want to link servers to InspIRCd you must load the #
# m_spanningtree module! Please see the modules list below for #
# information on how to load this module! If you do not load this #
# module, server ports will NOT be bound! #
# #
# Leaving address empty binds to all available interfaces #
# #
# Syntax is as follows: #
# #
# <bind address="ip address" port="port" type="clients"> #
# <bind address="ip address" port="port" type="servers"> #
# #
# If InspIRCd is built for IPV6, and you wish to accept IPV4 clients, #
# then you can specify IPV4 ip addresses here to bind. You may also #
# use the 4in6 notation, ::ffff:1.2.3.4, where 1.2.3.4 is the IPV4 #
# address to bind the port, but as of InspIRCd 1.1.1, this is not #
# required. #
# #
# ------------------------------------------------------------------- #
# #
# PLEASE NOTE: If you have build InspIRCd as an ipv6 server, and you #
# specify an empty bind address, the binding will be bound to ALL THE #
# IPV6 IP ADDRESSES, and not the ipv4 addresses. If you are using an #
# ipv6 enabled InspIRCd and want to bind to multiple IPV4 addresses #
# in this way, you must specify them by hand. If you have built the #
# server for ipv4 connections only, then specifying an empty bind #
# address binds the port to all ipv4 IP addresses, as expected. #
# #
<bind address="69.60.123.4" port="6660-7009" type="clients">
<bind address="69.60.123.4" port="6667" type="clients">
<bind address="69.60.123.4" port="6668" type="clients">
<bind address="69.60.123.4" port="6669" type="clients">
<bind address="69.60.123.4" port="7000" type="clients">
<bind address="69.60.123.4" port="5000" type="servers">
<bind address="69.60.123.4" port="7010-7770" type="clients" ssl="gnutls">
<bind address="69.60.123.4" port="8767" type="servers">
<bind address="69.60.123.4" port="7252" type="servers">
<link name="services.twisteddenial.net"
ipaddr="69.60.123.4"
port="7252"
sendpass="link"
recvpass="link">
<uline server="services.twisteddenial.net">
#-#-#-#-#-#-#-#-#-#- DIE/RESTART CONFIGURATION -#-#-#-#-#-#-#-#-#-#-
# #
# You can configure the passwords here which you wish to use for #
# the die and restart commands. Only trusted ircops who will #
# need this ability should know the die and restart password. #
# #
# Syntax is as follows: #
# <power diepass="die password" restartpass="restart password" #
# pause="secs before dying"> #
# #
<power diepass="gd4f1hgd4352fg4tf645g6d45fd" restartpass="gd4fgsdf6s5g465df6s454b65dsfb" pause="2">
#-#-#-#-#-#-#-#-#-# INCLUDE CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# This optional tag allows you to include another config file #
# allowing you to keep your configuration tidy. The configuration #
# file you include will be treated as part of the configuration file #
# which includes it, in simple terms the inclusion is transparent. #
# #
# All paths to config files are relative to the directory of the main #
# config file inspircd.conf, unless the filename starts with a forward#
# slash (/) in which case it is treated as an absolute path. #
# #
# Syntax is as follows: #
#<include file="file.conf"> #
# #
#-#-#-#-#-#-#-#-#-#- CONNECTIONS CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# This is where you can configure which connections are allowed #
# and denied access onto your server. The password is optional. #
# You may have as many of these as you require. To allow/deny all #
# connections, use a '*' or 0.0.0.0/0. #
# #
# Syntax is as follows: #
# #
# <connect allow="1.2.3.0/24" password="blahblah" #
# timeout="10" timeout="blah" flood="5" #
# threshold="8" pingfreq="120" sendq="99999" #
# revcq="696969" localmax="3" globalmax="3" #
# port="6660"> #
# #
# <connect deny="127.0.0.1" port="6667"> #
# #
# IP masks may be specified in CIDR format or wildcard format, #
# for IPV4 and IPV6. You *cannot* use hostnames in the allow or #
# deny field, as the state is applied before the user's DNS has #
# been resolved. #
# #
# You may optionally include timeout="x" on any allow line, which #
# specifies the amount of time given before an unknown connection #
# is closed if USER/NICK/PASS are not given. This value is in secs #
# #
# You should also include a flood="x" line which indicates #
# the number of lines a user may place into their buffer at once #
# before they are disconnected for excess flood. This feature can #
# not be disabled, however it can be set to extremely high values, #
# rendering it effectively disabled. A recommended value is 10. #
# A counter is maintained for each user which is reset every #
# 'threshold' seconds and specifying this threshold value with #
# threshold="X" indicates how often the counter is reset. For #
# example, with flood="5" and threshold="8", the user may not send #
# more than 5 lines in 8 secs. #
# #
# You may optionally specify the sendq size and ping frequency of #
# each connect:allow line using the pingfreq="X" and sendq="X" #
# settings as shown in the full example below. #
# The ping frequency is specified in seconds, and the sendq size #
# in bytes. It is recommended, although not enforced, that you #
# should never set your sendq size to less than 8k. Send Queues are #
# dynamically allocated and can grow as needed up to the maximum #
# size specified. #
# #
# The optional recvq value is the maximum size which users in this #
# group may grow their receive queue to. This is recommended to be #
# kept pretty low compared to the sendq, as users will always #
# receive more than they send in normal circumstances. The default #
# if not specified is 4096. #
# #
# The sendq is the data waiting to be sent TO THE USER. #
# The recvq is the data being received FROM THE USER. #
# The names sendq and recvq are from the SERVER'S PERSPECTIVE not #
# that of the user... Just to clear up any confusion or complaints #
# that these are backwards :p #
# #
# The localmax and globalmax values can be used to enforce local #
# and global session limits on connections. The session limits are #
# counted against all users, but applied only to users within the #
# class. For example, if you had a class 'A' which has a session #
# limit of 3, and a class 'B' which has a session limit of 5, and #
# somehow, two users managed to get into class B which also match #
# class A, there is only one connection left for this IP now in A, #
# but if they can connect again to B, there are three. You get the #
# idea (i hope). #
# #
# The optional port value determines which port the connect tag is #
# handling. If left out the connect tag covers all bound ports else #
# only incoming connections on the specified port will match. Port #
# tags may be used on connect allow and connect deny tags. #
# #
<connect allow="196.12.*" password="secret" port="6667">
<connect allow="*"
timeout="60"
flood="20"
threshold="1"
pingfreq="120"
sendq="262144"
recvq="8192"
localmax="3"
globalmax="3"
modes="+x">
<connect deny="69.254.*">
<connect deny="3ffe::0/32">
#-#-#-#-#-#-#-#-#-#-#-#- CLASS CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-
# #
# Classes are a group of commands which are grouped together #
# and given a unique name. They used to define which commands #
# are available to certain types of Operators. #
# #
# Syntax is as follows: #
# #
# <class name="name" commands="oper commands"> #
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# You are not forced to give these classes the names given below. #
# You can create your own named classes, if you want, in fact that #
# is the whole idea of this system! #
# #
# Note: It is possible to make a class which covers all available #
# commands. To do this, specify commands="*". This is not really #
# recommended, as it negates the whole purpose of the class system, #
# however it is provided for fast configuration (e.g. in test nets) #
# #
<class name="Founder" commands="SAQUIT DIE RESTART REHASH LOADMODULE UNLOADMODULE RELOAD CBAN CHECK CHGHOST CHGIDENT CHGNAME CLONES DCCALLOW FILTER GRELOADMODULE GLOADMODULE GLOBOPS GUNLOADMODULE HELPOP JUMPSERVER LOCKSERV UNLOCKSERV NICKLOCK NICKUNLOCK MKPASSWD OPERMOTD SAJOIN SAPART SAMODE SANICK SAQUIT SETHOST SETIDENT SETIDLE SETNAME SPYLIST SPYNAMES SETHOST SWHOIS TLINE USERIP">
<class name="Shutdown" commands="DIE RESTART REHASH LOADMODULE UNLOADMODULE RELOAD">
<class name="ServerLink" commands="CONNECT SQUIT RCONNECT MKPASSWD MKSHA256">
<class name="BanControl" commands="KILL GLINE KLINE ZLINE QLINE ELINE">
<class name="OperChat" commands="WALLOPS GLOBOPS SETIDLE SPYLIST SPYNAMES">
<class name="HostCloak" commands="SETHOST SETIDENT SETNAME CHGHOST CHGIDENT">
<class name="IRCop" commands="KILL GLINE KLINE ZLINE QLINE ELINE REHASH CHGHOST CHGIDENT CHGNAME CHECK CHGHOST CHGIDENT CHGNAME CLONES DCCALLOW FILTER GRELOADMODULE GLOADMODULE GLOBOPS GUNLOADMODULE HELPOP JUMPSERVER LOCKSERV UNLOCKSERV NICKLOCK NICKUNLOCK MKPASSWD OPERMOTD SAJOIN SAPART SAMODE SANICK SETHOST SETIDENT SETIDLE SETNAME SPYLIST SPYNAMES SETHOST SWHOIS">
#-#-#-#-#-#-#-#-#-#-#-#- OPERATOR COMPOSITION -#-#-#-#-#-#-#-#-#-#-#
# #
# This is where you specify which types of operators you have on #
# your server, as well as the commands they are allowed to use. #
# This works alongside with the classes specified above. #
# #
# type name - a name for the combined class types #
# a type name cannot contain spaces, however if you #
# put an _ symbol in the name, it will be translated #
# to a space when displayed in a WHOIS. #
# #
# classes - specified above, used for flexibility for the #
# server admin to decide on which operators get #
# what commands. Class names are case sensitive, #
# seperate multiple class names with spaces. #
# #
# host - optional hostmask operators will receive on oper-up. #
# #
# Syntax is as follows: #
# #
# <type name="name" classes="class names" host="oper hostmask"> #
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# You are not forced to give these types the names given below. #
# You can create your own named types, if you want, in fact that #
# is the whole idea of this system! #
# #
<type name="Founder" classes="ModuleCommands Founder ChgName ChgIdent Connect SQuit SaMode SaJoin SaPart SaNick MkPasswd CBan SetIdle OperChat BanControl HostCloak Shutdown ServerLink LoadModule UnLoadModule " host="founder.on.twisteddenial.net">
<type name="Administrator" classes="ModuleCommands OperChat BanControl HostCloak Shutdown ServerLink" host="netadmin.twisteddenial.net">
<type name="IRC Operator" classes="OperChat BanControl HostCloak ServerLink" host="ircop.twisteddenial.net">
<type name="Moderator" classes="IRCop BanControl HostCloak" host="mod.twisteddenial.net">
<type name="Helper" classes="HostCloak" host="helper.twisteddenial.net">
<type name="Operator" classes="IRCop HostCloak" host="operator.twisteddenial.net">
#-#-#-#-#-#-#-#-#-#-#- OPERATOR CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# Opers are defined here. This is a very important section. #
# Remember to only make operators out of truthworthy people. #
# #
# name - oper name, This is case sensitive, so it is best to #
# use lower-case. #
# #
# password - password to oper-up, also case sensitive. #
# encryption is supported via modules. You may load #
# modules for MD5 or SHA256 encryption, and if you do, #
# this value will be a hash value, otherwise put a #
# plaintext password in this value. #
# #
# host - hosts of client allowed to oper-up. #
# wildcards accepted, seperate multiple hosts with a #
# space. You may also specify CIDR ip addresses. #
# #
# fingerprint - When using the m_ssl_oper_cert.so module, you may #
# specify a key fingerprint here. This can be obtained #
# using the /fingerprint command whilst the module is #
# loaded, or from the notice given to you when you #
# connect to the ircd using a client certificate, #
# and will lock this oper block to only the user who #
# has that specific key/certificate pair. #
# This enhances security a great deal, however it #
# requires that opers use clients which can send ssl #
# client certificates, if this is configured for that #
# oper. Note that if the m_ssl_oper.so module is not #
# loaded, and/or one of m_ssl_openssl or m_ssl_gnutls #
# is not loaded, this configuration option has no #
# effect and will be ignored. #
# #
# type - Defines the kind of operator. This must match a type #
# tag you defined above, and is case sensitive. #
# #
# Syntax is as follows: #
# <oper name="login" #
# password="pass" #
# host="hostmask@of.oper" #
# fingerprint="hexsequence" #
# type="oper type"> #
# #
<oper name="Brandon"
password="batch6"
host="*@*"
type="Founder">
<oper name="Collin"
password="cr230m"
host="*@*"
type="Founder">
<oper name="Branden"
password="thecharmedonepruehalliwell3601"
host="*@*"
type="Founder">
<oper name="RoxySummer"
password="soccer"
host="*@*"
type="Operator">
<oper name="Link"
password="faze1700"
host="*@*"
type="Moderator">
#-#-#-#-#-#-#-#-#-#-#- SERVER LINK CONFIGURATION -#-#-#-#-#-#-#-#-#-#
# #
# Defines which servers can link to this one, and which servers this #
# server may create outbound links to. #
# #
# name - The name is the canocial name of the server, does #
# not have to resolve - but it is expected to be set #
# in the remote servers connection info. #
# #
# ipaddr - Valid host or ip address for remote server. These #
# hosts are resolved on rehash, and cached, if you #
# specify a hostname, so if you find that your server #
# is still trying to connect to an old IP after you #
# have updated your dns, try rehashing and then #
# attempting the connect again. #
# #
# port - The TCP port for the remote server. #
# #
# sendpass - Password to send to create an outbound connection #
# to this server. #
# #
# recvpass - Password to receive to accept an inbound connection #
# from this server. #
# #
# autoconnect - Sets the server to autoconnect. Where x is the num. #
# (optional) of seconds between attempts. e.g. 300 = 5 minutes. #
# #
# transport - If defined, this is a transport name implemented by #
# another module. Transports are layers on top of #
# plaintext connections, which alter them in certain #
# ways. Currently the three supported transports are #
# 'openssl' and 'gnutls' which are types of SSL #
# encryption, and 'zip' which is for compression. #
# If you define a transport, both ends of the #
# connection must use a compatible transport for the #
# link to succeed. OpenSSL and GnuTLS are link- #
# compatible with each other. #
# #
# statshidden - When using m_spanningtree.so for linking. you may #
# set this to 'yes', and if you do, the IP address/ #
# hostname of this connection will NEVER be shown to #
# any opers on the network. In /STATS c its address #
# will show as *@<hidden>, and during CONNECT and #
# inbound connections, its IP will show as <hidden> #
# UNLESS the connection fails (e.g. due to a bad #
# password or servername) #
# #
# allowmask - When this is defined, it indicates a range of IP #
# addresses to allow for this link (You may use CIDR #
# or wildcard form for this address). #
# e.g. if your server is going to connect to you from #
# the range 1.2.3.1 through 1.2.3.255, put 1.2.3.0/24 #
# into this value. If it is not defined, then only #
# the ipaddr field of the server shall be allowed. #
# #
# failover - If you define this option, it must be the name of a #
# different link tag in your configuration. This #
# option causes the ircd to attempt a connection to #
# the failover link in the event that the connection #
# to this server fails. For example, you could define #
# two hub uplinks to a leaf server, and set an #
# american server to autoconnect, with a european #
# hub as its failover. In this situation, your ircd #
# will only try the link to the european hub if the #
# american hub is unreachable. NOTE that for the #
# intents and purposes of this option, an unreachable #
# server is one which DOES NOT ANSWER THE CONNECTION. #
# If the server answers the connection with accept(), #
# EVEN IF THE CREDENTIALS ARE INVALID, the failover #
# link will not be tried! Failover settings will also #
# apply to autoconnected servers as well as manually #
# connected ones. #
# #
# timeout - If this is defined, then outbound connections will #
# time out if they are not connected within this many #
# seconds. If this is not defined, the default of ten #
# seconds is used. #
# #
# bind - If you specify this value, then when creating an #
# outbound connection to the given server, the IP you #
# place here will be bound to. This is for multi- #
# homed servers which may have multiple IP addresses. #
# If you do not define this value, the first IP that #
# is not empty or localhost from your <bind> tags #
# will be bound to. This is usually acceptable, #
# however if your server has multiple network cards #
# then you may have to manually specify the bind #
# value instead of leaving it to automatic binding. #
# You can usually tell if you need to set this by #
# looking for the error 'Could not assign requested #
# address' in your log when connecting to servers. #
# #
# hidden - If this is set to true, yes, or 1, then the server #
# is completely hidden from non-opers. It does not #
# show in LINKS and it does not show in MAP. Also, #
# any servers which are child servers of this one #
# in the network will *also* be hidden. Use with #
# care! You can use this to 'mask off' sections of #
# the network so that users only see a small portion #
# of a much larger net. It should NOT be relied upon #
# as a security tool, unless it is being used for #
# example to hide a non-client hub, for which clients #
# do not have an IP address or resolvable hostname. #
# #
# to u:line a server (give it extra privilages required for running #
# services, Q, etc) you must include the <uline server> tag as shown #
# in the example below. You can have as many of these as you like. #
# #
# WARNING: Unlike other ircds, u:lining a server allows ALL users on #
# that server to operoverride modes. This should only be used for #
# services and protected oper servers! #
# #
# ------------------------------------------------------------------- #
# #
# NOTE: If you have built your server as an ipv6 server, then when a #
# DNS lookup of a server's host occurs, AAAA records (ipv6) are #
# priorotized over A records (ipv4). Therefore, if the server you are #
# connecting to has both an IPV6 ip address and an IPV4 ip address in #
# its DNS entry, the IPV6 address will *always* be selected. To #
# change this behaviour simply specify the IPV4 IP address rather #
# than the hostname of the server. #
# #
# ------------------------------------------------------------------- #
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# If you want to link servers to InspIRCd you must load the #
# m_spanningtree module! Please see the modules list below for #
# information on how to load this module! If you do not load this #
# module, server links will NOT work! #
# #
# Also, if you define any transports, you must load the modules for #
# these transports BEFORE you load m_spanningtree, e.g. place them #
# above it in the configuration file. Currently this means the three #
# modules m_ssl_gnutls, m_ziplinks and m_ssl_openssl, depending on #
# which you choose to use. #
# #
# ( Links Go Up were i fucking put them ) #
###########################################
#-#-#-#-#-#-#-#-#-#-#-#- ULINES CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-#-#
# This tag defines a ulined server. A U-Lined server has special #
# permissions, and should be used with caution. Services servers are #
# usually u-lined in this manner. #
# #
# The 'silent' value if set to yes indicates that this server should #
# not generate quit and connect notices, which can cut down on noise #
# to opers on the network. #
# #
#-#-#-#-#-#-#-#-#-#- MISCELLANEOUS CONFIGURATION -#-#-#-#-#-#-#-#-#-#
# #
# These options let you define the path to your motd and rules #
# files. If these are relative paths, they are relative to the #
# configurtion directory. #
# #
<files motd="inspircd.motd"
rules="inspircd.rules">
#-#-#-#-#-#-#-#-#-#-#-# MAXIMUM CHANNELS -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# This optional configuration tag lets you define the maximum number #
# of channels that both opers and users may be on at any one time. #
# the default is 20 for user and 60 for opers if this tag is not #
# defined. Remote users are not restricted in any manner. #
# #
<channels users="20"
opers="60">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-# DNS SERVER -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Define your DNS server address here. InspIRCd has its own resolver. #
# If you do not define this value, then then InspIRCd will attempt to #
# determine your DNS server from your operating system. On POSIX #
# platforms, InspIRCd will read /etc/resolv.conf, and populate this #
# value with the first DNS server address found. On Windows platforms #
# InspIRCd will check the registry, and use the DNS server of the #
# first active network interface, if one exists. #
# If a DNS server cannot be determined from these checks, the default #
# value '127.0.0.1' is used instead. The timeout value is in seconds. #
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# When choosing a server, be sure to choose one which will do a #
# RECURSIVE LOOKUP. InspIRCd's resolver does not currently do these #
# recursive lookups itself, to save time and resources. The dns #
# server recommended by the InspIRCd team is bind, available from the #
# ISC website. If your DNS server does not do a recursive lookup, you #
# will be able to notice this by the fact that none of your users are #
# resolving even though the DNS server appears to be up! Most ISP and #
# hosting provider DNS servers support recursive lookups. #
# #
# ------------------------------------------------------------------- #
# #
# NOTE: if you have built InspIRCd with IPV6 support, then both #
# ipv6 and ipv4 addresses are allowed here, and also in the system #
# resolv.conf file. Remember that an ipv4 dns server can still #
# resolve ipv6 addresses, and vice versa. #
# #
<dns server="127.0.0.1" timeout="5">
# An example of using an IPV6 nameserver
#<dns server="::1" timeout="5">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-# PID FILE -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Define the path to the PID file here. The PID file can be used to #
# rehash the ircd from the shell or to terminate the ircd from the #
# shell using shell scripts, perl scripts etc, and to monitor the #
# ircd's state via cron jobs. If this is a relative path, it will be #
# relative to the configuration directory, and if it is not defined, #
# the default of 'inspircd.pid' is used. #
# #
#<pid file="/path/to/inspircd.pid">
#-#-#-#-#-#-#-#-#-#-#-#-#- BANLIST LIMITS #-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Use these tags to customise the ban limits on a per channel basis. #
# the tags are read from top to bottom, and any tag found which #
# matches the channels name applies the banlimit to that channel. #
# It is advisable to put an entry with the channel as '*' at the #
# bottom of the list. If none are specified or no maxbans tag is #
# matched, the banlist size defaults to 64 entries. #
# #
<banlist chan="#morons" limit="128">
<banlist chan="*" limit="69">
#-#-#-#-#-#-#-#-#-#-#- DISABLED COMMANDS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# This tag is optional, and specifies one or more commands which are #
# not available to non-operators. For example you may wish to disable #
# NICK and prevent non-opers from changing their nicknames. #
# Note that any disabled commands take effect only after the user has #
# 'registered' (e.g. after the initial USER/NICK/PASS on connection) #
# so for example disabling NICK will not cripple your network. #
# #
#<disabled commands="TOPIC MODE">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#- RTFM LINE -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Just remove this... Its here to make you read ALL of the config #
# file options ;) #
#<die value="You should probably edit your config *PROPERLY* and try again.">
#-#-#-#-#-#-#-#-#-#-#-#-#- SERVER OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Settings to define which features are useable on your server. #
# #
# prefixquit - A prefix to be placed on the start of a client's #
# quit message #
# #
# suffixquit - A suffix to be placed on the end of a client's #
# quit message. #
# #
# fixedquit - A fixed quit message to display for all client #
# QUITS. If specified, overrides both prefixquit #
# and suffixquit options. #
# #
# loglevel - specifies what detail of messages to log in the #
# log file. You may select from debug, verbose, #
# default, sparse and none. #
# #
# allowhalfop - allows the +h channel mode #
# #
# noservices - If noservices is true, yes, or 1, then the first #
# user into a channel gets founder status. This is #
# only useful on networks running the m_chanprotect #
# module without services. #
# #
# qaprefixes - If qaprefixes is true, yes, or 1, then users #
# with +q or +a will get the ~ or & prefixes #
# used in unreal. This is only useful on networks #
# running the m_chanprotect module #
# #
# deprotectself - If this value is set to yes, true, or 1, then any #
# user with +q or +a may remove the +q or +a from #
# themselves. The default setting is to not enable #
# this feature, which stops even the founder taking #
# away their founder status without using services. #
# #
# deprotectothers-If this value is set to yes, true, or 1, then any #
# user with +q or +a may remove the +q or +a from #
# other users. The default setting is to not enable #
# this feature, so that only +q may remove +a, and #
# nothing but services may remove +q. #
# #
# cyclehosts - If this is set to true, yes or 1, then when a #
# user's hostname changes, they will appear to quit #
# and then rejoin with their new host. This prevents #
# clients from being confused by host changes, #
# especially in the case of bots, and it is #
# recommended that this option is enabled. #
# #
# netbuffersize - size of the buffer used to receive data from #
# clients. The ircd may only read() this amount #
# of text in one go at any time. (OPTIONAL) #
# #
# maxwho - The maximum number of results returned by a /WHO #
# query. This is to prevent /WHO being used as a #
# spam vector or means of flooding an ircd. The #
# default is 128, it is not recommended to raise it #
# above 1024. Values up to 65535 are permitted. #
# #
# somaxconn - The maximum number of sockets that may be waiting #
# in the accept queue. This usually allows the ircd #
# to soak up more connections in a shorter space of #
# time when increased but please be aware there is a #
# system defined maximum value to this, the same way #
# there is a system defined maximum number of file #
# descriptors. Some systems may only allow this to #
# be up to 5 (ugh) while others such as FreeBSD will #
# default to a much nicer 128. #
# #
# moduledir - This optional value indicates a runtime change of #
# the location where modules are to be found. This #
# does not add a supplementary directory. There can #
# only be one module path. #
# #
# softlimit - This optional feature allows a defined softlimit. #
# if defined sets a soft maxconnections value, has #
# to be less than the ./configure maxclients #
# #
# userstats - The userstats field is optional and specifies #
# which stats characters in /STATS may be requested #
# by non-operators. Stats characters in this field #
# are case sensitive and are allowed to users #
# independent of if they are in a module or the core #
# #
# operspywhois - If this is set then when an IRC operator uses #
# /WHOIS on a user they will see all channels, even #
# ones if channels are secret (+s), private (+p) or #
# if the target user is invisible +i. #
# #
# customversion - If you specify this configuration item, and it is #
# not set to an empty value, then when a user does #
# a /VERSION command on the ircd, this string will #
# be displayed as the second portion of the output, #
# replacing the system 'uname', compile flags and #
# socket engine/dns engine names. You may use this #
# to enhance security, or simply for vanity. #
# #
# maxtargets - The maxtargets field is optional, and if not #
# defined, defaults to 20. It indicates the maximum #
# number of targets which may be given to commands #
# such as PRIVMSG, KICK etc. #
# #
# hidesplits - When set to 'yes', will hide split server names #
# from non-opers. Non-opers will see '*.net *.split' #
# instead of the server names in the quit message, #
# identical to the way IRCu displays them. #
# #
# hidebans - When set to 'yes', will hide gline, kline, zline #
# and qline quit messages from non-opers. For #
# example, user A who is not an oper will just see #
# (G-Lined) while user B who is an oper will see the #
# text (G-Lined: Reason here) instead. #
# #
# hidewhois - When defined with a non-empty value, the given #
# text will be used in place of the user's server #
# in WHOIS, when a user is WHOISed by a non-oper. #
# For example, most nets will want to set this to #
# something like '*.netname.net' to conceal the #
# actual server the user is on. #
# #
# flatlinks - When you are using m_spanningtree.so, and this #
# value is set to true, yes or 1, /MAP and /LINKS #
# will be flattened when shown to a non-oper. #
# #
# hideulines - When you are using m_spanningtree.so, and this #
# value is set to true, yes or 1, then U-lined #
# servers will be hidden in /LINKS and /MAP. For non #
# opers. Please be aware that this will also hide #
# any leaf servers of a U-lined server, e.g. jupes. #
# #
# nouserdns - If set to 'yes', 'true' or '1', no user dns #
# lookups will be performed for connecting users. #
# this can save a lot of resources on very busy irc #
# servers. #
# #
# syntaxhints - If set to 'yes', 'true' or '1', when a user does #
# not give enough parameters for a command, a syntax #
# hint will be given (using the RPL_TEXT numeric) #
# as well as the standard ERR_NEEDMOREPARAMS. #
# #
# announcets - If this value is defined to 'yes', 'true' or '1', #
# then if a channel's timestamp is updated the users #
# on the channel will be informed of the change via #
# a server notice to the channel with the old and #
# new TS values in the timestamp. If you think this #
# is just pointless noise, define the value to 0. #
# #
# ircumsgprefix - Use undernet style message prefix for channel #
# NOTICE and PRIVMSG adding the prefix to the line #
# of text sent out. Eg. NOTICE @#test :@ testing #
# vs. the off setting: NOTICE @#test :testing #
# #
# hostintopic - If this is set to yes (the default) then the full #
# nick!user@host is shown for who set a TOPIC last. #
# if set to no, then only the nickname is shown. #
# #
# announceinvites #
# - If this option is set to yes (the default), then #
# invites are announced to the channel when a user #
# invites annother user. If you consider this to be #
# unnecessary noise, explicitly set this to no. #
# #
# disablehmac - If you are linking your InspIRCd to older versions #
# then you can specify this option and set it to #
# yes. 1.1.6 and above support HMAC and challenge- #
# response for password authentication. These can #
# greatly enhance security of your server to server #
# connections when you are not using SSL (as is the #
# case with a lot of larger networks). Linking to #
# older versions of InspIRCd should not *usually* be #
# a problem, but if you have problems with HMAC #
# authentication, this option can be used to turn it #
# off. #
# #
# hidemodes - If this option is enabled, then the listmodes #
# given (e.g. +eI), will be hidden from users below #
# halfop. This is not recommended to be set on mode #
# +b, as it may break some features in popular #
# clients such as mIRC. #
# #
# quietbursts - When synching or splitting from the network, a #
# server can generate a lot of connect and quit #
# snotices to the +C and +Q snomasks. Setting this #
# value to yes squelches those messages, which can #
# make them more useful for opers, however it will #
# degrade their use by certain third party programs #
# such as BOPM which rely on them to scan users when #
# a split heals in certain configurations. #
# #
# pingwarning - This should be set to a number between 1 and 59 if #
# defined, and if it is defined will cause the server#
# to send out a warning via snomask +l if a server #
# does not answer to PING after this many seconds. #
# This can be useful for finding servers which are #
# at risk of pinging out due to network issues. #
# #
# exemptchanops - This option allows channel operators to be exempted#
# from certain channel modes. #
# Supported modes are +SfgNc. Defaults to off. #
# #
# defaultmodes - The default modes to be given to each channel on #
# creation. Defaults to 'nt'. There should be no + #
# or - symbols in this sequence, if you add them #
# they will be ignored. You may add parameters for #
# parameterised modes. #
# #
# moronbanner - The NOTICE to show to users who are glined, zlined #
# klined or qlined when they are disconnected. This #
# is totally freeform, you may place any text here #
# you wish. #
# #
<options prefixquit="Quit IRC: "
loglevel="default"
netbuffersize="10240"
maxwho="128"
noservices="no"
qaprefixes="no"
deprotectself="no"
deprotectothers="no"
somaxconn="128"
softlimit="12800"
userstats="Pu"
operspywhois="no"
customversion=""
maxtargets="20"
hidesplits="no"
hidebans="no"
hidewhois=""
flatlinks="no"
hideulines="no"
nouserdns="no"
syntaxhints="no"
cyclehosts="yes"
ircumsgprefix="no"
announcets="yes"
disablehmac="no"
hostintopic="yes"
hidemodes="eI"
quietbursts="yes"
pingwarning="15"
allowhalfop="yes"
defaultmodes="nt"
moronbanner="You're banned! Email haha@abuse.com with the ERROR line below for help."
exemptchanops=""
moduledir="/home/brandon/inspircd/modules">
#-#-#-#-#-#-#-#-#-#-#-#-#-#- TIME SYNC OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#
# Time sychronization options for m_spanningtree linking. #
# #
# Because IRC is very time and clock dependent, InspIRCd provides its #
# own methods for syncronization of time between servers as shown #
# in the example below, for servers that don't have ntpd running. #
# #
# enable - If this value is 'yes', 'true', or '1', time #
# synchronization is enabled on this server. This #
# means any servers you are linked to will #
# automatically synchronize time, however you should #
# use ntpd instead where possible, NOT this option. #
# #
# master - If this value is set to yes, then this server will #
# act as the authoritative time source for the whole #
# network. All other servers will respect its time #
# without question, and match their times to it. #
# only one server should have the master value set #
# to 'yes'. #
# #
<timesync enable="yes" master="no">
#-#-#-#-#-#-#-#-#-#-#-#-#- WHOWAS OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# This tag lets you define the behaviour of the /whowas command of #
# your server. #
# #
# groupsize - Controls the maximum entries per nick shown when #
# performing a /whowas nick. Setting this to 0 dis- #
# ables whowas completely. #
# #
# maxgroups - The maximum number of nickgroups that can be added #
# to the list. If max is reached, oldest group will #
# be deleted first like a FIFO. A groupsize of 3 and #
# a maxgroups of 5000 will allow for 5000 nicks to #
# be stored with a history of 3, thus giving a total #
# of 3 * 5000 = 15000 entries. A setting of 0 dis- #
# ables whowas completely. #
# #
# maxkeep - The maximum time a nick is kept in the whowas list #
# before being pruned. Time may be specified in #
# seconds, or in the following format: 1y2w3d4h5m6s #
# meaning one year, two weeks, three days, 4 hours, #
# 5 minutes and 6 seconds. All fields in this format #
# are optional. Minimum is 1 hour, if less InspIRCd #
# will default back to 1 hour. #
# #
#<whowas groupsize="10" #
# maxgroups="100000" #
# maxkeep="3d"> #
#-#-#-#-#-#-#-#-#-#-#-#-#- MODULE OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# These tags define which modules will be loaded on startup by your #
# server. Add modules without any paths. When you make your ircd #
# using the 'make' command, all compiled modules will be moved into #
# the folder you specified when you ran ./configure. The module tag #
# automatically looks for modules in this location. #
# If you attempt to load a module outside of this location, either #
# in the config, or via /LOADMODULE, you will receive an error. #
# #
# 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#
# each modules link for any additional conf tags they require. #
# #
# You may use wildcards in a <module> tag to load all modules which #
# match a glob pattern (e.g. m_sa????.so would load m_sajoin, #
# m_sapart, m_saquit and m_sanick) #
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# | |_) / _ \/ _` |/ _` | | | | '_ \| / __| | _ \| | __| | #
# | _ < __/ (_| | (_| | | | | | | | \__ \ | |_) | | |_|_| #
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# To link servers to InspIRCd, you MUST load the m_spanningtree #
# module, as shown below. If you DO NOT do this, server links will #
# NOT work at all. ie. The ports will NOT bind, and /connect will not #
# work properly. This is by design, to allow for the implementation #
# of other linking protocols in modules in the future. #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Spanning Tree module - allows linking of servers using the spanning
# tree protocol (see the READ THIS BIT section above).
#
<module name="m_spanningtree.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# MD5 Module - Allows other modules to generate MD5 hashes, usually for
# cryptographic uses and security.
#
# IMPORTANT:
# Other modules such as m_cloaking.so and m_opermd5.so may rely on
# this module being loaded to function.
#
#<module name="m_md5.so">
#
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SHA256 Module - Allows other modules to generate SHA256 hashes,
# usually for cryptographic uses and security.
#
# IMPORTANT:
# Other modules such as m_opermd5.so may rely on this module being
# loaded to function.
#
#<module name="m_sha256.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Alias module: Allows you to define server-side command aliases
<module name="m_alias.so">
#
#-#-#-#-#-#-#-#-#-#-#- ALIAS DEFINITIONS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# If you have the m_alias.so module loaded, you may also define #
# aliases as shown below. They are commonly used to provide shortcut #
# commands to services, however they are not limited to just this use.#
# An alias tag requires the following values to be defined in it: #
# #
# text - The text to detect as the actual command line, #
# Cant contain spaces, but case insensitive. #
# You may have multiple aliases with the same #
# command name (text="" value), however the first #
# found will be executed if its format value is #
# matched, or it has no format value. Aliases are #
# read from the top of the file to the bottom. #
# #
# 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 #
# the alias to be executed, set format="#*" in the #
# alias definition. Note that the :'s which are #
# part of IRC formatted lines will be preserved #
# for matching of this text. This value is #
# optional. #
# #
# replace - The text to replace 'text' with. Usually this #
# will be "PRIVMSG ServiceName :$2-" or similar. #
# You may use the variables $1 through $9 in the #
# replace string, which refer to the first through #
# ninth word in the original string typed by the #
# user. You may also use $1- through $9- which #
# refer to the first word onwards, through to the #
# ninth word onwards, e.g. if the user types the #
# command "foo bar baz qux quz" then $3- will hold #
# "baz qux quz" and $2 will contain "bar". You may #
# also use the special variables: $nick, $ident, #
# $host and $vhost, and you may seperate multiple #
# commands with \n. If you wish to use the ACTUAL #
# characters \ and n together in a line, you must #
# use the sequence "\\n". #
# #
# requires - If you provide a value for 'requires' this means #
# the given nickname MUST be online for the alias #
# to successfully trigger. If they are not, then #
# the user receives a 'no such nick' 401 numeric. #
# #
# uline - Defining this value with 'yes', 'true' or '1' #
# will ensure that the user given in 'requires' #
# must also be on a u-lined server, as well as #
# actually being on the network. If the user is #
# online, but not on a u-lined server, then an #
# oper-alert is sent out as this is possibly signs #
# of a user trying to impersonate a service. #
# #
# operonly - Defining this value, with a value of 'yes', '1' #
# or true will make the alias oper only. If a non- #
# oper attempts to use the alias, it will appear #
# to not exist. #
# #
<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="MEMOSERV" replace="PRIVMSG MemoServ :$2-" requires="MemoServ" uline="yes">
<alias text="HOSTSERV" replace="PRIVMSG HostServ :$2-" requires="MemoServ" uline="yes" operonly="yes">
<alias text="BOTSERV" replace="PRIVMSG BotServ :$2-" requires="BotServ" uline="yes" operonly="yes">
# Note: We can't have a shorthand version of this, it conflicts with HS for helpserv
<alias text="HELPSERV" replace="PRIVMSG HelpServ :$2-" requires="HelpServ" uline="yes">
# Shorthand aliases for nickserv, chanserv, operserv, memoserv
<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="MS" replace="PRIVMSG MemoServ :$2-" requires="MemoServ" uline="yes">
<alias text="HS" replace="PRIVMSG HostServ :$2-" requires="HostServ" uline="yes" operonly="yes">
<alias text="BS" replace="PRIVMSG BotServ :$2-" requires="BotServ" uline="yes" operonly="yes">
# /id [channel] <password>
# Identify for a channel or nickname
<alias text="IDENTIFY" format="#*" replace="PRIVMSG ChanServ :IDENTIFY $2 $3" requires="ChanServ" uline="yes">
<alias text="IDENTIFY" format="*" replace="PRIVMSG NickServ :IDENTIFY $2" requires="NickServ" uline="yes">
<alias text="ID" format="#*" replace="PRIVMSG ChanServ :IDENTIFY $2 $3" requires="ChanServ" uline="yes">
<alias text="ID" format="*" replace="PRIVMSG NickServ :IDENTIFY $2" requires="NickServ" uline="yes">
<alias text="REGISTER" format="#*" replace="PRIVMSG ChanServ :REGISTER $2 $3 $4" requires="ChanServ" uline="yes">
<alias text="REGISTER" format="*" replace="PRIVMSG NickServ :REGISTER $2 $3" requires="NickServ" uline="yes">
<alias text="REG" format="#*" replace="PRIVMSG ChanServ :REGISTER $2 $3 $4" requires="ChanServ" uline="yes">
<alias text="REG" format="*" replace="PRIVMSG NickServ :REGISTER $2 $3" requires="NickServ" uline="yes">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Alltime module: Shows time on all connected servers at once
#<module name="m_alltime.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Antibear security module: Prevents 'bear.txt' based trojans from
# connecting to your network by sending them a numeric they can't handle.
#<module name="m_antibear.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Antibottler module: Labels bottler leech bots
#<module name="m_antibottler.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Auditorium module: Adds channel mode +u which makes everyone else
# except you in the channel invisible, used for large meetings etc.
<module name="m_auditorium.so">
#
# Auditorium settings:
#
<auditorium showops="yes">
#
# Setting this value to yes makes m_auditorium behave like unrealircd
# +u channel mode, e.g. ops see users joining, parting, etc, and users
# joining the channel see the ops. Without this flag, the mode acts
# like ircnet's +a (anonymous channels), showing only the user in the
# names list, and not even showing the ops in the list, or showing the
# ops that the user has joined.
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Ban except module: Adds support for channel ban exceptions (+e)
#<module name="m_banexception.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Ban redirection module: Allows bans which redirect to a specified
# channel. e.g. +b nick!ident@host#channelbanneduserissentto
<module name="m_banredirect.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Block amsg module: Attempt to block all usage of /amsg and /ame
#<module name="m_blockamsg.so">
#
#-#-#-#-#-#-#-#-#-#-#- BLOCKAMSG CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# If you have the m_blockamsg.so module loaded, you can configure it #
# with the <blockamsg> tag: #
# #
# delay - How many seconds between two messages to force #
# them to be recognised as unrelated. #
# action - Any of 'notice', 'noticeopers', 'silent', 'kill' #
# or 'killopers'. Define how to take action when #
# a user uses /amsg or /ame. #
#
#<blockamsg delay="3" action="killopers">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Block CAPS module: Blocking all-CAPS messages with cmode +P
#<module name="m_blockcaps.so">
# #
#-#-#-#-#-#-#-#-#-#-#- BLOCKCAPS CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# percent - How many percent of text must be caps before text #
# will be blocked. #
# #
# minlen - The minimum length a line must be for the block #
# percent to have any effect. #
# #
# capsmap - A list of chars to be considered CAPS, this was #
# you can add CAPS for your language. Also you can #
# add things like ! and space to further lock down #
# on caps usage. #
#<blockcaps percent="50"
# minlen="5"
# capsmap="ABCDEFGHIJKLMNOPQRSTUVWXYZ! ">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Block colour module: Blocking colour-coded messages with cmode +c
<module name="m_blockcolor.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Botmode module: Adds the user mode +B
<module name="m_botmode.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# CBAN module: Lets you disallow channels from being used at runtime.
#<module name="m_cban.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Censor module: Adds the channel mode +G
#<module name="m_censor.so">
#
#-#-#-#-#-#-#-#-#-#-#- CENSOR CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# 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 #
#
#<include file="censor.conf">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# CGI:IRC module: Adds support for automatic host changing in CGI:IRC
# (http://cgiirc.sourceforge.net).
#<module name="m_cgiirc.so">
#
#-#-#-#-#-#-#-#-#-#-#-# CGIIRC CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-#-#
#
# Optional - If you specify to use m_cgiirc, then you must specify one
# or more cgihost tags which indicate authorized 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
#
# Set to yes if you want to notice opers when CGI clients connect
# <cgiirc opernotice="no">
#
# The type field indicates where the module should get the real
# client's IP address from, for further information, please see the
# CGI:IRC documentation.
#
# <cgihost type="pass" mask="www.mysite.com"> # Get IP from PASS
# <cgihost type="webirc" mask="somebox.mysite.com"> # Get IP from WEBIRC
# <cgihost type="ident" mask="otherbox.mysite.com"> # Get IP from ident
# <cgihost type="passfirst" mask="www.mysite.com"> # See the docs
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Channel create module: Adds snomask +j, which will notify opers of
# any new channels that are created
#<module name="m_chancreate.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Channel filter module: Allows channel-op defined message
# filtering using simple string matches (channel mode +g)
#<module name="m_chanfilter.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Chanprotect module: gives +q and +a channel modes
#<module name="m_chanprotect.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Check module: gives /check
# Check is useful for looking up information on channels,
# users, IP addresses and hosts.
#<module name="m_check.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# CHGHOST module: Adds the /CHGHOST command
#<module name="m_chghost.so">
#
#-#-#-#-#-#-#-#-# /CHGHOST - /SETHOST CONFIGURATION #-#-#-#-#-#-#-#-#
# Optional - If you want to use special chars for hostnames you can #
# specify your own custom list of chars with the <hostname> tag: #
# #
# charmap - A list of chars accepted as valid by the /CHGHOST #
# and /SETHOST commands. Also note that the list is #
# case-sensitive. #
<hostname charmap="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_/0123456789{|}~ ¡¢£¤¥¹¸·¶µ´³²±°¯®¬«ª©¨§¦º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍáàßÞÝÜÛÚÙØ×ÖÕÔÓÒÑÐÏÎâãäåæçèéêëìíîïðñòóôõ??????????ÿþö÷øùúûüý‰??•…™">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# CHGIDENT module: Adds the /CHGIDENT command
#<module name="m_chgident.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Cloaking module: Adds usermode +x and cloaking support.
# Relies on the module m_md5.so being loaded before m_cloaking.so in
# the configuration file.
<module name="m_cloaking.so">
#
#-#-#-#-#-#-#-#-#-#-#- CLOAKING CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you specify the m_cloaking.so module as above, you #
# must define cloak keys, and optionally a cloak prefix as shown #
# below. When using cloaking, the cloak keys are MANDITORY and must #
# be included. However, if prefix is not included, it will default #
# to your networks name from the <server> tag. #
# #
<cloak key1="0x2AF39F40" #
key2="0x78E10B32" #
key3="0x4F2D2E82" #
key4="0x043A4C81" #
prefix="xragex"> #
# #
# Please note that the key values will accept any number, and should #
# be large numbers. Using small numbers such as "7" or "1924" will #
# seriously weaken the security of your cloak. It is recommended you #
# use hexdecimal numbers prefixed by "0x", as shown in this example, #
# with each key eight hex digits long. #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Clones module: Adds an oper command /CLONES for detecting cloned
# users. Warning: This module may be resource intensive when its
# command is issued, use with care.
#<module name="m_clones.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Conn-Join: Allows you to force users to join one or more channels
# automatically upon connecting to the server.
#<module name="m_conn_join.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- CONNJOIN CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
#
# If you have m_conn_join.so loaded, you can configure it using the
# follow values:
#
#<autojoin channel="#one,#two,#three">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Conn-Usermodes: Set modes on users when they connect
# When this module is loaded <connect:allow> tags may have an optional
# modes="" value, which contains modes to add or remove from users
# when they connect to the server.
<module name="m_conn_umodes.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Conn-Wait-for-Pong: Don't let a user connect until they PONG
#<module name="m_conn_waitpong.so">
#
#-#-#-#-#-#-#-#-#-#-#- WAITPONG CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# If you have the m_conn_waitpong.so module loaded, configure it with #
# the <waitpong> tag: #
# #
# sendsnotice - Whether to send a snotice on connect, like other #
# older ircds #
# #
# killonbadreply - Whether to kill the user if they send the wrong #
# PONG reply. #
# #
#<waitpong sendsnotice="yes" killonbadreply="yes">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Channel cycle module. Server side /hop, with +ilk etc bypass.
#<module name="m_cycle.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Connection throttle module. Configuration:
#<module name="m_connflood.so">
#
#-#-#-#-#-#-#-#-#-#-#- CONTHROTTLE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# seconds, maxconns - Amount of connections per <seconds>.
#
# timeout - Time to wait after the throttle was activated
# before deactivating it. Be aware that the time
# is seconds + timeout.
#
# quitmsg - The message that users get if they attempt to
# connect while the throttle is active.
#
# bootwait - Amount of time to wait before enforcing the
# throttling when the server just booted.
#
#<connflood seconds="30" maxconns="3" timeout="30"
# quitmsg="Throttled" bootwait="10">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# DCCALLOW module: Adds the /DCCALLOW command
<module name="m_dccallow.so">
#
#-#-#-#-#-#-#-#-#-#-#- DCCALLOW CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# blockchat - Whether to block DCC CHAT as well as DCC SEND
# length - Default duration of entries in DCCALLOW list
# action - Default action to take if no action is specified
# can be 'block' or 'allow'
#
# File configuration:
# pattern - The glob pattern to match against
# action - Action to take if a user attempts to send a file
# that matches this pattern, can be 'block' or 'allow'
#
<dccallow blockchat="yes" length="5m" action="block">
<banfile pattern="*.exe" action="block">
<banfile pattern="*.txt" action="allow">
#
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Deaf module: adds support for ircu style usermode +d - deaf to
# channel messages and channel notices.
#<module name="m_deaf.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Deny Channels: Deny Channels from being used by users
#<module name="m_denychans.so">
#
#-#-#-#-#-#-#-#-#-#-#- DENYCHAN DEFINITIONS -#-#-#-#-#-#-#-#-#-#-#-#
# #
# If you have the m_denychans.so module loaded, you need to specify #
# the channels to deny: #
# #
# name - The channel name to deny. #
# #
# allowopers - If operators are allowed to override the deny. #
# #
# reason - Reason given for the deny. #
# #
#<badchan name="#gods" allowopers="yes" reason="Tortoises!">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Devoice Module: Let users devoice themselves.
<module name="m_devoice.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# DNS Blacklist Module: Provides support for looking up IPs on one or #
# more blacklists. #
#<module name="m_dnsbl.so"> #
# #
# For configuration options please see the wiki page for m_dnsbl at #
# http://inspircd.org/wiki/DNS_Blacklist_Module #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Filter module: Provides glob-based message filtering
<module name="m_filter.so">
# OR
# PCRE filter module: Filters messages using regular expressions
#<module name="m_filter_pcre.so">
#
# You may only use one or the other with these modules, network-wide.
#
#-#-#-#-#-#-#-#-#-#-#- FILTER CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you specify to use the m_filter or m_filter_pcre #
# modules, then specfiy below the path to the filter.conf file, #
# or define some <filter> tags. #
# #
<include file="inspircd.filter">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Foobar module: does nothing - historical relic
#<module name="m_foobar.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Globops module: gives /GLOBOPS and usermode +g
<module name="m_globops.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Global load module: Allows loading and unloading of modules network-
# wide (USE WITH EXTREME CAUTION!)
#<module name="m_globalload.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# HELPOP module: Provides the /HELPOP command
#<module name="m_helpop.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- HELPOP CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you specify to use the m_helpop.so module, then #
# specify below the path to the helpop.conf file, or if you like to #
# make a mess, define your helpop tags in this conf. #
# #
#<include file="helpop.conf">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# HIDECHANS module: Allows opers to hide their channels list from non-
# opers by setting user mode +I on themselves.
<module name="m_hidechans.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# HIDEOPER module: Allows opers to hide their oper status from non-
# opers by setting user mode +H on themselves.
<module name="m_hideoper.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Hostchange module: Allows a different style of cloaking
<module name="m_hostchange.so">
#
#-#-#-#-#-#-#-#-#-#-#- HOSTCHANGE CONFIGURATION -#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you choose to use the m_hostchange.so module. #
# Config Help - See http://www.inspircd.org/wiki/Host_Changer_Module #
# #
#<host suffix="polarbears.org" separator="." prefix="">
#<hostchange mask="*@fbi.gov" action="addnick">
#<hostchange mask="*r00t@*" action="suffix">
#<hostchange mask="a@b.com" action="set" value="blah.blah.blah">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# httpd module: Provides http server support for InspIRCd
#<module name="m_httpd.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- HTTPD CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
#
# Optional - If you choose to use the m_httpd.so module, then you must
# specify the port number and other details of your http server:
#
#<http ip="192.168.1.10" host="brainwave" port="32006"
# index="/home/brain/inspircd/http/index.html">
#
# You may have as many of these tags as you wish, each with a different
# IP, port, host or index file. Each one will act as an independent
# HTTP server.
#
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# 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
#<module name="m_ident.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- IDENT CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you are using the m_ident.so module, then you can #
# specify the timeout for ident lookups here. If not defined, it will #
# default to one second. This is a non-blocking timeout which holds #
# 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=""> #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Invite except module: Adds support for channel invite exceptions (+I)
#<module name="m_inviteexception.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Invisible module - Adds support for usermode +Q (quiet) which lets an
# 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.
#
<module name="m_invisible.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Join flood module: Adds support for join flood protection (+j)
<module name="m_joinflood.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Jump Server module: Adds support for the RPL_REDIR numeric
#<module name="m_jumpserver.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Anti-Auto-Rejoin: Adds support for prevention of auto-rejoin (+J)
<module name="m_kicknorejoin.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Knock module: adds the /KNOCK command and +K channel mode
#<module name="m_knock.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Lock server module: Adds /LOCKSERV and /UNLOCKSERV commands that is #
# used to temporarily close/open for new connections to the server. #
# These commands require OPER status and that the LOCKSERV UNLOCKSERV #
# are specified in a <class> tag that the oper is part of. This is so #
# you can control who has access to this possible dangerous command. #
# If your server is locked and you got disconnected, do a REHASH from #
# shell to open up again.
#<module name="m_lockserv.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Msg flood module: Adds message/notice flood protection (+f)
<module name="m_messageflood.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# MySQL module: Allows other SQL modules to access MySQL databases
# through a unified API. You must copy the source for this module
# from the directory src/modules/extra, plus the file m_sqlv2.h
#<module name="m_mysql.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- 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 #
#
#<database name="mydb" username="myuser" password="mypass" hostname="localhost" id="my_database2">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# NAMESX module: Provides support for the NAMESX extension which allows
# clients to see all the prefixes set on a user without getting confused.
# This is supported by mIRC, x-chat, klient, and maybe more.
<module name="m_namesx.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Nicklock module: Let opers change a user's nick and then stop that
# user from changing their nick again.
#<module name="m_nicklock.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# No ctcp module: Adds the channel mode +C to block CTCPs
<module name="m_noctcp.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Noinvite module: Gives channel mode +V
<module name="m_noinvite.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# No kicks module: Adds the +Q channel mode
<module name="m_nokicks.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# No nicks module: Adds the +N channel mode
<module name="m_nonicks.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# No Notice module: adds the channel mode +T
<module name="m_nonotice.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper channels mode: Adds the +O channel mode
<module name="m_operchans.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper hash module: Allows hashed oper passwords
# Relies on the module m_md5.so and/or m_sha256.so being loaded before
# m_oper_hash.so in the configuration file.
#<module name="m_oper_hash.so">
#
#-#-#-#-#-#-#-#-#-#-# OPER HASH CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-#-#
#
# To use this module, you must define a hash type for each oper's
# password you want to hash. For example:
#
# <oper name="Brain"
# host="ident@dialup15.isp.com"
# hash="sha256"
# password="a41d730937a53b79f788c0ab13e9e1d5"
# type="NetAdmin">
#
# The types of hashing available vary depending on which hashing modules
# you load, but usually if you load m_sha256.so and m_md5.so, both md5
# and sha256 type hashing will be available (the most secure of which
# is SHA256).
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper Join module: Forces opers to join a channel on oper-up
<module name="m_operjoin.so">
#
#-#-#-#-#-#-#-#-#-#-# OPERJOIN CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# If you are using the m_operjoin.so module, specify the channel here #
# #
<operjoin channel="#Lounge,#Staff,#Help,#Services">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper MOTD module: Provides support for seperate message of the day
# on oper-up
#<module name="m_opermotd.so">
#
#-#-#-#-#-#-#-#-#-#-# OPERMOTD CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# If you are using the m_opermotd.so module, specify the motd here #
# #
#<opermotd file="oper.motd">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Override module: Adds support for oper override
#<module name="m_override.so">
#
#-#-#-#-#-#-#-#-#-#-# OVERRIDE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# m_override.so is too complex it describe here, see the wiki: #
# http://www.inspircd.org/wiki/Oper_Override_Module #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper levels module: Gives each oper a level and prevents
# actions being taken against higher level opers
# Specify the level as the 'level' parameter of the <type> tag
#<module name="m_operlevels.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Oper modes module: Allows you to specify modes to add/remove on oper
# Specify the modes as the 'modes' parameter of the <type> tag
#<module name="m_opermodes.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# PostgreSQL module: Allows other SQL modules to access PgSQL databases
# through a unified API. You must copy the source for this module
# from the directory src/modules/extra, plus the file m_sqlv2.h
#<module name="m_pgsql.so">
#
#-#-#-#-#-#-#-#-#-#-#-#- 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 #
#
#<database name="mydb" username="myuser" password="mypass" hostname="localhost" id="my_database" ssl="no">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Random Quote module: provides a random quote on connect.
# NOTE: Some of these may mimic fatal errors and confuse users and
# opers alike! - BEWARE!
<module name="m_randquote.so">
#
#-#-#-#-#-#-#-#-#-#- RANDOMQUOTES CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
# #
# Optional - If you specify to use the m_randquote.so module, then #
# specify below the path to the randquotes.conf file. #
# #
<randquote file="quotes.conf">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Redirect module: Adds channel redirection (mode +L)
<module name="m_redirect.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Registered users only channel creation
# Allows only registered users and opers to create new channels.
#<module name="m_regonlycreate.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Remove module: Adds the /REMOVE command which is a peaceful
# alternative to /KICK
#<module name="m_remove.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Restrict banned users module:
# Disallows banned users on a channel from messaging the channel,
# changing nick, or changing the topic, if loaded.
#<module name="m_restrictbanned.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Restricted channels module: Allows only opers to create channels
#<module name="m_restrictchans.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Restrict message module: Allows users to only message opers
#<module name="m_restrictmsg.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Provide /LIST throttling (to prevent flooding) and /LIST safety to
# prevent excess flood when the list is large.
#<module name="m_safelist.so">
#
#-#-#-#-#-#-#-#-#-#-# SAFELIST CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#-#
#
# When using Safelist, you may set the following values;
#
# The first value, 'throttle', sets the amount of time in seconds a user
# must wait between LIST commands. For example, if this is set to 60
# (the default) then the user may not /LIST more than once a minute.
# If not defined, the default value is 60 seconds.
#
# The second value, 'maxlisters', indicates the maximum number of users
# which may be retrieving a LIST at once. It is not recommended you raise
# this value, as increasing it too high can make your network vulnerable
# to floodbots which waste your bandwidth and CPU time with LIST requests.
#
<safelist throttle="60" maxlisters="50">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SAJOIN module: Adds the /SAJOIN command
<module name="m_sajoin.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SAMODE module: Adds the oper /SAMODE command
<module name="m_samode.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SANICK module: Allows opers to change user's nicks
<module name="m_sanick.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SAPART module: Adds the oper /SAPART command
<module name="m_sapart.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SAQUIT module: Adds the oper /SAQUIT command (abusable!!!)
#<module name="m_saquit.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Secure list module: Prevent /LIST in the first minute of connection,
# crippling most spambots and trojan spreader bots.
<module name="m_securelist.so">
#
#-#-#-#-#-#-#-#-#-# SECURELIST CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# Securelist can be harmful to some irc search engines such as #
# netsplit.de and searchirc.com. To prevent securelist blocking these #
# sites from listing, define exception tags as shown below: #
<securehost exception="*@*.searchirc.org">
<securehost exception="*@*.netsplit.de">
<securehost exception="*@echo940.server4you.de">
# #
# Define the following variable to change how long a user must wait #
# before issuing a LIST. If not defined, defaults to 60 seconds. #
# #
<securelist waittime="10"> #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# See nicks module: Allow for SNOMASK +N which shows nick changes.
<module name="m_seenicks.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Set Idle module: Adds a command for opers to change their
# idle time (mainly a toy)
<module name="m_setidle.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Services support module: Adds several usermodes such as +R and +M
# this module implements the 'identified' state via user mode +r, which
# is similar to the DALnet and dreamforge systems.
<module name="m_services.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Services support module: Adds several usermodes such as +R and +M
# this module implements the 'identified' state via account names (AC)
# and is similar in operation to the way asuka and ircu handle services.
# it cannot be used at the same time as m_services, above.
#<module name="m_services_account.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Sethost module: Adds the /SETHOST command
# See m_chghost for how to customise valid chars for hostnames
<module name="m_sethost.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Setident module: Adds the /SETIDENT command
<module name="m_setident.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SETNAME module: Adds the /SETNAME command
<module name="m_setname.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Show Whois module: Adds the +W usermode which allows opers
# to see when they are whois'ed (can be annoying).
#<module name="m_showwhois.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Spy module: Adds the commands SPYLIST and SPYNAMES that let opers
# see who is in a +s channel, and list +s channels, show keys of keyed
# channels the oper is not a member of etc. (standard 'abusive' features
# of many other ircds, modulized here in InspIRCd).
<module name="m_spy.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SSL channel mode module: Adds support for SSL-only channels (+z).
# 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
# src/modules/extra, or answer 'yes' in ./configure when asked if you
# want to enable this, or it will not load.
#<module name="m_ssl_gnutls.so">
#
#-#-#-#-#-#-#-#-#-#-#- GNUTLS CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# m_ssl_gnutls.so is too complex it describe here, see the wiki: #
# http://www.inspircd.org/wiki/GnuTLS_SSL_Module #
# #
# 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 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.
#<module name="m_sslinfo.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# OpenSSL ssl module: Adds support for client-server SSL using OpenSSL,
# if enabled. You must copy the source for this module from the directory
# src/modules/extra, or answer 'yes' in ./configure when asked if you
# want to enable this, or it will not load.
#<module name="m_ssl_openssl.so">
#
#-#-#-#-#-#-#-#-#-#-#- OPENSSL CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# m_ssl_openssl.so is too complex it describe here, see the wiki: #
# http://www.inspircd.org/wiki/OpenSSL_SSL_Module #
# #
# 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.
#<module name="m_ssl_oper_cert.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Strip colour module: Adds the channel mode +S
<module name="m_stripcolor.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SILENCE module: Adds support for /SILENCE
<module name="m_silence.so">
#
# Configuration tags:
#
<silence maxentries="32">
#
# Sets the maximum number of entries on a users silence list.
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Extended SILENCE module: Adds support for /SILENCE with additional
# features to silence based on invites, channel messages, etc.
#<module name="m_silence_ext.so">
#
# The configuration tags for this module are identical to those of
# m_silence, shown above.
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SQLite3 module: Allows other SQL modules to access SQLite3 #
# databases through a unified API. You must link the source for this #
# module from the directory src/modules/extra to src/modules, plus #
# the file m_sqlv2.h #
#<module name="m_sqlite3.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 #
#
#<database hostname="/full/path/to/database.db" id="anytext">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SQLutils module: Provides some utilities to SQL client modules, such
# as mapping queries to users and channels. You must copy the source
# for this module from the directory src/modules/extra/m_sqlutils.cpp
# and src/modules/extra/m_sqlutils.h into /src/modules
# Needed for, and loaded before: SQLauth and SQLoper
#<module name="m_sqlutils.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SQL authentication module: Allows IRCd connections to be tied into
# a database table (for example a forum). You must copy the source for
# this module from the directory src/modules/extra
# Depends on the SQLutils module being loaded first.
#<module name="m_sqlauth.so">
#
#-#-#-#-#-#-#-#-#-#-#- SQLAUTH CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# m_sqlauth.so is too complex it describe here, see the wiki: #
# http://www.inspircd.org/wiki/SQL_Authentication_Module #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SQL logging module: Allows you to log network-wide data for your
# network in a fully normalized set of SQL tables. You must copy the
# source for this module from the directory src/modules/extra
#<module name="m_sqllog.so">
#
#-#-#-#-#-#-#-#-#-#-#- SQLLOG CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# dbid - Database ID to use (see m_sql) #
# #
# See also: http://www.inspircd.org/wiki/SQL_Logging_Module #
# #
#<sqllog dbid="1">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SQL oper module: Allows you to store oper credentials in an SQL table
# You must copy the source for this module from the directory src/modules/extra
# Depends on the SQLutils module being loaded first.
#<module name="m_sqloper.so">
#
#-#-#-#-#-#-#-#-#-#-#- SQLOPER CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# #
# dbid - Database ID to use (see m_sql) #
# #
# See also: http://www.inspircd.org/wiki/SQL_Oper_Storage_Module #
# #
#<sqloper dbid="1">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SVSHold module: Implements SVSHOLD. Like Q:Lines, but can only be #
# added/removed by Services. #
#<module name="m_svshold.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# SWHOIS module: Allows you to add arbitary lines to user WHOIS.
#<module name="m_swhois.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Test command module: Does nothing significant. Read: pointless.
#<module name="m_testcommand.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Timed bans module: Adds timed bans and the /TBAN command
#<module name="m_timedbans.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Test line module: Adds the /TLINE command, used to test how many
# users a /GLINE or /ZLINE etc would match.
#<module name="m_tline.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# UHNAMES support module: Adds support for the IRCX style UHNAMES
# extension, which displays ident and hostname in the names list for
# each user, saving clients from doing a WHO on the channel. Note that
# this module is not widely supported yet. If a client does not support
# UHNAMES it will not enable it, this will not break incompatible
# clients.
<module name="m_uhnames.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Uninvite module: Adds the /UNINVITE command which lets users remove
# pending invites from channels without waiting for the user to join.
#<module name="m_uninvite.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Userip module: Adds the /USERIP command
<module name="m_userip.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Vhost module: Adds the VHOST command which allows for adding virtual
# hosts which are accessible using a username and password in the config.
#<module name="m_vhost.so">
#
#-#-#-#-#-#-#-#-#-#-#- VHOST CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# user - Username for the vhost. #
# #
# pass - Password for the vhost. #
# #
# host - Vhost to set. #
#
#<vhost user="some_username" pass="some_password" host="some.host">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# Watch module: Adds the WATCH command, which is used by clients to
# maintain notify lists.
#<module name="m_watch.so">
#
# Configuration tags:
#
#<watch maxentries="32">
#
# Sets the maximum number of entries on a user's watch list.
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# XMLSocket module: Adds support for connections using the shockwave
# flash XMLSocket. Note that this does not work if the client you are
# using has retarded ideas of the IRC protocol. Your client must still
# send RFC-correct lines to the server, this module only changes the
# line ending from newlines to null terminators.
#
#<module name="m_xmlsocket.so">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# ZipLinks module: Adds support for zlib deflate on server to server
# connections. Both ends of the connection must load this module.
#
#<module name="m_ziplink.so">
#
# To use this module, you must enable it as a transport type in your
# <link> tags or <bind> tags using the transport name 'zip'.
# See the documentation of <link> and <bind>, respectively.
#
#-#-#-#-#-#-#-#-#-#-#-#-#-#- BAN OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# The ban tags define nick masks, host masks and ip ranges which are #
# banned from your server. All details in these tags are local to #
# Your server. #
# #
# #
# badip lines ban an ip range (same as a zline) #
# #
# ipmask - The ip range to ban (wildcards possible) #
# CIDR is supported in the IP mask. #
# reason - Reason to display when disconnected #
# #
# badnick lines ban a nick mask (same as a qline) #
# #
# nick - Nick mask to ban (wildcards possible) #
# reason - Reason to display on /NICK #
# #
# badhost lines ban a user@host mask (same as a kline) #
# #
# host - ident@hostname (wildcards possible) #
# If you specify an IP, CIDR is supported. #
# reason - Reason to display on disconnection #
# #
# exception lines define a hostmask that is excempt from [kzg]lines #
# #
# host - ident@hostname (wildcards possible) #
# If you specify an IP, CIDR is supported. #
# reason - Reason, shown only in /stats e #
# #
<badip ipmask="69.69.69.69" reason="No porn here thanks.">
<badnick nick="ChanServ" reason="Reserved For Services">
<badnick nick="NickServ" reason="Reserved For Services">
<badnick nick="OperServ" reason="Reserved For Services">
<badnick nick="MemoServ" reason="Reserved For Services">
<badhost host="*@hundredz.n.hundredz.o.1337.kiddies.com" reason="Too many 1337 kiddiots">
<badhost host="*@localhost" reason="No irc from localhost!">
<badhost host="*@172.32.0.0/16" reason="This subnet is bad.">
<exception host="*@ircop.host.com" reason="Opers hostname">
#-#-#-#-#-#-#-#-#-#-#- INSANE BAN OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# This optional tag allows you to specify how wide a gline, eline, #
# kline, zline or qline can be before it is forbidden from being #
# set. By setting hostmasks="yes", you can allow all G, K, E lines, #
# no matter how many users the ban would cover. This is not #
# recommended! By setting ipmasks="yes", you can allow all Z lines, #
# no matter how many users these cover too. Needless to say we #
# don't recommend you do this, or, set nickmasks="yes", which will #
# allow any qline. #
# #
# The trigger value indicates how wide any mask will be before it is #
# prevented from being set. The default value is 95.5% if this tag is #
# not defined in your configuration file, meaning that if your #
# network has 1000 users, a gline matching over 955 of them will be #
# prevented from being added. #
# #
# Please note that remote servers (and services) are exempt from #
# these restrictions and expected to enforce their own policies #
# locally! #
# #
<insane hostmasks="no" ipmasks="no" nickmasks="no" trigger="95.5">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#- YAWN -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #
# You should already know what to do here :) #
#<die value="User error. Insert new user and press any key. (you didn't edit your config properly.)">
#########################################################################
# #
# - InspIRCd Development Team - #
# http://www.inspircd.org #
# #
#########################################################################