|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 #ifndef nsSyncJPAKE_h__ |
|
5 #define nsSyncJPAKE_h__ |
|
6 |
|
7 #include "nsISyncJPAKE.h" |
|
8 |
|
9 #define NS_SYNCJPAKE_CONTRACTID \ |
|
10 "@mozilla.org/services-crypto/sync-jpake;1" |
|
11 |
|
12 #define NS_SYNCJPAKE_CID \ |
|
13 {0x0b9721c0, 0x1805, 0x47c3, {0x86, 0xce, 0x68, 0x13, 0x79, 0x5a, 0x78, 0x3f}} |
|
14 |
|
15 typedef struct PK11SymKeyStr PK11SymKey; |
|
16 |
|
17 class nsSyncJPAKE : public nsISyncJPAKE |
|
18 { |
|
19 public: |
|
20 NS_DECL_ISUPPORTS |
|
21 NS_DECL_NSISYNCJPAKE |
|
22 nsSyncJPAKE(); |
|
23 virtual ~nsSyncJPAKE(); |
|
24 private: |
|
25 enum { JPAKENotStarted, JPAKEBeforeRound2, JPAKEAfterRound2 } round; |
|
26 PK11SymKey * key; |
|
27 }; |
|
28 |
|
29 NS_IMPL_ISUPPORTS(nsSyncJPAKE, nsISyncJPAKE) |
|
30 |
|
31 #endif // nsSyncJPAKE_h__ |