Changeset 8460
- Timestamp:
- 03/03/13 18:50:54 (11 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/oscam-ecm.c
r8456 r8460 1318 1318 1319 1319 struct s_ecm_answer *ea, *prv = NULL; 1320 uint32_t ex1rdr = 0; 1320 1321 if (er->rc >= E_99 && !cacheex_is_match_alias(client, er)) { 1321 1322 er->reader_avail = 0; … … 1374 1375 er->reader_count = 0; 1375 1376 for (ea = er->matching_rdr; ea; ea = ea->next) { 1377 if (cacheex_reader(ea->reader)) 1378 ex1rdr++; 1376 1379 if (ea->status & READER_ACTIVE) { 1377 1380 if (!(ea->status & READER_FALLBACK)) … … 1425 1428 #ifdef CS_CACHEEX 1426 1429 int8_t cacheex = client->account ? client->account->cacheex.mode : 0; 1427 uint32_t cacheex_wait_time = get_cacheex_wait_time(er,client);1430 uint32_t cacheex_wait_time = ex1rdr>0 ? 0 : get_cacheex_wait_time(er,client); //ex1 reader win, no wait, in time of wait for exscp we ask ex1 already 1428 1431 uint8_t cwcycle_act = cwcycle_check_act(er->caid); 1429 1432 if (!cwcycle_act) 1430 cs_debug_mask(D_ CACHEEX | D_CSPCWC, "[GET_CW] wait_time %d caid %04X prov %06X srvid %04X rc %d cacheex %d", cacheex_wait_time, er->caid, er->prid, er->srvid, er->rc, cacheex);1433 cs_debug_mask(D_TRACE | D_CACHEEX, "[GET_CW] wait_time %d caid %04X prov %06X srvid %04X rc %d cacheex cl mode %d ex1rdr %d", cacheex_wait_time, er->caid, er->prid, er->srvid, er->rc, cacheex, ex1rdr); 1431 1434 if ((cacheex_wait_time && !cwcycle_act) && er->rc == E_UNHANDLED) { //not found in cache, so wait! 1432 1435 add_ms_to_timeb(&er->cacheex_wait, cacheex_wait_time); … … 1451 1454 } 1452 1455 if (max_wait <= 0 ) { 1453 cs_debug_mask(D_ CACHEEX|D_CSPCWC, "[GET_CW] wait_time over");1456 cs_debug_mask(D_TRACE | D_CACHEEX, "[GET_CW] wait_time over"); 1454 1457 snprintf(er->msglog, MSGLOGSIZE, "wait_time over"); 1455 1458 } … … 1530 1533 #if defined CS_CACHEEX && defined CW_CYCLE_CHECK 1531 1534 if (cwcycle_act) 1532 cs_debug_mask(D_ CACHEEX | D_CSPCWC, "[GET_CW] wait_time (cwc) %d caid %04X prov %06X srvid %04X rc %d cacheex %d %ld", cacheex_wait_time, er->caid, er->prid, er->srvid, er->rc, cacheex, er->tps.time);1535 cs_debug_mask(D_TRACE | D_CACHEEX, "[GET_CW] wait_time (cwc) %d caid %04X prov %06X srvid %04X rc %d cacheex cl mode %d ex1rdr %d", cacheex_wait_time, er->caid, er->prid, er->srvid, er->rc, cacheex, ex1rdr); 1533 1536 if ((cacheex_wait_time && cwcycle_act) && er->rc == E_UNHANDLED) { //wait for cache answer! 1534 1537 add_ms_to_timeb(&er->cacheex_wait, cacheex_wait_time); -
trunk/oscam.c
r8455 r8460 794 794 795 795 tbc = er->tps; 796 #if defined CS_CACHEEX && defined CW_CYCLE_CHECK797 time_to_check = add_ms_to_timeb(&tbc, (er->stage < 2 ) ? er->cacheex_wait_time:((er->stage < 4) ? auto_timeout(er, cfg.ftimeout) : auto_timeout(er, cfg.ctimeout)));796 #ifdef CS_CACHEEX 797 time_to_check = add_ms_to_timeb(&tbc, (er->stage < 2 && er->cacheex_wait_time) ? er->cacheex_wait_time:((er->stage < 4) ? auto_timeout(er, cfg.ftimeout) : auto_timeout(er, cfg.ctimeout))); 798 798 #else 799 799 time_to_check = add_ms_to_timeb(&tbc, ((er->stage < 4) ? auto_timeout(er, cfg.ftimeout) : auto_timeout(er, cfg.ctimeout))); … … 801 801 if (comp_timeb(&t_now, &tbc) >= 0) { 802 802 if (er->stage < 4) { 803 #if defined CS_CACHEEX && defined CW_CYCLE_CHECK803 #ifdef CS_CACHEEX 804 804 if (er->stage < 2 && er->cacheex_wait_time) 805 805 debug_ecm(D_TRACE, "request for %s %s", username(er->client), buf);
Note:
See TracChangeset
for help on using the changeset viewer.