Changeset 10580
- Timestamp:
- 02/22/15 19:43:07 (9 years ago)
- Location:
- trunk
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/globals.h
r10577 r10580 1344 1344 void *crdr_data; // Private card reader data 1345 1345 bool crdr_flush; // sci readers may disable flush per reader 1346 struct s_cardsystem csystem;1346 struct s_cardsystem *csystem; 1347 1347 void *csystem_data; // Private card system data 1348 1348 bool csystem_active; -
trunk/module-monitor.c
r10557 r10580 460 460 461 461 snprintf(tmpbuf, sizeof(tmpbuf) - 1, "Cardsystem: %s Reader: %s ValidTo: %s HexSerial: %s ATR: %s", 462 rdr->csystem .desc,462 rdr->csystem ? rdr->csystem->desc : "-", 463 463 rdr->label, 464 464 valid_to, -
trunk/module-webif.c
r10579 r10580 4145 4145 for(i = 0; i < rdr->card_atr_length; i++) { tpl_printf(vars, TPLAPPEND, "READERATR", "%02X ", rdr->card_atr[i]); } 4146 4146 4147 tpl_addVar(vars, TPLADD, "READERCSYSTEM", rdr->csystem.desc); 4147 if (rdr->csystem) 4148 tpl_addVar(vars, TPLADD, "READERCSYSTEM", rdr->csystem->desc); 4148 4149 4149 4150 if(add_nds_line) … … 6259 6260 else if(!proxy && rdr->csystem_active) // local active reader 6260 6261 { 6261 csystem = &rdr->csystem;6262 csystem = rdr->csystem; 6262 6263 caid = rdr->caid; 6263 6264 } -
trunk/oscam-chk.c
r10571 r10580 708 708 if(!is_network_reader(rdr) && ((rdr->caid >> 8) != ((er->caid >> 8) & 0xFF) && (rdr->caid >> 8) != ((er->ocaid >> 8) & 0xFF))) 709 709 { 710 if (!rdr->csystem) 711 return 0; 710 712 int i, caid_found = 0; 711 for(i = 0; i < (int)ARRAY_SIZE(rdr->csystem .caids); i++)712 { 713 if(!rdr->csystem .caids[i])713 for(i = 0; i < (int)ARRAY_SIZE(rdr->csystem->caids); i++) 714 { 715 if(!rdr->csystem->caids[i]) 714 716 { continue; } 715 if(rdr->csystem .caids[i] == er->caid || rdr->csystem.caids[i] == er->ocaid)717 if(rdr->csystem->caids[i] == er->caid || rdr->csystem->caids[i] == er->ocaid) 716 718 { 717 719 caid_found = 1; -
trunk/oscam-config-reader.c
r10577 r10580 1051 1051 ll_destroy(&rdr->ll_entitlements); 1052 1052 1053 if(rdr->csystem .card_done)1054 rdr->csystem .card_done(rdr);1053 if(rdr->csystem && rdr->csystem->card_done) 1054 rdr->csystem->card_done(rdr); 1055 1055 NULLFREE(rdr->csystem_data); 1056 1056 -
trunk/oscam-emm.c
r10579 r10580 161 161 { 162 162 int caid_found = 0; 163 for(i = 0; i < (int)ARRAY_SIZE(reader->csystem.caids); i++) 164 { 165 if( (reader->caid != 0) && (reader->csystem.caids[i] == caid) ) 163 if (!reader->csystem) 164 return 0; 165 for(i = 0; i < (int)ARRAY_SIZE(reader->csystem->caids); i++) 166 { 167 if( (reader->caid != 0) && (reader->csystem->caids[i] == caid) ) 166 168 { 167 169 caid_found = 1; … … 359 361 { 360 362 if(aureader->csystem_active) 361 { csystem = &aureader->csystem; }363 { csystem = aureader->csystem; } 362 364 } 363 365 -
trunk/oscam-log-reader.c
r10575 r10580 28 28 static const char *reader_desc_txt(struct s_reader *reader) 29 29 { 30 if(reader->csystem .desc)31 { return reader->csystem .desc; }30 if(reader->csystem && reader->csystem->desc) 31 { return reader->csystem->desc; } 32 32 else if(reader->crdr && reader->crdr->desc) 33 33 { return reader->crdr->desc; } -
trunk/reader-common.c
r10566 r10580 33 33 { 34 34 reader->csystem_active = false; 35 memset(&reader->csystem , 0 , sizeof(reader->csystem));35 reader->csystem = NULL; 36 36 memset(reader->hexserial, 0 , sizeof(reader->hexserial)); 37 37 memset(reader->prid , 0xFF, sizeof(reader->prid)); … … 118 118 { cl->last = time((time_t *)0); } 119 119 120 if(reader->csystem_active && reader->csystem .card_info)121 { 122 reader->csystem .card_info(reader);120 if(reader->csystem_active && reader->csystem && reader->csystem->card_info) 121 { 122 reader->csystem->card_info(reader); 123 123 } 124 124 } … … 129 129 if (reader && reader->card_status == CARD_INSERTED) 130 130 { 131 if (reader->csystem_active && reader->csystem .poll_status)132 { reader->csystem .poll_status(reader); }131 if (reader->csystem_active && reader->csystem && reader->csystem->poll_status) 132 { reader->csystem->poll_status(reader); } 133 133 } 134 134 } … … 145 145 { 146 146 rdr_log(reader, "found card system %s", cardsystems[i].desc); 147 reader->csystem = cardsystems[i];147 reader->csystem = &cardsystems[i]; 148 148 reader->csystem_active = true; 149 149 led_status_found_cardsystem(); … … 257 257 rdr_log(reader, "card ejected"); 258 258 reader_nullcard(reader); 259 if(reader->csystem .card_done)260 reader->csystem .card_done(reader);259 if(reader->csystem && reader->csystem->card_done) 260 reader->csystem->card_done(reader); 261 261 NULLFREE(reader->csystem_data); 262 262 if(cl) … … 402 402 // some systems eg. nagra2/3 needs post process after receiving cw from card 403 403 // To save ECM/CW time we added this function after writing ecm answer 404 if(reader->csystem_active && reader->csystem .post_process)405 { 406 reader->csystem .post_process(reader);404 if(reader->csystem_active && reader->csystem && reader->csystem->post_process) 405 { 406 reader->csystem->post_process(reader); 407 407 } 408 408 } … … 422 422 } 423 423 424 if(reader->csystem_active && reader->csystem .do_ecm)425 { 426 rc = reader->csystem .do_ecm(reader, er, ea);427 rdr_log_dbg(reader, D_READER, "%s: after csystem .do_ecm rc=%d", __func__, rc);424 if(reader->csystem_active && reader->csystem && reader->csystem->do_ecm) 425 { 426 rc = reader->csystem->do_ecm(reader, er, ea); 427 rdr_log_dbg(reader, D_READER, "%s: after csystem->do_ecm rc=%d", __func__, rc); 428 428 } 429 429 else … … 448 448 { return 3; } 449 449 450 if(reader->csystem_active && reader->csystem .do_emm)451 { rc = reader->csystem .do_emm(reader, ep); }450 if(reader->csystem_active && reader->csystem && reader->csystem->do_emm) 451 { rc = reader->csystem->do_emm(reader, ep); } 452 452 else 453 453 { rc = 0; }
Note:
See TracChangeset
for help on using the changeset viewer.