andre@0: /* This Source Code Form is subject to the terms of the Mozilla Public andre@0: * License, v. 2.0. If a copy of the MPL was not distributed with this andre@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ andre@0: andre@0: #ifndef NSSCKFW_H andre@0: #define NSSCKFW_H andre@0: andre@0: /* andre@0: * nssckfw.h andre@0: * andre@0: * This file prototypes the publicly available calls of the andre@0: * NSS Cryptoki Framework. andre@0: */ andre@0: andre@0: #ifndef NSSBASET_H andre@0: #include "nssbaset.h" andre@0: #endif /* NSSBASET_H */ andre@0: andre@0: #ifndef NSSCKT_H andre@0: #include "nssckt.h" andre@0: #endif /* NSSCKT_H */ andre@0: andre@0: #ifndef NSSCKFWT_H andre@0: #include "nssckfwt.h" andre@0: #endif /* NSSCKFWT_H */ andre@0: andre@0: /* andre@0: * NSSCKFWInstance andre@0: * andre@0: * NSSCKFWInstance_GetMDInstance andre@0: * NSSCKFWInstance_GetArena andre@0: * NSSCKFWInstance_MayCreatePthreads andre@0: * NSSCKFWInstance_CreateMutex andre@0: * NSSCKFWInstance_GetConfigurationData andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWInstance_GetMDInstance andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDInstance * andre@0: NSSCKFWInstance_GetMDInstance andre@0: ( andre@0: NSSCKFWInstance *fwInstance andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWInstance_GetArena andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSArena * andre@0: NSSCKFWInstance_GetArena andre@0: ( andre@0: NSSCKFWInstance *fwInstance, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWInstance_MayCreatePthreads andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_BBOOL andre@0: NSSCKFWInstance_MayCreatePthreads andre@0: ( andre@0: NSSCKFWInstance *fwInstance andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWInstance_CreateMutex andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKFWMutex * andre@0: NSSCKFWInstance_CreateMutex andre@0: ( andre@0: NSSCKFWInstance *fwInstance, andre@0: NSSArena *arena, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWInstance_GetConfigurationData andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSUTF8 * andre@0: NSSCKFWInstance_GetConfigurationData andre@0: ( andre@0: NSSCKFWInstance *fwInstance andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWInstance_GetInitArgs andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_C_INITIALIZE_ARGS_PTR andre@0: NSSCKFWInstance_GetInitArgs andre@0: ( andre@0: NSSCKFWInstance *fwInstance andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSlot andre@0: * andre@0: * NSSCKFWSlot_GetMDSlot andre@0: * NSSCKFWSlot_GetFWInstance andre@0: * NSSCKFWSlot_GetMDInstance andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWSlot_GetMDSlot andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDSlot * andre@0: NSSCKFWSlot_GetMDSlot andre@0: ( andre@0: NSSCKFWSlot *fwSlot andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSlot_GetFWInstance andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKFWInstance * andre@0: NSSCKFWSlot_GetFWInstance andre@0: ( andre@0: NSSCKFWSlot *fwSlot andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSlot_GetMDInstance andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDInstance * andre@0: NSSCKFWSlot_GetMDInstance andre@0: ( andre@0: NSSCKFWSlot *fwSlot andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWToken andre@0: * andre@0: * NSSCKFWToken_GetMDToken andre@0: * NSSCKFWToken_GetFWSlot andre@0: * NSSCKFWToken_GetMDSlot andre@0: * NSSCKFWToken_GetSessionState andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWToken_GetMDToken andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDToken * andre@0: NSSCKFWToken_GetMDToken andre@0: ( andre@0: NSSCKFWToken *fwToken andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWToken_GetArena andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSArena * andre@0: NSSCKFWToken_GetArena andre@0: ( andre@0: NSSCKFWToken *fwToken, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWToken_GetFWSlot andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKFWSlot * andre@0: NSSCKFWToken_GetFWSlot andre@0: ( andre@0: NSSCKFWToken *fwToken andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWToken_GetMDSlot andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDSlot * andre@0: NSSCKFWToken_GetMDSlot andre@0: ( andre@0: NSSCKFWToken *fwToken andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWToken_GetSessionState andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_STATE andre@0: NSSCKFWToken_GetSessionState andre@0: ( andre@0: NSSCKFWToken *fwToken andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWMechanism andre@0: * andre@0: * NSSKCFWMechanism_GetMDMechanism andre@0: * NSSCKFWMechanism_GetParameter andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSKCFWMechanism_GetMDMechanism andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDMechanism * andre@0: NSSCKFWMechanism_GetMDMechanism andre@0: ( andre@0: NSSCKFWMechanism *fwMechanism andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWMechanism_GetParameter andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSItem * andre@0: NSSCKFWMechanism_GetParameter andre@0: ( andre@0: NSSCKFWMechanism *fwMechanism andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession andre@0: * andre@0: * NSSCKFWSession_GetMDSession andre@0: * NSSCKFWSession_GetArena andre@0: * NSSCKFWSession_CallNotification andre@0: * NSSCKFWSession_IsRWSession andre@0: * NSSCKFWSession_IsSO andre@0: * NSSCKFWSession_GetCurrentCryptoOperation andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWSession_GetMDSession andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDSession * andre@0: NSSCKFWSession_GetMDSession andre@0: ( andre@0: NSSCKFWSession *fwSession andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession_GetArena andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSArena * andre@0: NSSCKFWSession_GetArena andre@0: ( andre@0: NSSCKFWSession *fwSession, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession_CallNotification andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_RV andre@0: NSSCKFWSession_CallNotification andre@0: ( andre@0: NSSCKFWSession *fwSession, andre@0: CK_NOTIFICATION event andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession_IsRWSession andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_BBOOL andre@0: NSSCKFWSession_IsRWSession andre@0: ( andre@0: NSSCKFWSession *fwSession andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession_IsSO andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_BBOOL andre@0: NSSCKFWSession_IsSO andre@0: ( andre@0: NSSCKFWSession *fwSession andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWSession_GetCurrentCryptoOperation andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKFWCryptoOperation * andre@0: NSSCKFWSession_GetCurrentCryptoOperation andre@0: ( andre@0: NSSCKFWSession *fwSession, andre@0: NSSCKFWCryptoOperationState state andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject andre@0: * andre@0: * NSSCKFWObject_GetMDObject andre@0: * NSSCKFWObject_GetArena andre@0: * NSSCKFWObject_IsTokenObject andre@0: * NSSCKFWObject_GetAttributeCount andre@0: * NSSCKFWObject_GetAttributeTypes andre@0: * NSSCKFWObject_GetAttributeSize andre@0: * NSSCKFWObject_GetAttribute andre@0: * NSSCKFWObject_GetObjectSize andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetMDObject andre@0: * andre@0: */ andre@0: NSS_EXTERN NSSCKMDObject * andre@0: NSSCKFWObject_GetMDObject andre@0: ( andre@0: NSSCKFWObject *fwObject andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetArena andre@0: * andre@0: */ andre@0: NSS_EXTERN NSSArena * andre@0: NSSCKFWObject_GetArena andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_IsTokenObject andre@0: * andre@0: */ andre@0: NSS_EXTERN CK_BBOOL andre@0: NSSCKFWObject_IsTokenObject andre@0: ( andre@0: NSSCKFWObject *fwObject andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetAttributeCount andre@0: * andre@0: */ andre@0: NSS_EXTERN CK_ULONG andre@0: NSSCKFWObject_GetAttributeCount andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetAttributeTypes andre@0: * andre@0: */ andre@0: NSS_EXTERN CK_RV andre@0: NSSCKFWObject_GetAttributeTypes andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_ATTRIBUTE_TYPE_PTR typeArray, andre@0: CK_ULONG ulCount andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetAttributeSize andre@0: * andre@0: */ andre@0: NSS_EXTERN CK_ULONG andre@0: NSSCKFWObject_GetAttributeSize andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_ATTRIBUTE_TYPE attribute, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetAttribute andre@0: * andre@0: */ andre@0: NSS_EXTERN NSSItem * andre@0: NSSCKFWObject_GetAttribute andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_ATTRIBUTE_TYPE attribute, andre@0: NSSItem *itemOpt, andre@0: NSSArena *arenaOpt, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWObject_GetObjectSize andre@0: * andre@0: */ andre@0: NSS_EXTERN CK_ULONG andre@0: NSSCKFWObject_GetObjectSize andre@0: ( andre@0: NSSCKFWObject *fwObject, andre@0: CK_RV *pError andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWFindObjects andre@0: * andre@0: * NSSCKFWFindObjects_GetMDFindObjects andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWFindObjects_GetMDFindObjects andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN NSSCKMDFindObjects * andre@0: NSSCKFWFindObjects_GetMDFindObjects andre@0: ( andre@0: NSSCKFWFindObjects * andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWMutex andre@0: * andre@0: * NSSCKFWMutex_Destroy andre@0: * NSSCKFWMutex_Lock andre@0: * NSSCKFWMutex_Unlock andre@0: * andre@0: */ andre@0: andre@0: /* andre@0: * NSSCKFWMutex_Destroy andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_RV andre@0: NSSCKFWMutex_Destroy andre@0: ( andre@0: NSSCKFWMutex *mutex andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWMutex_Lock andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_RV andre@0: NSSCKFWMutex_Lock andre@0: ( andre@0: NSSCKFWMutex *mutex andre@0: ); andre@0: andre@0: /* andre@0: * NSSCKFWMutex_Unlock andre@0: * andre@0: */ andre@0: andre@0: NSS_EXTERN CK_RV andre@0: NSSCKFWMutex_Unlock andre@0: ( andre@0: NSSCKFWMutex *mutex andre@0: ); andre@0: andre@0: #endif /* NSSCKFW_H */ andre@0: