152 Commits

Author SHA1 Message Date
Peter Powell
923d811b05 Add a module for hiding mode changes from unprivileged users.
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-09-09 16:52:54 +01:00
Peter Powell
8512726adf Remove the ripemd160 module.
The library code used by this module is licensed under a non-free
license which is incompatible with the GPLv2. Combined with the
fact that it has been superceded by better algorithms like bcrypt
I have decided to remove it.

An alternate implementation of this algorithm is provided by the
m_hash_gnutls module if people *really* need to use it.
2018-09-06 13:31:53 +01:00
Peter Powell
23e29119f8 Replace all references to IRCv3.2 with IRCv3.
IRCv3 no longer does versioned releases.
2018-08-13 22:06:39 +01:00
Peter Powell
584d456903 Add support for the IRCv3 batch specification.
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-13 22:01:42 +01:00
Peter Powell
2249524355 Add support for the IRCv3 server-time specification.
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-13 22:01:21 +01:00
Peter Powell
c60f88bb5c Add support for the IRCv3 account-tag specification.
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-13 21:51:12 +01:00
Peter Powell
8cb20e3545 Replace most usages of "GECOS" with "real" or "real name". 2018-07-30 18:30:11 +01:00
Peter Powell
09c5439c02 Add a module which implements the HAProxy PROXY v2 protocol. 2018-07-26 12:35:22 +01:00
Peter Powell
124c17e141 Merge branch 'insp20' into master. 2018-07-15 16:42:36 +01:00
Peter Powell
584cbe8015 Clarify the documentation for m_httpd and m_httpd_{config,stats}.
Thanks to @SleepyEntropy for pointing out that multiple internet-
accessible servers do not have these modules correctly configured.
2018-06-18 03:35:58 +01:00
Peter Powell
6d1c1cb517 Always process MOTD formatting escape codes.
The options for disabling these were added to keep compatibility
with previous 2.0 releases and are not needed any more.
2018-04-22 23:30:41 +01:00
Peter Powell
35b70631f0 Merge tag 'v2.0.26' into master. 2018-04-22 13:02:19 +01:00
Robby
46e71e2f50 Optionally do not notify users if their messages are blocked by certain modules (#1134).
Closes #711.
2018-04-20 15:28:28 +01:00
Matt Schatz
a2dcf9a1ad Improve some documentation (#1483).
* Improve exemptchanops in inspircd.conf.example (<options>)
  and modules.conf.example; along with both helpop examples.
* Add "the" to all "requires X module" in both helpop examples.
* Refer to customprefix instead of chanprotect and halfop.
* Add SNOMASK 'r' and 'R' (OPERLOG) to both helpop examples.
* Clean up unnecessarily split SNOMASK lines in both helpop examples.
* Move chmode 'g' to be in alphabetical order in both helpops examples.
* Specify the needed mask formats for TLINE in helpop-full example.
* Remove extra '\' in RLINE mask format in helpop-full example.
  Force xml format in helpop-full
* Generalize "color codes" to "formatting codes"
* Fix file name in include for example helpop-full
2018-04-16 10:02:49 +01:00
Peter Powell
233c624056 Use an oper priv instead of a config flag for overriding callerid. 2018-04-16 09:47:26 +01:00
genius3000
e3f22fcf31 Change some usage of "gecos" to "real name"
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).
2018-04-11 18:59:17 +01:00
Dylan Frank
4ec475ba10 Refactor m_sqloper to be a full opers.conf replacement (#983).
m_sqloper now supports dynamic fields, works with m_sslinfo, and works with /stats o.
2018-04-06 18:34:15 +01:00
Peter Powell
d04db003df Implement support for banning users from channels by country code. 2018-04-06 18:05:15 +01:00
Peter Powell
5628d84f9e Move m_sslrehashsignal to the extra directory.
This module uses platform-specific behaviour that does not work on
Windows.
2018-02-17 17:44:52 +00:00
Peter Powell
36e6dc7bc8 Import the anticaps module from inspircd-extras. 2018-02-07 12:20:42 +00:00
Peter Powell
4132a44396 Allow the maximum length of a chanfilter message to be configured. 2018-02-02 12:54:59 +00:00
Peter Powell
9da5c8e200 Add a module which rehashes SSL modules on receiving SIGUSR1.
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).
2018-01-25 11:51:14 +00:00
Shawn Smith
cd43acedc9 Add user mode +z for ssl-only private messages.
Closes #468.
2018-01-07 10:35:16 +00:00
Peter Powell
40514d0ba8 Improve the method that blockcaps uses to block messages.
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.
2018-01-03 22:33:29 +00:00
Peter Powell
5c6352dd9a Increase the config default for <chanhistory:maxlines> to 50. 2017-12-31 18:38:21 +00:00
Michael Hazell
758cf504f1 m_chanhistory: optionally exempt bots from receiving history.
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.
2017-12-31 10:59:02 +00:00
B00mX0r
05d92363f9
Fix two minor docs issues 2017-12-22 14:44:29 -08:00
Peter Powell
565544fac9 Merge branch 'insp20' into master. 2017-12-11 11:41:44 +00:00
B00mX0r
5076d9d3c4 Add optional oper override umode +O. 2017-12-11 11:12:01 +00:00
Shawn Smith
ecb7891090 Removed config option for +L redirect.
Closes #466.
2017-12-03 14:56:37 +00:00
Chew
8920cb1b9f
Remove extra double quote (") 2017-12-02 14:29:29 -06:00
B00mX0r
265d6fc824
Fix referring to sqloper and sqlauth as extras in modules.conf 2017-11-14 20:15:13 -08:00
Peter Powell
4e81454a4a Add the m_ircv3_sts module which implements the IRCv3 STS spec. 2017-11-13 16:16:31 +00:00
Peter Powell
d23c030c9a Merge tag 'v2.0.25' into master. 2017-11-12 17:33:21 +00:00
Peter Powell
a137eb1c26 Various minor documentation fixes.
- Remind admins that not setting a DIE/RESTART password does not
  disable use of those commands.
- Remove references to 1.2 and modules being able to create custom
  logging methods. This was never implemented in the 2.0 branch.
- Remove references to an SASL improvement that was reverted.
- Update various InspIRCd website links to use HTTPS over HTTP.
- Update a link to the IRCv3 website to point to the new website.
2017-11-12 12:24:57 +00:00
Peter Powell
9375c63337
Merge pull request #1359 from genius3000/insp20+sasl_no_server
2.0: Inform the client when a SASL message cannot be sent
2017-11-06 11:11:22 +00:00
Peter Powell
b76ff64dae Enable using m_customprefix to alter core prefix modes.
This replaces the devoice module which has now been removed. If you
want users to be able to devoice themselves then you can load the
customprefix module add the following config tag:

    <customprefix name="voice" depriv="yes">

If you wish to keep identical behaviour rather than allowing users
to use "MODE #YourChannel -v TheirNick" then you can load the alias
module and add the following config tag:

    <alias text="DEVOICE" format="#*" replace="MODE $2 -v $nick">
2017-11-06 10:55:56 +00:00
Peter Powell
257bf752fc Add support for setting the unset rank in ModeHandler. 2017-11-06 10:55:56 +00:00
genius3000
9d4b4344b4 Inform the client when a SASL message cannot be sent
When SASL is properly configured with a 'target' server, we are able
to inform the client when the message fails to send.
Currently if a target is configured and it is offline, no response is
sent. This can cause some clients to time out while waiting for a response.

If a target isn't configured, behaviour will not change with this commit.
The default of '*' will still send to all servers.
Updated example config with 'target' variable.
2017-11-05 19:51:22 -07:00
Peter Powell
906260c24f Make core_hostname_lookup redo the lookup when a user's IP changes.
This removes the need to do lookups in the cgiirc module. This is
useful as relying on gateways to do proper DNS checks is unreliable
and has resulted in issues like 5fc4403f62. Its more sane if we do
our own lookups.

This change has been okayed by multiple WEBIRC gateway authors so
I don't think it will cause many problems.
2017-10-31 11:48:25 +00:00
Peter Powell
7306e35479 Rewrite the configuration documentation for m_cgiirc. 2017-10-15 19:50:15 +01:00
Peter Powell
a5d110282a Update wiki links to use HTTPS and point to the correct pages.
When we release 3.0 these links will break as they will point to
the pages for 3.0 rather than 2.0.
2017-10-15 12:23:10 +01:00
Peter Powell
a3e0768758 Merge the latest changes from insp20 into master. 2017-10-12 15:55:21 +01:00
Sheogorath
aa5bd1eafe
Make domainparts configureable 2017-10-11 10:52:30 +02:00
Peter Powell
3cb659afaa Remove support for the pass, passfirst, identfirst cgiirc types.
These methods are not supported by any widely used gateways that I
can find. If your gateway uses this then you should rewrite it to
use the webirc method. For more details see the IRCv3 WEBIRC
specification at http://ircv3.net/specs/extensions/webirc.html.
2017-09-27 19:46:10 +01:00
Peter Powell
314f5f65df Fix the command for enabling m_sqlite3 in modules.conf.example. 2017-09-14 14:52:42 +01:00
Peter Powell
e7c829af59 Convert a bunch of time-related config options to getDuration. 2017-09-03 20:20:30 +01:00
Peter Powell
5c65a0a03d Add ADMIN to the list of commands that shunned users can run. 2017-07-24 14:04:34 +01:00
Peter Powell
c0aba5b728 Merge v2.0.23 and v2.0.24 into master. 2017-07-09 22:45:00 +01:00
Peter Powell
44b3e02e1a Update the securelist exemption for IRC-Source's crawler. 2017-05-30 08:49:14 +01:00