Index: mozilla/security/nss/lib/dev/ckhelper.h |
=================================================================== |
--- mozilla/security/nss/lib/dev/ckhelper.h (revision 191424) |
+++ mozilla/security/nss/lib/dev/ckhelper.h (working copy) |
@@ -1,161 +0,0 @@ |
-/* This Source Code Form is subject to the terms of the Mozilla Public |
- * License, v. 2.0. If a copy of the MPL was not distributed with this |
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
- |
-/* |
- * ckhelper.h |
- * |
- * This file contains some helper utilities for interaction with cryptoki. |
- */ |
- |
-#ifndef CKHELPER_H |
-#define CKHELPER_H |
- |
-#ifdef DEBUG |
-static const char CKHELPER_CVS_ID[] = "@(#) $RCSfile: ckhelper.h,v $ $Revision: 1.21 $ $Date: 2012/04/25 14:49:42 $"; |
-#endif /* DEBUG */ |
- |
-PR_BEGIN_EXTERN_C |
- |
-/* Some globals to keep from constantly redeclaring common cryptoki |
- * attribute types on the stack. |
- */ |
- |
-/* Boolean values */ |
-NSS_EXTERN_DATA const NSSItem g_ck_true; |
-NSS_EXTERN_DATA const NSSItem g_ck_false; |
- |
-/* Object classes */ |
-NSS_EXTERN_DATA const NSSItem g_ck_class_cert; |
-NSS_EXTERN_DATA const NSSItem g_ck_class_pubkey; |
-NSS_EXTERN_DATA const NSSItem g_ck_class_privkey; |
- |
-#define NSS_CK_TEMPLATE_START(_template, attr, size) \ |
- attr = _template; \ |
- size = 0; |
- |
-#define NSS_CK_SET_ATTRIBUTE_ITEM(pattr, kind, item) \ |
- (pattr)->type = kind; \ |
- (pattr)->pValue = (CK_VOID_PTR)(item)->data; \ |
- (pattr)->ulValueLen = (CK_ULONG)(item)->size; \ |
- (pattr)++; |
- |
-#define NSS_CK_SET_ATTRIBUTE_UTF8(pattr, kind, utf8) \ |
- (pattr)->type = kind; \ |
- (pattr)->pValue = (CK_VOID_PTR)utf8; \ |
- (pattr)->ulValueLen = (CK_ULONG)nssUTF8_Size(utf8, NULL); \ |
- if ((pattr)->ulValueLen) ((pattr)->ulValueLen)--; \ |
- (pattr)++; |
- |
-#define NSS_CK_SET_ATTRIBUTE_VAR(pattr, kind, var) \ |
- (pattr)->type = kind; \ |
- (pattr)->pValue = (CK_VOID_PTR)&var; \ |
- (pattr)->ulValueLen = (CK_ULONG)sizeof(var); \ |
- (pattr)++; |
- |
-#define NSS_CK_SET_ATTRIBUTE_NULL(pattr, kind) \ |
- (pattr)->type = kind; \ |
- (pattr)->pValue = (CK_VOID_PTR)NULL; \ |
- (pattr)->ulValueLen = 0; \ |
- (pattr)++; |
- |
-#define NSS_CK_TEMPLATE_FINISH(_template, attr, size) \ |
- size = (attr) - (_template); \ |
- PR_ASSERT(size <= sizeof(_template)/sizeof(_template[0])); |
- |
-/* NSS_CK_ATTRIBUTE_TO_ITEM(attrib, item) |
- * |
- * Convert a CK_ATTRIBUTE to an NSSItem. |
- */ |
-#define NSS_CK_ATTRIBUTE_TO_ITEM(attrib, item) \ |
- if ((CK_LONG)(attrib)->ulValueLen > 0) { \ |
- (item)->data = (void *)(attrib)->pValue; \ |
- (item)->size = (PRUint32)(attrib)->ulValueLen; \ |
- } else { \ |
- (item)->data = 0; \ |
- (item)->size = 0; \ |
- } |
- |
-#define NSS_CK_ATTRIBUTE_TO_BOOL(attrib, boolvar) \ |
- if ((attrib)->ulValueLen > 0) { \ |
- if (*((CK_BBOOL*)(attrib)->pValue) == CK_TRUE) { \ |
- boolvar = PR_TRUE; \ |
- } else { \ |
- boolvar = PR_FALSE; \ |
- } \ |
- } |
- |
-#define NSS_CK_ATTRIBUTE_TO_ULONG(attrib, ulongvar) \ |
- if ((attrib)->ulValueLen > 0) { \ |
- ulongvar = *((CK_ULONG*)(attrib)->pValue); \ |
- } |
- |
-/* NSS_CK_ATTRIBUTE_TO_UTF8(attrib, str) |
- * |
- * Convert a CK_ATTRIBUTE to a string. |
- */ |
-#define NSS_CK_ATTRIBUTE_TO_UTF8(attrib, str) \ |
- str = (NSSUTF8 *)((attrib)->pValue); |
- |
-/* NSS_CK_ITEM_TO_ATTRIBUTE(item, attrib) |
- * |
- * Convert an NSSItem to a CK_ATTRIBUTE. |
- */ |
-#define NSS_CK_ITEM_TO_ATTRIBUTE(item, attrib) \ |
- (attrib)->pValue = (CK_VOID_PTR)(item)->data; \ |
- (attrib)->ulValueLen = (CK_ULONG)(item)->size; \ |
- |
-/* Get an array of attributes from an object. */ |
-NSS_EXTERN PRStatus |
-nssCKObject_GetAttributes |
-( |
- CK_OBJECT_HANDLE object, |
- CK_ATTRIBUTE_PTR obj_template, |
- CK_ULONG count, |
- NSSArena *arenaOpt, |
- nssSession *session, |
- NSSSlot *slot |
-); |
- |
-/* Get a single attribute as an item. */ |
-NSS_EXTERN PRStatus |
-nssCKObject_GetAttributeItem |
-( |
- CK_OBJECT_HANDLE object, |
- CK_ATTRIBUTE_TYPE attribute, |
- NSSArena *arenaOpt, |
- nssSession *session, |
- NSSSlot *slot, |
- NSSItem *rvItem |
-); |
- |
-NSS_EXTERN PRBool |
-nssCKObject_IsAttributeTrue |
-( |
- CK_OBJECT_HANDLE object, |
- CK_ATTRIBUTE_TYPE attribute, |
- nssSession *session, |
- NSSSlot *slot, |
- PRStatus *rvStatus |
-); |
- |
-NSS_EXTERN PRStatus |
-nssCKObject_SetAttributes |
-( |
- CK_OBJECT_HANDLE object, |
- CK_ATTRIBUTE_PTR obj_template, |
- CK_ULONG count, |
- nssSession *session, |
- NSSSlot *slot |
-); |
- |
-NSS_EXTERN PRBool |
-nssCKObject_IsTokenObjectTemplate |
-( |
- CK_ATTRIBUTE_PTR objectTemplate, |
- CK_ULONG otsize |
-); |
- |
-PR_END_EXTERN_C |
- |
-#endif /* CKHELPER_H */ |