/* pkcs11.h include file for PKCS #11.  1997 December 22 */
/* Copyright (C) 1994-8, RSA Data Security, Inc. All rights reserved. */
/* "RSA Data Security, Inc. Cryptoki Cryptographic Token Interface"   */
 
#ifndef _PKCSJNH_H_
#define _PKCSJNH_H_ 1

#ifdef __cplusplus
extern "C" {
#endif

/* These are the defines required for this implimentation of the */
/* Virtual Token                                                 */
#ifdef WIN32
	#pragma pack(push, cryptoki, 1)
	#define CK_PTR *
	#define CK_DEFINE_FUNCTION(returnType, name) returnType __declspec(dllexport) name
	#define CK_DECLARE_FUNCTION(returnType, name) returnType __declspec(dllexport) name
	#define CK_DECLARE_FUNCTION_POINTER(returnType, name) returnType __declspec(dllexport) (* name)
	#define CK_CALLBACK_FUNCTION(returnType, name) returnType (* name)
	#ifndef NULL_PTR
		#define NULL_PTR 0
	#endif
#endif

#include "pkcs11.h"

/* These are the post processing for the Virtual Token 		*/
#pragma pack(pop, cryptoki)

#ifdef __cplusplus
}
#endif

#endif
