330 Commits

Author SHA1 Message Date
Peter Powell
cd5d78203b Fix building modules that use cap.h with a C++11 compiler. 2015-03-06 16:13:11 +00:00
Attila Molnar
97e2deac07 m_spanningtree Pass Server* to the OnServerLink/OnServerSplit events 2015-02-12 16:54:34 +01:00
Attila Molnar
0b8a9b5566 Convert the spanningtree events to use the new cross-module event system 2015-02-11 17:23:08 +01:00
Attila Molnar
3b83968416 Remove unused parameters from HTTPRequest constructor 2015-02-11 17:15:57 +01:00
Attila Molnar
1e8e379dce Convert the HTTPd request event to use the new cross-module event system 2015-02-11 17:13:08 +01:00
Attila Molnar
96dd0a52d9 Convert the HTTPd ACL event to use the new cross-module event system 2015-02-11 17:09:59 +01:00
Attila Molnar
c19e9d0edb Convert the SASL fallback event to use the new cross-module event system 2015-02-11 17:04:26 +01:00
Attila Molnar
f3ef8a230c Convert the CAP event to use the new cross-module event system 2015-02-11 17:01:00 +01:00
Attila Molnar
971788e42f Allow enabling/disabling caps via GenericCap::SetActive() 2015-02-11 16:52:39 +01:00
Attila Molnar
8c2135aad0 Convert the account login event to use the new cross-module event system 2015-02-11 16:46:11 +01:00
Attila Molnar
4fc2f7199e Specify which Extensible subclass an ExtensionItem is valid for 2015-01-18 10:40:33 +01:00
Daniel Vassdal
5c7db14a55 Hashing: Redo API
* Don't assume the printable output of hashes is hex
* Add virtual Compare() function, usable for KDFs like BCrypt

Some changes and bugfixes are by @attilamolnar, original PR #767
2014-08-04 12:38:12 +02:00
Attila Molnar
acccaa3964 Remove current time parameter of the Timer constructor 2014-07-10 12:17:55 +02:00
Attila Molnar
0babd8c078 Change allocation of InspIRCd::Timers to be physically part of the object containing it 2014-03-15 15:38:09 +01:00
Attila Molnar
5ac1ffce11 Allow Timers to delete themselves in Tick() 2014-01-30 21:44:51 +01:00
Attila Molnar
d02011d69f Remove whitespace and minor style changes 2014-01-23 14:37:09 +01:00
Attila Molnar
99f79a4e5c Split IOHook into IOHook and IOHookProvider
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-22 19:10:01 +01:00
Attila Molnar
11916574f6 Introduce Server class
- Replaces std::string server in User
- Replaces InspIRCd::ULine() and SilentULine()
2014-01-05 15:04:01 +01:00
Adam
dbbd333956 Add m_ldap, and convert m_ldapoper and m_ldapauth to use it. 2013-12-19 16:40:11 +01:00
attilamolnar
992674362c Automatically register ServiceProviders created by modules 2013-09-08 17:11:08 +02:00
attilamolnar
5384ddf545 Fix Windows build and a few more problems 2013-08-27 15:03:10 +02:00
Peter Powell
eaf658de3d Fix various small issues.
- Add CXX11_OVERRIDE to *Regex::Matches and *RegexFactory::Create.
- Fix documentation comment on regex_string.
- Fix various code duplication/layout issues.
2013-08-27 12:20:03 +01:00
Peter Powell
0e7f74a7c8 Make all regex modules throw the same exception on error. 2013-08-27 12:07:49 +01:00
Peter Powell
0003fc3131 Fix some warnings which are causing debug builds to fail.
- Clang: private field 'module' is not used
- GCC: suggest a space before ‘;’ or explicit braces around empty
       body in ‘while’ statement
2013-07-16 22:06:40 +01:00
attilamolnar
183d7a8dc0 Change the API of m_httpd to be dynamic_reference-based 2013-06-07 01:00:10 +02:00
attilamolnar
ad523652ae Change the API of m_sslinfo to be dynamic_reference-based 2013-06-07 01:00:10 +02:00
attilamolnar
3d6d9cda32 Create SSLIOHook interface that provides GetCertificate() 2013-06-07 01:00:10 +02:00
attilamolnar
79db1cf848 Create IOHook interface (extracted from Module) 2013-06-07 01:00:10 +02:00
Adam
8428bbb387 Modularize DNS
The DNS modules are temporarily in commands/ so they're loaded automatically

Thanks to Attila for helping with much of this.
2013-04-26 16:59:29 -05:00
Peter Powell
11cafc12d5 Tidy up source files:
- Use #pragma once instead of include guards.
- Move header files in src/modules to include/modules.
- Fixed various spacing issues.
2013-04-12 17:03:05 +01:00