mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Added logging the supported system ids of a CAM
This commit is contained in:
parent
1d869c4b36
commit
ac44e6f2ae
3
HISTORY
3
HISTORY
@ -8132,7 +8132,7 @@ Video Disk Recorder Revision History
|
|||||||
and also to use the correct directory with --edit (the latter reported by Marko
|
and also to use the correct directory with --edit (the latter reported by Marko
|
||||||
Mäkelä).
|
Mäkelä).
|
||||||
|
|
||||||
2014-01-14: Version 2.1.4
|
2014-01-15: Version 2.1.4
|
||||||
|
|
||||||
- Updated 'sources.conf' (thanks to Antti Hartikainen).
|
- Updated 'sources.conf' (thanks to Antti Hartikainen).
|
||||||
- cFont::CreateFont() now returns a dummy font in case there are no fonts installed.
|
- cFont::CreateFont() now returns a dummy font in case there are no fonts installed.
|
||||||
@ -8142,3 +8142,4 @@ Video Disk Recorder Revision History
|
|||||||
that are implemented in a plugin.
|
that are implemented in a plugin.
|
||||||
- Fixed sending CA descriptors to CAMs in case a cReceiver is not used for a
|
- Fixed sending CA descriptors to CAMs in case a cReceiver is not used for a
|
||||||
recording or live view, like e.g. streaming clients (thanks to Mariusz Bialonczyk).
|
recording or live view, like e.g. streaming clients (thanks to Mariusz Bialonczyk).
|
||||||
|
- Added logging the supported system ids of a CAM.
|
||||||
|
5
ci.c
5
ci.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: ci.c 3.6 2014/01/14 14:36:29 kls Exp $
|
* $Id: ci.c 3.7 2014/01/15 10:20:48 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "ci.h"
|
#include "ci.h"
|
||||||
@ -723,11 +723,13 @@ void cCiConditionalAccessSupport::Process(int Length, const uint8_t *Data)
|
|||||||
switch (Tag) {
|
switch (Tag) {
|
||||||
case AOT_CA_INFO: {
|
case AOT_CA_INFO: {
|
||||||
dbgprotocol("Slot %d: <== Ca Info (%d)", Tc()->CamSlot()->SlotNumber(), SessionId());
|
dbgprotocol("Slot %d: <== Ca Info (%d)", Tc()->CamSlot()->SlotNumber(), SessionId());
|
||||||
|
cString Ids;
|
||||||
numCaSystemIds = 0;
|
numCaSystemIds = 0;
|
||||||
int l = 0;
|
int l = 0;
|
||||||
const uint8_t *d = GetData(Data, l);
|
const uint8_t *d = GetData(Data, l);
|
||||||
while (l > 1) {
|
while (l > 1) {
|
||||||
uint16_t id = ((uint16_t)(*d) << 8) | *(d + 1);
|
uint16_t id = ((uint16_t)(*d) << 8) | *(d + 1);
|
||||||
|
Ids = cString::sprintf("%s %04X", *Ids ? *Ids : "", id);
|
||||||
dbgprotocol(" %04X", id);
|
dbgprotocol(" %04X", id);
|
||||||
d += 2;
|
d += 2;
|
||||||
l -= 2;
|
l -= 2;
|
||||||
@ -744,6 +746,7 @@ void cCiConditionalAccessSupport::Process(int Length, const uint8_t *Data)
|
|||||||
timer.Set(QUERY_WAIT_TIME); // WORKAROUND: Alphacrypt 3.09 doesn't reply to QUERY immediately after reset
|
timer.Set(QUERY_WAIT_TIME); // WORKAROUND: Alphacrypt 3.09 doesn't reply to QUERY immediately after reset
|
||||||
state = 2; // got ca info
|
state = 2; // got ca info
|
||||||
}
|
}
|
||||||
|
dsyslog("CAM %d: system ids:%s", Tc()->CamSlot()->SlotNumber(), *Ids ? *Ids : " none");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case AOT_CA_PMT_REPLY: {
|
case AOT_CA_PMT_REPLY: {
|
||||||
|
Loading…
Reference in New Issue
Block a user