1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050 |
- /* 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 CKFW_H
- #define CKFW_H
- /*
- * ckfw.h
- *
- * This file prototypes the private calls of the NSS Cryptoki Framework.
- */
- #ifndef NSSBASET_H
- #include "nssbaset.h"
- #endif /* NSSBASET_H */
- #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 */
- /*
- * NSSCKFWInstance
- *
- * -- create/destroy --
- * nssCKFWInstance_Create
- * nssCKFWInstance_Destroy
- *
- * -- implement public accessors --
- * nssCKFWInstance_GetMDInstance
- * nssCKFWInstance_GetArena
- * nssCKFWInstance_MayCreatePthreads
- * nssCKFWInstance_CreateMutex
- * nssCKFWInstance_GetConfigurationData
- * nssCKFWInstance_GetInitArgs
- *
- * -- private accessors --
- * nssCKFWInstance_CreateSessionHandle
- * nssCKFWInstance_ResolveSessionHandle
- * nssCKFWInstance_DestroySessionHandle
- * nssCKFWInstance_FindSessionHandle
- * nssCKFWInstance_CreateObjectHandle
- * nssCKFWInstance_ResolveObjectHandle
- * nssCKFWInstance_DestroyObjectHandle
- * nssCKFWInstance_FindObjectHandle
- *
- * -- module fronts --
- * nssCKFWInstance_GetNSlots
- * nssCKFWInstance_GetCryptokiVersion
- * nssCKFWInstance_GetManufacturerID
- * nssCKFWInstance_GetFlags
- * nssCKFWInstance_GetLibraryDescription
- * nssCKFWInstance_GetLibraryVersion
- * nssCKFWInstance_GetModuleHandlesSessionObjects
- * nssCKFWInstance_GetSlots
- * nssCKFWInstance_WaitForSlotEvent
- *
- * -- debugging versions only --
- * nssCKFWInstance_verifyPointer
- */
- /*
- * nssCKFWInstance_Create
- *
- */
- NSS_EXTERN NSSCKFWInstance *
- nssCKFWInstance_Create(
- CK_C_INITIALIZE_ARGS_PTR pInitArgs,
- CryptokiLockingState LockingState,
- NSSCKMDInstance *mdInstance,
- CK_RV *pError);
- /*
- * nssCKFWInstance_Destroy
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWInstance_Destroy(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetMDInstance
- *
- */
- NSS_EXTERN NSSCKMDInstance *
- nssCKFWInstance_GetMDInstance(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetArena
- *
- */
- NSS_EXTERN NSSArena *
- nssCKFWInstance_GetArena(
- NSSCKFWInstance *fwInstance,
- CK_RV *pError);
- /*
- * nssCKFWInstance_MayCreatePthreads
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWInstance_MayCreatePthreads(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_CreateMutex
- *
- */
- NSS_EXTERN NSSCKFWMutex *
- nssCKFWInstance_CreateMutex(
- NSSCKFWInstance *fwInstance,
- NSSArena *arena,
- CK_RV *pError);
- /*
- * nssCKFWInstance_GetConfigurationData
- *
- */
- NSS_EXTERN NSSUTF8 *
- nssCKFWInstance_GetConfigurationData(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetInitArgs
- *
- */
- NSS_EXTERN CK_C_INITIALIZE_ARGS_PTR
- nssCKFWInstance_GetInitArgs(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_CreateSessionHandle
- *
- */
- NSS_EXTERN CK_SESSION_HANDLE
- nssCKFWInstance_CreateSessionHandle(
- NSSCKFWInstance *fwInstance,
- NSSCKFWSession *fwSession,
- CK_RV *pError);
- /*
- * nssCKFWInstance_ResolveSessionHandle
- *
- */
- NSS_EXTERN NSSCKFWSession *
- nssCKFWInstance_ResolveSessionHandle(
- NSSCKFWInstance *fwInstance,
- CK_SESSION_HANDLE hSession);
- /*
- * nssCKFWInstance_DestroySessionHandle
- *
- */
- NSS_EXTERN void
- nssCKFWInstance_DestroySessionHandle(
- NSSCKFWInstance *fwInstance,
- CK_SESSION_HANDLE hSession);
- /*
- * nssCKFWInstance_FindSessionHandle
- *
- */
- NSS_EXTERN CK_SESSION_HANDLE
- nssCKFWInstance_FindSessionHandle(
- NSSCKFWInstance *fwInstance,
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWInstance_CreateObjectHandle
- *
- */
- NSS_EXTERN CK_OBJECT_HANDLE
- nssCKFWInstance_CreateObjectHandle(
- NSSCKFWInstance *fwInstance,
- NSSCKFWObject *fwObject,
- CK_RV *pError);
- /*
- * nssCKFWInstance_ResolveObjectHandle
- *
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWInstance_ResolveObjectHandle(
- NSSCKFWInstance *fwInstance,
- CK_OBJECT_HANDLE hObject);
- /*
- * nssCKFWInstance_ReassignObjectHandle
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWInstance_ReassignObjectHandle(
- NSSCKFWInstance *fwInstance,
- CK_OBJECT_HANDLE hObject,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWInstance_DestroyObjectHandle
- *
- */
- NSS_EXTERN void
- nssCKFWInstance_DestroyObjectHandle(
- NSSCKFWInstance *fwInstance,
- CK_OBJECT_HANDLE hObject);
- /*
- * nssCKFWInstance_FindObjectHandle
- *
- */
- NSS_EXTERN CK_OBJECT_HANDLE
- nssCKFWInstance_FindObjectHandle(
- NSSCKFWInstance *fwInstance,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWInstance_GetNSlots
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWInstance_GetNSlots(
- NSSCKFWInstance *fwInstance,
- CK_RV *pError);
- /*
- * nssCKFWInstance_GetCryptokiVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWInstance_GetCryptokiVersion(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetManufacturerID
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWInstance_GetManufacturerID(
- NSSCKFWInstance *fwInstance,
- CK_CHAR manufacturerID[32]);
- /*
- * nssCKFWInstance_GetFlags
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWInstance_GetFlags(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetLibraryDescription
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWInstance_GetLibraryDescription(
- NSSCKFWInstance *fwInstance,
- CK_CHAR libraryDescription[32]);
- /*
- * nssCKFWInstance_GetLibraryVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWInstance_GetLibraryVersion(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetModuleHandlesSessionObjects
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWInstance_GetModuleHandlesSessionObjects(
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWInstance_GetSlots
- *
- */
- NSS_EXTERN NSSCKFWSlot **
- nssCKFWInstance_GetSlots(
- NSSCKFWInstance *fwInstance,
- CK_RV *pError);
- /*
- * nssCKFWInstance_WaitForSlotEvent
- *
- */
- NSS_EXTERN NSSCKFWSlot *
- nssCKFWInstance_WaitForSlotEvent(
- NSSCKFWInstance *fwInstance,
- CK_BBOOL block,
- CK_RV *pError);
- /*
- * nssCKFWInstance_verifyPointer
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWInstance_verifyPointer(
- const NSSCKFWInstance *fwInstance);
- /*
- * NSSCKFWSlot
- *
- * -- create/destroy --
- * nssCKFWSlot_Create
- * nssCKFWSlot_Destroy
- *
- * -- implement public accessors --
- * nssCKFWSlot_GetMDSlot
- * nssCKFWSlot_GetFWInstance
- * nssCKFWSlot_GetMDInstance
- *
- * -- private accessors --
- * nssCKFWSlot_GetSlotID
- *
- * -- module fronts --
- * nssCKFWSlot_GetSlotDescription
- * nssCKFWSlot_GetManufacturerID
- * nssCKFWSlot_GetTokenPresent
- * nssCKFWSlot_GetRemovableDevice
- * nssCKFWSlot_GetHardwareSlot
- * nssCKFWSlot_GetHardwareVersion
- * nssCKFWSlot_GetFirmwareVersion
- * nssCKFWSlot_GetToken
- */
- /*
- * nssCKFWSlot_Create
- *
- */
- NSS_EXTERN NSSCKFWSlot *
- nssCKFWSlot_Create(
- NSSCKFWInstance *fwInstance,
- NSSCKMDSlot *mdSlot,
- CK_SLOT_ID slotID,
- CK_RV *pError);
- /*
- * nssCKFWSlot_Destroy
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSlot_Destroy(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetMDSlot
- *
- */
- NSS_EXTERN NSSCKMDSlot *
- nssCKFWSlot_GetMDSlot(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetFWInstance
- *
- */
- NSS_EXTERN NSSCKFWInstance *
- nssCKFWSlot_GetFWInstance(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetMDInstance
- *
- */
- NSS_EXTERN NSSCKMDInstance *
- nssCKFWSlot_GetMDInstance(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetSlotID
- *
- */
- NSS_EXTERN CK_SLOT_ID
- nssCKFWSlot_GetSlotID(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetSlotDescription
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSlot_GetSlotDescription(
- NSSCKFWSlot *fwSlot,
- CK_CHAR slotDescription[64]);
- /*
- * nssCKFWSlot_GetManufacturerID
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSlot_GetManufacturerID(
- NSSCKFWSlot *fwSlot,
- CK_CHAR manufacturerID[32]);
- /*
- * nssCKFWSlot_GetTokenPresent
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWSlot_GetTokenPresent(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetRemovableDevice
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWSlot_GetRemovableDevice(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetHardwareSlot
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWSlot_GetHardwareSlot(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetHardwareVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWSlot_GetHardwareVersion(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetFirmwareVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWSlot_GetFirmwareVersion(
- NSSCKFWSlot *fwSlot);
- /*
- * nssCKFWSlot_GetToken
- *
- */
- NSS_EXTERN NSSCKFWToken *
- nssCKFWSlot_GetToken(
- NSSCKFWSlot *fwSlot,
- CK_RV *pError);
- /*
- * nssCKFWSlot_ClearToken
- *
- */
- NSS_EXTERN void
- nssCKFWSlot_ClearToken(
- NSSCKFWSlot *fwSlot);
- /*
- * NSSCKFWToken
- *
- * -- create/destroy --
- * nssCKFWToken_Create
- * nssCKFWToken_Destroy
- *
- * -- implement public accessors --
- * nssCKFWToken_GetMDToken
- * nssCKFWToken_GetFWSlot
- * nssCKFWToken_GetMDSlot
- * nssCKFWToken_GetSessionState
- *
- * -- private accessors --
- * nssCKFWToken_SetSessionState
- * nssCKFWToken_RemoveSession
- * nssCKFWToken_CloseAllSessions
- * nssCKFWToken_GetSessionCount
- * nssCKFWToken_GetRwSessionCount
- * nssCKFWToken_GetRoSessionCount
- * nssCKFWToken_GetSessionObjectHash
- * nssCKFWToken_GetMDObjectHash
- * nssCKFWToken_GetObjectHandleHash
- *
- * -- module fronts --
- * nssCKFWToken_InitToken
- * nssCKFWToken_GetLabel
- * nssCKFWToken_GetManufacturerID
- * nssCKFWToken_GetModel
- * nssCKFWToken_GetSerialNumber
- * nssCKFWToken_GetHasRNG
- * nssCKFWToken_GetIsWriteProtected
- * nssCKFWToken_GetLoginRequired
- * nssCKFWToken_GetUserPinInitialized
- * nssCKFWToken_GetRestoreKeyNotNeeded
- * nssCKFWToken_GetHasClockOnToken
- * nssCKFWToken_GetHasProtectedAuthenticationPath
- * nssCKFWToken_GetSupportsDualCryptoOperations
- * nssCKFWToken_GetMaxSessionCount
- * nssCKFWToken_GetMaxRwSessionCount
- * nssCKFWToken_GetMaxPinLen
- * nssCKFWToken_GetMinPinLen
- * nssCKFWToken_GetTotalPublicMemory
- * nssCKFWToken_GetFreePublicMemory
- * nssCKFWToken_GetTotalPrivateMemory
- * nssCKFWToken_GetFreePrivateMemory
- * nssCKFWToken_GetHardwareVersion
- * nssCKFWToken_GetFirmwareVersion
- * nssCKFWToken_GetUTCTime
- * nssCKFWToken_OpenSession
- * nssCKFWToken_GetMechanismCount
- * nssCKFWToken_GetMechanismTypes
- * nssCKFWToken_GetMechanism
- */
- /*
- * nssCKFWToken_Create
- *
- */
- NSS_EXTERN NSSCKFWToken *
- nssCKFWToken_Create(
- NSSCKFWSlot *fwSlot,
- NSSCKMDToken *mdToken,
- CK_RV *pError);
- /*
- * nssCKFWToken_Destroy
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_Destroy(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMDToken
- *
- */
- NSS_EXTERN NSSCKMDToken *
- nssCKFWToken_GetMDToken(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetArena
- *
- */
- NSS_EXTERN NSSArena *
- nssCKFWToken_GetArena(
- NSSCKFWToken *fwToken,
- CK_RV *pError);
- /*
- * nssCKFWToken_GetFWSlot
- *
- */
- NSS_EXTERN NSSCKFWSlot *
- nssCKFWToken_GetFWSlot(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMDSlot
- *
- */
- NSS_EXTERN NSSCKMDSlot *
- nssCKFWToken_GetMDSlot(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetSessionState
- *
- */
- NSS_EXTERN CK_STATE
- nssCKFWToken_GetSessionState(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_InitToken
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_InitToken(
- NSSCKFWToken *fwToken,
- NSSItem *pin,
- NSSUTF8 *label);
- /*
- * nssCKFWToken_GetLabel
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetLabel(
- NSSCKFWToken *fwToken,
- CK_CHAR label[32]);
- /*
- * nssCKFWToken_GetManufacturerID
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetManufacturerID(
- NSSCKFWToken *fwToken,
- CK_CHAR manufacturerID[32]);
- /*
- * nssCKFWToken_GetModel
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetModel(
- NSSCKFWToken *fwToken,
- CK_CHAR model[16]);
- /*
- * nssCKFWToken_GetSerialNumber
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetSerialNumber(
- NSSCKFWToken *fwToken,
- CK_CHAR serialNumber[16]);
- /*
- * nssCKFWToken_GetHasRNG
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetHasRNG(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetIsWriteProtected
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetIsWriteProtected(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetLoginRequired
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetLoginRequired(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetUserPinInitialized
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetUserPinInitialized(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetRestoreKeyNotNeeded
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetRestoreKeyNotNeeded(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetHasClockOnToken
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetHasClockOnToken(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetHasProtectedAuthenticationPath
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetHasProtectedAuthenticationPath(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetSupportsDualCryptoOperations
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWToken_GetSupportsDualCryptoOperations(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMaxSessionCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetMaxSessionCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMaxRwSessionCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetMaxRwSessionCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMaxPinLen
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetMaxPinLen(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMinPinLen
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetMinPinLen(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetTotalPublicMemory
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetTotalPublicMemory(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetFreePublicMemory
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetFreePublicMemory(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetTotalPrivateMemory
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetTotalPrivateMemory(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetFreePrivateMemory
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetFreePrivateMemory(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetHardwareVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWToken_GetHardwareVersion(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetFirmwareVersion
- *
- */
- NSS_EXTERN CK_VERSION
- nssCKFWToken_GetFirmwareVersion(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetUTCTime
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetUTCTime(
- NSSCKFWToken *fwToken,
- CK_CHAR utcTime[16]);
- /*
- * nssCKFWToken_OpenSession
- *
- */
- NSS_EXTERN NSSCKFWSession *
- nssCKFWToken_OpenSession(
- NSSCKFWToken *fwToken,
- CK_BBOOL rw,
- CK_VOID_PTR pApplication,
- CK_NOTIFY Notify,
- CK_RV *pError);
- /*
- * nssCKFWToken_GetMechanismCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetMechanismCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMechanismTypes
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_GetMechanismTypes(
- NSSCKFWToken *fwToken,
- CK_MECHANISM_TYPE types[]);
- /*
- * nssCKFWToken_GetMechanism
- *
- */
- NSS_EXTERN NSSCKFWMechanism *
- nssCKFWToken_GetMechanism(
- NSSCKFWToken *fwToken,
- CK_MECHANISM_TYPE which,
- CK_RV *pError);
- /*
- * nssCKFWToken_SetSessionState
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_SetSessionState(
- NSSCKFWToken *fwToken,
- CK_STATE newState);
- /*
- * nssCKFWToken_RemoveSession
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_RemoveSession(
- NSSCKFWToken *fwToken,
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWToken_CloseAllSessions
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWToken_CloseAllSessions(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetSessionCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetSessionCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetRwSessionCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetRwSessionCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetRoSessionCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWToken_GetRoSessionCount(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetSessionObjectHash
- *
- */
- NSS_EXTERN nssCKFWHash *
- nssCKFWToken_GetSessionObjectHash(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetMDObjectHash
- *
- */
- NSS_EXTERN nssCKFWHash *
- nssCKFWToken_GetMDObjectHash(
- NSSCKFWToken *fwToken);
- /*
- * nssCKFWToken_GetObjectHandleHash
- *
- */
- NSS_EXTERN nssCKFWHash *
- nssCKFWToken_GetObjectHandleHash(
- NSSCKFWToken *fwToken);
- /*
- * NSSCKFWMechanism
- *
- * -- create/destroy --
- * nssCKFWMechanism_Create
- * nssCKFWMechanism_Destroy
- *
- * -- implement public accessors --
- * nssCKFWMechanism_GetMDMechanism
- *
- * -- private accessors --
- *
- * -- module fronts --
- * nssCKFWMechanism_GetMinKeySize
- * nssCKFWMechanism_GetMaxKeySize
- * nssCKFWMechanism_GetInHardware
- * nssCKFWMechanism_GetCanEncrypt
- * nssCKFWMechanism_GetCanDecrypt
- * nssCKFWMechanism_GetCanDigest
- * nssCKFWMechanism_GetCanSignRecover
- * nssCKFWMechanism_GetCanVerify
- * nssCKFWMechanism_GetCanVerifyRecover
- * nssCKFWMechanism_GetCanGenerate
- * nssCKFWMechanism_GetCanGenerateKeyPair
- * nssCKFWMechanism_GetCanWrap
- * nssCKFWMechanism_GetCanUnwrap
- * nssCKFWMechanism_GetCanDerive
- * nssCKFWMechanism_EncryptInit
- * nssCKFWMechanism_DecryptInit
- * nssCKFWMechanism_DigestInit
- * nssCKFWMechanism_SignInit
- * nssCKFWMechanism_SignRecoverInit
- * nssCKFWMechanism_VerifyInit
- * nssCKFWMechanism_VerifyRecoverInit
- * nssCKFWMechanism_GenerateKey
- * nssCKFWMechanism_GenerateKeyPair
- * nssCKFWMechanism_GetWrapKeyLength
- * nssCKFWMechanism_WrapKey
- * nssCKFWMechanism_UnwrapKey
- * nssCKFWMechanism_DeriveKey
- */
- /*
- * nssCKFWMechanism_Create
- *
- */
- NSS_EXTERN NSSCKFWMechanism *
- nssCKFWMechanism_Create(
- NSSCKMDMechanism *mdMechanism,
- NSSCKMDToken *mdToken,
- NSSCKFWToken *fwToken,
- NSSCKMDInstance *mdInstance,
- NSSCKFWInstance *fwInstance);
- /*
- * nssCKFWMechanism_Destroy
- *
- */
- NSS_EXTERN void
- nssCKFWMechanism_Destroy(
- NSSCKFWMechanism *fwMechanism);
- /*
- * nssCKFWMechanism_GetMDMechanism
- *
- */
- NSS_EXTERN NSSCKMDMechanism *
- nssCKFWMechanism_GetMDMechanism(
- NSSCKFWMechanism *fwMechanism);
- /*
- * nssCKFWMechanism_GetMinKeySize
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWMechanism_GetMinKeySize(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetMaxKeySize
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWMechanism_GetMaxKeySize(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetInHardware
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetInHardware(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * the following are determined automatically by which of the cryptographic
- * functions are defined for this mechanism.
- */
- /*
- * nssCKFWMechanism_GetCanEncrypt
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanEncrypt(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanDecrypt
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanDecrypt(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanDigest
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanDigest(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanSign
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanSign(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanSignRecover
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanSignRecover(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanVerify
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanVerify(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanVerifyRecover
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanVerifyRecover(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanGenerate
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanGenerate(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanGenerateKeyPair
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanGenerateKeyPair(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanWrap
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanWrap(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanUnwrap
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanUnwrap(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GetCanDerive
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWMechanism_GetCanDerive(
- NSSCKFWMechanism *fwMechanism,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_EncryptInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_EncryptInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_DecryptInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_DecryptInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_DigestInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_DigestInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWMechanism_SignInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_SignInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_SignRecoverInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_SignRecoverInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_VerifyInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_VerifyInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_VerifyRecoverInit
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_VerifyRecoverInit(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM *pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWMechanism_GenerateKey
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWMechanism_GenerateKey(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_GenerateKeyPair
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_GenerateKeyPair(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- CK_ATTRIBUTE_PTR pPublicKeyTemplate,
- CK_ULONG ulPublicKeyAttributeCount,
- CK_ATTRIBUTE_PTR pPrivateKeyTemplate,
- CK_ULONG ulPrivateKeyAttributeCount,
- NSSCKFWObject **fwPublicKeyObject,
- NSSCKFWObject **fwPrivateKeyObject);
- /*
- * nssCKFWMechanism_GetWrapKeyLength
- */
- NSS_EXTERN CK_ULONG
- nssCKFWMechanism_GetWrapKeyLength(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwWrappingKeyObject,
- NSSCKFWObject *fwObject,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_WrapKey
- */
- NSS_EXTERN CK_RV
- nssCKFWMechanism_WrapKey(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwWrappingKeyObject,
- NSSCKFWObject *fwObject,
- NSSItem *wrappedKey);
- /*
- * nssCKFWMechanism_UnwrapKey
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWMechanism_UnwrapKey(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwWrappingKeyObject,
- NSSItem *wrappedKey,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * nssCKFWMechanism_DeriveKey
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWMechanism_DeriveKey(
- NSSCKFWMechanism *fwMechanism,
- CK_MECHANISM_PTR pMechanism,
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwBaseKeyObject,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * NSSCKFWCryptoOperation
- *
- * -- create/destroy --
- * nssCKFWCryptoOperation_Create
- * nssCKFWCryptoOperation_Destroy
- *
- * -- implement public accessors --
- * nssCKFWCryptoOperation_GetMDCryptoOperation
- * nssCKFWCryptoOperation_GetType
- *
- * -- private accessors --
- *
- * -- module fronts --
- * nssCKFWCryptoOperation_GetFinalLength
- * nssCKFWCryptoOperation_GetOperationLength
- * nssCKFWCryptoOperation_Final
- * nssCKFWCryptoOperation_Update
- * nssCKFWCryptoOperation_DigestUpdate
- * nssCKFWCryptoOperation_DigestKey
- * nssCKFWCryptoOperation_UpdateFinal
- */
- /*
- * nssCKFWCrytoOperation_Create
- */
- NSS_EXTERN NSSCKFWCryptoOperation *
- nssCKFWCryptoOperation_Create(
- NSSCKMDCryptoOperation *mdOperation,
- NSSCKMDSession *mdSession,
- NSSCKFWSession *fwSession,
- NSSCKMDToken *mdToken,
- NSSCKFWToken *fwToken,
- NSSCKMDInstance *mdInstance,
- NSSCKFWInstance *fwInstance,
- NSSCKFWCryptoOperationType type,
- CK_RV *pError);
- /*
- * nssCKFWCryptoOperation_Destroy
- */
- NSS_EXTERN void
- nssCKFWCryptoOperation_Destroy(
- NSSCKFWCryptoOperation *fwOperation);
- /*
- * nssCKFWCryptoOperation_GetMDCryptoOperation
- */
- NSS_EXTERN NSSCKMDCryptoOperation *
- nssCKFWCryptoOperation_GetMDCryptoOperation(
- NSSCKFWCryptoOperation *fwOperation);
- /*
- * nssCKFWCryptoOperation_GetType
- */
- NSS_EXTERN NSSCKFWCryptoOperationType
- nssCKFWCryptoOperation_GetType(
- NSSCKFWCryptoOperation *fwOperation);
- /*
- * nssCKFWCryptoOperation_GetFinalLength
- */
- NSS_EXTERN CK_ULONG
- nssCKFWCryptoOperation_GetFinalLength(
- NSSCKFWCryptoOperation *fwOperation,
- CK_RV *pError);
- /*
- * nssCKFWCryptoOperation_GetOperationLength
- */
- NSS_EXTERN CK_ULONG
- nssCKFWCryptoOperation_GetOperationLength(
- NSSCKFWCryptoOperation *fwOperation,
- NSSItem *inputBuffer,
- CK_RV *pError);
- /*
- * nssCKFWCryptoOperation_Final
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_Final(
- NSSCKFWCryptoOperation *fwOperation,
- NSSItem *outputBuffer);
- /*
- * nssCKFWCryptoOperation_Update
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_Update(
- NSSCKFWCryptoOperation *fwOperation,
- NSSItem *inputBuffer,
- NSSItem *outputBuffer);
- /*
- * nssCKFWCryptoOperation_DigestUpdate
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_DigestUpdate(
- NSSCKFWCryptoOperation *fwOperation,
- NSSItem *inputBuffer);
- /*
- * nssCKFWCryptoOperation_DigestKey
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_DigestKey(
- NSSCKFWCryptoOperation *fwOperation,
- NSSCKFWObject *fwKey);
- /*
- * nssCKFWCryptoOperation_UpdateFinal
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_UpdateFinal(
- NSSCKFWCryptoOperation *fwOperation,
- NSSItem *inputBuffer,
- NSSItem *outputBuffer);
- /*
- * nssCKFWCryptoOperation_UpdateCombo
- */
- NSS_EXTERN CK_RV
- nssCKFWCryptoOperation_UpdateCombo(
- NSSCKFWCryptoOperation *fwOperation,
- NSSCKFWCryptoOperation *fwPeerOperation,
- NSSItem *inputBuffer,
- NSSItem *outputBuffer);
- /*
- * NSSCKFWSession
- *
- * -- create/destroy --
- * nssCKFWSession_Create
- * nssCKFWSession_Destroy
- *
- * -- implement public accessors --
- * nssCKFWSession_GetMDSession
- * nssCKFWSession_GetArena
- * nssCKFWSession_CallNotification
- * nssCKFWSession_IsRWSession
- * nssCKFWSession_IsSO
- * nssCKFWSession_GetCurrentCryptoOperation
- *
- * -- private accessors --
- * nssCKFWSession_GetFWSlot
- * nssCKFWSession_GetSessionState
- * nssCKFWSession_SetFWFindObjects
- * nssCKFWSession_GetFWFindObjects
- * nssCKFWSession_SetMDSession
- * nssCKFWSession_SetHandle
- * nssCKFWSession_GetHandle
- * nssCKFWSession_RegisterSessionObject
- * nssCKFWSession_DeregisterSessionObject
- * nssCKFWSession_SetCurrentCryptoOperation
- *
- * -- module fronts --
- * nssCKFWSession_GetDeviceError
- * nssCKFWSession_Login
- * nssCKFWSession_Logout
- * nssCKFWSession_InitPIN
- * nssCKFWSession_SetPIN
- * nssCKFWSession_GetOperationStateLen
- * nssCKFWSession_GetOperationState
- * nssCKFWSession_SetOperationState
- * nssCKFWSession_CreateObject
- * nssCKFWSession_CopyObject
- * nssCKFWSession_FindObjectsInit
- * nssCKFWSession_SeedRandom
- * nssCKFWSession_GetRandom
- * nssCKFWSession_Final
- * nssCKFWSession_Update
- * nssCKFWSession_DigestUpdate
- * nssCKFWSession_DigestKey
- * nssCKFWSession_UpdateFinal
- * nssCKFWSession_UpdateCombo
- */
- /*
- * nssCKFWSession_Create
- *
- */
- NSS_EXTERN NSSCKFWSession *
- nssCKFWSession_Create(
- NSSCKFWToken *fwToken,
- CK_BBOOL rw,
- CK_VOID_PTR pApplication,
- CK_NOTIFY Notify,
- CK_RV *pError);
- /*
- * nssCKFWSession_Destroy
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_Destroy(
- NSSCKFWSession *fwSession,
- CK_BBOOL removeFromTokenHash);
- /*
- * nssCKFWSession_GetMDSession
- *
- */
- NSS_EXTERN NSSCKMDSession *
- nssCKFWSession_GetMDSession(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_GetArena
- *
- */
- NSS_EXTERN NSSArena *
- nssCKFWSession_GetArena(
- NSSCKFWSession *fwSession,
- CK_RV *pError);
- /*
- * nssCKFWSession_CallNotification
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_CallNotification(
- NSSCKFWSession *fwSession,
- CK_NOTIFICATION event);
- /*
- * nssCKFWSession_IsRWSession
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWSession_IsRWSession(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_IsSO
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWSession_IsSO(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_GetFWSlot
- *
- */
- NSS_EXTERN NSSCKFWSlot *
- nssCKFWSession_GetFWSlot(
- NSSCKFWSession *fwSession);
- /*
- * nssCFKWSession_GetSessionState
- *
- */
- NSS_EXTERN CK_STATE
- nssCKFWSession_GetSessionState(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_SetFWFindObjects
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SetFWFindObjects(
- NSSCKFWSession *fwSession,
- NSSCKFWFindObjects *fwFindObjects);
- /*
- * nssCKFWSession_GetFWFindObjects
- *
- */
- NSS_EXTERN NSSCKFWFindObjects *
- nssCKFWSession_GetFWFindObjects(
- NSSCKFWSession *fwSesssion,
- CK_RV *pError);
- /*
- * nssCKFWSession_SetMDSession
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SetMDSession(
- NSSCKFWSession *fwSession,
- NSSCKMDSession *mdSession);
- /*
- * nssCKFWSession_SetHandle
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SetHandle(
- NSSCKFWSession *fwSession,
- CK_SESSION_HANDLE hSession);
- /*
- * nssCKFWSession_GetHandle
- *
- */
- NSS_EXTERN CK_SESSION_HANDLE
- nssCKFWSession_GetHandle(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_RegisterSessionObject
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_RegisterSessionObject(
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWSession_DeregisterSessionObject
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_DeregisterSessionObject(
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWSession_GetDeviceError
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWSession_GetDeviceError(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_Login
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_Login(
- NSSCKFWSession *fwSession,
- CK_USER_TYPE userType,
- NSSItem *pin);
- /*
- * nssCKFWSession_Logout
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_Logout(
- NSSCKFWSession *fwSession);
- /*
- * nssCKFWSession_InitPIN
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_InitPIN(
- NSSCKFWSession *fwSession,
- NSSItem *pin);
- /*
- * nssCKFWSession_SetPIN
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SetPIN(
- NSSCKFWSession *fwSession,
- const NSSItem *oldPin,
- NSSItem *newPin);
- /*
- * nssCKFWSession_GetOperationStateLen
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWSession_GetOperationStateLen(
- NSSCKFWSession *fwSession,
- CK_RV *pError);
- /*
- * nssCKFWSession_GetOperationState
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_GetOperationState(
- NSSCKFWSession *fwSession,
- NSSItem *buffer);
- /*
- * nssCKFWSession_SetOperationState
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SetOperationState(
- NSSCKFWSession *fwSession,
- NSSItem *state,
- NSSCKFWObject *encryptionKey,
- NSSCKFWObject *authenticationKey);
- /*
- * nssCKFWSession_CreateObject
- *
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWSession_CreateObject(
- NSSCKFWSession *fwSession,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * nssCKFWSession_CopyObject
- *
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWSession_CopyObject(
- NSSCKFWSession *fwSession,
- NSSCKFWObject *object,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * nssCKFWSession_FindObjectsInit
- *
- */
- NSS_EXTERN NSSCKFWFindObjects *
- nssCKFWSession_FindObjectsInit(
- NSSCKFWSession *fwSession,
- CK_ATTRIBUTE_PTR pTemplate,
- CK_ULONG ulAttributeCount,
- CK_RV *pError);
- /*
- * nssCKFWSession_SetCurrentCryptoOperation
- */
- NSS_IMPLEMENT void
- nssCKFWSession_SetCurrentCryptoOperation(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperation *fwOperation,
- NSSCKFWCryptoOperationState state);
- /*
- * nssCKFWSession_GetCurrentCryptoOperation
- */
- NSS_IMPLEMENT NSSCKFWCryptoOperation *
- nssCKFWSession_GetCurrentCryptoOperation(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationState state);
- /*
- * nssCKFWSession_Final
- * (terminate a cryptographic operation and get the result)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_Final(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationType type,
- NSSCKFWCryptoOperationState state,
- CK_BYTE_PTR outBuf,
- CK_ULONG_PTR outBufLen);
- /*
- * nssCKFWSession_Update
- * (get the next step of an encrypt/decrypt operation)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_Update(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationType type,
- NSSCKFWCryptoOperationState state,
- CK_BYTE_PTR inBuf,
- CK_ULONG inBufLen,
- CK_BYTE_PTR outBuf,
- CK_ULONG_PTR outBufLen);
- /*
- * nssCKFWSession_DigestUpdate
- * (do the next step of an digest/sign/verify operation)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_DigestUpdate(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationType type,
- NSSCKFWCryptoOperationState state,
- CK_BYTE_PTR inBuf,
- CK_ULONG inBufLen);
- /*
- * nssCKFWSession_DigestKey
- * (do the next step of an digest/sign/verify operation)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_DigestKey(
- NSSCKFWSession *fwSession,
- NSSCKFWObject *fwKey);
- /*
- * nssCKFWSession_UpdateFinal
- * (do a single-step of a cryptographic operation and get the result)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_UpdateFinal(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationType type,
- NSSCKFWCryptoOperationState state,
- CK_BYTE_PTR inBuf,
- CK_ULONG inBufLen,
- CK_BYTE_PTR outBuf,
- CK_ULONG_PTR outBufLen);
- /*
- * nssCKFWSession_UpdateCombo
- * (do a combination encrypt/decrypt and sign/digest/verify operation)
- */
- NSS_IMPLEMENT CK_RV
- nssCKFWSession_UpdateCombo(
- NSSCKFWSession *fwSession,
- NSSCKFWCryptoOperationType encryptType,
- NSSCKFWCryptoOperationType digestType,
- NSSCKFWCryptoOperationState digestState,
- CK_BYTE_PTR inBuf,
- CK_ULONG inBufLen,
- CK_BYTE_PTR outBuf,
- CK_ULONG_PTR outBufLen);
- /*
- * nssCKFWSession_SeedRandom
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_SeedRandom(
- NSSCKFWSession *fwSession,
- NSSItem *seed);
- /*
- * nssCKFWSession_GetRandom
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWSession_GetRandom(
- NSSCKFWSession *fwSession,
- NSSItem *buffer);
- /*
- * NSSCKFWObject
- *
- * -- create/destroy --
- * nssCKFWObject_Create
- * nssCKFWObject_Finalize
- * nssCKFWObject_Destroy
- *
- * -- implement public accessors --
- * nssCKFWObject_GetMDObject
- * nssCKFWObject_GetArena
- *
- * -- private accessors --
- * nssCKFWObject_SetHandle
- * nssCKFWObject_GetHandle
- *
- * -- module fronts --
- * nssCKFWObject_IsTokenObject
- * nssCKFWObject_GetAttributeCount
- * nssCKFWObject_GetAttributeTypes
- * nssCKFWObject_GetAttributeSize
- * nssCKFWObject_GetAttribute
- * nssCKFWObject_SetAttribute
- * nssCKFWObject_GetObjectSize
- */
- /*
- * nssCKFWObject_Create
- *
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWObject_Create(
- NSSArena *arena,
- NSSCKMDObject *mdObject,
- NSSCKFWSession *fwSession,
- NSSCKFWToken *fwToken,
- NSSCKFWInstance *fwInstance,
- CK_RV *pError);
- /*
- * nssCKFWObject_Finalize
- *
- */
- NSS_EXTERN void
- nssCKFWObject_Finalize(
- NSSCKFWObject *fwObject,
- PRBool removeFromHash);
- /*
- * nssCKFWObject_Destroy
- *
- */
- NSS_EXTERN void
- nssCKFWObject_Destroy(
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWObject_GetMDObject
- *
- */
- NSS_EXTERN NSSCKMDObject *
- nssCKFWObject_GetMDObject(
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWObject_GetArena
- *
- */
- NSS_EXTERN NSSArena *
- nssCKFWObject_GetArena(
- NSSCKFWObject *fwObject,
- CK_RV *pError);
- /*
- * nssCKFWObject_SetHandle
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWObject_SetHandle(
- NSSCKFWObject *fwObject,
- CK_OBJECT_HANDLE hObject);
- /*
- * nssCKFWObject_GetHandle
- *
- */
- NSS_EXTERN CK_OBJECT_HANDLE
- nssCKFWObject_GetHandle(
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWObject_IsTokenObject
- *
- */
- NSS_EXTERN CK_BBOOL
- nssCKFWObject_IsTokenObject(
- NSSCKFWObject *fwObject);
- /*
- * nssCKFWObject_GetAttributeCount
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWObject_GetAttributeCount(
- NSSCKFWObject *fwObject,
- CK_RV *pError);
- /*
- * nssCKFWObject_GetAttributeTypes
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWObject_GetAttributeTypes(
- NSSCKFWObject *fwObject,
- CK_ATTRIBUTE_TYPE_PTR typeArray,
- CK_ULONG ulCount);
- /*
- * nssCKFWObject_GetAttributeSize
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWObject_GetAttributeSize(
- NSSCKFWObject *fwObject,
- CK_ATTRIBUTE_TYPE attribute,
- CK_RV *pError);
- /*
- * nssCKFWObject_GetAttribute
- *
- * Usual NSS allocation rules:
- * If itemOpt is not NULL, it will be returned; otherwise an NSSItem
- * will be allocated. If itemOpt is not NULL but itemOpt->data is,
- * the buffer will be allocated; otherwise, the buffer will be used.
- * Any allocations will come from the optional arena, if one is
- * specified.
- */
- NSS_EXTERN NSSItem *
- nssCKFWObject_GetAttribute(
- NSSCKFWObject *fwObject,
- CK_ATTRIBUTE_TYPE attribute,
- NSSItem *itemOpt,
- NSSArena *arenaOpt,
- CK_RV *pError);
- /*
- * nssCKFWObject_SetAttribute
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWObject_SetAttribute(
- NSSCKFWObject *fwObject,
- NSSCKFWSession *fwSession,
- CK_ATTRIBUTE_TYPE attribute,
- NSSItem *value);
- /*
- * nssCKFWObject_GetObjectSize
- *
- */
- NSS_EXTERN CK_ULONG
- nssCKFWObject_GetObjectSize(
- NSSCKFWObject *fwObject,
- CK_RV *pError);
- /*
- * NSSCKFWFindObjects
- *
- * -- create/destroy --
- * nssCKFWFindObjects_Create
- * nssCKFWFindObjects_Destroy
- *
- * -- implement public accessors --
- * nssCKFWFindObjects_GetMDFindObjects
- *
- * -- private accessors --
- *
- * -- module fronts --
- * nssCKFWFindObjects_Next
- */
- /*
- * nssCKFWFindObjects_Create
- *
- */
- NSS_EXTERN NSSCKFWFindObjects *
- nssCKFWFindObjects_Create(
- NSSCKFWSession *fwSession,
- NSSCKFWToken *fwToken,
- NSSCKFWInstance *fwInstance,
- NSSCKMDFindObjects *mdFindObjects1,
- NSSCKMDFindObjects *mdFindObjects2,
- CK_RV *pError);
- /*
- * nssCKFWFindObjects_Destroy
- *
- */
- NSS_EXTERN void
- nssCKFWFindObjects_Destroy(
- NSSCKFWFindObjects *fwFindObjects);
- /*
- * nssCKFWFindObjects_GetMDFindObjects
- *
- */
- NSS_EXTERN NSSCKMDFindObjects *
- nssCKFWFindObjects_GetMDFindObjects(
- NSSCKFWFindObjects *fwFindObjects);
- /*
- * nssCKFWFindObjects_Next
- *
- */
- NSS_EXTERN NSSCKFWObject *
- nssCKFWFindObjects_Next(
- NSSCKFWFindObjects *fwFindObjects,
- NSSArena *arenaOpt,
- CK_RV *pError);
- /*
- * NSSCKFWMutex
- *
- * nssCKFWMutex_Create
- * nssCKFWMutex_Destroy
- * nssCKFWMutex_Lock
- * nssCKFWMutex_Unlock
- *
- */
- /*
- * nssCKFWMutex_Create
- *
- */
- NSS_EXTERN NSSCKFWMutex *
- nssCKFWMutex_Create(
- CK_C_INITIALIZE_ARGS_PTR pInitArgs,
- CryptokiLockingState LockingState,
- NSSArena *arena,
- CK_RV *pError);
- /*
- * nssCKFWMutex_Destroy
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWMutex_Destroy(
- NSSCKFWMutex *mutex);
- /*
- * nssCKFWMutex_Lock
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWMutex_Lock(
- NSSCKFWMutex *mutex);
- /*
- * nssCKFWMutex_Unlock
- *
- */
- NSS_EXTERN CK_RV
- nssCKFWMutex_Unlock(
- NSSCKFWMutex *mutex);
- #endif /* CKFW_H */
|