blob: 7813641dfee13dfe743961793de580f52bf6f29d (
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
|
#ifndef NULLSOFT_AUTH_LOGINCOMMAND_HEADER
#define NULLSOFT_AUTH_LOGINCOMMAND_HEADER
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
#include <wtypes.h>
#include "./loginResult.h"
class LoginData;
class LoginCredentials;
class __declspec(novtable) LoginCommand
{
protected:
LoginCommand() {}
~LoginCommand() {}
public:
virtual ULONG AddRef() = 0;
virtual ULONG Release() = 0;
virtual HRESULT GetType(GUID *commandUid) = 0;
virtual HRESULT SetParameter(LPCWSTR pszKey, LPCWSTR pszValue) = 0;
virtual HRESULT IsValid() = 0;
virtual HRESULT IsIdentical(LoginCommand *test) = 0;
virtual HRESULT BeginLogin(LoginData *data, LoginResult::Callback callback, void *user, LoginResult **result) = 0;
virtual HRESULT EndLogin(LoginResult *result, INT *authCode, LoginCredentials **credentials) = 0;
virtual HRESULT RequestAbort(LoginResult *result, BOOL drop) = 0;
};
#endif //NULLSOFT_AUTH_LOGINCOMMAND_HEADER
|