| /* This Source Code Form is subject to the terms of the Mozilla Public |
| * License, v. 2.0. If a copy of the MPL was not distributed with this |
| * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
| |
| #ifndef NSSCKFWC_H |
| #define NSSCKFWC_H |
| |
| /* |
| * nssckfwc.h |
| * |
| * This file prototypes all of the NSS Cryptoki Framework "wrapper" |
| * which implement the PKCS#11 API. Technically, these are public |
| * routines (with capital "NSS" prefixes), since they are called |
| * from (generated) code within a Module using the Framework. |
| * However, they should not be called except from those generated |
| * calls. Hence, the prototypes have been split out into this file. |
| */ |
| |
| #ifndef NSSCKT_H |
| #include "nssckt.h" |
| #endif /* NSSCKT_H */ |
| |
| #ifndef NSSCKFWT_H |
| #include "nssckfwt.h" |
| #endif /* NSSCKFWT_H */ |
| |
| #ifndef NSSCKMDT_H |
| #include "nssckmdt.h" |
| #endif /* NSSCKMDT_H */ |
| |
| /* |
| * NSSCKFWC_Initialize |
| * NSSCKFWC_Finalize |
| * NSSCKFWC_GetInfo |
| * -- NSSCKFWC_GetFunctionList -- see the API insert file |
| * NSSCKFWC_GetSlotList |
| * NSSCKFWC_GetSlotInfo |
| * NSSCKFWC_GetTokenInfo |
| * NSSCKFWC_WaitForSlotEvent |
| * NSSCKFWC_GetMechanismList |
| * NSSCKFWC_GetMechanismInfo |
| * NSSCKFWC_InitToken |
| * NSSCKFWC_InitPIN |
| * NSSCKFWC_SetPIN |
| * NSSCKFWC_OpenSession |
| * NSSCKFWC_CloseSession |
| * NSSCKFWC_CloseAllSessions |
| * NSSCKFWC_GetSessionInfo |
| * NSSCKFWC_GetOperationState |
| * NSSCKFWC_SetOperationState |
| * NSSCKFWC_Login |
| * NSSCKFWC_Logout |
| * NSSCKFWC_CreateObject |
| * NSSCKFWC_CopyObject |
| * NSSCKFWC_DestroyObject |
| * NSSCKFWC_GetObjectSize |
| * NSSCKFWC_GetAttributeValue |
| * NSSCKFWC_SetAttributeValue |
| * NSSCKFWC_FindObjectsInit |
| * NSSCKFWC_FindObjects |
| * NSSCKFWC_FindObjectsFinal |
| * NSSCKFWC_EncryptInit |
| * NSSCKFWC_Encrypt |
| * NSSCKFWC_EncryptUpdate |
| * NSSCKFWC_EncryptFinal |
| * NSSCKFWC_DecryptInit |
| * NSSCKFWC_Decrypt |
| * NSSCKFWC_DecryptUpdate |
| * NSSCKFWC_DecryptFinal |
| * NSSCKFWC_DigestInit |
| * NSSCKFWC_Digest |
| * NSSCKFWC_DigestUpdate |
| * NSSCKFWC_DigestKey |
| * NSSCKFWC_DigestFinal |
| * NSSCKFWC_SignInit |
| * NSSCKFWC_Sign |
| * NSSCKFWC_SignUpdate |
| * NSSCKFWC_SignFinal |
| * NSSCKFWC_SignRecoverInit |
| * NSSCKFWC_SignRecover |
| * NSSCKFWC_VerifyInit |
| * NSSCKFWC_Verify |
| * NSSCKFWC_VerifyUpdate |
| * NSSCKFWC_VerifyFinal |
| * NSSCKFWC_VerifyRecoverInit |
| * NSSCKFWC_VerifyRecover |
| * NSSCKFWC_DigestEncryptUpdate |
| * NSSCKFWC_DecryptDigestUpdate |
| * NSSCKFWC_SignEncryptUpdate |
| * NSSCKFWC_DecryptVerifyUpdate |
| * NSSCKFWC_GenerateKey |
| * NSSCKFWC_GenerateKeyPair |
| * NSSCKFWC_WrapKey |
| * NSSCKFWC_UnwrapKey |
| * NSSCKFWC_DeriveKey |
| * NSSCKFWC_SeedRandom |
| * NSSCKFWC_GenerateRandom |
| * NSSCKFWC_GetFunctionStatus |
| * NSSCKFWC_CancelFunction |
| */ |
| |
| /* |
| * NSSCKFWC_Initialize |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Initialize( |
| NSSCKFWInstance **pFwInstance, |
| NSSCKMDInstance *mdInstance, |
| CK_VOID_PTR pInitArgs); |
| |
| /* |
| * NSSCKFWC_Finalize |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Finalize( |
| NSSCKFWInstance **pFwInstance); |
| |
| /* |
| * NSSCKFWC_GetInfo |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetInfo( |
| NSSCKFWInstance *fwInstance, |
| CK_INFO_PTR pInfo); |
| |
| /* |
| * C_GetFunctionList is implemented entirely in the Module's file which |
| * includes the Framework API insert file. It requires no "actual" |
| * NSSCKFW routine. |
| */ |
| |
| /* |
| * NSSCKFWC_GetSlotList |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetSlotList( |
| NSSCKFWInstance *fwInstance, |
| CK_BBOOL tokenPresent, |
| CK_SLOT_ID_PTR pSlotList, |
| CK_ULONG_PTR pulCount); |
| |
| /* |
| * NSSCKFWC_GetSlotInfo |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetSlotInfo( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_SLOT_INFO_PTR pInfo); |
| |
| /* |
| * NSSCKFWC_GetTokenInfo |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetTokenInfo( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_TOKEN_INFO_PTR pInfo); |
| |
| /* |
| * NSSCKFWC_WaitForSlotEvent |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_WaitForSlotEvent( |
| NSSCKFWInstance *fwInstance, |
| CK_FLAGS flags, |
| CK_SLOT_ID_PTR pSlot, |
| CK_VOID_PTR pReserved); |
| |
| /* |
| * NSSCKFWC_GetMechanismList |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetMechanismList( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_MECHANISM_TYPE_PTR pMechanismList, |
| CK_ULONG_PTR pulCount); |
| |
| /* |
| * NSSCKFWC_GetMechanismInfo |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetMechanismInfo( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_MECHANISM_TYPE type, |
| CK_MECHANISM_INFO_PTR pInfo); |
| |
| /* |
| * NSSCKFWC_InitToken |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_InitToken( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_CHAR_PTR pPin, |
| CK_ULONG ulPinLen, |
| CK_CHAR_PTR pLabel); |
| |
| /* |
| * NSSCKFWC_InitPIN |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_InitPIN( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_CHAR_PTR pPin, |
| CK_ULONG ulPinLen); |
| |
| /* |
| * NSSCKFWC_SetPIN |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SetPIN( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_CHAR_PTR pOldPin, |
| CK_ULONG ulOldLen, |
| CK_CHAR_PTR pNewPin, |
| CK_ULONG ulNewLen); |
| |
| /* |
| * NSSCKFWC_OpenSession |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_OpenSession( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID, |
| CK_FLAGS flags, |
| CK_VOID_PTR pApplication, |
| CK_NOTIFY Notify, |
| CK_SESSION_HANDLE_PTR phSession); |
| |
| /* |
| * NSSCKFWC_CloseSession |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_CloseSession( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession); |
| |
| /* |
| * NSSCKFWC_CloseAllSessions |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_CloseAllSessions( |
| NSSCKFWInstance *fwInstance, |
| CK_SLOT_ID slotID); |
| |
| /* |
| * NSSCKFWC_GetSessionInfo |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetSessionInfo( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_SESSION_INFO_PTR pInfo); |
| |
| /* |
| * NSSCKFWC_GetOperationState |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetOperationState( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pOperationState, |
| CK_ULONG_PTR pulOperationStateLen); |
| |
| /* |
| * NSSCKFWC_SetOperationState |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SetOperationState( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pOperationState, |
| CK_ULONG ulOperationStateLen, |
| CK_OBJECT_HANDLE hEncryptionKey, |
| CK_OBJECT_HANDLE hAuthenticationKey); |
| |
| /* |
| * NSSCKFWC_Login |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Login( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_USER_TYPE userType, |
| CK_CHAR_PTR pPin, |
| CK_ULONG ulPinLen); |
| |
| /* |
| * NSSCKFWC_Logout |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Logout( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession); |
| |
| /* |
| * NSSCKFWC_CreateObject |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_CreateObject( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount, |
| CK_OBJECT_HANDLE_PTR phObject); |
| |
| /* |
| * NSSCKFWC_CopyObject |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_CopyObject( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hObject, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount, |
| CK_OBJECT_HANDLE_PTR phNewObject); |
| |
| /* |
| * NSSCKFWC_DestroyObject |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DestroyObject( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hObject); |
| |
| /* |
| * NSSCKFWC_GetObjectSize |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetObjectSize( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hObject, |
| CK_ULONG_PTR pulSize); |
| |
| /* |
| * NSSCKFWC_GetAttributeValue |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetAttributeValue( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hObject, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount); |
| |
| /* |
| * NSSCKFWC_SetAttributeValue |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SetAttributeValue( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hObject, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount); |
| |
| /* |
| * NSSCKFWC_FindObjectsInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_FindObjectsInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount); |
| |
| /* |
| * NSSCKFWC_FindObjects |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_FindObjects( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE_PTR phObject, |
| CK_ULONG ulMaxObjectCount, |
| CK_ULONG_PTR pulObjectCount); |
| |
| /* |
| * NSSCKFWC_FindObjectsFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_FindObjectsFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession); |
| |
| /* |
| * NSSCKFWC_EncryptInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_EncryptInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_Encrypt |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Encrypt( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen, |
| CK_BYTE_PTR pEncryptedData, |
| CK_ULONG_PTR pulEncryptedDataLen); |
| |
| /* |
| * NSSCKFWC_EncryptUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_EncryptUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pPart, |
| CK_ULONG ulPartLen, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG_PTR pulEncryptedPartLen); |
| |
| /* |
| * NSSCKFWC_EncryptFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_EncryptFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pLastEncryptedPart, |
| CK_ULONG_PTR pulLastEncryptedPartLen); |
| |
| /* |
| * NSSCKFWC_DecryptInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DecryptInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_Decrypt |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Decrypt( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pEncryptedData, |
| CK_ULONG ulEncryptedDataLen, |
| CK_BYTE_PTR pData, |
| CK_ULONG_PTR pulDataLen); |
| |
| /* |
| * NSSCKFWC_DecryptUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DecryptUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG ulEncryptedPartLen, |
| CK_BYTE_PTR pPart, |
| CK_ULONG_PTR pulPartLen); |
| |
| /* |
| * NSSCKFWC_DecryptFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DecryptFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pLastPart, |
| CK_ULONG_PTR pulLastPartLen); |
| |
| /* |
| * NSSCKFWC_DigestInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DigestInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism); |
| |
| /* |
| * NSSCKFWC_Digest |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Digest( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen, |
| CK_BYTE_PTR pDigest, |
| CK_ULONG_PTR pulDigestLen); |
| |
| /* |
| * NSSCKFWC_DigestUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DigestUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen); |
| |
| /* |
| * NSSCKFWC_DigestKey |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DigestKey( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_DigestFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DigestFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pDigest, |
| CK_ULONG_PTR pulDigestLen); |
| |
| /* |
| * NSSCKFWC_SignInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_Sign |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Sign( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG_PTR pulSignatureLen); |
| |
| /* |
| * NSSCKFWC_SignUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pPart, |
| CK_ULONG ulPartLen); |
| |
| /* |
| * NSSCKFWC_SignFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG_PTR pulSignatureLen); |
| |
| /* |
| * NSSCKFWC_SignRecoverInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignRecoverInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_SignRecover |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignRecover( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG_PTR pulSignatureLen); |
| |
| /* |
| * NSSCKFWC_VerifyInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_VerifyInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_Verify |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_Verify( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pData, |
| CK_ULONG ulDataLen, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG ulSignatureLen); |
| |
| /* |
| * NSSCKFWC_VerifyUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_VerifyUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pPart, |
| CK_ULONG ulPartLen); |
| |
| /* |
| * NSSCKFWC_VerifyFinal |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_VerifyFinal( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG ulSignatureLen); |
| |
| /* |
| * NSSCKFWC_VerifyRecoverInit |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_VerifyRecoverInit( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hKey); |
| |
| /* |
| * NSSCKFWC_VerifyRecover |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_VerifyRecover( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pSignature, |
| CK_ULONG ulSignatureLen, |
| CK_BYTE_PTR pData, |
| CK_ULONG_PTR pulDataLen); |
| |
| /* |
| * NSSCKFWC_DigestEncryptUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DigestEncryptUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pPart, |
| CK_ULONG ulPartLen, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG_PTR pulEncryptedPartLen); |
| |
| /* |
| * NSSCKFWC_DecryptDigestUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DecryptDigestUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG ulEncryptedPartLen, |
| CK_BYTE_PTR pPart, |
| CK_ULONG_PTR pulPartLen); |
| |
| /* |
| * NSSCKFWC_SignEncryptUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SignEncryptUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pPart, |
| CK_ULONG ulPartLen, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG_PTR pulEncryptedPartLen); |
| |
| /* |
| * NSSCKFWC_DecryptVerifyUpdate |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DecryptVerifyUpdate( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pEncryptedPart, |
| CK_ULONG ulEncryptedPartLen, |
| CK_BYTE_PTR pPart, |
| CK_ULONG_PTR pulPartLen); |
| |
| /* |
| * NSSCKFWC_GenerateKey |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GenerateKey( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulCount, |
| CK_OBJECT_HANDLE_PTR phKey); |
| |
| /* |
| * NSSCKFWC_GenerateKeyPair |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GenerateKeyPair( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_ATTRIBUTE_PTR pPublicKeyTemplate, |
| CK_ULONG ulPublicKeyAttributeCount, |
| CK_ATTRIBUTE_PTR pPrivateKeyTemplate, |
| CK_ULONG ulPrivateKeyAttributeCount, |
| CK_OBJECT_HANDLE_PTR phPublicKey, |
| CK_OBJECT_HANDLE_PTR phPrivateKey); |
| |
| /* |
| * NSSCKFWC_WrapKey |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_WrapKey( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hWrappingKey, |
| CK_OBJECT_HANDLE hKey, |
| CK_BYTE_PTR pWrappedKey, |
| CK_ULONG_PTR pulWrappedKeyLen); |
| |
| /* |
| * NSSCKFWC_UnwrapKey |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_UnwrapKey( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hUnwrappingKey, |
| CK_BYTE_PTR pWrappedKey, |
| CK_ULONG ulWrappedKeyLen, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulAttributeCount, |
| CK_OBJECT_HANDLE_PTR phKey); |
| |
| /* |
| * NSSCKFWC_DeriveKey |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_DeriveKey( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_MECHANISM_PTR pMechanism, |
| CK_OBJECT_HANDLE hBaseKey, |
| CK_ATTRIBUTE_PTR pTemplate, |
| CK_ULONG ulAttributeCount, |
| CK_OBJECT_HANDLE_PTR phKey); |
| |
| /* |
| * NSSCKFWC_SeedRandom |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_SeedRandom( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pSeed, |
| CK_ULONG ulSeedLen); |
| |
| /* |
| * NSSCKFWC_GenerateRandom |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GenerateRandom( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession, |
| CK_BYTE_PTR pRandomData, |
| CK_ULONG ulRandomLen); |
| |
| /* |
| * NSSCKFWC_GetFunctionStatus |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_GetFunctionStatus( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession); |
| |
| /* |
| * NSSCKFWC_CancelFunction |
| * |
| */ |
| NSS_EXTERN CK_RV |
| NSSCKFWC_CancelFunction( |
| NSSCKFWInstance *fwInstance, |
| CK_SESSION_HANDLE hSession); |
| |
| #endif /* NSSCKFWC_H */ |