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/session.c | |
9 * | |
10 * This file implements the NSSCKMDSession object for the | |
11 * "builtin objects" cryptoki module. | |
12 */ | |
13 | |
14 static NSSCKMDFindObjects * | |
15 builtins_mdSession_FindObjectsInit( | |
16 NSSCKMDSession *mdSession, | |
17 NSSCKFWSession *fwSession, | |
18 NSSCKMDToken *mdToken, | |
19 NSSCKFWToken *fwToken, | |
20 NSSCKMDInstance *mdInstance, | |
21 NSSCKFWInstance *fwInstance, | |
22 CK_ATTRIBUTE_PTR pTemplate, | |
23 CK_ULONG ulAttributeCount, | |
24 CK_RV *pError) | |
25 { | |
26 return nss_builtins_FindObjectsInit(fwSession, pTemplate, ulAttributeCount,
pError); | |
27 } | |
28 | |
29 NSS_IMPLEMENT NSSCKMDSession * | |
30 nss_builtins_CreateSession( | |
31 NSSCKFWSession *fwSession, | |
32 CK_RV *pError) | |
33 { | |
34 NSSArena *arena; | |
35 NSSCKMDSession *rv; | |
36 | |
37 arena = NSSCKFWSession_GetArena(fwSession, pError); | |
38 if ((NSSArena *)NULL == arena) { | |
39 return (NSSCKMDSession *)NULL; | |
40 } | |
41 | |
42 rv = nss_ZNEW(arena, NSSCKMDSession); | |
43 if ((NSSCKMDSession *)NULL == rv) { | |
44 *pError = CKR_HOST_MEMORY; | |
45 return (NSSCKMDSession *)NULL; | |
46 } | |
47 | |
48 /* | |
49 * rv was zeroed when allocated, so we only | |
50 * need to set the non-zero members. | |
51 */ | |
52 | |
53 rv->etc = (void *)fwSession; | |
54 /* rv->Close */ | |
55 /* rv->GetDeviceError */ | |
56 /* rv->Login */ | |
57 /* rv->Logout */ | |
58 /* rv->InitPIN */ | |
59 /* rv->SetPIN */ | |
60 /* rv->GetOperationStateLen */ | |
61 /* rv->GetOperationState */ | |
62 /* rv->SetOperationState */ | |
63 /* rv->CreateObject */ | |
64 /* rv->CopyObject */ | |
65 rv->FindObjectsInit = builtins_mdSession_FindObjectsInit; | |
66 /* rv->SeedRandom */ | |
67 /* rv->GetRandom */ | |
68 /* rv->null */ | |
69 | |
70 return rv; | |
71 } | |
OLD | NEW |