aboutsummaryrefslogtreecommitdiff
path: root/src/modules/sasl.h
blob: 0b0cf4fa91f9001f174258027799a6f42d377e89 (about) (plain) (blame)
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
/*       +------------------------------------+
 *       | Inspire Internet Relay Chat Daemon |
 *       +------------------------------------+
 *
 *  InspIRCd: (C) 2002-2011 InspIRCd Development Team
 * See: http://wiki.inspircd.org/Credits
 *
 * This program is free but copyrighted software; see
 *	    the file COPYING for details.
 *
 * ---------------------------------------------------
 */

#ifndef __SASL_H__
#define __SASL_H__

class SASLHook : public classbase
{
 public:
	SASLHook() {}
	virtual ~SASLHook() {}
	virtual void ProcessClient(User* user, const std::vector<std::string>& parameters) = 0;
	virtual void ProcessServer(User* user, const std::vector<std::string>& parameters) = 0;
};

class SASLSearch : public Event
{
 public:
	User* const user;
	const std::string method;
	SASLHook* auth;
	SASLSearch(Module* me, User* u, const std::string& m)
		: Event(me, "sasl_search"), user(u), method(m), auth(NULL)
	{
		Send();
	}
};

#endif