security/nss/lib/ckfw/ckfw.h

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

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

mercurial