13954 Commits

Author SHA1 Message Date
Peter Powell
ece446b149 Fix the numerics used by the opermotd module.
- Use ERR_NOOPERMOTD from UnrealIRCd and RPL_OMOTDSTART, RPL_OMOTD,
  and RPL_ENDOFOMOTD from ircd-ratbox.
- Only send ERR_NOOPERMOTD in response to the command.
2019-04-26 18:35:17 +01:00
Peter Powell
b4599531f9 Fix broken linking over IPv4 on IPv6 capable systems.
If no bind address was specified then one would be
created which had an incompatible address family to
the address that the server was trying to connect to.
2019-04-25 19:24:35 +01:00
Peter Powell
c13d0744fe Update vendored utfcpp library to commit ad27c7d5e0. 2019-04-25 19:24:35 +01:00
Peter Powell
f2712eaf0c Update vendored http_parser library to v2.9.2. 2019-04-25 19:24:35 +01:00
iwalkalone
56c9477428 Link flags must be after compiled objects. 2019-04-22 02:01:36 +01:00
Robby
49fef4ef75 Fix grammar in unknown mode/snomask character messages. 2019-04-21 22:15:44 +01:00
Peter Powell
e6e8364e8e HasModePermission: fix inverted condition. 2019-04-21 10:46:38 +01:00
Peter Powell
b6935108ca Fall back to the most recent version supported on "CAP LS".
This ensures compliance with the behaviour specified in ircv3/ircv3-specifications#371.
2019-04-19 14:37:32 +01:00
Peter Powell
329cb42190 Bump the API revision for the previous commits. 2019-04-19 13:47:36 +01:00
Peter Powell
ac7aeb8b02 Improve the descriptions of various core modules. 2019-04-19 13:03:15 +01:00
Peter Powell
8b0d039717 Demote core_ison and core_userhost to commands in core_user.
These are not important enough for their own module.
2019-04-19 12:40:28 +01:00
Peter Powell
0f2341e76e Promote cmd_mode to its own core module.
core_user was an inappropriate location for this as it contains
mode changing code which is used by channels as well as users.
2019-04-19 12:29:30 +01:00
Peter Powell
bf7664612b Fix namedmodes exposing non-key secret parameters to outsiders. 2019-04-19 12:23:53 +01:00
Peter Powell
15bb93a4ea Remove the OnNamesListItem event out of the core. 2019-04-19 11:51:42 +01:00
Peter Powell
d5d1311145 HasModePermission: use IsModeChar. 2019-04-19 10:42:17 +01:00
Peter Powell
2cd6efcc64 Rename HasPermission to HasCommandPermission. 2019-04-19 10:05:06 +01:00
Peter Powell
21f0718c4a Remove the 'noisy' mode for HasPrivPermission.
This was only used in one place.
2019-04-19 00:39:57 +01:00
Peter Powell
d40ea20e65 Remove CXX11_OVERRIDE from some non-overrides. 2019-04-18 23:38:23 +01:00
Peter Powell
bcd65de1ec Add the new implementation of the silence module.
This module has significant improvements on the previous one:
 * Flags which actually make sense.
 * Better compatibility with other SILENCE implementations.
 * Support for blocking CTCPs.
 * Support for blocking TAGMSGs.
2019-04-18 23:38:23 +01:00
Peter Powell
9f3502de44 Remove m_silence pending a complete rewrite. 2019-04-18 23:38:23 +01:00
Peter Powell
e915fcbc00 Fix some bugs in LIST constraint parsing.
1. Allow flags to be specified in lower case. This behaviour is
   required by the draft-hardy-irc-isupport-00 specification.
2. Allow more than one constraint to be specified.
2019-04-18 21:18:16 +01:00
Peter Powell
8459e62534 Update trivially-modifiable modules to handle tag messages. 2019-04-16 16:19:55 +01:00
Peter Powell
62dc1769c9 Omit debug symbols when doing CI builds.
This provides a significant build time improvement.
2019-04-16 12:09:30 +01:00
Peter Powell
661249a850 Fix building m_geo_maxmind with older versions of libmaxminddb. 2019-04-16 10:59:25 +01:00
Peter Powell
925429ed51 Upgrade Travis CI system to Xenial. 2019-04-16 10:58:48 +01:00
Peter Powell
14e1d1f844 Replace the geoip module with geo_maxmind, geoban, and geoclass.
MaxMind have EOL'd the library that the geoip module uses and have
replaced it with libmaxminddb.

