]> www.vanbest.org Git - sasc-ng.git/commitdiff
don't trigger ExternalAU for EMM keys
authorleslie <unknown>
Tue, 1 Jan 2008 20:38:18 +0000 (21:38 +0100)
committerleslie <unknown>
Tue, 1 Jan 2008 20:38:18 +0000 (21:38 +0100)
systems/nagra/nagra2-4101.c
systems/nagra/nagra2.c
systems/seca/seca.c

index 9e5af258a26ebf03512aaa17c5003962b871dfd5..4b7a81d3716096e9f7602b7cd4ef6616d2761a62 100644 (file)
@@ -108,7 +108,7 @@ bool cN2Prov4101::PostProcAU(int id, unsigned char *data)
 {
   if(data[1]==0x01) {
     cPlainKey *pk;
-    if(!(pk=keys.FindKey('N',id,MBC(N2_MAGIC,0x30),16))) {
+    if(!(pk=keys.FindKeyNoTrig('N',id,MBC(N2_MAGIC,0x30),16))) {
       PRINTF(L_SYS_EMM,"missing %04x NN 30 3DES key (16 bytes)",id);
       return false;
       }
index ad95ccc15f95dfbc970640f7b14d92097a27d762..63bfe537e725edf86737395dcaadb6496e1754ef 100644 (file)
@@ -934,18 +934,18 @@ void cSystemNagra2::ProcessEMM(int pid, int caid, unsigned char *buffer)
   cBN n;
   unsigned char ideaKey[24], vKey[16];
   bool hasVerifyKey=false;
-  if(!(pk=keys.FindKey('N',id,MBC(N2_MAGIC,keyset+0x10+rsasel),96)))  {
+  if(!(pk=keys.FindKeyNoTrig('N',id,MBC(N2_MAGIC,keyset+0x10+rsasel),96)))  {
     PRINTF(L_SYS_EMM,"missing %04x NN %.02X RSA key (96 bytes)",id,keyset+0x10+rsasel);
     return;
     }
   pk->Get(n);
-  if((pk=keys.FindKey('N',id,MBC(N2_MAGIC,0x03+sigsel),sizeof(vKey)))) {
+  if((pk=keys.FindKeyNoTrig('N',id,MBC(N2_MAGIC,0x03+sigsel),sizeof(vKey)))) {
     pk->Get(vKey);
     hasVerifyKey=true;
     }
   else if(id!=lastEmmId) PRINTF(L_SYS_EMM,"missing %04x NN %.02X signature key (non-fatal)",id,0x03+sigsel);
-  if(!(pk=keys.FindKey('N',id,MBC(N2_MAGIC,keyset),24))) {
-    if(!(pk=keys.FindKey('N',id,MBC(N2_MAGIC,keyset+sel),16))) {
+  if(!(pk=keys.FindKeyNoTrig('N',id,MBC(N2_MAGIC,keyset),24))) {
+    if(!(pk=keys.FindKeyNoTrig('N',id,MBC(N2_MAGIC,keyset+sel),16))) {
       PRINTF(L_SYS_EMM,"missing %04x NN %.02x IDEA key (24 or 16 bytes)",id,keyset+sel);
       return;
       }
@@ -981,7 +981,7 @@ void cSystemNagra2::ProcessEMM(int pid, int caid, unsigned char *buffer)
             if(ks==0x06 || ks==0x46) kn=(ks>>6)&1; else kn=MBC(N2_MAGIC,ks);
             unsigned char key[256];
             memset(key,0,sizeof(key));
-            if((pk=keys.FindKey('N',id,kn,len))) {
+            if((pk=keys.FindKeyNoTrig('N',id,kn,len))) {
               if(cPlainKeyNagra::IsBNKey(kn)) { pk->Get(n); n.PutLE(key,len); }
               else pk->Get(key);
               }
index 3a0fa0c49c4cf9d472392039f8815a8b3e3788f4..920bb9edf946df0b0460a4beda5aea92b9a5b6d0 100644 (file)
@@ -1534,9 +1534,9 @@ void cSystemSeca::ProcessEMM(int pid, int caid, unsigned char *buffer)
     cPlainKey *pk;
     cBN exp, mod;
     
-    if(!(pk=keys.FindKey('S',provId,MBC3('E',rsaKeynr,EMM_MAGIC),-1))) return;
+    if(!(pk=keys.FindKeyNoTrig('S',provId,MBC3('E',rsaKeynr,EMM_MAGIC),-1))) return;
     pk->Get(exp);
-    if(!(pk=keys.FindKey('S',provId,MBC3('M',rsaKeynr,EMM_MAGIC),-1))) return;
+    if(!(pk=keys.FindKeyNoTrig('S',provId,MBC3('M',rsaKeynr,EMM_MAGIC),-1))) return;
     pk->Get(mod);
  
     if(rsa.RSA(emm+2,emm+2,msgLen-2,exp,mod)!=msgLen-2) return;