13714 Commits

Author SHA1 Message Date
Peter Powell
72e28e60de Fix a shadowing warning in the spanningtree module. 2018-10-27 18:17:23 +01:00
Peter Powell
ac09aff7f4 Improve CAPAB negotiation in the spanningtree module.
- Remove the CHANMODES, USERMODES, and PREFIX tokens in the 1205
  protocol. These have entirely been superceded by the CHANMODES
  and USERMODES CAPAB commands.

- Only compare the 1202 PREFIX tokens if the remote server did not
  send CAPAB CHANMODES. This replicates the existing behaviour
  used for the CHANMODES token.

- Fix checking whether the remote server has an appropriate case
  mapping. If it is not sent we assume it is the same as the local
  server as always. This should prevent issues with people using
  services packages that do not send this token yet.

- Fix checking if the user modes are mismatched and then promptly
  overwriting the error message with mismatched channel modes.

- Fix servers not being able to tell whether a mode on the remote
  server is a prefixless prefix mode. Requires the 1205 protocol.

- Fix servers that receive CAPAB CHANMODES or CAPAB USERMODES not
  checking the type of those modes. Requires the 1205 protocol.
2018-10-27 18:13:29 +01:00
Peter Powell
0fc595caac Enable as many extra modules as possible when running configure. 2018-10-27 04:27:16 +01:00
Peter Powell
2e46197918 Fix ircv3_capnotify being defined twice in modules.conf.example. 2018-10-26 22:41:12 +01:00
Peter Powell
a9a94b6587 Fix "smartmatch is experimental" warning from the helper script. 2018-10-26 14:18:42 +01:00
Peter Powell
0e397ff721 Tell the user to check out the latest tag rather than the branch.
When the InspIRCd 3.x branch forks this will tell the user to go
back to the latest tag on the branch.
2018-10-26 02:57:13 +01:00
Peter Powell
2d50984185 Fix a bunch of harmless compiler warnings on recent GCC releases. 2018-10-26 01:20:35 +01:00
Peter Powell
2b4682c2d1 Change the branch version from InspIRCd-3.0 to InspIRCd-3.
Under the new versioning scheme when a new branch is forked the
major version number will be reset. The minor version number will
now be used to mark a release as containing backwards compatible
additions and the patch version number will be used to mark a
release as containing just bug fixes.
2018-10-25 23:29:55 +01:00
Peter Powell
ae0ae8ea61 Allow HAProxy to specify that a client is connecting with SSL. 2018-10-25 13:50:43 +01:00
Peter Powell
d62c870ffb Store the type of a StreamSocket within itself.
Similar to with IOHooks this allows you to convert StreamSocket to
a UserIOHandler quickly.
2018-10-25 13:50:43 +01:00
Peter Powell
da96cf374d Fix the censor module sending the wrong numeric in some cases.
The appropriate numeric response when a user has the censor mode
enabled is ERR_CANTSENDTOUSER not ERR_CANTSENDTOUSER.
2018-10-25 13:34:26 +01:00
Peter Powell
0e6b18ff91 Fix warnings from Doxygen. 2018-10-21 19:18:08 +01:00
Peter Powell
98a80a730e Fix unregistered user modes thinking they are enabled. 2018-10-18 10:59:52 +01:00
Robby
7498202cd6 Show reasons in xline expiry messages. 2018-10-14 10:25:44 +01:00
Peter Powell
a0f7d01279 Implement support for IPv6 GeoIP lookups. 2018-10-13 14:04:33 +01:00
Peter Powell
553877f7a9 Require WebSocket origins to be whitelisted in order to connect.
Fixes #1281.
2018-10-10 16:45:35 +01:00
Peter Powell
3f0a66ce06 Fix sending malformed ERR_BANLISTFULL numerics in some contexts.
Fixes ircdocs/irc-defs#37.
2018-10-09 20:09:05 +01:00
edef
23090cb7e4 Use nodejs/http_parser instead of a homebrew parser. 2018-10-06 17:51:11 +02:00
Peter Powell
bb15147464 Convert m_sha256 to use a vendored library instead of bundling.
The require_compiler("GCC") directive is required to work around
some GCCs ignoring the GCC pragma for disabling warnings.
2018-10-04 14:22:37 +02:00
Peter Powell
8e3aaf1ff0 Add a directive for requiring a specific compiler. 2018-10-04 14:17:02 +02:00
Peter Powell
479d0d9de4 Avoid using relative paths in make::configure. 2018-10-04 14:17:02 +02:00
Peter Powell
ddfe09268f Release v3.0.0 alpha 10. v3.0.0a10 2018-10-01 21:58:45 +01:00
Peter Powell
08177bccc2 Move <security:userstats> into core_stats. 2018-10-01 17:26:22 +01:00
Peter Powell
d7dd8d193c Move <security:hidesplits> to the spanningtree module. 2018-10-01 17:26:22 +01:00
Peter Powell
ff5fdd21c1 Move <security:genericoper> into core_whois. 2018-10-01 17:26:22 +01:00
Peter Powell
9ddb9cc658 Move <security:hideulinekills> into core_oper. 2018-10-01 17:26:22 +01:00
Peter Powell
7b6f7dcde5 Move <security:hidekills> into core_oper. 2018-10-01 17:26:22 +01:00
Peter Powell
680ecdae0c Document ServerConfig::Conf{Tags,Value} better. 2018-10-01 17:26:21 +01:00
Peter Powell
84ed051be7 Get rid of DummyMessageDetails in the delayjoin module. 2018-10-01 14:08:32 +01:00
Peter Powell
27ca859c29 Fix the delayjoin module not hiding JOIN messages properly. 2018-10-01 14:08:31 +01:00
Peter Powell
75e144b55e Fix the chanhistory module being inconsistent across servers.
Closes #331.
2018-10-01 12:34:47 +01:00
Peter Powell
36e701f4ab Fix SQL modules using "provider" in <database> instead of "module".
This fixes a regression introduced in 97a1d642.
2018-09-27 12:51:53 +01:00
Peter Powell
2af0476c5a Move the SQL tables to docs/sql and install them on make install. 2018-09-26 23:36:19 +01:00
Robby
1e33c494bb m_dnsbl: Add the IP address to the positive detection server notice. 2018-09-25 23:00:50 +01:00
Robby
0c469cd479 m_dnsbl: Use the blacklist name rather than the domain. 2018-09-25 23:00:50 +01:00
Peter Powell
9e65d1e954 Send a message to snomask 'd' when a DNSBL lookup fails.
Closes #1433.
2018-09-25 15:01:42 +01:00
Renegade334
4995417f59 Add extban 'a' to m_gecosban.
This has the format a:nick!user@host+gecos.

