aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Expand)AuthorAgeFilesLines
* Release v3.0.0 alpha 8. v3.0.0a8Gravatar Peter Powell2018-07-151-1/+1
* Merge branch 'insp20' into master.Gravatar Peter Powell2018-07-152-2/+1
|\
| * Clean up the WHO helpop documentation.Gravatar Peter Powell2018-07-121-1/+1
| * Fix replying with the source user in oper-restricted WHO lookups.Gravatar Peter Powell2018-07-111-3/+1
| * Fix invalid conversion from 'const char*' to 'char*' on FreeBSD.Gravatar Peter Powell2018-06-081-1/+1
* | 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). Gravatar Peter Powell2018-07-151-3/+2
* | 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> Gravatar Peter Powell2018-07-121-282/+469
* | Switch core_dns validation to use InspIRCd::IsHost.Gravatar Peter Powell2018-07-101-6/+1
* | Switch <server:name> validation to use InspIRCd::IsHost.Gravatar Peter Powell2018-07-101-22/+1
* | Add InspIRCd::IsHost for checking the validity of hostnames.Gravatar Peter Powell2018-07-101-0/+59
* | Add a ConfigTag::getString overload that calls a validation method.Gravatar Peter Powell2018-07-101-0/+15
* | Allow exempting of registered users from securelist.Gravatar Peter Powell2018-07-101-1/+9
* | Add a silent option to <options:restrictbannedusers>.•••This is useful when dealing with spambots that switch method when they receive ERR_CANNOTSENDTOCHAN. Gravatar Peter Powell2018-07-103-6/+17
* | Use !empty() instead of 'size() > 0' when checking parameter count.Gravatar B00mX0r2018-07-034-5/+5
* | Allow relative paths to be passed in --config on boot.•••Closes #1115. Gravatar Peter Powell2018-06-251-1/+10
* | 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.Gravatar Chris Novakovic2018-06-041-2/+10
* | 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. Gravatar Peter Powell2018-04-221-13/+14
* | 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. Gravatar Peter Powell2018-04-223-8/+2
* | Fix some oversights relating to numerics.•••- ERR_CANNOTSENDTOCHAN only takes the channel name and a message. - ERR_INVALIDCAPCMD is 410 not 232. Gravatar Peter Powell2018-04-223-3/+3
* | Release v3.0.0 alpha 7. v3.0.0a7Gravatar Peter Powell2018-04-221-1/+1
* | Move a bunch of optional module numerics to the module source file.Gravatar Peter Powell2018-04-226-3/+35
* | Replace ERR_{NOCTCPALLOWED,WORDFILTERED} with ERR_CANNOTSENDTOCHAN.•••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. Gravatar Peter Powell2018-04-222-2/+2
* | Merge tag 'v2.0.26' into master.Gravatar Peter Powell2018-04-228-6/+51
|\|
| * Release v2.0.26 v2.0.26Gravatar Peter Powell2018-04-201-1/+1
| * Fix blank instead of empty PART message when a user is shunnedGravatar B00mX0r2018-04-111-1/+1
| * Remove swhois messages set in the oper block on deoper.•••Closes #1240. Gravatar Peter Powell2018-04-093-4/+35
| * Fix ELine::Matches returning false on existing match•••When checking for an E-Line match, we want to actually check for a current match even if we previously matched and are set exempt. This fixes situations where you have an E-Lined CGI:IRC address, a G-Lined IP range for some area/host/etc and a smaller E-Lined IP range for known good clients. Currently when CGI:IRC changes the IP, E-Lines are rechecked but because the user is already exempt (from the CGI:IRC E-Line), they are set no longer exempt and match a G-Line, when they should match an E-Line. This exact change has been done before in commit 'c8b344e' and shortly reverted in 'c490a90' to fix issue #989 (CGI:IRC users remaining exempt when the CGI:IRC address is E-Lined but they are not). The actual cause to this issue was likely that the user's hostname was not changed from the CGI:IRC hostname/IP prior to rechecking E-Lines. This is being fixed in a separate commit. Gravatar genius30002018-04-061-3/+0
| * Set User::host before calling ChangeIP()•••ChangeIP() calls SetClientIP() which revalidates whether the user matches an ELine. However, because the hostname has not changed yet the user may incorrectly be marked as non-exempt. Gravatar Peter Powell2018-04-061-3/+3
| * Update the GeoIP ExtItem when CGI:IRC sets the real IP (#1471)•••Since CGI:IRC calls it's 'ChangeIP()' either from 'OnCheckReady()' or 'OnUserRegister()', both of which are called after the user has sent NICK/USER, we can safely skip re-setting the ExtItem prior to this point. This skips the first 'OnSetUserIP()' from 'User::AddUser()' as the 'OnSetConnectClass()' catch handles the initial setting.Gravatar genius30002018-03-301-1/+8
| * m_ssl_openssl: Remove deprecated API members.•••Backported from 2afc1af4639ae2bbef397f4f6acc834950017d91. Gravatar Wade Cline2018-03-021-3/+12
| * Revert std::set changes and add duplicate checking in m_banredirect instead, ...Gravatar linuxdaemon2018-01-251-11/+18
| * Fix comparator logic for ordering by channelGravatar linuxdaemon2018-01-251-3/+3
| * Make sure banredirect metadata can not be duplicatedGravatar linuxdaemon2018-01-251-3/+11
| * 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. Gravatar Michael Hazell2017-12-311-0/+5
| * Always store something in the cgiirc hostname extension.•••This is used by modules like m_sasl to send the cgiirc hostname to services so it should contain something valid. Closes #1438. Gravatar Peter Powell2017-12-201-7/+3
| * Fix m_spanningtree sending the wrong setter in S2S ADDLINE.Gravatar Peter Powell2017-12-151-1/+1
| * Fix m_xline_db storing the wrong setter in the XLine database.Gravatar Peter Powell2017-12-151-1/+1
* | Optionally do not notify users if their messages are blocked by certain modul...•••Closes #711.Gravatar Robby2018-04-203-8/+36
* | Tell the rehasher if an exception is thrown by a module on rehash.Gravatar Peter Powell2018-04-171-0/+2
* | Rewrite m_denychans.•••- The configuration is now validated on ReadConfig and parsed into objects. - Allow redirecting to channels that don't yet exist. There is no technical reason to not allow this and I believe that it would be a lot less confusing to users if we allowed this. - Flatten a bunch of nested if statements. Gravatar Peter Powell2018-04-171-66/+120
* | Convert some usages of ato[il] to use ConvToNum.Gravatar Peter Powell2018-04-173-8/+10
* | Fix m_ircv3_sts not having the VF_VENDOR flag set.Gravatar Peter Powell2018-04-161-1/+1
* | Call OnUserMessageBlocked when a PRIVMSG or a NOTICE is blocked.•••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. Gravatar Peter Powell2018-04-163-0/+17
* | Add range checking to ConfigTag::getFloat.Gravatar Peter Powell2018-04-162-3/+6
* | Add ConfigTag::getUInt for reading unsigned config values.Gravatar Peter Powell2018-04-1633-83/+97
* | Convert ConfigTag::getDuration to return an unsigned long.Gravatar Peter Powell2018-04-167-13/+15
* | Extract ConfigTag::getInt magnitude logic to a function template.Gravatar Peter Powell2018-04-161-12/+39
* | Convert ConfigTag::CheckRange to a function template.Gravatar Peter Powell2018-04-161-12/+26
* | Remove the default value in ConfigTag::get{Duration,Float,Int}.Gravatar Peter Powell2018-04-168-19/+16
* | Use an oper priv instead of a config flag for overriding nonicks.Gravatar Peter Powell2018-04-161-7/+1