221 Commits

Author SHA1 Message Date
Peter Powell
4aa27e75af Rename the spanningtree module header to server.
In the future we will have server linking modules that are not the
spanningtree module.
2017-12-03 13:54:11 +00:00
Peter Powell
91e0af0fc4 Add the override keyword in places that it is missing.
GCCs warnings for this are much better than Clangs.
2017-11-21 15:51:45 +00:00
Peter Powell
b047c903da Add support to IOHook for retrieving the hostname sent via SNI. 2017-10-29 11:15:47 +00:00
Peter Powell
d865b43486 Hide User#host and User#dhost and use accessors to modify them.
This removes the need to invalidate the cache after changing a
user's hostname.
2017-10-28 16:16:10 +01:00
Peter Powell
dcd3438011 Add a helper function for calling the OnCheckExemption event. 2017-10-21 16:34:48 +01:00
Peter Powell
74dd288542 Move <dns:timeout> out of the core. 2017-09-03 19:28:50 +01:00
Peter Powell
ff3b706b25 Merge pull request #1271 from SaberUK/master+exemption
Move the OnCheckExemption hook out of the core.
2017-07-27 13:13:16 +01:00
Adam
f2e3762ff4
core_dns: add support for txt records
This might be used later by m_dnsbl to get reasons for listings
2017-04-23 16:35:21 -04:00
Peter Powell
81027f3a08 Move the OnCheckExemption hook out of the core. 2017-03-20 11:47:59 +00:00
Attila Molnar
65667e7cc2 Fix Windows build and most MSVC warnings 2016-09-02 19:58:44 +02:00
Adam
14556541bb core_dns Make question a member of request, move common FindAnswerOfType to be a member of query 2016-08-25 17:12:48 +02:00
Attila Molnar
f91da925b5 Export the GetCiphersuite() method from the SSL modules 2016-04-28 17:06:16 +02:00
Attila Molnar
b96329dc3b Add SSLIOHook::IsSSL() to determine whether a socket is using SSL or not
Use it in a few places
2016-04-28 17:04:33 +02:00
Attila Molnar
1b8f7ef94a Fix oversight in the last Stats::Context:AddRow() method 2016-02-25 19:19:04 +01:00
Attila Molnar
304b6dbbf5 Introduce Stats::Context, pass it to the OnStats hook and switch all code to it 2016-02-25 17:02:03 +01:00
Attila Molnar
0c42bcde16 Convert WhoisContext::SendLine() calls to pass the parameters of the numeric as method parameters 2016-02-25 16:27:30 +01:00
Attila Molnar
18d5754871 m_ircv3 Make WriteNeighborsWithCap() available for use in other modules 2015-12-05 16:47:41 +01:00
Attila Molnar
c933f32408 m_cap Make Capability objects compatible with dynamic_references, add Cap::Reference 2015-12-05 16:42:17 +01:00
Attila Molnar
425d54073a m_cap Specialize extension item 2015-12-05 16:16:49 +01:00
Attila Molnar
302053cf8f m_cap Provide the OnCapValueChange event and add Cap::Manager::NotifyValueChange() 2015-12-05 15:58:48 +01:00
Attila Molnar
912fd7a922 m_cap Provide the OnCapAddDel() event 2015-12-05 15:57:00 +01:00
Attila Molnar
b9c6792cd6 m_cap Add Capability::GetCapValue(), list capabilities with values 2015-12-05 15:50:07 +01:00
Attila Molnar
9ac2eae1f0 m_cap Learn the supported capability negotiation protocol of a client from CAP LS
Let modules implementing caps query this information
2015-12-05 15:45:20 +01:00
Attila Molnar
3e08629e83 m_cap Add Capability::OnList() hook 2015-12-05 15:42:04 +01:00
Attila Molnar
bc388aa97c m_cap Add Capability::OnRequest() hook 2015-12-05 15:35:05 +01:00
Attila Molnar
259b111394 Add rewritten m_cap module
- Caps are now managed by m_cap
- Each cap uses one bit in an extension item shared with other caps
2015-12-05 15:29:01 +01:00
Attila Molnar
0528e83604 Nuke m_cap 2015-12-05 15:04:00 +01:00
Attila Molnar
19cc9292ab core_reloadmodule Allow modules to handle reload failures of other mods 2015-11-26 15:14:07 +01:00
Attila Molnar
d3eb1a77d7 core_reloadmodule Allow modules to save and restore their own data when reloading another mod 2015-11-26 15:10:00 +01:00
Attila Molnar
a124a3783d core_channel Implement invite (un)serialization 2015-11-02 13:40:15 +01:00
Attila Molnar
30fc51c6dd Rewrite invite system
- Moved out of core, now lives entirely in core_channel
- Accessible using the provided API after including the appropriate header
- Invites are stored in an extension attached to LocalUser/Channel objects, they no longer need special handling when destroying these objects or when lowering TS
- Expiration of timed invites are implemented using Timers
- When creating a new invite let a non-timed invite override a timed one
2015-11-02 13:28:55 +01:00
Adam
70542e525b Fail invalid dns responses instead of drop 2015-07-06 17:53:21 +02:00
Attila Molnar
d0556a2a59 Call OnStreamSocketWrite() once per write event
Do sendq flattening in SSL modules, move code for it into class SSLIOHook from core
2015-06-06 14:42:59 +02:00
Adam
f3513de58a New m_ldap from Anope
Redesign to be more like m_mysql, polling ldap_result from a thread as
done previously is undefined.
2015-05-18 10:11:08 -04:00
Attila Molnar
c090e54be9 core_dns Add DNS timeout timer in Process() not in DNS::Request constructor 2015-05-13 00:43:00 +02:00
Attila Molnar
d1f028db2b core_dns Make MAX_REQUEST_ID unsigned, move it to core_dns from header 2015-05-13 00:39:54 +02:00
Attila Molnar
8f34594cb7 Move OnWhois* events to core_whois, add Whois::Context
Remove InspIRCd::SendWhoisLine()
2015-04-28 15:16:22 +02:00
Attila Molnar
3d32852e7e core_dns Drop incoming packets containing a different question from what we asked 2015-04-27 19:28:00 +02:00
Attila Molnar
edfe7f035e core_dns Remove incomplete support for multiple questions per query 2015-04-21 15:24:10 +02:00
Attila Molnar
a28f095db8 core_dns Don't store query class code in Question 2015-04-21 15:14:29 +02:00
Attila Molnar
4e58282058 core_dns Add typedef for request id, change it to uint16_t 2015-04-21 15:08:10 +02:00
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