security/nss/lib/ckfw/nssckfwc.h

changeset 0
6474c204b198
     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 */

mercurial