summaryrefslogtreecommitdiff
path: root/src/modules/extra
AgeCommit message (Collapse)Author
2014-05-10m_ldap: time out LDAP queriesAdam
Set LDAP_OPT_NETWORK_TIMEOUT to 0 in m_ldap to prevent the asynchronous library calls from blocking Fix memory leak of pending queries when m_ldap is unloaded
2014-04-07Merge insp20Attila Molnar
2014-03-15Change allocation of InspIRCd::Timers to be physically part of the object ↵Attila Molnar
containing it
2014-02-13Remove support for advertising the SSL ports in RPL_ISUPPORT.Peter Powell
- No other IRC servers implement this. - No IRC clients I can find support this.
2014-02-08Change all socketengine methods to be staticAttila Molnar
2014-01-31Remove some dead codeAttila Molnar
2014-01-30Allow Timers to delete themselves in Tick()Attila Molnar
2014-01-26m_ssl_openssl Fix memory leaks on /rehash ssl, unload and in VerifyCertificate()Attila Molnar
2014-01-25Omit the server name internally when building a /STATS reply and prepend it ↵Attila Molnar
later
2014-01-24Set a session id on our server ssl context in m_ssl_openssl. It is required ↵Adam
for some clients which try to restore SSL sessions.
2014-01-22Split IOHook into IOHook and IOHookProviderAttila Molnar
Create one IOHook instance for each hooked socket which contains all the hook specific data and read/write/close functions, removing the need for the "issl_session" array in SSL modules. Register instances of the IOHookProvider class in the core and use them to create specialized IOHook instances (OnConnect/OnAccept). Remove the OnHookIO hook, add a dynamic reference to ListenSocket that points to the hook provider (if any) to use for incoming connections on that socket. For outgoing connections modules still have to find the IOHookProvider they want to use themselves but instead of calling AddIOHook(hookprov), now they have to call IOHookProvider::OnConnect() after the connection has been established.
2014-01-22Add the ability to have multiple SSL profilesAttila Molnar
SSL profiles are now used instead of fixed SSL settings for everything SSL, making it possible to use completely different settings for each listener and outgoing connection. Outgoing connections are broken until the next commit.
2014-01-22m_ssl_gnutls Create GNUTLS_NEW_CERT_CALLBACK_API and cert_cb_last_param_typeAttila Molnar
2014-01-21Add m_starttls and remove it from m_ssl_gnutls, which allows it to work with ↵Adam
both openssl and gnutls
2013-12-19Add m_ldap, and convert m_ldapoper and m_ldapauth to use it.Adam
2013-11-18Use gnutls_rnd instead of gcry_randomize on newer GnuTLS versions.Peter Powell
Also, fix a bug where eval() caused compile errors.
2013-11-12Use WriteNumeric() everywhere we send numerics and include the user's nick ↵Adam
automatically
2013-09-08Automatically register ServiceProviders created by modulesattilamolnar
2013-08-30Replace OnRehash() with ReadConfig() that is called on boot, on module load ↵attilamolnar
and on rehash This eliminates the need for calling OnRehash() in init()
2013-08-30Merge insp20attilamolnar
2013-08-27Fix various small issues.Peter Powell
- Add CXX11_OVERRIDE to *Regex::Matches and *RegexFactory::Create. - Fix documentation comment on regex_string. - Fix various code duplication/layout issues.
2013-08-27Make all regex modules throw the same exception on error.Peter Powell
2013-08-16Clean up the build system properties and related code.Peter Powell
- Deduplicate getcompilerflags, getdependancies, getlinkerflags. - Remove $NoPedantic (add -Wno-pedantic to $CompileFlags instead). - Remove --enable-freebsd-ports-openssl and all related code (this will be replaced with --no-pkg-config=[name] in the future). - Remove some unused build system properties. - Remove support for caching third party include and library paths (can cause unexpected problems when they change).
2013-08-15Remove $ModDep commentsattilamolnar
2013-08-13m_ssl_gnutls Fix feature testing and cipher suite related errors on older ↵attilamolnar
GnuTLS versions Use the (old) LIBGNUTLS_VERSION_* defines as a fallback when GNUTLS_VERSION_* is unavailable Fixes #595 reported by @rhylan
2013-08-12Add <path> keys for all of the compile-time paths.Peter Powell
Also, make all paths in the config relative to their associated directory. This reverts a change in 2.0 which turned out to be a terrible idea, especially for system-wide installations.
2013-08-04Automatically attach modules to eventsattilamolnar
2013-08-04Modify the log message to contain the log type.Peter Powell
2013-08-04Change modules to use the MODNAME constant when logging.Peter Powell
The majority of modules were logging with their module name as the log type. There was a few places which were logging to a non-name type but, with the exception of CONFIG, those messages are so uncommon that it doesn't make sense to use a seperate type for them.
2013-07-16m_ssl_openssl Fix inverted check that prevented certificates from being ↵attilamolnar
recognized as trusted
2013-07-06Allow the user to specify any hashing mechanism supported by the underlying ↵Daniel Vassdal
SSL library
2013-07-04Remove $Core and $Mod* comments apart from $ModDep.Peter Powell
2013-06-16Add RE2 regex module.Peter Powell
2013-06-07Create SSLIOHook interface that provides GetCertificate()attilamolnar
2013-06-07Create IOHook interface (extracted from Module)attilamolnar
2013-06-06Convert a ton of uses of MAXBUF to use a fixed buffer size.Peter Powell
2013-06-06Compare to ServerLimits::MaxLine instead of MAXBUF.Peter Powell
2013-06-06Reserve ServerLimits::MaxLine instead of MAXBUF.Peter Powell
2013-06-06Merge insp20attilamolnar
2013-06-05Remove unnecessary string copies and dead codeattilamolnar
2013-06-04m_pgsql Same fix as 0e09600a431d0e0f2cde6457e088d84caf6d6f5dattilamolnar
2013-06-01m_mysql Fix escaping strings longer than MAXBUF/2attilamolnar
Quotes from the documentation: "You must allocate the to buffer to be at least length*2+1 bytes long. (In the worst case, each character may need to be encoded as using two bytes, and you need room for the terminating null byte.)" "The return value is the length of the encoded string, not including the terminating null character." http://dev.mysql.com/doc/refman/5.6/en/mysql-real-escape-string.html
2013-05-27Clean up the FileReader class and all of the modules that use it.Peter Powell
- Modules which use this class will now have to catch a CoreException when opening files if they wish to ignore the failed loading of a file. - m_randquote has been cleaned up massively and the RANDQUOTE command has been removed as it was pretty much useless.
2013-05-22m_mysql Fix crash on rehash when the database tags have been changed in the ↵attilamolnar
config
2013-05-19Fix spacing in calls to LogManager::Log.Peter Powell
2013-05-18Deduplicate hex string creation codeattilamolnar
2013-05-18m_geoip Set cc in OnSetConnectClass to the newly created string if it was NULLattilamolnar
2013-05-15Tidy up keywords on module methods.Peter Powell
- Remove virtual keyword from a ton of methods which don't need it. - Add override keyword to a ton of methods which do need it.
2013-05-15Replace some C-isms with C++-isms.Peter Powell
* 'const char*' to 'const std::string&'. * snprintf to std::string concatenation. * Replace duplicated OneOfMatches with InspIRCd::MatchMask.
2013-05-14Add method for writing server notices.Peter Powell
This allows us to send a server notice to a user without worrying about whether they are registered or not. If a user receives a server notice and they are not registered then the nickname field will contain an asterisk instead of their nick name.