Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: mozilla/security/nss/lib/ckfw/ckfw.h

Issue 14249009: Change the NSS and NSPR source tree to the new directory structure to be (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/nss/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « mozilla/security/nss/lib/ckfw/ck.h ('k') | mozilla/security/nss/lib/ckfw/ckfwm.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(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 #ifndef CKFW_H
6 #define CKFW_H
7
8 #ifdef DEBUG
9 static const char CKFW_CVS_ID[] = "@(#) $RCSfile: ckfw.h,v $ $Revision: 1.11 $ $ Date: 2012/04/25 14:49:28 $";
10 #endif /* DEBUG */
11
12 /*
13 * ckfw.h
14 *
15 * This file prototypes the private calls of the NSS Cryptoki Framework.
16 */
17
18 #ifndef NSSBASET_H
19 #include "nssbaset.h"
20 #endif /* NSSBASET_H */
21
22 #ifndef NSSCKT_H
23 #include "nssckt.h"
24 #endif /* NSSCKT_H */
25
26 #ifndef NSSCKFWT_H
27 #include "nssckfwt.h"
28 #endif /* NSSCKFWT_H */
29
30 #ifndef NSSCKMDT_H
31 #include "nssckmdt.h"
32 #endif /* NSSCKMDT_H */
33
34 /*
35 * NSSCKFWInstance
36 *
37 * -- create/destroy --
38 * nssCKFWInstance_Create
39 * nssCKFWInstance_Destroy
40 *
41 * -- implement public accessors --
42 * nssCKFWInstance_GetMDInstance
43 * nssCKFWInstance_GetArena
44 * nssCKFWInstance_MayCreatePthreads
45 * nssCKFWInstance_CreateMutex
46 * nssCKFWInstance_GetConfigurationData
47 * nssCKFWInstance_GetInitArgs
48 *
49 * -- private accessors --
50 * nssCKFWInstance_CreateSessionHandle
51 * nssCKFWInstance_ResolveSessionHandle
52 * nssCKFWInstance_DestroySessionHandle
53 * nssCKFWInstance_FindSessionHandle
54 * nssCKFWInstance_CreateObjectHandle
55 * nssCKFWInstance_ResolveObjectHandle
56 * nssCKFWInstance_DestroyObjectHandle
57 * nssCKFWInstance_FindObjectHandle
58 *
59 * -- module fronts --
60 * nssCKFWInstance_GetNSlots
61 * nssCKFWInstance_GetCryptokiVersion
62 * nssCKFWInstance_GetManufacturerID
63 * nssCKFWInstance_GetFlags
64 * nssCKFWInstance_GetLibraryDescription
65 * nssCKFWInstance_GetLibraryVersion
66 * nssCKFWInstance_GetModuleHandlesSessionObjects
67 * nssCKFWInstance_GetSlots
68 * nssCKFWInstance_WaitForSlotEvent
69 *
70 * -- debugging versions only --
71 * nssCKFWInstance_verifyPointer
72 */
73
74 /*
75 * nssCKFWInstance_Create
76 *
77 */
78 NSS_EXTERN NSSCKFWInstance *
79 nssCKFWInstance_Create
80 (
81 CK_C_INITIALIZE_ARGS_PTR pInitArgs,
82 CryptokiLockingState LockingState,
83 NSSCKMDInstance *mdInstance,
84 CK_RV *pError
85 );
86
87 /*
88 * nssCKFWInstance_Destroy
89 *
90 */
91 NSS_EXTERN CK_RV
92 nssCKFWInstance_Destroy
93 (
94 NSSCKFWInstance *fwInstance
95 );
96
97 /*
98 * nssCKFWInstance_GetMDInstance
99 *
100 */
101 NSS_EXTERN NSSCKMDInstance *
102 nssCKFWInstance_GetMDInstance
103 (
104 NSSCKFWInstance *fwInstance
105 );
106
107 /*
108 * nssCKFWInstance_GetArena
109 *
110 */
111 NSS_EXTERN NSSArena *
112 nssCKFWInstance_GetArena
113 (
114 NSSCKFWInstance *fwInstance,
115 CK_RV *pError
116 );
117
118 /*
119 * nssCKFWInstance_MayCreatePthreads
120 *
121 */
122 NSS_EXTERN CK_BBOOL
123 nssCKFWInstance_MayCreatePthreads
124 (
125 NSSCKFWInstance *fwInstance
126 );
127
128 /*
129 * nssCKFWInstance_CreateMutex
130 *
131 */
132 NSS_EXTERN NSSCKFWMutex *
133 nssCKFWInstance_CreateMutex
134 (
135 NSSCKFWInstance *fwInstance,
136 NSSArena *arena,
137 CK_RV *pError
138 );
139
140 /*
141 * nssCKFWInstance_GetConfigurationData
142 *
143 */
144 NSS_EXTERN NSSUTF8 *
145 nssCKFWInstance_GetConfigurationData
146 (
147 NSSCKFWInstance *fwInstance
148 );
149
150 /*
151 * nssCKFWInstance_GetInitArgs
152 *
153 */
154 NSS_EXTERN CK_C_INITIALIZE_ARGS_PTR
155 nssCKFWInstance_GetInitArgs
156 (
157 NSSCKFWInstance *fwInstance
158 );
159
160 /*
161 * nssCKFWInstance_CreateSessionHandle
162 *
163 */
164 NSS_EXTERN CK_SESSION_HANDLE
165 nssCKFWInstance_CreateSessionHandle
166 (
167 NSSCKFWInstance *fwInstance,
168 NSSCKFWSession *fwSession,
169 CK_RV *pError
170 );
171
172 /*
173 * nssCKFWInstance_ResolveSessionHandle
174 *
175 */
176 NSS_EXTERN NSSCKFWSession *
177 nssCKFWInstance_ResolveSessionHandle
178 (
179 NSSCKFWInstance *fwInstance,
180 CK_SESSION_HANDLE hSession
181 );
182
183 /*
184 * nssCKFWInstance_DestroySessionHandle
185 *
186 */
187 NSS_EXTERN void
188 nssCKFWInstance_DestroySessionHandle
189 (
190 NSSCKFWInstance *fwInstance,
191 CK_SESSION_HANDLE hSession
192 );
193
194 /*
195 * nssCKFWInstance_FindSessionHandle
196 *
197 */
198 NSS_EXTERN CK_SESSION_HANDLE
199 nssCKFWInstance_FindSessionHandle
200 (
201 NSSCKFWInstance *fwInstance,
202 NSSCKFWSession *fwSession
203 );
204
205 /*
206 * nssCKFWInstance_CreateObjectHandle
207 *
208 */
209 NSS_EXTERN CK_OBJECT_HANDLE
210 nssCKFWInstance_CreateObjectHandle
211 (
212 NSSCKFWInstance *fwInstance,
213 NSSCKFWObject *fwObject,
214 CK_RV *pError
215 );
216
217 /*
218 * nssCKFWInstance_ResolveObjectHandle
219 *
220 */
221 NSS_EXTERN NSSCKFWObject *
222 nssCKFWInstance_ResolveObjectHandle
223 (
224 NSSCKFWInstance *fwInstance,
225 CK_OBJECT_HANDLE hObject
226 );
227
228 /*
229 * nssCKFWInstance_ReassignObjectHandle
230 *
231 */
232 NSS_EXTERN CK_RV
233 nssCKFWInstance_ReassignObjectHandle
234 (
235 NSSCKFWInstance *fwInstance,
236 CK_OBJECT_HANDLE hObject,
237 NSSCKFWObject *fwObject
238 );
239
240 /*
241 * nssCKFWInstance_DestroyObjectHandle
242 *
243 */
244 NSS_EXTERN void
245 nssCKFWInstance_DestroyObjectHandle
246 (
247 NSSCKFWInstance *fwInstance,
248 CK_OBJECT_HANDLE hObject
249 );
250
251 /*
252 * nssCKFWInstance_FindObjectHandle
253 *
254 */
255 NSS_EXTERN CK_OBJECT_HANDLE
256 nssCKFWInstance_FindObjectHandle
257 (
258 NSSCKFWInstance *fwInstance,
259 NSSCKFWObject *fwObject
260 );
261
262 /*
263 * nssCKFWInstance_GetNSlots
264 *
265 */
266 NSS_EXTERN CK_ULONG
267 nssCKFWInstance_GetNSlots
268 (
269 NSSCKFWInstance *fwInstance,
270 CK_RV *pError
271 );
272
273 /*
274 * nssCKFWInstance_GetCryptokiVersion
275 *
276 */
277 NSS_EXTERN CK_VERSION
278 nssCKFWInstance_GetCryptokiVersion
279 (
280 NSSCKFWInstance *fwInstance
281 );
282
283 /*
284 * nssCKFWInstance_GetManufacturerID
285 *
286 */
287 NSS_EXTERN CK_RV
288 nssCKFWInstance_GetManufacturerID
289 (
290 NSSCKFWInstance *fwInstance,
291 CK_CHAR manufacturerID[32]
292 );
293
294 /*
295 * nssCKFWInstance_GetFlags
296 *
297 */
298 NSS_EXTERN CK_ULONG
299 nssCKFWInstance_GetFlags
300 (
301 NSSCKFWInstance *fwInstance
302 );
303
304 /*
305 * nssCKFWInstance_GetLibraryDescription
306 *
307 */
308 NSS_EXTERN CK_RV
309 nssCKFWInstance_GetLibraryDescription
310 (
311 NSSCKFWInstance *fwInstance,
312 CK_CHAR libraryDescription[32]
313 );
314
315 /*
316 * nssCKFWInstance_GetLibraryVersion
317 *
318 */
319 NSS_EXTERN CK_VERSION
320 nssCKFWInstance_GetLibraryVersion
321 (
322 NSSCKFWInstance *fwInstance
323 );
324
325 /*
326 * nssCKFWInstance_GetModuleHandlesSessionObjects
327 *
328 */
329 NSS_EXTERN CK_BBOOL
330 nssCKFWInstance_GetModuleHandlesSessionObjects
331 (
332 NSSCKFWInstance *fwInstance
333 );
334
335 /*
336 * nssCKFWInstance_GetSlots
337 *
338 */
339 NSS_EXTERN NSSCKFWSlot **
340 nssCKFWInstance_GetSlots
341 (
342 NSSCKFWInstance *fwInstance,
343 CK_RV *pError
344 );
345
346 /*
347 * nssCKFWInstance_WaitForSlotEvent
348 *
349 */
350 NSS_EXTERN NSSCKFWSlot *
351 nssCKFWInstance_WaitForSlotEvent
352 (
353 NSSCKFWInstance *fwInstance,
354 CK_BBOOL block,
355 CK_RV *pError
356 );
357
358 /*
359 * nssCKFWInstance_verifyPointer
360 *
361 */
362 NSS_EXTERN CK_RV
363 nssCKFWInstance_verifyPointer
364 (
365 const NSSCKFWInstance *fwInstance
366 );
367
368
369 /*
370 * NSSCKFWSlot
371 *
372 * -- create/destroy --
373 * nssCKFWSlot_Create
374 * nssCKFWSlot_Destroy
375 *
376 * -- implement public accessors --
377 * nssCKFWSlot_GetMDSlot
378 * nssCKFWSlot_GetFWInstance
379 * nssCKFWSlot_GetMDInstance
380 *
381 * -- private accessors --
382 * nssCKFWSlot_GetSlotID
383 *
384 * -- module fronts --
385 * nssCKFWSlot_GetSlotDescription
386 * nssCKFWSlot_GetManufacturerID
387 * nssCKFWSlot_GetTokenPresent
388 * nssCKFWSlot_GetRemovableDevice
389 * nssCKFWSlot_GetHardwareSlot
390 * nssCKFWSlot_GetHardwareVersion
391 * nssCKFWSlot_GetFirmwareVersion
392 * nssCKFWSlot_GetToken
393 */
394
395 /*
396 * nssCKFWSlot_Create
397 *
398 */
399 NSS_EXTERN NSSCKFWSlot *
400 nssCKFWSlot_Create
401 (
402 NSSCKFWInstance *fwInstance,
403 NSSCKMDSlot *mdSlot,
404 CK_SLOT_ID slotID,
405 CK_RV *pError
406 );
407
408 /*
409 * nssCKFWSlot_Destroy
410 *
411 */
412 NSS_EXTERN CK_RV
413 nssCKFWSlot_Destroy
414 (
415 NSSCKFWSlot *fwSlot
416 );
417
418 /*
419 * nssCKFWSlot_GetMDSlot
420 *
421 */
422 NSS_EXTERN NSSCKMDSlot *
423 nssCKFWSlot_GetMDSlot
424 (
425 NSSCKFWSlot *fwSlot
426 );
427
428 /*
429 * nssCKFWSlot_GetFWInstance
430 *
431 */
432
433 NSS_EXTERN NSSCKFWInstance *
434 nssCKFWSlot_GetFWInstance
435 (
436 NSSCKFWSlot *fwSlot
437 );
438
439 /*
440 * nssCKFWSlot_GetMDInstance
441 *
442 */
443
444 NSS_EXTERN NSSCKMDInstance *
445 nssCKFWSlot_GetMDInstance
446 (
447 NSSCKFWSlot *fwSlot
448 );
449
450 /*
451 * nssCKFWSlot_GetSlotID
452 *
453 */
454 NSS_EXTERN CK_SLOT_ID
455 nssCKFWSlot_GetSlotID
456 (
457 NSSCKFWSlot *fwSlot
458 );
459
460 /*
461 * nssCKFWSlot_GetSlotDescription
462 *
463 */
464 NSS_EXTERN CK_RV
465 nssCKFWSlot_GetSlotDescription
466 (
467 NSSCKFWSlot *fwSlot,
468 CK_CHAR slotDescription[64]
469 );
470
471 /*
472 * nssCKFWSlot_GetManufacturerID
473 *
474 */
475 NSS_EXTERN CK_RV
476 nssCKFWSlot_GetManufacturerID
477 (
478 NSSCKFWSlot *fwSlot,
479 CK_CHAR manufacturerID[32]
480 );
481
482 /*
483 * nssCKFWSlot_GetTokenPresent
484 *
485 */
486 NSS_EXTERN CK_BBOOL
487 nssCKFWSlot_GetTokenPresent
488 (
489 NSSCKFWSlot *fwSlot
490 );
491
492 /*
493 * nssCKFWSlot_GetRemovableDevice
494 *
495 */
496 NSS_EXTERN CK_BBOOL
497 nssCKFWSlot_GetRemovableDevice
498 (
499 NSSCKFWSlot *fwSlot
500 );
501
502 /*
503 * nssCKFWSlot_GetHardwareSlot
504 *
505 */
506 NSS_EXTERN CK_BBOOL
507 nssCKFWSlot_GetHardwareSlot
508 (
509 NSSCKFWSlot *fwSlot
510 );
511
512 /*
513 * nssCKFWSlot_GetHardwareVersion
514 *
515 */
516 NSS_EXTERN CK_VERSION
517 nssCKFWSlot_GetHardwareVersion
518 (
519 NSSCKFWSlot *fwSlot
520 );
521
522 /*
523 * nssCKFWSlot_GetFirmwareVersion
524 *
525 */
526 NSS_EXTERN CK_VERSION
527 nssCKFWSlot_GetFirmwareVersion
528 (
529 NSSCKFWSlot *fwSlot
530 );
531
532 /*
533 * nssCKFWSlot_GetToken
534 *
535 */
536 NSS_EXTERN NSSCKFWToken *
537 nssCKFWSlot_GetToken
538 (
539 NSSCKFWSlot *fwSlot,
540 CK_RV *pError
541 );
542
543 /*
544 * nssCKFWSlot_ClearToken
545 *
546 */
547 NSS_EXTERN void
548 nssCKFWSlot_ClearToken
549 (
550 NSSCKFWSlot *fwSlot
551 );
552
553 /*
554 * NSSCKFWToken
555 *
556 * -- create/destroy --
557 * nssCKFWToken_Create
558 * nssCKFWToken_Destroy
559 *
560 * -- implement public accessors --
561 * nssCKFWToken_GetMDToken
562 * nssCKFWToken_GetFWSlot
563 * nssCKFWToken_GetMDSlot
564 * nssCKFWToken_GetSessionState
565 *
566 * -- private accessors --
567 * nssCKFWToken_SetSessionState
568 * nssCKFWToken_RemoveSession
569 * nssCKFWToken_CloseAllSessions
570 * nssCKFWToken_GetSessionCount
571 * nssCKFWToken_GetRwSessionCount
572 * nssCKFWToken_GetRoSessionCount
573 * nssCKFWToken_GetSessionObjectHash
574 * nssCKFWToken_GetMDObjectHash
575 * nssCKFWToken_GetObjectHandleHash
576 *
577 * -- module fronts --
578 * nssCKFWToken_InitToken
579 * nssCKFWToken_GetLabel
580 * nssCKFWToken_GetManufacturerID
581 * nssCKFWToken_GetModel
582 * nssCKFWToken_GetSerialNumber
583 * nssCKFWToken_GetHasRNG
584 * nssCKFWToken_GetIsWriteProtected
585 * nssCKFWToken_GetLoginRequired
586 * nssCKFWToken_GetUserPinInitialized
587 * nssCKFWToken_GetRestoreKeyNotNeeded
588 * nssCKFWToken_GetHasClockOnToken
589 * nssCKFWToken_GetHasProtectedAuthenticationPath
590 * nssCKFWToken_GetSupportsDualCryptoOperations
591 * nssCKFWToken_GetMaxSessionCount
592 * nssCKFWToken_GetMaxRwSessionCount
593 * nssCKFWToken_GetMaxPinLen
594 * nssCKFWToken_GetMinPinLen
595 * nssCKFWToken_GetTotalPublicMemory
596 * nssCKFWToken_GetFreePublicMemory
597 * nssCKFWToken_GetTotalPrivateMemory
598 * nssCKFWToken_GetFreePrivateMemory
599 * nssCKFWToken_GetHardwareVersion
600 * nssCKFWToken_GetFirmwareVersion
601 * nssCKFWToken_GetUTCTime
602 * nssCKFWToken_OpenSession
603 * nssCKFWToken_GetMechanismCount
604 * nssCKFWToken_GetMechanismTypes
605 * nssCKFWToken_GetMechanism
606 */
607
608 /*
609 * nssCKFWToken_Create
610 *
611 */
612 NSS_EXTERN NSSCKFWToken *
613 nssCKFWToken_Create
614 (
615 NSSCKFWSlot *fwSlot,
616 NSSCKMDToken *mdToken,
617 CK_RV *pError
618 );
619
620 /*
621 * nssCKFWToken_Destroy
622 *
623 */
624 NSS_EXTERN CK_RV
625 nssCKFWToken_Destroy
626 (
627 NSSCKFWToken *fwToken
628 );
629
630 /*
631 * nssCKFWToken_GetMDToken
632 *
633 */
634 NSS_EXTERN NSSCKMDToken *
635 nssCKFWToken_GetMDToken
636 (
637 NSSCKFWToken *fwToken
638 );
639
640 /*
641 * nssCKFWToken_GetArena
642 *
643 */
644 NSS_EXTERN NSSArena *
645 nssCKFWToken_GetArena
646 (
647 NSSCKFWToken *fwToken,
648 CK_RV *pError
649 );
650
651 /*
652 * nssCKFWToken_GetFWSlot
653 *
654 */
655 NSS_EXTERN NSSCKFWSlot *
656 nssCKFWToken_GetFWSlot
657 (
658 NSSCKFWToken *fwToken
659 );
660
661 /*
662 * nssCKFWToken_GetMDSlot
663 *
664 */
665 NSS_EXTERN NSSCKMDSlot *
666 nssCKFWToken_GetMDSlot
667 (
668 NSSCKFWToken *fwToken
669 );
670
671 /*
672 * nssCKFWToken_GetSessionState
673 *
674 */
675 NSS_EXTERN CK_STATE
676 nssCKFWToken_GetSessionState
677 (
678 NSSCKFWToken *fwToken
679 );
680
681 /*
682 * nssCKFWToken_InitToken
683 *
684 */
685 NSS_EXTERN CK_RV
686 nssCKFWToken_InitToken
687 (
688 NSSCKFWToken *fwToken,
689 NSSItem *pin,
690 NSSUTF8 *label
691 );
692
693 /*
694 * nssCKFWToken_GetLabel
695 *
696 */
697 NSS_EXTERN CK_RV
698 nssCKFWToken_GetLabel
699 (
700 NSSCKFWToken *fwToken,
701 CK_CHAR label[32]
702 );
703
704 /*
705 * nssCKFWToken_GetManufacturerID
706 *
707 */
708 NSS_EXTERN CK_RV
709 nssCKFWToken_GetManufacturerID
710 (
711 NSSCKFWToken *fwToken,
712 CK_CHAR manufacturerID[32]
713 );
714
715 /*
716 * nssCKFWToken_GetModel
717 *
718 */
719 NSS_EXTERN CK_RV
720 nssCKFWToken_GetModel
721 (
722 NSSCKFWToken *fwToken,
723 CK_CHAR model[16]
724 );
725
726 /*
727 * nssCKFWToken_GetSerialNumber
728 *
729 */
730 NSS_EXTERN CK_RV
731 nssCKFWToken_GetSerialNumber
732 (
733 NSSCKFWToken *fwToken,
734 CK_CHAR serialNumber[16]
735 );
736
737 /*
738 * nssCKFWToken_GetHasRNG
739 *
740 */
741 NSS_EXTERN CK_BBOOL
742 nssCKFWToken_GetHasRNG
743 (
744 NSSCKFWToken *fwToken
745 );
746
747 /*
748 * nssCKFWToken_GetIsWriteProtected
749 *
750 */
751 NSS_EXTERN CK_BBOOL
752 nssCKFWToken_GetIsWriteProtected
753 (
754 NSSCKFWToken *fwToken
755 );
756
757 /*
758 * nssCKFWToken_GetLoginRequired
759 *
760 */
761 NSS_EXTERN CK_BBOOL
762 nssCKFWToken_GetLoginRequired
763 (
764 NSSCKFWToken *fwToken
765 );
766
767 /*
768 * nssCKFWToken_GetUserPinInitialized
769 *
770 */
771 NSS_EXTERN CK_BBOOL
772 nssCKFWToken_GetUserPinInitialized
773 (
774 NSSCKFWToken *fwToken
775 );
776
777 /*
778 * nssCKFWToken_GetRestoreKeyNotNeeded
779 *
780 */
781 NSS_EXTERN CK_BBOOL
782 nssCKFWToken_GetRestoreKeyNotNeeded
783 (
784 NSSCKFWToken *fwToken
785 );
786
787 /*
788 * nssCKFWToken_GetHasClockOnToken
789 *
790 */
791 NSS_EXTERN CK_BBOOL
792 nssCKFWToken_GetHasClockOnToken
793 (
794 NSSCKFWToken *fwToken
795 );
796
797 /*
798 * nssCKFWToken_GetHasProtectedAuthenticationPath
799 *
800 */
801 NSS_EXTERN CK_BBOOL
802 nssCKFWToken_GetHasProtectedAuthenticationPath
803 (
804 NSSCKFWToken *fwToken
805 );
806
807 /*
808 * nssCKFWToken_GetSupportsDualCryptoOperations
809 *
810 */
811 NSS_EXTERN CK_BBOOL
812 nssCKFWToken_GetSupportsDualCryptoOperations
813 (
814 NSSCKFWToken *fwToken
815 );
816
817 /*
818 * nssCKFWToken_GetMaxSessionCount
819 *
820 */
821 NSS_EXTERN CK_ULONG
822 nssCKFWToken_GetMaxSessionCount
823 (
824 NSSCKFWToken *fwToken
825 );
826
827 /*
828 * nssCKFWToken_GetMaxRwSessionCount
829 *
830 */
831 NSS_EXTERN CK_ULONG
832 nssCKFWToken_GetMaxRwSessionCount
833 (
834 NSSCKFWToken *fwToken
835 );
836
837 /*
838 * nssCKFWToken_GetMaxPinLen
839 *
840 */
841 NSS_EXTERN CK_ULONG
842 nssCKFWToken_GetMaxPinLen
843 (
844 NSSCKFWToken *fwToken
845 );
846
847 /*
848 * nssCKFWToken_GetMinPinLen
849 *
850 */
851 NSS_EXTERN CK_ULONG
852 nssCKFWToken_GetMinPinLen
853 (
854 NSSCKFWToken *fwToken
855 );
856
857 /*
858 * nssCKFWToken_GetTotalPublicMemory
859 *
860 */
861 NSS_EXTERN CK_ULONG
862 nssCKFWToken_GetTotalPublicMemory
863 (
864 NSSCKFWToken *fwToken
865 );
866
867 /*
868 * nssCKFWToken_GetFreePublicMemory
869 *
870 */
871 NSS_EXTERN CK_ULONG
872 nssCKFWToken_GetFreePublicMemory
873 (
874 NSSCKFWToken *fwToken
875 );
876
877 /*
878 * nssCKFWToken_GetTotalPrivateMemory
879 *
880 */
881 NSS_EXTERN CK_ULONG
882 nssCKFWToken_GetTotalPrivateMemory
883 (
884 NSSCKFWToken *fwToken
885 );
886
887 /*
888 * nssCKFWToken_GetFreePrivateMemory
889 *
890 */
891 NSS_EXTERN CK_ULONG
892 nssCKFWToken_GetFreePrivateMemory
893 (
894 NSSCKFWToken *fwToken
895 );
896
897 /*
898 * nssCKFWToken_GetHardwareVersion
899 *
900 */
901 NSS_EXTERN CK_VERSION
902 nssCKFWToken_GetHardwareVersion
903 (
904 NSSCKFWToken *fwToken
905 );
906
907 /*
908 * nssCKFWToken_GetFirmwareVersion
909 *
910 */
911 NSS_EXTERN CK_VERSION
912 nssCKFWToken_GetFirmwareVersion
913 (
914 NSSCKFWToken *fwToken
915 );
916
917 /*
918 * nssCKFWToken_GetUTCTime
919 *
920 */
921 NSS_EXTERN CK_RV
922 nssCKFWToken_GetUTCTime
923 (
924 NSSCKFWToken *fwToken,
925 CK_CHAR utcTime[16]
926 );
927
928 /*
929 * nssCKFWToken_OpenSession
930 *
931 */
932 NSS_EXTERN NSSCKFWSession *
933 nssCKFWToken_OpenSession
934 (
935 NSSCKFWToken *fwToken,
936 CK_BBOOL rw,
937 CK_VOID_PTR pApplication,
938 CK_NOTIFY Notify,
939 CK_RV *pError
940 );
941
942 /*
943 * nssCKFWToken_GetMechanismCount
944 *
945 */
946 NSS_EXTERN CK_ULONG
947 nssCKFWToken_GetMechanismCount
948 (
949 NSSCKFWToken *fwToken
950 );
951
952 /*
953 * nssCKFWToken_GetMechanismTypes
954 *
955 */
956 NSS_EXTERN CK_RV
957 nssCKFWToken_GetMechanismTypes
958 (
959 NSSCKFWToken *fwToken,
960 CK_MECHANISM_TYPE types[]
961 );
962
963 /*
964 * nssCKFWToken_GetMechanism
965 *
966 */
967 NSS_EXTERN NSSCKFWMechanism *
968 nssCKFWToken_GetMechanism
969 (
970 NSSCKFWToken *fwToken,
971 CK_MECHANISM_TYPE which,
972 CK_RV *pError
973 );
974
975 /*
976 * nssCKFWToken_SetSessionState
977 *
978 */
979 NSS_EXTERN CK_RV
980 nssCKFWToken_SetSessionState
981 (
982 NSSCKFWToken *fwToken,
983 CK_STATE newState
984 );
985
986 /*
987 * nssCKFWToken_RemoveSession
988 *
989 */
990 NSS_EXTERN CK_RV
991 nssCKFWToken_RemoveSession
992 (
993 NSSCKFWToken *fwToken,
994 NSSCKFWSession *fwSession
995 );
996
997 /*
998 * nssCKFWToken_CloseAllSessions
999 *
1000 */
1001 NSS_EXTERN CK_RV
1002 nssCKFWToken_CloseAllSessions
1003 (
1004 NSSCKFWToken *fwToken
1005 );
1006
1007 /*
1008 * nssCKFWToken_GetSessionCount
1009 *
1010 */
1011 NSS_EXTERN CK_ULONG
1012 nssCKFWToken_GetSessionCount
1013 (
1014 NSSCKFWToken *fwToken
1015 );
1016
1017 /*
1018 * nssCKFWToken_GetRwSessionCount
1019 *
1020 */
1021 NSS_EXTERN CK_ULONG
1022 nssCKFWToken_GetRwSessionCount
1023 (
1024 NSSCKFWToken *fwToken
1025 );
1026
1027 /*
1028 * nssCKFWToken_GetRoSessionCount
1029 *
1030 */
1031 NSS_EXTERN CK_ULONG
1032 nssCKFWToken_GetRoSessionCount
1033 (
1034 NSSCKFWToken *fwToken
1035 );
1036
1037 /*
1038 * nssCKFWToken_GetSessionObjectHash
1039 *
1040 */
1041 NSS_EXTERN nssCKFWHash *
1042 nssCKFWToken_GetSessionObjectHash
1043 (
1044 NSSCKFWToken *fwToken
1045 );
1046
1047 /*
1048 * nssCKFWToken_GetMDObjectHash
1049 *
1050 */
1051 NSS_EXTERN nssCKFWHash *
1052 nssCKFWToken_GetMDObjectHash
1053 (
1054 NSSCKFWToken *fwToken
1055 );
1056
1057 /*
1058 * nssCKFWToken_GetObjectHandleHash
1059 *
1060 */
1061 NSS_EXTERN nssCKFWHash *
1062 nssCKFWToken_GetObjectHandleHash
1063 (
1064 NSSCKFWToken *fwToken
1065 );
1066
1067 /*
1068 * NSSCKFWMechanism
1069 *
1070 * -- create/destroy --
1071 * nssCKFWMechanism_Create
1072 * nssCKFWMechanism_Destroy
1073 *
1074 * -- implement public accessors --
1075 * nssCKFWMechanism_GetMDMechanism
1076 *
1077 * -- private accessors --
1078 *
1079 * -- module fronts --
1080 * nssCKFWMechanism_GetMinKeySize
1081 * nssCKFWMechanism_GetMaxKeySize
1082 * nssCKFWMechanism_GetInHardware
1083 * nssCKFWMechanism_GetCanEncrypt
1084 * nssCKFWMechanism_GetCanDecrypt
1085 * nssCKFWMechanism_GetCanDigest
1086 * nssCKFWMechanism_GetCanSignRecover
1087 * nssCKFWMechanism_GetCanVerify
1088 * nssCKFWMechanism_GetCanVerifyRecover
1089 * nssCKFWMechanism_GetCanGenerate
1090 * nssCKFWMechanism_GetCanGenerateKeyPair
1091 * nssCKFWMechanism_GetCanWrap
1092 * nssCKFWMechanism_GetCanUnwrap
1093 * nssCKFWMechanism_GetCanDerive
1094 * nssCKFWMechanism_EncryptInit
1095 * nssCKFWMechanism_DecryptInit
1096 * nssCKFWMechanism_DigestInit
1097 * nssCKFWMechanism_SignInit
1098 * nssCKFWMechanism_SignRecoverInit
1099 * nssCKFWMechanism_VerifyInit
1100 * nssCKFWMechanism_VerifyRecoverInit
1101 * nssCKFWMechanism_GenerateKey
1102 * nssCKFWMechanism_GenerateKeyPair
1103 * nssCKFWMechanism_GetWrapKeyLength
1104 * nssCKFWMechanism_WrapKey
1105 * nssCKFWMechanism_UnwrapKey
1106 * nssCKFWMechanism_DeriveKey
1107 */
1108
1109 /*
1110 * nssCKFWMechanism_Create
1111 *
1112 */
1113 NSS_EXTERN NSSCKFWMechanism *
1114 nssCKFWMechanism_Create
1115 (
1116 NSSCKMDMechanism *mdMechanism,
1117 NSSCKMDToken *mdToken,
1118 NSSCKFWToken *fwToken,
1119 NSSCKMDInstance *mdInstance,
1120 NSSCKFWInstance *fwInstance
1121 );
1122
1123 /*
1124 * nssCKFWMechanism_Destroy
1125 *
1126 */
1127 NSS_EXTERN void
1128 nssCKFWMechanism_Destroy
1129 (
1130 NSSCKFWMechanism *fwMechanism
1131 );
1132
1133 /*
1134 * nssCKFWMechanism_GetMDMechanism
1135 *
1136 */
1137
1138 NSS_EXTERN NSSCKMDMechanism *
1139 nssCKFWMechanism_GetMDMechanism
1140 (
1141 NSSCKFWMechanism *fwMechanism
1142 );
1143
1144 /*
1145 * nssCKFWMechanism_GetMinKeySize
1146 *
1147 */
1148 NSS_EXTERN CK_ULONG
1149 nssCKFWMechanism_GetMinKeySize
1150 (
1151 NSSCKFWMechanism *fwMechanism,
1152 CK_RV *pError
1153 );
1154
1155 /*
1156 * nssCKFWMechanism_GetMaxKeySize
1157 *
1158 */
1159 NSS_EXTERN CK_ULONG
1160 nssCKFWMechanism_GetMaxKeySize
1161 (
1162 NSSCKFWMechanism *fwMechanism,
1163 CK_RV *pError
1164 );
1165
1166 /*
1167 * nssCKFWMechanism_GetInHardware
1168 *
1169 */
1170 NSS_EXTERN CK_BBOOL
1171 nssCKFWMechanism_GetInHardware
1172 (
1173 NSSCKFWMechanism *fwMechanism,
1174 CK_RV *pError
1175 );
1176
1177 /*
1178 * the following are determined automatically by which of the cryptographic
1179 * functions are defined for this mechanism.
1180 */
1181 /*
1182 * nssCKFWMechanism_GetCanEncrypt
1183 *
1184 */
1185 NSS_EXTERN CK_BBOOL
1186 nssCKFWMechanism_GetCanEncrypt
1187 (
1188 NSSCKFWMechanism *fwMechanism,
1189 CK_RV *pError
1190 );
1191
1192 /*
1193 * nssCKFWMechanism_GetCanDecrypt
1194 *
1195 */
1196 NSS_EXTERN CK_BBOOL
1197 nssCKFWMechanism_GetCanDecrypt
1198 (
1199 NSSCKFWMechanism *fwMechanism,
1200 CK_RV *pError
1201 );
1202
1203 /*
1204 * nssCKFWMechanism_GetCanDigest
1205 *
1206 */
1207 NSS_EXTERN CK_BBOOL
1208 nssCKFWMechanism_GetCanDigest
1209 (
1210 NSSCKFWMechanism *fwMechanism,
1211 CK_RV *pError
1212 );
1213
1214 /*
1215 * nssCKFWMechanism_GetCanSign
1216 *
1217 */
1218 NSS_EXTERN CK_BBOOL
1219 nssCKFWMechanism_GetCanSign
1220 (
1221 NSSCKFWMechanism *fwMechanism,
1222 CK_RV *pError
1223 );
1224
1225 /*
1226 * nssCKFWMechanism_GetCanSignRecover
1227 *
1228 */
1229 NSS_EXTERN CK_BBOOL
1230 nssCKFWMechanism_GetCanSignRecover
1231 (
1232 NSSCKFWMechanism *fwMechanism,
1233 CK_RV *pError
1234 );
1235
1236 /*
1237 * nssCKFWMechanism_GetCanVerify
1238 *
1239 */
1240 NSS_EXTERN CK_BBOOL
1241 nssCKFWMechanism_GetCanVerify
1242 (
1243 NSSCKFWMechanism *fwMechanism,
1244 CK_RV *pError
1245 );
1246
1247 /*
1248 * nssCKFWMechanism_GetCanVerifyRecover
1249 *
1250 */
1251 NSS_EXTERN CK_BBOOL
1252 nssCKFWMechanism_GetCanVerifyRecover
1253 (
1254 NSSCKFWMechanism *fwMechanism,
1255 CK_RV *pError
1256 );
1257
1258 /*
1259 * nssCKFWMechanism_GetCanGenerate
1260 *
1261 */
1262 NSS_EXTERN CK_BBOOL
1263 nssCKFWMechanism_GetCanGenerate
1264 (
1265 NSSCKFWMechanism *fwMechanism,
1266 CK_RV *pError
1267 );
1268
1269 /*
1270 * nssCKFWMechanism_GetCanGenerateKeyPair
1271 *
1272 */
1273 NSS_EXTERN CK_BBOOL
1274 nssCKFWMechanism_GetCanGenerateKeyPair
1275 (
1276 NSSCKFWMechanism *fwMechanism,
1277 CK_RV *pError
1278 );
1279
1280 /*
1281 * nssCKFWMechanism_GetCanWrap
1282 *
1283 */
1284 NSS_EXTERN CK_BBOOL
1285 nssCKFWMechanism_GetCanWrap
1286 (
1287 NSSCKFWMechanism *fwMechanism,
1288 CK_RV *pError
1289 );
1290
1291 /*
1292 * nssCKFWMechanism_GetCanUnwrap
1293 *
1294 */
1295 NSS_EXTERN CK_BBOOL
1296 nssCKFWMechanism_GetCanUnwrap
1297 (
1298 NSSCKFWMechanism *fwMechanism,
1299 CK_RV *pError
1300 );
1301
1302 /*
1303 * nssCKFWMechanism_GetCanDerive
1304 *
1305 */
1306 NSS_EXTERN CK_BBOOL
1307 nssCKFWMechanism_GetCanDerive
1308 (
1309 NSSCKFWMechanism *fwMechanism,
1310 CK_RV *pError
1311 );
1312
1313 /*
1314 * nssCKFWMechanism_EncryptInit
1315 */
1316 NSS_EXTERN CK_RV
1317 nssCKFWMechanism_EncryptInit
1318 (
1319 NSSCKFWMechanism *fwMechanism,
1320 CK_MECHANISM *pMechanism,
1321 NSSCKFWSession *fwSession,
1322 NSSCKFWObject *fwObject
1323 );
1324
1325 /*
1326 * nssCKFWMechanism_DecryptInit
1327 */
1328 NSS_EXTERN CK_RV
1329 nssCKFWMechanism_DecryptInit
1330 (
1331 NSSCKFWMechanism *fwMechanism,
1332 CK_MECHANISM *pMechanism,
1333 NSSCKFWSession *fwSession,
1334 NSSCKFWObject *fwObject
1335 );
1336
1337 /*
1338 * nssCKFWMechanism_DigestInit
1339 */
1340 NSS_EXTERN CK_RV
1341 nssCKFWMechanism_DigestInit
1342 (
1343 NSSCKFWMechanism *fwMechanism,
1344 CK_MECHANISM *pMechanism,
1345 NSSCKFWSession *fwSession
1346 );
1347
1348 /*
1349 * nssCKFWMechanism_SignInit
1350 */
1351 NSS_EXTERN CK_RV
1352 nssCKFWMechanism_SignInit
1353 (
1354 NSSCKFWMechanism *fwMechanism,
1355 CK_MECHANISM *pMechanism,
1356 NSSCKFWSession *fwSession,
1357 NSSCKFWObject *fwObject
1358 );
1359
1360 /*
1361 * nssCKFWMechanism_SignRecoverInit
1362 */
1363 NSS_EXTERN CK_RV
1364 nssCKFWMechanism_SignRecoverInit
1365 (
1366 NSSCKFWMechanism *fwMechanism,
1367 CK_MECHANISM *pMechanism,
1368 NSSCKFWSession *fwSession,
1369 NSSCKFWObject *fwObject
1370 );
1371
1372 /*
1373 * nssCKFWMechanism_VerifyInit
1374 */
1375 NSS_EXTERN CK_RV
1376 nssCKFWMechanism_VerifyInit
1377 (
1378 NSSCKFWMechanism *fwMechanism,
1379 CK_MECHANISM *pMechanism,
1380 NSSCKFWSession *fwSession,
1381 NSSCKFWObject *fwObject
1382 );
1383
1384 /*
1385 * nssCKFWMechanism_VerifyRecoverInit
1386 */
1387 NSS_EXTERN CK_RV
1388 nssCKFWMechanism_VerifyRecoverInit
1389 (
1390 NSSCKFWMechanism *fwMechanism,
1391 CK_MECHANISM *pMechanism,
1392 NSSCKFWSession *fwSession,
1393 NSSCKFWObject *fwObject
1394 );
1395
1396 /*
1397 * nssCKFWMechanism_GenerateKey
1398 */
1399 NSS_EXTERN NSSCKFWObject *
1400 nssCKFWMechanism_GenerateKey
1401 (
1402 NSSCKFWMechanism *fwMechanism,
1403 CK_MECHANISM_PTR pMechanism,
1404 NSSCKFWSession *fwSession,
1405 CK_ATTRIBUTE_PTR pTemplate,
1406 CK_ULONG ulAttributeCount,
1407 CK_RV *pError
1408 );
1409
1410 /*
1411 * nssCKFWMechanism_GenerateKeyPair
1412 */
1413 NSS_EXTERN CK_RV
1414 nssCKFWMechanism_GenerateKeyPair
1415 (
1416 NSSCKFWMechanism *fwMechanism,
1417 CK_MECHANISM_PTR pMechanism,
1418 NSSCKFWSession *fwSession,
1419 CK_ATTRIBUTE_PTR pPublicKeyTemplate,
1420 CK_ULONG ulPublicKeyAttributeCount,
1421 CK_ATTRIBUTE_PTR pPrivateKeyTemplate,
1422 CK_ULONG ulPrivateKeyAttributeCount,
1423 NSSCKFWObject **fwPublicKeyObject,
1424 NSSCKFWObject **fwPrivateKeyObject
1425 );
1426
1427 /*
1428 * nssCKFWMechanism_GetWrapKeyLength
1429 */
1430 NSS_EXTERN CK_ULONG
1431 nssCKFWMechanism_GetWrapKeyLength
1432 (
1433 NSSCKFWMechanism *fwMechanism,
1434 CK_MECHANISM_PTR pMechanism,
1435 NSSCKFWSession *fwSession,
1436 NSSCKFWObject *fwWrappingKeyObject,
1437 NSSCKFWObject *fwObject,
1438 CK_RV *pError
1439 );
1440
1441 /*
1442 * nssCKFWMechanism_WrapKey
1443 */
1444 NSS_EXTERN CK_RV
1445 nssCKFWMechanism_WrapKey
1446 (
1447 NSSCKFWMechanism *fwMechanism,
1448 CK_MECHANISM_PTR pMechanism,
1449 NSSCKFWSession *fwSession,
1450 NSSCKFWObject *fwWrappingKeyObject,
1451 NSSCKFWObject *fwObject,
1452 NSSItem *wrappedKey
1453 );
1454
1455 /*
1456 * nssCKFWMechanism_UnwrapKey
1457 */
1458 NSS_EXTERN NSSCKFWObject *
1459 nssCKFWMechanism_UnwrapKey
1460 (
1461 NSSCKFWMechanism *fwMechanism,
1462 CK_MECHANISM_PTR pMechanism,
1463 NSSCKFWSession *fwSession,
1464 NSSCKFWObject *fwWrappingKeyObject,
1465 NSSItem *wrappedKey,
1466 CK_ATTRIBUTE_PTR pTemplate,
1467 CK_ULONG ulAttributeCount,
1468 CK_RV *pError
1469 );
1470
1471 /*
1472 * nssCKFWMechanism_DeriveKey
1473 */
1474 NSS_EXTERN NSSCKFWObject *
1475 nssCKFWMechanism_DeriveKey
1476 (
1477 NSSCKFWMechanism *fwMechanism,
1478 CK_MECHANISM_PTR pMechanism,
1479 NSSCKFWSession *fwSession,
1480 NSSCKFWObject *fwBaseKeyObject,
1481 CK_ATTRIBUTE_PTR pTemplate,
1482 CK_ULONG ulAttributeCount,
1483 CK_RV *pError
1484 );
1485
1486 /*
1487 * NSSCKFWCryptoOperation
1488 *
1489 * -- create/destroy --
1490 * nssCKFWCryptoOperation_Create
1491 * nssCKFWCryptoOperation_Destroy
1492 *
1493 * -- implement public accessors --
1494 * nssCKFWCryptoOperation_GetMDCryptoOperation
1495 * nssCKFWCryptoOperation_GetType
1496 *
1497 * -- private accessors --
1498 *
1499 * -- module fronts --
1500 * nssCKFWCryptoOperation_GetFinalLength
1501 * nssCKFWCryptoOperation_GetOperationLength
1502 * nssCKFWCryptoOperation_Final
1503 * nssCKFWCryptoOperation_Update
1504 * nssCKFWCryptoOperation_DigestUpdate
1505 * nssCKFWCryptoOperation_DigestKey
1506 * nssCKFWCryptoOperation_UpdateFinal
1507 */
1508
1509 /*
1510 * nssCKFWCrytoOperation_Create
1511 */
1512 NSS_EXTERN NSSCKFWCryptoOperation *
1513 nssCKFWCryptoOperation_Create
1514 (
1515 NSSCKMDCryptoOperation *mdOperation,
1516 NSSCKMDSession *mdSession,
1517 NSSCKFWSession *fwSession,
1518 NSSCKMDToken *mdToken,
1519 NSSCKFWToken *fwToken,
1520 NSSCKMDInstance *mdInstance,
1521 NSSCKFWInstance *fwInstance,
1522 NSSCKFWCryptoOperationType type,
1523 CK_RV *pError
1524 );
1525
1526 /*
1527 * nssCKFWCryptoOperation_Destroy
1528 */
1529 NSS_EXTERN void
1530 nssCKFWCryptoOperation_Destroy
1531 (
1532 NSSCKFWCryptoOperation *fwOperation
1533 );
1534
1535 /*
1536 * nssCKFWCryptoOperation_GetMDCryptoOperation
1537 */
1538 NSS_EXTERN NSSCKMDCryptoOperation *
1539 nssCKFWCryptoOperation_GetMDCryptoOperation
1540 (
1541 NSSCKFWCryptoOperation *fwOperation
1542 );
1543
1544 /*
1545 * nssCKFWCryptoOperation_GetType
1546 */
1547 NSS_EXTERN NSSCKFWCryptoOperationType
1548 nssCKFWCryptoOperation_GetType
1549 (
1550 NSSCKFWCryptoOperation *fwOperation
1551 );
1552
1553 /*
1554 * nssCKFWCryptoOperation_GetFinalLength
1555 */
1556 NSS_EXTERN CK_ULONG
1557 nssCKFWCryptoOperation_GetFinalLength
1558 (
1559 NSSCKFWCryptoOperation *fwOperation,
1560 CK_RV *pError
1561 );
1562
1563 /*
1564 * nssCKFWCryptoOperation_GetOperationLength
1565 */
1566 NSS_EXTERN CK_ULONG
1567 nssCKFWCryptoOperation_GetOperationLength
1568 (
1569 NSSCKFWCryptoOperation *fwOperation,
1570 NSSItem *inputBuffer,
1571 CK_RV *pError
1572 );
1573
1574 /*
1575 * nssCKFWCryptoOperation_Final
1576 */
1577 NSS_EXTERN CK_RV
1578 nssCKFWCryptoOperation_Final
1579 (
1580 NSSCKFWCryptoOperation *fwOperation,
1581 NSSItem *outputBuffer
1582 );
1583
1584 /*
1585 * nssCKFWCryptoOperation_Update
1586 */
1587 NSS_EXTERN CK_RV
1588 nssCKFWCryptoOperation_Update
1589 (
1590 NSSCKFWCryptoOperation *fwOperation,
1591 NSSItem *inputBuffer,
1592 NSSItem *outputBuffer
1593 );
1594
1595 /*
1596 * nssCKFWCryptoOperation_DigestUpdate
1597 */
1598 NSS_EXTERN CK_RV
1599 nssCKFWCryptoOperation_DigestUpdate
1600 (
1601 NSSCKFWCryptoOperation *fwOperation,
1602 NSSItem *inputBuffer
1603 );
1604
1605 /*
1606 * nssCKFWCryptoOperation_DigestKey
1607 */
1608 NSS_EXTERN CK_RV
1609 nssCKFWCryptoOperation_DigestKey
1610 (
1611 NSSCKFWCryptoOperation *fwOperation,
1612 NSSCKFWObject *fwKey
1613 );
1614
1615 /*
1616 * nssCKFWCryptoOperation_UpdateFinal
1617 */
1618 NSS_EXTERN CK_RV
1619 nssCKFWCryptoOperation_UpdateFinal
1620 (
1621 NSSCKFWCryptoOperation *fwOperation,
1622 NSSItem *inputBuffer,
1623 NSSItem *outputBuffer
1624 );
1625
1626 /*
1627 * nssCKFWCryptoOperation_UpdateCombo
1628 */
1629 NSS_EXTERN CK_RV
1630 nssCKFWCryptoOperation_UpdateCombo
1631 (
1632 NSSCKFWCryptoOperation *fwOperation,
1633 NSSCKFWCryptoOperation *fwPeerOperation,
1634 NSSItem *inputBuffer,
1635 NSSItem *outputBuffer
1636 );
1637
1638 /*
1639 * NSSCKFWSession
1640 *
1641 * -- create/destroy --
1642 * nssCKFWSession_Create
1643 * nssCKFWSession_Destroy
1644 *
1645 * -- implement public accessors --
1646 * nssCKFWSession_GetMDSession
1647 * nssCKFWSession_GetArena
1648 * nssCKFWSession_CallNotification
1649 * nssCKFWSession_IsRWSession
1650 * nssCKFWSession_IsSO
1651 * nssCKFWSession_GetCurrentCryptoOperation
1652 *
1653 * -- private accessors --
1654 * nssCKFWSession_GetFWSlot
1655 * nssCKFWSession_GetSessionState
1656 * nssCKFWSession_SetFWFindObjects
1657 * nssCKFWSession_GetFWFindObjects
1658 * nssCKFWSession_SetMDSession
1659 * nssCKFWSession_SetHandle
1660 * nssCKFWSession_GetHandle
1661 * nssCKFWSession_RegisterSessionObject
1662 * nssCKFWSession_DeregisterSessionObject
1663 * nssCKFWSession_SetCurrentCryptoOperation
1664 *
1665 * -- module fronts --
1666 * nssCKFWSession_GetDeviceError
1667 * nssCKFWSession_Login
1668 * nssCKFWSession_Logout
1669 * nssCKFWSession_InitPIN
1670 * nssCKFWSession_SetPIN
1671 * nssCKFWSession_GetOperationStateLen
1672 * nssCKFWSession_GetOperationState
1673 * nssCKFWSession_SetOperationState
1674 * nssCKFWSession_CreateObject
1675 * nssCKFWSession_CopyObject
1676 * nssCKFWSession_FindObjectsInit
1677 * nssCKFWSession_SeedRandom
1678 * nssCKFWSession_GetRandom
1679 * nssCKFWSession_Final
1680 * nssCKFWSession_Update
1681 * nssCKFWSession_DigestUpdate
1682 * nssCKFWSession_DigestKey
1683 * nssCKFWSession_UpdateFinal
1684 * nssCKFWSession_UpdateCombo
1685 */
1686
1687 /*
1688 * nssCKFWSession_Create
1689 *
1690 */
1691 NSS_EXTERN NSSCKFWSession *
1692 nssCKFWSession_Create
1693 (
1694 NSSCKFWToken *fwToken,
1695 CK_BBOOL rw,
1696 CK_VOID_PTR pApplication,
1697 CK_NOTIFY Notify,
1698 CK_RV *pError
1699 );
1700
1701 /*
1702 * nssCKFWSession_Destroy
1703 *
1704 */
1705 NSS_EXTERN CK_RV
1706 nssCKFWSession_Destroy
1707 (
1708 NSSCKFWSession *fwSession,
1709 CK_BBOOL removeFromTokenHash
1710 );
1711
1712 /*
1713 * nssCKFWSession_GetMDSession
1714 *
1715 */
1716 NSS_EXTERN NSSCKMDSession *
1717 nssCKFWSession_GetMDSession
1718 (
1719 NSSCKFWSession *fwSession
1720 );
1721
1722 /*
1723 * nssCKFWSession_GetArena
1724 *
1725 */
1726 NSS_EXTERN NSSArena *
1727 nssCKFWSession_GetArena
1728 (
1729 NSSCKFWSession *fwSession,
1730 CK_RV *pError
1731 );
1732
1733 /*
1734 * nssCKFWSession_CallNotification
1735 *
1736 */
1737 NSS_EXTERN CK_RV
1738 nssCKFWSession_CallNotification
1739 (
1740 NSSCKFWSession *fwSession,
1741 CK_NOTIFICATION event
1742 );
1743
1744 /*
1745 * nssCKFWSession_IsRWSession
1746 *
1747 */
1748 NSS_EXTERN CK_BBOOL
1749 nssCKFWSession_IsRWSession
1750 (
1751 NSSCKFWSession *fwSession
1752 );
1753
1754 /*
1755 * nssCKFWSession_IsSO
1756 *
1757 */
1758 NSS_EXTERN CK_BBOOL
1759 nssCKFWSession_IsSO
1760 (
1761 NSSCKFWSession *fwSession
1762 );
1763
1764 /*
1765 * nssCKFWSession_GetFWSlot
1766 *
1767 */
1768 NSS_EXTERN NSSCKFWSlot *
1769 nssCKFWSession_GetFWSlot
1770 (
1771 NSSCKFWSession *fwSession
1772 );
1773
1774 /*
1775 * nssCFKWSession_GetSessionState
1776 *
1777 */
1778 NSS_EXTERN CK_STATE
1779 nssCKFWSession_GetSessionState
1780 (
1781 NSSCKFWSession *fwSession
1782 );
1783
1784 /*
1785 * nssCKFWSession_SetFWFindObjects
1786 *
1787 */
1788 NSS_EXTERN CK_RV
1789 nssCKFWSession_SetFWFindObjects
1790 (
1791 NSSCKFWSession *fwSession,
1792 NSSCKFWFindObjects *fwFindObjects
1793 );
1794
1795 /*
1796 * nssCKFWSession_GetFWFindObjects
1797 *
1798 */
1799 NSS_EXTERN NSSCKFWFindObjects *
1800 nssCKFWSession_GetFWFindObjects
1801 (
1802 NSSCKFWSession *fwSesssion,
1803 CK_RV *pError
1804 );
1805
1806 /*
1807 * nssCKFWSession_SetMDSession
1808 *
1809 */
1810 NSS_EXTERN CK_RV
1811 nssCKFWSession_SetMDSession
1812 (
1813 NSSCKFWSession *fwSession,
1814 NSSCKMDSession *mdSession
1815 );
1816
1817 /*
1818 * nssCKFWSession_SetHandle
1819 *
1820 */
1821 NSS_EXTERN CK_RV
1822 nssCKFWSession_SetHandle
1823 (
1824 NSSCKFWSession *fwSession,
1825 CK_SESSION_HANDLE hSession
1826 );
1827
1828 /*
1829 * nssCKFWSession_GetHandle
1830 *
1831 */
1832 NSS_EXTERN CK_SESSION_HANDLE
1833 nssCKFWSession_GetHandle
1834 (
1835 NSSCKFWSession *fwSession
1836 );
1837
1838 /*
1839 * nssCKFWSession_RegisterSessionObject
1840 *
1841 */
1842 NSS_EXTERN CK_RV
1843 nssCKFWSession_RegisterSessionObject
1844 (
1845 NSSCKFWSession *fwSession,
1846 NSSCKFWObject *fwObject
1847 );
1848
1849 /*
1850 * nssCKFWSession_DeregisterSessionObject
1851 *
1852 */
1853 NSS_EXTERN CK_RV
1854 nssCKFWSession_DeregisterSessionObject
1855 (
1856 NSSCKFWSession *fwSession,
1857 NSSCKFWObject *fwObject
1858 );
1859
1860 /*
1861 * nssCKFWSession_GetDeviceError
1862 *
1863 */
1864 NSS_EXTERN CK_ULONG
1865 nssCKFWSession_GetDeviceError
1866 (
1867 NSSCKFWSession *fwSession
1868 );
1869
1870 /*
1871 * nssCKFWSession_Login
1872 *
1873 */
1874 NSS_EXTERN CK_RV
1875 nssCKFWSession_Login
1876 (
1877 NSSCKFWSession *fwSession,
1878 CK_USER_TYPE userType,
1879 NSSItem *pin
1880 );
1881
1882 /*
1883 * nssCKFWSession_Logout
1884 *
1885 */
1886 NSS_EXTERN CK_RV
1887 nssCKFWSession_Logout
1888 (
1889 NSSCKFWSession *fwSession
1890 );
1891
1892 /*
1893 * nssCKFWSession_InitPIN
1894 *
1895 */
1896 NSS_EXTERN CK_RV
1897 nssCKFWSession_InitPIN
1898 (
1899 NSSCKFWSession *fwSession,
1900 NSSItem *pin
1901 );
1902
1903 /*
1904 * nssCKFWSession_SetPIN
1905 *
1906 */
1907 NSS_EXTERN CK_RV
1908 nssCKFWSession_SetPIN
1909 (
1910 NSSCKFWSession *fwSession,
1911 NSSItem *newPin,
1912 NSSItem *oldPin
1913 );
1914
1915 /*
1916 * nssCKFWSession_GetOperationStateLen
1917 *
1918 */
1919 NSS_EXTERN CK_ULONG
1920 nssCKFWSession_GetOperationStateLen
1921 (
1922 NSSCKFWSession *fwSession,
1923 CK_RV *pError
1924 );
1925
1926 /*
1927 * nssCKFWSession_GetOperationState
1928 *
1929 */
1930 NSS_EXTERN CK_RV
1931 nssCKFWSession_GetOperationState
1932 (
1933 NSSCKFWSession *fwSession,
1934 NSSItem *buffer
1935 );
1936
1937 /*
1938 * nssCKFWSession_SetOperationState
1939 *
1940 */
1941 NSS_EXTERN CK_RV
1942 nssCKFWSession_SetOperationState
1943 (
1944 NSSCKFWSession *fwSession,
1945 NSSItem *state,
1946 NSSCKFWObject *encryptionKey,
1947 NSSCKFWObject *authenticationKey
1948 );
1949
1950 /*
1951 * nssCKFWSession_CreateObject
1952 *
1953 */
1954 NSS_EXTERN NSSCKFWObject *
1955 nssCKFWSession_CreateObject
1956 (
1957 NSSCKFWSession *fwSession,
1958 CK_ATTRIBUTE_PTR pTemplate,
1959 CK_ULONG ulAttributeCount,
1960 CK_RV *pError
1961 );
1962
1963 /*
1964 * nssCKFWSession_CopyObject
1965 *
1966 */
1967 NSS_EXTERN NSSCKFWObject *
1968 nssCKFWSession_CopyObject
1969 (
1970 NSSCKFWSession *fwSession,
1971 NSSCKFWObject *object,
1972 CK_ATTRIBUTE_PTR pTemplate,
1973 CK_ULONG ulAttributeCount,
1974 CK_RV *pError
1975 );
1976
1977 /*
1978 * nssCKFWSession_FindObjectsInit
1979 *
1980 */
1981 NSS_EXTERN NSSCKFWFindObjects *
1982 nssCKFWSession_FindObjectsInit
1983 (
1984 NSSCKFWSession *fwSession,
1985 CK_ATTRIBUTE_PTR pTemplate,
1986 CK_ULONG ulAttributeCount,
1987 CK_RV *pError
1988 );
1989
1990 /*
1991 * nssCKFWSession_SetCurrentCryptoOperation
1992 */
1993 NSS_IMPLEMENT void
1994 nssCKFWSession_SetCurrentCryptoOperation
1995 (
1996 NSSCKFWSession *fwSession,
1997 NSSCKFWCryptoOperation * fwOperation,
1998 NSSCKFWCryptoOperationState state
1999 );
2000
2001 /*
2002 * nssCKFWSession_GetCurrentCryptoOperation
2003 */
2004 NSS_IMPLEMENT NSSCKFWCryptoOperation *
2005 nssCKFWSession_GetCurrentCryptoOperation
2006 (
2007 NSSCKFWSession *fwSession,
2008 NSSCKFWCryptoOperationState state
2009 );
2010
2011 /*
2012 * nssCKFWSession_Final
2013 * (terminate a cryptographic operation and get the result)
2014 */
2015 NSS_IMPLEMENT CK_RV
2016 nssCKFWSession_Final
2017 (
2018 NSSCKFWSession *fwSession,
2019 NSSCKFWCryptoOperationType type,
2020 NSSCKFWCryptoOperationState state,
2021 CK_BYTE_PTR outBuf,
2022 CK_ULONG_PTR outBufLen
2023 );
2024
2025 /*
2026 * nssCKFWSession_Update
2027 * (get the next step of an encrypt/decrypt operation)
2028 */
2029 NSS_IMPLEMENT CK_RV
2030 nssCKFWSession_Update
2031 (
2032 NSSCKFWSession *fwSession,
2033 NSSCKFWCryptoOperationType type,
2034 NSSCKFWCryptoOperationState state,
2035 CK_BYTE_PTR inBuf,
2036 CK_ULONG inBufLen,
2037 CK_BYTE_PTR outBuf,
2038 CK_ULONG_PTR outBufLen
2039 );
2040
2041 /*
2042 * nssCKFWSession_DigestUpdate
2043 * (do the next step of an digest/sign/verify operation)
2044 */
2045 NSS_IMPLEMENT CK_RV
2046 nssCKFWSession_DigestUpdate
2047 (
2048 NSSCKFWSession *fwSession,
2049 NSSCKFWCryptoOperationType type,
2050 NSSCKFWCryptoOperationState state,
2051 CK_BYTE_PTR inBuf,
2052 CK_ULONG inBufLen
2053 );
2054
2055 /*
2056 * nssCKFWSession_DigestKey
2057 * (do the next step of an digest/sign/verify operation)
2058 */
2059 NSS_IMPLEMENT CK_RV
2060 nssCKFWSession_DigestKey
2061 (
2062 NSSCKFWSession *fwSession,
2063 NSSCKFWObject *fwKey
2064 );
2065
2066 /*
2067 * nssCKFWSession_UpdateFinal
2068 * (do a single-step of a cryptographic operation and get the result)
2069 */
2070 NSS_IMPLEMENT CK_RV
2071 nssCKFWSession_UpdateFinal
2072 (
2073 NSSCKFWSession *fwSession,
2074 NSSCKFWCryptoOperationType type,
2075 NSSCKFWCryptoOperationState state,
2076 CK_BYTE_PTR inBuf,
2077 CK_ULONG inBufLen,
2078 CK_BYTE_PTR outBuf,
2079 CK_ULONG_PTR outBufLen
2080 );
2081
2082 /*
2083 * nssCKFWSession_UpdateCombo
2084 * (do a combination encrypt/decrypt and sign/digest/verify operation)
2085 */
2086 NSS_IMPLEMENT CK_RV
2087 nssCKFWSession_UpdateCombo
2088 (
2089 NSSCKFWSession *fwSession,
2090 NSSCKFWCryptoOperationType encryptType,
2091 NSSCKFWCryptoOperationType digestType,
2092 NSSCKFWCryptoOperationState digestState,
2093 CK_BYTE_PTR inBuf,
2094 CK_ULONG inBufLen,
2095 CK_BYTE_PTR outBuf,
2096 CK_ULONG_PTR outBufLen
2097 );
2098
2099 /*
2100 * nssCKFWSession_SeedRandom
2101 *
2102 */
2103 NSS_EXTERN CK_RV
2104 nssCKFWSession_SeedRandom
2105 (
2106 NSSCKFWSession *fwSession,
2107 NSSItem *seed
2108 );
2109
2110 /*
2111 * nssCKFWSession_GetRandom
2112 *
2113 */
2114 NSS_EXTERN CK_RV
2115 nssCKFWSession_GetRandom
2116 (
2117 NSSCKFWSession *fwSession,
2118 NSSItem *buffer
2119 );
2120
2121 /*
2122 * NSSCKFWObject
2123 *
2124 * -- create/destroy --
2125 * nssCKFWObject_Create
2126 * nssCKFWObject_Finalize
2127 * nssCKFWObject_Destroy
2128 *
2129 * -- implement public accessors --
2130 * nssCKFWObject_GetMDObject
2131 * nssCKFWObject_GetArena
2132 *
2133 * -- private accessors --
2134 * nssCKFWObject_SetHandle
2135 * nssCKFWObject_GetHandle
2136 *
2137 * -- module fronts --
2138 * nssCKFWObject_IsTokenObject
2139 * nssCKFWObject_GetAttributeCount
2140 * nssCKFWObject_GetAttributeTypes
2141 * nssCKFWObject_GetAttributeSize
2142 * nssCKFWObject_GetAttribute
2143 * nssCKFWObject_SetAttribute
2144 * nssCKFWObject_GetObjectSize
2145 */
2146
2147 /*
2148 * nssCKFWObject_Create
2149 *
2150 */
2151 NSS_EXTERN NSSCKFWObject *
2152 nssCKFWObject_Create
2153 (
2154 NSSArena *arena,
2155 NSSCKMDObject *mdObject,
2156 NSSCKFWSession *fwSession,
2157 NSSCKFWToken *fwToken,
2158 NSSCKFWInstance *fwInstance,
2159 CK_RV *pError
2160 );
2161
2162 /*
2163 * nssCKFWObject_Finalize
2164 *
2165 */
2166 NSS_EXTERN void
2167 nssCKFWObject_Finalize
2168 (
2169 NSSCKFWObject *fwObject,
2170 PRBool removeFromHash
2171 );
2172
2173 /*
2174 * nssCKFWObject_Destroy
2175 *
2176 */
2177 NSS_EXTERN void
2178 nssCKFWObject_Destroy
2179 (
2180 NSSCKFWObject *fwObject
2181 );
2182
2183 /*
2184 * nssCKFWObject_GetMDObject
2185 *
2186 */
2187 NSS_EXTERN NSSCKMDObject *
2188 nssCKFWObject_GetMDObject
2189 (
2190 NSSCKFWObject *fwObject
2191 );
2192
2193 /*
2194 * nssCKFWObject_GetArena
2195 *
2196 */
2197 NSS_EXTERN NSSArena *
2198 nssCKFWObject_GetArena
2199 (
2200 NSSCKFWObject *fwObject,
2201 CK_RV *pError
2202 );
2203
2204 /*
2205 * nssCKFWObject_SetHandle
2206 *
2207 */
2208 NSS_EXTERN CK_RV
2209 nssCKFWObject_SetHandle
2210 (
2211 NSSCKFWObject *fwObject,
2212 CK_OBJECT_HANDLE hObject
2213 );
2214
2215 /*
2216 * nssCKFWObject_GetHandle
2217 *
2218 */
2219 NSS_EXTERN CK_OBJECT_HANDLE
2220 nssCKFWObject_GetHandle
2221 (
2222 NSSCKFWObject *fwObject
2223 );
2224
2225 /*
2226 * nssCKFWObject_IsTokenObject
2227 *
2228 */
2229 NSS_EXTERN CK_BBOOL
2230 nssCKFWObject_IsTokenObject
2231 (
2232 NSSCKFWObject *fwObject
2233 );
2234
2235 /*
2236 * nssCKFWObject_GetAttributeCount
2237 *
2238 */
2239 NSS_EXTERN CK_ULONG
2240 nssCKFWObject_GetAttributeCount
2241 (
2242 NSSCKFWObject *fwObject,
2243 CK_RV *pError
2244 );
2245
2246 /*
2247 * nssCKFWObject_GetAttributeTypes
2248 *
2249 */
2250 NSS_EXTERN CK_RV
2251 nssCKFWObject_GetAttributeTypes
2252 (
2253 NSSCKFWObject *fwObject,
2254 CK_ATTRIBUTE_TYPE_PTR typeArray,
2255 CK_ULONG ulCount
2256 );
2257
2258 /*
2259 * nssCKFWObject_GetAttributeSize
2260 *
2261 */
2262 NSS_EXTERN CK_ULONG
2263 nssCKFWObject_GetAttributeSize
2264 (
2265 NSSCKFWObject *fwObject,
2266 CK_ATTRIBUTE_TYPE attribute,
2267 CK_RV *pError
2268 );
2269
2270 /*
2271 * nssCKFWObject_GetAttribute
2272 *
2273 * Usual NSS allocation rules:
2274 * If itemOpt is not NULL, it will be returned; otherwise an NSSItem
2275 * will be allocated. If itemOpt is not NULL but itemOpt->data is,
2276 * the buffer will be allocated; otherwise, the buffer will be used.
2277 * Any allocations will come from the optional arena, if one is
2278 * specified.
2279 */
2280 NSS_EXTERN NSSItem *
2281 nssCKFWObject_GetAttribute
2282 (
2283 NSSCKFWObject *fwObject,
2284 CK_ATTRIBUTE_TYPE attribute,
2285 NSSItem *itemOpt,
2286 NSSArena *arenaOpt,
2287 CK_RV *pError
2288 );
2289
2290 /*
2291 * nssCKFWObject_SetAttribute
2292 *
2293 */
2294 NSS_EXTERN CK_RV
2295 nssCKFWObject_SetAttribute
2296 (
2297 NSSCKFWObject *fwObject,
2298 NSSCKFWSession *fwSession,
2299 CK_ATTRIBUTE_TYPE attribute,
2300 NSSItem *value
2301 );
2302
2303 /*
2304 * nssCKFWObject_GetObjectSize
2305 *
2306 */
2307 NSS_EXTERN CK_ULONG
2308 nssCKFWObject_GetObjectSize
2309 (
2310 NSSCKFWObject *fwObject,
2311 CK_RV *pError
2312 );
2313
2314 /*
2315 * NSSCKFWFindObjects
2316 *
2317 * -- create/destroy --
2318 * nssCKFWFindObjects_Create
2319 * nssCKFWFindObjects_Destroy
2320 *
2321 * -- implement public accessors --
2322 * nssCKFWFindObjects_GetMDFindObjects
2323 *
2324 * -- private accessors --
2325 *
2326 * -- module fronts --
2327 * nssCKFWFindObjects_Next
2328 */
2329
2330 /*
2331 * nssCKFWFindObjects_Create
2332 *
2333 */
2334 NSS_EXTERN NSSCKFWFindObjects *
2335 nssCKFWFindObjects_Create
2336 (
2337 NSSCKFWSession *fwSession,
2338 NSSCKFWToken *fwToken,
2339 NSSCKFWInstance *fwInstance,
2340 NSSCKMDFindObjects *mdFindObjects1,
2341 NSSCKMDFindObjects *mdFindObjects2,
2342 CK_RV *pError
2343 );
2344
2345 /*
2346 * nssCKFWFindObjects_Destroy
2347 *
2348 */
2349 NSS_EXTERN void
2350 nssCKFWFindObjects_Destroy
2351 (
2352 NSSCKFWFindObjects *fwFindObjects
2353 );
2354
2355 /*
2356 * nssCKFWFindObjects_GetMDFindObjects
2357 *
2358 */
2359 NSS_EXTERN NSSCKMDFindObjects *
2360 nssCKFWFindObjects_GetMDFindObjects
2361 (
2362 NSSCKFWFindObjects *fwFindObjects
2363 );
2364
2365 /*
2366 * nssCKFWFindObjects_Next
2367 *
2368 */
2369 NSS_EXTERN NSSCKFWObject *
2370 nssCKFWFindObjects_Next
2371 (
2372 NSSCKFWFindObjects *fwFindObjects,
2373 NSSArena *arenaOpt,
2374 CK_RV *pError
2375 );
2376
2377 /*
2378 * NSSCKFWMutex
2379 *
2380 * nssCKFWMutex_Create
2381 * nssCKFWMutex_Destroy
2382 * nssCKFWMutex_Lock
2383 * nssCKFWMutex_Unlock
2384 *
2385 */
2386
2387 /*
2388 * nssCKFWMutex_Create
2389 *
2390 */
2391 NSS_EXTERN NSSCKFWMutex *
2392 nssCKFWMutex_Create
2393 (
2394 CK_C_INITIALIZE_ARGS_PTR pInitArgs,
2395 CryptokiLockingState LockingState,
2396 NSSArena *arena,
2397 CK_RV *pError
2398 );
2399
2400 /*
2401 * nssCKFWMutex_Destroy
2402 *
2403 */
2404 NSS_EXTERN CK_RV
2405 nssCKFWMutex_Destroy
2406 (
2407 NSSCKFWMutex *mutex
2408 );
2409
2410 /*
2411 * nssCKFWMutex_Lock
2412 *
2413 */
2414 NSS_EXTERN CK_RV
2415 nssCKFWMutex_Lock
2416 (
2417 NSSCKFWMutex *mutex
2418 );
2419
2420 /*
2421 * nssCKFWMutex_Unlock
2422 *
2423 */
2424 NSS_EXTERN CK_RV
2425 nssCKFWMutex_Unlock
2426 (
2427 NSSCKFWMutex *mutex
2428 );
2429
2430 #endif /* CKFW_H */
OLDNEW
« no previous file with comments | « mozilla/security/nss/lib/ckfw/ck.h ('k') | mozilla/security/nss/lib/ckfw/ckfwm.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698