blob: bb0cdfa7c9a6b8d16455afc29de347ee0cf90a3c [file] [log] [blame]
Markus Heiser5377d912016-06-30 15:18:56 +02001.. -*- coding: utf-8; mode: rst -*-
2
3.. _ca_data_types:
4
5*************
6CA Data Types
7*************
8
9
10.. _ca-slot-info:
11
12ca_slot_info_t
13==============
14
15
16.. code-block:: c
17
18 typedef struct ca_slot_info {
19 int num; /* slot number */
20
21 int type; /* CA interface this slot supports */
22 #define CA_CI 1 /* CI high level interface */
23 #define CA_CI_LINK 2 /* CI link layer level interface */
24 #define CA_CI_PHYS 4 /* CI physical layer level interface */
25 #define CA_DESCR 8 /* built-in descrambler */
26 #define CA_SC 128 /* simple smart card interface */
27
28 unsigned int flags;
29 #define CA_CI_MODULE_PRESENT 1 /* module (or card) inserted */
30 #define CA_CI_MODULE_READY 2
31 } ca_slot_info_t;
32
33
34.. _ca-descr-info:
35
36ca_descr_info_t
37===============
38
39
40.. code-block:: c
41
42 typedef struct ca_descr_info {
43 unsigned int num; /* number of available descramblers (keys) */
44 unsigned int type; /* type of supported scrambling system */
45 #define CA_ECD 1
46 #define CA_NDS 2
47 #define CA_DSS 4
48 } ca_descr_info_t;
49
50
51.. _ca-caps:
52
53ca_caps_t
54=========
55
56
57.. code-block:: c
58
59 typedef struct ca_caps {
60 unsigned int slot_num; /* total number of CA card and module slots */
61 unsigned int slot_type; /* OR of all supported types */
62 unsigned int descr_num; /* total number of descrambler slots (keys) */
63 unsigned int descr_type;/* OR of all supported types */
64 } ca_cap_t;
65
66
67.. _ca-msg:
68
69ca_msg_t
70========
71
72
73.. code-block:: c
74
75 /* a message to/from a CI-CAM */
76 typedef struct ca_msg {
77 unsigned int index;
78 unsigned int type;
79 unsigned int length;
80 unsigned char msg[256];
81 } ca_msg_t;
82
83
84.. _ca-descr:
85
86ca_descr_t
87==========
88
89
90.. code-block:: c
91
92 typedef struct ca_descr {
93 unsigned int index;
94 unsigned int parity;
95 unsigned char cw[8];
96 } ca_descr_t;
97
98
99.. _ca-pid:
100
101ca-pid
102======
103
104
105.. code-block:: c
106
107 typedef struct ca_pid {
108 unsigned int pid;
109 int index; /* -1 == disable*/
110 } ca_pid_t;
111
112
113
114
115.. ------------------------------------------------------------------------------
116.. This file was automatically converted from DocBook-XML with the dbxml
117.. library (https://github.com/return42/sphkerneldoc). The origin XML comes
118.. from the linux kernel, refer to:
119..
120.. * https://github.com/torvalds/linux/tree/master/Documentation/DocBook
121.. ------------------------------------------------------------------------------