1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/security/nss/lib/ckfw/nssckfwc.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,1013 @@ 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 NSSCKFWC_H 1.9 +#define NSSCKFWC_H 1.10 + 1.11 +/* 1.12 + * nssckfwc.h 1.13 + * 1.14 + * This file prototypes all of the NSS Cryptoki Framework "wrapper" 1.15 + * which implement the PKCS#11 API. Technically, these are public 1.16 + * routines (with capital "NSS" prefixes), since they are called 1.17 + * from (generated) code within a Module using the Framework. 1.18 + * However, they should not be called except from those generated 1.19 + * calls. Hence, the prototypes have been split out into this file. 1.20 + */ 1.21 + 1.22 +#ifndef NSSCKT_H 1.23 +#include "nssckt.h" 1.24 +#endif /* NSSCKT_H */ 1.25 + 1.26 +#ifndef NSSCKFWT_H 1.27 +#include "nssckfwt.h" 1.28 +#endif /* NSSCKFWT_H */ 1.29 + 1.30 +#ifndef NSSCKMDT_H 1.31 +#include "nssckmdt.h" 1.32 +#endif /* NSSCKMDT_H */ 1.33 + 1.34 +/* 1.35 + * NSSCKFWC_Initialize 1.36 + * NSSCKFWC_Finalize 1.37 + * NSSCKFWC_GetInfo 1.38 + * -- NSSCKFWC_GetFunctionList -- see the API insert file 1.39 + * NSSCKFWC_GetSlotList 1.40 + * NSSCKFWC_GetSlotInfo 1.41 + * NSSCKFWC_GetTokenInfo 1.42 + * NSSCKFWC_WaitForSlotEvent 1.43 + * NSSCKFWC_GetMechanismList 1.44 + * NSSCKFWC_GetMechanismInfo 1.45 + * NSSCKFWC_InitToken 1.46 + * NSSCKFWC_InitPIN 1.47 + * NSSCKFWC_SetPIN 1.48 + * NSSCKFWC_OpenSession 1.49 + * NSSCKFWC_CloseSession 1.50 + * NSSCKFWC_CloseAllSessions 1.51 + * NSSCKFWC_GetSessionInfo 1.52 + * NSSCKFWC_GetOperationState 1.53 + * NSSCKFWC_SetOperationState 1.54 + * NSSCKFWC_Login 1.55 + * NSSCKFWC_Logout 1.56 + * NSSCKFWC_CreateObject 1.57 + * NSSCKFWC_CopyObject 1.58 + * NSSCKFWC_DestroyObject 1.59 + * NSSCKFWC_GetObjectSize 1.60 + * NSSCKFWC_GetAttributeValue 1.61 + * NSSCKFWC_SetAttributeValue 1.62 + * NSSCKFWC_FindObjectsInit 1.63 + * NSSCKFWC_FindObjects 1.64 + * NSSCKFWC_FindObjectsFinal 1.65 + * NSSCKFWC_EncryptInit 1.66 + * NSSCKFWC_Encrypt 1.67 + * NSSCKFWC_EncryptUpdate 1.68 + * NSSCKFWC_EncryptFinal 1.69 + * NSSCKFWC_DecryptInit 1.70 + * NSSCKFWC_Decrypt 1.71 + * NSSCKFWC_DecryptUpdate 1.72 + * NSSCKFWC_DecryptFinal 1.73 + * NSSCKFWC_DigestInit 1.74 + * NSSCKFWC_Digest 1.75 + * NSSCKFWC_DigestUpdate 1.76 + * NSSCKFWC_DigestKey 1.77 + * NSSCKFWC_DigestFinal 1.78 + * NSSCKFWC_SignInit 1.79 + * NSSCKFWC_Sign 1.80 + * NSSCKFWC_SignUpdate 1.81 + * NSSCKFWC_SignFinal 1.82 + * NSSCKFWC_SignRecoverInit 1.83 + * NSSCKFWC_SignRecover 1.84 + * NSSCKFWC_VerifyInit 1.85 + * NSSCKFWC_Verify 1.86 + * NSSCKFWC_VerifyUpdate 1.87 + * NSSCKFWC_VerifyFinal 1.88 + * NSSCKFWC_VerifyRecoverInit 1.89 + * NSSCKFWC_VerifyRecover 1.90 + * NSSCKFWC_DigestEncryptUpdate 1.91 + * NSSCKFWC_DecryptDigestUpdate 1.92 + * NSSCKFWC_SignEncryptUpdate 1.93 + * NSSCKFWC_DecryptVerifyUpdate 1.94 + * NSSCKFWC_GenerateKey 1.95 + * NSSCKFWC_GenerateKeyPair 1.96 + * NSSCKFWC_WrapKey 1.97 + * NSSCKFWC_UnwrapKey 1.98 + * NSSCKFWC_DeriveKey 1.99 + * NSSCKFWC_SeedRandom 1.100 + * NSSCKFWC_GenerateRandom 1.101 + * NSSCKFWC_GetFunctionStatus 1.102 + * NSSCKFWC_CancelFunction 1.103 + */ 1.104 + 1.105 +/* 1.106 + * NSSCKFWC_Initialize 1.107 + * 1.108 + */ 1.109 +NSS_EXTERN CK_RV 1.110 +NSSCKFWC_Initialize 1.111 +( 1.112 + NSSCKFWInstance **pFwInstance, 1.113 + NSSCKMDInstance *mdInstance, 1.114 + CK_VOID_PTR pInitArgs 1.115 +); 1.116 + 1.117 +/* 1.118 + * NSSCKFWC_Finalize 1.119 + * 1.120 + */ 1.121 +NSS_EXTERN CK_RV 1.122 +NSSCKFWC_Finalize 1.123 +( 1.124 + NSSCKFWInstance **pFwInstance 1.125 +); 1.126 + 1.127 +/* 1.128 + * NSSCKFWC_GetInfo 1.129 + * 1.130 + */ 1.131 +NSS_EXTERN CK_RV 1.132 +NSSCKFWC_GetInfo 1.133 +( 1.134 + NSSCKFWInstance *fwInstance, 1.135 + CK_INFO_PTR pInfo 1.136 +); 1.137 + 1.138 +/* 1.139 + * C_GetFunctionList is implemented entirely in the Module's file which 1.140 + * includes the Framework API insert file. It requires no "actual" 1.141 + * NSSCKFW routine. 1.142 + */ 1.143 + 1.144 +/* 1.145 + * NSSCKFWC_GetSlotList 1.146 + * 1.147 + */ 1.148 +NSS_EXTERN CK_RV 1.149 +NSSCKFWC_GetSlotList 1.150 +( 1.151 + NSSCKFWInstance *fwInstance, 1.152 + CK_BBOOL tokenPresent, 1.153 + CK_SLOT_ID_PTR pSlotList, 1.154 + CK_ULONG_PTR pulCount 1.155 +); 1.156 + 1.157 +/* 1.158 + * NSSCKFWC_GetSlotInfo 1.159 + * 1.160 + */ 1.161 +NSS_EXTERN CK_RV 1.162 +NSSCKFWC_GetSlotInfo 1.163 +( 1.164 + NSSCKFWInstance *fwInstance, 1.165 + CK_SLOT_ID slotID, 1.166 + CK_SLOT_INFO_PTR pInfo 1.167 +); 1.168 + 1.169 +/* 1.170 + * NSSCKFWC_GetTokenInfo 1.171 + * 1.172 + */ 1.173 +NSS_EXTERN CK_RV 1.174 +NSSCKFWC_GetTokenInfo 1.175 +( 1.176 + NSSCKFWInstance *fwInstance, 1.177 + CK_SLOT_ID slotID, 1.178 + CK_TOKEN_INFO_PTR pInfo 1.179 +); 1.180 + 1.181 +/* 1.182 + * NSSCKFWC_WaitForSlotEvent 1.183 + * 1.184 + */ 1.185 +NSS_EXTERN CK_RV 1.186 +NSSCKFWC_WaitForSlotEvent 1.187 +( 1.188 + NSSCKFWInstance *fwInstance, 1.189 + CK_FLAGS flags, 1.190 + CK_SLOT_ID_PTR pSlot, 1.191 + CK_VOID_PTR pReserved 1.192 +); 1.193 + 1.194 +/* 1.195 + * NSSCKFWC_GetMechanismList 1.196 + * 1.197 + */ 1.198 +NSS_EXTERN CK_RV 1.199 +NSSCKFWC_GetMechanismList 1.200 +( 1.201 + NSSCKFWInstance *fwInstance, 1.202 + CK_SLOT_ID slotID, 1.203 + CK_MECHANISM_TYPE_PTR pMechanismList, 1.204 + CK_ULONG_PTR pulCount 1.205 +); 1.206 + 1.207 +/* 1.208 + * NSSCKFWC_GetMechanismInfo 1.209 + * 1.210 + */ 1.211 +NSS_EXTERN CK_RV 1.212 +NSSCKFWC_GetMechanismInfo 1.213 +( 1.214 + NSSCKFWInstance *fwInstance, 1.215 + CK_SLOT_ID slotID, 1.216 + CK_MECHANISM_TYPE type, 1.217 + CK_MECHANISM_INFO_PTR pInfo 1.218 +); 1.219 + 1.220 +/* 1.221 + * NSSCKFWC_InitToken 1.222 + * 1.223 + */ 1.224 +NSS_EXTERN CK_RV 1.225 +NSSCKFWC_InitToken 1.226 +( 1.227 + NSSCKFWInstance *fwInstance, 1.228 + CK_SLOT_ID slotID, 1.229 + CK_CHAR_PTR pPin, 1.230 + CK_ULONG ulPinLen, 1.231 + CK_CHAR_PTR pLabel 1.232 +); 1.233 + 1.234 +/* 1.235 + * NSSCKFWC_InitPIN 1.236 + * 1.237 + */ 1.238 +NSS_EXTERN CK_RV 1.239 +NSSCKFWC_InitPIN 1.240 +( 1.241 + NSSCKFWInstance *fwInstance, 1.242 + CK_SESSION_HANDLE hSession, 1.243 + CK_CHAR_PTR pPin, 1.244 + CK_ULONG ulPinLen 1.245 +); 1.246 + 1.247 +/* 1.248 + * NSSCKFWC_SetPIN 1.249 + * 1.250 + */ 1.251 +NSS_EXTERN CK_RV 1.252 +NSSCKFWC_SetPIN 1.253 +( 1.254 + NSSCKFWInstance *fwInstance, 1.255 + CK_SESSION_HANDLE hSession, 1.256 + CK_CHAR_PTR pOldPin, 1.257 + CK_ULONG ulOldLen, 1.258 + CK_CHAR_PTR pNewPin, 1.259 + CK_ULONG ulNewLen 1.260 +); 1.261 + 1.262 +/* 1.263 + * NSSCKFWC_OpenSession 1.264 + * 1.265 + */ 1.266 +NSS_EXTERN CK_RV 1.267 +NSSCKFWC_OpenSession 1.268 +( 1.269 + NSSCKFWInstance *fwInstance, 1.270 + CK_SLOT_ID slotID, 1.271 + CK_FLAGS flags, 1.272 + CK_VOID_PTR pApplication, 1.273 + CK_NOTIFY Notify, 1.274 + CK_SESSION_HANDLE_PTR phSession 1.275 +); 1.276 + 1.277 +/* 1.278 + * NSSCKFWC_CloseSession 1.279 + * 1.280 + */ 1.281 +NSS_EXTERN CK_RV 1.282 +NSSCKFWC_CloseSession 1.283 +( 1.284 + NSSCKFWInstance *fwInstance, 1.285 + CK_SESSION_HANDLE hSession 1.286 +); 1.287 + 1.288 +/* 1.289 + * NSSCKFWC_CloseAllSessions 1.290 + * 1.291 + */ 1.292 +NSS_EXTERN CK_RV 1.293 +NSSCKFWC_CloseAllSessions 1.294 +( 1.295 + NSSCKFWInstance *fwInstance, 1.296 + CK_SLOT_ID slotID 1.297 +); 1.298 + 1.299 +/* 1.300 + * NSSCKFWC_GetSessionInfo 1.301 + * 1.302 + */ 1.303 +NSS_EXTERN CK_RV 1.304 +NSSCKFWC_GetSessionInfo 1.305 +( 1.306 + NSSCKFWInstance *fwInstance, 1.307 + CK_SESSION_HANDLE hSession, 1.308 + CK_SESSION_INFO_PTR pInfo 1.309 +); 1.310 + 1.311 +/* 1.312 + * NSSCKFWC_GetOperationState 1.313 + * 1.314 + */ 1.315 +NSS_EXTERN CK_RV 1.316 +NSSCKFWC_GetOperationState 1.317 +( 1.318 + NSSCKFWInstance *fwInstance, 1.319 + CK_SESSION_HANDLE hSession, 1.320 + CK_BYTE_PTR pOperationState, 1.321 + CK_ULONG_PTR pulOperationStateLen 1.322 +); 1.323 + 1.324 +/* 1.325 + * NSSCKFWC_SetOperationState 1.326 + * 1.327 + */ 1.328 +NSS_EXTERN CK_RV 1.329 +NSSCKFWC_SetOperationState 1.330 +( 1.331 + NSSCKFWInstance *fwInstance, 1.332 + CK_SESSION_HANDLE hSession, 1.333 + CK_BYTE_PTR pOperationState, 1.334 + CK_ULONG ulOperationStateLen, 1.335 + CK_OBJECT_HANDLE hEncryptionKey, 1.336 + CK_OBJECT_HANDLE hAuthenticationKey 1.337 +); 1.338 + 1.339 +/* 1.340 + * NSSCKFWC_Login 1.341 + * 1.342 + */ 1.343 +NSS_EXTERN CK_RV 1.344 +NSSCKFWC_Login 1.345 +( 1.346 + NSSCKFWInstance *fwInstance, 1.347 + CK_SESSION_HANDLE hSession, 1.348 + CK_USER_TYPE userType, 1.349 + CK_CHAR_PTR pPin, 1.350 + CK_ULONG ulPinLen 1.351 +); 1.352 + 1.353 +/* 1.354 + * NSSCKFWC_Logout 1.355 + * 1.356 + */ 1.357 +NSS_EXTERN CK_RV 1.358 +NSSCKFWC_Logout 1.359 +( 1.360 + NSSCKFWInstance *fwInstance, 1.361 + CK_SESSION_HANDLE hSession 1.362 +); 1.363 + 1.364 +/* 1.365 + * NSSCKFWC_CreateObject 1.366 + * 1.367 + */ 1.368 +NSS_EXTERN CK_RV 1.369 +NSSCKFWC_CreateObject 1.370 +( 1.371 + NSSCKFWInstance *fwInstance, 1.372 + CK_SESSION_HANDLE hSession, 1.373 + CK_ATTRIBUTE_PTR pTemplate, 1.374 + CK_ULONG ulCount, 1.375 + CK_OBJECT_HANDLE_PTR phObject 1.376 +); 1.377 + 1.378 +/* 1.379 + * NSSCKFWC_CopyObject 1.380 + * 1.381 + */ 1.382 +NSS_EXTERN CK_RV 1.383 +NSSCKFWC_CopyObject 1.384 +( 1.385 + NSSCKFWInstance *fwInstance, 1.386 + CK_SESSION_HANDLE hSession, 1.387 + CK_OBJECT_HANDLE hObject, 1.388 + CK_ATTRIBUTE_PTR pTemplate, 1.389 + CK_ULONG ulCount, 1.390 + CK_OBJECT_HANDLE_PTR phNewObject 1.391 +); 1.392 + 1.393 +/* 1.394 + * NSSCKFWC_DestroyObject 1.395 + * 1.396 + */ 1.397 +NSS_EXTERN CK_RV 1.398 +NSSCKFWC_DestroyObject 1.399 +( 1.400 + NSSCKFWInstance *fwInstance, 1.401 + CK_SESSION_HANDLE hSession, 1.402 + CK_OBJECT_HANDLE hObject 1.403 +); 1.404 + 1.405 +/* 1.406 + * NSSCKFWC_GetObjectSize 1.407 + * 1.408 + */ 1.409 +NSS_EXTERN CK_RV 1.410 +NSSCKFWC_GetObjectSize 1.411 +( 1.412 + NSSCKFWInstance *fwInstance, 1.413 + CK_SESSION_HANDLE hSession, 1.414 + CK_OBJECT_HANDLE hObject, 1.415 + CK_ULONG_PTR pulSize 1.416 +); 1.417 + 1.418 +/* 1.419 + * NSSCKFWC_GetAttributeValue 1.420 + * 1.421 + */ 1.422 +NSS_EXTERN CK_RV 1.423 +NSSCKFWC_GetAttributeValue 1.424 +( 1.425 + NSSCKFWInstance *fwInstance, 1.426 + CK_SESSION_HANDLE hSession, 1.427 + CK_OBJECT_HANDLE hObject, 1.428 + CK_ATTRIBUTE_PTR pTemplate, 1.429 + CK_ULONG ulCount 1.430 +); 1.431 + 1.432 +/* 1.433 + * NSSCKFWC_SetAttributeValue 1.434 + * 1.435 + */ 1.436 +NSS_EXTERN CK_RV 1.437 +NSSCKFWC_SetAttributeValue 1.438 +( 1.439 + NSSCKFWInstance *fwInstance, 1.440 + CK_SESSION_HANDLE hSession, 1.441 + CK_OBJECT_HANDLE hObject, 1.442 + CK_ATTRIBUTE_PTR pTemplate, 1.443 + CK_ULONG ulCount 1.444 +); 1.445 + 1.446 +/* 1.447 + * NSSCKFWC_FindObjectsInit 1.448 + * 1.449 + */ 1.450 +NSS_EXTERN CK_RV 1.451 +NSSCKFWC_FindObjectsInit 1.452 +( 1.453 + NSSCKFWInstance *fwInstance, 1.454 + CK_SESSION_HANDLE hSession, 1.455 + CK_ATTRIBUTE_PTR pTemplate, 1.456 + CK_ULONG ulCount 1.457 +); 1.458 + 1.459 +/* 1.460 + * NSSCKFWC_FindObjects 1.461 + * 1.462 + */ 1.463 +NSS_EXTERN CK_RV 1.464 +NSSCKFWC_FindObjects 1.465 +( 1.466 + NSSCKFWInstance *fwInstance, 1.467 + CK_SESSION_HANDLE hSession, 1.468 + CK_OBJECT_HANDLE_PTR phObject, 1.469 + CK_ULONG ulMaxObjectCount, 1.470 + CK_ULONG_PTR pulObjectCount 1.471 +); 1.472 + 1.473 +/* 1.474 + * NSSCKFWC_FindObjectsFinal 1.475 + * 1.476 + */ 1.477 +NSS_EXTERN CK_RV 1.478 +NSSCKFWC_FindObjectsFinal 1.479 +( 1.480 + NSSCKFWInstance *fwInstance, 1.481 + CK_SESSION_HANDLE hSession 1.482 +); 1.483 + 1.484 +/* 1.485 + * NSSCKFWC_EncryptInit 1.486 + * 1.487 + */ 1.488 +NSS_EXTERN CK_RV 1.489 +NSSCKFWC_EncryptInit 1.490 +( 1.491 + NSSCKFWInstance *fwInstance, 1.492 + CK_SESSION_HANDLE hSession, 1.493 + CK_MECHANISM_PTR pMechanism, 1.494 + CK_OBJECT_HANDLE hKey 1.495 +); 1.496 + 1.497 +/* 1.498 + * NSSCKFWC_Encrypt 1.499 + * 1.500 + */ 1.501 +NSS_EXTERN CK_RV 1.502 +NSSCKFWC_Encrypt 1.503 +( 1.504 + NSSCKFWInstance *fwInstance, 1.505 + CK_SESSION_HANDLE hSession, 1.506 + CK_BYTE_PTR pData, 1.507 + CK_ULONG ulDataLen, 1.508 + CK_BYTE_PTR pEncryptedData, 1.509 + CK_ULONG_PTR pulEncryptedDataLen 1.510 +); 1.511 + 1.512 +/* 1.513 + * NSSCKFWC_EncryptUpdate 1.514 + * 1.515 + */ 1.516 +NSS_EXTERN CK_RV 1.517 +NSSCKFWC_EncryptUpdate 1.518 +( 1.519 + NSSCKFWInstance *fwInstance, 1.520 + CK_SESSION_HANDLE hSession, 1.521 + CK_BYTE_PTR pPart, 1.522 + CK_ULONG ulPartLen, 1.523 + CK_BYTE_PTR pEncryptedPart, 1.524 + CK_ULONG_PTR pulEncryptedPartLen 1.525 +); 1.526 + 1.527 +/* 1.528 + * NSSCKFWC_EncryptFinal 1.529 + * 1.530 + */ 1.531 +NSS_EXTERN CK_RV 1.532 +NSSCKFWC_EncryptFinal 1.533 +( 1.534 + NSSCKFWInstance *fwInstance, 1.535 + CK_SESSION_HANDLE hSession, 1.536 + CK_BYTE_PTR pLastEncryptedPart, 1.537 + CK_ULONG_PTR pulLastEncryptedPartLen 1.538 +); 1.539 + 1.540 +/* 1.541 + * NSSCKFWC_DecryptInit 1.542 + * 1.543 + */ 1.544 +NSS_EXTERN CK_RV 1.545 +NSSCKFWC_DecryptInit 1.546 +( 1.547 + NSSCKFWInstance *fwInstance, 1.548 + CK_SESSION_HANDLE hSession, 1.549 + CK_MECHANISM_PTR pMechanism, 1.550 + CK_OBJECT_HANDLE hKey 1.551 +); 1.552 + 1.553 +/* 1.554 + * NSSCKFWC_Decrypt 1.555 + * 1.556 + */ 1.557 +NSS_EXTERN CK_RV 1.558 +NSSCKFWC_Decrypt 1.559 +( 1.560 + NSSCKFWInstance *fwInstance, 1.561 + CK_SESSION_HANDLE hSession, 1.562 + CK_BYTE_PTR pEncryptedData, 1.563 + CK_ULONG ulEncryptedDataLen, 1.564 + CK_BYTE_PTR pData, 1.565 + CK_ULONG_PTR pulDataLen 1.566 +); 1.567 + 1.568 +/* 1.569 + * NSSCKFWC_DecryptUpdate 1.570 + * 1.571 + */ 1.572 +NSS_EXTERN CK_RV 1.573 +NSSCKFWC_DecryptUpdate 1.574 +( 1.575 + NSSCKFWInstance *fwInstance, 1.576 + CK_SESSION_HANDLE hSession, 1.577 + CK_BYTE_PTR pEncryptedPart, 1.578 + CK_ULONG ulEncryptedPartLen, 1.579 + CK_BYTE_PTR pPart, 1.580 + CK_ULONG_PTR pulPartLen 1.581 +); 1.582 + 1.583 +/* 1.584 + * NSSCKFWC_DecryptFinal 1.585 + * 1.586 + */ 1.587 +NSS_EXTERN CK_RV 1.588 +NSSCKFWC_DecryptFinal 1.589 +( 1.590 + NSSCKFWInstance *fwInstance, 1.591 + CK_SESSION_HANDLE hSession, 1.592 + CK_BYTE_PTR pLastPart, 1.593 + CK_ULONG_PTR pulLastPartLen 1.594 +); 1.595 + 1.596 +/* 1.597 + * NSSCKFWC_DigestInit 1.598 + * 1.599 + */ 1.600 +NSS_EXTERN CK_RV 1.601 +NSSCKFWC_DigestInit 1.602 +( 1.603 + NSSCKFWInstance *fwInstance, 1.604 + CK_SESSION_HANDLE hSession, 1.605 + CK_MECHANISM_PTR pMechanism 1.606 +); 1.607 + 1.608 +/* 1.609 + * NSSCKFWC_Digest 1.610 + * 1.611 + */ 1.612 +NSS_EXTERN CK_RV 1.613 +NSSCKFWC_Digest 1.614 +( 1.615 + NSSCKFWInstance *fwInstance, 1.616 + CK_SESSION_HANDLE hSession, 1.617 + CK_BYTE_PTR pData, 1.618 + CK_ULONG ulDataLen, 1.619 + CK_BYTE_PTR pDigest, 1.620 + CK_ULONG_PTR pulDigestLen 1.621 +); 1.622 + 1.623 +/* 1.624 + * NSSCKFWC_DigestUpdate 1.625 + * 1.626 + */ 1.627 +NSS_EXTERN CK_RV 1.628 +NSSCKFWC_DigestUpdate 1.629 +( 1.630 + NSSCKFWInstance *fwInstance, 1.631 + CK_SESSION_HANDLE hSession, 1.632 + CK_BYTE_PTR pData, 1.633 + CK_ULONG ulDataLen 1.634 +); 1.635 + 1.636 +/* 1.637 + * NSSCKFWC_DigestKey 1.638 + * 1.639 + */ 1.640 +NSS_EXTERN CK_RV 1.641 +NSSCKFWC_DigestKey 1.642 +( 1.643 + NSSCKFWInstance *fwInstance, 1.644 + CK_SESSION_HANDLE hSession, 1.645 + CK_OBJECT_HANDLE hKey 1.646 +); 1.647 + 1.648 +/* 1.649 + * NSSCKFWC_DigestFinal 1.650 + * 1.651 + */ 1.652 +NSS_EXTERN CK_RV 1.653 +NSSCKFWC_DigestFinal 1.654 +( 1.655 + NSSCKFWInstance *fwInstance, 1.656 + CK_SESSION_HANDLE hSession, 1.657 + CK_BYTE_PTR pDigest, 1.658 + CK_ULONG_PTR pulDigestLen 1.659 +); 1.660 + 1.661 +/* 1.662 + * NSSCKFWC_SignInit 1.663 + * 1.664 + */ 1.665 +NSS_EXTERN CK_RV 1.666 +NSSCKFWC_SignInit 1.667 +( 1.668 + NSSCKFWInstance *fwInstance, 1.669 + CK_SESSION_HANDLE hSession, 1.670 + CK_MECHANISM_PTR pMechanism, 1.671 + CK_OBJECT_HANDLE hKey 1.672 +); 1.673 + 1.674 +/* 1.675 + * NSSCKFWC_Sign 1.676 + * 1.677 + */ 1.678 +NSS_EXTERN CK_RV 1.679 +NSSCKFWC_Sign 1.680 +( 1.681 + NSSCKFWInstance *fwInstance, 1.682 + CK_SESSION_HANDLE hSession, 1.683 + CK_BYTE_PTR pData, 1.684 + CK_ULONG ulDataLen, 1.685 + CK_BYTE_PTR pSignature, 1.686 + CK_ULONG_PTR pulSignatureLen 1.687 +); 1.688 + 1.689 +/* 1.690 + * NSSCKFWC_SignUpdate 1.691 + * 1.692 + */ 1.693 +NSS_EXTERN CK_RV 1.694 +NSSCKFWC_SignUpdate 1.695 +( 1.696 + NSSCKFWInstance *fwInstance, 1.697 + CK_SESSION_HANDLE hSession, 1.698 + CK_BYTE_PTR pPart, 1.699 + CK_ULONG ulPartLen 1.700 +); 1.701 + 1.702 +/* 1.703 + * NSSCKFWC_SignFinal 1.704 + * 1.705 + */ 1.706 +NSS_EXTERN CK_RV 1.707 +NSSCKFWC_SignFinal 1.708 +( 1.709 + NSSCKFWInstance *fwInstance, 1.710 + CK_SESSION_HANDLE hSession, 1.711 + CK_BYTE_PTR pSignature, 1.712 + CK_ULONG_PTR pulSignatureLen 1.713 +); 1.714 + 1.715 +/* 1.716 + * NSSCKFWC_SignRecoverInit 1.717 + * 1.718 + */ 1.719 +NSS_EXTERN CK_RV 1.720 +NSSCKFWC_SignRecoverInit 1.721 +( 1.722 + NSSCKFWInstance *fwInstance, 1.723 + CK_SESSION_HANDLE hSession, 1.724 + CK_MECHANISM_PTR pMechanism, 1.725 + CK_OBJECT_HANDLE hKey 1.726 +); 1.727 + 1.728 +/* 1.729 + * NSSCKFWC_SignRecover 1.730 + * 1.731 + */ 1.732 +NSS_EXTERN CK_RV 1.733 +NSSCKFWC_SignRecover 1.734 +( 1.735 + NSSCKFWInstance *fwInstance, 1.736 + CK_SESSION_HANDLE hSession, 1.737 + CK_BYTE_PTR pData, 1.738 + CK_ULONG ulDataLen, 1.739 + CK_BYTE_PTR pSignature, 1.740 + CK_ULONG_PTR pulSignatureLen 1.741 +); 1.742 + 1.743 +/* 1.744 + * NSSCKFWC_VerifyInit 1.745 + * 1.746 + */ 1.747 +NSS_EXTERN CK_RV 1.748 +NSSCKFWC_VerifyInit 1.749 +( 1.750 + NSSCKFWInstance *fwInstance, 1.751 + CK_SESSION_HANDLE hSession, 1.752 + CK_MECHANISM_PTR pMechanism, 1.753 + CK_OBJECT_HANDLE hKey 1.754 +); 1.755 + 1.756 +/* 1.757 + * NSSCKFWC_Verify 1.758 + * 1.759 + */ 1.760 +NSS_EXTERN CK_RV 1.761 +NSSCKFWC_Verify 1.762 +( 1.763 + NSSCKFWInstance *fwInstance, 1.764 + CK_SESSION_HANDLE hSession, 1.765 + CK_BYTE_PTR pData, 1.766 + CK_ULONG ulDataLen, 1.767 + CK_BYTE_PTR pSignature, 1.768 + CK_ULONG ulSignatureLen 1.769 +); 1.770 + 1.771 +/* 1.772 + * NSSCKFWC_VerifyUpdate 1.773 + * 1.774 + */ 1.775 +NSS_EXTERN CK_RV 1.776 +NSSCKFWC_VerifyUpdate 1.777 +( 1.778 + NSSCKFWInstance *fwInstance, 1.779 + CK_SESSION_HANDLE hSession, 1.780 + CK_BYTE_PTR pPart, 1.781 + CK_ULONG ulPartLen 1.782 +); 1.783 + 1.784 +/* 1.785 + * NSSCKFWC_VerifyFinal 1.786 + * 1.787 + */ 1.788 +NSS_EXTERN CK_RV 1.789 +NSSCKFWC_VerifyFinal 1.790 +( 1.791 + NSSCKFWInstance *fwInstance, 1.792 + CK_SESSION_HANDLE hSession, 1.793 + CK_BYTE_PTR pSignature, 1.794 + CK_ULONG ulSignatureLen 1.795 +); 1.796 + 1.797 +/* 1.798 + * NSSCKFWC_VerifyRecoverInit 1.799 + * 1.800 + */ 1.801 +NSS_EXTERN CK_RV 1.802 +NSSCKFWC_VerifyRecoverInit 1.803 +( 1.804 + NSSCKFWInstance *fwInstance, 1.805 + CK_SESSION_HANDLE hSession, 1.806 + CK_MECHANISM_PTR pMechanism, 1.807 + CK_OBJECT_HANDLE hKey 1.808 +); 1.809 + 1.810 +/* 1.811 + * NSSCKFWC_VerifyRecover 1.812 + * 1.813 + */ 1.814 +NSS_EXTERN CK_RV 1.815 +NSSCKFWC_VerifyRecover 1.816 +( 1.817 + NSSCKFWInstance *fwInstance, 1.818 + CK_SESSION_HANDLE hSession, 1.819 + CK_BYTE_PTR pSignature, 1.820 + CK_ULONG ulSignatureLen, 1.821 + CK_BYTE_PTR pData, 1.822 + CK_ULONG_PTR pulDataLen 1.823 +); 1.824 + 1.825 +/* 1.826 + * NSSCKFWC_DigestEncryptUpdate 1.827 + * 1.828 + */ 1.829 +NSS_EXTERN CK_RV 1.830 +NSSCKFWC_DigestEncryptUpdate 1.831 +( 1.832 + NSSCKFWInstance *fwInstance, 1.833 + CK_SESSION_HANDLE hSession, 1.834 + CK_BYTE_PTR pPart, 1.835 + CK_ULONG ulPartLen, 1.836 + CK_BYTE_PTR pEncryptedPart, 1.837 + CK_ULONG_PTR pulEncryptedPartLen 1.838 +); 1.839 + 1.840 +/* 1.841 + * NSSCKFWC_DecryptDigestUpdate 1.842 + * 1.843 + */ 1.844 +NSS_EXTERN CK_RV 1.845 +NSSCKFWC_DecryptDigestUpdate 1.846 +( 1.847 + NSSCKFWInstance *fwInstance, 1.848 + CK_SESSION_HANDLE hSession, 1.849 + CK_BYTE_PTR pEncryptedPart, 1.850 + CK_ULONG ulEncryptedPartLen, 1.851 + CK_BYTE_PTR pPart, 1.852 + CK_ULONG_PTR pulPartLen 1.853 +); 1.854 + 1.855 +/* 1.856 + * NSSCKFWC_SignEncryptUpdate 1.857 + * 1.858 + */ 1.859 +NSS_EXTERN CK_RV 1.860 +NSSCKFWC_SignEncryptUpdate 1.861 +( 1.862 + NSSCKFWInstance *fwInstance, 1.863 + CK_SESSION_HANDLE hSession, 1.864 + CK_BYTE_PTR pPart, 1.865 + CK_ULONG ulPartLen, 1.866 + CK_BYTE_PTR pEncryptedPart, 1.867 + CK_ULONG_PTR pulEncryptedPartLen 1.868 +); 1.869 + 1.870 +/* 1.871 + * NSSCKFWC_DecryptVerifyUpdate 1.872 + * 1.873 + */ 1.874 +NSS_EXTERN CK_RV 1.875 +NSSCKFWC_DecryptVerifyUpdate 1.876 +( 1.877 + NSSCKFWInstance *fwInstance, 1.878 + CK_SESSION_HANDLE hSession, 1.879 + CK_BYTE_PTR pEncryptedPart, 1.880 + CK_ULONG ulEncryptedPartLen, 1.881 + CK_BYTE_PTR pPart, 1.882 + CK_ULONG_PTR pulPartLen 1.883 +); 1.884 + 1.885 +/* 1.886 + * NSSCKFWC_GenerateKey 1.887 + * 1.888 + */ 1.889 +NSS_EXTERN CK_RV 1.890 +NSSCKFWC_GenerateKey 1.891 +( 1.892 + NSSCKFWInstance *fwInstance, 1.893 + CK_SESSION_HANDLE hSession, 1.894 + CK_MECHANISM_PTR pMechanism, 1.895 + CK_ATTRIBUTE_PTR pTemplate, 1.896 + CK_ULONG ulCount, 1.897 + CK_OBJECT_HANDLE_PTR phKey 1.898 +); 1.899 + 1.900 +/* 1.901 + * NSSCKFWC_GenerateKeyPair 1.902 + * 1.903 + */ 1.904 +NSS_EXTERN CK_RV 1.905 +NSSCKFWC_GenerateKeyPair 1.906 +( 1.907 + NSSCKFWInstance *fwInstance, 1.908 + CK_SESSION_HANDLE hSession, 1.909 + CK_MECHANISM_PTR pMechanism, 1.910 + CK_ATTRIBUTE_PTR pPublicKeyTemplate, 1.911 + CK_ULONG ulPublicKeyAttributeCount, 1.912 + CK_ATTRIBUTE_PTR pPrivateKeyTemplate, 1.913 + CK_ULONG ulPrivateKeyAttributeCount, 1.914 + CK_OBJECT_HANDLE_PTR phPublicKey, 1.915 + CK_OBJECT_HANDLE_PTR phPrivateKey 1.916 +); 1.917 + 1.918 +/* 1.919 + * NSSCKFWC_WrapKey 1.920 + * 1.921 + */ 1.922 +NSS_EXTERN CK_RV 1.923 +NSSCKFWC_WrapKey 1.924 +( 1.925 + NSSCKFWInstance *fwInstance, 1.926 + CK_SESSION_HANDLE hSession, 1.927 + CK_MECHANISM_PTR pMechanism, 1.928 + CK_OBJECT_HANDLE hWrappingKey, 1.929 + CK_OBJECT_HANDLE hKey, 1.930 + CK_BYTE_PTR pWrappedKey, 1.931 + CK_ULONG_PTR pulWrappedKeyLen 1.932 +); 1.933 + 1.934 +/* 1.935 + * NSSCKFWC_UnwrapKey 1.936 + * 1.937 + */ 1.938 +NSS_EXTERN CK_RV 1.939 +NSSCKFWC_UnwrapKey 1.940 +( 1.941 + NSSCKFWInstance *fwInstance, 1.942 + CK_SESSION_HANDLE hSession, 1.943 + CK_MECHANISM_PTR pMechanism, 1.944 + CK_OBJECT_HANDLE hUnwrappingKey, 1.945 + CK_BYTE_PTR pWrappedKey, 1.946 + CK_ULONG ulWrappedKeyLen, 1.947 + CK_ATTRIBUTE_PTR pTemplate, 1.948 + CK_ULONG ulAttributeCount, 1.949 + CK_OBJECT_HANDLE_PTR phKey 1.950 +); 1.951 + 1.952 +/* 1.953 + * NSSCKFWC_DeriveKey 1.954 + * 1.955 + */ 1.956 +NSS_EXTERN CK_RV 1.957 +NSSCKFWC_DeriveKey 1.958 +( 1.959 + NSSCKFWInstance *fwInstance, 1.960 + CK_SESSION_HANDLE hSession, 1.961 + CK_MECHANISM_PTR pMechanism, 1.962 + CK_OBJECT_HANDLE hBaseKey, 1.963 + CK_ATTRIBUTE_PTR pTemplate, 1.964 + CK_ULONG ulAttributeCount, 1.965 + CK_OBJECT_HANDLE_PTR phKey 1.966 +); 1.967 + 1.968 +/* 1.969 + * NSSCKFWC_SeedRandom 1.970 + * 1.971 + */ 1.972 +NSS_EXTERN CK_RV 1.973 +NSSCKFWC_SeedRandom 1.974 +( 1.975 + NSSCKFWInstance *fwInstance, 1.976 + CK_SESSION_HANDLE hSession, 1.977 + CK_BYTE_PTR pSeed, 1.978 + CK_ULONG ulSeedLen 1.979 +); 1.980 + 1.981 +/* 1.982 + * NSSCKFWC_GenerateRandom 1.983 + * 1.984 + */ 1.985 +NSS_EXTERN CK_RV 1.986 +NSSCKFWC_GenerateRandom 1.987 +( 1.988 + NSSCKFWInstance *fwInstance, 1.989 + CK_SESSION_HANDLE hSession, 1.990 + CK_BYTE_PTR pRandomData, 1.991 + CK_ULONG ulRandomLen 1.992 +); 1.993 + 1.994 +/* 1.995 + * NSSCKFWC_GetFunctionStatus 1.996 + * 1.997 + */ 1.998 +NSS_EXTERN CK_RV 1.999 +NSSCKFWC_GetFunctionStatus 1.1000 +( 1.1001 + NSSCKFWInstance *fwInstance, 1.1002 + CK_SESSION_HANDLE hSession 1.1003 +); 1.1004 + 1.1005 +/* 1.1006 + * NSSCKFWC_CancelFunction 1.1007 + * 1.1008 + */ 1.1009 +NSS_EXTERN CK_RV 1.1010 +NSSCKFWC_CancelFunction 1.1011 +( 1.1012 + NSSCKFWInstance *fwInstance, 1.1013 + CK_SESSION_HANDLE hSession 1.1014 +); 1.1015 + 1.1016 +#endif /* NSSCKFWC_H */