blob: a11d7759002471b52c7bd71152780d8ba47a93d4 [file] [log] [blame]
Harald Welte7b94dc22018-09-24 16:46:55 +02001/* Automatically generated file - do not edit */
2#ifndef _FFASN1_RSPRO_H
3#define _FFASN1_RSPRO_H
4
5#include "asn1defs.h"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef int OperationTag;
12
13extern const ASN1CType asn1_type_OperationTag[];
14
15typedef int BankId;
16
17extern const ASN1CType asn1_type_BankId[];
18
19typedef int ClientId;
20
21extern const ASN1CType asn1_type_ClientId[];
22
23typedef enum ComponentType {
24 ComponentType_remsimClient,
25 ComponentType_remsimServer,
26 ComponentType_remsimBankd,
27} ComponentType;
28
29extern const ASN1CType asn1_type_ComponentType[];
30
31typedef ASN1String ComponentName;
32
33extern const ASN1CType asn1_type_ComponentName[];
34
35typedef struct ComponentIdentity {
36 ComponentType type;
37 ComponentName name;
38 ComponentName software;
39 ComponentName swVersion;
40 BOOL hwManufacturer_option;
41 ComponentName hwManufacturer;
42 BOOL hwModel_option;
43 ComponentName hwModel;
44 BOOL hwSerialNr_option;
45 ComponentName hwSerialNr;
46 BOOL hwVersion_option;
47 ComponentName hwVersion;
48 BOOL fwVersion_option;
49 ComponentName fwVersion;
50} ComponentIdentity;
51
52
53extern const ASN1CType asn1_type_ComponentIdentity[];
54
55typedef ASN1String Ipv4Address;
56
57extern const ASN1CType asn1_type_Ipv4Address[];
58
59typedef ASN1String Ipv6Address;
60
61extern const ASN1CType asn1_type_Ipv6Address[];
62
63typedef enum {
64 IpAddress_ipv4,
65 IpAddress_ipv6,
66} IpAddress_choice;
67
68typedef struct IpAddress {
69 IpAddress_choice choice;
70 union {
71 Ipv4Address ipv4;
72 Ipv6Address ipv6;
73 } u;
74} IpAddress;
75
76extern const ASN1CType asn1_type_IpAddress[];
77
78typedef int PortNumber;
79
80extern const ASN1CType asn1_type_PortNumber[];
81
82typedef struct IpPort {
83 IpAddress ip;
84 PortNumber port;
85} IpPort;
86
87
88extern const ASN1CType asn1_type_IpPort[];
89
90typedef enum ResultCode {
91 ResultCode_ok,
92 ResultCode_illegalClientId,
93 ResultCode_illegalBankId,
94 ResultCode_illegalSlotId,
95 ResultCode_cardNotPresent,
96 ResultCode_cardUnresponsive,
97 ResultCode_cardTransmissionError,
98} ResultCode;
99
100extern const ASN1CType asn1_type_ResultCode[];
101
102typedef int SlotNumber;
103
104extern const ASN1CType asn1_type_SlotNumber[];
105
106typedef struct ClientSlot {
107 ClientId clientId;
108 SlotNumber slotNr;
109} ClientSlot;
110
111
112extern const ASN1CType asn1_type_ClientSlot[];
113
114typedef struct BankSlot {
115 BankId bankId;
116 SlotNumber slotNr;
117} BankSlot;
118
119
120extern const ASN1CType asn1_type_BankSlot[];
121
122typedef ASN1String ATR;
123
124extern const ASN1CType asn1_type_ATR[];
125
126typedef struct TpduFlags {
127 BOOL tpduHeaderPresent;
128 BOOL finalPart;
129 BOOL procByteContinueTx;
130 BOOL procByteContinueRx;
131} TpduFlags;
132
133
134extern const ASN1CType asn1_type_TpduFlags[];
135
136typedef struct SlotPhysStatus {
137 BOOL resetActive;
138 BOOL vccPresent_option;
139 BOOL vccPresent;
140 BOOL clkActive_option;
141 BOOL clkActive;
142 BOOL cardPresent_option;
143 BOOL cardPresent;
144} SlotPhysStatus;
145
146
147extern const ASN1CType asn1_type_SlotPhysStatus[];
148
149typedef struct ConnectBankReq {
150 ComponentIdentity identity;
151 BankId bankId;
152 SlotNumber numberOfSlots;
153} ConnectBankReq;
154
155
156extern const ASN1CType asn1_type_ConnectBankReq[];
157
158typedef struct ConnectBankRes {
159 ComponentIdentity identity;
160 ResultCode result;
161} ConnectBankRes;
162
163
164extern const ASN1CType asn1_type_ConnectBankRes[];
165
166typedef struct ConnectClientReq {
167 ComponentIdentity identity;
168 BOOL clientSlot_option;
169 ClientSlot clientSlot;
170} ConnectClientReq;
171
172
173extern const ASN1CType asn1_type_ConnectClientReq[];
174
175typedef struct ConnectClientRes {
176 ComponentIdentity identity;
177 ResultCode result;
178} ConnectClientRes;
179
180
181extern const ASN1CType asn1_type_ConnectClientRes[];
182
183typedef struct CreateMappingReq {
184 ClientSlot client;
185 BankSlot bank;
186} CreateMappingReq;
187
188
189extern const ASN1CType asn1_type_CreateMappingReq[];
190
191typedef struct CreateMappingRes {
192 ResultCode result;
193} CreateMappingRes;
194
195
196extern const ASN1CType asn1_type_CreateMappingRes[];
197
198typedef struct RemoveMappingReq {
199 ClientSlot client;
200 BankSlot bank;
201} RemoveMappingReq;
202
203
204extern const ASN1CType asn1_type_RemoveMappingReq[];
205
206typedef struct RemoveMappingRes {
207 ResultCode result;
208} RemoveMappingRes;
209
210
211extern const ASN1CType asn1_type_RemoveMappingRes[];
212
213typedef struct ConfigClientReq {
214 ClientSlot clientSlot;
215 IpPort bankd;
216} ConfigClientReq;
217
218
219extern const ASN1CType asn1_type_ConfigClientReq[];
220
221typedef struct ConfigClientRes {
222 ResultCode result;
223} ConfigClientRes;
224
225
226extern const ASN1CType asn1_type_ConfigClientRes[];
227
228typedef struct SetAtrReq {
229 ClientSlot slot;
230 ATR atr;
231} SetAtrReq;
232
233
234extern const ASN1CType asn1_type_SetAtrReq[];
235
236typedef struct SetAtrRes {
237 ResultCode result;
238} SetAtrRes;
239
240
241extern const ASN1CType asn1_type_SetAtrRes[];
242
243typedef struct TpduModemToCard {
244 ClientSlot fromClientSlot;
245 BankSlot toBankSlot;
246 TpduFlags flags;
247 ASN1String data;
248} TpduModemToCard;
249
250
251extern const ASN1CType asn1_type_TpduModemToCard[];
252
253typedef struct TpduCardToModem {
254 BankSlot fromBankSlot;
255 ClientSlot toClientSlot;
256 TpduFlags flags;
257 ASN1String data;
258} TpduCardToModem;
259
260
261extern const ASN1CType asn1_type_TpduCardToModem[];
262
263typedef struct ClientSlotStatusInd {
264 ClientSlot fromClientSlot;
265 BankSlot toBankSlot;
266 SlotPhysStatus slotPhysStatus;
267} ClientSlotStatusInd;
268
269
270extern const ASN1CType asn1_type_ClientSlotStatusInd[];
271
272typedef struct BankSlotStatusInd {
273 BankSlot fromBankSlot;
274 ClientSlot toClientSlot;
275 SlotPhysStatus slotPhysStatus;
276} BankSlotStatusInd;
277
278
279extern const ASN1CType asn1_type_BankSlotStatusInd[];
280
281typedef enum {
282 RsproPDUchoice_connectBankReq,
283 RsproPDUchoice_connectBankRes,
284 RsproPDUchoice_connectClientReq,
285 RsproPDUchoice_connectClientRes,
286 RsproPDUchoice_createMappingReq,
287 RsproPDUchoice_createMappingRes,
288 RsproPDUchoice_removeMappingReq,
289 RsproPDUchoice_removeMappingRes,
290 RsproPDUchoice_configClientReq,
291 RsproPDUchoice_configClientRes,
292 RsproPDUchoice_setAtrReq,
293 RsproPDUchoice_setAtrRes,
294 RsproPDUchoice_tpduModemToCard,
295 RsproPDUchoice_tpduCardToModem,
296 RsproPDUchoice_clientSlotStatusInd,
297 RsproPDUchoice_bankSlotStatusInd,
298} RsproPDUchoice_choice;
299
300typedef struct RsproPDUchoice {
301 RsproPDUchoice_choice choice;
302 union {
303 ConnectBankReq connectBankReq;
304 ConnectBankRes connectBankRes;
305 ConnectClientReq connectClientReq;
306 ConnectClientRes connectClientRes;
307 CreateMappingReq createMappingReq;
308 CreateMappingRes createMappingRes;
309 RemoveMappingReq removeMappingReq;
310 RemoveMappingRes removeMappingRes;
311 ConfigClientReq configClientReq;
312 ConfigClientRes configClientRes;
313 SetAtrReq setAtrReq;
314 SetAtrRes setAtrRes;
315 TpduModemToCard tpduModemToCard;
316 TpduCardToModem tpduCardToModem;
317 ClientSlotStatusInd clientSlotStatusInd;
318 BankSlotStatusInd bankSlotStatusInd;
319 } u;
320} RsproPDUchoice;
321
322extern const ASN1CType asn1_type_RsproPDUchoice[];
323
324typedef struct RsproPDU {
325 int version;
326 OperationTag tag;
327 RsproPDUchoice msg;
328} RsproPDU;
329
330
331extern const ASN1CType asn1_type_RsproPDU[];
332
333#ifdef __cplusplus
334}
335#endif
336
337#endif /* _FFASN1_RSPRO_H */