|
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- |
|
2 * |
|
3 * This Source Code Form is subject to the terms of the Mozilla Public |
|
4 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
6 |
|
7 #include "nsISupports.idl" |
|
8 |
|
9 interface nsIPK11Token; |
|
10 |
|
11 [scriptable, uuid(c2d4f296-ee60-11d4-998b-00b0d02354a0)] |
|
12 interface nsIPKCS11Slot : nsISupports { |
|
13 |
|
14 readonly attribute wstring name; |
|
15 readonly attribute wstring desc; |
|
16 readonly attribute wstring manID; |
|
17 readonly attribute wstring HWVersion; |
|
18 readonly attribute wstring FWVersion; |
|
19 |
|
20 const unsigned long SLOT_DISABLED = 0; |
|
21 const unsigned long SLOT_NOT_PRESENT = 1; |
|
22 const unsigned long SLOT_UNINITIALIZED = 2; |
|
23 const unsigned long SLOT_NOT_LOGGED_IN = 3; |
|
24 const unsigned long SLOT_LOGGED_IN = 4; |
|
25 const unsigned long SLOT_READY = 5; |
|
26 readonly attribute unsigned long status; |
|
27 |
|
28 /* This is really a workaround for now. All of the "slot" functions |
|
29 * (isTokenPresent(), etc.) are in nsIPK11Token. For now, return the |
|
30 * token and handle those things there. |
|
31 */ |
|
32 nsIPK11Token getToken(); |
|
33 |
|
34 /* more fun with workarounds - we're referring to everything by token name */ |
|
35 readonly attribute wstring tokenName; |
|
36 |
|
37 }; |
|
38 |