Changeset 2036 for trunk/module-camd35.c
- Timestamp:
- 04/09/10 23:11:05 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/module-camd35.c
r2023 r2036 209 209 static void camd35_send_dcw(ECM_REQUEST *er) 210 210 { 211 uchar *buf; 212 buf=req+(er->cpti*REQ_SIZE); // get orig request 213 214 if (((er->rcEx > 0) || (er->rc == 8)) && !client[cs_idx].c35_suppresscmd08) 215 { 216 buf[0]=0x08; 217 buf[1]=2; 218 memset(buf+20, 0, buf[1]); 219 } 220 else 221 { 222 // Send CW 223 if ((er->rc < 4) || (er->rc == 7)) 224 { 225 if (buf[0]==3) 226 memmove(buf+20+16, buf+20+buf[1], 0x34); 227 buf[0]++; 228 buf[1]=16; 229 memcpy(buf+20, er->cw, buf[1]); 230 } 231 else 232 { 233 // Send old CMD44 to prevent cascading problems with older mpcs/oscam versions 234 buf[0]=0x44; 235 buf[1]=0; 236 } 237 } 238 camd35_send(buf); 239 camd35_request_emm(er); 211 uchar *buf; 212 buf = req + (er->cpti * REQ_SIZE); // get orig request 213 214 if (((er->rcEx > 0) || (er->rc == 8)) && !client[cs_idx].c35_suppresscmd08) 215 { 216 buf[0] = 0x08; 217 buf[1] = 2; 218 memset(buf + 20, 0, buf[1]); 219 } 220 else if (((er->rcEx > 0) || (er->rc == 6)) && client[cs_idx].c35_sleepsend > 0) 221 { 222 buf[0] = 0x08; 223 buf[1] = 2; 224 buf[20] = 0; 225 /* 226 * the second Databyte should be forseen for a sleeptime in minutes 227 * whoever knows the camd3 protocol related to CMD08 - please help! 228 * on tests this don't work with native camd3 229 */ 230 buf[21] = client[cs_idx].c35_sleepsend; 231 } 232 else 233 { 234 // Send CW 235 if ((er->rc < 4) || (er->rc == 7)) 236 { 237 if (buf[0]==3) 238 memmove(buf + 20 + 16, buf + 20 + buf[1], 0x34); 239 buf[0]++; 240 buf[1] = 16; 241 memcpy(buf+20, er->cw, buf[1]); 242 } 243 else 244 { 245 // Send old CMD44 to prevent cascading problems with older mpcs/oscam versions 246 buf[0] = 0x44; 247 buf[1] = 0; 248 } 249 } 250 camd35_send(buf); 251 camd35_request_emm(er); 240 252 } 241 253
Note:
See TracChangeset
for help on using the changeset viewer.