11722 Commits

Author SHA1 Message Date
Attila Molnar
2cf4b614e6 Change SocketEngine functions that do not require an instance to be static 2014-02-08 13:10:09 +01:00
Attila Molnar
5b6ae9c542 Only compile the testsuite if INSPIRCD_ENABLE_TESTSUITE is defined 2014-02-07 18:21:01 +01:00
Thiago Crepaldi
4ed0292914 m_ldapauth.cpp: Allow multiple patterns for users to bypass LDAP auth 2014-02-07 18:10:20 +01:00
Peter Powell
9dd4108273 Convert irc::stringjoiner to be a method instead of a class.
Add separator parameter
2014-02-06 23:11:51 +01:00
Peter Powell
db0e78c5d2 Fix various cases of UUID exposure.
- Introduce WriteCommand which sends * when the user has not registered.
- Switch a ton of code to use WriteCommand instead of WriteServ.
- Convert WriteNotice to be a wrapper around WriteCommand.
- Only send * when NICK has not been sent instead of before registration.
2014-02-06 23:10:01 +01:00
Attila Molnar
13edc2e8eb m_cap Instead of using case insensitive compare convert the subcommand to uppercase
This way if we send back the subcommand it will be in uppercase even if the client sent it in lowercase
2014-02-06 23:00:18 +01:00
Attila Molnar
a8b986bd78 Merge pull request #766 from SaberUK/master+rebuild-fix
Don't force a rebuild after doing a Git commit.
2014-02-06 22:57:21 +01:00
Peter Powell
1f63279777 Don't force a rebuild after doing a Git commit.
Thanks to w00t for pointing out the cause of this.
2014-02-06 18:27:08 +00:00
Attila Molnar
557d4ba922 socketengine_kqueue Remove dead code 2014-02-05 18:05:07 +01:00
Attila Molnar
c9ee23a0fd socketengine_epoll Remove needless initialization of epoll_event when removing an fd 2014-02-05 18:03:10 +01:00
Attila Molnar
594b9e031c Fix oversight in 3752b3f59d5216d7dc6221a361efc76b9ad2273d 2014-02-05 17:51:03 +01:00
Adam
da812566e8 Coding style changes in socketengines 2014-02-04 22:44:20 +01:00
Adam
3752b3f59d New socketengine stuff:
Use vectors that grow as necessary instead of mass allocating everything at once
Rework poll engine logic to make sense
2014-02-04 22:39:12 +01:00
Attila Molnar
d7164e521b Change type of SocketEngine::CurrentSetSize to size_t from int 2014-02-04 21:10:45 +01:00
Adam
178defb45e Fix ping timeout message seconds vs second 2014-02-04 06:37:21 -05:00
Attila Molnar
3fc88ba7c9 Remove a few unnecessary .c_str() calls 2014-01-31 14:35:13 +01:00
Attila Molnar
98ef89c392 Remove some dead code 2014-01-31 14:27:32 +01:00
Attila Molnar
2e8c2a6a5f Document new delayed join feature of m_conn_join 2014-01-30 22:18:40 +01:00
Attila Molnar
9781579ae5 m_conn_join Read default settings in ReadConfig() 2014-01-30 22:14:33 +01:00
Daniel Vassdal
9e1399c128 m_conn_join: Allow time-delayed joins 2014-01-30 22:12:18 +01:00
Daniel Vassdal
86a7fa3a06 m_conn_join: Fixed indentation 2014-01-30 22:06:10 +01:00
Attila Molnar
5ac1ffce11 Allow Timers to delete themselves in Tick() 2014-01-30 21:44:51 +01:00
Adam
407f10664a m_spanningtree Rewrite /map 2014-01-28 15:55:19 +01:00
Attila Molnar
adb5ab48a2 m_tline Minor improvements
- Replace floats with integers
- Use size() instead of counting elements
- Use WriteNotice()
2014-01-27 17:01:05 +01:00
Attila Molnar
764bf12c10 m_alias Remove duplicate checks 2014-01-27 16:37:40 +01:00
Attila Molnar
3d72f37f26 m_alias Use equal_range() when searching for aliases 2014-01-27 16:33:27 +01:00
Attila Molnar
7acb4ced20 Add m_clearchan which removes users from a channel without sending n*(n+1)/2 QUIT messages 2014-01-26 13:39:10 +01:00
Attila Molnar
3fef0ed889 Add ProtocolInterface::BroadcastEncap() and infrastructure for manually forwarding ENCAPs 2014-01-26 13:12:01 +01:00
Attila Molnar
92cc388aeb ProtocolInterface::SendEncapsulatedData() changes
- Pass command name and destination as real parameters
- Allow callers to specify the command source
- Send a SID instead of a server name if the target is a single server
2014-01-26 13:05:09 +01:00
Attila Molnar
1db0e984be Add Channel* parameter to OnSendWhoLine 2014-01-25 12:40:21 +01:00
Attila Molnar
f3f8eae2cd Omit the server name internally when building a /STATS reply and prepend it later 2014-01-25 12:28:39 +01:00
Peter Powell
074727e7a7 Convert InspIRCd::PassCompare to return bool instead of int.
The insane behaviour of this method was due to an implementation
detail which has since become irrelevent.
2014-01-25 12:20:04 +01:00
Attila Molnar
48869b38e9 Destroy Memberships of a quitting user in QuitUser() instead of in cull() 2014-01-25 12:15:01 +01:00
Attila Molnar
458168b575 Convert InviteBase::invites to an intrusively linked list 2014-01-24 13:20:11 +01:00
Attila Molnar
8537a54950 Remove classbase inheritance from Invitation 2014-01-24 13:12:40 +01:00
Attila Molnar
5c3abeda44 cmd_invite Fix incorrect parameter being passed to InspIRCd::Duration() 2014-01-24 13:10:09 +01:00
Attila Molnar
f1f8173bb5 Convert LocalUserList to an intrusively linked list 2014-01-24 13:08:13 +01:00
Attila Molnar
932e8d13f8 Convert UserChanList to an intrusively linked list 2014-01-24 12:58:01 +01:00
Attila Molnar
9a962e1c51 Add intrusive list template 2014-01-24 12:37:43 +01:00
Attila Molnar
d02011d69f Remove whitespace and minor style changes 2014-01-23 14:37:09 +01:00
Attila Molnar
2f3c378a39 Globally #undef min and max on Windows 2014-01-23 14:15:01 +01:00
Attila Molnar
87ec27cf3c Remove unneeded classbase inheritance from FileReader 2014-01-23 14:06:07 +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
282138ad0e Add the ability to have multiple SSL profiles
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-22 19:10:01 +01:00
Attila Molnar
b68a5ad030 m_ssl_gnutls Create GNUTLS_NEW_CERT_CALLBACK_API and cert_cb_last_param_type 2014-01-22 19:10:01 +01:00
Attila Molnar
e244cb2c63 Merge insp20 2014-01-21 18:44:08 +01:00
Attila Molnar
fead8af2b7 m_spanningtree Fix routing of ROUTE_TYPE_MESSAGE messages 2014-01-21 18:14:02 +01:00
Adam
ec1e85cb3d Add m_starttls and remove it from m_ssl_gnutls, which allows it to work with both openssl and gnutls 2014-01-21 18:04:08 +01:00
Attila Molnar
7dd831383f Release 2.0.15 v2.0.15 2014-01-21 14:13:25 +01:00
Attila Molnar
89510c143f Bump API version because of 3f4d54eb031f1cd6b016dfe1f768ed86303e3856 2014-01-21 14:13:02 +01:00