summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-11-12Merge tag 'v2.0.25' into master.Peter Powell
2017-11-12Release v2.0.25Peter Powell
2017-11-09Work around removing shuns on nicks when the nick is online.Peter Powell
2017-11-09Revert the code changes to m_sasl made in commit 9d4b4344b4.Peter Powell
This is causing problems such as duplicate 904 messages.
2017-11-09Allow spaces in the network name now it doesn't cause problems.Peter Powell
This will not cause any compatibility issues as we do not rely on this attribute internally.
2017-11-09Implement support for draft-brocklesby-irc-isupport-03 escapes.Peter Powell
2017-11-06Improve (synchronize) the notices in m_timedbansgenius3000
* Send to remote servers upon setting * Send to halfop if available upon expiry
2017-11-06Merge pull request #1359 from genius3000/insp20+sasl_no_serverPeter Powell
2.0: Inform the client when a SASL message cannot be sent
2017-11-06Enable using m_customprefix to alter core prefix modes.Peter Powell
This replaces the devoice module which has now been removed. If you want users to be able to devoice themselves then you can load the customprefix module add the following config tag: <customprefix name="voice" depriv="yes"> If you wish to keep identical behaviour rather than allowing users to use "MODE #YourChannel -v TheirNick" then you can load the alias module and add the following config tag: <alias text="DEVOICE" format="#*" replace="MODE $2 -v $nick">
2017-11-06Clean up the configuration reading in m_customprefix.Peter Powell
- Rework the code flow to be more readable. - Ensure that the name is well formed. - Allow prefix modes with a rank of zero.
2017-11-06Move depriv from m_customprefix into PrefixMode.Peter Powell
2017-11-06Add support for setting the unset rank in ModeHandler.Peter Powell
2017-11-05Inform the client when a SASL message cannot be sentgenius3000
When SASL is properly configured with a 'target' server, we are able to inform the client when the message fails to send. Currently if a target is configured and it is offline, no response is sent. This can cause some clients to time out while waiting for a response. If a target isn't configured, behaviour will not change with this commit. The default of '*' will still send to all servers. Updated example config with 'target' variable.
2017-11-06Fix an unhandled exception crash when rehashing modules.Peter Powell
Previously we used FOREACH_MOD to call OnRehash which handled any thrown exceptions. When we switched to ReadConfig this stopped being the case. This bug was introduced in c202dea024.
2017-11-05Use InvalidateCache in the sockaddrs overload of OnSetClientIP.Peter Powell
This was done to the string variant in d3b82b2f7f.
2017-11-04Fix CMD_RESTART with relative paths as argv[0].Jordyn/The Linux Geek
2017-11-01Fix some SSL module issues.Peter Powell
- Use the same dhparams name in m_ssl_openssl as in other modules. - Fix building m_ssl_mbedtls.
2017-10-31Make core_hostname_lookup redo the lookup when a user's IP changes.Peter Powell
This removes the need to do lookups in the cgiirc module. This is useful as relying on gateways to do proper DNS checks is unreliable and has resulted in issues like 5fc4403f62. Its more sane if we do our own lookups. This change has been okayed by multiple WEBIRC gateway authors so I don't think it will cause many problems.
2017-10-29Add support to IOHook for retrieving the hostname sent via SNI.Peter Powell
2017-10-28Hide User#host and User#dhost and use accessors to modify them.Peter Powell
This removes the need to invalidate the cache after changing a user's hostname.
2017-10-27Change SetClientIP to take a C++ string instead of a char array.Peter Powell
2017-10-26ConfigReader: fix compilers optimizing NULL check in ConfigTag::readString()Adam
See: 66f82ccf926aac39273bfc652c85c08080cc9a46 Fixes inspircd/inspircd-extras#110
2017-10-22Move Shutter to former contributors & thank genius3000, Sheogorath.Peter Powell
2017-10-22Deduplicate error handling in the socket engines.Peter Powell
2017-10-22Convert GetMaxFds() to size_t and deduplicate setting code.Peter Powell
2017-10-22Remove support for the Solaris IOCP socket engine.Peter Powell
After discussing this with Adam we have decided that there is very little point in keeping this now that Solaris has been killed. Any legacy Solaris users will have to make do with poll. This change does not affect users of Solaris forks like Illumos as they have support for epoll which will have already been selected over Solaris IOCP by configure.
2017-10-21socketengine_poll: fix initialization fd_mappingsAdam
2017-10-21Tweak the module flags in MODULES slightly.Peter Powell
Using unique letters for each flag makes it easier to read when using fonts which have similar glyphs for upper and lower case characters.
2017-10-21Add PackageInfo directives for Debian.Peter Powell
2017-10-21Add a helper function for calling the OnCheckExemption event.Peter Powell
2017-10-20Switch the default datetime format to something easier to read.Peter Powell
2017-10-19Switch from std::stringstream to irc::spacesepstream.Peter Powell
The latter is more suited to the things we have previously been using std::stringstream for.
2017-10-18Add a constructor to OperInfo and use it to set the type name.Peter Powell
2017-10-18Clean up OnCleanup.Peter Powell
- Switch to using ExtensionItem::ExtensibleType for the type instead of TargetTypeFlags. - Pass the extensible to OnCleanup as an Extensible pointer instead of a void pointer. - Call OnCleanup for memberships as well as channels and users. - Rewrite event documentation to remove outdated references.
2017-10-18Ignore <module> tags for modules that are already loaded.Peter Powell
This allows us to do user friendly things like loading the alias module in the example alias files.
2017-10-18Fix sending a malformed 410 numeric when sent empty CAP commands.Peter Powell
2017-10-17Clean up the command disabling logic.Peter Powell
- Read the disabled command list in ApplyDisabledCommands() instead of storing it in a global which is only accessed on rehash. - Write debug messages to the log when disabling commands. - Use irc::spacesepstream instead of std::stringstream.
2017-10-16Un-constify the private fields of WebIRCHost.Peter Powell
These being constant causes problems on older compilers that don't elide the temporary copy when adding to the host list.
2017-10-15Clean up the initialization of ConnectClass and ServerConfig.attilamolnar
2017-10-15Rewrite the configuration documentation for m_cgiirc.Peter Powell
2017-10-15Add support for WEBIRC blocks authenticating using client certs.Peter Powell
2017-10-15Show the gateway, realhost, and realip in WHOIS for cgiirc clients.Peter Powell
This mirrors a similar feature in ircd-hybrid but using a different numeric that is not already taken in InspIRCd.
2017-10-15Clean up the WEBIRC command handler.Peter Powell
- Fix the extremely broken indentation. - Simplify the HandleLocal code flow. - Improve the notices sent to operators.
2017-10-15Add support for hashed WebIRC passwords to m_cgiirc.Peter Powell
2017-10-15Rewrite the m_cgiirc configuration handling.Peter Powell
- Store ident hosts separately to WebIRC hosts. - Throw exceptions when the configuration is invalid.
2017-10-15Update wiki links to use HTTPS and point to the correct pages.Peter Powell
When we release 3.0 these links will break as they will point to the pages for 3.0 rather than 2.0.
2017-10-15Remove INSPIRCD_SOCKETENGINE_NAME and INSPIRCD_SYSTEM.Peter Powell
- INSPIRCD_SOCKETENGINE_NAME is not really something that needs to be user facing. If opers want to know this kind of internal info then they can look at the build configuration. - INSPIRCD_SYSTEM causes problems for reproducible builds and is only accurate for the state of the system when InspIRCd is built which is not useful in the slightest.
2017-10-15Remove an outdated comment in cmd_user.Peter Powell
We don't use C strings for storing the ident anymore.
2017-10-12Release v3.0.0 alpha 2.Peter Powell
2017-10-12Merge the latest changes from insp20 into master.Peter Powell