OLD | NEW |
| (Empty) |
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 | |
5 #include "builtins.h" | |
6 | |
7 /* | |
8 * builtins/instance.c | |
9 * | |
10 * This file implements the NSSCKMDInstance object for the | |
11 * "builtin objects" cryptoki module. | |
12 */ | |
13 | |
14 /* | |
15 * NSSCKMDInstance methods | |
16 */ | |
17 | |
18 static CK_ULONG | |
19 builtins_mdInstance_GetNSlots( | |
20 NSSCKMDInstance *mdInstance, | |
21 NSSCKFWInstance *fwInstance, | |
22 CK_RV *pError) | |
23 { | |
24 return (CK_ULONG)1; | |
25 } | |
26 | |
27 static CK_VERSION | |
28 builtins_mdInstance_GetCryptokiVersion( | |
29 NSSCKMDInstance *mdInstance, | |
30 NSSCKFWInstance *fwInstance) | |
31 { | |
32 return nss_builtins_CryptokiVersion; | |
33 } | |
34 | |
35 static NSSUTF8 * | |
36 builtins_mdInstance_GetManufacturerID( | |
37 NSSCKMDInstance *mdInstance, | |
38 NSSCKFWInstance *fwInstance, | |
39 CK_RV *pError) | |
40 { | |
41 return (NSSUTF8 *)nss_builtins_ManufacturerID; | |
42 } | |
43 | |
44 static NSSUTF8 * | |
45 builtins_mdInstance_GetLibraryDescription( | |
46 NSSCKMDInstance *mdInstance, | |
47 NSSCKFWInstance *fwInstance, | |
48 CK_RV *pError) | |
49 { | |
50 return (NSSUTF8 *)nss_builtins_LibraryDescription; | |
51 } | |
52 | |
53 static CK_VERSION | |
54 builtins_mdInstance_GetLibraryVersion( | |
55 NSSCKMDInstance *mdInstance, | |
56 NSSCKFWInstance *fwInstance) | |
57 { | |
58 #define NSS_VERSION_VARIABLE __nss_builtins_version | |
59 #include "verref.h" | |
60 return nss_builtins_LibraryVersion; | |
61 } | |
62 | |
63 static CK_RV | |
64 builtins_mdInstance_GetSlots( | |
65 NSSCKMDInstance *mdInstance, | |
66 NSSCKFWInstance *fwInstance, | |
67 NSSCKMDSlot *slots[]) | |
68 { | |
69 slots[0] = (NSSCKMDSlot *)&nss_builtins_mdSlot; | |
70 return CKR_OK; | |
71 } | |
72 | |
73 const NSSCKMDInstance | |
74 nss_builtins_mdInstance = { | |
75 (void *)NULL, /* etc */ | |
76 NULL, /* Initialize */ | |
77 NULL, /* Finalize */ | |
78 builtins_mdInstance_GetNSlots, | |
79 builtins_mdInstance_GetCryptokiVersion, | |
80 builtins_mdInstance_GetManufacturerID, | |
81 builtins_mdInstance_GetLibraryDescription, | |
82 builtins_mdInstance_GetLibraryVersion, | |
83 NULL, /* ModuleHandlesSessionObjects -- defaults to false */ | |
84 builtins_mdInstance_GetSlots, | |
85 NULL, /* WaitForSlotEvent */ | |
86 (void *)NULL /* null terminator */ | |
87 }; | |
OLD | NEW |