The geoip module has been split into geo_maxmind which provides
geolocation data, geoban which provides location-based channel
bans, and geoclass which is used to filter a user into a connect
class based on location.
2019-04-15 19:08:22 +01:00
Peter Powell
7c8e2990a1 Bump the API revision for the previous commit. 2019-04-15 12:24:13 +01:00
Peter Powell
c2c4de7267 Fix linking servers with UNIX sockets.
- Remove the address/port overloads of BeginConnect.
- Change DoConnect to take a sockaddrs instead of an address/port.
2019-04-15 12:21:12 +01:00
Peter Powell
e7b65ef535 commonchans: HandleMessage should not be marked as override. 2019-04-13 01:29:47 +01:00
Peter Powell
9128032b26 General code cleanup for the commonchans module.
- Restructure the code to be more readable.
- Add support for tag messages.
2019-04-04 17:22:28 +01:00
Peter Powell
cbb6b376c7 Use a consistent naming scheme for operator privileges.
- users/callerid-override is now users/ignore-callerid.
- users/privdeaf-override is now users/ignore-privdeaf.
2019-04-04 15:11:24 +01:00
Peter Powell
b00451a85c Fix various typos. 2019-04-04 14:36:45 +01:00
Peter Powell
656ce184b9 Bump the API revision for the previous commit. 2019-04-04 12:27:56 +01:00
Peter Powell
be0c809590 Document OnUserInit properly and add OnUserPostInit. 2019-04-04 12:27:56 +01:00
Peter Powell
9ea8ecfaf3 Use SQUERY instead of PRIVMSG in alias/passforward config. 2019-04-04 12:27:56 +01:00
Matt Schatz
66ecf04088 Merge extras/m_privdeaf into m_deaf and update documentation.
- Merge the 2.0 extras module m_privdeaf (usermode +D for deaf to
user messages and notices) as they have a similar purpose.
- Improve the channel deaf logic where a known case of bypassing
still looped the channel userlist building an empty exemption list.
- Improve the comments within the code.
- Update the documentation with the previously undocumented
configuration to deaf and the new privdeaf configuration.
2019-04-03 13:29:22 +01:00
Robby
15b93b6c20 m_commonchans: Replace IsOper() with HasPrivPermission() instead. 2019-04-02 10:39:18 +01:00
Peter Powell
bdded70ac2 Rename OnClientProtocolPopulateTags to OnPopulateTags. 2019-03-30 11:53:51 +00:00
Peter Powell
180b8b6ab1 Mark messages with inspircd.org/bot if the user has +B set. 2019-03-30 11:52:36 +00:00
Peter Powell
0b66cad1b0 m_permchannels: validate channel names properly. 2019-03-25 13:25:01 +00:00
Robby
94ce90c588 Add the User and Group options to the systemd service unit template file. 2019-03-24 14:47:48 +00:00
Peter Powell
9b732cb49d Strip message tags correctly in the 1202 spanningtree compat layer. 2019-03-20 18:25:17 +00:00
Peter Powell
1645bbc231 Fix the link to the http_parser vendor page. 2019-03-14 11:36:24 +00:00
Robby
ac0d5abaac Update most URLs to use HTTPS and fix some dead links. 2019-03-14 11:02:24 +00:00
Peter Powell
62ba7c3917 Generate the ssl_cert metadata before bursting a connecting user. 2019-03-14 10:52:13 +00:00
Matt Schatz
b518f45d72 Check perms for removal of oper-only channel modes.
Oper-only channel modes are currently unsettable by any channel
op, oper or not. Correct this by checking both directions of an
oper-only channel mode and continue only checking the setting of
an oper-only user mode. As anyone should be able to unset their
own user modes and UnOper() removes all oper-only user modes
automatically.
2019-03-14 10:06:28 +00:00
Matt Schatz
5f2ecf0013 Add oper privs to allow overriding noctcp. 2019-03-14 00:55:18 +00:00
Matt Schatz
d57cad7896 Fix incorrect ModResult for noctcp user target. 2019-03-14 00:55:18 +00:00
linuxdaemon
f808b2db75 Add SSL flag to WHO response 2019-03-12 18:36:23 +00:00
linuxdaemon
1003c593bf Rename GetFlagIndex -> GetFieldIndex 2019-03-12 17:14:53 +00:00