Changeset 4904 for trunk/reader-dre.c


Ignore:
Timestamp:
Apr 3, 2011, 5:12:39 PM (9 years ago)
Author:
_network
Message:

dvbapi: simplify blockemm system

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/reader-dre.c

    r4896 r4904  
    360360    filter[1]=0;
    361361
    362     if ((!rdr->blockemm_g && !(rdr->b_nano[0xFF] & 0x01)) || (rdr->b_nano[0xFF] & 0x02)) // not blocked or to be saved
    363     {
    364         filter[idx++]=GLOBAL;
    365         filter[idx++]=1; //not active
    366         //FIXME: Dont now how to filter GLOBAL EMM's
    367         filter[idx+0]    = 0xFF; //dummy
    368         filter[idx+0+16] = 0xFF;
    369         ++filter[1];
    370         idx += 32;
     362    filter[idx++]=EMM_GLOBAL;
     363    filter[idx++]=1; //not active
     364    //FIXME: Dont now how to filter GLOBAL EMM's
     365    filter[idx+0]    = 0xFF; //dummy
     366    filter[idx+0+16] = 0xFF;
     367    filter[1]++;
     368    idx += 32;
     369
     370    filter[idx++]=EMM_SHARED;
     371    filter[idx++]=0;
     372    filter[idx+0]    = 0x89;
     373    filter[idx+0+16] = 0xFF;
     374    // FIXME: Seems to be that SA is only used with caid 0x4ae1
     375    if (rdr->caid == 0x4ae1) {
     376        memcpy(filter+idx+1, &rdr->sa[0][0], 4);
     377        memset(filter+idx+1+16, 0xFF, 4);
    371378    }
    372 
    373     if ((!rdr->blockemm_s && !(rdr->b_nano[0x89] & 0x01)) || (rdr->b_nano[0x89] & 0x02)) // not blocked or to be saved
    374     {
    375         filter[idx++]=SHARED;
    376         filter[idx++]=0;
    377         filter[idx+0]    = 0x89;
    378         filter[idx+0+16] = 0xFF;
    379         // FIXME: Seems to be that SA is only used with caid 0x4ae1
    380         if (rdr->caid == 0x4ae1) {
    381             memcpy(filter+idx+1, &rdr->sa[0][0], 4);
    382             memset(filter+idx+1+16, 0xFF, 4);
    383         }
    384         ++filter[1];
    385         idx += 32;
    386     }
    387 
    388     if ((!rdr->blockemm_u && !(rdr->b_nano[0x87] & 0x01)) || (rdr->b_nano[0x87] & 0x02)) // not blocked or to be saved
    389     {
    390         filter[70]=UNIQUE;
    391         filter[71]=0;
    392         filter[72+0]    = 0x87;
    393         filter[72+0+16] = 0xFF;
    394         //FIXME: No filter for hexserial
    395         ++filter[1];
    396         idx += 32;
    397     }
     379    filter[1]++;
     380    idx += 32;
     381
     382    filter[70]=EMM_UNIQUE;
     383    filter[71]=0;
     384    filter[72+0]    = 0x87;
     385    filter[72+0+16] = 0xFF;
     386    //FIXME: No filter for hexserial
     387    filter[1]++;
     388    idx += 32;
    398389   
    399390    return;
Note: See TracChangeset for help on using the changeset viewer.