Changeset 5950
- Timestamp:
- 09/10/11 12:21:32 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/reader-irdeto.c
r5881 r5950 122 122 } 123 123 124 static unsigned char XorSum(const unsigned char *mem, int len) { 125 unsigned char cs=0; 126 while(len>0) { cs ^= *mem++; len--; } 127 return cs; 128 } 129 124 130 static time_t chid_date(struct s_reader * reader, uint32_t date, char *buf, int32_t l) 125 131 { … … 417 423 sc_Acs57CamKey[69]=crc; 418 424 if (reader->caid == 0x0648) { 425 sc_Acs57CamKey[69] = XorSum(sc_Acs57CamKey, 69) ^ 0x3f ^ (sc_Acs57CamKey[0]&0xf0) ^ 0x1b; 419 426 if (irdeto_do_cmd(reader, sc_Acs57CamKey, 0x9011, cta_res, &cta_lr)) { 420 427 cs_log("[reader-irdeto] You have a bad Cam Key set"); … … 468 475 memcpy(cta_cmd+5,er->ecm+6,er->ecm[2]-1); 469 476 cta_cmd[er->ecm[2]+2]=crc; 477 478 if (reader->caid == 0x0648) 479 cta_cmd[er->ecm[2]+2]=XorSum(cta_cmd, (er->ecm[2]+2)^0x3f^(cta_cmd[0]&0xf0)); 480 470 481 irdeto_do_cmd(reader, cta_cmd, 0, cta_res, &cta_lr); 471 482 int32_t acslength=cta_res[cta_lr-1];
Note:
See TracChangeset
for help on using the changeset viewer.