13531 Commits

Author SHA1 Message Date
Peter Powell
213e4d9680 Remove the original line parameter of On{Pre,Post}Command.
In the brave new world of message tags and alternate wire formats
this is no longer something that is appropriate to expose.

In reality it was only ever used by m_alias which now reconstitutes
the command name and parameters into a RFC 1459-style message for
whatever it needs to do.
2018-08-10 13:55:32 +01:00
Peter Powell
626003a7dc Switch m_xline_db to use the xline snomask character. 2018-08-10 06:40:26 +01:00
Peter Powell
83a2eddaaa Switch m_dnsbl to use its own snomask character. 2018-08-07 16:50:01 +01:00
Peter Powell
c51d80d9d4 Remove the 'debug' snotice character. 2018-08-07 16:45:03 +01:00
Peter Powell
54a15b0185 Make the FJOIN timestamp message easier for users to understand. 2018-08-05 17:18:43 +01:00
Peter Powell
d9a52277df Remove support for static modules.
This has been frequently broken in the past and as far as I know is
used by literally nobody.

Also, even if all modules are compiled into the core any libraries
linked against are and have always been linked dynamically making
this unusable on platforms without dynamic libraries.
2018-07-31 03:20:18 +01:00
Peter Powell
abbf70b2a3 Rename User::fullname to realname and make it private. 2018-07-30 18:50:34 +01:00
Peter Powell
7bde9de9b3 Replace most usages of "name" with "real" or "real name". 2018-07-30 18:34:57 +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
9cf448a332 Replace irc::stringjoiner with a generic stdalgo::string::join.
This can also be used with different types of collection containing
values which are not a string.
2018-07-26 21:41:36 +01:00
Peter Powell
384ef31bc0 Use CommandBase::Params instead of std::vector<std::string>.
This is presently a typedef but will soon be replaced with a class
that encapsulates both tags and parameters.
2018-07-26 20:12:14 +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
97a1d6429a Make more config stuff case insensitive. 2018-07-24 21:55:10 +01:00
Peter Powell
7a24867d97 Fix building on Windows. 2018-07-24 11:05:51 +01:00
Peter Powell
ef48486b09 Rename IntModuleList to Module::List. 2018-07-24 10:02:27 +01:00
Peter Powell
2beb73aba7 Get rid of the unused string_list typedef. 2018-07-24 10:02:07 +01:00
Peter Powell
4df41508c1 Fix the Windows build system to use the new license file location. 2018-07-23 15:13:11 +01:00
Peter Powell
6522f7e3e7 Remove Log() calls made unnecessary by the previous commit. 2018-07-20 12:34:24 +01:00
Peter Powell
8faa6ac773 Log snotices with their description rather than just as "snomask". 2018-07-20 12:34:24 +01:00
Peter Powell
0438ae0aa4 Define HAS_ARC4RANDOM_BUF in config.h if available. 2018-07-20 12:30:40 +01:00
Peter Powell
ec6bdd1ae9 Use arc4random_buf() instead of random() when available. 2018-07-20 11:48:22 +01:00
Peter Powell
b7716ed577 Initial support for listening on UNIX socket endpoints. 2018-07-18 19:22:17 +01:00
Peter Powell
87e328a1fb Add the family() member to the sockaddrs union. 2018-07-18 19:21:45 +01:00
Peter Powell
8f5952d1e5 Release v3.0.0 alpha 8. v3.0.0a8 2018-07-15 16:42:48 +01:00
Peter Powell
124c17e141 Merge branch 'insp20' into master. 2018-07-15 16:42:36 +01:00
Peter Powell
d0dac3a275 Use mysql_real_escape_string instead of mysql_escape string.
This is not exploitable as far as I know but it is probably best
that we use the newer function just in case.

Closes #649 (although the attack mentioned in that issue was not
feasible).
2018-07-15 14:15:35 +01:00
Peter Powell
227484c6c0 Implement support for the WHOX extension.
This is a massive rewrite of core_who which was initially developed
by Adam in 2014. I have rebased and cleaned it up and tightened up
compliance with the specifications.

Co-authored-by: Adam <Adam@anope.org>
2018-07-12 14:37:56 +01:00
Peter Powell
a37c11101a Clean up the WHO helpop documentation. 2018-07-12 01:31:24 +01:00
Peter Powell
11e67c494a Fix replying with the source user in oper-restricted WHO lookups. 2018-07-11 12:10:18 +01:00
Peter Powell
49b9c6bcb9 Switch core_dns validation to use InspIRCd::IsHost. 2018-07-10 21:14:56 +01:00
Peter Powell
32eb5386ba Switch <server:name> validation to use InspIRCd::IsHost. 2018-07-10 21:14:56 +01:00
Peter Powell
87361360e6 Add InspIRCd::IsHost for checking the validity of hostnames. 2018-07-10 21:14:56 +01:00
Peter Powell
e22383c6f4 Add a ConfigTag::getString overload that calls a validation method. 2018-07-10 21:14:56 +01:00
Peter Powell
39b51a7c11 Allow exempting of registered users from securelist. 2018-07-10 21:07:38 +01:00
Peter Powell
2a022cb9b7 Add a silent option to <options:restrictbannedusers>.
This is useful when dealing with spambots that switch method when
they receive ERR_CANNOTSENDTOCHAN.
2018-07-10 21:01:35 +01:00
Peter Powell
76c7e9db43 Update the readme so that it is actually useful. 2018-07-10 19:58:21 +01:00
Peter Powell
4f6286b65f Rename the license file so that people can find it easier. 2018-07-10 19:57:14 +01:00
Peter Powell
0864bc3e74 Fix the configure checks for eventfd(), <stdint.h>, and strlcpy().
Closes #1503.
2018-07-04 10:10:05 +01:00
B00mX0r
5585654df2 Use !empty() instead of 'size() > 0' when checking parameter count. 2018-07-03 16:09:35 +01:00
Peter Powell
197279b8c9 Always show Make commands for the user to execute in quotes.
Fixes #1189.
2018-06-26 16:38:34 +01:00
Peter Powell
765abf3a41 Allow relative paths to be passed in --config on boot.
Closes #1115.
2018-06-25 13:06:40 +01:00
Peter Powell
2241991dda Show the package name in the message when doing pkg-config lookups. 2018-06-24 23:24:46 +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
3cd61d86de Fix invalid conversion from 'const char*' to 'char*' on FreeBSD. 2018-06-08 08:44:39 +01:00
Chris Novakovic
9cd7a2e546 Add --nopid command line option (#1497).
Add a --nopid command line option, which causes a PID file not to be
written to the file system regardless of the presence of the <pid> tag
in the configuration file or the value of its "file" variable if it is
present.
2018-06-04 12:40:32 +01:00
Peter Powell
2772c2fa2d Use the pwd tool that is in the path rather than /bin/pwd. 2018-05-01 19:47:08 +02:00
Peter Powell
506344a903 Improve support for MOTD escape codes.
- Implement escapes for italic, monospace, and strikethrough.
- Use the escape codes in the example MOTDs to demonstrate their
  formatting effects.
- Remove support for octal escape codes. In modern computing octal
  is rarely used and is confusing for users who might confuse it
  for decimal.
2018-04-22 23:38:13 +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
35c8cde859 Fix some oversights relating to numerics.
- ERR_CANNOTSENDTOCHAN only takes the channel name and a message.
- ERR_INVALIDCAPCMD is 410 not 232.
2018-04-22 22:38:49 +01:00
Peter Powell
9ef3725b68 Release v3.0.0 alpha 7. v3.0.0a7 2018-04-22 15:18:28 +01:00