From 850b7a3ace862101a944a9332d72b6bd597c17cc Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Sun, 21 Jul 2019 13:44:32 +0100 Subject: Allow modules to prevent a failed connection from being closed. --- src/users.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/users.cpp') diff --git a/src/users.cpp b/src/users.cpp index a3807bd75..c0dc69ff4 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -308,9 +308,12 @@ bool UserIOHandler::OnSetEndPoint(const irc::sockets::sockaddrs& server, const i return !user->quitting; } -void UserIOHandler::OnError(BufferedSocketError) +void UserIOHandler::OnError(BufferedSocketError error) { - ServerInstance->Users->QuitUser(user, getError()); + ModResult res; + FIRST_MOD_RESULT(OnConnectionFail, res, (user, error)); + if (res != MOD_RES_ALLOW) + ServerInstance->Users->QuitUser(user, getError()); } CullResult User::cull() -- cgit v1.3.1-10-gc9f91