michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: #ifndef nsSyncJPAKE_h__ michael@0: #define nsSyncJPAKE_h__ michael@0: michael@0: #include "nsISyncJPAKE.h" michael@0: michael@0: #define NS_SYNCJPAKE_CONTRACTID \ michael@0: "@mozilla.org/services-crypto/sync-jpake;1" michael@0: michael@0: #define NS_SYNCJPAKE_CID \ michael@0: {0x0b9721c0, 0x1805, 0x47c3, {0x86, 0xce, 0x68, 0x13, 0x79, 0x5a, 0x78, 0x3f}} michael@0: michael@0: typedef struct PK11SymKeyStr PK11SymKey; michael@0: michael@0: class nsSyncJPAKE : public nsISyncJPAKE michael@0: { michael@0: public: michael@0: NS_DECL_ISUPPORTS michael@0: NS_DECL_NSISYNCJPAKE michael@0: nsSyncJPAKE(); michael@0: virtual ~nsSyncJPAKE(); michael@0: private: michael@0: enum { JPAKENotStarted, JPAKEBeforeRound2, JPAKEAfterRound2 } round; michael@0: PK11SymKey * key; michael@0: }; michael@0: michael@0: NS_IMPL_ISUPPORTS(nsSyncJPAKE, nsISyncJPAKE) michael@0: michael@0: #endif // nsSyncJPAKE_h__