tecfreak
Spezialist
- Registriert
- 13. September 2010
- Beiträge
- 616
- Reaktionspunkte
- 322
- Punkte
- 123
Hallo,
habe festgestellt, dass der beta-tunnel im vdr-sc nicht richtig zu funktionieren scheint.
Auf jeden Fall haben die vom sc-plugin getunnelten ECMs laut oscam eine Länge von 0x96 wo normalerweise eine Länge von 0x93 korrekt wäre.
Nun soll sich der vdr-sc (cccam2-client) beim beta-tunnel möglichst wie ein "echter" cccam-client verhalten damit die checksums der ECMs stimmen und der server auch vernünftig damit umgehen kann (Stichwort: cache).
Außerdem kann mein oscam-server mit den ECMs mit der Länge 0x96 nix anfangen bzw. die smartcard spuckt keinen CW aus. Ob das bei dem org. cccam-server auch der Fall ist kann ich nicht sagen.
Mit dem folgenden kleinen fix tuts jetzt bei mir:
Gruß
habe festgestellt, dass der beta-tunnel im vdr-sc nicht richtig zu funktionieren scheint.
Auf jeden Fall haben die vom sc-plugin getunnelten ECMs laut oscam eine Länge von 0x96 wo normalerweise eine Länge von 0x93 korrekt wäre.
Nun soll sich der vdr-sc (cccam2-client) beim beta-tunnel möglichst wie ein "echter" cccam-client verhalten damit die checksums der ECMs stimmen und der server auch vernünftig damit umgehen kann (Stichwort: cache).
Außerdem kann mein oscam-server mit den ECMs mit der Länge 0x96 nix anfangen bzw. die smartcard spuckt keinen CW aus. Ob das bei dem org. cccam-server auch der Fall ist kann ich nicht sagen.
Mit dem folgenden kleinen fix tuts jetzt bei mir:
Code:
--- override.c.old 2011-08-22 23:41:18.000000000 +0200
+++ override.c 2011-08-23 00:11:46.000000000 +0200
@@ -366,11 +366,11 @@
{
unsigned char *d=Alloc(len+10);
if(d) {
- static const unsigned char tunnel[] = { 0xc9,0x00,0x00,0x00,0x01,0x10,0x10,0x00,0x48,0x12,0x07 };
+ static const unsigned char tunnel[] = { 0xc9,0x00,0x00,0x00,0x01,0x10,0x10,0x00,0x48,0x12 };
d[0]=data[0];
- SetSctLen(d,len+10);
+ SetSctLen(d,len+7);
memcpy(&d[3],tunnel,sizeof(tunnel));
- memcpy(&d[14],&data[4],len-4);
+ memcpy(&d[13],&data[3],len-3);
if(len>0x88) { // assume N3
d[3]=0xc7; d[11]=0x87;
}