1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/security/nss/lib/ckfw/ckfw.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,2426 @@ 1.4 +/* This Source Code Form is subject to the terms of the Mozilla Public 1.5 + * License, v. 2.0. If a copy of the MPL was not distributed with this 1.6 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 1.7 + 1.8 +#ifndef CKFW_H 1.9 +#define CKFW_H 1.10 + 1.11 +/* 1.12 + * ckfw.h 1.13 + * 1.14 + * This file prototypes the private calls of the NSS Cryptoki Framework. 1.15 + */ 1.16 + 1.17 +#ifndef NSSBASET_H 1.18 +#include "nssbaset.h" 1.19 +#endif /* NSSBASET_H */ 1.20 + 1.21 +#ifndef NSSCKT_H 1.22 +#include "nssckt.h" 1.23 +#endif /* NSSCKT_H */ 1.24 + 1.25 +#ifndef NSSCKFWT_H 1.26 +#include "nssckfwt.h" 1.27 +#endif /* NSSCKFWT_H */ 1.28 + 1.29 +#ifndef NSSCKMDT_H 1.30 +#include "nssckmdt.h" 1.31 +#endif /* NSSCKMDT_H */ 1.32 + 1.33 +/* 1.34 + * NSSCKFWInstance 1.35 + * 1.36 + * -- create/destroy -- 1.37 + * nssCKFWInstance_Create 1.38 + * nssCKFWInstance_Destroy 1.39 + * 1.40 + * -- implement public accessors -- 1.41 + * nssCKFWInstance_GetMDInstance 1.42 + * nssCKFWInstance_GetArena 1.43 + * nssCKFWInstance_MayCreatePthreads 1.44 + * nssCKFWInstance_CreateMutex 1.45 + * nssCKFWInstance_GetConfigurationData 1.46 + * nssCKFWInstance_GetInitArgs 1.47 + * 1.48 + * -- private accessors -- 1.49 + * nssCKFWInstance_CreateSessionHandle 1.50 + * nssCKFWInstance_ResolveSessionHandle 1.51 + * nssCKFWInstance_DestroySessionHandle 1.52 + * nssCKFWInstance_FindSessionHandle 1.53 + * nssCKFWInstance_CreateObjectHandle 1.54 + * nssCKFWInstance_ResolveObjectHandle 1.55 + * nssCKFWInstance_DestroyObjectHandle 1.56 + * nssCKFWInstance_FindObjectHandle 1.57 + * 1.58 + * -- module fronts -- 1.59 + * nssCKFWInstance_GetNSlots 1.60 + * nssCKFWInstance_GetCryptokiVersion 1.61 + * nssCKFWInstance_GetManufacturerID 1.62 + * nssCKFWInstance_GetFlags 1.63 + * nssCKFWInstance_GetLibraryDescription 1.64 + * nssCKFWInstance_GetLibraryVersion 1.65 + * nssCKFWInstance_GetModuleHandlesSessionObjects 1.66 + * nssCKFWInstance_GetSlots 1.67 + * nssCKFWInstance_WaitForSlotEvent 1.68 + * 1.69 + * -- debugging versions only -- 1.70 + * nssCKFWInstance_verifyPointer 1.71 + */ 1.72 + 1.73 +/* 1.74 + * nssCKFWInstance_Create 1.75 + * 1.76 + */ 1.77 +NSS_EXTERN NSSCKFWInstance * 1.78 +nssCKFWInstance_Create 1.79 +( 1.80 + CK_C_INITIALIZE_ARGS_PTR pInitArgs, 1.81 + CryptokiLockingState LockingState, 1.82 + NSSCKMDInstance *mdInstance, 1.83 + CK_RV *pError 1.84 +); 1.85 + 1.86 +/* 1.87 + * nssCKFWInstance_Destroy 1.88 + * 1.89 + */ 1.90 +NSS_EXTERN CK_RV 1.91 +nssCKFWInstance_Destroy 1.92 +( 1.93 + NSSCKFWInstance *fwInstance 1.94 +); 1.95 + 1.96 +/* 1.97 + * nssCKFWInstance_GetMDInstance 1.98 + * 1.99 + */ 1.100 +NSS_EXTERN NSSCKMDInstance * 1.101 +nssCKFWInstance_GetMDInstance 1.102 +( 1.103 + NSSCKFWInstance *fwInstance 1.104 +); 1.105 + 1.106 +/* 1.107 + * nssCKFWInstance_GetArena 1.108 + * 1.109 + */ 1.110 +NSS_EXTERN NSSArena * 1.111 +nssCKFWInstance_GetArena 1.112 +( 1.113 + NSSCKFWInstance *fwInstance, 1.114 + CK_RV *pError 1.115 +); 1.116 + 1.117 +/* 1.118 + * nssCKFWInstance_MayCreatePthreads 1.119 + * 1.120 + */ 1.121 +NSS_EXTERN CK_BBOOL 1.122 +nssCKFWInstance_MayCreatePthreads 1.123 +( 1.124 + NSSCKFWInstance *fwInstance 1.125 +); 1.126 + 1.127 +/* 1.128 + * nssCKFWInstance_CreateMutex 1.129 + * 1.130 + */ 1.131 +NSS_EXTERN NSSCKFWMutex * 1.132 +nssCKFWInstance_CreateMutex 1.133 +( 1.134 + NSSCKFWInstance *fwInstance, 1.135 + NSSArena *arena, 1.136 + CK_RV *pError 1.137 +); 1.138 + 1.139 +/* 1.140 + * nssCKFWInstance_GetConfigurationData 1.141 + * 1.142 + */ 1.143 +NSS_EXTERN NSSUTF8 * 1.144 +nssCKFWInstance_GetConfigurationData 1.145 +( 1.146 + NSSCKFWInstance *fwInstance 1.147 +); 1.148 + 1.149 +/* 1.150 + * nssCKFWInstance_GetInitArgs 1.151 + * 1.152 + */ 1.153 +NSS_EXTERN CK_C_INITIALIZE_ARGS_PTR 1.154 +nssCKFWInstance_GetInitArgs 1.155 +( 1.156 + NSSCKFWInstance *fwInstance 1.157 +); 1.158 + 1.159 +/* 1.160 + * nssCKFWInstance_CreateSessionHandle 1.161 + * 1.162 + */ 1.163 +NSS_EXTERN CK_SESSION_HANDLE 1.164 +nssCKFWInstance_CreateSessionHandle 1.165 +( 1.166 + NSSCKFWInstance *fwInstance, 1.167 + NSSCKFWSession *fwSession, 1.168 + CK_RV *pError 1.169 +); 1.170 + 1.171 +/* 1.172 + * nssCKFWInstance_ResolveSessionHandle 1.173 + * 1.174 + */ 1.175 +NSS_EXTERN NSSCKFWSession * 1.176 +nssCKFWInstance_ResolveSessionHandle 1.177 +( 1.178 + NSSCKFWInstance *fwInstance, 1.179 + CK_SESSION_HANDLE hSession 1.180 +); 1.181 + 1.182 +/* 1.183 + * nssCKFWInstance_DestroySessionHandle 1.184 + * 1.185 + */ 1.186 +NSS_EXTERN void 1.187 +nssCKFWInstance_DestroySessionHandle 1.188 +( 1.189 + NSSCKFWInstance *fwInstance, 1.190 + CK_SESSION_HANDLE hSession 1.191 +); 1.192 + 1.193 +/* 1.194 + * nssCKFWInstance_FindSessionHandle 1.195 + * 1.196 + */ 1.197 +NSS_EXTERN CK_SESSION_HANDLE 1.198 +nssCKFWInstance_FindSessionHandle 1.199 +( 1.200 + NSSCKFWInstance *fwInstance, 1.201 + NSSCKFWSession *fwSession 1.202 +); 1.203 + 1.204 +/* 1.205 + * nssCKFWInstance_CreateObjectHandle 1.206 + * 1.207 + */ 1.208 +NSS_EXTERN CK_OBJECT_HANDLE 1.209 +nssCKFWInstance_CreateObjectHandle 1.210 +( 1.211 + NSSCKFWInstance *fwInstance, 1.212 + NSSCKFWObject *fwObject, 1.213 + CK_RV *pError 1.214 +); 1.215 + 1.216 +/* 1.217 + * nssCKFWInstance_ResolveObjectHandle 1.218 + * 1.219 + */ 1.220 +NSS_EXTERN NSSCKFWObject * 1.221 +nssCKFWInstance_ResolveObjectHandle 1.222 +( 1.223 + NSSCKFWInstance *fwInstance, 1.224 + CK_OBJECT_HANDLE hObject 1.225 +); 1.226 + 1.227 +/* 1.228 + * nssCKFWInstance_ReassignObjectHandle 1.229 + * 1.230 + */ 1.231 +NSS_EXTERN CK_RV 1.232 +nssCKFWInstance_ReassignObjectHandle 1.233 +( 1.234 + NSSCKFWInstance *fwInstance, 1.235 + CK_OBJECT_HANDLE hObject, 1.236 + NSSCKFWObject *fwObject 1.237 +); 1.238 + 1.239 +/* 1.240 + * nssCKFWInstance_DestroyObjectHandle 1.241 + * 1.242 + */ 1.243 +NSS_EXTERN void 1.244 +nssCKFWInstance_DestroyObjectHandle 1.245 +( 1.246 + NSSCKFWInstance *fwInstance, 1.247 + CK_OBJECT_HANDLE hObject 1.248 +); 1.249 + 1.250 +/* 1.251 + * nssCKFWInstance_FindObjectHandle 1.252 + * 1.253 + */ 1.254 +NSS_EXTERN CK_OBJECT_HANDLE 1.255 +nssCKFWInstance_FindObjectHandle 1.256 +( 1.257 + NSSCKFWInstance *fwInstance, 1.258 + NSSCKFWObject *fwObject 1.259 +); 1.260 + 1.261 +/* 1.262 + * nssCKFWInstance_GetNSlots 1.263 + * 1.264 + */ 1.265 +NSS_EXTERN CK_ULONG 1.266 +nssCKFWInstance_GetNSlots 1.267 +( 1.268 + NSSCKFWInstance *fwInstance, 1.269 + CK_RV *pError 1.270 +); 1.271 + 1.272 +/* 1.273 + * nssCKFWInstance_GetCryptokiVersion 1.274 + * 1.275 + */ 1.276 +NSS_EXTERN CK_VERSION 1.277 +nssCKFWInstance_GetCryptokiVersion 1.278 +( 1.279 + NSSCKFWInstance *fwInstance 1.280 +); 1.281 + 1.282 +/* 1.283 + * nssCKFWInstance_GetManufacturerID 1.284 + * 1.285 + */ 1.286 +NSS_EXTERN CK_RV 1.287 +nssCKFWInstance_GetManufacturerID 1.288 +( 1.289 + NSSCKFWInstance *fwInstance, 1.290 + CK_CHAR manufacturerID[32] 1.291 +); 1.292 + 1.293 +/* 1.294 + * nssCKFWInstance_GetFlags 1.295 + * 1.296 + */ 1.297 +NSS_EXTERN CK_ULONG 1.298 +nssCKFWInstance_GetFlags 1.299 +( 1.300 + NSSCKFWInstance *fwInstance 1.301 +); 1.302 + 1.303 +/* 1.304 + * nssCKFWInstance_GetLibraryDescription 1.305 + * 1.306 + */ 1.307 +NSS_EXTERN CK_RV 1.308 +nssCKFWInstance_GetLibraryDescription 1.309 +( 1.310 + NSSCKFWInstance *fwInstance, 1.311 + CK_CHAR libraryDescription[32] 1.312 +); 1.313 + 1.314 +/* 1.315 + * nssCKFWInstance_GetLibraryVersion 1.316 + * 1.317 + */ 1.318 +NSS_EXTERN CK_VERSION 1.319 +nssCKFWInstance_GetLibraryVersion 1.320 +( 1.321 + NSSCKFWInstance *fwInstance 1.322 +); 1.323 + 1.324 +/* 1.325 + * nssCKFWInstance_GetModuleHandlesSessionObjects 1.326 + * 1.327 + */ 1.328 +NSS_EXTERN CK_BBOOL 1.329 +nssCKFWInstance_GetModuleHandlesSessionObjects 1.330 +( 1.331 + NSSCKFWInstance *fwInstance 1.332 +); 1.333 + 1.334 +/* 1.335 + * nssCKFWInstance_GetSlots 1.336 + * 1.337 + */ 1.338 +NSS_EXTERN NSSCKFWSlot ** 1.339 +nssCKFWInstance_GetSlots 1.340 +( 1.341 + NSSCKFWInstance *fwInstance, 1.342 + CK_RV *pError 1.343 +); 1.344 + 1.345 +/* 1.346 + * nssCKFWInstance_WaitForSlotEvent 1.347 + * 1.348 + */ 1.349 +NSS_EXTERN NSSCKFWSlot * 1.350 +nssCKFWInstance_WaitForSlotEvent 1.351 +( 1.352 + NSSCKFWInstance *fwInstance, 1.353 + CK_BBOOL block, 1.354 + CK_RV *pError 1.355 +); 1.356 + 1.357 +/* 1.358 + * nssCKFWInstance_verifyPointer 1.359 + * 1.360 + */ 1.361 +NSS_EXTERN CK_RV 1.362 +nssCKFWInstance_verifyPointer 1.363 +( 1.364 + const NSSCKFWInstance *fwInstance 1.365 +); 1.366 + 1.367 + 1.368 +/* 1.369 + * NSSCKFWSlot 1.370 + * 1.371 + * -- create/destroy -- 1.372 + * nssCKFWSlot_Create 1.373 + * nssCKFWSlot_Destroy 1.374 + * 1.375 + * -- implement public accessors -- 1.376 + * nssCKFWSlot_GetMDSlot 1.377 + * nssCKFWSlot_GetFWInstance 1.378 + * nssCKFWSlot_GetMDInstance 1.379 + * 1.380 + * -- private accessors -- 1.381 + * nssCKFWSlot_GetSlotID 1.382 + * 1.383 + * -- module fronts -- 1.384 + * nssCKFWSlot_GetSlotDescription 1.385 + * nssCKFWSlot_GetManufacturerID 1.386 + * nssCKFWSlot_GetTokenPresent 1.387 + * nssCKFWSlot_GetRemovableDevice 1.388 + * nssCKFWSlot_GetHardwareSlot 1.389 + * nssCKFWSlot_GetHardwareVersion 1.390 + * nssCKFWSlot_GetFirmwareVersion 1.391 + * nssCKFWSlot_GetToken 1.392 + */ 1.393 + 1.394 +/* 1.395 + * nssCKFWSlot_Create 1.396 + * 1.397 + */ 1.398 +NSS_EXTERN NSSCKFWSlot * 1.399 +nssCKFWSlot_Create 1.400 +( 1.401 + NSSCKFWInstance *fwInstance, 1.402 + NSSCKMDSlot *mdSlot, 1.403 + CK_SLOT_ID slotID, 1.404 + CK_RV *pError 1.405 +); 1.406 + 1.407 +/* 1.408 + * nssCKFWSlot_Destroy 1.409 + * 1.410 + */ 1.411 +NSS_EXTERN CK_RV 1.412 +nssCKFWSlot_Destroy 1.413 +( 1.414 + NSSCKFWSlot *fwSlot 1.415 +); 1.416 + 1.417 +/* 1.418 + * nssCKFWSlot_GetMDSlot 1.419 + * 1.420 + */ 1.421 +NSS_EXTERN NSSCKMDSlot * 1.422 +nssCKFWSlot_GetMDSlot 1.423 +( 1.424 + NSSCKFWSlot *fwSlot 1.425 +); 1.426 + 1.427 +/* 1.428 + * nssCKFWSlot_GetFWInstance 1.429 + * 1.430 + */ 1.431 + 1.432 +NSS_EXTERN NSSCKFWInstance * 1.433 +nssCKFWSlot_GetFWInstance 1.434 +( 1.435 + NSSCKFWSlot *fwSlot 1.436 +); 1.437 + 1.438 +/* 1.439 + * nssCKFWSlot_GetMDInstance 1.440 + * 1.441 + */ 1.442 + 1.443 +NSS_EXTERN NSSCKMDInstance * 1.444 +nssCKFWSlot_GetMDInstance 1.445 +( 1.446 + NSSCKFWSlot *fwSlot 1.447 +); 1.448 + 1.449 +/* 1.450 + * nssCKFWSlot_GetSlotID 1.451 + * 1.452 + */ 1.453 +NSS_EXTERN CK_SLOT_ID 1.454 +nssCKFWSlot_GetSlotID 1.455 +( 1.456 + NSSCKFWSlot *fwSlot 1.457 +); 1.458 + 1.459 +/* 1.460 + * nssCKFWSlot_GetSlotDescription 1.461 + * 1.462 + */ 1.463 +NSS_EXTERN CK_RV 1.464 +nssCKFWSlot_GetSlotDescription 1.465 +( 1.466 + NSSCKFWSlot *fwSlot, 1.467 + CK_CHAR slotDescription[64] 1.468 +); 1.469 + 1.470 +/* 1.471 + * nssCKFWSlot_GetManufacturerID 1.472 + * 1.473 + */ 1.474 +NSS_EXTERN CK_RV 1.475 +nssCKFWSlot_GetManufacturerID 1.476 +( 1.477 + NSSCKFWSlot *fwSlot, 1.478 + CK_CHAR manufacturerID[32] 1.479 +); 1.480 + 1.481 +/* 1.482 + * nssCKFWSlot_GetTokenPresent 1.483 + * 1.484 + */ 1.485 +NSS_EXTERN CK_BBOOL 1.486 +nssCKFWSlot_GetTokenPresent 1.487 +( 1.488 + NSSCKFWSlot *fwSlot 1.489 +); 1.490 + 1.491 +/* 1.492 + * nssCKFWSlot_GetRemovableDevice 1.493 + * 1.494 + */ 1.495 +NSS_EXTERN CK_BBOOL 1.496 +nssCKFWSlot_GetRemovableDevice 1.497 +( 1.498 + NSSCKFWSlot *fwSlot 1.499 +); 1.500 + 1.501 +/* 1.502 + * nssCKFWSlot_GetHardwareSlot 1.503 + * 1.504 + */ 1.505 +NSS_EXTERN CK_BBOOL 1.506 +nssCKFWSlot_GetHardwareSlot 1.507 +( 1.508 + NSSCKFWSlot *fwSlot 1.509 +); 1.510 + 1.511 +/* 1.512 + * nssCKFWSlot_GetHardwareVersion 1.513 + * 1.514 + */ 1.515 +NSS_EXTERN CK_VERSION 1.516 +nssCKFWSlot_GetHardwareVersion 1.517 +( 1.518 + NSSCKFWSlot *fwSlot 1.519 +); 1.520 + 1.521 +/* 1.522 + * nssCKFWSlot_GetFirmwareVersion 1.523 + * 1.524 + */ 1.525 +NSS_EXTERN CK_VERSION 1.526 +nssCKFWSlot_GetFirmwareVersion 1.527 +( 1.528 + NSSCKFWSlot *fwSlot 1.529 +); 1.530 + 1.531 +/* 1.532 + * nssCKFWSlot_GetToken 1.533 + * 1.534 + */ 1.535 +NSS_EXTERN NSSCKFWToken * 1.536 +nssCKFWSlot_GetToken 1.537 +( 1.538 + NSSCKFWSlot *fwSlot, 1.539 + CK_RV *pError 1.540 +); 1.541 + 1.542 +/* 1.543 + * nssCKFWSlot_ClearToken 1.544 + * 1.545 + */ 1.546 +NSS_EXTERN void 1.547 +nssCKFWSlot_ClearToken 1.548 +( 1.549 + NSSCKFWSlot *fwSlot 1.550 +); 1.551 + 1.552 +/* 1.553 + * NSSCKFWToken 1.554 + * 1.555 + * -- create/destroy -- 1.556 + * nssCKFWToken_Create 1.557 + * nssCKFWToken_Destroy 1.558 + * 1.559 + * -- implement public accessors -- 1.560 + * nssCKFWToken_GetMDToken 1.561 + * nssCKFWToken_GetFWSlot 1.562 + * nssCKFWToken_GetMDSlot 1.563 + * nssCKFWToken_GetSessionState 1.564 + * 1.565 + * -- private accessors -- 1.566 + * nssCKFWToken_SetSessionState 1.567 + * nssCKFWToken_RemoveSession 1.568 + * nssCKFWToken_CloseAllSessions 1.569 + * nssCKFWToken_GetSessionCount 1.570 + * nssCKFWToken_GetRwSessionCount 1.571 + * nssCKFWToken_GetRoSessionCount 1.572 + * nssCKFWToken_GetSessionObjectHash 1.573 + * nssCKFWToken_GetMDObjectHash 1.574 + * nssCKFWToken_GetObjectHandleHash 1.575 + * 1.576 + * -- module fronts -- 1.577 + * nssCKFWToken_InitToken 1.578 + * nssCKFWToken_GetLabel 1.579 + * nssCKFWToken_GetManufacturerID 1.580 + * nssCKFWToken_GetModel 1.581 + * nssCKFWToken_GetSerialNumber 1.582 + * nssCKFWToken_GetHasRNG 1.583 + * nssCKFWToken_GetIsWriteProtected 1.584 + * nssCKFWToken_GetLoginRequired 1.585 + * nssCKFWToken_GetUserPinInitialized 1.586 + * nssCKFWToken_GetRestoreKeyNotNeeded 1.587 + * nssCKFWToken_GetHasClockOnToken 1.588 + * nssCKFWToken_GetHasProtectedAuthenticationPath 1.589 + * nssCKFWToken_GetSupportsDualCryptoOperations 1.590 + * nssCKFWToken_GetMaxSessionCount 1.591 + * nssCKFWToken_GetMaxRwSessionCount 1.592 + * nssCKFWToken_GetMaxPinLen 1.593 + * nssCKFWToken_GetMinPinLen 1.594 + * nssCKFWToken_GetTotalPublicMemory 1.595 + * nssCKFWToken_GetFreePublicMemory 1.596 + * nssCKFWToken_GetTotalPrivateMemory 1.597 + * nssCKFWToken_GetFreePrivateMemory 1.598 + * nssCKFWToken_GetHardwareVersion 1.599 + * nssCKFWToken_GetFirmwareVersion 1.600 + * nssCKFWToken_GetUTCTime 1.601 + * nssCKFWToken_OpenSession 1.602 + * nssCKFWToken_GetMechanismCount 1.603 + * nssCKFWToken_GetMechanismTypes 1.604 + * nssCKFWToken_GetMechanism 1.605 + */ 1.606 + 1.607 +/* 1.608 + * nssCKFWToken_Create 1.609 + * 1.610 + */ 1.611 +NSS_EXTERN NSSCKFWToken * 1.612 +nssCKFWToken_Create 1.613 +( 1.614 + NSSCKFWSlot *fwSlot, 1.615 + NSSCKMDToken *mdToken, 1.616 + CK_RV *pError 1.617 +); 1.618 + 1.619 +/* 1.620 + * nssCKFWToken_Destroy 1.621 + * 1.622 + */ 1.623 +NSS_EXTERN CK_RV 1.624 +nssCKFWToken_Destroy 1.625 +( 1.626 + NSSCKFWToken *fwToken 1.627 +); 1.628 + 1.629 +/* 1.630 + * nssCKFWToken_GetMDToken 1.631 + * 1.632 + */ 1.633 +NSS_EXTERN NSSCKMDToken * 1.634 +nssCKFWToken_GetMDToken 1.635 +( 1.636 + NSSCKFWToken *fwToken 1.637 +); 1.638 + 1.639 +/* 1.640 + * nssCKFWToken_GetArena 1.641 + * 1.642 + */ 1.643 +NSS_EXTERN NSSArena * 1.644 +nssCKFWToken_GetArena 1.645 +( 1.646 + NSSCKFWToken *fwToken, 1.647 + CK_RV *pError 1.648 +); 1.649 + 1.650 +/* 1.651 + * nssCKFWToken_GetFWSlot 1.652 + * 1.653 + */ 1.654 +NSS_EXTERN NSSCKFWSlot * 1.655 +nssCKFWToken_GetFWSlot 1.656 +( 1.657 + NSSCKFWToken *fwToken 1.658 +); 1.659 + 1.660 +/* 1.661 + * nssCKFWToken_GetMDSlot 1.662 + * 1.663 + */ 1.664 +NSS_EXTERN NSSCKMDSlot * 1.665 +nssCKFWToken_GetMDSlot 1.666 +( 1.667 + NSSCKFWToken *fwToken 1.668 +); 1.669 + 1.670 +/* 1.671 + * nssCKFWToken_GetSessionState 1.672 + * 1.673 + */ 1.674 +NSS_EXTERN CK_STATE 1.675 +nssCKFWToken_GetSessionState 1.676 +( 1.677 + NSSCKFWToken *fwToken 1.678 +); 1.679 + 1.680 +/* 1.681 + * nssCKFWToken_InitToken 1.682 + * 1.683 + */ 1.684 +NSS_EXTERN CK_RV 1.685 +nssCKFWToken_InitToken 1.686 +( 1.687 + NSSCKFWToken *fwToken, 1.688 + NSSItem *pin, 1.689 + NSSUTF8 *label 1.690 +); 1.691 + 1.692 +/* 1.693 + * nssCKFWToken_GetLabel 1.694 + * 1.695 + */ 1.696 +NSS_EXTERN CK_RV 1.697 +nssCKFWToken_GetLabel 1.698 +( 1.699 + NSSCKFWToken *fwToken, 1.700 + CK_CHAR label[32] 1.701 +); 1.702 + 1.703 +/* 1.704 + * nssCKFWToken_GetManufacturerID 1.705 + * 1.706 + */ 1.707 +NSS_EXTERN CK_RV 1.708 +nssCKFWToken_GetManufacturerID 1.709 +( 1.710 + NSSCKFWToken *fwToken, 1.711 + CK_CHAR manufacturerID[32] 1.712 +); 1.713 + 1.714 +/* 1.715 + * nssCKFWToken_GetModel 1.716 + * 1.717 + */ 1.718 +NSS_EXTERN CK_RV 1.719 +nssCKFWToken_GetModel 1.720 +( 1.721 + NSSCKFWToken *fwToken, 1.722 + CK_CHAR model[16] 1.723 +); 1.724 + 1.725 +/* 1.726 + * nssCKFWToken_GetSerialNumber 1.727 + * 1.728 + */ 1.729 +NSS_EXTERN CK_RV 1.730 +nssCKFWToken_GetSerialNumber 1.731 +( 1.732 + NSSCKFWToken *fwToken, 1.733 + CK_CHAR serialNumber[16] 1.734 +); 1.735 + 1.736 +/* 1.737 + * nssCKFWToken_GetHasRNG 1.738 + * 1.739 + */ 1.740 +NSS_EXTERN CK_BBOOL 1.741 +nssCKFWToken_GetHasRNG 1.742 +( 1.743 + NSSCKFWToken *fwToken 1.744 +); 1.745 + 1.746 +/* 1.747 + * nssCKFWToken_GetIsWriteProtected 1.748 + * 1.749 + */ 1.750 +NSS_EXTERN CK_BBOOL 1.751 +nssCKFWToken_GetIsWriteProtected 1.752 +( 1.753 + NSSCKFWToken *fwToken 1.754 +); 1.755 + 1.756 +/* 1.757 + * nssCKFWToken_GetLoginRequired 1.758 + * 1.759 + */ 1.760 +NSS_EXTERN CK_BBOOL 1.761 +nssCKFWToken_GetLoginRequired 1.762 +( 1.763 + NSSCKFWToken *fwToken 1.764 +); 1.765 + 1.766 +/* 1.767 + * nssCKFWToken_GetUserPinInitialized 1.768 + * 1.769 + */ 1.770 +NSS_EXTERN CK_BBOOL 1.771 +nssCKFWToken_GetUserPinInitialized 1.772 +( 1.773 + NSSCKFWToken *fwToken 1.774 +); 1.775 + 1.776 +/* 1.777 + * nssCKFWToken_GetRestoreKeyNotNeeded 1.778 + * 1.779 + */ 1.780 +NSS_EXTERN CK_BBOOL 1.781 +nssCKFWToken_GetRestoreKeyNotNeeded 1.782 +( 1.783 + NSSCKFWToken *fwToken 1.784 +); 1.785 + 1.786 +/* 1.787 + * nssCKFWToken_GetHasClockOnToken 1.788 + * 1.789 + */ 1.790 +NSS_EXTERN CK_BBOOL 1.791 +nssCKFWToken_GetHasClockOnToken 1.792 +( 1.793 + NSSCKFWToken *fwToken 1.794 +); 1.795 + 1.796 +/* 1.797 + * nssCKFWToken_GetHasProtectedAuthenticationPath 1.798 + * 1.799 + */ 1.800 +NSS_EXTERN CK_BBOOL 1.801 +nssCKFWToken_GetHasProtectedAuthenticationPath 1.802 +( 1.803 + NSSCKFWToken *fwToken 1.804 +); 1.805 + 1.806 +/* 1.807 + * nssCKFWToken_GetSupportsDualCryptoOperations 1.808 + * 1.809 + */ 1.810 +NSS_EXTERN CK_BBOOL 1.811 +nssCKFWToken_GetSupportsDualCryptoOperations 1.812 +( 1.813 + NSSCKFWToken *fwToken 1.814 +); 1.815 + 1.816 +/* 1.817 + * nssCKFWToken_GetMaxSessionCount 1.818 + * 1.819 + */ 1.820 +NSS_EXTERN CK_ULONG 1.821 +nssCKFWToken_GetMaxSessionCount 1.822 +( 1.823 + NSSCKFWToken *fwToken 1.824 +); 1.825 + 1.826 +/* 1.827 + * nssCKFWToken_GetMaxRwSessionCount 1.828 + * 1.829 + */ 1.830 +NSS_EXTERN CK_ULONG 1.831 +nssCKFWToken_GetMaxRwSessionCount 1.832 +( 1.833 + NSSCKFWToken *fwToken 1.834 +); 1.835 + 1.836 +/* 1.837 + * nssCKFWToken_GetMaxPinLen 1.838 + * 1.839 + */ 1.840 +NSS_EXTERN CK_ULONG 1.841 +nssCKFWToken_GetMaxPinLen 1.842 +( 1.843 + NSSCKFWToken *fwToken 1.844 +); 1.845 + 1.846 +/* 1.847 + * nssCKFWToken_GetMinPinLen 1.848 + * 1.849 + */ 1.850 +NSS_EXTERN CK_ULONG 1.851 +nssCKFWToken_GetMinPinLen 1.852 +( 1.853 + NSSCKFWToken *fwToken 1.854 +); 1.855 + 1.856 +/* 1.857 + * nssCKFWToken_GetTotalPublicMemory 1.858 + * 1.859 + */ 1.860 +NSS_EXTERN CK_ULONG 1.861 +nssCKFWToken_GetTotalPublicMemory 1.862 +( 1.863 + NSSCKFWToken *fwToken 1.864 +); 1.865 + 1.866 +/* 1.867 + * nssCKFWToken_GetFreePublicMemory 1.868 + * 1.869 + */ 1.870 +NSS_EXTERN CK_ULONG 1.871 +nssCKFWToken_GetFreePublicMemory 1.872 +( 1.873 + NSSCKFWToken *fwToken 1.874 +); 1.875 + 1.876 +/* 1.877 + * nssCKFWToken_GetTotalPrivateMemory 1.878 + * 1.879 + */ 1.880 +NSS_EXTERN CK_ULONG 1.881 +nssCKFWToken_GetTotalPrivateMemory 1.882 +( 1.883 + NSSCKFWToken *fwToken 1.884 +); 1.885 + 1.886 +/* 1.887 + * nssCKFWToken_GetFreePrivateMemory 1.888 + * 1.889 + */ 1.890 +NSS_EXTERN CK_ULONG 1.891 +nssCKFWToken_GetFreePrivateMemory 1.892 +( 1.893 + NSSCKFWToken *fwToken 1.894 +); 1.895 + 1.896 +/* 1.897 + * nssCKFWToken_GetHardwareVersion 1.898 + * 1.899 + */ 1.900 +NSS_EXTERN CK_VERSION 1.901 +nssCKFWToken_GetHardwareVersion 1.902 +( 1.903 + NSSCKFWToken *fwToken 1.904 +); 1.905 + 1.906 +/* 1.907 + * nssCKFWToken_GetFirmwareVersion 1.908 + * 1.909 + */ 1.910 +NSS_EXTERN CK_VERSION 1.911 +nssCKFWToken_GetFirmwareVersion 1.912 +( 1.913 + NSSCKFWToken *fwToken 1.914 +); 1.915 + 1.916 +/* 1.917 + * nssCKFWToken_GetUTCTime 1.918 + * 1.919 + */ 1.920 +NSS_EXTERN CK_RV 1.921 +nssCKFWToken_GetUTCTime 1.922 +( 1.923 + NSSCKFWToken *fwToken, 1.924 + CK_CHAR utcTime[16] 1.925 +); 1.926 + 1.927 +/* 1.928 + * nssCKFWToken_OpenSession 1.929 + * 1.930 + */ 1.931 +NSS_EXTERN NSSCKFWSession * 1.932 +nssCKFWToken_OpenSession 1.933 +( 1.934 + NSSCKFWToken *fwToken, 1.935 + CK_BBOOL rw, 1.936 + CK_VOID_PTR pApplication, 1.937 + CK_NOTIFY Notify, 1.938 + CK_RV *pError 1.939 +); 1.940 + 1.941 +/* 1.942 + * nssCKFWToken_GetMechanismCount 1.943 + * 1.944 + */ 1.945 +NSS_EXTERN CK_ULONG 1.946 +nssCKFWToken_GetMechanismCount 1.947 +( 1.948 + NSSCKFWToken *fwToken 1.949 +); 1.950 + 1.951 +/* 1.952 + * nssCKFWToken_GetMechanismTypes 1.953 + * 1.954 + */ 1.955 +NSS_EXTERN CK_RV 1.956 +nssCKFWToken_GetMechanismTypes 1.957 +( 1.958 + NSSCKFWToken *fwToken, 1.959 + CK_MECHANISM_TYPE types[] 1.960 +); 1.961 + 1.962 +/* 1.963 + * nssCKFWToken_GetMechanism 1.964 + * 1.965 + */ 1.966 +NSS_EXTERN NSSCKFWMechanism * 1.967 +nssCKFWToken_GetMechanism 1.968 +( 1.969 + NSSCKFWToken *fwToken, 1.970 + CK_MECHANISM_TYPE which, 1.971 + CK_RV *pError 1.972 +); 1.973 + 1.974 +/* 1.975 + * nssCKFWToken_SetSessionState 1.976 + * 1.977 + */ 1.978 +NSS_EXTERN CK_RV 1.979 +nssCKFWToken_SetSessionState 1.980 +( 1.981 + NSSCKFWToken *fwToken, 1.982 + CK_STATE newState 1.983 +); 1.984 + 1.985 +/* 1.986 + * nssCKFWToken_RemoveSession 1.987 + * 1.988 + */ 1.989 +NSS_EXTERN CK_RV 1.990 +nssCKFWToken_RemoveSession 1.991 +( 1.992 + NSSCKFWToken *fwToken, 1.993 + NSSCKFWSession *fwSession 1.994 +); 1.995 + 1.996 +/* 1.997 + * nssCKFWToken_CloseAllSessions 1.998 + * 1.999 + */ 1.1000 +NSS_EXTERN CK_RV 1.1001 +nssCKFWToken_CloseAllSessions 1.1002 +( 1.1003 + NSSCKFWToken *fwToken 1.1004 +); 1.1005 + 1.1006 +/* 1.1007 + * nssCKFWToken_GetSessionCount 1.1008 + * 1.1009 + */ 1.1010 +NSS_EXTERN CK_ULONG 1.1011 +nssCKFWToken_GetSessionCount 1.1012 +( 1.1013 + NSSCKFWToken *fwToken 1.1014 +); 1.1015 + 1.1016 +/* 1.1017 + * nssCKFWToken_GetRwSessionCount 1.1018 + * 1.1019 + */ 1.1020 +NSS_EXTERN CK_ULONG 1.1021 +nssCKFWToken_GetRwSessionCount 1.1022 +( 1.1023 + NSSCKFWToken *fwToken 1.1024 +); 1.1025 + 1.1026 +/* 1.1027 + * nssCKFWToken_GetRoSessionCount 1.1028 + * 1.1029 + */ 1.1030 +NSS_EXTERN CK_ULONG 1.1031 +nssCKFWToken_GetRoSessionCount 1.1032 +( 1.1033 + NSSCKFWToken *fwToken 1.1034 +); 1.1035 + 1.1036 +/* 1.1037 + * nssCKFWToken_GetSessionObjectHash 1.1038 + * 1.1039 + */ 1.1040 +NSS_EXTERN nssCKFWHash * 1.1041 +nssCKFWToken_GetSessionObjectHash 1.1042 +( 1.1043 + NSSCKFWToken *fwToken 1.1044 +); 1.1045 + 1.1046 +/* 1.1047 + * nssCKFWToken_GetMDObjectHash 1.1048 + * 1.1049 + */ 1.1050 +NSS_EXTERN nssCKFWHash * 1.1051 +nssCKFWToken_GetMDObjectHash 1.1052 +( 1.1053 + NSSCKFWToken *fwToken 1.1054 +); 1.1055 + 1.1056 +/* 1.1057 + * nssCKFWToken_GetObjectHandleHash 1.1058 + * 1.1059 + */ 1.1060 +NSS_EXTERN nssCKFWHash * 1.1061 +nssCKFWToken_GetObjectHandleHash 1.1062 +( 1.1063 + NSSCKFWToken *fwToken 1.1064 +); 1.1065 + 1.1066 +/* 1.1067 + * NSSCKFWMechanism 1.1068 + * 1.1069 + * -- create/destroy -- 1.1070 + * nssCKFWMechanism_Create 1.1071 + * nssCKFWMechanism_Destroy 1.1072 + * 1.1073 + * -- implement public accessors -- 1.1074 + * nssCKFWMechanism_GetMDMechanism 1.1075 + * 1.1076 + * -- private accessors -- 1.1077 + * 1.1078 + * -- module fronts -- 1.1079 + * nssCKFWMechanism_GetMinKeySize 1.1080 + * nssCKFWMechanism_GetMaxKeySize 1.1081 + * nssCKFWMechanism_GetInHardware 1.1082 + * nssCKFWMechanism_GetCanEncrypt 1.1083 + * nssCKFWMechanism_GetCanDecrypt 1.1084 + * nssCKFWMechanism_GetCanDigest 1.1085 + * nssCKFWMechanism_GetCanSignRecover 1.1086 + * nssCKFWMechanism_GetCanVerify 1.1087 + * nssCKFWMechanism_GetCanVerifyRecover 1.1088 + * nssCKFWMechanism_GetCanGenerate 1.1089 + * nssCKFWMechanism_GetCanGenerateKeyPair 1.1090 + * nssCKFWMechanism_GetCanWrap 1.1091 + * nssCKFWMechanism_GetCanUnwrap 1.1092 + * nssCKFWMechanism_GetCanDerive 1.1093 + * nssCKFWMechanism_EncryptInit 1.1094 + * nssCKFWMechanism_DecryptInit 1.1095 + * nssCKFWMechanism_DigestInit 1.1096 + * nssCKFWMechanism_SignInit 1.1097 + * nssCKFWMechanism_SignRecoverInit 1.1098 + * nssCKFWMechanism_VerifyInit 1.1099 + * nssCKFWMechanism_VerifyRecoverInit 1.1100 + * nssCKFWMechanism_GenerateKey 1.1101 + * nssCKFWMechanism_GenerateKeyPair 1.1102 + * nssCKFWMechanism_GetWrapKeyLength 1.1103 + * nssCKFWMechanism_WrapKey 1.1104 + * nssCKFWMechanism_UnwrapKey 1.1105 + * nssCKFWMechanism_DeriveKey 1.1106 + */ 1.1107 + 1.1108 +/* 1.1109 + * nssCKFWMechanism_Create 1.1110 + * 1.1111 + */ 1.1112 +NSS_EXTERN NSSCKFWMechanism * 1.1113 +nssCKFWMechanism_Create 1.1114 +( 1.1115 + NSSCKMDMechanism *mdMechanism, 1.1116 + NSSCKMDToken *mdToken, 1.1117 + NSSCKFWToken *fwToken, 1.1118 + NSSCKMDInstance *mdInstance, 1.1119 + NSSCKFWInstance *fwInstance 1.1120 +); 1.1121 + 1.1122 +/* 1.1123 + * nssCKFWMechanism_Destroy 1.1124 + * 1.1125 + */ 1.1126 +NSS_EXTERN void 1.1127 +nssCKFWMechanism_Destroy 1.1128 +( 1.1129 + NSSCKFWMechanism *fwMechanism 1.1130 +); 1.1131 + 1.1132 +/* 1.1133 + * nssCKFWMechanism_GetMDMechanism 1.1134 + * 1.1135 + */ 1.1136 + 1.1137 +NSS_EXTERN NSSCKMDMechanism * 1.1138 +nssCKFWMechanism_GetMDMechanism 1.1139 +( 1.1140 + NSSCKFWMechanism *fwMechanism 1.1141 +); 1.1142 + 1.1143 +/* 1.1144 + * nssCKFWMechanism_GetMinKeySize 1.1145 + * 1.1146 + */ 1.1147 +NSS_EXTERN CK_ULONG 1.1148 +nssCKFWMechanism_GetMinKeySize 1.1149 +( 1.1150 + NSSCKFWMechanism *fwMechanism, 1.1151 + CK_RV *pError 1.1152 +); 1.1153 + 1.1154 +/* 1.1155 + * nssCKFWMechanism_GetMaxKeySize 1.1156 + * 1.1157 + */ 1.1158 +NSS_EXTERN CK_ULONG 1.1159 +nssCKFWMechanism_GetMaxKeySize 1.1160 +( 1.1161 + NSSCKFWMechanism *fwMechanism, 1.1162 + CK_RV *pError 1.1163 +); 1.1164 + 1.1165 +/* 1.1166 + * nssCKFWMechanism_GetInHardware 1.1167 + * 1.1168 + */ 1.1169 +NSS_EXTERN CK_BBOOL 1.1170 +nssCKFWMechanism_GetInHardware 1.1171 +( 1.1172 + NSSCKFWMechanism *fwMechanism, 1.1173 + CK_RV *pError 1.1174 +); 1.1175 + 1.1176 +/* 1.1177 + * the following are determined automatically by which of the cryptographic 1.1178 + * functions are defined for this mechanism. 1.1179 + */ 1.1180 +/* 1.1181 + * nssCKFWMechanism_GetCanEncrypt 1.1182 + * 1.1183 + */ 1.1184 +NSS_EXTERN CK_BBOOL 1.1185 +nssCKFWMechanism_GetCanEncrypt 1.1186 +( 1.1187 + NSSCKFWMechanism *fwMechanism, 1.1188 + CK_RV *pError 1.1189 +); 1.1190 + 1.1191 +/* 1.1192 + * nssCKFWMechanism_GetCanDecrypt 1.1193 + * 1.1194 + */ 1.1195 +NSS_EXTERN CK_BBOOL 1.1196 +nssCKFWMechanism_GetCanDecrypt 1.1197 +( 1.1198 + NSSCKFWMechanism *fwMechanism, 1.1199 + CK_RV *pError 1.1200 +); 1.1201 + 1.1202 +/* 1.1203 + * nssCKFWMechanism_GetCanDigest 1.1204 + * 1.1205 + */ 1.1206 +NSS_EXTERN CK_BBOOL 1.1207 +nssCKFWMechanism_GetCanDigest 1.1208 +( 1.1209 + NSSCKFWMechanism *fwMechanism, 1.1210 + CK_RV *pError 1.1211 +); 1.1212 + 1.1213 +/* 1.1214 + * nssCKFWMechanism_GetCanSign 1.1215 + * 1.1216 + */ 1.1217 +NSS_EXTERN CK_BBOOL 1.1218 +nssCKFWMechanism_GetCanSign 1.1219 +( 1.1220 + NSSCKFWMechanism *fwMechanism, 1.1221 + CK_RV *pError 1.1222 +); 1.1223 + 1.1224 +/* 1.1225 + * nssCKFWMechanism_GetCanSignRecover 1.1226 + * 1.1227 + */ 1.1228 +NSS_EXTERN CK_BBOOL 1.1229 +nssCKFWMechanism_GetCanSignRecover 1.1230 +( 1.1231 + NSSCKFWMechanism *fwMechanism, 1.1232 + CK_RV *pError 1.1233 +); 1.1234 + 1.1235 +/* 1.1236 + * nssCKFWMechanism_GetCanVerify 1.1237 + * 1.1238 + */ 1.1239 +NSS_EXTERN CK_BBOOL 1.1240 +nssCKFWMechanism_GetCanVerify 1.1241 +( 1.1242 + NSSCKFWMechanism *fwMechanism, 1.1243 + CK_RV *pError 1.1244 +); 1.1245 + 1.1246 +/* 1.1247 + * nssCKFWMechanism_GetCanVerifyRecover 1.1248 + * 1.1249 + */ 1.1250 +NSS_EXTERN CK_BBOOL 1.1251 +nssCKFWMechanism_GetCanVerifyRecover 1.1252 +( 1.1253 + NSSCKFWMechanism *fwMechanism, 1.1254 + CK_RV *pError 1.1255 +); 1.1256 + 1.1257 +/* 1.1258 + * nssCKFWMechanism_GetCanGenerate 1.1259 + * 1.1260 + */ 1.1261 +NSS_EXTERN CK_BBOOL 1.1262 +nssCKFWMechanism_GetCanGenerate 1.1263 +( 1.1264 + NSSCKFWMechanism *fwMechanism, 1.1265 + CK_RV *pError 1.1266 +); 1.1267 + 1.1268 +/* 1.1269 + * nssCKFWMechanism_GetCanGenerateKeyPair 1.1270 + * 1.1271 + */ 1.1272 +NSS_EXTERN CK_BBOOL 1.1273 +nssCKFWMechanism_GetCanGenerateKeyPair 1.1274 +( 1.1275 + NSSCKFWMechanism *fwMechanism, 1.1276 + CK_RV *pError 1.1277 +); 1.1278 + 1.1279 +/* 1.1280 + * nssCKFWMechanism_GetCanWrap 1.1281 + * 1.1282 + */ 1.1283 +NSS_EXTERN CK_BBOOL 1.1284 +nssCKFWMechanism_GetCanWrap 1.1285 +( 1.1286 + NSSCKFWMechanism *fwMechanism, 1.1287 + CK_RV *pError 1.1288 +); 1.1289 + 1.1290 +/* 1.1291 + * nssCKFWMechanism_GetCanUnwrap 1.1292 + * 1.1293 + */ 1.1294 +NSS_EXTERN CK_BBOOL 1.1295 +nssCKFWMechanism_GetCanUnwrap 1.1296 +( 1.1297 + NSSCKFWMechanism *fwMechanism, 1.1298 + CK_RV *pError 1.1299 +); 1.1300 + 1.1301 +/* 1.1302 + * nssCKFWMechanism_GetCanDerive 1.1303 + * 1.1304 + */ 1.1305 +NSS_EXTERN CK_BBOOL 1.1306 +nssCKFWMechanism_GetCanDerive 1.1307 +( 1.1308 + NSSCKFWMechanism *fwMechanism, 1.1309 + CK_RV *pError 1.1310 +); 1.1311 + 1.1312 +/* 1.1313 + * nssCKFWMechanism_EncryptInit 1.1314 + */ 1.1315 +NSS_EXTERN CK_RV 1.1316 +nssCKFWMechanism_EncryptInit 1.1317 +( 1.1318 + NSSCKFWMechanism *fwMechanism, 1.1319 + CK_MECHANISM *pMechanism, 1.1320 + NSSCKFWSession *fwSession, 1.1321 + NSSCKFWObject *fwObject 1.1322 +); 1.1323 + 1.1324 +/* 1.1325 + * nssCKFWMechanism_DecryptInit 1.1326 + */ 1.1327 +NSS_EXTERN CK_RV 1.1328 +nssCKFWMechanism_DecryptInit 1.1329 +( 1.1330 + NSSCKFWMechanism *fwMechanism, 1.1331 + CK_MECHANISM *pMechanism, 1.1332 + NSSCKFWSession *fwSession, 1.1333 + NSSCKFWObject *fwObject 1.1334 +); 1.1335 + 1.1336 +/* 1.1337 + * nssCKFWMechanism_DigestInit 1.1338 + */ 1.1339 +NSS_EXTERN CK_RV 1.1340 +nssCKFWMechanism_DigestInit 1.1341 +( 1.1342 + NSSCKFWMechanism *fwMechanism, 1.1343 + CK_MECHANISM *pMechanism, 1.1344 + NSSCKFWSession *fwSession 1.1345 +); 1.1346 + 1.1347 +/* 1.1348 + * nssCKFWMechanism_SignInit 1.1349 + */ 1.1350 +NSS_EXTERN CK_RV 1.1351 +nssCKFWMechanism_SignInit 1.1352 +( 1.1353 + NSSCKFWMechanism *fwMechanism, 1.1354 + CK_MECHANISM *pMechanism, 1.1355 + NSSCKFWSession *fwSession, 1.1356 + NSSCKFWObject *fwObject 1.1357 +); 1.1358 + 1.1359 +/* 1.1360 + * nssCKFWMechanism_SignRecoverInit 1.1361 + */ 1.1362 +NSS_EXTERN CK_RV 1.1363 +nssCKFWMechanism_SignRecoverInit 1.1364 +( 1.1365 + NSSCKFWMechanism *fwMechanism, 1.1366 + CK_MECHANISM *pMechanism, 1.1367 + NSSCKFWSession *fwSession, 1.1368 + NSSCKFWObject *fwObject 1.1369 +); 1.1370 + 1.1371 +/* 1.1372 + * nssCKFWMechanism_VerifyInit 1.1373 + */ 1.1374 +NSS_EXTERN CK_RV 1.1375 +nssCKFWMechanism_VerifyInit 1.1376 +( 1.1377 + NSSCKFWMechanism *fwMechanism, 1.1378 + CK_MECHANISM *pMechanism, 1.1379 + NSSCKFWSession *fwSession, 1.1380 + NSSCKFWObject *fwObject 1.1381 +); 1.1382 + 1.1383 +/* 1.1384 + * nssCKFWMechanism_VerifyRecoverInit 1.1385 + */ 1.1386 +NSS_EXTERN CK_RV 1.1387 +nssCKFWMechanism_VerifyRecoverInit 1.1388 +( 1.1389 + NSSCKFWMechanism *fwMechanism, 1.1390 + CK_MECHANISM *pMechanism, 1.1391 + NSSCKFWSession *fwSession, 1.1392 + NSSCKFWObject *fwObject 1.1393 +); 1.1394 + 1.1395 +/* 1.1396 + * nssCKFWMechanism_GenerateKey 1.1397 + */ 1.1398 +NSS_EXTERN NSSCKFWObject * 1.1399 +nssCKFWMechanism_GenerateKey 1.1400 +( 1.1401 + NSSCKFWMechanism *fwMechanism, 1.1402 + CK_MECHANISM_PTR pMechanism, 1.1403 + NSSCKFWSession *fwSession, 1.1404 + CK_ATTRIBUTE_PTR pTemplate, 1.1405 + CK_ULONG ulAttributeCount, 1.1406 + CK_RV *pError 1.1407 +); 1.1408 + 1.1409 +/* 1.1410 + * nssCKFWMechanism_GenerateKeyPair 1.1411 + */ 1.1412 +NSS_EXTERN CK_RV 1.1413 +nssCKFWMechanism_GenerateKeyPair 1.1414 +( 1.1415 + NSSCKFWMechanism *fwMechanism, 1.1416 + CK_MECHANISM_PTR pMechanism, 1.1417 + NSSCKFWSession *fwSession, 1.1418 + CK_ATTRIBUTE_PTR pPublicKeyTemplate, 1.1419 + CK_ULONG ulPublicKeyAttributeCount, 1.1420 + CK_ATTRIBUTE_PTR pPrivateKeyTemplate, 1.1421 + CK_ULONG ulPrivateKeyAttributeCount, 1.1422 + NSSCKFWObject **fwPublicKeyObject, 1.1423 + NSSCKFWObject **fwPrivateKeyObject 1.1424 +); 1.1425 + 1.1426 +/* 1.1427 + * nssCKFWMechanism_GetWrapKeyLength 1.1428 + */ 1.1429 +NSS_EXTERN CK_ULONG 1.1430 +nssCKFWMechanism_GetWrapKeyLength 1.1431 +( 1.1432 + NSSCKFWMechanism *fwMechanism, 1.1433 + CK_MECHANISM_PTR pMechanism, 1.1434 + NSSCKFWSession *fwSession, 1.1435 + NSSCKFWObject *fwWrappingKeyObject, 1.1436 + NSSCKFWObject *fwObject, 1.1437 + CK_RV *pError 1.1438 +); 1.1439 + 1.1440 +/* 1.1441 + * nssCKFWMechanism_WrapKey 1.1442 + */ 1.1443 +NSS_EXTERN CK_RV 1.1444 +nssCKFWMechanism_WrapKey 1.1445 +( 1.1446 + NSSCKFWMechanism *fwMechanism, 1.1447 + CK_MECHANISM_PTR pMechanism, 1.1448 + NSSCKFWSession *fwSession, 1.1449 + NSSCKFWObject *fwWrappingKeyObject, 1.1450 + NSSCKFWObject *fwObject, 1.1451 + NSSItem *wrappedKey 1.1452 +); 1.1453 + 1.1454 +/* 1.1455 + * nssCKFWMechanism_UnwrapKey 1.1456 + */ 1.1457 +NSS_EXTERN NSSCKFWObject * 1.1458 +nssCKFWMechanism_UnwrapKey 1.1459 +( 1.1460 + NSSCKFWMechanism *fwMechanism, 1.1461 + CK_MECHANISM_PTR pMechanism, 1.1462 + NSSCKFWSession *fwSession, 1.1463 + NSSCKFWObject *fwWrappingKeyObject, 1.1464 + NSSItem *wrappedKey, 1.1465 + CK_ATTRIBUTE_PTR pTemplate, 1.1466 + CK_ULONG ulAttributeCount, 1.1467 + CK_RV *pError 1.1468 +); 1.1469 + 1.1470 +/* 1.1471 + * nssCKFWMechanism_DeriveKey 1.1472 + */ 1.1473 +NSS_EXTERN NSSCKFWObject * 1.1474 +nssCKFWMechanism_DeriveKey 1.1475 +( 1.1476 + NSSCKFWMechanism *fwMechanism, 1.1477 + CK_MECHANISM_PTR pMechanism, 1.1478 + NSSCKFWSession *fwSession, 1.1479 + NSSCKFWObject *fwBaseKeyObject, 1.1480 + CK_ATTRIBUTE_PTR pTemplate, 1.1481 + CK_ULONG ulAttributeCount, 1.1482 + CK_RV *pError 1.1483 +); 1.1484 + 1.1485 +/* 1.1486 + * NSSCKFWCryptoOperation 1.1487 + * 1.1488 + * -- create/destroy -- 1.1489 + * nssCKFWCryptoOperation_Create 1.1490 + * nssCKFWCryptoOperation_Destroy 1.1491 + * 1.1492 + * -- implement public accessors -- 1.1493 + * nssCKFWCryptoOperation_GetMDCryptoOperation 1.1494 + * nssCKFWCryptoOperation_GetType 1.1495 + * 1.1496 + * -- private accessors -- 1.1497 + * 1.1498 + * -- module fronts -- 1.1499 + * nssCKFWCryptoOperation_GetFinalLength 1.1500 + * nssCKFWCryptoOperation_GetOperationLength 1.1501 + * nssCKFWCryptoOperation_Final 1.1502 + * nssCKFWCryptoOperation_Update 1.1503 + * nssCKFWCryptoOperation_DigestUpdate 1.1504 + * nssCKFWCryptoOperation_DigestKey 1.1505 + * nssCKFWCryptoOperation_UpdateFinal 1.1506 + */ 1.1507 + 1.1508 +/* 1.1509 + * nssCKFWCrytoOperation_Create 1.1510 + */ 1.1511 +NSS_EXTERN NSSCKFWCryptoOperation * 1.1512 +nssCKFWCryptoOperation_Create 1.1513 +( 1.1514 + NSSCKMDCryptoOperation *mdOperation, 1.1515 + NSSCKMDSession *mdSession, 1.1516 + NSSCKFWSession *fwSession, 1.1517 + NSSCKMDToken *mdToken, 1.1518 + NSSCKFWToken *fwToken, 1.1519 + NSSCKMDInstance *mdInstance, 1.1520 + NSSCKFWInstance *fwInstance, 1.1521 + NSSCKFWCryptoOperationType type, 1.1522 + CK_RV *pError 1.1523 +); 1.1524 + 1.1525 +/* 1.1526 + * nssCKFWCryptoOperation_Destroy 1.1527 + */ 1.1528 +NSS_EXTERN void 1.1529 +nssCKFWCryptoOperation_Destroy 1.1530 +( 1.1531 + NSSCKFWCryptoOperation *fwOperation 1.1532 +); 1.1533 + 1.1534 +/* 1.1535 + * nssCKFWCryptoOperation_GetMDCryptoOperation 1.1536 + */ 1.1537 +NSS_EXTERN NSSCKMDCryptoOperation * 1.1538 +nssCKFWCryptoOperation_GetMDCryptoOperation 1.1539 +( 1.1540 + NSSCKFWCryptoOperation *fwOperation 1.1541 +); 1.1542 + 1.1543 +/* 1.1544 + * nssCKFWCryptoOperation_GetType 1.1545 + */ 1.1546 +NSS_EXTERN NSSCKFWCryptoOperationType 1.1547 +nssCKFWCryptoOperation_GetType 1.1548 +( 1.1549 + NSSCKFWCryptoOperation *fwOperation 1.1550 +); 1.1551 + 1.1552 +/* 1.1553 + * nssCKFWCryptoOperation_GetFinalLength 1.1554 + */ 1.1555 +NSS_EXTERN CK_ULONG 1.1556 +nssCKFWCryptoOperation_GetFinalLength 1.1557 +( 1.1558 + NSSCKFWCryptoOperation *fwOperation, 1.1559 + CK_RV *pError 1.1560 +); 1.1561 + 1.1562 +/* 1.1563 + * nssCKFWCryptoOperation_GetOperationLength 1.1564 + */ 1.1565 +NSS_EXTERN CK_ULONG 1.1566 +nssCKFWCryptoOperation_GetOperationLength 1.1567 +( 1.1568 + NSSCKFWCryptoOperation *fwOperation, 1.1569 + NSSItem *inputBuffer, 1.1570 + CK_RV *pError 1.1571 +); 1.1572 + 1.1573 +/* 1.1574 + * nssCKFWCryptoOperation_Final 1.1575 + */ 1.1576 +NSS_EXTERN CK_RV 1.1577 +nssCKFWCryptoOperation_Final 1.1578 +( 1.1579 + NSSCKFWCryptoOperation *fwOperation, 1.1580 + NSSItem *outputBuffer 1.1581 +); 1.1582 + 1.1583 +/* 1.1584 + * nssCKFWCryptoOperation_Update 1.1585 + */ 1.1586 +NSS_EXTERN CK_RV 1.1587 +nssCKFWCryptoOperation_Update 1.1588 +( 1.1589 + NSSCKFWCryptoOperation *fwOperation, 1.1590 + NSSItem *inputBuffer, 1.1591 + NSSItem *outputBuffer 1.1592 +); 1.1593 + 1.1594 +/* 1.1595 + * nssCKFWCryptoOperation_DigestUpdate 1.1596 + */ 1.1597 +NSS_EXTERN CK_RV 1.1598 +nssCKFWCryptoOperation_DigestUpdate 1.1599 +( 1.1600 + NSSCKFWCryptoOperation *fwOperation, 1.1601 + NSSItem *inputBuffer 1.1602 +); 1.1603 + 1.1604 +/* 1.1605 + * nssCKFWCryptoOperation_DigestKey 1.1606 + */ 1.1607 +NSS_EXTERN CK_RV 1.1608 +nssCKFWCryptoOperation_DigestKey 1.1609 +( 1.1610 + NSSCKFWCryptoOperation *fwOperation, 1.1611 + NSSCKFWObject *fwKey 1.1612 +); 1.1613 + 1.1614 +/* 1.1615 + * nssCKFWCryptoOperation_UpdateFinal 1.1616 + */ 1.1617 +NSS_EXTERN CK_RV 1.1618 +nssCKFWCryptoOperation_UpdateFinal 1.1619 +( 1.1620 + NSSCKFWCryptoOperation *fwOperation, 1.1621 + NSSItem *inputBuffer, 1.1622 + NSSItem *outputBuffer 1.1623 +); 1.1624 + 1.1625 +/* 1.1626 + * nssCKFWCryptoOperation_UpdateCombo 1.1627 + */ 1.1628 +NSS_EXTERN CK_RV 1.1629 +nssCKFWCryptoOperation_UpdateCombo 1.1630 +( 1.1631 + NSSCKFWCryptoOperation *fwOperation, 1.1632 + NSSCKFWCryptoOperation *fwPeerOperation, 1.1633 + NSSItem *inputBuffer, 1.1634 + NSSItem *outputBuffer 1.1635 +); 1.1636 + 1.1637 +/* 1.1638 + * NSSCKFWSession 1.1639 + * 1.1640 + * -- create/destroy -- 1.1641 + * nssCKFWSession_Create 1.1642 + * nssCKFWSession_Destroy 1.1643 + * 1.1644 + * -- implement public accessors -- 1.1645 + * nssCKFWSession_GetMDSession 1.1646 + * nssCKFWSession_GetArena 1.1647 + * nssCKFWSession_CallNotification 1.1648 + * nssCKFWSession_IsRWSession 1.1649 + * nssCKFWSession_IsSO 1.1650 + * nssCKFWSession_GetCurrentCryptoOperation 1.1651 + * 1.1652 + * -- private accessors -- 1.1653 + * nssCKFWSession_GetFWSlot 1.1654 + * nssCKFWSession_GetSessionState 1.1655 + * nssCKFWSession_SetFWFindObjects 1.1656 + * nssCKFWSession_GetFWFindObjects 1.1657 + * nssCKFWSession_SetMDSession 1.1658 + * nssCKFWSession_SetHandle 1.1659 + * nssCKFWSession_GetHandle 1.1660 + * nssCKFWSession_RegisterSessionObject 1.1661 + * nssCKFWSession_DeregisterSessionObject 1.1662 + * nssCKFWSession_SetCurrentCryptoOperation 1.1663 + * 1.1664 + * -- module fronts -- 1.1665 + * nssCKFWSession_GetDeviceError 1.1666 + * nssCKFWSession_Login 1.1667 + * nssCKFWSession_Logout 1.1668 + * nssCKFWSession_InitPIN 1.1669 + * nssCKFWSession_SetPIN 1.1670 + * nssCKFWSession_GetOperationStateLen 1.1671 + * nssCKFWSession_GetOperationState 1.1672 + * nssCKFWSession_SetOperationState 1.1673 + * nssCKFWSession_CreateObject 1.1674 + * nssCKFWSession_CopyObject 1.1675 + * nssCKFWSession_FindObjectsInit 1.1676 + * nssCKFWSession_SeedRandom 1.1677 + * nssCKFWSession_GetRandom 1.1678 + * nssCKFWSession_Final 1.1679 + * nssCKFWSession_Update 1.1680 + * nssCKFWSession_DigestUpdate 1.1681 + * nssCKFWSession_DigestKey 1.1682 + * nssCKFWSession_UpdateFinal 1.1683 + * nssCKFWSession_UpdateCombo 1.1684 + */ 1.1685 + 1.1686 +/* 1.1687 + * nssCKFWSession_Create 1.1688 + * 1.1689 + */ 1.1690 +NSS_EXTERN NSSCKFWSession * 1.1691 +nssCKFWSession_Create 1.1692 +( 1.1693 + NSSCKFWToken *fwToken, 1.1694 + CK_BBOOL rw, 1.1695 + CK_VOID_PTR pApplication, 1.1696 + CK_NOTIFY Notify, 1.1697 + CK_RV *pError 1.1698 +); 1.1699 + 1.1700 +/* 1.1701 + * nssCKFWSession_Destroy 1.1702 + * 1.1703 + */ 1.1704 +NSS_EXTERN CK_RV 1.1705 +nssCKFWSession_Destroy 1.1706 +( 1.1707 + NSSCKFWSession *fwSession, 1.1708 + CK_BBOOL removeFromTokenHash 1.1709 +); 1.1710 + 1.1711 +/* 1.1712 + * nssCKFWSession_GetMDSession 1.1713 + * 1.1714 + */ 1.1715 +NSS_EXTERN NSSCKMDSession * 1.1716 +nssCKFWSession_GetMDSession 1.1717 +( 1.1718 + NSSCKFWSession *fwSession 1.1719 +); 1.1720 + 1.1721 +/* 1.1722 + * nssCKFWSession_GetArena 1.1723 + * 1.1724 + */ 1.1725 +NSS_EXTERN NSSArena * 1.1726 +nssCKFWSession_GetArena 1.1727 +( 1.1728 + NSSCKFWSession *fwSession, 1.1729 + CK_RV *pError 1.1730 +); 1.1731 + 1.1732 +/* 1.1733 + * nssCKFWSession_CallNotification 1.1734 + * 1.1735 + */ 1.1736 +NSS_EXTERN CK_RV 1.1737 +nssCKFWSession_CallNotification 1.1738 +( 1.1739 + NSSCKFWSession *fwSession, 1.1740 + CK_NOTIFICATION event 1.1741 +); 1.1742 + 1.1743 +/* 1.1744 + * nssCKFWSession_IsRWSession 1.1745 + * 1.1746 + */ 1.1747 +NSS_EXTERN CK_BBOOL 1.1748 +nssCKFWSession_IsRWSession 1.1749 +( 1.1750 + NSSCKFWSession *fwSession 1.1751 +); 1.1752 + 1.1753 +/* 1.1754 + * nssCKFWSession_IsSO 1.1755 + * 1.1756 + */ 1.1757 +NSS_EXTERN CK_BBOOL 1.1758 +nssCKFWSession_IsSO 1.1759 +( 1.1760 + NSSCKFWSession *fwSession 1.1761 +); 1.1762 + 1.1763 +/* 1.1764 + * nssCKFWSession_GetFWSlot 1.1765 + * 1.1766 + */ 1.1767 +NSS_EXTERN NSSCKFWSlot * 1.1768 +nssCKFWSession_GetFWSlot 1.1769 +( 1.1770 + NSSCKFWSession *fwSession 1.1771 +); 1.1772 + 1.1773 +/* 1.1774 + * nssCFKWSession_GetSessionState 1.1775 + * 1.1776 + */ 1.1777 +NSS_EXTERN CK_STATE 1.1778 +nssCKFWSession_GetSessionState 1.1779 +( 1.1780 + NSSCKFWSession *fwSession 1.1781 +); 1.1782 + 1.1783 +/* 1.1784 + * nssCKFWSession_SetFWFindObjects 1.1785 + * 1.1786 + */ 1.1787 +NSS_EXTERN CK_RV 1.1788 +nssCKFWSession_SetFWFindObjects 1.1789 +( 1.1790 + NSSCKFWSession *fwSession, 1.1791 + NSSCKFWFindObjects *fwFindObjects 1.1792 +); 1.1793 + 1.1794 +/* 1.1795 + * nssCKFWSession_GetFWFindObjects 1.1796 + * 1.1797 + */ 1.1798 +NSS_EXTERN NSSCKFWFindObjects * 1.1799 +nssCKFWSession_GetFWFindObjects 1.1800 +( 1.1801 + NSSCKFWSession *fwSesssion, 1.1802 + CK_RV *pError 1.1803 +); 1.1804 + 1.1805 +/* 1.1806 + * nssCKFWSession_SetMDSession 1.1807 + * 1.1808 + */ 1.1809 +NSS_EXTERN CK_RV 1.1810 +nssCKFWSession_SetMDSession 1.1811 +( 1.1812 + NSSCKFWSession *fwSession, 1.1813 + NSSCKMDSession *mdSession 1.1814 +); 1.1815 + 1.1816 +/* 1.1817 + * nssCKFWSession_SetHandle 1.1818 + * 1.1819 + */ 1.1820 +NSS_EXTERN CK_RV 1.1821 +nssCKFWSession_SetHandle 1.1822 +( 1.1823 + NSSCKFWSession *fwSession, 1.1824 + CK_SESSION_HANDLE hSession 1.1825 +); 1.1826 + 1.1827 +/* 1.1828 + * nssCKFWSession_GetHandle 1.1829 + * 1.1830 + */ 1.1831 +NSS_EXTERN CK_SESSION_HANDLE 1.1832 +nssCKFWSession_GetHandle 1.1833 +( 1.1834 + NSSCKFWSession *fwSession 1.1835 +); 1.1836 + 1.1837 +/* 1.1838 + * nssCKFWSession_RegisterSessionObject 1.1839 + * 1.1840 + */ 1.1841 +NSS_EXTERN CK_RV 1.1842 +nssCKFWSession_RegisterSessionObject 1.1843 +( 1.1844 + NSSCKFWSession *fwSession, 1.1845 + NSSCKFWObject *fwObject 1.1846 +); 1.1847 + 1.1848 +/* 1.1849 + * nssCKFWSession_DeregisterSessionObject 1.1850 + * 1.1851 + */ 1.1852 +NSS_EXTERN CK_RV 1.1853 +nssCKFWSession_DeregisterSessionObject 1.1854 +( 1.1855 + NSSCKFWSession *fwSession, 1.1856 + NSSCKFWObject *fwObject 1.1857 +); 1.1858 + 1.1859 +/* 1.1860 + * nssCKFWSession_GetDeviceError 1.1861 + * 1.1862 + */ 1.1863 +NSS_EXTERN CK_ULONG 1.1864 +nssCKFWSession_GetDeviceError 1.1865 +( 1.1866 + NSSCKFWSession *fwSession 1.1867 +); 1.1868 + 1.1869 +/* 1.1870 + * nssCKFWSession_Login 1.1871 + * 1.1872 + */ 1.1873 +NSS_EXTERN CK_RV 1.1874 +nssCKFWSession_Login 1.1875 +( 1.1876 + NSSCKFWSession *fwSession, 1.1877 + CK_USER_TYPE userType, 1.1878 + NSSItem *pin 1.1879 +); 1.1880 + 1.1881 +/* 1.1882 + * nssCKFWSession_Logout 1.1883 + * 1.1884 + */ 1.1885 +NSS_EXTERN CK_RV 1.1886 +nssCKFWSession_Logout 1.1887 +( 1.1888 + NSSCKFWSession *fwSession 1.1889 +); 1.1890 + 1.1891 +/* 1.1892 + * nssCKFWSession_InitPIN 1.1893 + * 1.1894 + */ 1.1895 +NSS_EXTERN CK_RV 1.1896 +nssCKFWSession_InitPIN 1.1897 +( 1.1898 + NSSCKFWSession *fwSession, 1.1899 + NSSItem *pin 1.1900 +); 1.1901 + 1.1902 +/* 1.1903 + * nssCKFWSession_SetPIN 1.1904 + * 1.1905 + */ 1.1906 +NSS_EXTERN CK_RV 1.1907 +nssCKFWSession_SetPIN 1.1908 +( 1.1909 + NSSCKFWSession *fwSession, 1.1910 + NSSItem *newPin, 1.1911 + NSSItem *oldPin 1.1912 +); 1.1913 + 1.1914 +/* 1.1915 + * nssCKFWSession_GetOperationStateLen 1.1916 + * 1.1917 + */ 1.1918 +NSS_EXTERN CK_ULONG 1.1919 +nssCKFWSession_GetOperationStateLen 1.1920 +( 1.1921 + NSSCKFWSession *fwSession, 1.1922 + CK_RV *pError 1.1923 +); 1.1924 + 1.1925 +/* 1.1926 + * nssCKFWSession_GetOperationState 1.1927 + * 1.1928 + */ 1.1929 +NSS_EXTERN CK_RV 1.1930 +nssCKFWSession_GetOperationState 1.1931 +( 1.1932 + NSSCKFWSession *fwSession, 1.1933 + NSSItem *buffer 1.1934 +); 1.1935 + 1.1936 +/* 1.1937 + * nssCKFWSession_SetOperationState 1.1938 + * 1.1939 + */ 1.1940 +NSS_EXTERN CK_RV 1.1941 +nssCKFWSession_SetOperationState 1.1942 +( 1.1943 + NSSCKFWSession *fwSession, 1.1944 + NSSItem *state, 1.1945 + NSSCKFWObject *encryptionKey, 1.1946 + NSSCKFWObject *authenticationKey 1.1947 +); 1.1948 + 1.1949 +/* 1.1950 + * nssCKFWSession_CreateObject 1.1951 + * 1.1952 + */ 1.1953 +NSS_EXTERN NSSCKFWObject * 1.1954 +nssCKFWSession_CreateObject 1.1955 +( 1.1956 + NSSCKFWSession *fwSession, 1.1957 + CK_ATTRIBUTE_PTR pTemplate, 1.1958 + CK_ULONG ulAttributeCount, 1.1959 + CK_RV *pError 1.1960 +); 1.1961 + 1.1962 +/* 1.1963 + * nssCKFWSession_CopyObject 1.1964 + * 1.1965 + */ 1.1966 +NSS_EXTERN NSSCKFWObject * 1.1967 +nssCKFWSession_CopyObject 1.1968 +( 1.1969 + NSSCKFWSession *fwSession, 1.1970 + NSSCKFWObject *object, 1.1971 + CK_ATTRIBUTE_PTR pTemplate, 1.1972 + CK_ULONG ulAttributeCount, 1.1973 + CK_RV *pError 1.1974 +); 1.1975 + 1.1976 +/* 1.1977 + * nssCKFWSession_FindObjectsInit 1.1978 + * 1.1979 + */ 1.1980 +NSS_EXTERN NSSCKFWFindObjects * 1.1981 +nssCKFWSession_FindObjectsInit 1.1982 +( 1.1983 + NSSCKFWSession *fwSession, 1.1984 + CK_ATTRIBUTE_PTR pTemplate, 1.1985 + CK_ULONG ulAttributeCount, 1.1986 + CK_RV *pError 1.1987 +); 1.1988 + 1.1989 +/* 1.1990 + * nssCKFWSession_SetCurrentCryptoOperation 1.1991 + */ 1.1992 +NSS_IMPLEMENT void 1.1993 +nssCKFWSession_SetCurrentCryptoOperation 1.1994 +( 1.1995 + NSSCKFWSession *fwSession, 1.1996 + NSSCKFWCryptoOperation * fwOperation, 1.1997 + NSSCKFWCryptoOperationState state 1.1998 +); 1.1999 + 1.2000 +/* 1.2001 + * nssCKFWSession_GetCurrentCryptoOperation 1.2002 + */ 1.2003 +NSS_IMPLEMENT NSSCKFWCryptoOperation * 1.2004 +nssCKFWSession_GetCurrentCryptoOperation 1.2005 +( 1.2006 + NSSCKFWSession *fwSession, 1.2007 + NSSCKFWCryptoOperationState state 1.2008 +); 1.2009 + 1.2010 +/* 1.2011 + * nssCKFWSession_Final 1.2012 + * (terminate a cryptographic operation and get the result) 1.2013 + */ 1.2014 +NSS_IMPLEMENT CK_RV 1.2015 +nssCKFWSession_Final 1.2016 +( 1.2017 + NSSCKFWSession *fwSession, 1.2018 + NSSCKFWCryptoOperationType type, 1.2019 + NSSCKFWCryptoOperationState state, 1.2020 + CK_BYTE_PTR outBuf, 1.2021 + CK_ULONG_PTR outBufLen 1.2022 +); 1.2023 + 1.2024 +/* 1.2025 + * nssCKFWSession_Update 1.2026 + * (get the next step of an encrypt/decrypt operation) 1.2027 + */ 1.2028 +NSS_IMPLEMENT CK_RV 1.2029 +nssCKFWSession_Update 1.2030 +( 1.2031 + NSSCKFWSession *fwSession, 1.2032 + NSSCKFWCryptoOperationType type, 1.2033 + NSSCKFWCryptoOperationState state, 1.2034 + CK_BYTE_PTR inBuf, 1.2035 + CK_ULONG inBufLen, 1.2036 + CK_BYTE_PTR outBuf, 1.2037 + CK_ULONG_PTR outBufLen 1.2038 +); 1.2039 + 1.2040 +/* 1.2041 + * nssCKFWSession_DigestUpdate 1.2042 + * (do the next step of an digest/sign/verify operation) 1.2043 + */ 1.2044 +NSS_IMPLEMENT CK_RV 1.2045 +nssCKFWSession_DigestUpdate 1.2046 +( 1.2047 + NSSCKFWSession *fwSession, 1.2048 + NSSCKFWCryptoOperationType type, 1.2049 + NSSCKFWCryptoOperationState state, 1.2050 + CK_BYTE_PTR inBuf, 1.2051 + CK_ULONG inBufLen 1.2052 +); 1.2053 + 1.2054 +/* 1.2055 + * nssCKFWSession_DigestKey 1.2056 + * (do the next step of an digest/sign/verify operation) 1.2057 + */ 1.2058 +NSS_IMPLEMENT CK_RV 1.2059 +nssCKFWSession_DigestKey 1.2060 +( 1.2061 + NSSCKFWSession *fwSession, 1.2062 + NSSCKFWObject *fwKey 1.2063 +); 1.2064 + 1.2065 +/* 1.2066 + * nssCKFWSession_UpdateFinal 1.2067 + * (do a single-step of a cryptographic operation and get the result) 1.2068 + */ 1.2069 +NSS_IMPLEMENT CK_RV 1.2070 +nssCKFWSession_UpdateFinal 1.2071 +( 1.2072 + NSSCKFWSession *fwSession, 1.2073 + NSSCKFWCryptoOperationType type, 1.2074 + NSSCKFWCryptoOperationState state, 1.2075 + CK_BYTE_PTR inBuf, 1.2076 + CK_ULONG inBufLen, 1.2077 + CK_BYTE_PTR outBuf, 1.2078 + CK_ULONG_PTR outBufLen 1.2079 +); 1.2080 + 1.2081 +/* 1.2082 + * nssCKFWSession_UpdateCombo 1.2083 + * (do a combination encrypt/decrypt and sign/digest/verify operation) 1.2084 + */ 1.2085 +NSS_IMPLEMENT CK_RV 1.2086 +nssCKFWSession_UpdateCombo 1.2087 +( 1.2088 + NSSCKFWSession *fwSession, 1.2089 + NSSCKFWCryptoOperationType encryptType, 1.2090 + NSSCKFWCryptoOperationType digestType, 1.2091 + NSSCKFWCryptoOperationState digestState, 1.2092 + CK_BYTE_PTR inBuf, 1.2093 + CK_ULONG inBufLen, 1.2094 + CK_BYTE_PTR outBuf, 1.2095 + CK_ULONG_PTR outBufLen 1.2096 +); 1.2097 + 1.2098 +/* 1.2099 + * nssCKFWSession_SeedRandom 1.2100 + * 1.2101 + */ 1.2102 +NSS_EXTERN CK_RV 1.2103 +nssCKFWSession_SeedRandom 1.2104 +( 1.2105 + NSSCKFWSession *fwSession, 1.2106 + NSSItem *seed 1.2107 +); 1.2108 + 1.2109 +/* 1.2110 + * nssCKFWSession_GetRandom 1.2111 + * 1.2112 + */ 1.2113 +NSS_EXTERN CK_RV 1.2114 +nssCKFWSession_GetRandom 1.2115 +( 1.2116 + NSSCKFWSession *fwSession, 1.2117 + NSSItem *buffer 1.2118 +); 1.2119 + 1.2120 +/* 1.2121 + * NSSCKFWObject 1.2122 + * 1.2123 + * -- create/destroy -- 1.2124 + * nssCKFWObject_Create 1.2125 + * nssCKFWObject_Finalize 1.2126 + * nssCKFWObject_Destroy 1.2127 + * 1.2128 + * -- implement public accessors -- 1.2129 + * nssCKFWObject_GetMDObject 1.2130 + * nssCKFWObject_GetArena 1.2131 + * 1.2132 + * -- private accessors -- 1.2133 + * nssCKFWObject_SetHandle 1.2134 + * nssCKFWObject_GetHandle 1.2135 + * 1.2136 + * -- module fronts -- 1.2137 + * nssCKFWObject_IsTokenObject 1.2138 + * nssCKFWObject_GetAttributeCount 1.2139 + * nssCKFWObject_GetAttributeTypes 1.2140 + * nssCKFWObject_GetAttributeSize 1.2141 + * nssCKFWObject_GetAttribute 1.2142 + * nssCKFWObject_SetAttribute 1.2143 + * nssCKFWObject_GetObjectSize 1.2144 + */ 1.2145 + 1.2146 +/* 1.2147 + * nssCKFWObject_Create 1.2148 + * 1.2149 + */ 1.2150 +NSS_EXTERN NSSCKFWObject * 1.2151 +nssCKFWObject_Create 1.2152 +( 1.2153 + NSSArena *arena, 1.2154 + NSSCKMDObject *mdObject, 1.2155 + NSSCKFWSession *fwSession, 1.2156 + NSSCKFWToken *fwToken, 1.2157 + NSSCKFWInstance *fwInstance, 1.2158 + CK_RV *pError 1.2159 +); 1.2160 + 1.2161 +/* 1.2162 + * nssCKFWObject_Finalize 1.2163 + * 1.2164 + */ 1.2165 +NSS_EXTERN void 1.2166 +nssCKFWObject_Finalize 1.2167 +( 1.2168 + NSSCKFWObject *fwObject, 1.2169 + PRBool removeFromHash 1.2170 +); 1.2171 + 1.2172 +/* 1.2173 + * nssCKFWObject_Destroy 1.2174 + * 1.2175 + */ 1.2176 +NSS_EXTERN void 1.2177 +nssCKFWObject_Destroy 1.2178 +( 1.2179 + NSSCKFWObject *fwObject 1.2180 +); 1.2181 + 1.2182 +/* 1.2183 + * nssCKFWObject_GetMDObject 1.2184 + * 1.2185 + */ 1.2186 +NSS_EXTERN NSSCKMDObject * 1.2187 +nssCKFWObject_GetMDObject 1.2188 +( 1.2189 + NSSCKFWObject *fwObject 1.2190 +); 1.2191 + 1.2192 +/* 1.2193 + * nssCKFWObject_GetArena 1.2194 + * 1.2195 + */ 1.2196 +NSS_EXTERN NSSArena * 1.2197 +nssCKFWObject_GetArena 1.2198 +( 1.2199 + NSSCKFWObject *fwObject, 1.2200 + CK_RV *pError 1.2201 +); 1.2202 + 1.2203 +/* 1.2204 + * nssCKFWObject_SetHandle 1.2205 + * 1.2206 + */ 1.2207 +NSS_EXTERN CK_RV 1.2208 +nssCKFWObject_SetHandle 1.2209 +( 1.2210 + NSSCKFWObject *fwObject, 1.2211 + CK_OBJECT_HANDLE hObject 1.2212 +); 1.2213 + 1.2214 +/* 1.2215 + * nssCKFWObject_GetHandle 1.2216 + * 1.2217 + */ 1.2218 +NSS_EXTERN CK_OBJECT_HANDLE 1.2219 +nssCKFWObject_GetHandle 1.2220 +( 1.2221 + NSSCKFWObject *fwObject 1.2222 +); 1.2223 + 1.2224 +/* 1.2225 + * nssCKFWObject_IsTokenObject 1.2226 + * 1.2227 + */ 1.2228 +NSS_EXTERN CK_BBOOL 1.2229 +nssCKFWObject_IsTokenObject 1.2230 +( 1.2231 + NSSCKFWObject *fwObject 1.2232 +); 1.2233 + 1.2234 +/* 1.2235 + * nssCKFWObject_GetAttributeCount 1.2236 + * 1.2237 + */ 1.2238 +NSS_EXTERN CK_ULONG 1.2239 +nssCKFWObject_GetAttributeCount 1.2240 +( 1.2241 + NSSCKFWObject *fwObject, 1.2242 + CK_RV *pError 1.2243 +); 1.2244 + 1.2245 +/* 1.2246 + * nssCKFWObject_GetAttributeTypes 1.2247 + * 1.2248 + */ 1.2249 +NSS_EXTERN CK_RV 1.2250 +nssCKFWObject_GetAttributeTypes 1.2251 +( 1.2252 + NSSCKFWObject *fwObject, 1.2253 + CK_ATTRIBUTE_TYPE_PTR typeArray, 1.2254 + CK_ULONG ulCount 1.2255 +); 1.2256 + 1.2257 +/* 1.2258 + * nssCKFWObject_GetAttributeSize 1.2259 + * 1.2260 + */ 1.2261 +NSS_EXTERN CK_ULONG 1.2262 +nssCKFWObject_GetAttributeSize 1.2263 +( 1.2264 + NSSCKFWObject *fwObject, 1.2265 + CK_ATTRIBUTE_TYPE attribute, 1.2266 + CK_RV *pError 1.2267 +); 1.2268 + 1.2269 +/* 1.2270 + * nssCKFWObject_GetAttribute 1.2271 + * 1.2272 + * Usual NSS allocation rules: 1.2273 + * If itemOpt is not NULL, it will be returned; otherwise an NSSItem 1.2274 + * will be allocated. If itemOpt is not NULL but itemOpt->data is, 1.2275 + * the buffer will be allocated; otherwise, the buffer will be used. 1.2276 + * Any allocations will come from the optional arena, if one is 1.2277 + * specified. 1.2278 + */ 1.2279 +NSS_EXTERN NSSItem * 1.2280 +nssCKFWObject_GetAttribute 1.2281 +( 1.2282 + NSSCKFWObject *fwObject, 1.2283 + CK_ATTRIBUTE_TYPE attribute, 1.2284 + NSSItem *itemOpt, 1.2285 + NSSArena *arenaOpt, 1.2286 + CK_RV *pError 1.2287 +); 1.2288 + 1.2289 +/* 1.2290 + * nssCKFWObject_SetAttribute 1.2291 + * 1.2292 + */ 1.2293 +NSS_EXTERN CK_RV 1.2294 +nssCKFWObject_SetAttribute 1.2295 +( 1.2296 + NSSCKFWObject *fwObject, 1.2297 + NSSCKFWSession *fwSession, 1.2298 + CK_ATTRIBUTE_TYPE attribute, 1.2299 + NSSItem *value 1.2300 +); 1.2301 + 1.2302 +/* 1.2303 + * nssCKFWObject_GetObjectSize 1.2304 + * 1.2305 + */ 1.2306 +NSS_EXTERN CK_ULONG 1.2307 +nssCKFWObject_GetObjectSize 1.2308 +( 1.2309 + NSSCKFWObject *fwObject, 1.2310 + CK_RV *pError 1.2311 +); 1.2312 + 1.2313 +/* 1.2314 + * NSSCKFWFindObjects 1.2315 + * 1.2316 + * -- create/destroy -- 1.2317 + * nssCKFWFindObjects_Create 1.2318 + * nssCKFWFindObjects_Destroy 1.2319 + * 1.2320 + * -- implement public accessors -- 1.2321 + * nssCKFWFindObjects_GetMDFindObjects 1.2322 + * 1.2323 + * -- private accessors -- 1.2324 + * 1.2325 + * -- module fronts -- 1.2326 + * nssCKFWFindObjects_Next 1.2327 + */ 1.2328 + 1.2329 +/* 1.2330 + * nssCKFWFindObjects_Create 1.2331 + * 1.2332 + */ 1.2333 +NSS_EXTERN NSSCKFWFindObjects * 1.2334 +nssCKFWFindObjects_Create 1.2335 +( 1.2336 + NSSCKFWSession *fwSession, 1.2337 + NSSCKFWToken *fwToken, 1.2338 + NSSCKFWInstance *fwInstance, 1.2339 + NSSCKMDFindObjects *mdFindObjects1, 1.2340 + NSSCKMDFindObjects *mdFindObjects2, 1.2341 + CK_RV *pError 1.2342 +); 1.2343 + 1.2344 +/* 1.2345 + * nssCKFWFindObjects_Destroy 1.2346 + * 1.2347 + */ 1.2348 +NSS_EXTERN void 1.2349 +nssCKFWFindObjects_Destroy 1.2350 +( 1.2351 + NSSCKFWFindObjects *fwFindObjects 1.2352 +); 1.2353 + 1.2354 +/* 1.2355 + * nssCKFWFindObjects_GetMDFindObjects 1.2356 + * 1.2357 + */ 1.2358 +NSS_EXTERN NSSCKMDFindObjects * 1.2359 +nssCKFWFindObjects_GetMDFindObjects 1.2360 +( 1.2361 + NSSCKFWFindObjects *fwFindObjects 1.2362 +); 1.2363 + 1.2364 +/* 1.2365 + * nssCKFWFindObjects_Next 1.2366 + * 1.2367 + */ 1.2368 +NSS_EXTERN NSSCKFWObject * 1.2369 +nssCKFWFindObjects_Next 1.2370 +( 1.2371 + NSSCKFWFindObjects *fwFindObjects, 1.2372 + NSSArena *arenaOpt, 1.2373 + CK_RV *pError 1.2374 +); 1.2375 + 1.2376 +/* 1.2377 + * NSSCKFWMutex 1.2378 + * 1.2379 + * nssCKFWMutex_Create 1.2380 + * nssCKFWMutex_Destroy 1.2381 + * nssCKFWMutex_Lock 1.2382 + * nssCKFWMutex_Unlock 1.2383 + * 1.2384 + */ 1.2385 + 1.2386 +/* 1.2387 + * nssCKFWMutex_Create 1.2388 + * 1.2389 + */ 1.2390 +NSS_EXTERN NSSCKFWMutex * 1.2391 +nssCKFWMutex_Create 1.2392 +( 1.2393 + CK_C_INITIALIZE_ARGS_PTR pInitArgs, 1.2394 + CryptokiLockingState LockingState, 1.2395 + NSSArena *arena, 1.2396 + CK_RV *pError 1.2397 +); 1.2398 + 1.2399 +/* 1.2400 + * nssCKFWMutex_Destroy 1.2401 + * 1.2402 + */ 1.2403 +NSS_EXTERN CK_RV 1.2404 +nssCKFWMutex_Destroy 1.2405 +( 1.2406 + NSSCKFWMutex *mutex 1.2407 +); 1.2408 + 1.2409 +/* 1.2410 + * nssCKFWMutex_Lock 1.2411 + * 1.2412 + */ 1.2413 +NSS_EXTERN CK_RV 1.2414 +nssCKFWMutex_Lock 1.2415 +( 1.2416 + NSSCKFWMutex *mutex 1.2417 +); 1.2418 + 1.2419 +/* 1.2420 + * nssCKFWMutex_Unlock 1.2421 + * 1.2422 + */ 1.2423 +NSS_EXTERN CK_RV 1.2424 +nssCKFWMutex_Unlock 1.2425 +( 1.2426 + NSSCKFWMutex *mutex 1.2427 +); 1.2428 + 1.2429 +#endif /* CKFW_H */