V4L/DVB: firedtv: correct version number and current/next in CA_PMT
authorHenrik Kurelid <henrik@kurelid.se>
Tue, 21 Jul 2009 16:45:50 +0000 (13:45 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 18 May 2010 03:46:27 +0000 (00:46 -0300)
The version number in the CA_PMT message sent to the hardware was
alwaysed set to zero. This could cause problems if the PMT would
change during decryption of a channel since the new CA_PMT would have
the same version number as the old. The version number is now copied
from the original PMT.

Signed-off-by: Henrik Kurelid <henrik@kurelid.se>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/firewire/firedtv-avc.c

index 1b31bebc27d6f6ca8a207a2290c5c0a8e3271877..28294af752dbb7aea16ed95fb895d79d11863c3a 100644 (file)
@@ -1096,7 +1096,7 @@ int avc_ca_pmt(struct firedtv *fdtv, char *msg, int length)
 
        c->operand[15] = msg[1]; /* Program number */
        c->operand[16] = msg[2];
-       c->operand[17] = 0x01; /* Version number=0 + current/next=1 */
+       c->operand[17] = msg[3]; /* Version number and current/next */
        c->operand[18] = 0x00; /* Section number=0 */
        c->operand[19] = 0x00; /* Last section number=0 */
        c->operand[20] = 0x1f; /* PCR_PID=1FFF */