Age | Commit message (Collapse) | Author |
|
- The configuration is now validated on ReadConfig and parsed into
objects.
- Allow redirecting to channels that don't yet exist. There is no
technical reason to not allow this and I believe that it would
be a lot less confusing to users if we allowed this.
- Flatten a bunch of nested if statements.
|
|
|
|
|
|
This is necessary to allow m_ircv3_echomessage to pretend that a
message was echoed successfully. This is useful as it doesn't let
spammers know that their message was blocked.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Within the example configs, helpops, some server sent messages, and
simple code comments: change the primary usage of "gecos" to
"real name" (or "realname" where fitting).
|
|
|
|
Closes #1240.
|
|
|
|
Some core code still exists in the XLine system but this will be
replaced when the XLine system is replaced later.
|
|
- Add the G: extban to the EXTBAN 005 token.
- Use CXX11_OVERRIDE with ReadConfig and OnCheckBan.
Thanks to @genius3000 for pointing these out.
|
|
|
|
Defaults to md5,sha256 to be compatible with old configs.
Adds new parameter `kdf`. If this is set (to e.g. bcrypt), the hash
will be compared locally. This requires the password column to be
specified in <sqlauth:column>.
Closes #741
|
|
|
|
ChangeIP() calls SetClientIP() which revalidates whether the user
matches an ELine. However, because the hostname has not changed yet
the user may incorrectly be marked as non-exempt.
|
|
m_sqloper now supports dynamic fields, works with m_sslinfo, and works with /stats o.
|
|
|
|
* Validate the settings in the same order as the parameter syntax
* Always validate Lines and Secs regardless of having a Diff
* Check Backlog for greater than Max as well as being disabled
|
|
Since CGI:IRC calls it's 'ChangeIP()' either from 'OnCheckReady()'
or 'OnUserRegister()', both of which are called after the user has
sent NICK/USER, we can safely skip re-setting the ExtItem prior to
this point.
This skips the first 'OnSetUserIP()' from 'User::AddUser()' as
the 'OnSetConnectClass()' catch handles the initial setting.
|
|
Backported from 2afc1af4639ae2bbef397f4f6acc834950017d91.
|
|
This module uses platform-specific behaviour that does not work on
Windows.
|
|
|
|
|
|
- The ACCEPT=[count] token specifies the maximum amount of nicks
which can be added to a m_callerid accept list. This token was
added by ircd-ratbox in 3.0.9.
- The KEYLEN=[length] token specifies the maximum length of a
channel key. This token was added by ircd-ratbox in 3.1 beta.
For more info see http://defs.ircdocs.horse/defs/isupport.html
|
|
|
|
|
|
Currently on invalid modes we do a combination of different things:
1. Send a custom mode-specific numeric (which often collides with
other modes).
2. Send a server notice.
3. Do absolutely nothing.
This new numeric is a generic way of handling invalid parameters
when setting a mode that avoids all of the mistakes of the previous
behaviour.
|
|
as requested by @Adam-
|
|
|
|
|
|
This has been imported from inspircd-extras where it was known as
m_rehashsslsignal. The name has been changed slightly to match the
other modules which do SSL stuff (sslmodes, sslinfo).
|
|
|
|
|
|
Closes #468.
|
|
- Move all message-related types to their own header to make moving
them to a cross-module events easier.
- Rename OnUserMessage to OnUserPostMessage.
- Rename OnText to OnUserMessage.
- Replace the dest, target_type, and status parameters with the
MessageTarget class.
- Replace the text, exempt_list, and msgtype parameters with the
MessageDetails struct.
- Add echooriginal and originaltext to the MessageDetails struct
to allow spam filtering to not be broken by cap echo-message.
|
|
Previously it had a list of upper case letters and assumed that all
other characters were lower case. This method is flawed as it can
be evaded by using non-alphanumeric characters.
The new method takes a list of lower case letters as well as upper
case letters and ignores any letters which are not listed in one of
the two lists.
The majority of the code for this was borrowed from the m_anticaps
module in inspircd-extras.
|
|
Closes #1452.
|
|
|
|
Sending history to some bots can cause problems as without the
IRCv3 chathistory batch they have no way of knowing what messages
are history and what they should respond to.
Closes #1450.
|
|
|
|
- Respect the value of <cgiirc:opernotice> when sending snotices
to operators.
- Write to the log file if opernotice is disabled.
- Log to the correct snomask in all cases. This was caused by an
oversight when merging insp20 into master.
- Replace the full user mask in log messages with a uuid/ip. The
WEBIRC command is sent as the first command so there will not be
a nickname or username at this point.
|
|
|
|
|