Line data Source code
1 : /* vim:set ts=4 sw=4 et cindent: */
2 : /* This Source Code Form is subject to the terms of the Mozilla Public
3 : * License, v. 2.0. If a copy of the MPL was not distributed with this
4 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 :
6 : #ifndef nsAuthSASL_h__
7 : #define nsAuthSASL_h__
8 :
9 : #include "nsIAuthModule.h"
10 : #include "nsString.h"
11 : #include "nsCOMPtr.h"
12 : #include "mozilla/Attributes.h"
13 :
14 : /* This class is implemented using the nsAuthGSSAPI class, and the same
15 : * thread safety constraints which are documented in nsAuthGSSAPI.h
16 : * apply to this class
17 : */
18 :
19 : class nsAuthSASL final : public nsIAuthModule
20 : {
21 : public:
22 : NS_DECL_THREADSAFE_ISUPPORTS
23 : NS_DECL_NSIAUTHMODULE
24 :
25 : nsAuthSASL();
26 :
27 : private:
28 0 : ~nsAuthSASL() { Reset(); }
29 :
30 : void Reset();
31 :
32 : nsCOMPtr<nsIAuthModule> mInnerModule;
33 : nsString mUsername;
34 : bool mSASLReady;
35 : };
36 :
37 : #endif /* nsAuthSASL_h__ */
38 :
|