📄 yxtf.h
字号:
/*
本代码仅作为学习研究之目的使用,请您于24小时内自觉将其删除,请勿应用于商业活动或其它赢利性活动中,
否则后果自负!
*/
/******************************************************
* 文件名:yxtf.h
* 功 能:处理TCA命令
* 作 者:
* 日 期:
*****************************************************/
#ifndef _yxtf_h_
#define _yxtf_h_
#include "sc_def.h"
#define MAX_PROV_COUNT 4
typedef struct
{
U32 uCardNumber; /*卡号*/
U8 iAgeGrade; /*年龄等级*/
U16 provID[MAX_PROV_COUNT]; /*运营商ID*/
U8 paringflag; /*配对标识 0-智能卡未和任何机顶盒配对 1-智能卡和机顶盒配对过*/
}Yxtf_Info_t;
Yxtf_Info_t yxtf; /*全局变量,在智能卡初始化后可以直接使用它的一些信息了*/
/* 初始化, 主要工作是读取卡内的基本信息,如卡号、运营商等信息,在对卡reset后调用
输入 handle -- smart card 句柄
输出 无
返回值 true -- 初始化成功 false -- 初始化失败
其他
*/
bool yxtf_init(Smart_Handle_t handle);
/* 机卡配对,一般情况没必要用的,在有些地方,tf在ECM中设置了要求智能卡配对
才能解出cw,这个时候想办法得到配对信息,执行下面这个命令,就可以完成智能卡和
你的机顶盒配对了。那些以为机卡配对了就无法共享的想法应该是天真的,至少对tf
来说是这样。
输入 Handle -- smart card 句柄 pairingcode -- 4字节的配对信息,卡和
对应的机器通讯过程中有,对应的机器flash中也存有一个,紧挨着卡号的信息
输出 无
返回值 true -- 机卡配对成功 false -- 机卡配对失败
其他
*/
bool yxtf_pairing(Smart_Handle_t Handle, U8* pairingcode);//机卡配对,有的地方需要完成这个动作才能解出节目
/* 处理解析ECM,得到CW,得到它我们就可以看节目了,在收到ECM后调用!收取ECM的时候设置filter
的第一个字节0x80/0x81就ok了
输入 Handle -- smart card 句柄 buf -- ECM信息,从0x80/0x81开始
输出 pucCW -- 就是cw啦,16个字节,不是奇偶,就是奇偶,根据情况你自己试验
返回值 true -- 解析ECM成功 false --解析ECM失败
其他
*/
bool yxtf_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 yxtf_parse_emm(Smart_Handle_t Handle,U8* pbuf,U16 len);
#endif /* _yxtf_h_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -