#ifndef  PKCRYPTO_H
#define  PKCRYPTO_H
/**@@@+++@@@@******************************************************************
**
** Microsoft Windows Media
** Copyright (C) Microsoft Corporation. All rights reserved.
**
***@@@---@@@@******************************************************************
*/

#include <drmcommon.h>
#include <drmpkcrypto.h>
#include "CRYS.h"
typedef union DRM_ECC_GLOBAL_UNION{
	struct{
		CRYS_ECPKI_UserPrivKey_t   UserPrivKey;
		CRYS_ECPKI_UserPublKey_t   UserPublKey;
		CRYS_ECPKI_KG_TempData_t   TempData;
	} ECC_KG_stc;/*3132 bytes */

	struct{
		CRYS_ECPKI_UserPublKey_t   UserPublKey;
		CRYS_EC_ELGAMAL_TempData_t TempData;
	} ECC_ENC_stc;/* 5132 bytes */

	struct {
		CRYS_ECPKI_UserPrivKey_t   UserPrivKey;
		CRYS_EC_ELGAMAL_TempData_t TempData;
	} ECC_DEC_stc; /* 5064 bytes */

	struct {
		CRYS_ECPKI_UserPrivKey_t      SignerPrivKey;
		CRYS_ECDSA_SignUserContext_t  SignUserContext;
	} ECC_SIGN_stc;/* 3932 */

	struct {
		CRYS_ECPKI_UserPublKey_t       UserPublKey;
		CRYS_ECDSA_VerifyUserContext_t VerifyUserContext;
	} ECC_VERIFY_stc; /* 3792 */                    

	struct {
		CRYS_ECPKI_UserPublKey_t    UserPublKey;
		CRYS_ECPKI_BUILD_TempData_t TempBuff;
	}ECC_BUILD_PUB_stc;

}DRM_ECC_GLOBAL_UNION_t;

#endif //PKCRYPTO_H

