]> www.vanbest.org Git - sasc-ng.git/commitdiff
cardclient-cccam2: fix handling partial DCW
authorleslie <unknown>
Sun, 27 Sep 2009 13:37:55 +0000 (21:37 +0800)
committerleslie <unknown>
Sun, 27 Sep 2009 13:37:55 +0000 (21:37 +0800)
systems/cardclient/cccam2.c

index 2997c677abe6ed9056432abc04ecb04b8ea01c1e..5c423f9cebb5ab7a54d01d442590ccb0165d6898 100644 (file)
@@ -872,7 +872,9 @@ bool cCardClientCCcam2::ProcessECM(const cEcmInfo *ecm, const unsigned char *dat
       shares.SetLag(shareid,l);
       PRINTF(L_CC_CCCAM2EX,"wait returned after %lld",l);
       if(newcw) {
-        memcpy(Cw,cw,16);
+        // check for partial CW
+        if(!CheckNull(cw+0,8)) memcpy(Cw+0,cw+0,8);
+        if(!CheckNull(cw+8,8)) memcpy(Cw+8,cw+8,8);
         cwmutex.Unlock();
         ecmshares.AddStatus(ecm,shareid,1);
         PRINTF(L_CC_CCCAM2,"got CW");