Arthur Konovalov wrote: > Klaus Schmidinger wrote: > >> Can you narrow down which of these three changes is actually necessary >> to make it work? > I can repeat tests tomorrow, but I recall that this (it was first change): > >> state = 4; // normal operation >> + repliesToQuery = true; //AK >> } > and this (next change, because first doesn't help and I saw replays to > query: Slot 1: <== Ca Pmt Reply (3) 1144 01 82 2210=82 2211=82): > dbgprotocol("\n"); > } > + state = 6; //AK > break; > > was necessary in this case. Confirmed, only with those 2 changes multiple decryption works. >> #define QUERY_WAIT_TIME 3000 // ms to wait before sending a query > Will try tomorrow. Doesn't help. Added syslog debug entries like this: if (l <= 2){ ok = CA_ENABLE(caepl) == CAEI_POSSIBLE; dsyslog("AK: CA_ENABLE(caepl): %d, ok: %d", CA_ENABLE(caepl),ok); } while (l > 2) { uint16_t pid = ((uint16_t)(*d) << 8) | *(d + 1); unsigned char caees = *(d + 2); dbgprotocol(" %d=%02X", pid, caees); d += 3; l -= 3; dsyslog("AK: CA_ENABLE(caees): %d, ok: %d", CA_ENABLE(caees),ok); if (CA_ENABLE(caees) != CAEI_POSSIBLE){ ok = false; dsyslog("AK: ok set to false. state: %d", state); } } if (ok){ dsyslog("AK: ok true!"); state = 6; // descrambling possible } } } } dbgprotocol("\n"); } dsyslog("AK: state: %d", state); break; And syslog (with 'repliesToQuery = true;' only): Apr 16 11:00:35 vdr vdr: [17443] switching to channel 136 Apr 16 11:00:36 vdr vdr: [17447] AK: CA_ENABLE(caees): 2, ok: 1 Apr 16 11:00:36 vdr vdr: [17447] AK: ok set to false. state: 5 Apr 16 11:00:36 vdr vdr: [17447] AK: CA_ENABLE(caees): 2, ok: 0 Apr 16 11:00:36 vdr vdr: [17447] AK: ok set to false. state: 5 Apr 16 11:00:36 vdr vdr: [17447] AK: state: 5 Apr 16 11:00:36 vdr vdr: [17443] info: Channel not available! It seems that 'if (CA_ENABLE(caees) != CAEI_POSSIBLE)' is reason of fault and 'state' always stay false. Unfortunately I don't understand this logic here :/ Arthur _______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr