4.1. CA Data Types¶
- 
struct ca_slot_info¶
 CA slot interface types and info.
Definition:
struct ca_slot_info {
    int num;
    int type;
#define CA_CI            1;
#define CA_CI_LINK       2;
#define CA_CI_PHYS       4;
#define CA_DESCR         8;
#define CA_SC          128;
    unsigned int flags;
#define CA_CI_MODULE_PRESENT 1;
#define CA_CI_MODULE_READY   2;
};
Members
numslot number.
typeslot type.
flagsflags applicable to the slot.
Description
This struct stores the CA slot information.
type can be:
CA_CI- CI high level interface;
CA_CI_LINK- CI link layer level interface;
CA_CI_PHYS- CI physical layer level interface;
CA_DESCR- built-in descrambler;
CA_SC-simple smart card interface.
flags can be:
CA_CI_MODULE_PRESENT- module (or card) inserted;
CA_CI_MODULE_READY- module is ready for usage.
- 
struct ca_descr_info¶
 descrambler types and info.
Definition:
struct ca_descr_info {
    unsigned int num;
    unsigned int type;
#define CA_ECD           1;
#define CA_NDS           2;
#define CA_DSS           4;
};
Members
numnumber of available descramblers (keys).
typetype of supported scrambling system.
Description
Identifies the number of descramblers and their type.
type can be:
CA_ECD- European Common Descrambler (ECD) hardware;
CA_NDS- Videoguard (NDS) hardware;
CA_DSS- Distributed Sample Scrambling (DSS) hardware.
- 
struct ca_caps¶
 CA slot interface capabilities.
Definition:
struct ca_caps {
    unsigned int slot_num;
    unsigned int slot_type;
    unsigned int descr_num;
    unsigned int descr_type;
};
Members
slot_numtotal number of CA card and module slots.
slot_typebitmap with all supported types as defined at
struct ca_slot_info(e. g.CA_CI,CA_CI_LINK, etc).descr_numtotal number of descrambler slots (keys)
descr_typebitmap with all supported types as defined at
struct ca_descr_info(e. g.CA_ECD,CA_NDS, etc).
- 
struct ca_msg¶
 a message to/from a CI-CAM
Definition:
struct ca_msg {
    unsigned int index;
    unsigned int type;
    unsigned int length;
    unsigned char msg[256];
};
Members
indexunused
typeunused
lengthlength of the message
msgmessage
Description
This struct carries a message to be send/received from a CI CA module.
- 
struct ca_descr¶
 CA descrambler control words info
Definition:
struct ca_descr {
    unsigned int index;
    unsigned int parity;
    unsigned char cw[8];
};
Members
indexCA Descrambler slot
paritycontrol words parity, where 0 means even and 1 means odd
cwCA Descrambler control words