summaryrefslogtreecommitdiff
path: root/src/modules/m_operflood.cpp
blob: 9f4f56ebcb9915ecf3b80d680474048c13b6359a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*       +------------------------------------+
 *       | Inspire Internet Relay Chat Daemon |
 *       +------------------------------------+
 *
 *  InspIRCd: (C) 2002-2007 InspIRCd Development Team
 * See: http://www.inspircd.org/wiki/index.php/Credits
 *
 * This program is free but copyrighted software; see
 *            the file COPYING for details.
 *
 * ---------------------------------------------------
 */

#include "inspircd.h"
#include "users.h"
#include "channels.h"
#include "modules.h"

/* $ModDesc: Removes flood limits from users upon opering up. */
class ModuleOperFlood : public Module
{
public:
	ModuleOperFlood(InspIRCd * Me) : Module(Me) {}

	void Implements(char * List)
	{
		List[I_OnPostOper] = 1;
	}

	Version GetVersion()
	{
		return Version(1,1,0,1,VF_VENDOR,API_VERSION);
	}

	void OnPostOper(User* user, const std::string &opertype)
	{
		if(!IS_LOCAL(user))
			return;

		user->flood = 0;
		user->ExemptFromPenalty = true;
		user->WriteServ("NOTICE %s :*** You are now free from flood limits.", user->nick);
	}
};

MODULE_INIT(ModuleOperFlood);