summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-04-16Remove the default value in ConfigTag::get{Duration,Float,Int}.Peter Powell
2018-04-16Use an oper priv instead of a config flag for overriding nonicks.Peter Powell
2018-04-16Improve some documentation (#1483).Matt Schatz
* Improve exemptchanops in inspircd.conf.example (<options>) and modules.conf.example; along with both helpop examples. * Add "the" to all "requires X module" in both helpop examples. * Refer to customprefix instead of chanprotect and halfop. * Add SNOMASK 'r' and 'R' (OPERLOG) to both helpop examples. * Clean up unnecessarily split SNOMASK lines in both helpop examples. * Move chmode 'g' to be in alphabetical order in both helpops examples. * Specify the needed mask formats for TLINE in helpop-full example. * Remove extra '\' in RLINE mask format in helpop-full example. Force xml format in helpop-full * Generalize "color codes" to "formatting codes" * Fix file name in include for example helpop-full
2018-04-16Use an oper priv instead of a config flag for overriding callerid.Peter Powell
2018-04-16Replace the remaining use of irc::string with irc::find.Peter Powell
2018-04-14Remove helpop sections which are now incorrect.Peter Powell
Both the static module flag and the CLEARCHAN command have been removed.
2018-04-14Fix customprefix modes not being deleted when the module unloads.Peter Powell
2018-04-12Fix ModuleManager's external source lists not working with HTTPS.Peter Powell
2018-04-11Fix blank instead of empty PART message when a user is shunnedB00mX0r
2018-04-11Change some usage of "gecos" to "real name"genius3000
Within the example configs, helpops, some server sent messages, and simple code comments: change the primary usage of "gecos" to "real name" (or "realname" where fitting).
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-09Optimize some behaviour in the core (#1476).Dylan Frank
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-07Fix some more oversights in m_geoip.Peter Powell
- Add the G: extban to the EXTBAN 005 token. - Use CXX11_OVERRIDE with ReadConfig and OnCheckBan. Thanks to @genius3000 for pointing these out.
2018-04-07Fix disabling the GeoIP extban in m_geoip.Peter Powell
2018-04-07m_sqlauth: Allow specifying what hash algos to provide hashes from.Daniel Vassdal
Defaults to md5,sha256 to be compatible with old configs. Adds new parameter `kdf`. If this is set (to e.g. bcrypt), the hash will be compared locally. This requires the password column to be specified in <sqlauth:column>. Closes #741
2018-04-07SQL: Add HasColumn() to check if a result contains a named column.Daniel Vassdal
2018-04-06Fix ELine::Matches returning false on existing matchgenius3000
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.
2018-04-06Set User::host before calling ChangeIP()Peter Powell
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.
2018-04-06Refactor m_sqloper to be a full opers.conf replacement (#983).Dylan Frank
m_sqloper now supports dynamic fields, works with m_sslinfo, and works with /stats o.
2018-04-06Implement support for banning users from channels by country code.Peter Powell
2018-04-06Validate settings in order in ValidateSettings() (#1475).genius3000
* Validate the settings in the same order as the parameter syntax * Always validate Lines and Secs regardless of having a Diff * Check Backlog for greater than Max as well as being disabled
2018-03-31Prioritize checking for +ikl last to match previous behavior (#1474).Dylan Frank
2018-03-31Move <security:announceinvites> to core_channel.Peter Powell
2018-03-31Move checking for +ikl from the core to to core_channel.Peter Powell
2018-03-30Update the GeoIP ExtItem when CGI:IRC sets the real IP (#1471)genius3000
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.
2018-03-29Ignore expired or invalid client certificates (#1468).Dylan Frank
Fixes #1345.
2018-03-25Do not send unset topics on channel join per RFC (#1469)Dylan Frank
Fixes #1091.
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-03-13Merge pull request #1461 from puckipedia/haiku-supportPeter Powell
Add Haiku support.
2018-03-10Add Haiku supportPuck Meerburg
2018-03-04Merge pull request #1463 from clinew/insp20+openssl-v1.1-compatPeter Powell
m_ssl_openssl: Remove deprecated API members.
2018-03-02m_ssl_openssl: Remove deprecated API members.Wade Cline
Backported from 2afc1af4639ae2bbef397f4f6acc834950017d91.
2018-03-01Improve the message shown to the admin when generating SSL certs.Peter Powell
Self-signed SSL certificates are intended for testing purposes. A production server should be using a CA-signed certificate instead.
2018-02-24Merge pull request #1458 from linuxdaemon/insp20+duplicate-redir-metaPeter Powell
[2.0] Make sure banredirect metadata can not be duplicated
2018-02-24Append LDFLAGS at the same time as CPPFLAGS and CXXFLAGS.Peter Powell
This deduplicates the addition of these flags.
2018-02-17Release v3.0.0 alpha 6.Peter Powell
2018-02-17Move m_sslrehashsignal to the extra directory.Peter Powell
This module uses platform-specific behaviour that does not work on Windows.
2018-02-17Fix building on Windows (mostly).Peter Powell
2018-02-12Merge pull request #1460 from genius3000/insp20+helpop_fixPeter Powell
[2.0]: Helpop: Move extban 'U' from acting to matching
2018-02-11[2.0]: Helpop: Move extban 'U' from acting to matchinggenius3000
Already fixed in master in 8587df2
2018-02-07Import the anticaps module from inspircd-extras.Peter Powell
2018-02-07Send the ACCEPT and KEYLEN ISUPPORT tokens.Peter Powell
- The ACCEPT=[count] token specifies the maximum amount of nicks which can be added to a m_callerid accept list. This token was added by ircd-ratbox in 3.0.9. - The KEYLEN=[length] token specifies the maximum length of a channel key. This token was added by ircd-ratbox in 3.1 beta. For more info see http://defs.ircdocs.horse/defs/isupport.html
2018-02-02Allow the maximum length of a chanfilter message to be configured.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-25Revert std::set changes and add duplicate checking in m_banredirect instead, ↵linuxdaemon
as requested by @Adam-