Changeset 1583
- Timestamp:
- 02/16/10 13:35:11 (14 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/csctapi/ifd_sci.c
r1582 r1583 134 134 135 135 params.T = T; 136 #if defined(TUXBOX) && defined(PPC) 137 if (cs_hw=CS_HW_DREAM) 138 reader[ridx].mhz = 1000; //Dreambox 500 seems to need this 139 else 140 #endif 141 params.fs = fs; 136 params.fs = fs; 142 137 143 138 //for Irdeto T14 cards, do not set ETU -
trunk/globals.h
r1578 r1583 59 59 #endif 60 60 #endif 61 61 62 62 #if defined(LIBUSB) 63 63 #include <libusb-1.0/libusb.h> … … 493 493 uchar gbox_prem; 494 494 int gbox_fd; 495 int loadbalanced; 495 496 struct timeb gbox_lasthello; // incoming time stamp 496 497 #ifdef CS_RDR_INIT_HIST -
trunk/oscam-config.c
r1572 r1583 1328 1328 return; 1329 1329 } 1330 if (!strcmp(token, "loadbalanced")) { rdr->loadbalanced=atoi(value); return; } 1330 1331 if (!strcmp(token, "ident")) { chk_ftab(value, &rdr->ftab,"reader",rdr->label,"provid"); return; } 1331 1332 if (!strcmp(token, "class")) { chk_cltab(value, &rdr->cltab); return; } -
trunk/reader-common.c
r1525 r1583 334 334 int reader_ecm(ECM_REQUEST *er) 335 335 { 336 int rc=-1; 336 int rc=-1, r, m=0; 337 static int loadbalanced_idx = 1; 337 338 if( (rc=reader_checkhealth()) ) 338 339 { 339 if( (reader[ridx].caid[0]>>8)==((er->caid>>8)&0xFF) ) 340 { 340 cs_log("OUT: ridx = %d (0x%x), client = 0x%x, lb_idx = %d", ridx, &reader[ridx], &client[cs_idx], loadbalanced_idx); 341 if(((reader[ridx].caid[0]>>8)==((er->caid>>8)&0xFF)) && (((reader[ridx].loadbalanced) && (loadbalanced_idx == ridx)) || !reader[ridx].loadbalanced)) 342 { 343 cs_log("IN: ridx = %d (0x%x), client = 0x%x, lb_idx = %d", ridx, &reader[ridx], &client[cs_idx], loadbalanced_idx); 341 344 client[cs_idx].last_srvid=er->srvid; 342 345 client[cs_idx].last_caid=er->caid; … … 344 347 switch(reader[ridx].card_system) 345 348 { 346 349 case SC_NAGRA: 347 350 rc=(nagra2_do_ecm(er)) ? 1 : 0; break; 348 351 case SC_IRDETO: … … 358 361 case SC_VIDEOGUARD2: 359 362 rc=(videoguard_do_ecm(er)) ? 1 : 0; break; 360 361 363 case SC_DRE: 364 rc=(dre_do_ecm(er)) ? 1: 0; break; 362 365 default: rc=0; 363 366 } … … 366 369 rc=0; 367 370 } 371 for (r=0;r<CS_MAXREADER;r++) 372 if (reader[r].caid[0]) m++; 373 if (loadbalanced_idx++ >= m) loadbalanced_idx = 1; 368 374 return(rc); 369 375 }
Note:
See TracChangeset
for help on using the changeset viewer.