Changeset 5370 for trunk/oscam-reader.c
- Timestamp:
- 06/11/11 14:01:07 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/oscam-reader.c
r5358 r5370 725 725 } 726 726 727 void clear_reader_pipe(struct s_reader * reader)728 {729 uchar *ptr;730 int32_t pipeCmd;731 while (reader && reader->client && reader->client->fd_m2c_c)732 {733 pipeCmd = read_from_pipe(reader->client->fd_m2c_c, &ptr);734 if (ptr) free(ptr);735 if (pipeCmd==PIP_ID_ERR || pipeCmd==PIP_ID_NUL)736 break;737 }738 }739 740 727 static void reader_do_pipe(struct s_reader * reader) 741 728 { 742 729 uchar *ptr; 743 int32_t pipeCmd = read_from_pipe(reader->client->fd_m2c_c, &ptr); 744 745 switch(pipeCmd) 746 { 747 case PIP_ID_ECM: 748 reader_get_ecm(reader, (ECM_REQUEST *)ptr); 749 break; 750 case PIP_ID_EMM: 751 reader_do_emm(reader, (EMM_PACKET *)ptr); 752 break; 753 case PIP_ID_CIN: 754 reader_do_card_info(reader); 755 break; 756 case PIP_ID_ERR: 757 cs_exit(1); 758 break; 759 default: 760 cs_log("unhandled pipe message %d (reader %s)", pipeCmd, reader->label); 761 break; 762 } 763 if (ptr) free(ptr); 730 struct s_client *cl = reader->client; 731 if(cl){ 732 int32_t fd_m2c_c = cl->fd_m2c_c; 733 if(fd_m2c_c){ 734 int32_t pipeCmd = read_from_pipe(fd_m2c_c, &ptr); 735 736 switch(pipeCmd) 737 { 738 case PIP_ID_ECM: 739 reader_get_ecm(reader, (ECM_REQUEST *)ptr); 740 break; 741 case PIP_ID_EMM: 742 reader_do_emm(reader, (EMM_PACKET *)ptr); 743 break; 744 case PIP_ID_CIN: 745 reader_do_card_info(reader); 746 break; 747 case PIP_ID_ERR: 748 cs_exit(1); 749 break; 750 default: 751 cs_log("unhandled pipe message %d (reader %s)", pipeCmd, reader->label); 752 break; 753 } 754 if (ptr) free(ptr); 755 } 756 } 764 757 } 765 758 … … 774 767 while (1) 775 768 { 776 switch(reader_listen(reader, reader->client->fd_m2c_c, reader->client->pfd)) 769 struct s_client *cl = reader->client; 770 switch(reader_listen(reader, cl->fd_m2c_c, cl->pfd)) 777 771 { 778 772 case 0: reader_do_idle(reader); break;
Note:
See TracChangeset
for help on using the changeset viewer.