From 2aa964160a1615077db18b03a6c72c286c27791f Mon Sep 17 00:00:00 2001 From: Stef Walter Date: Mon, 30 May 2011 13:11:26 +0200 Subject: Allow use with CRYPTOKI_GNU style use of PKCS#11 --- p11-kit/p11-kit.h | 11 ++++++++++- p11-kit/uri.c | 2 +- p11-kit/uri.h | 14 +++++++++++++- 3 files changed, 24 insertions(+), 3 deletions(-) (limited to 'p11-kit') diff --git a/p11-kit/p11-kit.h b/p11-kit/p11-kit.h index 8807058..bf4bbcd 100644 --- a/p11-kit/p11-kit.h +++ b/p11-kit/p11-kit.h @@ -46,6 +46,15 @@ #include "p11-kit/pkcs11.h" +/* + * If the caller is using the PKCS#11 GNU calling convention, then we cater + * to that here. + */ +#ifdef CRYPTOKI_GNU +typedef ck_rv_t CK_RV; +typedef struct ck_function_list* CK_FUNCTION_LIST_PTR; +#endif + #ifdef __cplusplus extern "C" { #endif @@ -68,7 +77,7 @@ CK_RV p11_kit_initialize_module (CK_FUNCTION_LIST_PTR CK_RV p11_kit_finalize_module (CK_FUNCTION_LIST_PTR module); CK_RV p11_kit_load_initialize_module (const char *module_path, - CK_FUNCTION_LIST_PTR_PTR module); + CK_FUNCTION_LIST_PTR *module); const char* p11_kit_strerror (CK_RV rv); diff --git a/p11-kit/uri.c b/p11-kit/uri.c index 14d00b1..55b0809 100644 --- a/p11-kit/uri.c +++ b/p11-kit/uri.c @@ -127,7 +127,7 @@ static const CK_ATTRIBUTE_TYPE SUPPORTED_ATTRIBUTE_TYPES[] = { #define NUM_ATTRIBUTE_TYPES \ (sizeof (SUPPORTED_ATTRIBUTE_TYPES) / sizeof (SUPPORTED_ATTRIBUTE_TYPES[0])) -struct _P11KitUri { +struct p11_kit_uri { int unrecognized; CK_INFO module; CK_TOKEN_INFO token; diff --git a/p11-kit/uri.h b/p11-kit/uri.h index 1cf5c00..e19166d 100644 --- a/p11-kit/uri.h +++ b/p11-kit/uri.h @@ -50,6 +50,18 @@ extern "C" { #endif +/* + * If the caller is using the PKCS#11 GNU calling convention, then we cater + * to that here. + */ +#ifdef CRYPTOKI_GNU +typedef struct ck_info *CK_INFO_PTR; +typedef struct ck_token_info *CK_TOKEN_INFO_PTR; +typedef ck_attribute_type_t CK_ATTRIBUTE_TYPE; +typedef struct ck_attribute *CK_ATTRIBUTE_PTR; +typedef unsigned long int CK_ULONG; +#endif + #define P11_KIT_URI_SCHEME "pkcs11:" #define P11_KIT_URI_SCHEME_LEN 7 @@ -70,7 +82,7 @@ typedef enum { P11_KIT_URI_IS_ANY = 0x0000FFFF, } P11KitUriType; -typedef struct _P11KitUri P11KitUri; +typedef struct p11_kit_uri P11KitUri; CK_INFO_PTR p11_kit_uri_get_module_info (P11KitUri *uri); -- cgit v1.1