From owner-p4-projects Thu Jun 13 16:44:18 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8DBA037B404; Thu, 13 Jun 2002 16:41:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 458F137B428 for ; Thu, 13 Jun 2002 16:41:08 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g5DNf7N15681 for perforce@freebsd.org; Thu, 13 Jun 2002 16:41:07 -0700 (PDT) (envelope-from des@freebsd.org) Date: Thu, 13 Jun 2002 16:41:07 -0700 (PDT) Message-Id: <200206132341.g5DNf7N15681@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to des@freebsd.org using -f From: Dag-Erling Smorgrav Subject: PERFORCE change 12856 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=12856 Change 12856 by des@des.at.des.thinksec.com on 2002/06/13 16:41:07 Implement session handle {,de}allocation. Add argument checks to most functions, to the extend possible at this time. Sponsored by: DARPA, NAI Labs Affected files ... ... //depot/projects/cryptoki/lib/C_CancelFunction.c#4 edit ... //depot/projects/cryptoki/lib/C_CloseAllSessions.c#4 edit ... //depot/projects/cryptoki/lib/C_CloseSession.c#4 edit ... //depot/projects/cryptoki/lib/C_CopyObject.c#4 edit ... //depot/projects/cryptoki/lib/C_CreateObject.c#4 edit ... //depot/projects/cryptoki/lib/C_Decrypt.c#4 edit ... //depot/projects/cryptoki/lib/C_DecryptDigestUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_DecryptFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_DecryptInit.c#4 edit ... //depot/projects/cryptoki/lib/C_DecryptUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_DecryptVerifyUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_DeriveKey.c#4 edit ... //depot/projects/cryptoki/lib/C_DestroyObject.c#4 edit ... //depot/projects/cryptoki/lib/C_Digest.c#4 edit ... //depot/projects/cryptoki/lib/C_DigestEncryptUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_DigestFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_DigestInit.c#4 edit ... //depot/projects/cryptoki/lib/C_DigestKey.c#4 edit ... //depot/projects/cryptoki/lib/C_DigestUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_Encrypt.c#4 edit ... //depot/projects/cryptoki/lib/C_EncryptFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_EncryptInit.c#4 edit ... //depot/projects/cryptoki/lib/C_EncryptUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_Finalize.c#4 edit ... //depot/projects/cryptoki/lib/C_FindObjects.c#4 edit ... //depot/projects/cryptoki/lib/C_FindObjectsFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_FindObjectsInit.c#4 edit ... //depot/projects/cryptoki/lib/C_GenerateKey.c#4 edit ... //depot/projects/cryptoki/lib/C_GenerateKeyPair.c#4 edit ... //depot/projects/cryptoki/lib/C_GenerateRandom.c#4 edit ... //depot/projects/cryptoki/lib/C_GetAttributeValue.c#4 edit ... //depot/projects/cryptoki/lib/C_GetFunctionList.c#5 edit ... //depot/projects/cryptoki/lib/C_GetFunctionStatus.c#4 edit ... //depot/projects/cryptoki/lib/C_GetInfo.c#4 edit ... //depot/projects/cryptoki/lib/C_GetMechanismInfo.c#4 edit ... //depot/projects/cryptoki/lib/C_GetMechanismList.c#4 edit ... //depot/projects/cryptoki/lib/C_GetObjectSize.c#4 edit ... //depot/projects/cryptoki/lib/C_GetOperationState.c#4 edit ... //depot/projects/cryptoki/lib/C_GetSessionInfo.c#4 edit ... //depot/projects/cryptoki/lib/C_GetSlotInfo.c#6 edit ... //depot/projects/cryptoki/lib/C_GetSlotList.c#5 edit ... //depot/projects/cryptoki/lib/C_GetTokenInfo.c#4 edit ... //depot/projects/cryptoki/lib/C_InitPIN.c#4 edit ... //depot/projects/cryptoki/lib/C_InitToken.c#4 edit ... //depot/projects/cryptoki/lib/C_Initialize.c#5 edit ... //depot/projects/cryptoki/lib/C_Login.c#4 edit ... //depot/projects/cryptoki/lib/C_Logout.c#4 edit ... //depot/projects/cryptoki/lib/C_OpenSession.c#4 edit ... //depot/projects/cryptoki/lib/C_SeedRandom.c#4 edit ... //depot/projects/cryptoki/lib/C_SetAttributeValue.c#4 edit ... //depot/projects/cryptoki/lib/C_SetOperationState.c#4 edit ... //depot/projects/cryptoki/lib/C_SetPIN.c#4 edit ... //depot/projects/cryptoki/lib/C_Sign.c#4 edit ... //depot/projects/cryptoki/lib/C_SignEncryptUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_SignFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_SignInit.c#4 edit ... //depot/projects/cryptoki/lib/C_SignRecover.c#4 edit ... //depot/projects/cryptoki/lib/C_SignRecoverInit.c#4 edit ... //depot/projects/cryptoki/lib/C_SignUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_UnwrapKey.c#4 edit ... //depot/projects/cryptoki/lib/C_Verify.c#4 edit ... //depot/projects/cryptoki/lib/C_VerifyFinal.c#4 edit ... //depot/projects/cryptoki/lib/C_VerifyInit.c#4 edit ... //depot/projects/cryptoki/lib/C_VerifyRecover.c#4 edit ... //depot/projects/cryptoki/lib/C_VerifyRecoverInit.c#4 edit ... //depot/projects/cryptoki/lib/C_VerifyUpdate.c#4 edit ... //depot/projects/cryptoki/lib/C_WaitForSlotEvent.c#4 edit ... //depot/projects/cryptoki/lib/C_WrapKey.c#4 edit ... //depot/projects/cryptoki/lib/Makefile#5 edit ... //depot/projects/cryptoki/lib/_ck_session_delete.c#1 add ... //depot/projects/cryptoki/lib/_ck_session_find.c#1 add ... //depot/projects/cryptoki/lib/_ck_session_new.c#1 add ... //depot/projects/cryptoki/lib/cryptoki_impl.h#3 edit Differences ... ==== //depot/projects/cryptoki/lib/C_CancelFunction.c#4 (text+ko) ==== @@ -31,15 +31,17 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_CancelFunction.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_CancelFunction.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_CancelFunction(CK_SESSION_HANDLE hSession) { + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); (void)hSession; - return (CKR_FUNCTION_NOT_SUPPORTED); + return (CKR_FUNCTION_NOT_PARALLEL); } ==== //depot/projects/cryptoki/lib/C_CloseAllSessions.c#4 (text+ko) ==== @@ -31,15 +31,18 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_CloseAllSessions.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_CloseAllSessions.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_CloseAllSessions(CK_SLOT_ID slotID) { - (void)slotID; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (slotID > _ck_NumSlots) + return (CKR_ARGUMENTS_BAD); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_CloseSession.c#4 (text+ko) ==== @@ -31,15 +31,19 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_CloseSession.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_CloseSession.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_CloseSession(CK_SESSION_HANDLE hSession) { + _ck_session_ptr pSession; - (void)hSession; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_CopyObject.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_CopyObject.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_CopyObject.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_CopyObject(CK_SESSION_HANDLE hSession, @@ -43,10 +43,15 @@ CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phNewObject) { + _ck_session_ptr pSession; - (void)hSession; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pTemplate == NULL_PTR || phNewObject == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)hObject; - (void)pTemplate; (void)ulCount; (void)phNewObject; return (CKR_FUNCTION_NOT_SUPPORTED); ==== //depot/projects/cryptoki/lib/C_CreateObject.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_CreateObject.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_CreateObject.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_CreateObject(CK_SESSION_HANDLE hSession, @@ -42,10 +42,14 @@ CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phObject) { + _ck_session_ptr pSession; - (void)hSession; - (void)pTemplate; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pTemplate == NULL_PTR || phObject == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulCount; - (void)phObject; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_Decrypt.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_Decrypt.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_Decrypt.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_Decrypt(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pData, CK_ULONG_PTR pulDataLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pEncryptedData; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pEncryptedData == NULL_PTR || pData == NULL_PTR || + pulDataLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulEncryptedDataLen; - (void)pData; - (void)pulDataLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DecryptDigestUpdate.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DecryptDigestUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DecryptDigestUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DecryptDigestUpdate(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pEncryptedPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pEncryptedPart == NULL_PTR || pPart == NULL_PTR || + pulPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulEncryptedPartLen; - (void)pPart; - (void)pulPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DecryptFinal.c#4 (text+ko) ==== @@ -31,19 +31,23 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DecryptFinal.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DecryptFinal.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DecryptFinal(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastPart, CK_ULONG_PTR pulLastPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pLastPart; - (void)pulLastPartLen; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pLastPart == NULL_PTR || pulLastPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DecryptInit.c#4 (text+ko) ==== @@ -31,19 +31,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DecryptInit.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DecryptInit.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DecryptInit(CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)hKey; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DecryptUpdate.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DecryptUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DecryptUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DecryptUpdate(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pEncryptedPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pEncryptedPart == NULL_PTR || pPart == NULL_PTR || + pulPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulEncryptedPartLen; - (void)pPart; - (void)pulPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DecryptVerifyUpdate.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DecryptVerifyUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DecryptVerifyUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DecryptVerifyUpdate(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pEncryptedPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pEncryptedPart == NULL_PTR || pPart == NULL_PTR || + pulPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulEncryptedPartLen; - (void)pPart; - (void)pulPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DeriveKey.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DeriveKey.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DeriveKey.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DeriveKey(CK_SESSION_HANDLE hSession, @@ -44,12 +44,16 @@ CK_ULONG ulAttributeCount, CK_OBJECT_HANDLE_PTR phKey) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR || pTemplate == NULL_PTR || + phKey == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)hBaseKey; - (void)pTemplate; (void)ulAttributeCount; - (void)phKey; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DestroyObject.c#4 (text+ko) ==== @@ -31,17 +31,21 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DestroyObject.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DestroyObject.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DestroyObject(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject) { + _ck_session_ptr pSession; - (void)hSession; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)hObject; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_Digest.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_Digest.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_Digest.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_Digest(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pData; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pData == NULL_PTR || pDigest == NULL_PTR || + pulDigestLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulDataLen; - (void)pDigest; - (void)pulDigestLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DigestEncryptUpdate.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DigestEncryptUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DigestEncryptUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DigestEncryptUpdate(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pPart == NULL_PTR || pEncryptedPart == NULL_PTR || + pulEncryptedPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulPartLen; - (void)pEncryptedPart; - (void)pulEncryptedPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DigestFinal.c#4 (text+ko) ==== @@ -31,19 +31,23 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DigestFinal.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DigestFinal.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DigestFinal(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pDigest; - (void)pulDigestLen; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pDigest == NULL_PTR || pulDigestLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DigestInit.c#4 (text+ko) ==== @@ -31,17 +31,22 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DigestInit.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DigestInit.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DigestInit(CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_DigestKey.c#4 (text+ko) ==== @@ -31,16 +31,18 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DigestKey.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DigestKey.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DigestKey(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey) { + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); (void)hSession; (void)hKey; return (CKR_FUNCTION_NOT_SUPPORTED); ==== //depot/projects/cryptoki/lib/C_DigestUpdate.c#4 (text+ko) ==== @@ -31,19 +31,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_DigestUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_DigestUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_DigestUpdate(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pPart == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_Encrypt.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_Encrypt.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_Encrypt.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_Encrypt(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pEncryptedData, CK_ULONG_PTR pulEncryptedDataLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pData; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pData == NULL_PTR || pEncryptedData == NULL_PTR || + pulEncryptedDataLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulDataLen; - (void)pEncryptedData; - (void)pulEncryptedDataLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_EncryptFinal.c#4 (text+ko) ==== @@ -31,19 +31,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_EncryptFinal.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_EncryptFinal.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_EncryptFinal(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastEncryptedPart, CK_ULONG_PTR pulLastEncryptedPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pLastEncryptedPart; - (void)pulLastEncryptedPartLen; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pLastEncryptedPart == NULL_PTR || + pulLastEncryptedPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_EncryptInit.c#4 (text+ko) ==== @@ -31,19 +31,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_EncryptInit.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_EncryptInit.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_EncryptInit(CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)hKey; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_EncryptUpdate.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_EncryptUpdate.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_EncryptUpdate.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_EncryptUpdate(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen) { + _ck_session_ptr pSession; - (void)hSession; - (void)pPart; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pPart == NULL_PTR || pEncryptedPart == NULL_PTR || + pulEncryptedPartLen == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulPartLen; - (void)pEncryptedPart; - (void)pulEncryptedPartLen; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_Finalize.c#4 (text+ko) ==== @@ -31,11 +31,9 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_Finalize.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_Finalize.c#4 $ */ -#include - #include "cryptoki_impl.h" CK_RV ==== //depot/projects/cryptoki/lib/C_FindObjects.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_FindObjects.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_FindObjects.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_FindObjects(CK_SESSION_HANDLE hSession, @@ -42,10 +42,14 @@ CK_ULONG ulMaxObjectCount, CK_ULONG_PTR pulObjectCount) { + _ck_session_ptr pSession; - (void)hSession; - (void)phObject; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (phObject == NULL_PTR || pulObjectCount == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulMaxObjectCount; - (void)pulObjectCount; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_FindObjectsFinal.c#4 (text+ko) ==== @@ -31,15 +31,19 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_FindObjectsFinal.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_FindObjectsFinal.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_FindObjectsFinal(CK_SESSION_HANDLE hSession) { + _ck_session_ptr pSession; - (void)hSession; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_FindObjectsInit.c#4 (text+ko) ==== @@ -31,19 +31,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_FindObjectsInit.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_FindObjectsInit.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_FindObjectsInit(CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount) { + _ck_session_ptr pSession; - (void)hSession; - (void)pTemplate; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pTemplate == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulCount; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_GenerateKey.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_GenerateKey.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_GenerateKey.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_GenerateKey(CK_SESSION_HANDLE hSession, @@ -43,11 +43,15 @@ CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phKey) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; - (void)pTemplate; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR || pTemplate == NULL_PTR || + phKey == NULL_PTR) + return (CKR_ARGUMENTS_BAD); + if ((pSession = _ck_session_find(hSession)) == NULL_PTR) + return (CKR_SESSION_CLOSED); (void)ulCount; - (void)phKey; return (CKR_FUNCTION_NOT_SUPPORTED); } ==== //depot/projects/cryptoki/lib/C_GenerateKeyPair.c#4 (text+ko) ==== @@ -31,10 +31,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/cryptoki/lib/C_GenerateKeyPair.c#3 $ + * $P4: //depot/projects/cryptoki/lib/C_GenerateKeyPair.c#4 $ */ -#include +#include "cryptoki_impl.h" CK_RV C_GenerateKeyPair(CK_SESSION_HANDLE hSession, @@ -46,14 +46,17 @@ CK_OBJECT_HANDLE_PTR phPublicKey, CK_OBJECT_HANDLE_PTR phPrivateKey) { + _ck_session_ptr pSession; - (void)hSession; - (void)pMechanism; - (void)pPublicKeyTemplate; + if (!_ck_Initialized) + return (CKR_CRYPTOKI_NOT_INITIALIZED); + if (pMechanism == NULL_PTR || pPublicKeyTemplate == NULL_PTR || + pPrivateKeyTemplate == NULL_PTR || phPublicKey == NULL_PTR || >>> TRUNCATED FOR MAIL (1000 lines) <<< To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message