📄 irdeto.h
字号:
/*
本代码仅作为学习研究之目的使用,请您于24小时内自觉将其删除,请勿应用于商业活动或其它赢利性活动中,
否则后果自负!
*/
/******************************************************
* 文件名:irdeto.h
* 功 能:处理TCA命令
* 作 者:
* 日 期:
*****************************************************/
#ifndef _irdeto_h_
#define _irdeto_h_
#include "sc_def.h"
#define MAX_IRDETO_PROV 4
#define MAX_CH_PER_PROV 4
#define MAX_IRDETO_CHANNEL 20
typedef struct
{
U32 uiIrdetoCardNo;
U8 ucNoOfProv;
U8 ucHexBase;
U8 ucHexSerial[3];
U8 aucProvBase[MAX_IRDETO_PROV];
U8 aucProvId[MAX_IRDETO_PROV][3];
char acCardNoStr[12];
U8 aucChannelId[MAX_IRDETO_CHANNEL];
U32 aucDateInfo[MAX_IRDETO_CHANNEL];
U8 aucChannelCount;
}Irdeto_Info_t;
Irdeto_Info_t irdeto;/*全局变量,在智能卡初始化后可以直接使用它的一些信息了*/
/* 初始化, 主要工作是读取卡内的基本信息,如卡号、运营商等信息,在对卡reset后调用
输入 handle -- smart card 句柄
输出 无
返回值 true -- 初始化成功 false -- 初始化失败
其他
*/
bool irdeto_init(Smart_Handle_t Handle);
/* 处理解析ECM,得到CW,得到它我们就可以看节目了,在收到ECM后调用!收取ECM的时候设置filter
的第一个字节0x80/0x81就ok了
输入 Handle -- smart card 句柄 buf -- ECM信息,从0x80/0x81开始
输出 pucCW -- 就是cw啦,16个字节,不是奇偶,就是奇偶,根据情况你自己试验
返回值 true -- 解析ECM成功 false --解析ECM失败
其他
*/
bool irdeto_parse_ecm(Smart_Handle_t Handle,U8* pbuf,U8* pucCW);
/* 处理EMM,主要就是完成对卡授权了,收到EMM调用。收取EMM的时候设置filter的第一个字节0x82,
5,6,7,8个字节就是卡号了。可以仅设置第一个字节,多收几个EMM研究研究哦!
输入 Handle -- smart card 句柄 pbuf -- EMM信息,len -- 数据长度
输出 无
返回值 true -- 解析EMM成功 false --解析EMM失败
其他
*/
bool irdeto_parse_emm(Smart_Handle_t Handle,U8* buf,int length);
#endif /* _irdeto_h_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -