- Timestamp:
- 10/23/09 11:28:15 (14 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/reader-common.c
r460 r466 97 97 int reader_cmd2icc(uchar *buf, int l) 98 98 { 99 //int rc;100 // if ((rc=reader_doapi(0, buf, l, D_DEVICE))<0) 101 r eturn(reader_doapi(0, buf, l, D_DEVICE));102 // else 103 // return(rc);99 int rc; 100 cs_ddump(buf, l, "write to cardreader %s:",reader[ridx].label); 101 rc = reader_doapi(0, buf, l, D_DEVICE); 102 cs_ddump(cta_res, cta_lr, "answer from cardreader %s:", reader[ridx].label); 103 return rc; 104 104 } 105 105 -
trunk/reader-seca.c
r452 r466 49 49 ins12[2]=i;//select provider 50 50 read_cmd(ins12, NULL); // show provider properties 51 cs_debug("hexdump:%s", cs_hexdump (0, cta_res, 27));52 51 53 52 if ((cta_res[25] != 0x90) || (cta_res[26] != 0x00)) return (0); … … 169 168 170 169 //memcpy(ins3cdata,er->ecm+8,256-8); 171 cs_debug("do_ecm:ins3c=%s", cs_hexdump (0, ins3c, 10));172 170 write_cmd(ins3c, er->ecm+8); //ecm request 173 cs_debug("do_ecm_answer:%02x%02x",cta_res[0], cta_res[1]);174 171 175 172 static unsigned char ins30[] = { 0xC1, 0x30, 0x00, 0x02, 0x09 }; … … 178 175 if (cta_res[0] == 0x90 && cta_res[1] == 0x1a) { 179 176 write_cmd(ins30, ins30data); 180 cs_debug("do_ins30_answer:%02x%02x",cta_res[0], cta_res[1]);181 177 write_cmd(ins3c, er->ecm+8); //ecm request 182 cs_debug("do_ecm_answer2:%02x%02x",cta_res[0], cta_res[1]);183 178 } 184 179 185 180 if ((cta_res[0] != 0x90) || (cta_res[1] != 0x00)) return (0); 186 181 read_cmd(ins3a, NULL); //get cw's 187 cs_debug("cwdump:%s", cs_hexdump(0, cta_res,18));188 182 if ((cta_res[16] != 0x90) || (cta_res[17] != 0x00)) return (0);//exit if response is not 90 00 //TODO: if response is 9027 ppv mode is possible! 189 183 memcpy(er->cw,cta_res,16); … … 255 249 256 250 ins40[2]=i; 257 cs_debug("do_emm:ins40=%02x%02x%02x%02x%02x first 16 bytes of ins40data=%s", ins40[0], ins40[1], ins40[2], ins40[3], ins40[4], cs_hexdump (0, ep->emm + ins40data_offset, 16));258 251 write_cmd(ins40, ep->emm + ins40data_offset); //emm request 259 cs_debug("emmdump:%s", cs_hexdump(0, cta_res, 18));260 252 //TODO if ((cta_res[16] != 0x90) || (cta_res[17] != 0x00)) return (0); 261 253 // if ((cta_res[16] != 0x90) || (cta_res[17] != 0x19)) … … 301 293 break; 302 294 case 0x83: 303 cs_debug ("PBM dump for provider%i: %s", prov + 1, cs_hexdump (0, cta_res, 32));304 //cs_log ("PBM dump for provider%i: %s", prov + 1, cs_hexdump (0, cta_res, l));305 295 memcpy (pbm, cta_res + 1, 8); 306 296 cs_log ("PBM for provider %i: %s", prov + 1, cs_hexdump (0, pbm, 8)); -
trunk/reader-videoguard2.c
r461 r466 467 467 unsigned char atr_bskyb_new[] = { 0x3F, 0xFD, 0x13, 0x25, 0x02, 0x50, 0x00, 0x0F, 0x33, 0xB0, 0x0F, 0x69, 0xFF, 0x4A, 0x50, 0xD0, 0x00, 0x00, 0x53, 0x59, 0x02 }; 468 468 unsigned char atr_skyitalia[] = { 0x3F, 0xFF, 0x13, 0x25, 0x03, 0x10, 0x80, 0x33, 0xB0, 0x0E, 0x69, 0xFF, 0x4A, 0x50, 0x70, 0x00, 0x00, 0x49, 0x54, 0x02, 0x00, 0x00 }; 469 unsigned char atr_skyitalia93b[] = { 0x3F, 0xFD, 0x13, 0x25, 0x02, 0x50, 0x80, 0x0F, 0x33, 0xB0, 0x13, 0x69, 0xFF, 0x4A, 0x50, 0xD0, 0x80, 0x00, 0x49, 0x54, 0x03 }; 469 470 unsigned char atr_directv[] = { 0x3F, 0x78, 0x13, 0x25, 0x03, 0x40, 0xB0, 0x20, 0xFF, 0xFF, 0x4A, 0x50, 0x00 }; 470 471 unsigned char atr_yes[] = { 0x3F, 0xFF, 0x13, 0x25, 0x03, 0x10, 0x80, 0x33, 0xB0, 0x11, 0x69, 0xFF, 0x4A, 0x50, 0x50, 0x00, 0x00, 0x47, 0x54, 0x01, 0x00, 0x00 }; … … 496 497 { 497 498 cs_log("Type: Videoguard Viasat new (093E)"); 499 } 500 else if ((atrsize == sizeof (atr_skyitalia93b)) && (memcmp (atr, atr_skyitalia, atrsize) == 0)) 501 { 502 cs_log("Type: Videoguard Sky Italia new (093B)"); 498 503 } 499 504 else
Note:
See TracChangeset
for help on using the changeset viewer.