summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2018-07-31Remove support for static modules.Peter Powell
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-30Rename User::fullname to realname and make it private.Peter Powell
2018-07-30Replace most usages of "name" with "real" or "real name".Peter Powell
2018-07-30Replace most usages of "GECOS" with "real" or "real name".Peter Powell
2018-07-26Replace irc::stringjoiner with a generic stdalgo::string::join.Peter Powell
This can also be used with different types of collection containing values which are not a string.
2018-07-26Use CommandBase::Params instead of std::vector<std::string>.Peter Powell
This is presently a typedef but will soon be replaced with a class that encapsulates both tags and parameters.
2018-07-26Add a module which implements the HAProxy PROXY v2 protocol.Peter Powell
2018-07-24Rename IntModuleList to Module::List.Peter Powell
2018-07-24Get rid of the unused string_list typedef.Peter Powell
2018-07-18Initial support for listening on UNIX socket endpoints.Peter Powell
2018-07-18Add the family() member to the sockaddrs union.Peter Powell
2018-07-12Implement support for the WHOX extension.Peter Powell
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-10Add InspIRCd::IsHost for checking the validity of hostnames.Peter Powell
2018-07-10Add a ConfigTag::getString overload that calls a validation method.Peter Powell
2018-07-10Add a silent option to <options:restrictbannedusers>.Peter Powell
This is useful when dealing with spambots that switch method when they receive ERR_CANNOTSENDTOCHAN.
2018-06-04Add --nopid command line option (#1497).Chris Novakovic
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-04-22Move a bunch of optional module numerics to the module source file.Peter Powell
2018-04-22Replace ERR_{NOCTCPALLOWED,WORDFILTERED} with ERR_CANNOTSENDTOCHAN.Peter Powell
There is no reason for these responses to have their own numerics when other modules do not. The only thing this does is make life harder for client developers.
2018-04-22Merge tag 'v2.0.26' into master.Peter Powell
2018-04-16Call OnUserMessageBlocked when a PRIVMSG or a NOTICE is blocked.Peter Powell
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.
2018-04-16Add range checking to ConfigTag::getFloat.Peter Powell
2018-04-16Add ConfigTag::getUInt for reading unsigned config values.Peter Powell
2018-04-16Convert ConfigTag::getDuration to return an unsigned long.Peter Powell
2018-04-16Convert ConfigTag::CheckRange to a function template.Peter Powell
2018-04-16Remove the default value in ConfigTag::get{Duration,Float,Int}.Peter Powell
2018-04-16Replace the remaining use of irc::string with irc::find.Peter Powell
2018-04-11Change ServerInfo::gecos to descriptiongenius3000
2018-04-09Remove swhois messages set in the oper block on deoper.Peter Powell
Closes #1240.
2018-04-08Fix an invalid mode parameters numeric upon attempting to view a list modeB00mX0r
2018-04-08Include modules/whois.h directly from files that use it.Peter Powell
2018-04-08Move OnStats from the core to a cross-module event.Peter Powell
Some core code still exists in the XLine system but this will be replaced when the XLine system is replaced later.
2018-04-07SQL: Add HasColumn() to check if a result contains a named column.Daniel Vassdal
2018-03-31Move <security:announceinvites> to core_channel.Peter Powell
2018-03-29Ignore expired or invalid client certificates (#1468).Dylan Frank
Fixes #1345.
2018-03-25Separate secret and private channels on whois for non-opers (#1447)Dylan Frank
Separate secret and private channels on WHOIS for all users. - Move the config parsing from the core to core_whois. - Replace <security:operspywhois> with an oper privilege. - Introduce <options:splitwhois> to split WHOIS channel lists. Closes #969.
2018-02-17Fix building on Windows (mostly).Peter Powell
2018-02-02Add names for a bunch of numerics.Peter Powell
2018-01-29Add ERR_INVALIDMODEPARAM for responding to invalid mode params.Peter Powell
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.
2018-01-20Pass an irc::socket::sockaddrs to SocketEngine::SendTo().Peter Powell
2018-01-20Pass an irc::socket::sockaddrs to SocketEngine::Connect().Peter Powell
2018-01-14Fix some minor Doxygen errors.Peter Powell
2018-01-06Rework message handling.Peter Powell
- 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.
2018-01-03Fix m_chanhistory sending the history notice directly to the user.Peter Powell
Closes #1452.
2018-01-03Make InspIRCd::Format return std::string instead of const char*.Peter Powell
Using the latter is problematic as if you don't copy the return value before calling Format again your formatted message will be overwritten by something else. This bug was observed in m_callerid where InspIRCd::Format was being used for formatting two arguments the latter of which was being overwritten with the former. We could have preserved the return type and just copied the string but then callers would have had to deallocate the string once they have finished with it which is an undesirabable burden to put on callers.
2017-12-23Get rid of InspIRCd::QuickExit.Peter Powell
This is just a thin wrapper around exit(). I don't think we really need it. While we are changing this code the setgroup/setuser code should be using EXIT_STATUS_CONFIG too.
2017-12-22Improve and modernize the SQL system API.Peter Powell
- Move everything into the SQL namespace and drop the SQL prefix. - Move SQLProvider::PopulateUserInfo to SQL::PopulateUserInfo. - Rename SQLEntry to SQL::Field and clean up. - Rename SQLEntries to SQL::Row. - Rename SQLerror to SQL::Error and clean up. - Rename SQLerrorNum to SQL::ErrorCode and drop the SQL_ prefix. - Rename ParamL to SQL::ParamList. - Rename ParamM to SQL::ParamMap; - Make implementing SQLQuery::OnError mandatory. - Redo most of the documentation in the sql header.
2017-12-22Fixed misc. instances of ERR_NOSUCHNICK instead of channel numericsB00mX0r
Per #1122
2017-12-22Rename <security:hidewhois> to <security:hideserver>.Peter Powell
The previous name was horrible and didn't describe what the setting actually does.
2017-12-21Add SHUN as a /filter actionB00mX0r
This resolves #483
2017-12-10Extract RFC modes from the core to core_channel and core_user.Peter Powell