e.g. a:*!*@abusive.host+*MegaBot?v2.0*

Closes #1023.
Closes #1026.
2018-09-25 12:30:06 +01:00
Peter Powell
6d09b12be1 Don't sync filters defined in the config and expire them on rehash.
Closes #1202.
2018-09-25 10:45:33 +01:00
Peter Powell
c6e40d36b4 Merge branch 'insp20' into master. 2018-09-24 18:25:06 +01:00
Peter Powell
cae87fa047 Switch all core modules still using COMMAND_INIT to MODULE_INIT. 2018-09-23 14:19:06 +01:00
Peter Powell
876b1ae4e2 Don't sync xlines defined in the config and expire them on rehash.
Closes #1427.
2018-09-23 13:35:15 +01:00
A_D
f020429fd3 Make kicknorejoin respect /INVITE (#1514). 2018-09-23 13:12:05 +01:00
Peter Powell
0378d0f582 Merge m_noctcp_user into m_noctcp. 2018-09-18 12:30:15 +01:00
Peter Powell
548def5860 Fix gateway client hosts not being updated if DNS resolution fails. 2018-09-18 10:48:02 +01:00
Peter Powell
de4e486009 Improvements and bugfixes to the cgiirc module.
- Allow the ident for ident type hosts to be set in the config.
- Consistently check clone counts, connect classes, and xlines for
  all users regardless of their cgiirc host type.
- Remove some obsolete code from when gateway clients had their IP
  changed in OnCheckReady.
- Don't allow a gateway client to match both a WebIRC and an ident
  host.
2018-09-17 22:32:42 +01:00
Peter Powell
9a312de26b Improvements to the hostchange module.
- Get rid of <host> and merge the prefix and suffix values into the
  <hostchange> value.
- Remove the 'suffix' action. This has been replaced by the 'set'
  action.
- Add the 'addaccount' action. This adds the users account to their
  hostname.
- Use the <hostname:charmap> characters when removing invalid chars
  in addnick mode.
- Allow multiple entries on each hostmask so that they can fall
  through if a certain value is not acceptable.

Closes #816.
Closes #1001.
2018-09-16 12:38:14 +01:00
Peter Powell
7e9ec8e490 Amend OnPostCommand to specify whether the command is loopcalled.
This restores previous behaviour which was lost when the original
line parameter was removed.
2018-09-11 09:03:47 +01:00
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
33180223e3 Don't update the idle timer when a user replies to a CTCP.
Closes #1305.
2018-08-26 11:33:23 +01:00