From 69dee41a1b0a88d8170b8665eb2979915b022aad Mon Sep 17 00:00:00 2001 From: brain Date: Sun, 22 Jan 2006 20:32:19 +0000 Subject: Added MakeWildHost to userrec (*!*@dhost) Added ban stuff to messageflood git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2836 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_messageflood.cpp | 8 ++++++++ src/users.cpp | 12 ++++++++++++ 2 files changed, 20 insertions(+) (limited to 'src') diff --git a/src/modules/m_messageflood.cpp b/src/modules/m_messageflood.cpp index c88c93577..1f07e8155 100644 --- a/src/modules/m_messageflood.cpp +++ b/src/modules/m_messageflood.cpp @@ -181,6 +181,14 @@ class ModuleMsgFlood : public Module { /* Youre outttta here! */ f->clear(user); + if (f->ban) + { + char* parameters[3]; + parameters[0] = dest->name; + parameters[1] = "+b"; + parameters[2] = user->MakeWildHost(); + Srv->SendMode(parameters,3,user); + } Srv->KickUser(NULL, user, dest, "Channel flood triggered (mode +f)"); return 1; } diff --git a/src/users.cpp b/src/users.cpp index f6ada52c8..8bc2f8baa 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -114,6 +114,18 @@ char* userrec::GetFullHost() return result; } +char* userrec::MakeWildHost() +{ + static char nresult[MAXBUF]; + char* t = nresult; + *t++ = '*'; *t++ = '!'; + *t++ = '*'; *t++ = '@'; + for(char* n = dhost; *n; n++) + *t++ = *n; + *t = 0; + return nresult; +} + int userrec::ReadData(void* buffer, size_t size) { if (this->fd > -1) -- cgit v1.2.3