⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 acp.h

📁 本程序为ST公司开发的源代码
💻 H
字号:
/************************************************** * * ACP.h * * CVS ID:   $Id: ACP.h,v 1.4 2007/09/20 21:35:51 longauer Exp $ * Author:   Leos Longauer [LL] - STM * Date:     $Date: 2007/09/20 21:35:51 $ * Revision: $Revision: 1.4 $ *  * Description: *  *   public header: Authentication Coprocessor * *************************************************** *  * COPYRIGHT (C) ST Microelectronics  2007 *            All Rights Reserved * ***************************************************  * * STM CVS Log: * * $Log: ACP.h,v $ * Revision 1.4  2007/09/20 21:35:51  longauer * virtual iPod authentication is working * * Revision 1.3  2007/09/04 16:54:27  longauer * coprocessor data processing; IAP_ProcessFsm() established; * * Revision 1.2  2007/09/03 13:25:18  longauer * Ipod Rx Archive; files affected: ACP.h,  iAP.*, player.c, gendef.h * * Revision 1.1  2007/08/10 12:39:07  longauer * first commit - coprocessor response simulation * * ***************************************************/#ifndef _ACP_H#define _ACP_H#if (0!=IPOD_AP)/*************************** DEFINITIONS **************************//*---------------------------------------------------------------------------*//*!\brief Compilation switches                                               *//*---------------------------------------------------------------------------*/#define _ACP_DEBUG#define _B32_BACK_COMPATIBILITY		//provisional#define C_ACP_BUFFER_LENGTH	132	/* TAKE CARE ALL ACP STRUCTURES FITS *//* valid for version 05Dec'06 - can change */#define C_ACP_CHALLENGE_V1_LENGTH	16#define C_ACP_CHALLENGE_V2_LENGTH	20#define C_ACP_CHALLENGE_LENGTH	C_ACP_CHALLENGE_V2_LENGTH	/* max length */#define C_ACP_PAGE_LENGTH	128#define C_ACP_SIGNATURE_LENGTH	128//#if (C_ACP_BUFFER_LENGTH<sizeof(tAcpCertPageStatusData))//#error("ACP COMPILATION ERROR - C_ACP_BUFFER_LENGTH")//#endif//#if (C_ACP_BUFFER_LENGTH<sizeof(tAcpSignatureStatusData))//#error("ACP COMPILATION ERROR - C_ACP_BUFFER_LENGTH")//#endif/*---------------------------------------------------------------------------*//*!\brief iAP command events                                                 *//*---------------------------------------------------------------------------*/typedef enum{	ACP_CMD_INIT	= 0,	ACP_CMD_GET_INFO,		/* 1 */	ACP_CMD_GET_PAGE,		/* 2 */	ACP_CMD_GET_SIGNATURE,	/* 3 */} t_acp_cmd;typedef struct{	uint8 ChallengeData[C_ACP_CHALLENGE_LENGTH];} tAcpChallengeCmdData;typedef uint8 tAcpPageCmdData;/* command event - from player to ACP */typedef struct{  uint8* pData;     /* ptr to the status data */  t_acp_cmd Cmd;} t_acp_cmd_event;/*---------------------------------------------------------------------------*//*!\brief ACP status events                                                  *//*---------------------------------------------------------------------------*/typedef struct{	uint8* pBuffer;	uint16 BufferLength;} tAcpInitInfo;typedef struct{	union	{		struct		{			uint8 FWMajVer;		/* 0: */			uint8 FWMinVer;		/* 1: */			uint8 AuthMajVer;	/* 2: */			uint8 AuthMinVer;	/* 3: */		} V;		struct		{			uint8 FWMajVer;		/* 0: 0x01 */			uint8 FWMinVer;		/* 1: 0x00 */			uint8 AuthMajVer;	/* 2: 0x01 */			uint8 AuthMinVer;	/* 3: 0x00 */			uint16 AuthIndexSupHigh;	/* 4: 0x0000 */			uint16 AuthIndexSupLow;		/* 5: 0x0000 */			uint32 DeviceID;	/* 6: 0x........ */			uint8 AuthIndex;	/* 0x10: 0? */		} V1;		struct		{			uint8 FWMajVer;		/* 0: 0x02 */			uint8 FWMinVer;		/* 1: 0x00 */			uint8 AuthMajVer;	/* 2: 0x02 */			uint8 AuthMinVer;	/* 3: 0x00 */			uint32 DeviceID;	/* 4: 0x00000200 */			uint32 CertDataLen;	/* 0x30: 0x......(<=1920) */			uint8 PageMaxNum;	/* number of sections */		} V2;	} Version;} tAcpInfoStatusData;typedef struct{	uint8 PageNum;	uint16 PageLen;	uint8 PageData[C_ACP_PAGE_LENGTH];} tAcpCertPageStatusData;typedef struct{	uint16 SignatureLen;	uint8 SignatureData[C_ACP_SIGNATURE_LENGTH];} tAcpSignatureStatusData;/* status event- from ACP to player */typedef struct{  uint8* pData;     /* ptr to the status data */  t_acp_cmd ReplyStatusTo;  t_acp_state Error;} t_acp_status_event;/*********************** FUNCTION PROTOTYPES **********************//*---------------------------------------------------------------------------*//*!\brief Acp Task functions                                                 *//*---------------------------------------------------------------------------*/void acp_command(t_acp_cmd_event* acp_cmd);void acp_status(t_acp_status_event* acp_stat);//void InitACPTask(void);void ACPTask(void *unused);#endif /*IPOD_AP*/#endif /*_ACP_H*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -