Coverage Report

Created: 2026-07-12 07:10

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/wireshark/epan/dissectors/packet-qsig.c
Line
Count
Source
1
/* Do not modify this file. Changes will be overwritten.                      */
2
/* Generated automatically by the ASN.1 to Wireshark dissector compiler       */
3
/* packet-qsig.c                                                              */
4
/* asn2wrs.py -q -L -c ./qsig.cnf -s ./packet-qsig-template -D . -O ../.. General-Error-List.asn qsig-gf-ext.asn qsig-gf-gp.asn qsig-gf-ade.asn QSIG-NA.asn QSIG-CF.asn QSIG-PR.asn QSIG-CT.asn QSIG-CC.asn QSIG-CO.asn QSIG-DND.asn QSIG-CI.asn QSIG-AOC.asn QSIG-RE.asn SYNC-SIG.asn QSIG-CINT.asn QSIG-CMN.asn QSIG-CPI.asn QSIG-PUMR.asn QSIG-PUMCH.asn QSIG-SSCT.asn QSIG-WTMLR.asn QSIG-WTMCH.asn QSIG-WTMAU.asn QSIG-SD.asn QSIG-CIDL.asn QSIG-SMS.asn QSIG-MCR.asn QSIG-MCM.asn QSIG-MID.asn */
5
6
/* packet-qsig.c
7
 * Routines for QSIG packet dissection
8
 * 2007  Tomas Kukosa
9
 *
10
 * Wireshark - Network traffic analyzer
11
 * By Gerald Combs <gerald@wireshark.org>
12
 * Copyright 1998 Gerald Combs
13
 *
14
 * SPDX-License-Identifier: GPL-2.0-or-later
15
 */
16
17
#include "config.h"
18
19
#include <epan/packet.h>
20
#include <epan/expert.h>
21
#include <epan/strutil.h>
22
#include <epan/asn1.h>
23
#include <wsutil/strtoi.h>
24
#include <wsutil/array.h>
25
26
#include "packet-ber.h"
27
#include "packet-qsig.h"
28
29
/* Shifted codeset values */
30
#define CS0 0x000
31
#define CS1 0x100
32
#define CS2 0x200
33
#define CS3 0x300
34
28
#define CS4 0x400
35
19
#define CS5 0x500
36
#define CS6 0x600
37
#define CS7 0x700
38
39
28
#define QSIG_IE_TRANSIT_COUNTER 0x31
40
19
#define QSIG_IE_PARTY_CATEGORY  0x32
41
42
void proto_register_qsig(void);
43
void proto_reg_handoff_qsig(void);
44
45
static dissector_handle_t qsig_arg_handle;
46
static dissector_handle_t qsig_res_handle;
47
static dissector_handle_t qsig_err_handle;
48
static dissector_handle_t qsig_ie4_handle;
49
static dissector_handle_t qsig_ie5_handle;
50
51
static const value_string qsig_str_ie_type_cs4[] = {
52
  { QSIG_IE_TRANSIT_COUNTER , "Transit counter" },
53
  { 0, NULL}
54
};
55
static const value_string qsig_str_ie_type_cs5[] = {
56
  { QSIG_IE_PARTY_CATEGORY  , "Party category" },
57
  { 0, NULL}
58
};
59
/* Codeset array */
60
static const value_string *qsig_str_ie_type[] = {
61
  NULL,
62
  NULL,
63
  NULL,
64
  NULL,
65
  qsig_str_ie_type_cs4,
66
  qsig_str_ie_type_cs5,
67
  NULL,
68
  NULL,
69
};
70
71
72
static const value_string qsig_str_pc[] = {
73
  { 0x00 , "unknown" },
74
  { 0x01 , "extension" },
75
  { 0x02 , "operator" },
76
  { 0x03 , "emergency extension" },
77
  { 0, NULL}
78
};
79
80
static const value_string qsig_str_service[] = {
81
  { 13868, "QSIG-NA" },
82
  { 13873, "QSIG-CF" },
83
  { 13874, "QSIG-PR" },
84
  { 13869, "QSIG-CT" },
85
  { 13870, "QSIG-CC" },
86
  { 14843, "QSIG-CO" },
87
  { 14844, "QSIG-DND(O)" },
88
  { 14846, "QSIG-CI" },
89
  { 15050, "QSIG-AOC" },
90
  { 15052, "QSIG-RE" },
91
  { 15054, "QSIG-CINT" },
92
  { 15506, "QSIG-MWI" },
93
  { 15507, "SYNC-SIG" },
94
  { 15772, "QSIG-CMN" },
95
  { 15992, "QSIG-CPI(P)" },
96
  { 17876, "QSIG-PUMR" },
97
  { 17878, "QSIG-PUMCH" },
98
  { 19460, "QSIG-SSCT" },
99
  { 15429, "QSIG-WTMLR" },
100
  { 15431, "QSIG-WTMCH" },
101
  { 15433, "QSIG-WTMAU" },
102
  { 21407, "QSIG-SD" },
103
  { 21889, "QSIG-CIDL" },
104
  {   325, "QSIG-SMS" },
105
  {   344, "QSIG-MCR" },
106
  {  3471, "QSIG-MCM" },
107
  {  3472, "QSIG-MID" },
108
  {   0, NULL}
109
};
110
111
static const value_string qsig_str_service_name[] = {
112
  { 13868, "Name-Operations" },
113
  { 13873, "Call-Diversion-Operations" },
114
  { 13874, "Path-Replacement-Operations" },
115
  { 13869, "Call-Transfer-Operations" },
116
  { 13870, "SS-CC-Operations" },
117
  { 14843, "Call-Offer-Operations" },
118
  { 14844, "Do-Not-Disturb-Operations" },
119
  { 14846, "Call-Intrusion-Operations" },
120
  { 15050, "SS-AOC-Operation" },
121
  { 15052, "Recall-Operation" },
122
  { 15054, "Call-Interception-Operations" },
123
  { 15506, "SS-MWI-Operations" },
124
  { 15507, "Synchronization-Operations" },
125
  { 15772, "Common-Information-Operations" },
126
  { 15992, "Call-Interruption-Operation" },
127
  { 17876, "PUM-Registration-Operation" },
128
  { 17878, "Private-User-Mobility-Call-Handling-Operations" },
129
  { 19460, "Single-Step-Call-Transfer-Operations" },
130
  { 15429, "WTM-Location-Registration-Operations" },
131
  { 15431, "Wireless-Terminal-Call-Handling-Operations" },
132
  { 15433, "WTM-Authentication-Operations" },
133
  { 21407, "SS-SD-Operations" },
134
  { 21889, "Call-Identification-and-Call-Linkage-Operations" },
135
  {   325, "Short-Message-Service-Operations" },
136
  {   344, "SS-MCR-Operations" },
137
  {  3471, "SS-MCM-Operations" },
138
  {  3472, "SS-MID-Operations" },
139
  {   0, NULL}
140
};
141
142
0
#define NO_SRV (-1)
143
static const int32_t op2srv_tab[] = {
144
  /*   0 */ 13868,
145
  /*   1 */ 13868,
146
  /*   2 */ 13868,
147
  /*   3 */ 13868,
148
  /*   4 */ 13874,
149
  /*   5 */ 13874,
150
  /*   6 */ 13874,
151
  /*   7 */ 13869,
152
  /*   8 */ 13869,
153
  /*   9 */ 13869,
154
  /*  10 */ 13869,
155
  /*  11 */ 13869,
156
  /*  12 */ 13869,
157
  /*  13 */ 13869,
158
  /*  14 */ 13869,
159
  /*  15 */ 13873,
160
  /*  16 */ 13873,
161
  /*  17 */ 13873,
162
  /*  18 */ 13873,
163
  /*  19 */ 13873,
164
  /*  20 */ 13873,
165
  /*  21 */ 13873,
166
  /*  22 */ 13873,
167
  /*  23 */ 13873,
168
  /*  24 */ NO_SRV,
169
  /*  25 */ NO_SRV,
170
  /*  26 */ NO_SRV,
171
  /*  27 */ 13870,
172
  /*  28 */ 13870,
173
  /*  29 */ 13870,
174
  /*  30 */ 13870,
175
  /*  31 */ 13870,
176
  /*  32 */ 13870,
177
  /*  33 */ 13870,
178
  /*  34 */ 14843,
179
  /*  35 */ 14844,
180
  /*  36 */ 14844,
181
  /*  37 */ 14844,
182
  /*  38 */ 14844,
183
  /*  39 */ 14844,
184
  /*  40 */ 13870,
185
  /*  41 */ 90001,
186
  /*  42 */ 90001,
187
  /*  43 */ 14846,
188
  /*  44 */ 14846,
189
  /*  45 */ 14846,
190
  /*  46 */ 14846,
191
  /*  47 */ 14846,
192
  /*  48 */ 14846,
193
  /*  49 */ 90001,
194
  /*  50 */ 15429,
195
  /*  51 */ 15429,
196
  /*  52 */ 15429,
197
  /*  53 */ 15429,
198
  /*  54 */ 15431,
199
  /*  55 */ 15431,
200
  /*  56 */ 15431,
201
  /*  57 */ 15052,
202
  /*  58 */ 15052,
203
  /*  59 */ 15050,
204
  /*  60 */ 15050,
205
  /*  61 */ 15050,
206
  /*  62 */ 15050,
207
  /*  63 */ 15050,
208
  /*  64 */ 15050,
209
  /*  65 */ 15050,
210
  /*  66 */ 15054,
211
  /*  67 */ 15054,
212
  /*  68 */ 15054,
213
  /*  69 */ 15054,
214
  /*  70 */ 15054,
215
  /*  71 */ 15431,
216
  /*  72 */ 15433,
217
  /*  73 */ 15433,
218
  /*  74 */ 15433,
219
  /*  75 */ 15433,
220
  /*  76 */ 15433,
221
  /*  77 */ 15433,
222
  /*  78 */ 15507,
223
  /*  79 */ 15507,
224
  /*  80 */  3471,
225
  /*  81 */  3471,
226
  /*  82 */  3471,
227
  /*  83 */ NO_SRV,
228
  /*  84 */ 15772,
229
  /*  85 */ 15772,
230
  /*  86 */ 13874,
231
  /*  87 */ 15992,
232
  /*  88 */ 15992,
233
  /*  89 */ 17876,
234
  /*  90 */ 17876,
235
  /*  91 */ 17876,
236
  /*  92 */ 17876,
237
  /*  93 */ 17878,
238
  /*  94 */ 17878,
239
  /*  95 */ 17878,
240
  /*  96 */ 17878,
241
  /*  97 */ 15429,
242
  /*  98 */ 15429,
243
  /*  99 */ 19460,
244
  /* 100 */ 19460,
245
  /* 101 */ 19460,
246
  /* 102 */ 19460,
247
  /* 103 */ 21407,
248
  /* 104 */ 21407,
249
  /* 105 */ 21889,
250
  /* 106 */ 21889,
251
  /* 107 */   325,
252
  /* 108 */   325,
253
  /* 109 */   325,
254
  /* 110 */   325,
255
  /* 111 */   325,
256
  /* 112 */   344,
257
  /* 113 */   344,
258
  /* 114 */   344,
259
  /* 115 */  3471,
260
  /* 116 */  3471,
261
  /* 117 */  3471,
262
  /* 118 */  3471,
263
  /* 119 */  3472,
264
  /* 120 */  3472,
265
};
266
267
static const value_string qsig_str_operation[] = {
268
269
/* --- Module General-Error-List --- --- ---                                  */
270
271
/* Unknown or empty loop list OPERATION */
272
273
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
274
275
/* Unknown or empty loop list OPERATION */
276
277
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
278
279
  {   0, "callingName" },
280
  {   1, "calledName" },
281
  {   2, "connectedName" },
282
  {   3, "busyName" },
283
284
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
285
286
  {  15, "activateDiversionQ" },
287
  {  16, "deactivateDiversionQ" },
288
  {  17, "interrogateDiversionQ" },
289
  {  18, "checkRestriction" },
290
  {  19, "callRerouteing" },
291
  {  20, "divertingLegInformation1" },
292
  {  21, "divertingLegInformation2" },
293
  {  22, "divertingLegInformation3" },
294
  {  23, "cfnrDivertedLegFailed" },
295
296
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
297
298
  {  86, "pathReplaceInvite" },
299
  {   4, "pathReplacePropose" },
300
  {   5, "pathReplaceSetup" },
301
  {   6, "pathReplaceRetain" },
302
303
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
304
305
  {   7, "callTransferIdentify" },
306
  {   8, "callTransferAbandon" },
307
  {   9, "callTransferInitiate" },
308
  {  10, "callTransferSetup" },
309
  {  11, "callTransferActive" },
310
  {  12, "callTransferComplete" },
311
  {  13, "callTransferUpdate" },
312
  {  14, "subaddressTransfer" },
313
314
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
315
316
  {  40, "ccbsRequest" },
317
  {  27, "ccnrRequest" },
318
  {  28, "ccCancel" },
319
  {  29, "ccExecPossible" },
320
  {  30, "ccPathReserve" },
321
  {  31, "ccRingout" },
322
  {  32, "ccSuspend" },
323
  {  33, "ccResume" },
324
325
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
326
327
  {  41, "pathRetain" },
328
  {  42, "serviceAvailable" },
329
  {  34, "callOfferRequest" },
330
  {  49, "cfbOverride" },
331
332
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
333
334
  {  35, "doNotDisturbActivateQ" },
335
  {  36, "doNotDisturbDeactivateQ" },
336
  {  37, "doNotDisturbInterrogateQ" },
337
  {  38, "doNotDisturbOverrideQ" },
338
  {  41, "pathRetain" },
339
  {  42, "serviceAvailable" },
340
  {  39, "doNotDisturbOvrExecuteQ" },
341
342
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
343
344
  {  41, "pathRetain" },
345
  {  42, "serviceAvailable" },
346
  {  43, "callIntrusionRequest" },
347
  {  44, "callIntrusionGetCIPL" },
348
  {  46, "callIntrusionForcedRelease" },
349
  {  45, "callIntrusionIsolate" },
350
  {  47, "callIntrusionWOBRequest" },
351
  {  48, "callIntrusionCompleted" },
352
  {  49, "cfbOverride" },
353
354
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
355
356
  {  63, "aocRate" },
357
  {  62, "aocInterim" },
358
  {  61, "aocFinal" },
359
  {  59, "chargeRequest" },
360
  {  60, "getFinalCharge" },
361
  {  64, "aocComplete" },
362
  {  65, "aocDivChargeReq" },
363
364
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
365
366
  {  57, "recallAlerting" },
367
  {  58, "recallAnswered" },
368
369
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
370
371
  {  78, "synchronizationRequest" },
372
  {  79, "synchronizationInfo" },
373
374
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
375
376
  {  66, "cintLegInformation1" },
377
  {  67, "cintLegInformation2" },
378
  {  68, "cintCondition" },
379
  {  69, "cintDisable" },
380
  {  70, "cintEnable" },
381
382
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
383
384
  {  84, "cmnRequest" },
385
  {  85, "cmnInform" },
386
387
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
388
389
  {  87, "callInterruptionRequest" },
390
  {  88, "callProtectionRequest" },
391
392
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
393
394
  {  89, "pumRegistr" },
395
  {  90, "pumDelReg" },
396
  {  91, "pumDe-reg" },
397
  {  92, "pumInterrog" },
398
399
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
400
401
  {  93, "pumiEnquiry" },
402
  {  94, "pumiDivert" },
403
  {  95, "pumiInform" },
404
  {  96, "pumoCall" },
405
406
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
407
408
  {  99, "ssctInitiate" },
409
  { 100, "ssctSetup" },
410
  { 101, "ssctPostDial" },
411
  { 102, "ssctDigitInfo" },
412
413
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
414
415
  {  50, "locUpdate" },
416
  {  51, "locDelete" },
417
  {  52, "locDeReg" },
418
  {  53, "pisnEnquiry" },
419
  {  97, "getRRCInf" },
420
  {  98, "locInfoCheck" },
421
422
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
423
424
  {  54, "wtmiEnquiry" },
425
  {  55, "wtmiDivert" },
426
  {  56, "wtmiInform" },
427
  {  71, "wtmoCall" },
428
429
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
430
431
  {  72, "authWtmUser" },
432
  {  73, "getWtatParam" },
433
  {  74, "wtatParamEnq" },
434
  {  75, "getWtanParam" },
435
  {  76, "wtanParamEnq" },
436
  {  77, "transferAuthParam" },
437
438
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
439
440
  { 103, "display" },
441
  { 104, "keypad" },
442
443
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
444
445
  { 105, "callIdentificationAssign" },
446
  { 106, "callIdentificationUpdate" },
447
448
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
449
450
  { 107, "smsSubmit" },
451
  { 108, "smsDeliver" },
452
  { 109, "smsStatusReport" },
453
  { 110, "smsCommand" },
454
  { 111, "scAlert" },
455
456
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
457
458
  { 112, "mCRequest" },
459
  { 113, "mCInform" },
460
  { 114, "mCAlerting" },
461
462
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
463
464
  {  80, "mCMNewMsg" },
465
  {  81, "mCMNoNewMsg" },
466
  { 115, "mCMUpdate" },
467
  {  82, "mCMUpdateReq" },
468
  { 116, "mCMService" },
469
  { 117, "mCMInterrogate" },
470
  { 118, "mCMailboxFull" },
471
472
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
473
474
  { 119, "mIDMailboxAuth" },
475
  { 120, "mIDMailboxID" },
476
  {   0, NULL}
477
};
478
479
static const value_string qsig_str_error[] = {
480
481
/* --- Module General-Error-List --- --- ---                                  */
482
483
  {    0, "userNotSubscribed" },
484
  {    1, "rejectedByNetwork" },
485
  {    2, "rejectedByUser" },
486
  {    3, "notAvailable" },
487
  {    5, "insufficientInformation" },
488
  {    6, "invalidServedUserNr" },
489
  {    7, "invalidCallState" },
490
  {    8, "basicServiceNotProvided" },
491
  {    9, "notIncomingCall" },
492
  {   10, "supplementaryServiceInteractionNotAllowed" },
493
  {   11, "resourceUnavailable" },
494
  {   25, "callFailure" },
495
  {   43, "proceduralError" },
496
497
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
498
499
/* Unknown or empty loop list ERROR */
500
501
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
502
503
/* Unknown or empty loop list ERROR */
504
505
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
506
507
  {   12, "invalidDivertedToNr" },
508
  {   14, "specialServiceNr" },
509
  {   15, "diversionToServedUserNr" },
510
  {   24, "numberOfDiversionsExceeded" },
511
  { 1000, "temporarilyUnavailable" },
512
  { 1007, "notAuthorized" },
513
  { 1008, "unspecified" },
514
515
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
516
517
  { 1000, "temporarilyUnavailable" },
518
  { 1001, "collision" },
519
  { 1002, "criteriaPermanentlyUnachievable" },
520
  { 1003, "criteriaTemporarilyUnachievable" },
521
  { 1004, "invalidRerouteingNumber" },
522
  { 1005, "unrecognizedCallIdentity" },
523
  { 1006, "establishmentFailure" },
524
  { 1008, "unspecified" },
525
526
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
527
528
  { 1008, "unspecified" },
529
  { 1004, "invalidRerouteingNumber" },
530
  { 1005, "unrecognizedCallIdentity" },
531
  { 1006, "establishmentFailure" },
532
533
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
534
535
  { 1008, "unspecified" },
536
  { 1010, "shortTermRejection" },
537
  { 1011, "longTermRejection" },
538
  { 1012, "remoteUserBusyAgain" },
539
  { 1013, "failureToMatch" },
540
  { 1014, "failedDueToInterworking" },
541
542
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
543
544
  { 1009, "notBusy" },
545
  { 1000, "temporarilyUnavailable" },
546
  { 1008, "unspecified" },
547
548
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
549
550
  { 1000, "temporarilyUnavailable" },
551
  { 1008, "unspecified" },
552
553
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
554
555
  { 1009, "notBusy" },
556
  { 1000, "temporarilyUnavailable" },
557
  { 1007, "notAuthorized" },
558
  { 1008, "unspecified" },
559
560
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
561
562
  { 1008, "unspecified" },
563
  { 1016, "freeOfCharge" },
564
565
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
566
567
/* Unknown or empty loop list ERROR */
568
569
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
570
571
  { 1008, "unspecified" },
572
573
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
574
575
/* Unknown or empty loop list ERROR */
576
577
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
578
579
/* Unknown or empty loop list ERROR */
580
581
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
582
583
/* Unknown or empty loop list ERROR */
584
585
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
586
587
  { 1008, "unspecified" },
588
  { 1007, "notAuthorized" },
589
  { 1000, "temporarilyUnavailable" },
590
  { 1019, "pumUserNotSubscribedToThisServiceOpt" },
591
  { 1020, "pumUserFailedAuthentication" },
592
  { 1021, "hostingAddrInvalid" },
593
  { 1022, "pumUserNotRegistered" },
594
595
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
596
597
  { 1015, "locationNotKnown" },
598
  { 1008, "unspecified" },
599
600
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
601
602
  { 1008, "unspecified" },
603
604
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
605
606
  { 1007, "notAuthorized" },
607
  { 1000, "temporarilyUnavailable" },
608
  { 1008, "unspecified" },
609
610
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
611
612
  { 1008, "unspecified" },
613
  { 1015, "locationNotKnown" },
614
615
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
616
617
  { 1007, "notAuthorized" },
618
  { 1017, "paramNotAvailable" },
619
  { 1000, "temporarilyUnavailable" },
620
  { 1008, "unspecified" },
621
622
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
623
624
  { 1008, "unspecified" },
625
  { 1023, "noDisplayAvailable" },
626
  { 1024, "displayTemporarilyNotAvailable" },
627
  { 1025, "notPresentable" },
628
629
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
630
631
/* Unknown or empty loop list ERROR */
632
633
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
634
635
  { 1026, "smsDeliverError" },
636
  { 1027, "smsSubmitError" },
637
  { 1028, "smsStatusReportError" },
638
  { 1029, "smsCommandError" },
639
  { 1008, "unspecified" },
640
641
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
642
643
  { 1030, "invalidDestinationNumber" },
644
  { 1031, "invalidCooperationNumber" },
645
  { 1032, "mCRequestNotAllowed" },
646
  { 1033, "mCExecutionNotAllowed" },
647
  { 1034, "mCDestUserBusy" },
648
  { 1035, "mCCoopUserBusy" },
649
  { 1036, "mCCoopUserRejected" },
650
  { 1008, "unspecified" },
651
652
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
653
654
  { 1037, "mCMModeNotProvided" },
655
  { 1008, "unspecified" },
656
657
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
658
659
  { 1039, "invalidMailbox" },
660
  { 1040, "authorizationFailed" },
661
  { 1008, "unspecified" },
662
  {   0, NULL}
663
};
664
665
/* Initialize the protocol and registered fields */
666
static int proto_qsig;
667
static int hf_qsig_operation;
668
static int hf_qsig_service;
669
static int hf_qsig_error;
670
static int hf_qsig_ie_type;
671
static int hf_qsig_ie_type_cs4;
672
static int hf_qsig_ie_type_cs5;
673
static int hf_qsig_ie_len;
674
static int hf_qsig_ie_data;
675
static int hf_qsig_tc;
676
static int hf_qsig_pc;
677
678
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
679
680
static int hf_qsig_extensionId;                   /* T_extensionId */
681
static int hf_qsig_extensionArgument;             /* T_extensionArgument */
682
static int hf_qsig_presentationAllowedAddressS;   /* AddressScreened */
683
static int hf_qsig_presentationRestricted;        /* NULL */
684
static int hf_qsig_numberNotAvailableDueToInterworking;  /* NULL */
685
static int hf_qsig_presentationRestrictedAddressS;  /* AddressScreened */
686
static int hf_qsig_presentationAllowedAddressU;   /* Address */
687
static int hf_qsig_presentationRestrictedAddressU;  /* Address */
688
static int hf_qsig_presentationAllowedAddressNS;  /* NumberScreened */
689
static int hf_qsig_presentationRestrictedAddressNS;  /* NumberScreened */
690
static int hf_qsig_presentationAllowedAddressNU;  /* PartyNumber */
691
static int hf_qsig_presentationRestrictedAddressNU;  /* PartyNumber */
692
static int hf_qsig_partyNumber;                   /* PartyNumber */
693
static int hf_qsig_screeningIndicator;            /* ScreeningIndicator */
694
static int hf_qsig_partySubaddress;               /* PartySubaddress */
695
static int hf_qsig_unknownPartyNumber;            /* NumberDigits */
696
static int hf_qsig_publicPartyNumber;             /* PublicPartyNumber */
697
static int hf_qsig_dataPartyNumber;               /* NumberDigits */
698
static int hf_qsig_telexPartyNumber;              /* NumberDigits */
699
static int hf_qsig_privatePartyNumber;            /* PrivatePartyNumber */
700
static int hf_qsig_nationalStandardPartyNumber;   /* NumberDigits */
701
static int hf_qsig_publicTypeOfNumber;            /* PublicTypeOfNumber */
702
static int hf_qsig_publicNumberDigits;            /* NumberDigits */
703
static int hf_qsig_privateTypeOfNumber;           /* PrivateTypeOfNumber */
704
static int hf_qsig_privateNumberDigits;           /* NumberDigits */
705
static int hf_qsig_userSpecifiedSubaddress;       /* UserSpecifiedSubaddress */
706
static int hf_qsig_nSAPSubaddress;                /* NSAPSubaddress */
707
static int hf_qsig_subaddressInformation;         /* SubaddressInformation */
708
static int hf_qsig_oddCountIndicator;             /* BOOLEAN */
709
710
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
711
712
static int hf_qsig_na_qsig_na_NameArg_PDU;        /* NameArg */
713
static int hf_qsig_na_name;                       /* Name */
714
static int hf_qsig_na_nameSequence;               /* T_nameSequence */
715
static int hf_qsig_na_extensionNA;                /* NameExtension */
716
static int hf_qsig_na_single;                     /* Extension */
717
static int hf_qsig_na_multiple;                   /* SEQUENCE_OF_Extension */
718
static int hf_qsig_na_multiple_item;              /* Extension */
719
static int hf_qsig_na_namePresentationAllowed;    /* NamePresentationAllowed */
720
static int hf_qsig_na_namePresentationRestricted;  /* NamePresentationRestricted */
721
static int hf_qsig_na_nameNotAvailable;           /* NameNotAvailable */
722
static int hf_qsig_na_namePresentationAllowedSimple;  /* NameData */
723
static int hf_qsig_na_namePresentationAllowedExtended;  /* NameSet */
724
static int hf_qsig_na_namePresentationRestrictedSimple;  /* NameData */
725
static int hf_qsig_na_namePresentationRestrictedExtended;  /* NameSet */
726
static int hf_qsig_na_namePresentationRestrictedNull;  /* NULL */
727
static int hf_qsig_na_nameData;                   /* NameData */
728
static int hf_qsig_na_characterSet;               /* CharacterSet */
729
730
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
731
732
static int hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU;  /* ARG_activateDiversionQ */
733
static int hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU;  /* RES_activateDiversionQ */
734
static int hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU;  /* ARG_deactivateDiversionQ */
735
static int hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU;  /* RES_deactivateDiversionQ */
736
static int hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU;  /* ARG_interrogateDiversionQ */
737
static int hf_qsig_cf_qsig_cf_IntResultList_PDU;  /* IntResultList */
738
static int hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU;  /* ARG_checkRestriction */
739
static int hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU;  /* RES_checkRestriction */
740
static int hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU;  /* ARG_callRerouteing */
741
static int hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU;  /* RES_callRerouteing */
742
static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU;  /* ARG_divertingLegInformation1 */
743
static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU;  /* ARG_divertingLegInformation2 */
744
static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU;  /* ARG_divertingLegInformation3 */
745
static int hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU;  /* ARG_cfnrDivertedLegFailed */
746
static int hf_qsig_cf_qsig_cf_Extension_PDU;      /* Extension */
747
static int hf_qsig_cf_procedure;                  /* Procedure */
748
static int hf_qsig_cf_basicService;               /* BasicService */
749
static int hf_qsig_cf_divertedToAddress;          /* Address */
750
static int hf_qsig_cf_servedUserNr;               /* PartyNumber */
751
static int hf_qsig_cf_activatingUserNr;           /* PartyNumber */
752
static int hf_qsig_cf_extensionAD;                /* ADExtension */
753
static int hf_qsig_cf_single;                     /* Extension */
754
static int hf_qsig_cf_multiple;                   /* SEQUENCE_OF_Extension */
755
static int hf_qsig_cf_multiple_item;              /* Extension */
756
static int hf_qsig_cf_null;                       /* NULL */
757
static int hf_qsig_cf_deactivatingUserNr;         /* PartyNumber */
758
static int hf_qsig_cf_extensionDD;                /* DDExtension */
759
static int hf_qsig_cf_interrogatingUserNr;        /* PartyNumber */
760
static int hf_qsig_cf_extensionID;                /* IDExtension */
761
static int hf_qsig_cf_divertedToNr;               /* PartyNumber */
762
static int hf_qsig_cf_extensionCHR;               /* CHRExtension */
763
static int hf_qsig_cf_rerouteingReason;           /* DiversionReason */
764
static int hf_qsig_cf_originalRerouteingReason;   /* DiversionReason */
765
static int hf_qsig_cf_calledAddress;              /* Address */
766
static int hf_qsig_cf_diversionCounter;           /* INTEGER_1_15 */
767
static int hf_qsig_cf_pSS1InfoElement;            /* PSS1InformationElement */
768
static int hf_qsig_cf_lastRerouteingNr;           /* PresentedNumberUnscreened */
769
static int hf_qsig_cf_subscriptionOption;         /* SubscriptionOption */
770
static int hf_qsig_cf_callingPartySubaddress;     /* PartySubaddress */
771
static int hf_qsig_cf_callingNumber;              /* PresentedNumberScreened */
772
static int hf_qsig_cf_callingName;                /* Name */
773
static int hf_qsig_cf_originalCalledNr;           /* PresentedNumberUnscreened */
774
static int hf_qsig_cf_redirectingName;            /* Name */
775
static int hf_qsig_cf_originalCalledName;         /* Name */
776
static int hf_qsig_cf_extensionCRR;               /* CRRExtension */
777
static int hf_qsig_cf_diversionReason;            /* DiversionReason */
778
static int hf_qsig_cf_nominatedNr;                /* PartyNumber */
779
static int hf_qsig_cf_extensionDLI1;              /* DLI1Extension */
780
static int hf_qsig_cf_originalDiversionReason;    /* DiversionReason */
781
static int hf_qsig_cf_divertingNr;                /* PresentedNumberUnscreened */
782
static int hf_qsig_cf_extensionDLI2;              /* DLI2Extension */
783
static int hf_qsig_cf_presentationAllowedIndicator;  /* PresentationAllowedIndicator */
784
static int hf_qsig_cf_redirectionName;            /* Name */
785
static int hf_qsig_cf_extensionDLI3;              /* DLI3Extension */
786
static int hf_qsig_cf_IntResultList_item;         /* IntResult */
787
static int hf_qsig_cf_remoteEnabled;              /* BOOLEAN */
788
static int hf_qsig_cf_extensionIR;                /* IRExtension */
789
790
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
791
792
static int hf_qsig_pr_qsig_pr_DummyArg_PDU;       /* DummyArg */
793
static int hf_qsig_pr_qsig_pr_PRProposeArg_PDU;   /* PRProposeArg */
794
static int hf_qsig_pr_qsig_pr_PRSetupArg_PDU;     /* PRSetupArg */
795
static int hf_qsig_pr_qsig_pr_DummyResult_PDU;    /* DummyResult */
796
static int hf_qsig_pr_qsig_pr_PRRetainArg_PDU;    /* PRRetainArg */
797
static int hf_qsig_pr_qsig_pr_Extension_PDU;      /* Extension */
798
static int hf_qsig_pr_callIdentity;               /* CallIdentity */
799
static int hf_qsig_pr_rerouteingNumber;           /* PartyNumber */
800
static int hf_qsig_pr_extensionPRP;               /* PRPExtension */
801
static int hf_qsig_pr_single;                     /* Extension */
802
static int hf_qsig_pr_multiple;                   /* SEQUENCE_OF_Extension */
803
static int hf_qsig_pr_multiple_item;              /* Extension */
804
static int hf_qsig_pr_extensionPRS;               /* PRSExtension */
805
static int hf_qsig_pr_extensionPRR;               /* PRRExtension */
806
static int hf_qsig_pr_null;                       /* NULL */
807
808
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
809
810
static int hf_qsig_ct_qsig_ct_DummyArg_PDU;       /* DummyArg */
811
static int hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU;  /* CTIdentifyRes */
812
static int hf_qsig_ct_qsig_ct_CTInitiateArg_PDU;  /* CTInitiateArg */
813
static int hf_qsig_ct_qsig_ct_DummyRes_PDU;       /* DummyRes */
814
static int hf_qsig_ct_qsig_ct_CTSetupArg_PDU;     /* CTSetupArg */
815
static int hf_qsig_ct_qsig_ct_CTActiveArg_PDU;    /* CTActiveArg */
816
static int hf_qsig_ct_qsig_ct_CTCompleteArg_PDU;  /* CTCompleteArg */
817
static int hf_qsig_ct_qsig_ct_CTUpdateArg_PDU;    /* CTUpdateArg */
818
static int hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU;  /* SubaddressTransferArg */
819
static int hf_qsig_ct_qsig_ct_Extension_PDU;      /* Extension */
820
static int hf_qsig_ct_null;                       /* NULL */
821
static int hf_qsig_ct_single;                     /* Extension */
822
static int hf_qsig_ct_multiple;                   /* SEQUENCE_OF_Extension */
823
static int hf_qsig_ct_multiple_item;              /* Extension */
824
static int hf_qsig_ct_callIdentity;               /* CallIdentity */
825
static int hf_qsig_ct_rerouteingNumber;           /* PartyNumber */
826
static int hf_qsig_ct_resultExtension;            /* T_resultExtension */
827
static int hf_qsig_ct_argumentExtensionCTI;       /* CTIargumentExtension */
828
static int hf_qsig_ct_argumentExtensionCTS;       /* CTSargumentExtension */
829
static int hf_qsig_ct_connectedAddress;           /* PresentedAddressScreened */
830
static int hf_qsig_ct_basicCallInfoElements;      /* PSS1InformationElement */
831
static int hf_qsig_ct_connectedName;              /* Name */
832
static int hf_qsig_ct_argumentExtensionCTA;       /* CTAargumentExtension */
833
static int hf_qsig_ct_endDesignation;             /* EndDesignation */
834
static int hf_qsig_ct_redirectionNumber;          /* PresentedNumberScreened */
835
static int hf_qsig_ct_redirectionName;            /* Name */
836
static int hf_qsig_ct_callStatus;                 /* CallStatus */
837
static int hf_qsig_ct_argumentExtensionCTC;       /* CTCargumentExtension */
838
static int hf_qsig_ct_argumentExtensionCTU;       /* CTUargumentExtension */
839
static int hf_qsig_ct_redirectionSubaddress;      /* PartySubaddress */
840
static int hf_qsig_ct_argumentExtensionST;        /* STargumentExtension */
841
842
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
843
844
static int hf_qsig_cc_qsig_cc_CcRequestArg_PDU;   /* CcRequestArg */
845
static int hf_qsig_cc_qsig_cc_CcRequestRes_PDU;   /* CcRequestRes */
846
static int hf_qsig_cc_qsig_cc_CcOptionalArg_PDU;  /* CcOptionalArg */
847
static int hf_qsig_cc_qsig_cc_CcExtension_PDU;    /* CcExtension */
848
static int hf_qsig_cc_qsig_cc_Extension_PDU;      /* Extension */
849
static int hf_qsig_cc_numberA;                    /* PresentedNumberUnscreened */
850
static int hf_qsig_cc_numberB;                    /* PartyNumber */
851
static int hf_qsig_cc_service;                    /* PSS1InformationElement */
852
static int hf_qsig_cc_subaddrA;                   /* PartySubaddress */
853
static int hf_qsig_cc_subaddrB;                   /* PartySubaddress */
854
static int hf_qsig_cc_can_retain_service;         /* BOOLEAN */
855
static int hf_qsig_cc_retain_sig_connection;      /* BOOLEAN */
856
static int hf_qsig_cc_extension;                  /* CcExtension */
857
static int hf_qsig_cc_no_path_reservation;        /* BOOLEAN */
858
static int hf_qsig_cc_retain_service;             /* BOOLEAN */
859
static int hf_qsig_cc_fullArg;                    /* T_fullArg */
860
static int hf_qsig_cc_numberA_01;                 /* PartyNumber */
861
static int hf_qsig_cc_extArg;                     /* CcExtension */
862
static int hf_qsig_cc_none;                       /* NULL */
863
static int hf_qsig_cc_single;                     /* Extension */
864
static int hf_qsig_cc_multiple;                   /* SEQUENCE_OF_Extension */
865
static int hf_qsig_cc_multiple_item;              /* Extension */
866
867
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
868
869
static int hf_qsig_co_qsig_co_PathRetainArg_PDU;  /* PathRetainArg */
870
static int hf_qsig_co_qsig_co_ServiceAvailableArg_PDU;  /* ServiceAvailableArg */
871
static int hf_qsig_co_qsig_co_DummyArg_PDU;       /* DummyArg */
872
static int hf_qsig_co_qsig_co_DummyRes_PDU;       /* DummyRes */
873
static int hf_qsig_co_qsig_co_Extension_PDU;      /* Extension */
874
static int hf_qsig_co_serviceList;                /* ServiceList */
875
static int hf_qsig_co_extendedServiceList;        /* T_extendedServiceList */
876
static int hf_qsig_co_extension;                  /* Extension */
877
static int hf_qsig_co_extendedServiceList_01;     /* T_extendedServiceList_01 */
878
static int hf_qsig_co_null;                       /* NULL */
879
static int hf_qsig_co_sequenceOfExtn;             /* SEQUENCE_OF_Extension */
880
static int hf_qsig_co_sequenceOfExtn_item;        /* Extension */
881
/* named bits */
882
static int hf_qsig_co_ServiceList_callOffer;
883
884
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
885
886
static int hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU;  /* DNDActivateArg */
887
static int hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU;  /* DNDActivateRes */
888
static int hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU;  /* DNDDeactivateArg */
889
static int hf_qsig_dnd_qsig_dnd_DummyRes_PDU;     /* DummyRes */
890
static int hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU;  /* DNDInterrogateArg */
891
static int hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU;  /* DNDInterrogateRes */
892
static int hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU;  /* DNDOverrideArg */
893
static int hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU;  /* PathRetainArg */
894
static int hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU;  /* ServiceAvailableArg */
895
static int hf_qsig_dnd_qsig_dnd_DummyArg_PDU;     /* DummyArg */
896
static int hf_qsig_dnd_qsig_dnd_Extension_PDU;    /* Extension */
897
static int hf_qsig_dnd_null;                      /* NULL */
898
static int hf_qsig_dnd_extension;                 /* Extension */
899
static int hf_qsig_dnd_sequenceOfExtn;            /* SEQUENCE_OF_Extension */
900
static int hf_qsig_dnd_sequenceOfExtn_item;       /* Extension */
901
static int hf_qsig_dnd_basicService;              /* BasicService */
902
static int hf_qsig_dnd_servedUserNr;              /* PartyNumber */
903
static int hf_qsig_dnd_argumentExtensionDNDA;     /* DNDAargumentExtension */
904
static int hf_qsig_dnd_status;                    /* T_status */
905
static int hf_qsig_dnd_status_item;               /* T_status_item */
906
static int hf_qsig_dnd_dndProtectionLevel;        /* DNDProtectionLevel */
907
static int hf_qsig_dnd_resultExtension;           /* T_resultExtension */
908
static int hf_qsig_dnd_argumentExtensionDNDD;     /* DNDDargumentExtension */
909
static int hf_qsig_dnd_argumentExtensionDNDI;     /* DNDIargumentExtension */
910
static int hf_qsig_dnd_status_01;                 /* T_status_01 */
911
static int hf_qsig_dnd_status_item_01;            /* T_status_item_01 */
912
static int hf_qsig_dnd_resultExtension_01;        /* T_resultExtension_01 */
913
static int hf_qsig_dnd_dndoCapabilityLevel;       /* DNDOCapabilityLevel */
914
static int hf_qsig_dnd_argumentExtensionDNDO;     /* DNDOargumentExtension */
915
static int hf_qsig_dnd_serviceList;               /* ServiceList */
916
static int hf_qsig_dnd_extendedServiceList;       /* T_extendedServiceList */
917
static int hf_qsig_dnd_extendedServiceList_01;    /* T_extendedServiceList_01 */
918
/* named bits */
919
static int hf_qsig_dnd_ServiceList_spare_bit0;
920
static int hf_qsig_dnd_ServiceList_dndo_low;
921
static int hf_qsig_dnd_ServiceList_dndo_medium;
922
static int hf_qsig_dnd_ServiceList_dndo_high;
923
924
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
925
926
static int hf_qsig_ci_qsig_ci_PathRetainArg_PDU;  /* PathRetainArg */
927
static int hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU;  /* ServiceAvailableArg */
928
static int hf_qsig_ci_qsig_ci_CIRequestArg_PDU;   /* CIRequestArg */
929
static int hf_qsig_ci_qsig_ci_CIRequestRes_PDU;   /* CIRequestRes */
930
static int hf_qsig_ci_qsig_ci_DummyArg_PDU;       /* DummyArg */
931
static int hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU;   /* CIGetCIPLRes */
932
static int hf_qsig_ci_qsig_ci_DummyRes_PDU;       /* DummyRes */
933
static int hf_qsig_ci_qsig_ci_Extension_PDU;      /* Extension */
934
static int hf_qsig_ci_serviceList;                /* ServiceList */
935
static int hf_qsig_ci_extendedServiceList;        /* T_extendedServiceList */
936
static int hf_qsig_ci_extension;                  /* Extension */
937
static int hf_qsig_ci_extendedServiceList_01;     /* T_extendedServiceList_01 */
938
static int hf_qsig_ci_null;                       /* NULL */
939
static int hf_qsig_ci_sequenceOfExtn;             /* SEQUENCE_OF_Extension */
940
static int hf_qsig_ci_sequenceOfExtn_item;        /* Extension */
941
static int hf_qsig_ci_ciCapabilityLevel;          /* CICapabilityLevel */
942
static int hf_qsig_ci_argumentExtension;          /* T_argumentExtension */
943
static int hf_qsig_ci_ciUnwantedUserStatus;       /* CIUnwantedUserStatus */
944
static int hf_qsig_ci_resultExtension;            /* T_resultExtension */
945
static int hf_qsig_ci_ciProtectionLevel;          /* CIProtectionLevel */
946
static int hf_qsig_ci_resultExtension_01;         /* T_resultExtension_01 */
947
/* named bits */
948
static int hf_qsig_ci_ServiceList_spare_bit0;
949
static int hf_qsig_ci_ServiceList_spare_bit1;
950
static int hf_qsig_ci_ServiceList_spare_bit2;
951
static int hf_qsig_ci_ServiceList_spare_bit3;
952
static int hf_qsig_ci_ServiceList_ci_low;
953
static int hf_qsig_ci_ServiceList_ci_medium;
954
static int hf_qsig_ci_ServiceList_ci_high;
955
956
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
957
958
static int hf_qsig_aoc_qsig_aoc_AocRateArg_PDU;   /* AocRateArg */
959
static int hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU;  /* AocInterimArg */
960
static int hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU;  /* AocFinalArg */
961
static int hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU;  /* ChargeRequestArg */
962
static int hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU;  /* ChargeRequestRes */
963
static int hf_qsig_aoc_qsig_aoc_DummyArg_PDU;     /* DummyArg */
964
static int hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU;  /* AocCompleteArg */
965
static int hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU;  /* AocCompleteRes */
966
static int hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU;  /* AocDivChargeReqArg */
967
static int hf_qsig_aoc_qsig_aoc_Extension_PDU;    /* Extension */
968
static int hf_qsig_aoc_aocRate;                   /* T_aocRate */
969
static int hf_qsig_aoc_chargeNotAvailable;        /* NULL */
970
static int hf_qsig_aoc_aocSCurrencyInfoList;      /* AOCSCurrencyInfoList */
971
static int hf_qsig_aoc_rateArgExtension;          /* T_rateArgExtension */
972
static int hf_qsig_aoc_extension;                 /* Extension */
973
static int hf_qsig_aoc_multipleExtension;         /* SEQUENCE_OF_Extension */
974
static int hf_qsig_aoc_multipleExtension_item;    /* Extension */
975
static int hf_qsig_aoc_interimCharge;             /* T_interimCharge */
976
static int hf_qsig_aoc_freeOfCharge;              /* NULL */
977
static int hf_qsig_aoc_specificCurrency;          /* T_specificCurrency */
978
static int hf_qsig_aoc_recordedCurrency;          /* RecordedCurrency */
979
static int hf_qsig_aoc_interimBillingId;          /* InterimBillingId */
980
static int hf_qsig_aoc_interimArgExtension;       /* T_interimArgExtension */
981
static int hf_qsig_aoc_finalCharge;               /* T_finalCharge */
982
static int hf_qsig_aoc_specificCurrency_01;       /* T_specificCurrency_01 */
983
static int hf_qsig_aoc_finalBillingId;            /* FinalBillingId */
984
static int hf_qsig_aoc_chargingAssociation;       /* ChargingAssociation */
985
static int hf_qsig_aoc_finalArgExtension;         /* T_finalArgExtension */
986
static int hf_qsig_aoc_AOCSCurrencyInfoList_item;  /* AOCSCurrencyInfo */
987
static int hf_qsig_aoc_chargedItem;               /* ChargedItem */
988
static int hf_qsig_aoc_rateType;                  /* T_rateType */
989
static int hf_qsig_aoc_durationCurrency;          /* DurationCurrency */
990
static int hf_qsig_aoc_flatRateCurrency;          /* FlatRateCurrency */
991
static int hf_qsig_aoc_volumeRateCurrency;        /* VolumeRateCurrency */
992
static int hf_qsig_aoc_specialChargingCode;       /* SpecialChargingCode */
993
static int hf_qsig_aoc_currencyInfoNotAvailable;  /* NULL */
994
static int hf_qsig_aoc_freeOfChargefromBeginning;  /* NULL */
995
static int hf_qsig_aoc_dCurrency;                 /* Currency */
996
static int hf_qsig_aoc_dAmount;                   /* Amount */
997
static int hf_qsig_aoc_dChargingType;             /* ChargingType */
998
static int hf_qsig_aoc_dTime;                     /* Time */
999
static int hf_qsig_aoc_dGranularity;              /* Time */
1000
static int hf_qsig_aoc_fRCurrency;                /* Currency */
1001
static int hf_qsig_aoc_fRAmount;                  /* Amount */
1002
static int hf_qsig_aoc_vRCurrency;                /* Currency */
1003
static int hf_qsig_aoc_vRAmount;                  /* Amount */
1004
static int hf_qsig_aoc_vRVolumeUnit;              /* VolumeUnit */
1005
static int hf_qsig_aoc_rCurrency;                 /* Currency */
1006
static int hf_qsig_aoc_rAmount;                   /* Amount */
1007
static int hf_qsig_aoc_currencyAmount;            /* CurrencyAmount */
1008
static int hf_qsig_aoc_multiplier;                /* Multiplier */
1009
static int hf_qsig_aoc_lengthOfTimeUnit;          /* LengthOfTimeUnit */
1010
static int hf_qsig_aoc_scale;                     /* Scale */
1011
static int hf_qsig_aoc_chargeNumber;              /* PartyNumber */
1012
static int hf_qsig_aoc_chargeIdentifier;          /* ChargeIdentifier */
1013
static int hf_qsig_aoc_adviceModeCombinations;    /* SEQUENCE_SIZE_0_7_OF_AdviceModeCombination */
1014
static int hf_qsig_aoc_adviceModeCombinations_item;  /* AdviceModeCombination */
1015
static int hf_qsig_aoc_chargeReqArgExtension;     /* T_chargeReqArgExtension */
1016
static int hf_qsig_aoc_adviceModeCombination;     /* AdviceModeCombination */
1017
static int hf_qsig_aoc_chargeReqResExtension;     /* T_chargeReqResExtension */
1018
static int hf_qsig_aoc_none;                      /* NULL */
1019
static int hf_qsig_aoc_chargedUser;               /* PartyNumber */
1020
static int hf_qsig_aoc_completeArgExtension;      /* T_completeArgExtension */
1021
static int hf_qsig_aoc_chargingOption;            /* ChargingOption */
1022
static int hf_qsig_aoc_completeResExtension;      /* T_completeResExtension */
1023
static int hf_qsig_aoc_divertingUser;             /* PartyNumber */
1024
static int hf_qsig_aoc_diversionType;             /* DiversionType */
1025
static int hf_qsig_aoc_aocDivChargeReqArgExt;     /* T_aocDivChargeReqArgExt */
1026
1027
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
1028
1029
static int hf_qsig_re_qsig_re_ReAlertingArg_PDU;  /* ReAlertingArg */
1030
static int hf_qsig_re_qsig_re_ReAnswerArg_PDU;    /* ReAnswerArg */
1031
static int hf_qsig_re_alertedNumber;              /* PresentedNumberScreened */
1032
static int hf_qsig_re_alertedName;                /* Name */
1033
static int hf_qsig_re_argumentExtension;          /* T_argumentExtension */
1034
static int hf_qsig_re_extension;                  /* Extension */
1035
static int hf_qsig_re_multipleExtension;          /* SEQUENCE_OF_Extension */
1036
static int hf_qsig_re_multipleExtension_item;     /* Extension */
1037
static int hf_qsig_re_connectedNumber;            /* PresentedNumberScreened */
1038
static int hf_qsig_re_connectedSubaddress;        /* PartySubaddress */
1039
static int hf_qsig_re_connectedName;              /* Name */
1040
static int hf_qsig_re_argumentExtension_01;       /* T_argumentExtension_01 */
1041
1042
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
1043
1044
static int hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU;  /* SynchronizationReqArg */
1045
static int hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU;  /* SynchronizationReqRes */
1046
static int hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU;  /* SynchronizationInfoArg */
1047
static int hf_qsig_sync_qsig_sync_Extension_PDU;  /* Extension */
1048
static int hf_qsig_sync_action;                   /* Action */
1049
static int hf_qsig_sync_argExtension;             /* ArgExtension */
1050
static int hf_qsig_sync_response;                 /* BOOLEAN */
1051
static int hf_qsig_sync_stateinfo;                /* T_stateinfo */
1052
static int hf_qsig_sync_extension;                /* Extension */
1053
static int hf_qsig_sync_sequOfExtn;               /* SEQUENCE_OF_Extension */
1054
static int hf_qsig_sync_sequOfExtn_item;          /* Extension */
1055
1056
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
1057
1058
static int hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU;  /* CintInformation1Arg */
1059
static int hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU;  /* CintInformation2Arg */
1060
static int hf_qsig_cint_qsig_cint_CintCondArg_PDU;  /* CintCondArg */
1061
static int hf_qsig_cint_qsig_cint_CintExtension_PDU;  /* CintExtension */
1062
static int hf_qsig_cint_interceptionCause;        /* CintCause */
1063
static int hf_qsig_cint_interceptedToNumber;      /* PartyNumber */
1064
static int hf_qsig_cint_extension;                /* CintExtension */
1065
static int hf_qsig_cint_calledNumber;             /* PresentedNumberUnscreened */
1066
static int hf_qsig_cint_originalCalledNumber;     /* PresentedNumberUnscreened */
1067
static int hf_qsig_cint_calledName;               /* Name */
1068
static int hf_qsig_cint_originalCalledName;       /* Name */
1069
static int hf_qsig_cint_interceptionCause_01;     /* Condition */
1070
static int hf_qsig_cint_none;                     /* NULL */
1071
static int hf_qsig_cint_single;                   /* Extension */
1072
static int hf_qsig_cint_multiple;                 /* SEQUENCE_OF_Extension */
1073
static int hf_qsig_cint_multiple_item;            /* Extension */
1074
1075
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
1076
1077
static int hf_qsig_cmn_qsig_cmn_DummyArg_PDU;     /* DummyArg */
1078
static int hf_qsig_cmn_qsig_cmn_CmnArg_PDU;       /* CmnArg */
1079
static int hf_qsig_cmn_featureIdentifier;         /* FeatureIdList */
1080
static int hf_qsig_cmn_ssDNDOprotectionLevel;     /* INTEGER_0_3 */
1081
static int hf_qsig_cmn_ssCIprotectionLevel;       /* INTEGER_0_3 */
1082
static int hf_qsig_cmn_equipmentIdentity;         /* EquipmentId */
1083
static int hf_qsig_cmn_partyCategory;             /* PartyCategory */
1084
static int hf_qsig_cmn_extension;                 /* T_extension */
1085
static int hf_qsig_cmn_single;                    /* Extension */
1086
static int hf_qsig_cmn_multiple;                  /* SEQUENCE_OF_Extension */
1087
static int hf_qsig_cmn_multiple_item;             /* Extension */
1088
static int hf_qsig_cmn_null;                      /* NULL */
1089
static int hf_qsig_cmn_nodeId;                    /* IA5String_SIZE_1_10 */
1090
static int hf_qsig_cmn_groupId;                   /* IA5String_SIZE_1_10 */
1091
static int hf_qsig_cmn_unitId;                    /* IA5String_SIZE_1_10 */
1092
/* named bits */
1093
static int hf_qsig_cmn_FeatureIdList_reserved;
1094
static int hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported;
1095
static int hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported;
1096
static int hf_qsig_cmn_FeatureIdList_ssCCBSpossible;
1097
static int hf_qsig_cmn_FeatureIdList_ssCCNRpossible;
1098
static int hf_qsig_cmn_FeatureIdList_ssCOsupported;
1099
static int hf_qsig_cmn_FeatureIdList_ssCIforcedRelease;
1100
static int hf_qsig_cmn_FeatureIdList_ssCIisolation;
1101
static int hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy;
1102
static int hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx;
1103
static int hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx;
1104
static int hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx;
1105
static int hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx;
1106
static int hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate;
1107
static int hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed;
1108
static int hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported;
1109
static int hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported;
1110
static int hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported;
1111
1112
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
1113
1114
static int hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU;  /* CPIRequestArg */
1115
static int hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU;  /* CPIPRequestArg */
1116
static int hf_qsig_cpi_cpiCapabilityLevel;        /* CPICapabilityLevel */
1117
static int hf_qsig_cpi_argumentExtension;         /* T_argumentExtension */
1118
static int hf_qsig_cpi_extension;                 /* Extension */
1119
static int hf_qsig_cpi_sequenceOfExtn;            /* SEQUENCE_OF_Extension */
1120
static int hf_qsig_cpi_sequenceOfExtn_item;       /* Extension */
1121
static int hf_qsig_cpi_cpiProtectionLevel;        /* CPIProtectionLevel */
1122
static int hf_qsig_cpi_argumentExtension_01;      /* T_argumentExtension_01 */
1123
1124
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
1125
1126
static int hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU;  /* PumRegistrArg */
1127
static int hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU;  /* PumRegistrRes */
1128
static int hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU;  /* PumDelRegArg */
1129
static int hf_qsig_pumr_qsig_pumr_DummyRes_PDU;   /* DummyRes */
1130
static int hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU;  /* PumDe_regArg */
1131
static int hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU;  /* PumInterrogArg */
1132
static int hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU;  /* PumInterrogRes */
1133
static int hf_qsig_pumr_qsig_pumr_Extension_PDU;  /* Extension */
1134
static int hf_qsig_pumr_pumRUserId;               /* RpumUserId */
1135
static int hf_qsig_pumr_pumNumber;                /* PartyNumber */
1136
static int hf_qsig_pumr_alternativeId;            /* AlternativeId */
1137
static int hf_qsig_pumr_basicService;             /* BasicService */
1138
static int hf_qsig_pumr_hostingAddr;              /* PartyNumber */
1139
static int hf_qsig_pumr_activatingUserAddr;       /* PartyNumber */
1140
static int hf_qsig_pumr_serviceOption;            /* ServiceOption */
1141
static int hf_qsig_pumr_sessionParams;            /* SessionParams */
1142
static int hf_qsig_pumr_userPin;                  /* T_userPin */
1143
static int hf_qsig_pumr_pumUserPin;               /* UserPin */
1144
static int hf_qsig_pumr_activatingUserPin;        /* UserPin */
1145
static int hf_qsig_pumr_argExtension;             /* PumrExtension */
1146
static int hf_qsig_pumr_null;                     /* NULL */
1147
static int hf_qsig_pumr_extension;                /* Extension */
1148
static int hf_qsig_pumr_sequOfExtn;               /* SEQUENCE_OF_Extension */
1149
static int hf_qsig_pumr_sequOfExtn_item;          /* Extension */
1150
static int hf_qsig_pumr_pumXUserId;               /* XpumUserId */
1151
static int hf_qsig_pumr_pumDUserId;               /* DpumUserId */
1152
static int hf_qsig_pumr_userPin_01;               /* T_userPin_01 */
1153
static int hf_qsig_pumr_pumIUserId;               /* IpumUserId */
1154
static int hf_qsig_pumr_homeInfoOnly;             /* BOOLEAN */
1155
static int hf_qsig_pumr_userPin_02;               /* T_userPin_02 */
1156
static int hf_qsig_pumr_PumInterrogRes_item;      /* PumInterrogRes_item */
1157
static int hf_qsig_pumr_interrogParams;           /* SessionParams */
1158
static int hf_qsig_pumr_durationOfSession;        /* INTEGER */
1159
static int hf_qsig_pumr_numberOfOutgCalls;        /* INTEGER */
1160
1161
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
1162
1163
static int hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU;  /* EnquiryArg */
1164
static int hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU;  /* EnquiryRes */
1165
static int hf_qsig_pumch_qsig_pumch_DivertArg_PDU;  /* DivertArg */
1166
static int hf_qsig_pumch_qsig_pumch_DummyRes_PDU;  /* DummyRes */
1167
static int hf_qsig_pumch_qsig_pumch_InformArg_PDU;  /* InformArg */
1168
static int hf_qsig_pumch_qsig_pumch_PumoArg_PDU;  /* PumoArg */
1169
static int hf_qsig_pumch_qsig_pumch_Extension_PDU;  /* Extension */
1170
static int hf_qsig_pumch_pisnNumber;              /* PartyNumber */
1171
static int hf_qsig_pumch_qSIGInfoElement;         /* PSS1InformationElement */
1172
static int hf_qsig_pumch_argExtension;            /* PumiExtension */
1173
static int hf_qsig_pumch_hostingAddr;             /* PartyNumber */
1174
static int hf_qsig_pumch_callingNumber;           /* PresentedNumberScreened */
1175
static int hf_qsig_pumch_pumIdentity;             /* PumIdentity */
1176
static int hf_qsig_pumch_callingUserSub;          /* PartySubaddress */
1177
static int hf_qsig_pumch_callingUserName;         /* Name */
1178
static int hf_qsig_pumch_pumUserSub;              /* PartySubaddress */
1179
static int hf_qsig_pumch_currLocation;            /* CurrLocation */
1180
static int hf_qsig_pumch_cfuActivated;            /* CfuActivated */
1181
static int hf_qsig_pumch_divToAddress;            /* Address */
1182
static int hf_qsig_pumch_divOptions;              /* SubscriptionOption */
1183
static int hf_qsig_pumch_pumName;                 /* Name */
1184
static int hf_qsig_pumch_null;                    /* NULL */
1185
static int hf_qsig_pumch_extension;               /* Extension */
1186
static int hf_qsig_pumch_sequOfExtn;              /* SEQUENCE_OF_Extension */
1187
static int hf_qsig_pumch_sequOfExtn_item;         /* Extension */
1188
static int hf_qsig_pumch_alternativeId;           /* AlternativeId */
1189
static int hf_qsig_pumch_both;                    /* T_both */
1190
static int hf_qsig_pumch_destinationNumber;       /* PartyNumber */
1191
static int hf_qsig_pumch_sendingComplete;         /* NULL */
1192
static int hf_qsig_pumch_pumoaextension;          /* T_pumoaextension */
1193
static int hf_qsig_pumch_single;                  /* Extension */
1194
static int hf_qsig_pumch_multiple;                /* SEQUENCE_OF_Extension */
1195
static int hf_qsig_pumch_multiple_item;           /* Extension */
1196
1197
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
1198
1199
static int hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU;  /* SSCTInitiateArg */
1200
static int hf_qsig_ssct_qsig_ssct_DummyRes_PDU;   /* DummyRes */
1201
static int hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU;  /* SSCTSetupArg */
1202
static int hf_qsig_ssct_qsig_ssct_DummyArg_PDU;   /* DummyArg */
1203
static int hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU;  /* SSCTDigitInfoArg */
1204
static int hf_qsig_ssct_qsig_ssct_Extension_PDU;  /* Extension */
1205
static int hf_qsig_ssct_null;                     /* NULL */
1206
static int hf_qsig_ssct_single;                   /* Extension */
1207
static int hf_qsig_ssct_multiple;                 /* SEQUENCE_OF_Extension */
1208
static int hf_qsig_ssct_multiple_item;            /* Extension */
1209
static int hf_qsig_ssct_rerouteingNumber;         /* PartyNumber */
1210
static int hf_qsig_ssct_transferredAddress;       /* PresentedAddressScreened */
1211
static int hf_qsig_ssct_awaitConnect;             /* AwaitConnect */
1212
static int hf_qsig_ssct_transferredName;          /* Name */
1213
static int hf_qsig_ssct_transferringAddress;      /* PresentedAddressScreened */
1214
static int hf_qsig_ssct_transferringName;         /* Name */
1215
static int hf_qsig_ssct_argumentExtensionSSCTI;   /* SSCTIargumentExtension */
1216
static int hf_qsig_ssct_argumentExtensionSSCTS;   /* SSCTSargumentExtension */
1217
static int hf_qsig_ssct_reroutingNumber;          /* PartyNumber */
1218
static int hf_qsig_ssct_sendingComplete;          /* NULL */
1219
static int hf_qsig_ssct_argumentExtensionSSCTD;   /* SSCTDargumentExtension */
1220
1221
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
1222
1223
static int hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU;  /* LocUpdArg */
1224
static int hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU;  /* DummyRes */
1225
static int hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU;  /* LocDelArg */
1226
static int hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU;  /* LocDeRegArg */
1227
static int hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU;  /* PisnEnqArg */
1228
static int hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU;  /* PisnEnqRes */
1229
static int hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU;  /* GetRRCInfArg */
1230
static int hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU;  /* GetRRCInfRes */
1231
static int hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU;  /* LocInfoCheckArg */
1232
static int hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU;  /* LocInfoCheckRes */
1233
static int hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU;  /* Extension */
1234
static int hf_qsig_wtmlr_wtmUserId;               /* WtmUserId */
1235
static int hf_qsig_wtmlr_basicService;            /* BasicService */
1236
static int hf_qsig_wtmlr_visitPINX;               /* PartyNumber */
1237
static int hf_qsig_wtmlr_argExtension;            /* LrExtension */
1238
static int hf_qsig_wtmlr_null;                    /* NULL */
1239
static int hf_qsig_wtmlr_extension;               /* Extension */
1240
static int hf_qsig_wtmlr_sequOfExtn;              /* SEQUENCE_OF_Extension */
1241
static int hf_qsig_wtmlr_sequOfExtn_item;         /* Extension */
1242
static int hf_qsig_wtmlr_alternativeId;           /* AlternativeId */
1243
static int hf_qsig_wtmlr_resExtension;            /* LrExtension */
1244
static int hf_qsig_wtmlr_rrClass;                 /* RRClass */
1245
static int hf_qsig_wtmlr_checkResult;             /* CheckResult */
1246
static int hf_qsig_wtmlr_pisnNumber;              /* PartyNumber */
1247
1248
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
1249
1250
static int hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU;  /* EnquiryArg */
1251
static int hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU;  /* EnquiryRes */
1252
static int hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU;  /* DivertArg */
1253
static int hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU;  /* DummyRes */
1254
static int hf_qsig_wtmch_qsig_wtmch_InformArg_PDU;  /* InformArg */
1255
static int hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU;  /* WtmoArg */
1256
static int hf_qsig_wtmch_qsig_wtmch_Extension_PDU;  /* Extension */
1257
static int hf_qsig_wtmch_pisnNumber;              /* PartyNumber */
1258
static int hf_qsig_wtmch_qSIGInfoElement;         /* PSS1InformationElement */
1259
static int hf_qsig_wtmch_argExtension;            /* WtmiExtension */
1260
static int hf_qsig_wtmch_visitPINX;               /* PartyNumber */
1261
static int hf_qsig_wtmch_callingNumber;           /* PresentedNumberScreened */
1262
static int hf_qsig_wtmch_wtmIdentity;             /* WtmIdentity */
1263
static int hf_qsig_wtmch_callingUserSub;          /* PartySubaddress */
1264
static int hf_qsig_wtmch_callingName;             /* Name */
1265
static int hf_qsig_wtmch_wtmUserSub;              /* PartySubaddress */
1266
static int hf_qsig_wtmch_currLocation;            /* CurrLocation */
1267
static int hf_qsig_wtmch_cfuActivated;            /* CfuActivated */
1268
static int hf_qsig_wtmch_divToAddress;            /* Address */
1269
static int hf_qsig_wtmch_divOptions;              /* SubscriptionOption */
1270
static int hf_qsig_wtmch_wtmName;                 /* Name */
1271
static int hf_qsig_wtmch_null;                    /* NULL */
1272
static int hf_qsig_wtmch_extension;               /* Extension */
1273
static int hf_qsig_wtmch_sequOfExtn;              /* SEQUENCE_OF_Extension */
1274
static int hf_qsig_wtmch_sequOfExtn_item;         /* Extension */
1275
static int hf_qsig_wtmch_alternativeId;           /* AlternativeId */
1276
static int hf_qsig_wtmch_both;                    /* T_both */
1277
static int hf_qsig_wtmch_destinationNumber;       /* PartyNumber */
1278
static int hf_qsig_wtmch_sendingComplete;         /* NULL */
1279
static int hf_qsig_wtmch_wtmoaextension;          /* T_wtmoaextension */
1280
static int hf_qsig_wtmch_single;                  /* Extension */
1281
static int hf_qsig_wtmch_multiple;                /* SEQUENCE_OF_Extension */
1282
static int hf_qsig_wtmch_multiple_item;           /* Extension */
1283
1284
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
1285
1286
static int hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU;  /* AuthWtmArg */
1287
static int hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU;  /* AuthWtmRes */
1288
static int hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU;  /* WtatParamArg */
1289
static int hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU;  /* WtatParamRes */
1290
static int hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU;  /* WtanParamArg */
1291
static int hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU;  /* WtanParamRes */
1292
static int hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU;  /* ARG_transferAuthParam */
1293
static int hf_qsig_wtmau_qsig_wtmau_Extension_PDU;  /* Extension */
1294
static int hf_qsig_wtmau_wtmUserId;               /* WtmUserId */
1295
static int hf_qsig_wtmau_calcWtatInfo;            /* CalcWtatInfo */
1296
static int hf_qsig_wtmau_dummyExtension;          /* DummyExtension */
1297
static int hf_qsig_wtmau_autWtmResValue;          /* T_autWtmResValue */
1298
static int hf_qsig_wtmau_canCompute;              /* CanCompute */
1299
static int hf_qsig_wtmau_authChallenge;           /* AuthChallenge */
1300
static int hf_qsig_wtmau_wtatParamInfo;           /* WtatParamInfo */
1301
static int hf_qsig_wtmau_authAlgorithm;           /* AuthAlgorithm */
1302
static int hf_qsig_wtmau_pisnNumber;              /* PartyNumber */
1303
static int hf_qsig_wtmau_alternativeId;           /* AlternativeId */
1304
static int hf_qsig_wtmau_wtanParamInfo;           /* WtanParamInfo */
1305
static int hf_qsig_wtmau_wtatParamInfoChoice;     /* T_wtatParamInfoChoice */
1306
static int hf_qsig_wtmau_authSessionKeyInfo;      /* AuthSessionKeyInfo */
1307
static int hf_qsig_wtmau_authKey;                 /* AuthKey */
1308
static int hf_qsig_wtmau_challLen;                /* INTEGER_1_8 */
1309
static int hf_qsig_wtmau_calcWtanInfo;            /* CalcWtanInfo */
1310
static int hf_qsig_wtmau_authSessionKey;          /* AuthSessionKey */
1311
static int hf_qsig_wtmau_calculationParam;        /* CalculationParam */
1312
static int hf_qsig_wtmau_CalcWtatInfo_item;       /* CalcWtatInfoUnit */
1313
static int hf_qsig_wtmau_authResponse;            /* AuthResponse */
1314
static int hf_qsig_wtmau_derivedCipherKey;        /* DerivedCipherKey */
1315
static int hf_qsig_wtmau_extension;               /* Extension */
1316
static int hf_qsig_wtmau_sequOfExtn;              /* SEQUENCE_OF_Extension */
1317
static int hf_qsig_wtmau_sequOfExtn_item;         /* Extension */
1318
static int hf_qsig_wtmau_authAlg;                 /* DefinedIDs */
1319
static int hf_qsig_wtmau_param;                   /* T_param */
1320
1321
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
1322
1323
static int hf_qsig_sd_qsig_sd_DisplayArg_PDU;     /* DisplayArg */
1324
static int hf_qsig_sd_qsig_sd_KeypadArg_PDU;      /* KeypadArg */
1325
static int hf_qsig_sd_qsig_sd_Extension_PDU;      /* Extension */
1326
static int hf_qsig_sd_displayString;              /* DisplayString */
1327
static int hf_qsig_sd_sdextension;                /* SDExtension */
1328
static int hf_qsig_sd_displayStringNormal;        /* BMPStringNormal */
1329
static int hf_qsig_sd_displayStringExtended;      /* BMPStringExtended */
1330
static int hf_qsig_sd_keypadString;               /* BMPStringNormal */
1331
static int hf_qsig_sd_extension;                  /* Extension */
1332
static int hf_qsig_sd_multipleExtension;          /* SEQUENCE_OF_Extension */
1333
static int hf_qsig_sd_multipleExtension_item;     /* Extension */
1334
1335
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
1336
1337
static int hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU;  /* CallIdentificationAssignArg */
1338
static int hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU;  /* CallIdentificationUpdateArg */
1339
static int hf_qsig_cidl_globalCallID;             /* CallIdentificationData */
1340
static int hf_qsig_cidl_threadID;                 /* CallIdentificationData */
1341
static int hf_qsig_cidl_legID;                    /* CallIdentificationData */
1342
static int hf_qsig_cidl_extensiont;               /* ExtensionType */
1343
static int hf_qsig_cidl_switchingSubDomainName;   /* SwitchingSubDomainName */
1344
static int hf_qsig_cidl_linkageID;                /* T_linkageID */
1345
static int hf_qsig_cidl_subDomainID;              /* SubDomainID */
1346
static int hf_qsig_cidl_globallyUniqueID;         /* GloballyUniqueID */
1347
static int hf_qsig_cidl_timeStamp;                /* TimeStamp */
1348
static int hf_qsig_cidl_extension;                /* Extension */
1349
static int hf_qsig_cidl_sequenceOfExt;            /* SEQUENCE_OF_Extension */
1350
static int hf_qsig_cidl_sequenceOfExt_item;       /* Extension */
1351
1352
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
1353
1354
static int hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU;  /* SmsSubmitArg */
1355
static int hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU;  /* SmsSubmitRes */
1356
static int hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU;  /* SmsDeliverArg */
1357
static int hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU;  /* SmsDeliverRes */
1358
static int hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU;  /* SmsStatusReportArg */
1359
static int hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU;  /* SmsStatusReportRes */
1360
static int hf_qsig_sms_qsig_sms_SmsCommandArg_PDU;  /* SmsCommandArg */
1361
static int hf_qsig_sms_qsig_sms_SmsCommandRes_PDU;  /* SmsCommandRes */
1362
static int hf_qsig_sms_qsig_sms_ScAlertArg_PDU;   /* ScAlertArg */
1363
static int hf_qsig_sms_qsig_sms_DummyRes_PDU;     /* DummyRes */
1364
static int hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU;  /* PAR_smsDeliverError */
1365
static int hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU;  /* PAR_smsSubmitError */
1366
static int hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU;  /* PAR_smsStatusReportError */
1367
static int hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU;  /* PAR_smsCommandError */
1368
static int hf_qsig_sms_qsig_sms_SmsExtension_PDU;  /* SmsExtension */
1369
static int hf_qsig_sms_destinationAddress;        /* PartyNumber */
1370
static int hf_qsig_sms_originatingAddress;        /* PartyNumber */
1371
static int hf_qsig_sms_messageReference;          /* MessageReference */
1372
static int hf_qsig_sms_smSubmitParameter;         /* SmSubmitParameter */
1373
static int hf_qsig_sms_userData;                  /* UserData */
1374
static int hf_qsig_sms_smsExtension;              /* SmsExtension */
1375
static int hf_qsig_sms_serviceCentreTimeStamp;    /* ServiceCentreTimeStamp */
1376
static int hf_qsig_sms_protocolIdentifier;        /* ProtocolIdentifier */
1377
static int hf_qsig_sms_originatingName;           /* Name */
1378
static int hf_qsig_sms_smDeliverParameter;        /* SmDeliverParameter */
1379
static int hf_qsig_sms_smsDeliverResponseChoice;  /* SmsDeliverResChoice */
1380
static int hf_qsig_sms_dischargeTime;             /* DischargeTime */
1381
static int hf_qsig_sms_recipientAddress;          /* PartyNumber */
1382
static int hf_qsig_sms_recipientName;             /* Name */
1383
static int hf_qsig_sms_status;                    /* Status */
1384
static int hf_qsig_sms_priority;                  /* BOOLEAN */
1385
static int hf_qsig_sms_moreMessagesToSend;        /* BOOLEAN */
1386
static int hf_qsig_sms_statusReportQualifier;     /* BOOLEAN */
1387
static int hf_qsig_sms_smsStatusReportResponseChoice;  /* SmsStatusReportResponseChoice */
1388
static int hf_qsig_sms_messageNumber;             /* MessageReference */
1389
static int hf_qsig_sms_commandType;               /* CommandType */
1390
static int hf_qsig_sms_commandData;               /* CommandData */
1391
static int hf_qsig_sms_statusReportRequest;       /* BOOLEAN */
1392
static int hf_qsig_sms_null;                      /* NULL */
1393
static int hf_qsig_sms_validityPeriod;            /* ValidityPeriod */
1394
static int hf_qsig_sms_replyPath;                 /* BOOLEAN */
1395
static int hf_qsig_sms_rejectDuplicates;          /* BOOLEAN */
1396
static int hf_qsig_sms_statusReportIndication;    /* BOOLEAN */
1397
static int hf_qsig_sms_resChoiceSeq;              /* ResChoiceSeq */
1398
static int hf_qsig_sms_single;                    /* Extension */
1399
static int hf_qsig_sms_multiple;                  /* SEQUENCE_OF_Extension */
1400
static int hf_qsig_sms_multiple_item;             /* Extension */
1401
static int hf_qsig_sms_validityPeriodRel;         /* ValidityPeriodRel */
1402
static int hf_qsig_sms_validityPeriodAbs;         /* ValidityPeriodAbs */
1403
static int hf_qsig_sms_validityPeriodEnh;         /* ValidityPeriodEnh */
1404
static int hf_qsig_sms_singleShotSM;              /* BOOLEAN */
1405
static int hf_qsig_sms_enhancedVP;                /* EnhancedVP */
1406
static int hf_qsig_sms_validityPeriodSec;         /* INTEGER_0_255 */
1407
static int hf_qsig_sms_validityPeriodSemi;        /* ValidityPeriodSemi */
1408
static int hf_qsig_sms_userDataHeader;            /* UserDataHeader */
1409
static int hf_qsig_sms_class;                     /* INTEGER_0_3 */
1410
static int hf_qsig_sms_compressed;                /* BOOLEAN */
1411
static int hf_qsig_sms_shortMessageText;          /* ShortMessageText */
1412
static int hf_qsig_sms_shortMessageTextType;      /* ShortMessageTextType */
1413
static int hf_qsig_sms_shortMessageTextData;      /* ShortMessageTextData */
1414
static int hf_qsig_sms_UserDataHeader_item;       /* UserDataHeaderChoice */
1415
static int hf_qsig_sms_smscControlParameterHeader;  /* SmscControlParameterHeader */
1416
static int hf_qsig_sms_concatenated8BitSMHeader;  /* Concatenated8BitSMHeader */
1417
static int hf_qsig_sms_concatenated16BitSMHeader;  /* Concatenated16BitSMHeader */
1418
static int hf_qsig_sms_applicationPort8BitHeader;  /* ApplicationPort8BitHeader */
1419
static int hf_qsig_sms_applicationPort16BitHeader;  /* ApplicationPort16BitHeader */
1420
static int hf_qsig_sms_dataHeaderSourceIndicator;  /* DataHeaderSourceIndicator */
1421
static int hf_qsig_sms_wirelessControlHeader;     /* WirelessControlHeader */
1422
static int hf_qsig_sms_genericUserValue;          /* GenericUserValue */
1423
static int hf_qsig_sms_concatenated8BitSMReferenceNumber;  /* INTEGER_0_255 */
1424
static int hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM;  /* INTEGER_0_255 */
1425
static int hf_qsig_sms_sequenceNumberOf8BitSM;    /* INTEGER_0_255 */
1426
static int hf_qsig_sms_concatenated16BitSMReferenceNumber;  /* INTEGER_0_65536 */
1427
static int hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM;  /* INTEGER_0_255 */
1428
static int hf_qsig_sms_sequenceNumberOf16BitSM;   /* INTEGER_0_255 */
1429
static int hf_qsig_sms_destination8BitPort;       /* INTEGER_0_255 */
1430
static int hf_qsig_sms_originator8BitPort;        /* INTEGER_0_255 */
1431
static int hf_qsig_sms_destination16BitPort;      /* INTEGER_0_65536 */
1432
static int hf_qsig_sms_originator16BitPort;       /* INTEGER_0_65536 */
1433
static int hf_qsig_sms_parameterValue;            /* INTEGER_0_255 */
1434
static int hf_qsig_sms_genericUserData;           /* OCTET_STRING */
1435
static int hf_qsig_sms_failureCause;              /* FailureCause */
1436
static int hf_qsig_sms_scAddressSaved;            /* BOOLEAN */
1437
/* named bits */
1438
static int hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted;
1439
static int hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError;
1440
static int hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying;
1441
static int hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying;
1442
static int hf_qsig_sms_SmscControlParameterHeader_spare_bit4;
1443
static int hf_qsig_sms_SmscControlParameterHeader_spare_bit5;
1444
static int hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM;
1445
static int hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR;
1446
1447
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
1448
1449
static int hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU;  /* MCRequestArg */
1450
static int hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU;  /* MCRequestResult */
1451
static int hf_qsig_mcr_qsig_mcr_MCInformArg_PDU;  /* MCInformArg */
1452
static int hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU;  /* MCAlertingArg */
1453
static int hf_qsig_mcr_qsig_mcr_Extension_PDU;    /* Extension */
1454
static int hf_qsig_mcr_callType;                  /* CallType */
1455
static int hf_qsig_mcr_retainOrigCall;            /* BOOLEAN */
1456
static int hf_qsig_mcr_destinationAddress;        /* PresentedAddressUnscreened */
1457
static int hf_qsig_mcr_requestingAddress;         /* PresentedAddressUnscreened */
1458
static int hf_qsig_mcr_cooperatingAddress;        /* PresentedAddressUnscreened */
1459
static int hf_qsig_mcr_correlation;               /* Correlation */
1460
static int hf_qsig_mcr_extensions;                /* MCRExtensions */
1461
static int hf_qsig_mcr_basicService;              /* BasicService */
1462
static int hf_qsig_mcr_cisc;                      /* NULL */
1463
static int hf_qsig_mcr_correlationData;           /* CallIdentity */
1464
static int hf_qsig_mcr_correlationReason;         /* CorrelationReason */
1465
static int hf_qsig_mcr_none;                      /* NULL */
1466
static int hf_qsig_mcr_single;                    /* Extension */
1467
static int hf_qsig_mcr_multiple;                  /* SEQUENCE_OF_Extension */
1468
static int hf_qsig_mcr_multiple_item;             /* Extension */
1469
1470
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
1471
1472
static int hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU;  /* MCMNewMsgArg */
1473
static int hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU;  /* MCMDummyRes */
1474
static int hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU;  /* MCMNoNewMsgArg */
1475
static int hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU;  /* MCMUpdateArg */
1476
static int hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU;  /* MCMUpdateReqArg */
1477
static int hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU;  /* MCMUpdateReqRes */
1478
static int hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU;  /* MCMServiceArg */
1479
static int hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU;  /* MCMInterrogateArg */
1480
static int hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU;  /* MCMInterrogateRes */
1481
static int hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU;  /* MCMailboxFullArg */
1482
static int hf_qsig_mcm_qsig_mcm_Extension_PDU;    /* Extension */
1483
static int hf_qsig_mcm_partyInfo;                 /* PartyInfo */
1484
static int hf_qsig_mcm_mailboxFullFor;            /* MailboxFullFor */
1485
static int hf_qsig_mcm_extensions;                /* MCMExtensions */
1486
static int hf_qsig_mcm_MailboxFullFor_item;       /* MailboxFullPar */
1487
static int hf_qsig_mcm_messageType;               /* MessageType */
1488
static int hf_qsig_mcm_capacityReached;           /* INTEGER_0_100 */
1489
static int hf_qsig_mcm_mCMChange;                 /* MCMChange */
1490
static int hf_qsig_mcm_activateMCM;               /* SEQUENCE_OF_MCMServiceInfo */
1491
static int hf_qsig_mcm_activateMCM_item;          /* MCMServiceInfo */
1492
static int hf_qsig_mcm_deactivateMCM;             /* SEQUENCE_OF_MessageType */
1493
static int hf_qsig_mcm_deactivateMCM_item;        /* MessageType */
1494
static int hf_qsig_mcm_setToDefaultValues;        /* NULL */
1495
static int hf_qsig_mcm_mCMModeNew;                /* MCMMode */
1496
static int hf_qsig_mcm_mCMModeRetrieved;          /* MCMMode */
1497
static int hf_qsig_mcm_interrogateInfo;           /* SEQUENCE_OF_MessageType */
1498
static int hf_qsig_mcm_interrogateInfo_item;      /* MessageType */
1499
static int hf_qsig_mcm_interrogateResult;         /* SEQUENCE_OF_MCMServiceInfo */
1500
static int hf_qsig_mcm_interrogateResult_item;    /* MCMServiceInfo */
1501
static int hf_qsig_mcm_servedUserNr;              /* PartyNumber */
1502
static int hf_qsig_mcm_specificMessageType;       /* MessageType */
1503
static int hf_qsig_mcm_msgCentreId;               /* MsgCentreId */
1504
static int hf_qsig_mcm_nrOfMessages;              /* NrOfMessages */
1505
static int hf_qsig_mcm_originatingNr;             /* PartyNumber */
1506
static int hf_qsig_mcm_timestamp;                 /* TimeStamp */
1507
static int hf_qsig_mcm_priority;                  /* INTEGER_0_9 */
1508
static int hf_qsig_mcm_argumentExtMCMNew;         /* MCMNewArgumentExt */
1509
static int hf_qsig_mcm_extension;                 /* Extension */
1510
static int hf_qsig_mcm_multipleExtension;         /* SEQUENCE_OF_Extension */
1511
static int hf_qsig_mcm_multipleExtension_item;    /* Extension */
1512
static int hf_qsig_mcm_argumentExtMCMNoNew;       /* MCMNoNewArgumentExt */
1513
static int hf_qsig_mcm_updateInfo;                /* UpdateInfo */
1514
static int hf_qsig_mcm_moreInfoFollows;           /* BOOLEAN */
1515
static int hf_qsig_mcm_argumentExtMCMUpdArg;      /* MCMUpdArgArgumentExt */
1516
static int hf_qsig_mcm_MCMUpdateReqRes_item;      /* MCMUpdateReqResElt */
1517
static int hf_qsig_mcm_argumentExtMCMUpdRes;      /* MCMUpdResArgumentExt */
1518
static int hf_qsig_mcm_messageCentreID;           /* MsgCentreId */
1519
static int hf_qsig_mcm_newMsgInfoOnly;            /* MessageInfo */
1520
static int hf_qsig_mcm_retrievedMsgInfoOnly;      /* MessageInfo */
1521
static int hf_qsig_mcm_allMsgInfo;                /* AllMsgInfo */
1522
static int hf_qsig_mcm_newMsgInfo;                /* MessageInfo */
1523
static int hf_qsig_mcm_retrievedMsgInfo;          /* MessageInfo */
1524
static int hf_qsig_mcm_completeInfo;              /* CompleteInfo */
1525
static int hf_qsig_mcm_compressedInfo;            /* CompressedInfo */
1526
static int hf_qsig_mcm_noMsgsOfMsgType;           /* NULL */
1527
static int hf_qsig_mcm_CompleteInfo_item;         /* AddressHeader */
1528
static int hf_qsig_mcm_originatorNr;              /* PartyNumber */
1529
static int hf_qsig_mcm_timeStamp;                 /* TimeStamp */
1530
static int hf_qsig_mcm_ahpriority;                /* Priority */
1531
static int hf_qsig_mcm_lastTimeStamp;             /* TimeStamp */
1532
static int hf_qsig_mcm_highestPriority;           /* Priority */
1533
static int hf_qsig_mcm_integer;                   /* INTEGER_0_65535 */
1534
static int hf_qsig_mcm_partyNumber;               /* PartyNumber */
1535
static int hf_qsig_mcm_numericString;             /* NumericString_SIZE_1_10 */
1536
static int hf_qsig_mcm_none;                      /* NULL */
1537
1538
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
1539
1540
static int hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU;  /* MIDMailboxAuthArg */
1541
static int hf_qsig_mid_qsig_mid_MIDDummyRes_PDU;  /* MIDDummyRes */
1542
static int hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU;  /* MIDMailboxIDArg */
1543
static int hf_qsig_mid_qsig_mid_Extension_PDU;    /* Extension */
1544
static int hf_qsig_mid_partyInfo;                 /* PartyInfo */
1545
static int hf_qsig_mid_servedUserName;            /* Name */
1546
static int hf_qsig_mid_mailBox;                   /* String */
1547
static int hf_qsig_mid_password;                  /* String */
1548
static int hf_qsig_mid_extensions;                /* MIDExtensions */
1549
static int hf_qsig_mid_servedUserNr;              /* PresentedAddressUnscreened */
1550
static int hf_qsig_mid_messageType;               /* MessageType */
1551
static int hf_qsig_mid_messageCentreID;           /* MsgCentreId */
1552
static int hf_qsig_mid_stringBmp;                 /* BMPString */
1553
static int hf_qsig_mid_stringUtf8;                /* UTF8String */
1554
static int hf_qsig_mid_none;                      /* NULL */
1555
static int hf_qsig_mid_extension;                 /* Extension */
1556
static int hf_qsig_mid_multipleExtension;         /* SEQUENCE_OF_Extension */
1557
static int hf_qsig_mid_multipleExtension_item;    /* Extension */
1558
1559
static int *hf_qsig_ie_type_arr[] = {
1560
  NULL,
1561
  NULL,
1562
  NULL,
1563
  NULL,
1564
  &hf_qsig_ie_type_cs4,
1565
  &hf_qsig_ie_type_cs5,
1566
  NULL,
1567
  NULL,
1568
};
1569
1570
/* Initialize the subtree pointers */
1571
static int ett_qsig;
1572
static int ett_qsig_ie;
1573
static int ett_qsig_unknown_extension;
1574
1575
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
1576
1577
static int ett_qsig_Extension;
1578
static int ett_qsig_PresentedAddressScreened;
1579
static int ett_qsig_PresentedAddressUnscreened;
1580
static int ett_qsig_PresentedNumberScreened;
1581
static int ett_qsig_PresentedNumberUnscreened;
1582
static int ett_qsig_AddressScreened;
1583
static int ett_qsig_NumberScreened;
1584
static int ett_qsig_Address;
1585
static int ett_qsig_PartyNumber;
1586
static int ett_qsig_PublicPartyNumber;
1587
static int ett_qsig_PrivatePartyNumber;
1588
static int ett_qsig_PartySubaddress;
1589
static int ett_qsig_UserSpecifiedSubaddress;
1590
1591
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
1592
1593
static int ett_qsig_na_NameArg;
1594
static int ett_qsig_na_T_nameSequence;
1595
static int ett_qsig_na_NameExtension;
1596
static int ett_qsig_na_SEQUENCE_OF_Extension;
1597
static int ett_qsig_na_Name;
1598
static int ett_qsig_na_NamePresentationAllowed;
1599
static int ett_qsig_na_NamePresentationRestricted;
1600
static int ett_qsig_na_NameSet;
1601
1602
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
1603
1604
static int ett_qsig_cf_ARG_activateDiversionQ;
1605
static int ett_qsig_cf_ADExtension;
1606
static int ett_qsig_cf_SEQUENCE_OF_Extension;
1607
static int ett_qsig_cf_RES_activateDiversionQ;
1608
static int ett_qsig_cf_ARG_deactivateDiversionQ;
1609
static int ett_qsig_cf_DDExtension;
1610
static int ett_qsig_cf_RES_deactivateDiversionQ;
1611
static int ett_qsig_cf_ARG_interrogateDiversionQ;
1612
static int ett_qsig_cf_IDExtension;
1613
static int ett_qsig_cf_ARG_checkRestriction;
1614
static int ett_qsig_cf_CHRExtension;
1615
static int ett_qsig_cf_RES_checkRestriction;
1616
static int ett_qsig_cf_ARG_callRerouteing;
1617
static int ett_qsig_cf_CRRExtension;
1618
static int ett_qsig_cf_RES_callRerouteing;
1619
static int ett_qsig_cf_ARG_divertingLegInformation1;
1620
static int ett_qsig_cf_DLI1Extension;
1621
static int ett_qsig_cf_ARG_divertingLegInformation2;
1622
static int ett_qsig_cf_DLI2Extension;
1623
static int ett_qsig_cf_ARG_divertingLegInformation3;
1624
static int ett_qsig_cf_DLI3Extension;
1625
static int ett_qsig_cf_ARG_cfnrDivertedLegFailed;
1626
static int ett_qsig_cf_IntResultList;
1627
static int ett_qsig_cf_IntResult;
1628
static int ett_qsig_cf_IRExtension;
1629
1630
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
1631
1632
static int ett_qsig_pr_PRProposeArg;
1633
static int ett_qsig_pr_PRPExtension;
1634
static int ett_qsig_pr_SEQUENCE_OF_Extension;
1635
static int ett_qsig_pr_PRSetupArg;
1636
static int ett_qsig_pr_PRSExtension;
1637
static int ett_qsig_pr_PRRetainArg;
1638
static int ett_qsig_pr_PRRExtension;
1639
static int ett_qsig_pr_DummyResult;
1640
static int ett_qsig_pr_DummyArg;
1641
1642
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
1643
1644
static int ett_qsig_ct_DummyArg;
1645
static int ett_qsig_ct_SEQUENCE_OF_Extension;
1646
static int ett_qsig_ct_DummyRes;
1647
static int ett_qsig_ct_CTIdentifyRes;
1648
static int ett_qsig_ct_T_resultExtension;
1649
static int ett_qsig_ct_CTInitiateArg;
1650
static int ett_qsig_ct_CTIargumentExtension;
1651
static int ett_qsig_ct_CTSetupArg;
1652
static int ett_qsig_ct_CTSargumentExtension;
1653
static int ett_qsig_ct_CTActiveArg;
1654
static int ett_qsig_ct_CTAargumentExtension;
1655
static int ett_qsig_ct_CTCompleteArg;
1656
static int ett_qsig_ct_CTCargumentExtension;
1657
static int ett_qsig_ct_CTUpdateArg;
1658
static int ett_qsig_ct_CTUargumentExtension;
1659
static int ett_qsig_ct_SubaddressTransferArg;
1660
static int ett_qsig_ct_STargumentExtension;
1661
1662
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
1663
1664
static int ett_qsig_cc_CcRequestArg;
1665
static int ett_qsig_cc_CcRequestRes;
1666
static int ett_qsig_cc_CcOptionalArg;
1667
static int ett_qsig_cc_T_fullArg;
1668
static int ett_qsig_cc_CcExtension;
1669
static int ett_qsig_cc_SEQUENCE_OF_Extension;
1670
1671
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
1672
1673
static int ett_qsig_co_PathRetainArg;
1674
static int ett_qsig_co_T_extendedServiceList;
1675
static int ett_qsig_co_ServiceAvailableArg;
1676
static int ett_qsig_co_T_extendedServiceList_01;
1677
static int ett_qsig_co_ServiceList;
1678
static int ett_qsig_co_DummyArg;
1679
static int ett_qsig_co_SEQUENCE_OF_Extension;
1680
static int ett_qsig_co_DummyRes;
1681
1682
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
1683
1684
static int ett_qsig_dnd_DummyArg;
1685
static int ett_qsig_dnd_SEQUENCE_OF_Extension;
1686
static int ett_qsig_dnd_DummyRes;
1687
static int ett_qsig_dnd_DNDActivateArg;
1688
static int ett_qsig_dnd_DNDAargumentExtension;
1689
static int ett_qsig_dnd_DNDActivateRes;
1690
static int ett_qsig_dnd_T_status;
1691
static int ett_qsig_dnd_T_status_item;
1692
static int ett_qsig_dnd_T_resultExtension;
1693
static int ett_qsig_dnd_DNDDeactivateArg;
1694
static int ett_qsig_dnd_DNDDargumentExtension;
1695
static int ett_qsig_dnd_DNDInterrogateArg;
1696
static int ett_qsig_dnd_DNDIargumentExtension;
1697
static int ett_qsig_dnd_DNDInterrogateRes;
1698
static int ett_qsig_dnd_T_status_01;
1699
static int ett_qsig_dnd_T_status_item_01;
1700
static int ett_qsig_dnd_T_resultExtension_01;
1701
static int ett_qsig_dnd_DNDOverrideArg;
1702
static int ett_qsig_dnd_DNDOargumentExtension;
1703
static int ett_qsig_dnd_PathRetainArg;
1704
static int ett_qsig_dnd_T_extendedServiceList;
1705
static int ett_qsig_dnd_ServiceAvailableArg;
1706
static int ett_qsig_dnd_T_extendedServiceList_01;
1707
static int ett_qsig_dnd_ServiceList;
1708
1709
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
1710
1711
static int ett_qsig_ci_PathRetainArg;
1712
static int ett_qsig_ci_T_extendedServiceList;
1713
static int ett_qsig_ci_ServiceAvailableArg;
1714
static int ett_qsig_ci_T_extendedServiceList_01;
1715
static int ett_qsig_ci_ServiceList;
1716
static int ett_qsig_ci_DummyArg;
1717
static int ett_qsig_ci_SEQUENCE_OF_Extension;
1718
static int ett_qsig_ci_DummyRes;
1719
static int ett_qsig_ci_CIRequestArg;
1720
static int ett_qsig_ci_T_argumentExtension;
1721
static int ett_qsig_ci_CIRequestRes;
1722
static int ett_qsig_ci_T_resultExtension;
1723
static int ett_qsig_ci_CIGetCIPLRes;
1724
static int ett_qsig_ci_T_resultExtension_01;
1725
1726
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
1727
1728
static int ett_qsig_aoc_AocRateArg;
1729
static int ett_qsig_aoc_T_aocRate;
1730
static int ett_qsig_aoc_T_rateArgExtension;
1731
static int ett_qsig_aoc_SEQUENCE_OF_Extension;
1732
static int ett_qsig_aoc_AocInterimArg;
1733
static int ett_qsig_aoc_T_interimCharge;
1734
static int ett_qsig_aoc_T_specificCurrency;
1735
static int ett_qsig_aoc_T_interimArgExtension;
1736
static int ett_qsig_aoc_AocFinalArg;
1737
static int ett_qsig_aoc_T_finalCharge;
1738
static int ett_qsig_aoc_T_specificCurrency_01;
1739
static int ett_qsig_aoc_T_finalArgExtension;
1740
static int ett_qsig_aoc_AOCSCurrencyInfoList;
1741
static int ett_qsig_aoc_AOCSCurrencyInfo;
1742
static int ett_qsig_aoc_T_rateType;
1743
static int ett_qsig_aoc_DurationCurrency;
1744
static int ett_qsig_aoc_FlatRateCurrency;
1745
static int ett_qsig_aoc_VolumeRateCurrency;
1746
static int ett_qsig_aoc_RecordedCurrency;
1747
static int ett_qsig_aoc_Amount;
1748
static int ett_qsig_aoc_Time;
1749
static int ett_qsig_aoc_ChargingAssociation;
1750
static int ett_qsig_aoc_ChargeRequestArg;
1751
static int ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination;
1752
static int ett_qsig_aoc_T_chargeReqArgExtension;
1753
static int ett_qsig_aoc_ChargeRequestRes;
1754
static int ett_qsig_aoc_T_chargeReqResExtension;
1755
static int ett_qsig_aoc_DummyArg;
1756
static int ett_qsig_aoc_AocCompleteArg;
1757
static int ett_qsig_aoc_T_completeArgExtension;
1758
static int ett_qsig_aoc_AocCompleteRes;
1759
static int ett_qsig_aoc_T_completeResExtension;
1760
static int ett_qsig_aoc_AocDivChargeReqArg;
1761
static int ett_qsig_aoc_T_aocDivChargeReqArgExt;
1762
1763
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
1764
1765
static int ett_qsig_re_ReAlertingArg;
1766
static int ett_qsig_re_T_argumentExtension;
1767
static int ett_qsig_re_SEQUENCE_OF_Extension;
1768
static int ett_qsig_re_ReAnswerArg;
1769
static int ett_qsig_re_T_argumentExtension_01;
1770
1771
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
1772
1773
static int ett_qsig_sync_SynchronizationReqArg;
1774
static int ett_qsig_sync_SynchronizationReqRes;
1775
static int ett_qsig_sync_SynchronizationInfoArg;
1776
static int ett_qsig_sync_ArgExtension;
1777
static int ett_qsig_sync_SEQUENCE_OF_Extension;
1778
1779
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
1780
1781
static int ett_qsig_cint_CintInformation1Arg;
1782
static int ett_qsig_cint_CintInformation2Arg;
1783
static int ett_qsig_cint_CintCondArg;
1784
static int ett_qsig_cint_CintExtension;
1785
static int ett_qsig_cint_SEQUENCE_OF_Extension;
1786
1787
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
1788
1789
static int ett_qsig_cmn_CmnArg;
1790
static int ett_qsig_cmn_T_extension;
1791
static int ett_qsig_cmn_SEQUENCE_OF_Extension;
1792
static int ett_qsig_cmn_DummyArg;
1793
static int ett_qsig_cmn_FeatureIdList;
1794
static int ett_qsig_cmn_EquipmentId;
1795
1796
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
1797
1798
static int ett_qsig_cpi_CPIRequestArg;
1799
static int ett_qsig_cpi_T_argumentExtension;
1800
static int ett_qsig_cpi_SEQUENCE_OF_Extension;
1801
static int ett_qsig_cpi_CPIPRequestArg;
1802
static int ett_qsig_cpi_T_argumentExtension_01;
1803
1804
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
1805
1806
static int ett_qsig_pumr_PumRegistrArg;
1807
static int ett_qsig_pumr_RpumUserId;
1808
static int ett_qsig_pumr_T_userPin;
1809
static int ett_qsig_pumr_PumRegistrRes;
1810
static int ett_qsig_pumr_DummyRes;
1811
static int ett_qsig_pumr_SEQUENCE_OF_Extension;
1812
static int ett_qsig_pumr_PumDelRegArg;
1813
static int ett_qsig_pumr_XpumUserId;
1814
static int ett_qsig_pumr_PumDe_regArg;
1815
static int ett_qsig_pumr_DpumUserId;
1816
static int ett_qsig_pumr_T_userPin_01;
1817
static int ett_qsig_pumr_PumInterrogArg;
1818
static int ett_qsig_pumr_IpumUserId;
1819
static int ett_qsig_pumr_T_userPin_02;
1820
static int ett_qsig_pumr_PumInterrogRes;
1821
static int ett_qsig_pumr_PumInterrogRes_item;
1822
static int ett_qsig_pumr_SessionParams;
1823
static int ett_qsig_pumr_PumrExtension;
1824
1825
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
1826
1827
static int ett_qsig_pumch_EnquiryArg;
1828
static int ett_qsig_pumch_DivertArg;
1829
static int ett_qsig_pumch_InformArg;
1830
static int ett_qsig_pumch_EnquiryRes;
1831
static int ett_qsig_pumch_CurrLocation;
1832
static int ett_qsig_pumch_CfuActivated;
1833
static int ett_qsig_pumch_DummyRes;
1834
static int ett_qsig_pumch_SEQUENCE_OF_Extension;
1835
static int ett_qsig_pumch_PumiExtension;
1836
static int ett_qsig_pumch_PumIdentity;
1837
static int ett_qsig_pumch_T_both;
1838
static int ett_qsig_pumch_PumoArg;
1839
static int ett_qsig_pumch_T_pumoaextension;
1840
1841
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
1842
1843
static int ett_qsig_ssct_DummyArg;
1844
static int ett_qsig_ssct_SEQUENCE_OF_Extension;
1845
static int ett_qsig_ssct_DummyRes;
1846
static int ett_qsig_ssct_SSCTInitiateArg;
1847
static int ett_qsig_ssct_SSCTIargumentExtension;
1848
static int ett_qsig_ssct_SSCTSetupArg;
1849
static int ett_qsig_ssct_SSCTSargumentExtension;
1850
static int ett_qsig_ssct_SSCTDigitInfoArg;
1851
static int ett_qsig_ssct_SSCTDargumentExtension;
1852
1853
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
1854
1855
static int ett_qsig_wtmlr_LocUpdArg;
1856
static int ett_qsig_wtmlr_DummyRes;
1857
static int ett_qsig_wtmlr_SEQUENCE_OF_Extension;
1858
static int ett_qsig_wtmlr_LocDelArg;
1859
static int ett_qsig_wtmlr_LocDeRegArg;
1860
static int ett_qsig_wtmlr_PisnEnqArg;
1861
static int ett_qsig_wtmlr_PisnEnqRes;
1862
static int ett_qsig_wtmlr_GetRRCInfArg;
1863
static int ett_qsig_wtmlr_GetRRCInfRes;
1864
static int ett_qsig_wtmlr_LocInfoCheckArg;
1865
static int ett_qsig_wtmlr_LocInfoCheckRes;
1866
static int ett_qsig_wtmlr_WtmUserId;
1867
static int ett_qsig_wtmlr_LrExtension;
1868
1869
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
1870
1871
static int ett_qsig_wtmch_EnquiryArg;
1872
static int ett_qsig_wtmch_DivertArg;
1873
static int ett_qsig_wtmch_InformArg;
1874
static int ett_qsig_wtmch_EnquiryRes;
1875
static int ett_qsig_wtmch_CurrLocation;
1876
static int ett_qsig_wtmch_CfuActivated;
1877
static int ett_qsig_wtmch_DummyRes;
1878
static int ett_qsig_wtmch_SEQUENCE_OF_Extension;
1879
static int ett_qsig_wtmch_WtmiExtension;
1880
static int ett_qsig_wtmch_WtmIdentity;
1881
static int ett_qsig_wtmch_T_both;
1882
static int ett_qsig_wtmch_WtmoArg;
1883
static int ett_qsig_wtmch_T_wtmoaextension;
1884
1885
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
1886
1887
static int ett_qsig_wtmau_AuthWtmArg;
1888
static int ett_qsig_wtmau_AuthWtmRes;
1889
static int ett_qsig_wtmau_WtatParamArg;
1890
static int ett_qsig_wtmau_WtatParamRes;
1891
static int ett_qsig_wtmau_WtanParamArg;
1892
static int ett_qsig_wtmau_WtmUserId;
1893
static int ett_qsig_wtmau_WtanParamRes;
1894
static int ett_qsig_wtmau_ARG_transferAuthParam;
1895
static int ett_qsig_wtmau_WtatParamInfo;
1896
static int ett_qsig_wtmau_T_wtatParamInfoChoice;
1897
static int ett_qsig_wtmau_WtanParamInfo;
1898
static int ett_qsig_wtmau_AuthSessionKeyInfo;
1899
static int ett_qsig_wtmau_CalcWtatInfo;
1900
static int ett_qsig_wtmau_CalcWtatInfoUnit;
1901
static int ett_qsig_wtmau_CalcWtanInfo;
1902
static int ett_qsig_wtmau_DummyExtension;
1903
static int ett_qsig_wtmau_SEQUENCE_OF_Extension;
1904
static int ett_qsig_wtmau_AuthAlgorithm;
1905
1906
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
1907
1908
static int ett_qsig_sd_DisplayArg;
1909
static int ett_qsig_sd_DisplayString;
1910
static int ett_qsig_sd_KeypadArg;
1911
static int ett_qsig_sd_SDExtension;
1912
static int ett_qsig_sd_SEQUENCE_OF_Extension;
1913
1914
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
1915
1916
static int ett_qsig_cidl_CallIdentificationAssignArg;
1917
static int ett_qsig_cidl_CallIdentificationUpdateArg;
1918
static int ett_qsig_cidl_CallIdentificationData;
1919
static int ett_qsig_cidl_T_linkageID;
1920
static int ett_qsig_cidl_ExtensionType;
1921
static int ett_qsig_cidl_SEQUENCE_OF_Extension;
1922
1923
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
1924
1925
static int ett_qsig_sms_SmsSubmitArg;
1926
static int ett_qsig_sms_SmsSubmitRes;
1927
static int ett_qsig_sms_SmsDeliverArg;
1928
static int ett_qsig_sms_SmsDeliverRes;
1929
static int ett_qsig_sms_SmsStatusReportArg;
1930
static int ett_qsig_sms_SmsStatusReportRes;
1931
static int ett_qsig_sms_SmsCommandArg;
1932
static int ett_qsig_sms_SmsCommandRes;
1933
static int ett_qsig_sms_ScAlertArg;
1934
static int ett_qsig_sms_DummyRes;
1935
static int ett_qsig_sms_SmSubmitParameter;
1936
static int ett_qsig_sms_SmDeliverParameter;
1937
static int ett_qsig_sms_SmsDeliverResChoice;
1938
static int ett_qsig_sms_ResChoiceSeq;
1939
static int ett_qsig_sms_SmsStatusReportResponseChoice;
1940
static int ett_qsig_sms_SmsExtension;
1941
static int ett_qsig_sms_SEQUENCE_OF_Extension;
1942
static int ett_qsig_sms_ValidityPeriod;
1943
static int ett_qsig_sms_ValidityPeriodEnh;
1944
static int ett_qsig_sms_EnhancedVP;
1945
static int ett_qsig_sms_UserData;
1946
static int ett_qsig_sms_ShortMessageText;
1947
static int ett_qsig_sms_UserDataHeader;
1948
static int ett_qsig_sms_UserDataHeaderChoice;
1949
static int ett_qsig_sms_SmscControlParameterHeader;
1950
static int ett_qsig_sms_Concatenated8BitSMHeader;
1951
static int ett_qsig_sms_Concatenated16BitSMHeader;
1952
static int ett_qsig_sms_ApplicationPort8BitHeader;
1953
static int ett_qsig_sms_ApplicationPort16BitHeader;
1954
static int ett_qsig_sms_GenericUserValue;
1955
static int ett_qsig_sms_PAR_smsDeliverError;
1956
static int ett_qsig_sms_PAR_smsSubmitError;
1957
static int ett_qsig_sms_PAR_smsStatusReportError;
1958
static int ett_qsig_sms_PAR_smsCommandError;
1959
1960
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
1961
1962
static int ett_qsig_mcr_MCRequestArg;
1963
static int ett_qsig_mcr_MCRequestResult;
1964
static int ett_qsig_mcr_MCInformArg;
1965
static int ett_qsig_mcr_MCAlertingArg;
1966
static int ett_qsig_mcr_CallType;
1967
static int ett_qsig_mcr_Correlation;
1968
static int ett_qsig_mcr_MCRExtensions;
1969
static int ett_qsig_mcr_SEQUENCE_OF_Extension;
1970
1971
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
1972
1973
static int ett_qsig_mcm_MCMailboxFullArg;
1974
static int ett_qsig_mcm_MailboxFullFor;
1975
static int ett_qsig_mcm_MailboxFullPar;
1976
static int ett_qsig_mcm_MCMServiceArg;
1977
static int ett_qsig_mcm_MCMChange;
1978
static int ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo;
1979
static int ett_qsig_mcm_SEQUENCE_OF_MessageType;
1980
static int ett_qsig_mcm_MCMServiceInfo;
1981
static int ett_qsig_mcm_MCMInterrogateArg;
1982
static int ett_qsig_mcm_MCMInterrogateRes;
1983
static int ett_qsig_mcm_MCMNewMsgArg;
1984
static int ett_qsig_mcm_MCMNewArgumentExt;
1985
static int ett_qsig_mcm_SEQUENCE_OF_Extension;
1986
static int ett_qsig_mcm_MCMNoNewMsgArg;
1987
static int ett_qsig_mcm_MCMNoNewArgumentExt;
1988
static int ett_qsig_mcm_MCMUpdateArg;
1989
static int ett_qsig_mcm_MCMUpdateReqArg;
1990
static int ett_qsig_mcm_MCMUpdArgArgumentExt;
1991
static int ett_qsig_mcm_MCMUpdateReqRes;
1992
static int ett_qsig_mcm_MCMUpdateReqResElt;
1993
static int ett_qsig_mcm_MCMUpdResArgumentExt;
1994
static int ett_qsig_mcm_PartyInfo;
1995
static int ett_qsig_mcm_UpdateInfo;
1996
static int ett_qsig_mcm_AllMsgInfo;
1997
static int ett_qsig_mcm_MessageInfo;
1998
static int ett_qsig_mcm_CompleteInfo;
1999
static int ett_qsig_mcm_AddressHeader;
2000
static int ett_qsig_mcm_CompressedInfo;
2001
static int ett_qsig_mcm_MsgCentreId;
2002
static int ett_qsig_mcm_MCMExtensions;
2003
2004
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
2005
2006
static int ett_qsig_mid_MIDMailboxAuthArg;
2007
static int ett_qsig_mid_MIDMailboxIDArg;
2008
static int ett_qsig_mid_PartyInfo;
2009
static int ett_qsig_mid_String;
2010
static int ett_qsig_mid_MIDExtensions;
2011
static int ett_qsig_mid_SEQUENCE_OF_Extension;
2012
static int ett_cnq_PSS1InformationElement;
2013
2014
/* static expert_field ei_qsig_unsupported_arg_type; */
2015
static expert_field ei_qsig_unsupported_result_type;
2016
static expert_field ei_qsig_unsupported_error_type;
2017
2018
/* Preferences */
2019
2020
/* Subdissectors */
2021
static dissector_handle_t q931_ie_handle;
2022
2023
/* Global variables */
2024
static const char *extension_oid;
2025
2026
/* Dissector tables */
2027
static dissector_table_t extension_dissector_table;
2028
2029
2030
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
2031
2032
/*--- Cyclic dependencies ---*/
2033
2034
/* Extension/extensionArgument -> Extension/extensionArgument */
2035
static unsigned dissect_qsig_T_extensionArgument(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
2036
2037
2038
2039
2040
static unsigned
2041
0
dissect_qsig_T_extensionId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2042
0
  offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &extension_oid);
2043
2044
0
  return offset;
2045
0
}
2046
2047
2048
2049
static unsigned
2050
0
dissect_qsig_T_extensionArgument(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2051
  // Extension/extensionArgument -> Extension/extensionArgument
2052
0
  increment_dissection_depth_by_n(actx->pinfo, 1);
2053
0
    tvbuff_t *next_tvb;
2054
2055
0
    next_tvb = tvb_new_subset_remaining(tvb, offset);
2056
0
    if (!dissector_try_string_with_data(extension_dissector_table, extension_oid, next_tvb, actx->pinfo, tree, false, NULL)) {
2057
0
        proto_tree *next_tree;
2058
2059
0
        next_tree=proto_tree_add_subtree_format(tree, next_tvb, 0, -1, ett_qsig_unknown_extension, NULL,
2060
0
                               "QSIG: Dissector for extension with OID:%s not implemented.", extension_oid);
2061
2062
0
        dissect_unknown_ber(actx->pinfo, next_tvb, offset, next_tree);
2063
0
    }
2064
2065
0
    offset+=tvb_reported_length_remaining(tvb, offset);
2066
2067
0
  decrement_dissection_depth_by_n(actx->pinfo, 1);
2068
0
  return offset;
2069
0
}
2070
2071
2072
static const ber_sequence_t qsig_Extension_sequence[] = {
2073
  { &hf_qsig_extensionId    , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_qsig_T_extensionId },
2074
  { &hf_qsig_extensionArgument, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_T_extensionArgument },
2075
  { NULL, 0, 0, 0, NULL }
2076
};
2077
2078
unsigned
2079
0
dissect_qsig_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2080
0
  extension_oid = NULL;
2081
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2082
0
                                   qsig_Extension_sequence, hf_index, ett_qsig_Extension);
2083
2084
0
  return offset;
2085
0
}
2086
2087
2088
2089
static unsigned
2090
0
dissect_qsig_PSS1InformationElement_U(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2091
0
  tvbuff_t *out_tvb = NULL;
2092
0
  proto_tree *data_tree;
2093
2094
0
  offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2095
0
                                       &out_tvb);
2096
2097
0
  data_tree = proto_item_add_subtree(actx->created_item, ett_cnq_PSS1InformationElement);
2098
0
  if (out_tvb && (tvb_reported_length(out_tvb) > 0) && q931_ie_handle)
2099
0
    call_dissector(q931_ie_handle, out_tvb, actx->pinfo, data_tree);
2100
2101
0
  return offset;
2102
0
}
2103
2104
2105
2106
unsigned
2107
0
dissect_qsig_PSS1InformationElement(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2108
0
  offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2109
0
                                      hf_index, BER_CLASS_APP, 0, true, dissect_qsig_PSS1InformationElement_U);
2110
2111
0
  return offset;
2112
0
}
2113
2114
2115
2116
static unsigned
2117
0
dissect_qsig_NumberDigits(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2118
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
2119
0
                                                        actx, tree, tvb, offset,
2120
0
                                                        1, 20, hf_index, NULL);
2121
2122
0
  return offset;
2123
0
}
2124
2125
2126
static const value_string qsig_PublicTypeOfNumber_vals[] = {
2127
  {   0, "unknown" },
2128
  {   1, "internationalNumber" },
2129
  {   2, "nationalNumber" },
2130
  {   3, "networkSpecificNumber" },
2131
  {   4, "subscriberNumber" },
2132
  {   6, "abbreviatedNumber" },
2133
  { 0, NULL }
2134
};
2135
2136
2137
static unsigned
2138
0
dissect_qsig_PublicTypeOfNumber(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2139
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2140
0
                                  NULL);
2141
2142
0
  return offset;
2143
0
}
2144
2145
2146
static const ber_sequence_t qsig_PublicPartyNumber_sequence[] = {
2147
  { &hf_qsig_publicTypeOfNumber, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_PublicTypeOfNumber },
2148
  { &hf_qsig_publicNumberDigits, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_NumberDigits },
2149
  { NULL, 0, 0, 0, NULL }
2150
};
2151
2152
static unsigned
2153
0
dissect_qsig_PublicPartyNumber(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2154
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2155
0
                                   qsig_PublicPartyNumber_sequence, hf_index, ett_qsig_PublicPartyNumber);
2156
2157
0
  return offset;
2158
0
}
2159
2160
2161
static const value_string qsig_PrivateTypeOfNumber_vals[] = {
2162
  {   0, "unknown" },
2163
  {   1, "level2RegionalNumber" },
2164
  {   2, "level1RegionalNumber" },
2165
  {   3, "pISNSpecificNumber" },
2166
  {   4, "localNumber" },
2167
  {   6, "abbreviatedNumber" },
2168
  { 0, NULL }
2169
};
2170
2171
2172
static unsigned
2173
0
dissect_qsig_PrivateTypeOfNumber(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2174
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2175
0
                                  NULL);
2176
2177
0
  return offset;
2178
0
}
2179
2180
2181
static const ber_sequence_t qsig_PrivatePartyNumber_sequence[] = {
2182
  { &hf_qsig_privateTypeOfNumber, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_PrivateTypeOfNumber },
2183
  { &hf_qsig_privateNumberDigits, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_NumberDigits },
2184
  { NULL, 0, 0, 0, NULL }
2185
};
2186
2187
static unsigned
2188
0
dissect_qsig_PrivatePartyNumber(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2189
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2190
0
                                   qsig_PrivatePartyNumber_sequence, hf_index, ett_qsig_PrivatePartyNumber);
2191
2192
0
  return offset;
2193
0
}
2194
2195
2196
static const value_string qsig_PartyNumber_vals[] = {
2197
  {   0, "unknownPartyNumber" },
2198
  {   1, "publicPartyNumber" },
2199
  {   3, "dataPartyNumber" },
2200
  {   4, "telexPartyNumber" },
2201
  {   5, "privatePartyNumber" },
2202
  {   8, "nationalStandardPartyNumber" },
2203
  { 0, NULL }
2204
};
2205
2206
static const ber_choice_t qsig_PartyNumber_choice[] = {
2207
  {   0, &hf_qsig_unknownPartyNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2208
  {   1, &hf_qsig_publicPartyNumber, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_PublicPartyNumber },
2209
  {   3, &hf_qsig_dataPartyNumber, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2210
  {   4, &hf_qsig_telexPartyNumber, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2211
  {   5, &hf_qsig_privatePartyNumber, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_PrivatePartyNumber },
2212
  {   8, &hf_qsig_nationalStandardPartyNumber, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2213
  { 0, NULL, 0, 0, 0, NULL }
2214
};
2215
2216
static unsigned
2217
0
dissect_qsig_PartyNumber(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2218
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2219
0
                                 qsig_PartyNumber_choice, hf_index, ett_qsig_PartyNumber,
2220
0
                                 NULL);
2221
2222
0
  return offset;
2223
0
}
2224
2225
2226
static const value_string qsig_ScreeningIndicator_vals[] = {
2227
  {   0, "userProvidedNotScreened" },
2228
  {   1, "userProvidedVerifiedAndPassed" },
2229
  {   2, "userProvidedVerifiedAndFailed" },
2230
  {   3, "networkProvided" },
2231
  { 0, NULL }
2232
};
2233
2234
2235
static unsigned
2236
0
dissect_qsig_ScreeningIndicator(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2237
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2238
0
                                  NULL);
2239
2240
0
  return offset;
2241
0
}
2242
2243
2244
2245
static unsigned
2246
0
dissect_qsig_SubaddressInformation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2247
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
2248
0
                                                   1, 20, hf_index, NULL);
2249
2250
0
  return offset;
2251
0
}
2252
2253
2254
2255
static unsigned
2256
0
dissect_qsig_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2257
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2258
2259
0
  return offset;
2260
0
}
2261
2262
2263
static const ber_sequence_t qsig_UserSpecifiedSubaddress_sequence[] = {
2264
  { &hf_qsig_subaddressInformation, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_SubaddressInformation },
2265
  { &hf_qsig_oddCountIndicator, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_BOOLEAN },
2266
  { NULL, 0, 0, 0, NULL }
2267
};
2268
2269
static unsigned
2270
0
dissect_qsig_UserSpecifiedSubaddress(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2271
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2272
0
                                   qsig_UserSpecifiedSubaddress_sequence, hf_index, ett_qsig_UserSpecifiedSubaddress);
2273
2274
0
  return offset;
2275
0
}
2276
2277
2278
2279
static unsigned
2280
0
dissect_qsig_NSAPSubaddress(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2281
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
2282
0
                                                   1, 20, hf_index, NULL);
2283
2284
0
  return offset;
2285
0
}
2286
2287
2288
static const value_string qsig_PartySubaddress_vals[] = {
2289
  {   0, "userSpecifiedSubaddress" },
2290
  {   1, "nSAPSubaddress" },
2291
  { 0, NULL }
2292
};
2293
2294
static const ber_choice_t qsig_PartySubaddress_choice[] = {
2295
  {   0, &hf_qsig_userSpecifiedSubaddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_UserSpecifiedSubaddress },
2296
  {   1, &hf_qsig_nSAPSubaddress , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_NSAPSubaddress },
2297
  { 0, NULL, 0, 0, 0, NULL }
2298
};
2299
2300
static unsigned
2301
0
dissect_qsig_PartySubaddress(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2302
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2303
0
                                 qsig_PartySubaddress_choice, hf_index, ett_qsig_PartySubaddress,
2304
0
                                 NULL);
2305
2306
0
  return offset;
2307
0
}
2308
2309
2310
static const ber_sequence_t qsig_AddressScreened_sequence[] = {
2311
  { &hf_qsig_partyNumber    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2312
  { &hf_qsig_screeningIndicator, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ScreeningIndicator },
2313
  { &hf_qsig_partySubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartySubaddress },
2314
  { NULL, 0, 0, 0, NULL }
2315
};
2316
2317
static unsigned
2318
0
dissect_qsig_AddressScreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2319
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2320
0
                                   qsig_AddressScreened_sequence, hf_index, ett_qsig_AddressScreened);
2321
2322
0
  return offset;
2323
0
}
2324
2325
2326
2327
static unsigned
2328
0
dissect_qsig_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2329
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2330
2331
0
  return offset;
2332
0
}
2333
2334
2335
static const value_string qsig_PresentedAddressScreened_vals[] = {
2336
  {   0, "presentationAllowedAddressS" },
2337
  {   1, "presentationRestricted" },
2338
  {   2, "numberNotAvailableDueToInterworking" },
2339
  {   3, "presentationRestrictedAddressS" },
2340
  { 0, NULL }
2341
};
2342
2343
static const ber_choice_t qsig_PresentedAddressScreened_choice[] = {
2344
  {   0, &hf_qsig_presentationAllowedAddressS, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_AddressScreened },
2345
  {   1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2346
  {   2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2347
  {   3, &hf_qsig_presentationRestrictedAddressS, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_AddressScreened },
2348
  { 0, NULL, 0, 0, 0, NULL }
2349
};
2350
2351
static unsigned
2352
0
dissect_qsig_PresentedAddressScreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2353
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2354
0
                                 qsig_PresentedAddressScreened_choice, hf_index, ett_qsig_PresentedAddressScreened,
2355
0
                                 NULL);
2356
2357
0
  return offset;
2358
0
}
2359
2360
2361
static const ber_sequence_t qsig_Address_sequence[] = {
2362
  { &hf_qsig_partyNumber    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2363
  { &hf_qsig_partySubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartySubaddress },
2364
  { NULL, 0, 0, 0, NULL }
2365
};
2366
2367
static unsigned
2368
0
dissect_qsig_Address(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2369
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2370
0
                                   qsig_Address_sequence, hf_index, ett_qsig_Address);
2371
2372
0
  return offset;
2373
0
}
2374
2375
2376
static const value_string qsig_PresentedAddressUnscreened_vals[] = {
2377
  {   0, "presentationAllowedAddressU" },
2378
  {   1, "presentationRestricted" },
2379
  {   2, "numberNotAvailableDueToInterworking" },
2380
  {   3, "presentationRestrictedAddressU" },
2381
  { 0, NULL }
2382
};
2383
2384
static const ber_choice_t qsig_PresentedAddressUnscreened_choice[] = {
2385
  {   0, &hf_qsig_presentationAllowedAddressU, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Address },
2386
  {   1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2387
  {   2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2388
  {   3, &hf_qsig_presentationRestrictedAddressU, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Address },
2389
  { 0, NULL, 0, 0, 0, NULL }
2390
};
2391
2392
static unsigned
2393
0
dissect_qsig_PresentedAddressUnscreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2394
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2395
0
                                 qsig_PresentedAddressUnscreened_choice, hf_index, ett_qsig_PresentedAddressUnscreened,
2396
0
                                 NULL);
2397
2398
0
  return offset;
2399
0
}
2400
2401
2402
static const ber_sequence_t qsig_NumberScreened_sequence[] = {
2403
  { &hf_qsig_partyNumber    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2404
  { &hf_qsig_screeningIndicator, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ScreeningIndicator },
2405
  { NULL, 0, 0, 0, NULL }
2406
};
2407
2408
static unsigned
2409
0
dissect_qsig_NumberScreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2410
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2411
0
                                   qsig_NumberScreened_sequence, hf_index, ett_qsig_NumberScreened);
2412
2413
0
  return offset;
2414
0
}
2415
2416
2417
static const value_string qsig_PresentedNumberScreened_vals[] = {
2418
  {   0, "presentationAllowedAddressNS" },
2419
  {   1, "presentationRestricted" },
2420
  {   2, "numberNotAvailableDueToInterworking" },
2421
  {   3, "presentationRestrictedAddressNS" },
2422
  { 0, NULL }
2423
};
2424
2425
static const ber_choice_t qsig_PresentedNumberScreened_choice[] = {
2426
  {   0, &hf_qsig_presentationAllowedAddressNS, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_NumberScreened },
2427
  {   1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2428
  {   2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2429
  {   3, &hf_qsig_presentationRestrictedAddressNS, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_NumberScreened },
2430
  { 0, NULL, 0, 0, 0, NULL }
2431
};
2432
2433
static unsigned
2434
0
dissect_qsig_PresentedNumberScreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2435
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2436
0
                                 qsig_PresentedNumberScreened_choice, hf_index, ett_qsig_PresentedNumberScreened,
2437
0
                                 NULL);
2438
2439
0
  return offset;
2440
0
}
2441
2442
2443
static const value_string qsig_PresentedNumberUnscreened_vals[] = {
2444
  {   0, "presentationAllowedAddressNU" },
2445
  {   1, "presentationRestricted" },
2446
  {   2, "numberNotAvailableDueToInterworking" },
2447
  {   3, "presentationRestrictedAddressNU" },
2448
  { 0, NULL }
2449
};
2450
2451
static const ber_choice_t qsig_PresentedNumberUnscreened_choice[] = {
2452
  {   0, &hf_qsig_presentationAllowedAddressNU, BER_CLASS_CON, 0, 0, dissect_qsig_PartyNumber },
2453
  {   1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2454
  {   2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2455
  {   3, &hf_qsig_presentationRestrictedAddressNU, BER_CLASS_CON, 3, 0, dissect_qsig_PartyNumber },
2456
  { 0, NULL, 0, 0, 0, NULL }
2457
};
2458
2459
static unsigned
2460
0
dissect_qsig_PresentedNumberUnscreened(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2461
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2462
0
                                 qsig_PresentedNumberUnscreened_choice, hf_index, ett_qsig_PresentedNumberUnscreened,
2463
0
                                 NULL);
2464
2465
0
  return offset;
2466
0
}
2467
2468
2469
2470
static unsigned
2471
0
dissect_qsig_PresentationAllowedIndicator(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2472
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2473
2474
0
  return offset;
2475
0
}
2476
2477
2478
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
2479
2480
2481
2482
static unsigned
2483
0
dissect_qsig_na_NameData(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2484
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
2485
0
                                                   1, 50, hf_index, NULL);
2486
2487
0
  return offset;
2488
0
}
2489
2490
2491
static const value_string qsig_na_CharacterSet_vals[] = {
2492
  {   0, "unknown" },
2493
  {   1, "iso8859-1" },
2494
  {   3, "iso8859-2" },
2495
  {   4, "iso8859-3" },
2496
  {   5, "iso8859-4" },
2497
  {   6, "iso8859-5" },
2498
  {   7, "iso8859-7" },
2499
  {   8, "iso10646-BmpString" },
2500
  {   9, "iso10646-utf-8String" },
2501
  { 0, NULL }
2502
};
2503
2504
2505
static unsigned
2506
0
dissect_qsig_na_CharacterSet(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2507
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
2508
0
                                                            0U, 255U, hf_index, NULL);
2509
2510
0
  return offset;
2511
0
}
2512
2513
2514
static const ber_sequence_t qsig_na_NameSet_sequence[] = {
2515
  { &hf_qsig_na_nameData    , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NameData },
2516
  { &hf_qsig_na_characterSet, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_CharacterSet },
2517
  { NULL, 0, 0, 0, NULL }
2518
};
2519
2520
static unsigned
2521
0
dissect_qsig_na_NameSet(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2522
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2523
0
                                   qsig_na_NameSet_sequence, hf_index, ett_qsig_na_NameSet);
2524
2525
0
  return offset;
2526
0
}
2527
2528
2529
static const value_string qsig_na_NamePresentationAllowed_vals[] = {
2530
  {   0, "namePresentationAllowedSimple" },
2531
  {   1, "namePresentationAllowedExtended" },
2532
  { 0, NULL }
2533
};
2534
2535
static const ber_choice_t qsig_na_NamePresentationAllowed_choice[] = {
2536
  {   0, &hf_qsig_na_namePresentationAllowedSimple, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameData },
2537
  {   1, &hf_qsig_na_namePresentationAllowedExtended, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameSet },
2538
  { 0, NULL, 0, 0, 0, NULL }
2539
};
2540
2541
static unsigned
2542
0
dissect_qsig_na_NamePresentationAllowed(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2543
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2544
0
                                 qsig_na_NamePresentationAllowed_choice, hf_index, ett_qsig_na_NamePresentationAllowed,
2545
0
                                 NULL);
2546
2547
0
  return offset;
2548
0
}
2549
2550
2551
2552
static unsigned
2553
0
dissect_qsig_na_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2554
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2555
2556
0
  return offset;
2557
0
}
2558
2559
2560
static const value_string qsig_na_NamePresentationRestricted_vals[] = {
2561
  {   2, "namePresentationRestrictedSimple" },
2562
  {   3, "namePresentationRestrictedExtended" },
2563
  {   7, "namePresentationRestrictedNull" },
2564
  { 0, NULL }
2565
};
2566
2567
static const ber_choice_t qsig_na_NamePresentationRestricted_choice[] = {
2568
  {   2, &hf_qsig_na_namePresentationRestrictedSimple, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameData },
2569
  {   3, &hf_qsig_na_namePresentationRestrictedExtended, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameSet },
2570
  {   7, &hf_qsig_na_namePresentationRestrictedNull, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_na_NULL },
2571
  { 0, NULL, 0, 0, 0, NULL }
2572
};
2573
2574
static unsigned
2575
0
dissect_qsig_na_NamePresentationRestricted(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2576
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2577
0
                                 qsig_na_NamePresentationRestricted_choice, hf_index, ett_qsig_na_NamePresentationRestricted,
2578
0
                                 NULL);
2579
2580
0
  return offset;
2581
0
}
2582
2583
2584
2585
static unsigned
2586
0
dissect_qsig_na_NameNotAvailable(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2587
0
  offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2588
0
                                      hf_index, BER_CLASS_CON, 4, true, dissect_qsig_na_NULL);
2589
2590
0
  return offset;
2591
0
}
2592
2593
2594
static const ber_choice_t qsig_na_Name_choice[] = {
2595
  {   0, &hf_qsig_na_namePresentationAllowed, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NamePresentationAllowed },
2596
  {   1, &hf_qsig_na_namePresentationRestricted, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NamePresentationRestricted },
2597
  {   2, &hf_qsig_na_nameNotAvailable, BER_CLASS_CON, 4, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NameNotAvailable },
2598
  { 0, NULL, 0, 0, 0, NULL }
2599
};
2600
2601
unsigned
2602
0
dissect_qsig_na_Name(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2603
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2604
0
                                 qsig_na_Name_choice, hf_index, ett_qsig_na_Name,
2605
0
                                 NULL);
2606
2607
0
  return offset;
2608
0
}
2609
2610
2611
static const ber_sequence_t qsig_na_SEQUENCE_OF_Extension_sequence_of[1] = {
2612
  { &hf_qsig_na_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
2613
};
2614
2615
static unsigned
2616
0
dissect_qsig_na_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2617
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2618
0
                                      qsig_na_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_na_SEQUENCE_OF_Extension);
2619
2620
0
  return offset;
2621
0
}
2622
2623
2624
static const value_string qsig_na_NameExtension_vals[] = {
2625
  {   5, "single" },
2626
  {   6, "multiple" },
2627
  { 0, NULL }
2628
};
2629
2630
static const ber_choice_t qsig_na_NameExtension_choice[] = {
2631
  {   5, &hf_qsig_na_single      , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2632
  {   6, &hf_qsig_na_multiple    , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_na_SEQUENCE_OF_Extension },
2633
  { 0, NULL, 0, 0, 0, NULL }
2634
};
2635
2636
static unsigned
2637
0
dissect_qsig_na_NameExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2638
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2639
0
                                 qsig_na_NameExtension_choice, hf_index, ett_qsig_na_NameExtension,
2640
0
                                 NULL);
2641
2642
0
  return offset;
2643
0
}
2644
2645
2646
static const ber_sequence_t qsig_na_T_nameSequence_sequence[] = {
2647
  { &hf_qsig_na_name        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_na_Name },
2648
  { &hf_qsig_na_extensionNA , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_na_NameExtension },
2649
  { NULL, 0, 0, 0, NULL }
2650
};
2651
2652
static unsigned
2653
0
dissect_qsig_na_T_nameSequence(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2654
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2655
0
                                   qsig_na_T_nameSequence_sequence, hf_index, ett_qsig_na_T_nameSequence);
2656
2657
0
  return offset;
2658
0
}
2659
2660
2661
static const value_string qsig_na_NameArg_vals[] = {
2662
  {   0, "name" },
2663
  {   1, "nameSequence" },
2664
  { 0, NULL }
2665
};
2666
2667
static const ber_choice_t qsig_na_NameArg_choice[] = {
2668
  {   0, &hf_qsig_na_name        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
2669
  {   1, &hf_qsig_na_nameSequence, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_na_T_nameSequence },
2670
  { 0, NULL, 0, 0, 0, NULL }
2671
};
2672
2673
static unsigned
2674
1
dissect_qsig_na_NameArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2675
1
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2676
1
                                 qsig_na_NameArg_choice, hf_index, ett_qsig_na_NameArg,
2677
1
                                 NULL);
2678
2679
1
  return offset;
2680
1
}
2681
2682
/*--- PDUs ---*/
2683
2684
1
static int dissect_qsig_na_NameArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2685
1
  unsigned offset = 0;
2686
1
  asn1_ctx_t asn1_ctx;
2687
1
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
2688
1
  offset = dissect_qsig_na_NameArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_na_qsig_na_NameArg_PDU);
2689
1
  return offset;
2690
1
}
2691
2692
2693
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
2694
2695
2696
static const value_string qsig_cf_Procedure_vals[] = {
2697
  {   0, "cfu" },
2698
  {   1, "cfb" },
2699
  {   2, "cfnr" },
2700
  { 0, NULL }
2701
};
2702
2703
2704
static unsigned
2705
0
dissect_qsig_cf_Procedure(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2706
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2707
0
                                  NULL);
2708
2709
0
  return offset;
2710
0
}
2711
2712
2713
static const value_string qsig_cf_BasicService_vals[] = {
2714
  {   0, "allServices" },
2715
  {   1, "speech" },
2716
  {   2, "unrestrictedDigitalInformation" },
2717
  {   3, "audio3100Hz" },
2718
  {  32, "telephony" },
2719
  {  33, "teletex" },
2720
  {  34, "telefaxGroup4Class1" },
2721
  {  35, "videotexSyntaxBased" },
2722
  {  36, "videotelephony" },
2723
  { 0, NULL }
2724
};
2725
2726
2727
static unsigned
2728
0
dissect_qsig_cf_BasicService(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2729
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2730
0
                                  NULL);
2731
2732
0
  return offset;
2733
0
}
2734
2735
2736
static const ber_sequence_t qsig_cf_SEQUENCE_OF_Extension_sequence_of[1] = {
2737
  { &hf_qsig_cf_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
2738
};
2739
2740
static unsigned
2741
0
dissect_qsig_cf_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2742
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2743
0
                                      qsig_cf_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cf_SEQUENCE_OF_Extension);
2744
2745
0
  return offset;
2746
0
}
2747
2748
2749
static const value_string qsig_cf_ADExtension_vals[] = {
2750
  {   1, "single" },
2751
  {   2, "multiple" },
2752
  { 0, NULL }
2753
};
2754
2755
static const ber_choice_t qsig_cf_ADExtension_choice[] = {
2756
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2757
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2758
  { 0, NULL, 0, 0, 0, NULL }
2759
};
2760
2761
static unsigned
2762
0
dissect_qsig_cf_ADExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2763
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2764
0
                                 qsig_cf_ADExtension_choice, hf_index, ett_qsig_cf_ADExtension,
2765
0
                                 NULL);
2766
2767
0
  return offset;
2768
0
}
2769
2770
2771
static const ber_sequence_t qsig_cf_ARG_activateDiversionQ_sequence[] = {
2772
  { &hf_qsig_cf_procedure   , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2773
  { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2774
  { &hf_qsig_cf_divertedToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
2775
  { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2776
  { &hf_qsig_cf_activatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2777
  { &hf_qsig_cf_extensionAD , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_ADExtension },
2778
  { NULL, 0, 0, 0, NULL }
2779
};
2780
2781
static unsigned
2782
0
dissect_qsig_cf_ARG_activateDiversionQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2783
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2784
0
                                   qsig_cf_ARG_activateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_activateDiversionQ);
2785
2786
0
  return offset;
2787
0
}
2788
2789
2790
2791
static unsigned
2792
0
dissect_qsig_cf_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2793
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2794
2795
0
  return offset;
2796
0
}
2797
2798
2799
static const value_string qsig_cf_RES_activateDiversionQ_vals[] = {
2800
  {   0, "null" },
2801
  {   1, "single" },
2802
  {   2, "multiple" },
2803
  { 0, NULL }
2804
};
2805
2806
static const ber_choice_t qsig_cf_RES_activateDiversionQ_choice[] = {
2807
  {   0, &hf_qsig_cf_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
2808
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2809
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2810
  { 0, NULL, 0, 0, 0, NULL }
2811
};
2812
2813
static unsigned
2814
0
dissect_qsig_cf_RES_activateDiversionQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2815
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2816
0
                                 qsig_cf_RES_activateDiversionQ_choice, hf_index, ett_qsig_cf_RES_activateDiversionQ,
2817
0
                                 NULL);
2818
2819
0
  return offset;
2820
0
}
2821
2822
2823
static const value_string qsig_cf_DDExtension_vals[] = {
2824
  {   1, "single" },
2825
  {   2, "multiple" },
2826
  { 0, NULL }
2827
};
2828
2829
static const ber_choice_t qsig_cf_DDExtension_choice[] = {
2830
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2831
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2832
  { 0, NULL, 0, 0, 0, NULL }
2833
};
2834
2835
static unsigned
2836
0
dissect_qsig_cf_DDExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2837
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2838
0
                                 qsig_cf_DDExtension_choice, hf_index, ett_qsig_cf_DDExtension,
2839
0
                                 NULL);
2840
2841
0
  return offset;
2842
0
}
2843
2844
2845
static const ber_sequence_t qsig_cf_ARG_deactivateDiversionQ_sequence[] = {
2846
  { &hf_qsig_cf_procedure   , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2847
  { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2848
  { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2849
  { &hf_qsig_cf_deactivatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2850
  { &hf_qsig_cf_extensionDD , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DDExtension },
2851
  { NULL, 0, 0, 0, NULL }
2852
};
2853
2854
static unsigned
2855
0
dissect_qsig_cf_ARG_deactivateDiversionQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2856
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2857
0
                                   qsig_cf_ARG_deactivateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_deactivateDiversionQ);
2858
2859
0
  return offset;
2860
0
}
2861
2862
2863
static const value_string qsig_cf_RES_deactivateDiversionQ_vals[] = {
2864
  {   0, "null" },
2865
  {   1, "single" },
2866
  {   2, "multiple" },
2867
  { 0, NULL }
2868
};
2869
2870
static const ber_choice_t qsig_cf_RES_deactivateDiversionQ_choice[] = {
2871
  {   0, &hf_qsig_cf_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
2872
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2873
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2874
  { 0, NULL, 0, 0, 0, NULL }
2875
};
2876
2877
static unsigned
2878
0
dissect_qsig_cf_RES_deactivateDiversionQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2879
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2880
0
                                 qsig_cf_RES_deactivateDiversionQ_choice, hf_index, ett_qsig_cf_RES_deactivateDiversionQ,
2881
0
                                 NULL);
2882
2883
0
  return offset;
2884
0
}
2885
2886
2887
static const value_string qsig_cf_IDExtension_vals[] = {
2888
  {   1, "single" },
2889
  {   2, "multiple" },
2890
  { 0, NULL }
2891
};
2892
2893
static const ber_choice_t qsig_cf_IDExtension_choice[] = {
2894
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2895
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2896
  { 0, NULL, 0, 0, 0, NULL }
2897
};
2898
2899
static unsigned
2900
0
dissect_qsig_cf_IDExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2901
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2902
0
                                 qsig_cf_IDExtension_choice, hf_index, ett_qsig_cf_IDExtension,
2903
0
                                 NULL);
2904
2905
0
  return offset;
2906
0
}
2907
2908
2909
static const ber_sequence_t qsig_cf_ARG_interrogateDiversionQ_sequence[] = {
2910
  { &hf_qsig_cf_procedure   , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2911
  { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2912
  { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2913
  { &hf_qsig_cf_interrogatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2914
  { &hf_qsig_cf_extensionID , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_IDExtension },
2915
  { NULL, 0, 0, 0, NULL }
2916
};
2917
2918
static unsigned
2919
0
dissect_qsig_cf_ARG_interrogateDiversionQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2920
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2921
0
                                   qsig_cf_ARG_interrogateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_interrogateDiversionQ);
2922
2923
0
  return offset;
2924
0
}
2925
2926
2927
static const value_string qsig_cf_CHRExtension_vals[] = {
2928
  {   1, "single" },
2929
  {   2, "multiple" },
2930
  { 0, NULL }
2931
};
2932
2933
static const ber_choice_t qsig_cf_CHRExtension_choice[] = {
2934
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2935
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2936
  { 0, NULL, 0, 0, 0, NULL }
2937
};
2938
2939
static unsigned
2940
0
dissect_qsig_cf_CHRExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2941
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2942
0
                                 qsig_cf_CHRExtension_choice, hf_index, ett_qsig_cf_CHRExtension,
2943
0
                                 NULL);
2944
2945
0
  return offset;
2946
0
}
2947
2948
2949
static const ber_sequence_t qsig_cf_ARG_checkRestriction_sequence[] = {
2950
  { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2951
  { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2952
  { &hf_qsig_cf_divertedToNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2953
  { &hf_qsig_cf_extensionCHR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_CHRExtension },
2954
  { NULL, 0, 0, 0, NULL }
2955
};
2956
2957
static unsigned
2958
0
dissect_qsig_cf_ARG_checkRestriction(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2959
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2960
0
                                   qsig_cf_ARG_checkRestriction_sequence, hf_index, ett_qsig_cf_ARG_checkRestriction);
2961
2962
0
  return offset;
2963
0
}
2964
2965
2966
static const value_string qsig_cf_RES_checkRestriction_vals[] = {
2967
  {   0, "null" },
2968
  {   1, "single" },
2969
  {   2, "multiple" },
2970
  { 0, NULL }
2971
};
2972
2973
static const ber_choice_t qsig_cf_RES_checkRestriction_choice[] = {
2974
  {   0, &hf_qsig_cf_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
2975
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2976
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2977
  { 0, NULL, 0, 0, 0, NULL }
2978
};
2979
2980
static unsigned
2981
0
dissect_qsig_cf_RES_checkRestriction(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2982
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
2983
0
                                 qsig_cf_RES_checkRestriction_choice, hf_index, ett_qsig_cf_RES_checkRestriction,
2984
0
                                 NULL);
2985
2986
0
  return offset;
2987
0
}
2988
2989
2990
static const value_string qsig_cf_DiversionReason_vals[] = {
2991
  {   0, "unknown" },
2992
  {   1, "cfu" },
2993
  {   2, "cfb" },
2994
  {   3, "cfnr" },
2995
  { 0, NULL }
2996
};
2997
2998
2999
static unsigned
3000
0
dissect_qsig_cf_DiversionReason(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3001
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3002
0
                                  NULL);
3003
3004
0
  return offset;
3005
0
}
3006
3007
3008
3009
static unsigned
3010
0
dissect_qsig_cf_INTEGER_1_15(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3011
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
3012
0
                                                            1U, 15U, hf_index, NULL);
3013
3014
0
  return offset;
3015
0
}
3016
3017
3018
static const value_string qsig_cf_SubscriptionOption_vals[] = {
3019
  {   0, "noNotification" },
3020
  {   1, "notificationWithoutDivertedToNr" },
3021
  {   2, "notificationWithDivertedToNr" },
3022
  { 0, NULL }
3023
};
3024
3025
3026
static unsigned
3027
0
dissect_qsig_cf_SubscriptionOption(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3028
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3029
0
                                  NULL);
3030
3031
0
  return offset;
3032
0
}
3033
3034
3035
static const value_string qsig_cf_CRRExtension_vals[] = {
3036
  {   9, "single" },
3037
  {  10, "multiple" },
3038
  { 0, NULL }
3039
};
3040
3041
static const ber_choice_t qsig_cf_CRRExtension_choice[] = {
3042
  {   9, &hf_qsig_cf_single      , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3043
  {  10, &hf_qsig_cf_multiple    , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3044
  { 0, NULL, 0, 0, 0, NULL }
3045
};
3046
3047
static unsigned
3048
0
dissect_qsig_cf_CRRExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3049
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3050
0
                                 qsig_cf_CRRExtension_choice, hf_index, ett_qsig_cf_CRRExtension,
3051
0
                                 NULL);
3052
3053
0
  return offset;
3054
0
}
3055
3056
3057
static const ber_sequence_t qsig_cf_ARG_callRerouteing_sequence[] = {
3058
  { &hf_qsig_cf_rerouteingReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3059
  { &hf_qsig_cf_originalRerouteingReason, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_DiversionReason },
3060
  { &hf_qsig_cf_calledAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
3061
  { &hf_qsig_cf_diversionCounter, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_INTEGER_1_15 },
3062
  { &hf_qsig_cf_pSS1InfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3063
  { &hf_qsig_cf_lastRerouteingNr, BER_CLASS_CON, 1, 0, dissect_qsig_PresentedNumberUnscreened },
3064
  { &hf_qsig_cf_subscriptionOption, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SubscriptionOption },
3065
  { &hf_qsig_cf_callingPartySubaddress, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
3066
  { &hf_qsig_cf_callingNumber, BER_CLASS_CON, 4, 0, dissect_qsig_PresentedNumberScreened },
3067
  { &hf_qsig_cf_callingName , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3068
  { &hf_qsig_cf_originalCalledNr, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3069
  { &hf_qsig_cf_redirectingName, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3070
  { &hf_qsig_cf_originalCalledName, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3071
  { &hf_qsig_cf_extensionCRR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_CRRExtension },
3072
  { NULL, 0, 0, 0, NULL }
3073
};
3074
3075
static unsigned
3076
0
dissect_qsig_cf_ARG_callRerouteing(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3077
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3078
0
                                   qsig_cf_ARG_callRerouteing_sequence, hf_index, ett_qsig_cf_ARG_callRerouteing);
3079
3080
0
  return offset;
3081
0
}
3082
3083
3084
static const value_string qsig_cf_RES_callRerouteing_vals[] = {
3085
  {   0, "null" },
3086
  {   1, "single" },
3087
  {   2, "multiple" },
3088
  { 0, NULL }
3089
};
3090
3091
static const ber_choice_t qsig_cf_RES_callRerouteing_choice[] = {
3092
  {   0, &hf_qsig_cf_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
3093
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3094
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3095
  { 0, NULL, 0, 0, 0, NULL }
3096
};
3097
3098
static unsigned
3099
0
dissect_qsig_cf_RES_callRerouteing(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3100
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3101
0
                                 qsig_cf_RES_callRerouteing_choice, hf_index, ett_qsig_cf_RES_callRerouteing,
3102
0
                                 NULL);
3103
3104
0
  return offset;
3105
0
}
3106
3107
3108
static const value_string qsig_cf_DLI1Extension_vals[] = {
3109
  {   9, "single" },
3110
  {  10, "multiple" },
3111
  { 0, NULL }
3112
};
3113
3114
static const ber_choice_t qsig_cf_DLI1Extension_choice[] = {
3115
  {   9, &hf_qsig_cf_single      , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3116
  {  10, &hf_qsig_cf_multiple    , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3117
  { 0, NULL, 0, 0, 0, NULL }
3118
};
3119
3120
static unsigned
3121
0
dissect_qsig_cf_DLI1Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3122
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3123
0
                                 qsig_cf_DLI1Extension_choice, hf_index, ett_qsig_cf_DLI1Extension,
3124
0
                                 NULL);
3125
3126
0
  return offset;
3127
0
}
3128
3129
3130
static const ber_sequence_t qsig_cf_ARG_divertingLegInformation1_sequence[] = {
3131
  { &hf_qsig_cf_diversionReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3132
  { &hf_qsig_cf_subscriptionOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_SubscriptionOption },
3133
  { &hf_qsig_cf_nominatedNr , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3134
  { &hf_qsig_cf_extensionDLI1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI1Extension },
3135
  { NULL, 0, 0, 0, NULL }
3136
};
3137
3138
static unsigned
3139
0
dissect_qsig_cf_ARG_divertingLegInformation1(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3140
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3141
0
                                   qsig_cf_ARG_divertingLegInformation1_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation1);
3142
3143
0
  return offset;
3144
0
}
3145
3146
3147
static const value_string qsig_cf_DLI2Extension_vals[] = {
3148
  {   5, "single" },
3149
  {   6, "multiple" },
3150
  { 0, NULL }
3151
};
3152
3153
static const ber_choice_t qsig_cf_DLI2Extension_choice[] = {
3154
  {   5, &hf_qsig_cf_single      , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3155
  {   6, &hf_qsig_cf_multiple    , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3156
  { 0, NULL, 0, 0, 0, NULL }
3157
};
3158
3159
static unsigned
3160
0
dissect_qsig_cf_DLI2Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3161
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3162
0
                                 qsig_cf_DLI2Extension_choice, hf_index, ett_qsig_cf_DLI2Extension,
3163
0
                                 NULL);
3164
3165
0
  return offset;
3166
0
}
3167
3168
3169
static const ber_sequence_t qsig_cf_ARG_divertingLegInformation2_sequence[] = {
3170
  { &hf_qsig_cf_diversionCounter, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_INTEGER_1_15 },
3171
  { &hf_qsig_cf_diversionReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3172
  { &hf_qsig_cf_originalDiversionReason, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_DiversionReason },
3173
  { &hf_qsig_cf_divertingNr , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3174
  { &hf_qsig_cf_originalCalledNr, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3175
  { &hf_qsig_cf_redirectingName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3176
  { &hf_qsig_cf_originalCalledName, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3177
  { &hf_qsig_cf_extensionDLI2, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI2Extension },
3178
  { NULL, 0, 0, 0, NULL }
3179
};
3180
3181
static unsigned
3182
0
dissect_qsig_cf_ARG_divertingLegInformation2(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3183
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3184
0
                                   qsig_cf_ARG_divertingLegInformation2_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation2);
3185
3186
0
  return offset;
3187
0
}
3188
3189
3190
static const value_string qsig_cf_DLI3Extension_vals[] = {
3191
  {   1, "single" },
3192
  {   2, "multiple" },
3193
  { 0, NULL }
3194
};
3195
3196
static const ber_choice_t qsig_cf_DLI3Extension_choice[] = {
3197
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3198
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3199
  { 0, NULL, 0, 0, 0, NULL }
3200
};
3201
3202
static unsigned
3203
0
dissect_qsig_cf_DLI3Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3204
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3205
0
                                 qsig_cf_DLI3Extension_choice, hf_index, ett_qsig_cf_DLI3Extension,
3206
0
                                 NULL);
3207
3208
0
  return offset;
3209
0
}
3210
3211
3212
static const ber_sequence_t qsig_cf_ARG_divertingLegInformation3_sequence[] = {
3213
  { &hf_qsig_cf_presentationAllowedIndicator, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentationAllowedIndicator },
3214
  { &hf_qsig_cf_redirectionName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3215
  { &hf_qsig_cf_extensionDLI3, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI3Extension },
3216
  { NULL, 0, 0, 0, NULL }
3217
};
3218
3219
static unsigned
3220
0
dissect_qsig_cf_ARG_divertingLegInformation3(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3221
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3222
0
                                   qsig_cf_ARG_divertingLegInformation3_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation3);
3223
3224
0
  return offset;
3225
0
}
3226
3227
3228
static const value_string qsig_cf_ARG_cfnrDivertedLegFailed_vals[] = {
3229
  {   0, "null" },
3230
  {   1, "single" },
3231
  {   2, "multiple" },
3232
  { 0, NULL }
3233
};
3234
3235
static const ber_choice_t qsig_cf_ARG_cfnrDivertedLegFailed_choice[] = {
3236
  {   0, &hf_qsig_cf_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
3237
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3238
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3239
  { 0, NULL, 0, 0, 0, NULL }
3240
};
3241
3242
static unsigned
3243
0
dissect_qsig_cf_ARG_cfnrDivertedLegFailed(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3244
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3245
0
                                 qsig_cf_ARG_cfnrDivertedLegFailed_choice, hf_index, ett_qsig_cf_ARG_cfnrDivertedLegFailed,
3246
0
                                 NULL);
3247
3248
0
  return offset;
3249
0
}
3250
3251
3252
3253
static unsigned
3254
0
dissect_qsig_cf_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3255
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
3256
3257
0
  return offset;
3258
0
}
3259
3260
3261
static const value_string qsig_cf_IRExtension_vals[] = {
3262
  {   1, "single" },
3263
  {   2, "multiple" },
3264
  { 0, NULL }
3265
};
3266
3267
static const ber_choice_t qsig_cf_IRExtension_choice[] = {
3268
  {   1, &hf_qsig_cf_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3269
  {   2, &hf_qsig_cf_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3270
  { 0, NULL, 0, 0, 0, NULL }
3271
};
3272
3273
static unsigned
3274
0
dissect_qsig_cf_IRExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3275
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3276
0
                                 qsig_cf_IRExtension_choice, hf_index, ett_qsig_cf_IRExtension,
3277
0
                                 NULL);
3278
3279
0
  return offset;
3280
0
}
3281
3282
3283
static const ber_sequence_t qsig_cf_IntResult_sequence[] = {
3284
  { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3285
  { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
3286
  { &hf_qsig_cf_procedure   , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
3287
  { &hf_qsig_cf_divertedToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
3288
  { &hf_qsig_cf_remoteEnabled, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BOOLEAN },
3289
  { &hf_qsig_cf_extensionIR , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_IRExtension },
3290
  { NULL, 0, 0, 0, NULL }
3291
};
3292
3293
static unsigned
3294
0
dissect_qsig_cf_IntResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3295
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3296
0
                                   qsig_cf_IntResult_sequence, hf_index, ett_qsig_cf_IntResult);
3297
3298
0
  return offset;
3299
0
}
3300
3301
3302
static const ber_sequence_t qsig_cf_IntResultList_set_of[1] = {
3303
  { &hf_qsig_cf_IntResultList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_IntResult },
3304
};
3305
3306
static unsigned
3307
0
dissect_qsig_cf_IntResultList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3308
0
  offset = dissect_ber_constrained_set_of(implicit_tag, actx, tree, tvb, offset,
3309
0
                                             0, 29, qsig_cf_IntResultList_set_of, hf_index, ett_qsig_cf_IntResultList);
3310
3311
0
  return offset;
3312
0
}
3313
3314
/*--- PDUs ---*/
3315
3316
0
static int dissect_qsig_cf_ARG_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3317
0
  unsigned offset = 0;
3318
0
  asn1_ctx_t asn1_ctx;
3319
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3320
0
  offset = dissect_qsig_cf_ARG_activateDiversionQ(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU);
3321
0
  return offset;
3322
0
}
3323
0
static int dissect_qsig_cf_RES_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3324
0
  unsigned offset = 0;
3325
0
  asn1_ctx_t asn1_ctx;
3326
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3327
0
  offset = dissect_qsig_cf_RES_activateDiversionQ(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU);
3328
0
  return offset;
3329
0
}
3330
0
static int dissect_qsig_cf_ARG_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3331
0
  unsigned offset = 0;
3332
0
  asn1_ctx_t asn1_ctx;
3333
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3334
0
  offset = dissect_qsig_cf_ARG_deactivateDiversionQ(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU);
3335
0
  return offset;
3336
0
}
3337
0
static int dissect_qsig_cf_RES_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3338
0
  unsigned offset = 0;
3339
0
  asn1_ctx_t asn1_ctx;
3340
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3341
0
  offset = dissect_qsig_cf_RES_deactivateDiversionQ(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU);
3342
0
  return offset;
3343
0
}
3344
0
static int dissect_qsig_cf_ARG_interrogateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3345
0
  unsigned offset = 0;
3346
0
  asn1_ctx_t asn1_ctx;
3347
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3348
0
  offset = dissect_qsig_cf_ARG_interrogateDiversionQ(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU);
3349
0
  return offset;
3350
0
}
3351
0
static int dissect_qsig_cf_IntResultList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3352
0
  unsigned offset = 0;
3353
0
  asn1_ctx_t asn1_ctx;
3354
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3355
0
  offset = dissect_qsig_cf_IntResultList(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_IntResultList_PDU);
3356
0
  return offset;
3357
0
}
3358
0
static int dissect_qsig_cf_ARG_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3359
0
  unsigned offset = 0;
3360
0
  asn1_ctx_t asn1_ctx;
3361
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3362
0
  offset = dissect_qsig_cf_ARG_checkRestriction(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU);
3363
0
  return offset;
3364
0
}
3365
0
static int dissect_qsig_cf_RES_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3366
0
  unsigned offset = 0;
3367
0
  asn1_ctx_t asn1_ctx;
3368
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3369
0
  offset = dissect_qsig_cf_RES_checkRestriction(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU);
3370
0
  return offset;
3371
0
}
3372
0
static int dissect_qsig_cf_ARG_callRerouteing_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3373
0
  unsigned offset = 0;
3374
0
  asn1_ctx_t asn1_ctx;
3375
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3376
0
  offset = dissect_qsig_cf_ARG_callRerouteing(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU);
3377
0
  return offset;
3378
0
}
3379
0
static int dissect_qsig_cf_RES_callRerouteing_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3380
0
  unsigned offset = 0;
3381
0
  asn1_ctx_t asn1_ctx;
3382
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3383
0
  offset = dissect_qsig_cf_RES_callRerouteing(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU);
3384
0
  return offset;
3385
0
}
3386
0
static int dissect_qsig_cf_ARG_divertingLegInformation1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3387
0
  unsigned offset = 0;
3388
0
  asn1_ctx_t asn1_ctx;
3389
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3390
0
  offset = dissect_qsig_cf_ARG_divertingLegInformation1(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU);
3391
0
  return offset;
3392
0
}
3393
0
static int dissect_qsig_cf_ARG_divertingLegInformation2_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3394
0
  unsigned offset = 0;
3395
0
  asn1_ctx_t asn1_ctx;
3396
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3397
0
  offset = dissect_qsig_cf_ARG_divertingLegInformation2(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU);
3398
0
  return offset;
3399
0
}
3400
0
static int dissect_qsig_cf_ARG_divertingLegInformation3_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3401
0
  unsigned offset = 0;
3402
0
  asn1_ctx_t asn1_ctx;
3403
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3404
0
  offset = dissect_qsig_cf_ARG_divertingLegInformation3(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU);
3405
0
  return offset;
3406
0
}
3407
0
static int dissect_qsig_cf_ARG_cfnrDivertedLegFailed_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3408
0
  unsigned offset = 0;
3409
0
  asn1_ctx_t asn1_ctx;
3410
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3411
0
  offset = dissect_qsig_cf_ARG_cfnrDivertedLegFailed(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU);
3412
0
  return offset;
3413
0
}
3414
0
static int dissect_qsig_cf_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3415
0
  unsigned offset = 0;
3416
0
  asn1_ctx_t asn1_ctx;
3417
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3418
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_Extension_PDU);
3419
0
  return offset;
3420
0
}
3421
3422
3423
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
3424
3425
3426
3427
static unsigned
3428
0
dissect_qsig_pr_CallIdentity(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3429
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
3430
0
                                                        actx, tree, tvb, offset,
3431
0
                                                        1, 4, hf_index, NULL);
3432
3433
0
  return offset;
3434
0
}
3435
3436
3437
static const ber_sequence_t qsig_pr_SEQUENCE_OF_Extension_sequence_of[1] = {
3438
  { &hf_qsig_pr_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
3439
};
3440
3441
static unsigned
3442
0
dissect_qsig_pr_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3443
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3444
0
                                      qsig_pr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pr_SEQUENCE_OF_Extension);
3445
3446
0
  return offset;
3447
0
}
3448
3449
3450
static const value_string qsig_pr_PRPExtension_vals[] = {
3451
  {   1, "single" },
3452
  {   2, "multiple" },
3453
  { 0, NULL }
3454
};
3455
3456
static const ber_choice_t qsig_pr_PRPExtension_choice[] = {
3457
  {   1, &hf_qsig_pr_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3458
  {   2, &hf_qsig_pr_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3459
  { 0, NULL, 0, 0, 0, NULL }
3460
};
3461
3462
static unsigned
3463
0
dissect_qsig_pr_PRPExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3464
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3465
0
                                 qsig_pr_PRPExtension_choice, hf_index, ett_qsig_pr_PRPExtension,
3466
0
                                 NULL);
3467
3468
0
  return offset;
3469
0
}
3470
3471
3472
static const ber_sequence_t qsig_pr_PRProposeArg_sequence[] = {
3473
  { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3474
  { &hf_qsig_pr_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3475
  { &hf_qsig_pr_extensionPRP, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRPExtension },
3476
  { NULL, 0, 0, 0, NULL }
3477
};
3478
3479
static unsigned
3480
0
dissect_qsig_pr_PRProposeArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3481
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3482
0
                                   qsig_pr_PRProposeArg_sequence, hf_index, ett_qsig_pr_PRProposeArg);
3483
3484
0
  return offset;
3485
0
}
3486
3487
3488
static const value_string qsig_pr_PRSExtension_vals[] = {
3489
  {   1, "single" },
3490
  {   2, "multiple" },
3491
  { 0, NULL }
3492
};
3493
3494
static const ber_choice_t qsig_pr_PRSExtension_choice[] = {
3495
  {   1, &hf_qsig_pr_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3496
  {   2, &hf_qsig_pr_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3497
  { 0, NULL, 0, 0, 0, NULL }
3498
};
3499
3500
static unsigned
3501
0
dissect_qsig_pr_PRSExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3502
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3503
0
                                 qsig_pr_PRSExtension_choice, hf_index, ett_qsig_pr_PRSExtension,
3504
0
                                 NULL);
3505
3506
0
  return offset;
3507
0
}
3508
3509
3510
static const ber_sequence_t qsig_pr_PRSetupArg_sequence[] = {
3511
  { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3512
  { &hf_qsig_pr_extensionPRS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRSExtension },
3513
  { NULL, 0, 0, 0, NULL }
3514
};
3515
3516
static unsigned
3517
0
dissect_qsig_pr_PRSetupArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3518
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3519
0
                                   qsig_pr_PRSetupArg_sequence, hf_index, ett_qsig_pr_PRSetupArg);
3520
3521
0
  return offset;
3522
0
}
3523
3524
3525
static const value_string qsig_pr_PRRExtension_vals[] = {
3526
  {   1, "single" },
3527
  {   2, "multiple" },
3528
  { 0, NULL }
3529
};
3530
3531
static const ber_choice_t qsig_pr_PRRExtension_choice[] = {
3532
  {   1, &hf_qsig_pr_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3533
  {   2, &hf_qsig_pr_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3534
  { 0, NULL, 0, 0, 0, NULL }
3535
};
3536
3537
static unsigned
3538
0
dissect_qsig_pr_PRRExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3539
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3540
0
                                 qsig_pr_PRRExtension_choice, hf_index, ett_qsig_pr_PRRExtension,
3541
0
                                 NULL);
3542
3543
0
  return offset;
3544
0
}
3545
3546
3547
static const ber_sequence_t qsig_pr_PRRetainArg_sequence[] = {
3548
  { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3549
  { &hf_qsig_pr_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3550
  { &hf_qsig_pr_extensionPRR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRRExtension },
3551
  { NULL, 0, 0, 0, NULL }
3552
};
3553
3554
static unsigned
3555
0
dissect_qsig_pr_PRRetainArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3556
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3557
0
                                   qsig_pr_PRRetainArg_sequence, hf_index, ett_qsig_pr_PRRetainArg);
3558
3559
0
  return offset;
3560
0
}
3561
3562
3563
3564
static unsigned
3565
0
dissect_qsig_pr_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3566
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
3567
3568
0
  return offset;
3569
0
}
3570
3571
3572
static const value_string qsig_pr_DummyResult_vals[] = {
3573
  {   0, "null" },
3574
  {   1, "single" },
3575
  {   2, "multiple" },
3576
  { 0, NULL }
3577
};
3578
3579
static const ber_choice_t qsig_pr_DummyResult_choice[] = {
3580
  {   0, &hf_qsig_pr_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_NULL },
3581
  {   1, &hf_qsig_pr_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3582
  {   2, &hf_qsig_pr_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3583
  { 0, NULL, 0, 0, 0, NULL }
3584
};
3585
3586
static unsigned
3587
0
dissect_qsig_pr_DummyResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3588
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3589
0
                                 qsig_pr_DummyResult_choice, hf_index, ett_qsig_pr_DummyResult,
3590
0
                                 NULL);
3591
3592
0
  return offset;
3593
0
}
3594
3595
3596
static const value_string qsig_pr_DummyArg_vals[] = {
3597
  {   0, "null" },
3598
  {   1, "single" },
3599
  {   2, "multiple" },
3600
  { 0, NULL }
3601
};
3602
3603
static const ber_choice_t qsig_pr_DummyArg_choice[] = {
3604
  {   0, &hf_qsig_pr_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_NULL },
3605
  {   1, &hf_qsig_pr_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3606
  {   2, &hf_qsig_pr_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3607
  { 0, NULL, 0, 0, 0, NULL }
3608
};
3609
3610
static unsigned
3611
0
dissect_qsig_pr_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3612
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3613
0
                                 qsig_pr_DummyArg_choice, hf_index, ett_qsig_pr_DummyArg,
3614
0
                                 NULL);
3615
3616
0
  return offset;
3617
0
}
3618
3619
/*--- PDUs ---*/
3620
3621
0
static int dissect_qsig_pr_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3622
0
  unsigned offset = 0;
3623
0
  asn1_ctx_t asn1_ctx;
3624
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3625
0
  offset = dissect_qsig_pr_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_DummyArg_PDU);
3626
0
  return offset;
3627
0
}
3628
0
static int dissect_qsig_pr_PRProposeArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3629
0
  unsigned offset = 0;
3630
0
  asn1_ctx_t asn1_ctx;
3631
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3632
0
  offset = dissect_qsig_pr_PRProposeArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRProposeArg_PDU);
3633
0
  return offset;
3634
0
}
3635
0
static int dissect_qsig_pr_PRSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3636
0
  unsigned offset = 0;
3637
0
  asn1_ctx_t asn1_ctx;
3638
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3639
0
  offset = dissect_qsig_pr_PRSetupArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRSetupArg_PDU);
3640
0
  return offset;
3641
0
}
3642
0
static int dissect_qsig_pr_DummyResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3643
0
  unsigned offset = 0;
3644
0
  asn1_ctx_t asn1_ctx;
3645
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3646
0
  offset = dissect_qsig_pr_DummyResult(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_DummyResult_PDU);
3647
0
  return offset;
3648
0
}
3649
0
static int dissect_qsig_pr_PRRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3650
0
  unsigned offset = 0;
3651
0
  asn1_ctx_t asn1_ctx;
3652
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3653
0
  offset = dissect_qsig_pr_PRRetainArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRRetainArg_PDU);
3654
0
  return offset;
3655
0
}
3656
0
static int dissect_qsig_pr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3657
0
  unsigned offset = 0;
3658
0
  asn1_ctx_t asn1_ctx;
3659
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
3660
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_Extension_PDU);
3661
0
  return offset;
3662
0
}
3663
3664
3665
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
3666
3667
3668
3669
static unsigned
3670
0
dissect_qsig_ct_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3671
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
3672
3673
0
  return offset;
3674
0
}
3675
3676
3677
static const ber_sequence_t qsig_ct_SEQUENCE_OF_Extension_sequence_of[1] = {
3678
  { &hf_qsig_ct_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
3679
};
3680
3681
static unsigned
3682
0
dissect_qsig_ct_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3683
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3684
0
                                      qsig_ct_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ct_SEQUENCE_OF_Extension);
3685
3686
0
  return offset;
3687
0
}
3688
3689
3690
static const value_string qsig_ct_DummyArg_vals[] = {
3691
  {   0, "null" },
3692
  {   1, "single" },
3693
  {   2, "multiple" },
3694
  { 0, NULL }
3695
};
3696
3697
static const ber_choice_t qsig_ct_DummyArg_choice[] = {
3698
  {   0, &hf_qsig_ct_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_NULL },
3699
  {   1, &hf_qsig_ct_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3700
  {   2, &hf_qsig_ct_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3701
  { 0, NULL, 0, 0, 0, NULL }
3702
};
3703
3704
static unsigned
3705
0
dissect_qsig_ct_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3706
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3707
0
                                 qsig_ct_DummyArg_choice, hf_index, ett_qsig_ct_DummyArg,
3708
0
                                 NULL);
3709
3710
0
  return offset;
3711
0
}
3712
3713
3714
static const value_string qsig_ct_DummyRes_vals[] = {
3715
  {   0, "null" },
3716
  {   1, "single" },
3717
  {   2, "multiple" },
3718
  { 0, NULL }
3719
};
3720
3721
static const ber_choice_t qsig_ct_DummyRes_choice[] = {
3722
  {   0, &hf_qsig_ct_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_NULL },
3723
  {   1, &hf_qsig_ct_single      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3724
  {   2, &hf_qsig_ct_multiple    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3725
  { 0, NULL, 0, 0, 0, NULL }
3726
};
3727
3728
static unsigned
3729
0
dissect_qsig_ct_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3730
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3731
0
                                 qsig_ct_DummyRes_choice, hf_index, ett_qsig_ct_DummyRes,
3732
0
                                 NULL);
3733
3734
0
  return offset;
3735
0
}
3736
3737
3738
3739
static unsigned
3740
0
dissect_qsig_ct_CallIdentity(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3741
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
3742
0
                                                        actx, tree, tvb, offset,
3743
0
                                                        1, 4, hf_index, NULL);
3744
3745
0
  return offset;
3746
0
}
3747
3748
3749
static const value_string qsig_ct_T_resultExtension_vals[] = {
3750
  {   6, "single" },
3751
  {   7, "multiple" },
3752
  { 0, NULL }
3753
};
3754
3755
static const ber_choice_t qsig_ct_T_resultExtension_choice[] = {
3756
  {   6, &hf_qsig_ct_single      , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3757
  {   7, &hf_qsig_ct_multiple    , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3758
  { 0, NULL, 0, 0, 0, NULL }
3759
};
3760
3761
static unsigned
3762
0
dissect_qsig_ct_T_resultExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3763
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3764
0
                                 qsig_ct_T_resultExtension_choice, hf_index, ett_qsig_ct_T_resultExtension,
3765
0
                                 NULL);
3766
3767
0
  return offset;
3768
0
}
3769
3770
3771
static const ber_sequence_t qsig_ct_CTIdentifyRes_sequence[] = {
3772
  { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3773
  { &hf_qsig_ct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3774
  { &hf_qsig_ct_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_T_resultExtension },
3775
  { NULL, 0, 0, 0, NULL }
3776
};
3777
3778
static unsigned
3779
0
dissect_qsig_ct_CTIdentifyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3780
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3781
0
                                   qsig_ct_CTIdentifyRes_sequence, hf_index, ett_qsig_ct_CTIdentifyRes);
3782
3783
0
  return offset;
3784
0
}
3785
3786
3787
static const value_string qsig_ct_CTIargumentExtension_vals[] = {
3788
  {   6, "single" },
3789
  {   7, "multiple" },
3790
  { 0, NULL }
3791
};
3792
3793
static const ber_choice_t qsig_ct_CTIargumentExtension_choice[] = {
3794
  {   6, &hf_qsig_ct_single      , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3795
  {   7, &hf_qsig_ct_multiple    , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3796
  { 0, NULL, 0, 0, 0, NULL }
3797
};
3798
3799
static unsigned
3800
0
dissect_qsig_ct_CTIargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3801
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3802
0
                                 qsig_ct_CTIargumentExtension_choice, hf_index, ett_qsig_ct_CTIargumentExtension,
3803
0
                                 NULL);
3804
3805
0
  return offset;
3806
0
}
3807
3808
3809
static const ber_sequence_t qsig_ct_CTInitiateArg_sequence[] = {
3810
  { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3811
  { &hf_qsig_ct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3812
  { &hf_qsig_ct_argumentExtensionCTI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTIargumentExtension },
3813
  { NULL, 0, 0, 0, NULL }
3814
};
3815
3816
static unsigned
3817
0
dissect_qsig_ct_CTInitiateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3818
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3819
0
                                   qsig_ct_CTInitiateArg_sequence, hf_index, ett_qsig_ct_CTInitiateArg);
3820
3821
0
  return offset;
3822
0
}
3823
3824
3825
static const value_string qsig_ct_CTSargumentExtension_vals[] = {
3826
  {   0, "single" },
3827
  {   1, "multiple" },
3828
  { 0, NULL }
3829
};
3830
3831
static const ber_choice_t qsig_ct_CTSargumentExtension_choice[] = {
3832
  {   0, &hf_qsig_ct_single      , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3833
  {   1, &hf_qsig_ct_multiple    , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3834
  { 0, NULL, 0, 0, 0, NULL }
3835
};
3836
3837
static unsigned
3838
0
dissect_qsig_ct_CTSargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3839
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3840
0
                                 qsig_ct_CTSargumentExtension_choice, hf_index, ett_qsig_ct_CTSargumentExtension,
3841
0
                                 NULL);
3842
3843
0
  return offset;
3844
0
}
3845
3846
3847
static const ber_sequence_t qsig_ct_CTSetupArg_sequence[] = {
3848
  { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3849
  { &hf_qsig_ct_argumentExtensionCTS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTSargumentExtension },
3850
  { NULL, 0, 0, 0, NULL }
3851
};
3852
3853
static unsigned
3854
0
dissect_qsig_ct_CTSetupArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3855
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3856
0
                                   qsig_ct_CTSetupArg_sequence, hf_index, ett_qsig_ct_CTSetupArg);
3857
3858
0
  return offset;
3859
0
}
3860
3861
3862
static const value_string qsig_ct_CTAargumentExtension_vals[] = {
3863
  {   9, "single" },
3864
  {  10, "multiple" },
3865
  { 0, NULL }
3866
};
3867
3868
static const ber_choice_t qsig_ct_CTAargumentExtension_choice[] = {
3869
  {   9, &hf_qsig_ct_single      , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3870
  {  10, &hf_qsig_ct_multiple    , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3871
  { 0, NULL, 0, 0, 0, NULL }
3872
};
3873
3874
static unsigned
3875
0
dissect_qsig_ct_CTAargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3876
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3877
0
                                 qsig_ct_CTAargumentExtension_choice, hf_index, ett_qsig_ct_CTAargumentExtension,
3878
0
                                 NULL);
3879
3880
0
  return offset;
3881
0
}
3882
3883
3884
static const ber_sequence_t qsig_ct_CTActiveArg_sequence[] = {
3885
  { &hf_qsig_ct_connectedAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressScreened },
3886
  { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3887
  { &hf_qsig_ct_connectedName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
3888
  { &hf_qsig_ct_argumentExtensionCTA, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTAargumentExtension },
3889
  { NULL, 0, 0, 0, NULL }
3890
};
3891
3892
static unsigned
3893
0
dissect_qsig_ct_CTActiveArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3894
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3895
0
                                   qsig_ct_CTActiveArg_sequence, hf_index, ett_qsig_ct_CTActiveArg);
3896
3897
0
  return offset;
3898
0
}
3899
3900
3901
static const value_string qsig_ct_EndDesignation_vals[] = {
3902
  {   0, "primaryEnd" },
3903
  {   1, "secondaryEnd" },
3904
  { 0, NULL }
3905
};
3906
3907
3908
static unsigned
3909
0
dissect_qsig_ct_EndDesignation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3910
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3911
0
                                  NULL);
3912
3913
0
  return offset;
3914
0
}
3915
3916
3917
static const value_string qsig_ct_CallStatus_vals[] = {
3918
  {   0, "answered" },
3919
  {   1, "alerting" },
3920
  { 0, NULL }
3921
};
3922
3923
3924
static unsigned
3925
0
dissect_qsig_ct_CallStatus(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3926
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3927
0
                                  NULL);
3928
3929
0
  return offset;
3930
0
}
3931
3932
3933
static const value_string qsig_ct_CTCargumentExtension_vals[] = {
3934
  {   9, "single" },
3935
  {  10, "multiple" },
3936
  { 0, NULL }
3937
};
3938
3939
static const ber_choice_t qsig_ct_CTCargumentExtension_choice[] = {
3940
  {   9, &hf_qsig_ct_single      , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3941
  {  10, &hf_qsig_ct_multiple    , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3942
  { 0, NULL, 0, 0, 0, NULL }
3943
};
3944
3945
static unsigned
3946
0
dissect_qsig_ct_CTCargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3947
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3948
0
                                 qsig_ct_CTCargumentExtension_choice, hf_index, ett_qsig_ct_CTCargumentExtension,
3949
0
                                 NULL);
3950
3951
0
  return offset;
3952
0
}
3953
3954
3955
static const ber_sequence_t qsig_ct_CTCompleteArg_sequence[] = {
3956
  { &hf_qsig_ct_endDesignation, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_EndDesignation },
3957
  { &hf_qsig_ct_redirectionNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
3958
  { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3959
  { &hf_qsig_ct_redirectionName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
3960
  { &hf_qsig_ct_callStatus  , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallStatus },
3961
  { &hf_qsig_ct_argumentExtensionCTC, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTCargumentExtension },
3962
  { NULL, 0, 0, 0, NULL }
3963
};
3964
3965
static unsigned
3966
0
dissect_qsig_ct_CTCompleteArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3967
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3968
0
                                   qsig_ct_CTCompleteArg_sequence, hf_index, ett_qsig_ct_CTCompleteArg);
3969
3970
0
  return offset;
3971
0
}
3972
3973
3974
static const value_string qsig_ct_CTUargumentExtension_vals[] = {
3975
  {   9, "single" },
3976
  {  10, "multiple" },
3977
  { 0, NULL }
3978
};
3979
3980
static const ber_choice_t qsig_ct_CTUargumentExtension_choice[] = {
3981
  {   9, &hf_qsig_ct_single      , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3982
  {  10, &hf_qsig_ct_multiple    , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3983
  { 0, NULL, 0, 0, 0, NULL }
3984
};
3985
3986
static unsigned
3987
0
dissect_qsig_ct_CTUargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3988
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
3989
0
                                 qsig_ct_CTUargumentExtension_choice, hf_index, ett_qsig_ct_CTUargumentExtension,
3990
0
                                 NULL);
3991
3992
0
  return offset;
3993
0
}
3994
3995
3996
static const ber_sequence_t qsig_ct_CTUpdateArg_sequence[] = {
3997
  { &hf_qsig_ct_redirectionNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
3998
  { &hf_qsig_ct_redirectionName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
3999
  { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4000
  { &hf_qsig_ct_argumentExtensionCTU, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTUargumentExtension },
4001
  { NULL, 0, 0, 0, NULL }
4002
};
4003
4004
static unsigned
4005
0
dissect_qsig_ct_CTUpdateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4006
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4007
0
                                   qsig_ct_CTUpdateArg_sequence, hf_index, ett_qsig_ct_CTUpdateArg);
4008
4009
0
  return offset;
4010
0
}
4011
4012
4013
static const value_string qsig_ct_STargumentExtension_vals[] = {
4014
  {   0, "single" },
4015
  {   1, "multiple" },
4016
  { 0, NULL }
4017
};
4018
4019
static const ber_choice_t qsig_ct_STargumentExtension_choice[] = {
4020
  {   0, &hf_qsig_ct_single      , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4021
  {   1, &hf_qsig_ct_multiple    , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
4022
  { 0, NULL, 0, 0, 0, NULL }
4023
};
4024
4025
static unsigned
4026
0
dissect_qsig_ct_STargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4027
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4028
0
                                 qsig_ct_STargumentExtension_choice, hf_index, ett_qsig_ct_STargumentExtension,
4029
0
                                 NULL);
4030
4031
0
  return offset;
4032
0
}
4033
4034
4035
static const ber_sequence_t qsig_ct_SubaddressTransferArg_sequence[] = {
4036
  { &hf_qsig_ct_redirectionSubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartySubaddress },
4037
  { &hf_qsig_ct_argumentExtensionST, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_STargumentExtension },
4038
  { NULL, 0, 0, 0, NULL }
4039
};
4040
4041
static unsigned
4042
0
dissect_qsig_ct_SubaddressTransferArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4043
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4044
0
                                   qsig_ct_SubaddressTransferArg_sequence, hf_index, ett_qsig_ct_SubaddressTransferArg);
4045
4046
0
  return offset;
4047
0
}
4048
4049
/*--- PDUs ---*/
4050
4051
0
static int dissect_qsig_ct_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4052
0
  unsigned offset = 0;
4053
0
  asn1_ctx_t asn1_ctx;
4054
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4055
0
  offset = dissect_qsig_ct_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_DummyArg_PDU);
4056
0
  return offset;
4057
0
}
4058
0
static int dissect_qsig_ct_CTIdentifyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4059
0
  unsigned offset = 0;
4060
0
  asn1_ctx_t asn1_ctx;
4061
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4062
0
  offset = dissect_qsig_ct_CTIdentifyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU);
4063
0
  return offset;
4064
0
}
4065
0
static int dissect_qsig_ct_CTInitiateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4066
0
  unsigned offset = 0;
4067
0
  asn1_ctx_t asn1_ctx;
4068
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4069
0
  offset = dissect_qsig_ct_CTInitiateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTInitiateArg_PDU);
4070
0
  return offset;
4071
0
}
4072
0
static int dissect_qsig_ct_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4073
0
  unsigned offset = 0;
4074
0
  asn1_ctx_t asn1_ctx;
4075
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4076
0
  offset = dissect_qsig_ct_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_DummyRes_PDU);
4077
0
  return offset;
4078
0
}
4079
0
static int dissect_qsig_ct_CTSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4080
0
  unsigned offset = 0;
4081
0
  asn1_ctx_t asn1_ctx;
4082
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4083
0
  offset = dissect_qsig_ct_CTSetupArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTSetupArg_PDU);
4084
0
  return offset;
4085
0
}
4086
0
static int dissect_qsig_ct_CTActiveArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4087
0
  unsigned offset = 0;
4088
0
  asn1_ctx_t asn1_ctx;
4089
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4090
0
  offset = dissect_qsig_ct_CTActiveArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTActiveArg_PDU);
4091
0
  return offset;
4092
0
}
4093
0
static int dissect_qsig_ct_CTCompleteArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4094
0
  unsigned offset = 0;
4095
0
  asn1_ctx_t asn1_ctx;
4096
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4097
0
  offset = dissect_qsig_ct_CTCompleteArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTCompleteArg_PDU);
4098
0
  return offset;
4099
0
}
4100
0
static int dissect_qsig_ct_CTUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4101
0
  unsigned offset = 0;
4102
0
  asn1_ctx_t asn1_ctx;
4103
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4104
0
  offset = dissect_qsig_ct_CTUpdateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTUpdateArg_PDU);
4105
0
  return offset;
4106
0
}
4107
0
static int dissect_qsig_ct_SubaddressTransferArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4108
0
  unsigned offset = 0;
4109
0
  asn1_ctx_t asn1_ctx;
4110
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4111
0
  offset = dissect_qsig_ct_SubaddressTransferArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU);
4112
0
  return offset;
4113
0
}
4114
0
static int dissect_qsig_ct_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4115
0
  unsigned offset = 0;
4116
0
  asn1_ctx_t asn1_ctx;
4117
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4118
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_Extension_PDU);
4119
0
  return offset;
4120
0
}
4121
4122
4123
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
4124
4125
4126
4127
static unsigned
4128
0
dissect_qsig_cc_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4129
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
4130
4131
0
  return offset;
4132
0
}
4133
4134
4135
4136
static unsigned
4137
0
dissect_qsig_cc_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4138
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4139
4140
0
  return offset;
4141
0
}
4142
4143
4144
static const ber_sequence_t qsig_cc_SEQUENCE_OF_Extension_sequence_of[1] = {
4145
  { &hf_qsig_cc_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4146
};
4147
4148
static unsigned
4149
0
dissect_qsig_cc_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4150
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4151
0
                                      qsig_cc_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cc_SEQUENCE_OF_Extension);
4152
4153
0
  return offset;
4154
0
}
4155
4156
4157
static const value_string qsig_cc_CcExtension_vals[] = {
4158
  {   0, "none" },
4159
  {   1, "single" },
4160
  {   2, "multiple" },
4161
  { 0, NULL }
4162
};
4163
4164
static const ber_choice_t qsig_cc_CcExtension_choice[] = {
4165
  {   0, &hf_qsig_cc_none        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cc_NULL },
4166
  {   1, &hf_qsig_cc_single      , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4167
  {   2, &hf_qsig_cc_multiple    , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_qsig_cc_SEQUENCE_OF_Extension },
4168
  { 0, NULL, 0, 0, 0, NULL }
4169
};
4170
4171
static unsigned
4172
0
dissect_qsig_cc_CcExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4173
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4174
0
                                 qsig_cc_CcExtension_choice, hf_index, ett_qsig_cc_CcExtension,
4175
0
                                 NULL);
4176
4177
0
  return offset;
4178
0
}
4179
4180
4181
static const ber_sequence_t qsig_cc_CcRequestArg_sequence[] = {
4182
  { &hf_qsig_cc_numberA     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberUnscreened },
4183
  { &hf_qsig_cc_numberB     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4184
  { &hf_qsig_cc_service     , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4185
  { &hf_qsig_cc_subaddrA    , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4186
  { &hf_qsig_cc_subaddrB    , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4187
  { &hf_qsig_cc_can_retain_service, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4188
  { &hf_qsig_cc_retain_sig_connection, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4189
  { &hf_qsig_cc_extension   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4190
  { NULL, 0, 0, 0, NULL }
4191
};
4192
4193
static unsigned
4194
0
dissect_qsig_cc_CcRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4195
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4196
0
                                   qsig_cc_CcRequestArg_sequence, hf_index, ett_qsig_cc_CcRequestArg);
4197
4198
0
  return offset;
4199
0
}
4200
4201
4202
static const ber_sequence_t qsig_cc_CcRequestRes_sequence[] = {
4203
  { &hf_qsig_cc_no_path_reservation, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4204
  { &hf_qsig_cc_retain_service, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4205
  { &hf_qsig_cc_extension   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4206
  { NULL, 0, 0, 0, NULL }
4207
};
4208
4209
static unsigned
4210
0
dissect_qsig_cc_CcRequestRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4211
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4212
0
                                   qsig_cc_CcRequestRes_sequence, hf_index, ett_qsig_cc_CcRequestRes);
4213
4214
0
  return offset;
4215
0
}
4216
4217
4218
static const ber_sequence_t qsig_cc_T_fullArg_sequence[] = {
4219
  { &hf_qsig_cc_numberA_01  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4220
  { &hf_qsig_cc_numberB     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4221
  { &hf_qsig_cc_service     , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4222
  { &hf_qsig_cc_subaddrA    , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4223
  { &hf_qsig_cc_subaddrB    , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4224
  { &hf_qsig_cc_extension   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4225
  { NULL, 0, 0, 0, NULL }
4226
};
4227
4228
static unsigned
4229
0
dissect_qsig_cc_T_fullArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4230
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4231
0
                                   qsig_cc_T_fullArg_sequence, hf_index, ett_qsig_cc_T_fullArg);
4232
4233
0
  return offset;
4234
0
}
4235
4236
4237
static const value_string qsig_cc_CcOptionalArg_vals[] = {
4238
  {   0, "fullArg" },
4239
  {   1, "extArg" },
4240
  { 0, NULL }
4241
};
4242
4243
static const ber_choice_t qsig_cc_CcOptionalArg_choice[] = {
4244
  {   0, &hf_qsig_cc_fullArg     , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_cc_T_fullArg },
4245
  {   1, &hf_qsig_cc_extArg      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_cc_CcExtension },
4246
  { 0, NULL, 0, 0, 0, NULL }
4247
};
4248
4249
static unsigned
4250
0
dissect_qsig_cc_CcOptionalArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4251
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4252
0
                                 qsig_cc_CcOptionalArg_choice, hf_index, ett_qsig_cc_CcOptionalArg,
4253
0
                                 NULL);
4254
4255
0
  return offset;
4256
0
}
4257
4258
/*--- PDUs ---*/
4259
4260
0
static int dissect_qsig_cc_CcRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4261
0
  unsigned offset = 0;
4262
0
  asn1_ctx_t asn1_ctx;
4263
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4264
0
  offset = dissect_qsig_cc_CcRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcRequestArg_PDU);
4265
0
  return offset;
4266
0
}
4267
0
static int dissect_qsig_cc_CcRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4268
0
  unsigned offset = 0;
4269
0
  asn1_ctx_t asn1_ctx;
4270
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4271
0
  offset = dissect_qsig_cc_CcRequestRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcRequestRes_PDU);
4272
0
  return offset;
4273
0
}
4274
0
static int dissect_qsig_cc_CcOptionalArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4275
0
  unsigned offset = 0;
4276
0
  asn1_ctx_t asn1_ctx;
4277
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4278
0
  offset = dissect_qsig_cc_CcOptionalArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcOptionalArg_PDU);
4279
0
  return offset;
4280
0
}
4281
0
static int dissect_qsig_cc_CcExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4282
0
  unsigned offset = 0;
4283
0
  asn1_ctx_t asn1_ctx;
4284
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4285
0
  offset = dissect_qsig_cc_CcExtension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcExtension_PDU);
4286
0
  return offset;
4287
0
}
4288
0
static int dissect_qsig_cc_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4289
0
  unsigned offset = 0;
4290
0
  asn1_ctx_t asn1_ctx;
4291
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4292
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_Extension_PDU);
4293
0
  return offset;
4294
0
}
4295
4296
4297
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
4298
4299
4300
static int * const qsig_co_ServiceList_bits[] = {
4301
  &hf_qsig_co_ServiceList_callOffer,
4302
  NULL
4303
};
4304
4305
static unsigned
4306
0
dissect_qsig_co_ServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4307
0
  offset = dissect_ber_constrained_bitstring(implicit_tag, actx, tree, tvb, offset,
4308
0
                                                1, 32, qsig_co_ServiceList_bits, 1, hf_index, ett_qsig_co_ServiceList,
4309
0
                                                NULL);
4310
4311
0
  return offset;
4312
0
}
4313
4314
4315
static const ber_sequence_t qsig_co_T_extendedServiceList_sequence[] = {
4316
  { &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4317
  { &hf_qsig_co_extension   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4318
  { NULL, 0, 0, 0, NULL }
4319
};
4320
4321
static unsigned
4322
0
dissect_qsig_co_T_extendedServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4323
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4324
0
                                   qsig_co_T_extendedServiceList_sequence, hf_index, ett_qsig_co_T_extendedServiceList);
4325
4326
0
  return offset;
4327
0
}
4328
4329
4330
static const value_string qsig_co_PathRetainArg_vals[] = {
4331
  {   0, "serviceList" },
4332
  {   1, "extendedServiceList" },
4333
  { 0, NULL }
4334
};
4335
4336
static const ber_choice_t qsig_co_PathRetainArg_choice[] = {
4337
  {   0, &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4338
  {   1, &hf_qsig_co_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_co_T_extendedServiceList },
4339
  { 0, NULL, 0, 0, 0, NULL }
4340
};
4341
4342
static unsigned
4343
0
dissect_qsig_co_PathRetainArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4344
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4345
0
                                 qsig_co_PathRetainArg_choice, hf_index, ett_qsig_co_PathRetainArg,
4346
0
                                 NULL);
4347
4348
0
  return offset;
4349
0
}
4350
4351
4352
static const ber_sequence_t qsig_co_T_extendedServiceList_01_sequence[] = {
4353
  { &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4354
  { &hf_qsig_co_extension   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4355
  { NULL, 0, 0, 0, NULL }
4356
};
4357
4358
static unsigned
4359
0
dissect_qsig_co_T_extendedServiceList_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4360
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4361
0
                                   qsig_co_T_extendedServiceList_01_sequence, hf_index, ett_qsig_co_T_extendedServiceList_01);
4362
4363
0
  return offset;
4364
0
}
4365
4366
4367
static const value_string qsig_co_ServiceAvailableArg_vals[] = {
4368
  {   0, "serviceList" },
4369
  {   1, "extendedServiceList" },
4370
  { 0, NULL }
4371
};
4372
4373
static const ber_choice_t qsig_co_ServiceAvailableArg_choice[] = {
4374
  {   0, &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4375
  {   1, &hf_qsig_co_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_co_T_extendedServiceList_01 },
4376
  { 0, NULL, 0, 0, 0, NULL }
4377
};
4378
4379
static unsigned
4380
0
dissect_qsig_co_ServiceAvailableArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4381
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4382
0
                                 qsig_co_ServiceAvailableArg_choice, hf_index, ett_qsig_co_ServiceAvailableArg,
4383
0
                                 NULL);
4384
4385
0
  return offset;
4386
0
}
4387
4388
4389
4390
static unsigned
4391
0
dissect_qsig_co_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4392
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4393
4394
0
  return offset;
4395
0
}
4396
4397
4398
static const ber_sequence_t qsig_co_SEQUENCE_OF_Extension_sequence_of[1] = {
4399
  { &hf_qsig_co_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4400
};
4401
4402
static unsigned
4403
0
dissect_qsig_co_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4404
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4405
0
                                      qsig_co_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_co_SEQUENCE_OF_Extension);
4406
4407
0
  return offset;
4408
0
}
4409
4410
4411
static const value_string qsig_co_DummyArg_vals[] = {
4412
  {   0, "null" },
4413
  {   1, "extension" },
4414
  {   2, "sequenceOfExtn" },
4415
  { 0, NULL }
4416
};
4417
4418
static const ber_choice_t qsig_co_DummyArg_choice[] = {
4419
  {   0, &hf_qsig_co_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_co_NULL },
4420
  {   1, &hf_qsig_co_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4421
  {   2, &hf_qsig_co_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_co_SEQUENCE_OF_Extension },
4422
  { 0, NULL, 0, 0, 0, NULL }
4423
};
4424
4425
static unsigned
4426
0
dissect_qsig_co_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4427
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4428
0
                                 qsig_co_DummyArg_choice, hf_index, ett_qsig_co_DummyArg,
4429
0
                                 NULL);
4430
4431
0
  return offset;
4432
0
}
4433
4434
4435
static const value_string qsig_co_DummyRes_vals[] = {
4436
  {   0, "null" },
4437
  {   1, "extension" },
4438
  {   2, "sequenceOfExtn" },
4439
  { 0, NULL }
4440
};
4441
4442
static const ber_choice_t qsig_co_DummyRes_choice[] = {
4443
  {   0, &hf_qsig_co_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_co_NULL },
4444
  {   1, &hf_qsig_co_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4445
  {   2, &hf_qsig_co_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_co_SEQUENCE_OF_Extension },
4446
  { 0, NULL, 0, 0, 0, NULL }
4447
};
4448
4449
static unsigned
4450
0
dissect_qsig_co_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4451
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4452
0
                                 qsig_co_DummyRes_choice, hf_index, ett_qsig_co_DummyRes,
4453
0
                                 NULL);
4454
4455
0
  return offset;
4456
0
}
4457
4458
/*--- PDUs ---*/
4459
4460
0
static int dissect_qsig_co_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4461
0
  unsigned offset = 0;
4462
0
  asn1_ctx_t asn1_ctx;
4463
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4464
0
  offset = dissect_qsig_co_PathRetainArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_PathRetainArg_PDU);
4465
0
  return offset;
4466
0
}
4467
0
static int dissect_qsig_co_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4468
0
  unsigned offset = 0;
4469
0
  asn1_ctx_t asn1_ctx;
4470
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4471
0
  offset = dissect_qsig_co_ServiceAvailableArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_ServiceAvailableArg_PDU);
4472
0
  return offset;
4473
0
}
4474
0
static int dissect_qsig_co_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4475
0
  unsigned offset = 0;
4476
0
  asn1_ctx_t asn1_ctx;
4477
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4478
0
  offset = dissect_qsig_co_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_DummyArg_PDU);
4479
0
  return offset;
4480
0
}
4481
0
static int dissect_qsig_co_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4482
0
  unsigned offset = 0;
4483
0
  asn1_ctx_t asn1_ctx;
4484
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4485
0
  offset = dissect_qsig_co_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_DummyRes_PDU);
4486
0
  return offset;
4487
0
}
4488
0
static int dissect_qsig_co_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4489
0
  unsigned offset = 0;
4490
0
  asn1_ctx_t asn1_ctx;
4491
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4492
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_Extension_PDU);
4493
0
  return offset;
4494
0
}
4495
4496
4497
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
4498
4499
4500
4501
static unsigned
4502
0
dissect_qsig_dnd_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4503
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4504
4505
0
  return offset;
4506
0
}
4507
4508
4509
static const ber_sequence_t qsig_dnd_SEQUENCE_OF_Extension_sequence_of[1] = {
4510
  { &hf_qsig_dnd_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4511
};
4512
4513
static unsigned
4514
0
dissect_qsig_dnd_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4515
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4516
0
                                      qsig_dnd_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_dnd_SEQUENCE_OF_Extension);
4517
4518
0
  return offset;
4519
0
}
4520
4521
4522
static const value_string qsig_dnd_DummyArg_vals[] = {
4523
  {   0, "null" },
4524
  {   1, "extension" },
4525
  {   2, "sequenceOfExtn" },
4526
  { 0, NULL }
4527
};
4528
4529
static const ber_choice_t qsig_dnd_DummyArg_choice[] = {
4530
  {   0, &hf_qsig_dnd_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_NULL },
4531
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4532
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4533
  { 0, NULL, 0, 0, 0, NULL }
4534
};
4535
4536
static unsigned
4537
0
dissect_qsig_dnd_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4538
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4539
0
                                 qsig_dnd_DummyArg_choice, hf_index, ett_qsig_dnd_DummyArg,
4540
0
                                 NULL);
4541
4542
0
  return offset;
4543
0
}
4544
4545
4546
static const value_string qsig_dnd_DummyRes_vals[] = {
4547
  {   0, "null" },
4548
  {   1, "extension" },
4549
  {   2, "sequenceOfExtn" },
4550
  { 0, NULL }
4551
};
4552
4553
static const ber_choice_t qsig_dnd_DummyRes_choice[] = {
4554
  {   0, &hf_qsig_dnd_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_NULL },
4555
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4556
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4557
  { 0, NULL, 0, 0, 0, NULL }
4558
};
4559
4560
static unsigned
4561
0
dissect_qsig_dnd_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4562
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4563
0
                                 qsig_dnd_DummyRes_choice, hf_index, ett_qsig_dnd_DummyRes,
4564
0
                                 NULL);
4565
4566
0
  return offset;
4567
0
}
4568
4569
4570
static const value_string qsig_dnd_DNDAargumentExtension_vals[] = {
4571
  {   1, "extension" },
4572
  {   2, "sequenceOfExtn" },
4573
  { 0, NULL }
4574
};
4575
4576
static const ber_choice_t qsig_dnd_DNDAargumentExtension_choice[] = {
4577
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4578
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4579
  { 0, NULL, 0, 0, 0, NULL }
4580
};
4581
4582
static unsigned
4583
0
dissect_qsig_dnd_DNDAargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4584
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4585
0
                                 qsig_dnd_DNDAargumentExtension_choice, hf_index, ett_qsig_dnd_DNDAargumentExtension,
4586
0
                                 NULL);
4587
4588
0
  return offset;
4589
0
}
4590
4591
4592
static const ber_sequence_t qsig_dnd_DNDActivateArg_sequence[] = {
4593
  { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4594
  { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4595
  { &hf_qsig_dnd_argumentExtensionDNDA, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDAargumentExtension },
4596
  { NULL, 0, 0, 0, NULL }
4597
};
4598
4599
static unsigned
4600
0
dissect_qsig_dnd_DNDActivateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4601
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4602
0
                                   qsig_dnd_DNDActivateArg_sequence, hf_index, ett_qsig_dnd_DNDActivateArg);
4603
4604
0
  return offset;
4605
0
}
4606
4607
4608
static const value_string qsig_dnd_DNDProtectionLevel_vals[] = {
4609
  {   0, "lowProtection" },
4610
  {   1, "mediumProtection" },
4611
  {   2, "highProtection" },
4612
  {   3, "fullProtection" },
4613
  { 0, NULL }
4614
};
4615
4616
4617
static unsigned
4618
0
dissect_qsig_dnd_DNDProtectionLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4619
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4620
0
                                  NULL);
4621
4622
0
  return offset;
4623
0
}
4624
4625
4626
static const ber_sequence_t qsig_dnd_T_status_item_sequence[] = {
4627
  { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4628
  { &hf_qsig_dnd_dndProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDProtectionLevel },
4629
  { NULL, 0, 0, 0, NULL }
4630
};
4631
4632
static unsigned
4633
0
dissect_qsig_dnd_T_status_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4634
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4635
0
                                   qsig_dnd_T_status_item_sequence, hf_index, ett_qsig_dnd_T_status_item);
4636
4637
0
  return offset;
4638
0
}
4639
4640
4641
static const ber_sequence_t qsig_dnd_T_status_set_of[1] = {
4642
  { &hf_qsig_dnd_status_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_item },
4643
};
4644
4645
static unsigned
4646
0
dissect_qsig_dnd_T_status(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4647
0
  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4648
0
                                 qsig_dnd_T_status_set_of, hf_index, ett_qsig_dnd_T_status);
4649
4650
0
  return offset;
4651
0
}
4652
4653
4654
static const value_string qsig_dnd_T_resultExtension_vals[] = {
4655
  {   1, "extension" },
4656
  {   2, "sequenceOfExtn" },
4657
  { 0, NULL }
4658
};
4659
4660
static const ber_choice_t qsig_dnd_T_resultExtension_choice[] = {
4661
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4662
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4663
  { 0, NULL, 0, 0, 0, NULL }
4664
};
4665
4666
static unsigned
4667
0
dissect_qsig_dnd_T_resultExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4668
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4669
0
                                 qsig_dnd_T_resultExtension_choice, hf_index, ett_qsig_dnd_T_resultExtension,
4670
0
                                 NULL);
4671
4672
0
  return offset;
4673
0
}
4674
4675
4676
static const ber_sequence_t qsig_dnd_DNDActivateRes_sequence[] = {
4677
  { &hf_qsig_dnd_status     , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status },
4678
  { &hf_qsig_dnd_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_T_resultExtension },
4679
  { NULL, 0, 0, 0, NULL }
4680
};
4681
4682
static unsigned
4683
0
dissect_qsig_dnd_DNDActivateRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4684
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4685
0
                                   qsig_dnd_DNDActivateRes_sequence, hf_index, ett_qsig_dnd_DNDActivateRes);
4686
4687
0
  return offset;
4688
0
}
4689
4690
4691
static const value_string qsig_dnd_DNDDargumentExtension_vals[] = {
4692
  {   1, "extension" },
4693
  {   2, "sequenceOfExtn" },
4694
  { 0, NULL }
4695
};
4696
4697
static const ber_choice_t qsig_dnd_DNDDargumentExtension_choice[] = {
4698
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4699
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4700
  { 0, NULL, 0, 0, 0, NULL }
4701
};
4702
4703
static unsigned
4704
0
dissect_qsig_dnd_DNDDargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4705
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4706
0
                                 qsig_dnd_DNDDargumentExtension_choice, hf_index, ett_qsig_dnd_DNDDargumentExtension,
4707
0
                                 NULL);
4708
4709
0
  return offset;
4710
0
}
4711
4712
4713
static const ber_sequence_t qsig_dnd_DNDDeactivateArg_sequence[] = {
4714
  { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4715
  { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4716
  { &hf_qsig_dnd_argumentExtensionDNDD, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDDargumentExtension },
4717
  { NULL, 0, 0, 0, NULL }
4718
};
4719
4720
static unsigned
4721
0
dissect_qsig_dnd_DNDDeactivateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4722
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4723
0
                                   qsig_dnd_DNDDeactivateArg_sequence, hf_index, ett_qsig_dnd_DNDDeactivateArg);
4724
4725
0
  return offset;
4726
0
}
4727
4728
4729
static const value_string qsig_dnd_DNDIargumentExtension_vals[] = {
4730
  {   1, "extension" },
4731
  {   2, "sequenceOfExtn" },
4732
  { 0, NULL }
4733
};
4734
4735
static const ber_choice_t qsig_dnd_DNDIargumentExtension_choice[] = {
4736
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4737
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4738
  { 0, NULL, 0, 0, 0, NULL }
4739
};
4740
4741
static unsigned
4742
0
dissect_qsig_dnd_DNDIargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4743
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4744
0
                                 qsig_dnd_DNDIargumentExtension_choice, hf_index, ett_qsig_dnd_DNDIargumentExtension,
4745
0
                                 NULL);
4746
4747
0
  return offset;
4748
0
}
4749
4750
4751
static const ber_sequence_t qsig_dnd_DNDInterrogateArg_sequence[] = {
4752
  { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4753
  { &hf_qsig_dnd_argumentExtensionDNDI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDIargumentExtension },
4754
  { NULL, 0, 0, 0, NULL }
4755
};
4756
4757
static unsigned
4758
0
dissect_qsig_dnd_DNDInterrogateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4759
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4760
0
                                   qsig_dnd_DNDInterrogateArg_sequence, hf_index, ett_qsig_dnd_DNDInterrogateArg);
4761
4762
0
  return offset;
4763
0
}
4764
4765
4766
static const ber_sequence_t qsig_dnd_T_status_item_01_sequence[] = {
4767
  { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4768
  { &hf_qsig_dnd_dndProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDProtectionLevel },
4769
  { NULL, 0, 0, 0, NULL }
4770
};
4771
4772
static unsigned
4773
0
dissect_qsig_dnd_T_status_item_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4774
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4775
0
                                   qsig_dnd_T_status_item_01_sequence, hf_index, ett_qsig_dnd_T_status_item_01);
4776
4777
0
  return offset;
4778
0
}
4779
4780
4781
static const ber_sequence_t qsig_dnd_T_status_01_set_of[1] = {
4782
  { &hf_qsig_dnd_status_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_item_01 },
4783
};
4784
4785
static unsigned
4786
0
dissect_qsig_dnd_T_status_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4787
0
  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4788
0
                                 qsig_dnd_T_status_01_set_of, hf_index, ett_qsig_dnd_T_status_01);
4789
4790
0
  return offset;
4791
0
}
4792
4793
4794
static const value_string qsig_dnd_T_resultExtension_01_vals[] = {
4795
  {   1, "extension" },
4796
  {   2, "sequenceOfExtn" },
4797
  { 0, NULL }
4798
};
4799
4800
static const ber_choice_t qsig_dnd_T_resultExtension_01_choice[] = {
4801
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4802
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4803
  { 0, NULL, 0, 0, 0, NULL }
4804
};
4805
4806
static unsigned
4807
0
dissect_qsig_dnd_T_resultExtension_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4808
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4809
0
                                 qsig_dnd_T_resultExtension_01_choice, hf_index, ett_qsig_dnd_T_resultExtension_01,
4810
0
                                 NULL);
4811
4812
0
  return offset;
4813
0
}
4814
4815
4816
static const ber_sequence_t qsig_dnd_DNDInterrogateRes_sequence[] = {
4817
  { &hf_qsig_dnd_status_01  , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_01 },
4818
  { &hf_qsig_dnd_resultExtension_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_T_resultExtension_01 },
4819
  { NULL, 0, 0, 0, NULL }
4820
};
4821
4822
static unsigned
4823
0
dissect_qsig_dnd_DNDInterrogateRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4824
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4825
0
                                   qsig_dnd_DNDInterrogateRes_sequence, hf_index, ett_qsig_dnd_DNDInterrogateRes);
4826
4827
0
  return offset;
4828
0
}
4829
4830
4831
static const value_string qsig_dnd_DNDOCapabilityLevel_vals[] = {
4832
  {   1, "overrideLowProt" },
4833
  {   2, "overrideMediumProt" },
4834
  {   3, "overrideHighProt" },
4835
  { 0, NULL }
4836
};
4837
4838
4839
static unsigned
4840
0
dissect_qsig_dnd_DNDOCapabilityLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4841
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4842
0
                                  NULL);
4843
4844
0
  return offset;
4845
0
}
4846
4847
4848
static const value_string qsig_dnd_DNDOargumentExtension_vals[] = {
4849
  {   1, "extension" },
4850
  {   2, "sequenceOfExtn" },
4851
  { 0, NULL }
4852
};
4853
4854
static const ber_choice_t qsig_dnd_DNDOargumentExtension_choice[] = {
4855
  {   1, &hf_qsig_dnd_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4856
  {   2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4857
  { 0, NULL, 0, 0, 0, NULL }
4858
};
4859
4860
static unsigned
4861
0
dissect_qsig_dnd_DNDOargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4862
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4863
0
                                 qsig_dnd_DNDOargumentExtension_choice, hf_index, ett_qsig_dnd_DNDOargumentExtension,
4864
0
                                 NULL);
4865
4866
0
  return offset;
4867
0
}
4868
4869
4870
static const ber_sequence_t qsig_dnd_DNDOverrideArg_sequence[] = {
4871
  { &hf_qsig_dnd_dndoCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDOCapabilityLevel },
4872
  { &hf_qsig_dnd_argumentExtensionDNDO, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDOargumentExtension },
4873
  { NULL, 0, 0, 0, NULL }
4874
};
4875
4876
static unsigned
4877
0
dissect_qsig_dnd_DNDOverrideArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4878
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4879
0
                                   qsig_dnd_DNDOverrideArg_sequence, hf_index, ett_qsig_dnd_DNDOverrideArg);
4880
4881
0
  return offset;
4882
0
}
4883
4884
4885
static int * const qsig_dnd_ServiceList_bits[] = {
4886
  &hf_qsig_dnd_ServiceList_spare_bit0,
4887
  &hf_qsig_dnd_ServiceList_dndo_low,
4888
  &hf_qsig_dnd_ServiceList_dndo_medium,
4889
  &hf_qsig_dnd_ServiceList_dndo_high,
4890
  NULL
4891
};
4892
4893
static unsigned
4894
0
dissect_qsig_dnd_ServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4895
0
  offset = dissect_ber_constrained_bitstring(implicit_tag, actx, tree, tvb, offset,
4896
0
                                                1, 32, qsig_dnd_ServiceList_bits, 4, hf_index, ett_qsig_dnd_ServiceList,
4897
0
                                                NULL);
4898
4899
0
  return offset;
4900
0
}
4901
4902
4903
static const ber_sequence_t qsig_dnd_T_extendedServiceList_sequence[] = {
4904
  { &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4905
  { &hf_qsig_dnd_extension  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4906
  { NULL, 0, 0, 0, NULL }
4907
};
4908
4909
static unsigned
4910
0
dissect_qsig_dnd_T_extendedServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4911
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4912
0
                                   qsig_dnd_T_extendedServiceList_sequence, hf_index, ett_qsig_dnd_T_extendedServiceList);
4913
4914
0
  return offset;
4915
0
}
4916
4917
4918
static const value_string qsig_dnd_PathRetainArg_vals[] = {
4919
  {   0, "serviceList" },
4920
  {   1, "extendedServiceList" },
4921
  { 0, NULL }
4922
};
4923
4924
static const ber_choice_t qsig_dnd_PathRetainArg_choice[] = {
4925
  {   0, &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4926
  {   1, &hf_qsig_dnd_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_extendedServiceList },
4927
  { 0, NULL, 0, 0, 0, NULL }
4928
};
4929
4930
static unsigned
4931
0
dissect_qsig_dnd_PathRetainArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4932
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4933
0
                                 qsig_dnd_PathRetainArg_choice, hf_index, ett_qsig_dnd_PathRetainArg,
4934
0
                                 NULL);
4935
4936
0
  return offset;
4937
0
}
4938
4939
4940
static const ber_sequence_t qsig_dnd_T_extendedServiceList_01_sequence[] = {
4941
  { &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4942
  { &hf_qsig_dnd_extension  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4943
  { NULL, 0, 0, 0, NULL }
4944
};
4945
4946
static unsigned
4947
0
dissect_qsig_dnd_T_extendedServiceList_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4948
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4949
0
                                   qsig_dnd_T_extendedServiceList_01_sequence, hf_index, ett_qsig_dnd_T_extendedServiceList_01);
4950
4951
0
  return offset;
4952
0
}
4953
4954
4955
static const value_string qsig_dnd_ServiceAvailableArg_vals[] = {
4956
  {   0, "serviceList" },
4957
  {   1, "extendedServiceList" },
4958
  { 0, NULL }
4959
};
4960
4961
static const ber_choice_t qsig_dnd_ServiceAvailableArg_choice[] = {
4962
  {   0, &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4963
  {   1, &hf_qsig_dnd_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_extendedServiceList_01 },
4964
  { 0, NULL, 0, 0, 0, NULL }
4965
};
4966
4967
static unsigned
4968
0
dissect_qsig_dnd_ServiceAvailableArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4969
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
4970
0
                                 qsig_dnd_ServiceAvailableArg_choice, hf_index, ett_qsig_dnd_ServiceAvailableArg,
4971
0
                                 NULL);
4972
4973
0
  return offset;
4974
0
}
4975
4976
/*--- PDUs ---*/
4977
4978
0
static int dissect_qsig_dnd_DNDActivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4979
0
  unsigned offset = 0;
4980
0
  asn1_ctx_t asn1_ctx;
4981
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4982
0
  offset = dissect_qsig_dnd_DNDActivateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU);
4983
0
  return offset;
4984
0
}
4985
0
static int dissect_qsig_dnd_DNDActivateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4986
0
  unsigned offset = 0;
4987
0
  asn1_ctx_t asn1_ctx;
4988
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4989
0
  offset = dissect_qsig_dnd_DNDActivateRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU);
4990
0
  return offset;
4991
0
}
4992
0
static int dissect_qsig_dnd_DNDDeactivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4993
0
  unsigned offset = 0;
4994
0
  asn1_ctx_t asn1_ctx;
4995
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
4996
0
  offset = dissect_qsig_dnd_DNDDeactivateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU);
4997
0
  return offset;
4998
0
}
4999
0
static int dissect_qsig_dnd_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5000
0
  unsigned offset = 0;
5001
0
  asn1_ctx_t asn1_ctx;
5002
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5003
0
  offset = dissect_qsig_dnd_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DummyRes_PDU);
5004
0
  return offset;
5005
0
}
5006
0
static int dissect_qsig_dnd_DNDInterrogateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5007
0
  unsigned offset = 0;
5008
0
  asn1_ctx_t asn1_ctx;
5009
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5010
0
  offset = dissect_qsig_dnd_DNDInterrogateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU);
5011
0
  return offset;
5012
0
}
5013
0
static int dissect_qsig_dnd_DNDInterrogateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5014
0
  unsigned offset = 0;
5015
0
  asn1_ctx_t asn1_ctx;
5016
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5017
0
  offset = dissect_qsig_dnd_DNDInterrogateRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU);
5018
0
  return offset;
5019
0
}
5020
0
static int dissect_qsig_dnd_DNDOverrideArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5021
0
  unsigned offset = 0;
5022
0
  asn1_ctx_t asn1_ctx;
5023
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5024
0
  offset = dissect_qsig_dnd_DNDOverrideArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU);
5025
0
  return offset;
5026
0
}
5027
0
static int dissect_qsig_dnd_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5028
0
  unsigned offset = 0;
5029
0
  asn1_ctx_t asn1_ctx;
5030
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5031
0
  offset = dissect_qsig_dnd_PathRetainArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU);
5032
0
  return offset;
5033
0
}
5034
0
static int dissect_qsig_dnd_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5035
0
  unsigned offset = 0;
5036
0
  asn1_ctx_t asn1_ctx;
5037
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5038
0
  offset = dissect_qsig_dnd_ServiceAvailableArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU);
5039
0
  return offset;
5040
0
}
5041
0
static int dissect_qsig_dnd_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5042
0
  unsigned offset = 0;
5043
0
  asn1_ctx_t asn1_ctx;
5044
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5045
0
  offset = dissect_qsig_dnd_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DummyArg_PDU);
5046
0
  return offset;
5047
0
}
5048
0
static int dissect_qsig_dnd_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5049
0
  unsigned offset = 0;
5050
0
  asn1_ctx_t asn1_ctx;
5051
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5052
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_Extension_PDU);
5053
0
  return offset;
5054
0
}
5055
5056
5057
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
5058
5059
5060
static int * const qsig_ci_ServiceList_bits[] = {
5061
  &hf_qsig_ci_ServiceList_spare_bit0,
5062
  &hf_qsig_ci_ServiceList_spare_bit1,
5063
  &hf_qsig_ci_ServiceList_spare_bit2,
5064
  &hf_qsig_ci_ServiceList_spare_bit3,
5065
  &hf_qsig_ci_ServiceList_ci_low,
5066
  &hf_qsig_ci_ServiceList_ci_medium,
5067
  &hf_qsig_ci_ServiceList_ci_high,
5068
  NULL
5069
};
5070
5071
static unsigned
5072
0
dissect_qsig_ci_ServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5073
0
  offset = dissect_ber_constrained_bitstring(implicit_tag, actx, tree, tvb, offset,
5074
0
                                                1, 32, qsig_ci_ServiceList_bits, 7, hf_index, ett_qsig_ci_ServiceList,
5075
0
                                                NULL);
5076
5077
0
  return offset;
5078
0
}
5079
5080
5081
static const ber_sequence_t qsig_ci_T_extendedServiceList_sequence[] = {
5082
  { &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5083
  { &hf_qsig_ci_extension   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5084
  { NULL, 0, 0, 0, NULL }
5085
};
5086
5087
static unsigned
5088
0
dissect_qsig_ci_T_extendedServiceList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5089
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5090
0
                                   qsig_ci_T_extendedServiceList_sequence, hf_index, ett_qsig_ci_T_extendedServiceList);
5091
5092
0
  return offset;
5093
0
}
5094
5095
5096
static const value_string qsig_ci_PathRetainArg_vals[] = {
5097
  {   0, "serviceList" },
5098
  {   1, "extendedServiceList" },
5099
  { 0, NULL }
5100
};
5101
5102
static const ber_choice_t qsig_ci_PathRetainArg_choice[] = {
5103
  {   0, &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5104
  {   1, &hf_qsig_ci_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_T_extendedServiceList },
5105
  { 0, NULL, 0, 0, 0, NULL }
5106
};
5107
5108
static unsigned
5109
0
dissect_qsig_ci_PathRetainArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5110
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5111
0
                                 qsig_ci_PathRetainArg_choice, hf_index, ett_qsig_ci_PathRetainArg,
5112
0
                                 NULL);
5113
5114
0
  return offset;
5115
0
}
5116
5117
5118
static const ber_sequence_t qsig_ci_T_extendedServiceList_01_sequence[] = {
5119
  { &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5120
  { &hf_qsig_ci_extension   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5121
  { NULL, 0, 0, 0, NULL }
5122
};
5123
5124
static unsigned
5125
0
dissect_qsig_ci_T_extendedServiceList_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5126
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5127
0
                                   qsig_ci_T_extendedServiceList_01_sequence, hf_index, ett_qsig_ci_T_extendedServiceList_01);
5128
5129
0
  return offset;
5130
0
}
5131
5132
5133
static const value_string qsig_ci_ServiceAvailableArg_vals[] = {
5134
  {   0, "serviceList" },
5135
  {   1, "extendedServiceList" },
5136
  { 0, NULL }
5137
};
5138
5139
static const ber_choice_t qsig_ci_ServiceAvailableArg_choice[] = {
5140
  {   0, &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5141
  {   1, &hf_qsig_ci_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_T_extendedServiceList_01 },
5142
  { 0, NULL, 0, 0, 0, NULL }
5143
};
5144
5145
static unsigned
5146
0
dissect_qsig_ci_ServiceAvailableArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5147
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5148
0
                                 qsig_ci_ServiceAvailableArg_choice, hf_index, ett_qsig_ci_ServiceAvailableArg,
5149
0
                                 NULL);
5150
5151
0
  return offset;
5152
0
}
5153
5154
5155
5156
static unsigned
5157
0
dissect_qsig_ci_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5158
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5159
5160
0
  return offset;
5161
0
}
5162
5163
5164
static const ber_sequence_t qsig_ci_SEQUENCE_OF_Extension_sequence_of[1] = {
5165
  { &hf_qsig_ci_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5166
};
5167
5168
static unsigned
5169
0
dissect_qsig_ci_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5170
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5171
0
                                      qsig_ci_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ci_SEQUENCE_OF_Extension);
5172
5173
0
  return offset;
5174
0
}
5175
5176
5177
static const value_string qsig_ci_DummyArg_vals[] = {
5178
  {   0, "null" },
5179
  {   1, "extension" },
5180
  {   2, "sequenceOfExtn" },
5181
  { 0, NULL }
5182
};
5183
5184
static const ber_choice_t qsig_ci_DummyArg_choice[] = {
5185
  {   0, &hf_qsig_ci_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_NULL },
5186
  {   1, &hf_qsig_ci_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5187
  {   2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5188
  { 0, NULL, 0, 0, 0, NULL }
5189
};
5190
5191
static unsigned
5192
0
dissect_qsig_ci_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5193
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5194
0
                                 qsig_ci_DummyArg_choice, hf_index, ett_qsig_ci_DummyArg,
5195
0
                                 NULL);
5196
5197
0
  return offset;
5198
0
}
5199
5200
5201
static const value_string qsig_ci_DummyRes_vals[] = {
5202
  {   0, "null" },
5203
  {   1, "extension" },
5204
  {   2, "sequenceOfExtn" },
5205
  { 0, NULL }
5206
};
5207
5208
static const ber_choice_t qsig_ci_DummyRes_choice[] = {
5209
  {   0, &hf_qsig_ci_null        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_NULL },
5210
  {   1, &hf_qsig_ci_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5211
  {   2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5212
  { 0, NULL, 0, 0, 0, NULL }
5213
};
5214
5215
static unsigned
5216
0
dissect_qsig_ci_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5217
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5218
0
                                 qsig_ci_DummyRes_choice, hf_index, ett_qsig_ci_DummyRes,
5219
0
                                 NULL);
5220
5221
0
  return offset;
5222
0
}
5223
5224
5225
static const value_string qsig_ci_CICapabilityLevel_vals[] = {
5226
  {   1, "intrusionLowProt" },
5227
  {   2, "intrusionMediumProt" },
5228
  {   3, "intrusionHighProt" },
5229
  { 0, NULL }
5230
};
5231
5232
5233
static unsigned
5234
0
dissect_qsig_ci_CICapabilityLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5235
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5236
0
                                  NULL);
5237
5238
0
  return offset;
5239
0
}
5240
5241
5242
static const value_string qsig_ci_T_argumentExtension_vals[] = {
5243
  {   1, "extension" },
5244
  {   2, "sequenceOfExtn" },
5245
  { 0, NULL }
5246
};
5247
5248
static const ber_choice_t qsig_ci_T_argumentExtension_choice[] = {
5249
  {   1, &hf_qsig_ci_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5250
  {   2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5251
  { 0, NULL, 0, 0, 0, NULL }
5252
};
5253
5254
static unsigned
5255
0
dissect_qsig_ci_T_argumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5256
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5257
0
                                 qsig_ci_T_argumentExtension_choice, hf_index, ett_qsig_ci_T_argumentExtension,
5258
0
                                 NULL);
5259
5260
0
  return offset;
5261
0
}
5262
5263
5264
static const ber_sequence_t qsig_ci_CIRequestArg_sequence[] = {
5265
  { &hf_qsig_ci_ciCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CICapabilityLevel },
5266
  { &hf_qsig_ci_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ci_T_argumentExtension },
5267
  { NULL, 0, 0, 0, NULL }
5268
};
5269
5270
static unsigned
5271
0
dissect_qsig_ci_CIRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5272
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5273
0
                                   qsig_ci_CIRequestArg_sequence, hf_index, ett_qsig_ci_CIRequestArg);
5274
5275
0
  return offset;
5276
0
}
5277
5278
5279
static const value_string qsig_ci_CIUnwantedUserStatus_vals[] = {
5280
  {   0, "unwantedUserIntruded" },
5281
  {   1, "unwantedUserIsolated" },
5282
  { 0, NULL }
5283
};
5284
5285
5286
static unsigned
5287
0
dissect_qsig_ci_CIUnwantedUserStatus(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5288
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5289
0
                                  NULL);
5290
5291
0
  return offset;
5292
0
}
5293
5294
5295
static const value_string qsig_ci_T_resultExtension_vals[] = {
5296
  {   1, "extension" },
5297
  {   2, "sequenceOfExtn" },
5298
  { 0, NULL }
5299
};
5300
5301
static const ber_choice_t qsig_ci_T_resultExtension_choice[] = {
5302
  {   1, &hf_qsig_ci_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5303
  {   2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5304
  { 0, NULL, 0, 0, 0, NULL }
5305
};
5306
5307
static unsigned
5308
0
dissect_qsig_ci_T_resultExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5309
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5310
0
                                 qsig_ci_T_resultExtension_choice, hf_index, ett_qsig_ci_T_resultExtension,
5311
0
                                 NULL);
5312
5313
0
  return offset;
5314
0
}
5315
5316
5317
static const ber_sequence_t qsig_ci_CIRequestRes_sequence[] = {
5318
  { &hf_qsig_ci_ciUnwantedUserStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CIUnwantedUserStatus },
5319
  { &hf_qsig_ci_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ci_T_resultExtension },
5320
  { NULL, 0, 0, 0, NULL }
5321
};
5322
5323
static unsigned
5324
0
dissect_qsig_ci_CIRequestRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5325
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5326
0
                                   qsig_ci_CIRequestRes_sequence, hf_index, ett_qsig_ci_CIRequestRes);
5327
5328
0
  return offset;
5329
0
}
5330
5331
5332
static const value_string qsig_ci_CIProtectionLevel_vals[] = {
5333
  {   0, "lowProtection" },
5334
  {   1, "mediumProtection" },
5335
  {   2, "highProtection" },
5336
  {   3, "fullProtection" },
5337
  { 0, NULL }
5338
};
5339
5340
5341
static unsigned
5342
0
dissect_qsig_ci_CIProtectionLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5343
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5344
0
                                  NULL);
5345
5346
0
  return offset;
5347
0
}
5348
5349
5350
static const value_string qsig_ci_T_resultExtension_01_vals[] = {
5351
  {   1, "extension" },
5352
  {   2, "sequenceOfExtn" },
5353
  { 0, NULL }
5354
};
5355
5356
static const ber_choice_t qsig_ci_T_resultExtension_01_choice[] = {
5357
  {   1, &hf_qsig_ci_extension   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5358
  {   2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5359
  { 0, NULL, 0, 0, 0, NULL }
5360
};
5361
5362
static unsigned
5363
0
dissect_qsig_ci_T_resultExtension_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5364
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5365
0
                                 qsig_ci_T_resultExtension_01_choice, hf_index, ett_qsig_ci_T_resultExtension_01,
5366
0
                                 NULL);
5367
5368
0
  return offset;
5369
0
}
5370
5371
5372
static const ber_sequence_t qsig_ci_CIGetCIPLRes_sequence[] = {
5373
  { &hf_qsig_ci_ciProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CIProtectionLevel },
5374
  { &hf_qsig_ci_resultExtension_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ci_T_resultExtension_01 },
5375
  { NULL, 0, 0, 0, NULL }
5376
};
5377
5378
static unsigned
5379
0
dissect_qsig_ci_CIGetCIPLRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5380
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5381
0
                                   qsig_ci_CIGetCIPLRes_sequence, hf_index, ett_qsig_ci_CIGetCIPLRes);
5382
5383
0
  return offset;
5384
0
}
5385
5386
/*--- PDUs ---*/
5387
5388
0
static int dissect_qsig_ci_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5389
0
  unsigned offset = 0;
5390
0
  asn1_ctx_t asn1_ctx;
5391
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5392
0
  offset = dissect_qsig_ci_PathRetainArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_PathRetainArg_PDU);
5393
0
  return offset;
5394
0
}
5395
0
static int dissect_qsig_ci_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5396
0
  unsigned offset = 0;
5397
0
  asn1_ctx_t asn1_ctx;
5398
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5399
0
  offset = dissect_qsig_ci_ServiceAvailableArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU);
5400
0
  return offset;
5401
0
}
5402
0
static int dissect_qsig_ci_CIRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5403
0
  unsigned offset = 0;
5404
0
  asn1_ctx_t asn1_ctx;
5405
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5406
0
  offset = dissect_qsig_ci_CIRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIRequestArg_PDU);
5407
0
  return offset;
5408
0
}
5409
0
static int dissect_qsig_ci_CIRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5410
0
  unsigned offset = 0;
5411
0
  asn1_ctx_t asn1_ctx;
5412
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5413
0
  offset = dissect_qsig_ci_CIRequestRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIRequestRes_PDU);
5414
0
  return offset;
5415
0
}
5416
0
static int dissect_qsig_ci_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5417
0
  unsigned offset = 0;
5418
0
  asn1_ctx_t asn1_ctx;
5419
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5420
0
  offset = dissect_qsig_ci_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_DummyArg_PDU);
5421
0
  return offset;
5422
0
}
5423
0
static int dissect_qsig_ci_CIGetCIPLRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5424
0
  unsigned offset = 0;
5425
0
  asn1_ctx_t asn1_ctx;
5426
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5427
0
  offset = dissect_qsig_ci_CIGetCIPLRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU);
5428
0
  return offset;
5429
0
}
5430
0
static int dissect_qsig_ci_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5431
0
  unsigned offset = 0;
5432
0
  asn1_ctx_t asn1_ctx;
5433
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5434
0
  offset = dissect_qsig_ci_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_DummyRes_PDU);
5435
0
  return offset;
5436
0
}
5437
0
static int dissect_qsig_ci_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5438
0
  unsigned offset = 0;
5439
0
  asn1_ctx_t asn1_ctx;
5440
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
5441
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_Extension_PDU);
5442
0
  return offset;
5443
0
}
5444
5445
5446
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
5447
5448
5449
5450
static unsigned
5451
0
dissect_qsig_aoc_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5452
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5453
5454
0
  return offset;
5455
0
}
5456
5457
5458
static const value_string qsig_aoc_ChargedItem_vals[] = {
5459
  {   0, "basicCommunication" },
5460
  {   1, "callAttempt" },
5461
  {   2, "callSetup" },
5462
  {   3, "userToUserInfo" },
5463
  {   4, "operationOfSupplementaryServ" },
5464
  { 0, NULL }
5465
};
5466
5467
5468
static unsigned
5469
0
dissect_qsig_aoc_ChargedItem(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5470
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5471
0
                                  NULL);
5472
5473
0
  return offset;
5474
0
}
5475
5476
5477
5478
static unsigned
5479
0
dissect_qsig_aoc_Currency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5480
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
5481
0
                                                        actx, tree, tvb, offset,
5482
0
                                                        0, 10, hf_index, NULL);
5483
5484
0
  return offset;
5485
0
}
5486
5487
5488
5489
static unsigned
5490
0
dissect_qsig_aoc_CurrencyAmount(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5491
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
5492
0
                                                            0U, 16777215U, hf_index, NULL);
5493
5494
0
  return offset;
5495
0
}
5496
5497
5498
static const value_string qsig_aoc_Multiplier_vals[] = {
5499
  {   0, "oneThousandth" },
5500
  {   1, "oneHundredth" },
5501
  {   2, "oneTenth" },
5502
  {   3, "one" },
5503
  {   4, "ten" },
5504
  {   5, "hundred" },
5505
  {   6, "thousand" },
5506
  { 0, NULL }
5507
};
5508
5509
5510
static unsigned
5511
0
dissect_qsig_aoc_Multiplier(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5512
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5513
0
                                  NULL);
5514
5515
0
  return offset;
5516
0
}
5517
5518
5519
static const ber_sequence_t qsig_aoc_Amount_sequence[] = {
5520
  { &hf_qsig_aoc_currencyAmount, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_CurrencyAmount },
5521
  { &hf_qsig_aoc_multiplier , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Multiplier },
5522
  { NULL, 0, 0, 0, NULL }
5523
};
5524
5525
static unsigned
5526
0
dissect_qsig_aoc_Amount(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5527
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5528
0
                                   qsig_aoc_Amount_sequence, hf_index, ett_qsig_aoc_Amount);
5529
5530
0
  return offset;
5531
0
}
5532
5533
5534
static const value_string qsig_aoc_ChargingType_vals[] = {
5535
  {   0, "continuousCharging" },
5536
  {   1, "stepFunction" },
5537
  { 0, NULL }
5538
};
5539
5540
5541
static unsigned
5542
0
dissect_qsig_aoc_ChargingType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5543
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5544
0
                                  NULL);
5545
5546
0
  return offset;
5547
0
}
5548
5549
5550
5551
static unsigned
5552
0
dissect_qsig_aoc_LengthOfTimeUnit(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5553
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
5554
0
                                                            0U, 16777215U, hf_index, NULL);
5555
5556
0
  return offset;
5557
0
}
5558
5559
5560
static const value_string qsig_aoc_Scale_vals[] = {
5561
  {   0, "oneHundredthSecond" },
5562
  {   1, "oneTenthSecond" },
5563
  {   2, "oneSecond" },
5564
  {   3, "tenSeconds" },
5565
  {   4, "oneMinute" },
5566
  {   5, "oneHour" },
5567
  {   6, "twentyFourHours" },
5568
  { 0, NULL }
5569
};
5570
5571
5572
static unsigned
5573
0
dissect_qsig_aoc_Scale(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5574
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5575
0
                                  NULL);
5576
5577
0
  return offset;
5578
0
}
5579
5580
5581
static const ber_sequence_t qsig_aoc_Time_sequence[] = {
5582
  { &hf_qsig_aoc_lengthOfTimeUnit, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_LengthOfTimeUnit },
5583
  { &hf_qsig_aoc_scale      , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Scale },
5584
  { NULL, 0, 0, 0, NULL }
5585
};
5586
5587
static unsigned
5588
0
dissect_qsig_aoc_Time(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5589
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5590
0
                                   qsig_aoc_Time_sequence, hf_index, ett_qsig_aoc_Time);
5591
5592
0
  return offset;
5593
0
}
5594
5595
5596
static const ber_sequence_t qsig_aoc_DurationCurrency_sequence[] = {
5597
  { &hf_qsig_aoc_dCurrency  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5598
  { &hf_qsig_aoc_dAmount    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5599
  { &hf_qsig_aoc_dChargingType, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_ChargingType },
5600
  { &hf_qsig_aoc_dTime      , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Time },
5601
  { &hf_qsig_aoc_dGranularity, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Time },
5602
  { NULL, 0, 0, 0, NULL }
5603
};
5604
5605
static unsigned
5606
0
dissect_qsig_aoc_DurationCurrency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5607
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5608
0
                                   qsig_aoc_DurationCurrency_sequence, hf_index, ett_qsig_aoc_DurationCurrency);
5609
5610
0
  return offset;
5611
0
}
5612
5613
5614
static const ber_sequence_t qsig_aoc_FlatRateCurrency_sequence[] = {
5615
  { &hf_qsig_aoc_fRCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5616
  { &hf_qsig_aoc_fRAmount   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5617
  { NULL, 0, 0, 0, NULL }
5618
};
5619
5620
static unsigned
5621
0
dissect_qsig_aoc_FlatRateCurrency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5622
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5623
0
                                   qsig_aoc_FlatRateCurrency_sequence, hf_index, ett_qsig_aoc_FlatRateCurrency);
5624
5625
0
  return offset;
5626
0
}
5627
5628
5629
static const value_string qsig_aoc_VolumeUnit_vals[] = {
5630
  {   0, "octet" },
5631
  {   1, "segment" },
5632
  {   2, "message" },
5633
  { 0, NULL }
5634
};
5635
5636
5637
static unsigned
5638
0
dissect_qsig_aoc_VolumeUnit(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5639
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5640
0
                                  NULL);
5641
5642
0
  return offset;
5643
0
}
5644
5645
5646
static const ber_sequence_t qsig_aoc_VolumeRateCurrency_sequence[] = {
5647
  { &hf_qsig_aoc_vRCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5648
  { &hf_qsig_aoc_vRAmount   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5649
  { &hf_qsig_aoc_vRVolumeUnit, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_VolumeUnit },
5650
  { NULL, 0, 0, 0, NULL }
5651
};
5652
5653
static unsigned
5654
0
dissect_qsig_aoc_VolumeRateCurrency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5655
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5656
0
                                   qsig_aoc_VolumeRateCurrency_sequence, hf_index, ett_qsig_aoc_VolumeRateCurrency);
5657
5658
0
  return offset;
5659
0
}
5660
5661
5662
5663
static unsigned
5664
0
dissect_qsig_aoc_SpecialChargingCode(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5665
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
5666
0
                                                            1U, 10U, hf_index, NULL);
5667
5668
0
  return offset;
5669
0
}
5670
5671
5672
static const value_string qsig_aoc_T_rateType_vals[] = {
5673
  {   0, "durationCurrency" },
5674
  {   1, "flatRateCurrency" },
5675
  {   2, "volumeRateCurrency" },
5676
  {   3, "specialChargingCode" },
5677
  {   4, "freeOfCharge" },
5678
  {   5, "currencyInfoNotAvailable" },
5679
  {   6, "freeOfChargefromBeginning" },
5680
  { 0, NULL }
5681
};
5682
5683
static const ber_choice_t qsig_aoc_T_rateType_choice[] = {
5684
  {   0, &hf_qsig_aoc_durationCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_DurationCurrency },
5685
  {   1, &hf_qsig_aoc_flatRateCurrency, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_FlatRateCurrency },
5686
  {   2, &hf_qsig_aoc_volumeRateCurrency, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_VolumeRateCurrency },
5687
  {   3, &hf_qsig_aoc_specialChargingCode, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_SpecialChargingCode },
5688
  {   4, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5689
  {   5, &hf_qsig_aoc_currencyInfoNotAvailable, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5690
  {   6, &hf_qsig_aoc_freeOfChargefromBeginning, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5691
  { 0, NULL, 0, 0, 0, NULL }
5692
};
5693
5694
static unsigned
5695
0
dissect_qsig_aoc_T_rateType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5696
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5697
0
                                 qsig_aoc_T_rateType_choice, hf_index, ett_qsig_aoc_T_rateType,
5698
0
                                 NULL);
5699
5700
0
  return offset;
5701
0
}
5702
5703
5704
static const ber_sequence_t qsig_aoc_AOCSCurrencyInfo_sequence[] = {
5705
  { &hf_qsig_aoc_chargedItem, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargedItem },
5706
  { &hf_qsig_aoc_rateType   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_rateType },
5707
  { NULL, 0, 0, 0, NULL }
5708
};
5709
5710
static unsigned
5711
0
dissect_qsig_aoc_AOCSCurrencyInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5712
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5713
0
                                   qsig_aoc_AOCSCurrencyInfo_sequence, hf_index, ett_qsig_aoc_AOCSCurrencyInfo);
5714
5715
0
  return offset;
5716
0
}
5717
5718
5719
static const ber_sequence_t qsig_aoc_AOCSCurrencyInfoList_sequence_of[1] = {
5720
  { &hf_qsig_aoc_AOCSCurrencyInfoList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AOCSCurrencyInfo },
5721
};
5722
5723
static unsigned
5724
0
dissect_qsig_aoc_AOCSCurrencyInfoList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5725
0
  offset = dissect_ber_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
5726
0
                                                  1, 10, qsig_aoc_AOCSCurrencyInfoList_sequence_of, hf_index, ett_qsig_aoc_AOCSCurrencyInfoList);
5727
5728
0
  return offset;
5729
0
}
5730
5731
5732
static const value_string qsig_aoc_T_aocRate_vals[] = {
5733
  {   0, "chargeNotAvailable" },
5734
  {   1, "aocSCurrencyInfoList" },
5735
  { 0, NULL }
5736
};
5737
5738
static const ber_choice_t qsig_aoc_T_aocRate_choice[] = {
5739
  {   0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_NULL },
5740
  {   1, &hf_qsig_aoc_aocSCurrencyInfoList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AOCSCurrencyInfoList },
5741
  { 0, NULL, 0, 0, 0, NULL }
5742
};
5743
5744
static unsigned
5745
0
dissect_qsig_aoc_T_aocRate(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5746
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5747
0
                                 qsig_aoc_T_aocRate_choice, hf_index, ett_qsig_aoc_T_aocRate,
5748
0
                                 NULL);
5749
5750
0
  return offset;
5751
0
}
5752
5753
5754
static const ber_sequence_t qsig_aoc_SEQUENCE_OF_Extension_sequence_of[1] = {
5755
  { &hf_qsig_aoc_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5756
};
5757
5758
static unsigned
5759
0
dissect_qsig_aoc_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5760
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5761
0
                                      qsig_aoc_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_aoc_SEQUENCE_OF_Extension);
5762
5763
0
  return offset;
5764
0
}
5765
5766
5767
static const value_string qsig_aoc_T_rateArgExtension_vals[] = {
5768
  {   1, "extension" },
5769
  {   2, "multipleExtension" },
5770
  { 0, NULL }
5771
};
5772
5773
static const ber_choice_t qsig_aoc_T_rateArgExtension_choice[] = {
5774
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5775
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
5776
  { 0, NULL, 0, 0, 0, NULL }
5777
};
5778
5779
static unsigned
5780
0
dissect_qsig_aoc_T_rateArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5781
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5782
0
                                 qsig_aoc_T_rateArgExtension_choice, hf_index, ett_qsig_aoc_T_rateArgExtension,
5783
0
                                 NULL);
5784
5785
0
  return offset;
5786
0
}
5787
5788
5789
static const ber_sequence_t qsig_aoc_AocRateArg_sequence[] = {
5790
  { &hf_qsig_aoc_aocRate    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_aocRate },
5791
  { &hf_qsig_aoc_rateArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_rateArgExtension },
5792
  { NULL, 0, 0, 0, NULL }
5793
};
5794
5795
static unsigned
5796
0
dissect_qsig_aoc_AocRateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5797
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5798
0
                                   qsig_aoc_AocRateArg_sequence, hf_index, ett_qsig_aoc_AocRateArg);
5799
5800
0
  return offset;
5801
0
}
5802
5803
5804
static const ber_sequence_t qsig_aoc_RecordedCurrency_sequence[] = {
5805
  { &hf_qsig_aoc_rCurrency  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5806
  { &hf_qsig_aoc_rAmount    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5807
  { NULL, 0, 0, 0, NULL }
5808
};
5809
5810
static unsigned
5811
0
dissect_qsig_aoc_RecordedCurrency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5812
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5813
0
                                   qsig_aoc_RecordedCurrency_sequence, hf_index, ett_qsig_aoc_RecordedCurrency);
5814
5815
0
  return offset;
5816
0
}
5817
5818
5819
static const value_string qsig_aoc_InterimBillingId_vals[] = {
5820
  {   0, "normalCharging" },
5821
  {   2, "creditCardCharging" },
5822
  { 0, NULL }
5823
};
5824
5825
5826
static unsigned
5827
0
dissect_qsig_aoc_InterimBillingId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5828
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5829
0
                                  NULL);
5830
5831
0
  return offset;
5832
0
}
5833
5834
5835
static const ber_sequence_t qsig_aoc_T_specificCurrency_sequence[] = {
5836
  { &hf_qsig_aoc_recordedCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_RecordedCurrency },
5837
  { &hf_qsig_aoc_interimBillingId, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_InterimBillingId },
5838
  { NULL, 0, 0, 0, NULL }
5839
};
5840
5841
static unsigned
5842
0
dissect_qsig_aoc_T_specificCurrency(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5843
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5844
0
                                   qsig_aoc_T_specificCurrency_sequence, hf_index, ett_qsig_aoc_T_specificCurrency);
5845
5846
0
  return offset;
5847
0
}
5848
5849
5850
static const value_string qsig_aoc_T_interimCharge_vals[] = {
5851
  {   0, "chargeNotAvailable" },
5852
  {   1, "freeOfCharge" },
5853
  {   2, "specificCurrency" },
5854
  { 0, NULL }
5855
};
5856
5857
static const ber_choice_t qsig_aoc_T_interimCharge_choice[] = {
5858
  {   0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5859
  {   1, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5860
  {   2, &hf_qsig_aoc_specificCurrency, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_T_specificCurrency },
5861
  { 0, NULL, 0, 0, 0, NULL }
5862
};
5863
5864
static unsigned
5865
0
dissect_qsig_aoc_T_interimCharge(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5866
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5867
0
                                 qsig_aoc_T_interimCharge_choice, hf_index, ett_qsig_aoc_T_interimCharge,
5868
0
                                 NULL);
5869
5870
0
  return offset;
5871
0
}
5872
5873
5874
static const value_string qsig_aoc_T_interimArgExtension_vals[] = {
5875
  {   1, "extension" },
5876
  {   2, "multipleExtension" },
5877
  { 0, NULL }
5878
};
5879
5880
static const ber_choice_t qsig_aoc_T_interimArgExtension_choice[] = {
5881
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5882
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
5883
  { 0, NULL, 0, 0, 0, NULL }
5884
};
5885
5886
static unsigned
5887
0
dissect_qsig_aoc_T_interimArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5888
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5889
0
                                 qsig_aoc_T_interimArgExtension_choice, hf_index, ett_qsig_aoc_T_interimArgExtension,
5890
0
                                 NULL);
5891
5892
0
  return offset;
5893
0
}
5894
5895
5896
static const ber_sequence_t qsig_aoc_AocInterimArg_sequence[] = {
5897
  { &hf_qsig_aoc_interimCharge, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_interimCharge },
5898
  { &hf_qsig_aoc_interimArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_interimArgExtension },
5899
  { NULL, 0, 0, 0, NULL }
5900
};
5901
5902
static unsigned
5903
0
dissect_qsig_aoc_AocInterimArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5904
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5905
0
                                   qsig_aoc_AocInterimArg_sequence, hf_index, ett_qsig_aoc_AocInterimArg);
5906
5907
0
  return offset;
5908
0
}
5909
5910
5911
static const value_string qsig_aoc_FinalBillingId_vals[] = {
5912
  {   0, "normalCharging" },
5913
  {   2, "creditCardCharging" },
5914
  {   3, "callForwardingUnconditional" },
5915
  {   4, "callForwardingBusy" },
5916
  {   5, "callForwardingNoReply" },
5917
  {   6, "callDeflection" },
5918
  {   7, "callTransfer" },
5919
  { 0, NULL }
5920
};
5921
5922
5923
static unsigned
5924
0
dissect_qsig_aoc_FinalBillingId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5925
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5926
0
                                  NULL);
5927
5928
0
  return offset;
5929
0
}
5930
5931
5932
static const ber_sequence_t qsig_aoc_T_specificCurrency_01_sequence[] = {
5933
  { &hf_qsig_aoc_recordedCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_RecordedCurrency },
5934
  { &hf_qsig_aoc_finalBillingId, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_FinalBillingId },
5935
  { NULL, 0, 0, 0, NULL }
5936
};
5937
5938
static unsigned
5939
0
dissect_qsig_aoc_T_specificCurrency_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5940
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5941
0
                                   qsig_aoc_T_specificCurrency_01_sequence, hf_index, ett_qsig_aoc_T_specificCurrency_01);
5942
5943
0
  return offset;
5944
0
}
5945
5946
5947
static const value_string qsig_aoc_T_finalCharge_vals[] = {
5948
  {   0, "chargeNotAvailable" },
5949
  {   1, "freeOfCharge" },
5950
  {   2, "specificCurrency" },
5951
  { 0, NULL }
5952
};
5953
5954
static const ber_choice_t qsig_aoc_T_finalCharge_choice[] = {
5955
  {   0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5956
  {   1, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5957
  {   2, &hf_qsig_aoc_specificCurrency_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_T_specificCurrency_01 },
5958
  { 0, NULL, 0, 0, 0, NULL }
5959
};
5960
5961
static unsigned
5962
0
dissect_qsig_aoc_T_finalCharge(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5963
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5964
0
                                 qsig_aoc_T_finalCharge_choice, hf_index, ett_qsig_aoc_T_finalCharge,
5965
0
                                 NULL);
5966
5967
0
  return offset;
5968
0
}
5969
5970
5971
5972
static unsigned
5973
0
dissect_qsig_aoc_ChargeIdentifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5974
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
5975
0
                                                            -32768, 32767U, hf_index, NULL);
5976
5977
0
  return offset;
5978
0
}
5979
5980
5981
static const value_string qsig_aoc_ChargingAssociation_vals[] = {
5982
  {   0, "chargeNumber" },
5983
  {   1, "chargeIdentifier" },
5984
  { 0, NULL }
5985
};
5986
5987
static const ber_choice_t qsig_aoc_ChargingAssociation_choice[] = {
5988
  {   0, &hf_qsig_aoc_chargeNumber, BER_CLASS_CON, 0, 0, dissect_qsig_PartyNumber },
5989
  {   1, &hf_qsig_aoc_chargeIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargeIdentifier },
5990
  { 0, NULL, 0, 0, 0, NULL }
5991
};
5992
5993
static unsigned
5994
0
dissect_qsig_aoc_ChargingAssociation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5995
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
5996
0
                                 qsig_aoc_ChargingAssociation_choice, hf_index, ett_qsig_aoc_ChargingAssociation,
5997
0
                                 NULL);
5998
5999
0
  return offset;
6000
0
}
6001
6002
6003
static const value_string qsig_aoc_T_finalArgExtension_vals[] = {
6004
  {   1, "extension" },
6005
  {   2, "multipleExtension" },
6006
  { 0, NULL }
6007
};
6008
6009
static const ber_choice_t qsig_aoc_T_finalArgExtension_choice[] = {
6010
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6011
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6012
  { 0, NULL, 0, 0, 0, NULL }
6013
};
6014
6015
static unsigned
6016
0
dissect_qsig_aoc_T_finalArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6017
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6018
0
                                 qsig_aoc_T_finalArgExtension_choice, hf_index, ett_qsig_aoc_T_finalArgExtension,
6019
0
                                 NULL);
6020
6021
0
  return offset;
6022
0
}
6023
6024
6025
static const ber_sequence_t qsig_aoc_AocFinalArg_sequence[] = {
6026
  { &hf_qsig_aoc_finalCharge, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_finalCharge },
6027
  { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6028
  { &hf_qsig_aoc_finalArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_finalArgExtension },
6029
  { NULL, 0, 0, 0, NULL }
6030
};
6031
6032
static unsigned
6033
0
dissect_qsig_aoc_AocFinalArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6034
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6035
0
                                   qsig_aoc_AocFinalArg_sequence, hf_index, ett_qsig_aoc_AocFinalArg);
6036
6037
0
  return offset;
6038
0
}
6039
6040
6041
static const value_string qsig_aoc_AdviceModeCombination_vals[] = {
6042
  {   0, "rate" },
6043
  {   1, "rateInterim" },
6044
  {   2, "rateFinal" },
6045
  {   3, "interim" },
6046
  {   4, "final" },
6047
  {   5, "interimFinal" },
6048
  {   6, "rateInterimFinal" },
6049
  { 0, NULL }
6050
};
6051
6052
6053
static unsigned
6054
0
dissect_qsig_aoc_AdviceModeCombination(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6055
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6056
0
                                  NULL);
6057
6058
0
  return offset;
6059
0
}
6060
6061
6062
static const ber_sequence_t qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination_sequence_of[1] = {
6063
  { &hf_qsig_aoc_adviceModeCombinations_item, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AdviceModeCombination },
6064
};
6065
6066
static unsigned
6067
0
dissect_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6068
0
  offset = dissect_ber_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
6069
0
                                                  0, 7, qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination_sequence_of, hf_index, ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination);
6070
6071
0
  return offset;
6072
0
}
6073
6074
6075
static const value_string qsig_aoc_T_chargeReqArgExtension_vals[] = {
6076
  {   1, "extension" },
6077
  {   2, "multipleExtension" },
6078
  { 0, NULL }
6079
};
6080
6081
static const ber_choice_t qsig_aoc_T_chargeReqArgExtension_choice[] = {
6082
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6083
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6084
  { 0, NULL, 0, 0, 0, NULL }
6085
};
6086
6087
static unsigned
6088
0
dissect_qsig_aoc_T_chargeReqArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6089
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6090
0
                                 qsig_aoc_T_chargeReqArgExtension_choice, hf_index, ett_qsig_aoc_T_chargeReqArgExtension,
6091
0
                                 NULL);
6092
6093
0
  return offset;
6094
0
}
6095
6096
6097
static const ber_sequence_t qsig_aoc_ChargeRequestArg_sequence[] = {
6098
  { &hf_qsig_aoc_adviceModeCombinations, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination },
6099
  { &hf_qsig_aoc_chargeReqArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_chargeReqArgExtension },
6100
  { NULL, 0, 0, 0, NULL }
6101
};
6102
6103
static unsigned
6104
0
dissect_qsig_aoc_ChargeRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6105
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6106
0
                                   qsig_aoc_ChargeRequestArg_sequence, hf_index, ett_qsig_aoc_ChargeRequestArg);
6107
6108
0
  return offset;
6109
0
}
6110
6111
6112
static const value_string qsig_aoc_T_chargeReqResExtension_vals[] = {
6113
  {   1, "extension" },
6114
  {   2, "multipleExtension" },
6115
  { 0, NULL }
6116
};
6117
6118
static const ber_choice_t qsig_aoc_T_chargeReqResExtension_choice[] = {
6119
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6120
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6121
  { 0, NULL, 0, 0, 0, NULL }
6122
};
6123
6124
static unsigned
6125
0
dissect_qsig_aoc_T_chargeReqResExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6126
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6127
0
                                 qsig_aoc_T_chargeReqResExtension_choice, hf_index, ett_qsig_aoc_T_chargeReqResExtension,
6128
0
                                 NULL);
6129
6130
0
  return offset;
6131
0
}
6132
6133
6134
static const ber_sequence_t qsig_aoc_ChargeRequestRes_sequence[] = {
6135
  { &hf_qsig_aoc_adviceModeCombination, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AdviceModeCombination },
6136
  { &hf_qsig_aoc_chargeReqResExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_chargeReqResExtension },
6137
  { NULL, 0, 0, 0, NULL }
6138
};
6139
6140
static unsigned
6141
0
dissect_qsig_aoc_ChargeRequestRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6142
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6143
0
                                   qsig_aoc_ChargeRequestRes_sequence, hf_index, ett_qsig_aoc_ChargeRequestRes);
6144
6145
0
  return offset;
6146
0
}
6147
6148
6149
static const value_string qsig_aoc_DummyArg_vals[] = {
6150
  {   0, "none" },
6151
  {   1, "extension" },
6152
  {   2, "multipleExtension" },
6153
  { 0, NULL }
6154
};
6155
6156
static const ber_choice_t qsig_aoc_DummyArg_choice[] = {
6157
  {   0, &hf_qsig_aoc_none       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_NULL },
6158
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6159
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6160
  { 0, NULL, 0, 0, 0, NULL }
6161
};
6162
6163
static unsigned
6164
0
dissect_qsig_aoc_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6165
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6166
0
                                 qsig_aoc_DummyArg_choice, hf_index, ett_qsig_aoc_DummyArg,
6167
0
                                 NULL);
6168
6169
0
  return offset;
6170
0
}
6171
6172
6173
static const value_string qsig_aoc_T_completeArgExtension_vals[] = {
6174
  {   1, "extension" },
6175
  {   2, "multipleExtension" },
6176
  { 0, NULL }
6177
};
6178
6179
static const ber_choice_t qsig_aoc_T_completeArgExtension_choice[] = {
6180
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6181
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6182
  { 0, NULL, 0, 0, 0, NULL }
6183
};
6184
6185
static unsigned
6186
0
dissect_qsig_aoc_T_completeArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6187
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6188
0
                                 qsig_aoc_T_completeArgExtension_choice, hf_index, ett_qsig_aoc_T_completeArgExtension,
6189
0
                                 NULL);
6190
6191
0
  return offset;
6192
0
}
6193
6194
6195
static const ber_sequence_t qsig_aoc_AocCompleteArg_sequence[] = {
6196
  { &hf_qsig_aoc_chargedUser, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6197
  { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6198
  { &hf_qsig_aoc_completeArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_completeArgExtension },
6199
  { NULL, 0, 0, 0, NULL }
6200
};
6201
6202
static unsigned
6203
0
dissect_qsig_aoc_AocCompleteArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6204
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6205
0
                                   qsig_aoc_AocCompleteArg_sequence, hf_index, ett_qsig_aoc_AocCompleteArg);
6206
6207
0
  return offset;
6208
0
}
6209
6210
6211
static const value_string qsig_aoc_ChargingOption_vals[] = {
6212
  {   0, "aocFreeOfCharge" },
6213
  {   1, "aocContinueCharging" },
6214
  {   2, "aocStopCharging" },
6215
  { 0, NULL }
6216
};
6217
6218
6219
static unsigned
6220
0
dissect_qsig_aoc_ChargingOption(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6221
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6222
0
                                  NULL);
6223
6224
0
  return offset;
6225
0
}
6226
6227
6228
static const value_string qsig_aoc_T_completeResExtension_vals[] = {
6229
  {   1, "extension" },
6230
  {   2, "multipleExtension" },
6231
  { 0, NULL }
6232
};
6233
6234
static const ber_choice_t qsig_aoc_T_completeResExtension_choice[] = {
6235
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6236
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6237
  { 0, NULL, 0, 0, 0, NULL }
6238
};
6239
6240
static unsigned
6241
0
dissect_qsig_aoc_T_completeResExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6242
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6243
0
                                 qsig_aoc_T_completeResExtension_choice, hf_index, ett_qsig_aoc_T_completeResExtension,
6244
0
                                 NULL);
6245
6246
0
  return offset;
6247
0
}
6248
6249
6250
static const ber_sequence_t qsig_aoc_AocCompleteRes_sequence[] = {
6251
  { &hf_qsig_aoc_chargingOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargingOption },
6252
  { &hf_qsig_aoc_completeResExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_completeResExtension },
6253
  { NULL, 0, 0, 0, NULL }
6254
};
6255
6256
static unsigned
6257
0
dissect_qsig_aoc_AocCompleteRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6258
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6259
0
                                   qsig_aoc_AocCompleteRes_sequence, hf_index, ett_qsig_aoc_AocCompleteRes);
6260
6261
0
  return offset;
6262
0
}
6263
6264
6265
static const value_string qsig_aoc_DiversionType_vals[] = {
6266
  {   0, "callForwardingUnconditional" },
6267
  {   1, "callForwardingBusy" },
6268
  {   2, "callForwardingNoReply" },
6269
  {   3, "callDeflection" },
6270
  { 0, NULL }
6271
};
6272
6273
6274
static unsigned
6275
0
dissect_qsig_aoc_DiversionType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6276
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6277
0
                                  NULL);
6278
6279
0
  return offset;
6280
0
}
6281
6282
6283
static const value_string qsig_aoc_T_aocDivChargeReqArgExt_vals[] = {
6284
  {   1, "extension" },
6285
  {   2, "multipleExtension" },
6286
  { 0, NULL }
6287
};
6288
6289
static const ber_choice_t qsig_aoc_T_aocDivChargeReqArgExt_choice[] = {
6290
  {   1, &hf_qsig_aoc_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6291
  {   2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6292
  { 0, NULL, 0, 0, 0, NULL }
6293
};
6294
6295
static unsigned
6296
0
dissect_qsig_aoc_T_aocDivChargeReqArgExt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6297
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6298
0
                                 qsig_aoc_T_aocDivChargeReqArgExt_choice, hf_index, ett_qsig_aoc_T_aocDivChargeReqArgExt,
6299
0
                                 NULL);
6300
6301
0
  return offset;
6302
0
}
6303
6304
6305
static const ber_sequence_t qsig_aoc_AocDivChargeReqArg_sequence[] = {
6306
  { &hf_qsig_aoc_divertingUser, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6307
  { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6308
  { &hf_qsig_aoc_diversionType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_DiversionType },
6309
  { &hf_qsig_aoc_aocDivChargeReqArgExt, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_aocDivChargeReqArgExt },
6310
  { NULL, 0, 0, 0, NULL }
6311
};
6312
6313
static unsigned
6314
0
dissect_qsig_aoc_AocDivChargeReqArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6315
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6316
0
                                   qsig_aoc_AocDivChargeReqArg_sequence, hf_index, ett_qsig_aoc_AocDivChargeReqArg);
6317
6318
0
  return offset;
6319
0
}
6320
6321
/*--- PDUs ---*/
6322
6323
0
static int dissect_qsig_aoc_AocRateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6324
0
  unsigned offset = 0;
6325
0
  asn1_ctx_t asn1_ctx;
6326
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6327
0
  offset = dissect_qsig_aoc_AocRateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocRateArg_PDU);
6328
0
  return offset;
6329
0
}
6330
0
static int dissect_qsig_aoc_AocInterimArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6331
0
  unsigned offset = 0;
6332
0
  asn1_ctx_t asn1_ctx;
6333
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6334
0
  offset = dissect_qsig_aoc_AocInterimArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU);
6335
0
  return offset;
6336
0
}
6337
0
static int dissect_qsig_aoc_AocFinalArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6338
0
  unsigned offset = 0;
6339
0
  asn1_ctx_t asn1_ctx;
6340
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6341
0
  offset = dissect_qsig_aoc_AocFinalArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU);
6342
0
  return offset;
6343
0
}
6344
0
static int dissect_qsig_aoc_ChargeRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6345
0
  unsigned offset = 0;
6346
0
  asn1_ctx_t asn1_ctx;
6347
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6348
0
  offset = dissect_qsig_aoc_ChargeRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU);
6349
0
  return offset;
6350
0
}
6351
0
static int dissect_qsig_aoc_ChargeRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6352
0
  unsigned offset = 0;
6353
0
  asn1_ctx_t asn1_ctx;
6354
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6355
0
  offset = dissect_qsig_aoc_ChargeRequestRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU);
6356
0
  return offset;
6357
0
}
6358
0
static int dissect_qsig_aoc_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6359
0
  unsigned offset = 0;
6360
0
  asn1_ctx_t asn1_ctx;
6361
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6362
0
  offset = dissect_qsig_aoc_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_DummyArg_PDU);
6363
0
  return offset;
6364
0
}
6365
0
static int dissect_qsig_aoc_AocCompleteArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6366
0
  unsigned offset = 0;
6367
0
  asn1_ctx_t asn1_ctx;
6368
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6369
0
  offset = dissect_qsig_aoc_AocCompleteArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU);
6370
0
  return offset;
6371
0
}
6372
0
static int dissect_qsig_aoc_AocCompleteRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6373
0
  unsigned offset = 0;
6374
0
  asn1_ctx_t asn1_ctx;
6375
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6376
0
  offset = dissect_qsig_aoc_AocCompleteRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU);
6377
0
  return offset;
6378
0
}
6379
0
static int dissect_qsig_aoc_AocDivChargeReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6380
0
  unsigned offset = 0;
6381
0
  asn1_ctx_t asn1_ctx;
6382
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6383
0
  offset = dissect_qsig_aoc_AocDivChargeReqArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU);
6384
0
  return offset;
6385
0
}
6386
0
static int dissect_qsig_aoc_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6387
0
  unsigned offset = 0;
6388
0
  asn1_ctx_t asn1_ctx;
6389
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6390
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_Extension_PDU);
6391
0
  return offset;
6392
0
}
6393
6394
6395
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
6396
6397
6398
static const ber_sequence_t qsig_re_SEQUENCE_OF_Extension_sequence_of[1] = {
6399
  { &hf_qsig_re_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6400
};
6401
6402
static unsigned
6403
0
dissect_qsig_re_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6404
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6405
0
                                      qsig_re_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_re_SEQUENCE_OF_Extension);
6406
6407
0
  return offset;
6408
0
}
6409
6410
6411
static const value_string qsig_re_T_argumentExtension_vals[] = {
6412
  {   6, "extension" },
6413
  {   7, "multipleExtension" },
6414
  { 0, NULL }
6415
};
6416
6417
static const ber_choice_t qsig_re_T_argumentExtension_choice[] = {
6418
  {   6, &hf_qsig_re_extension   , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6419
  {   7, &hf_qsig_re_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_re_SEQUENCE_OF_Extension },
6420
  { 0, NULL, 0, 0, 0, NULL }
6421
};
6422
6423
static unsigned
6424
0
dissect_qsig_re_T_argumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6425
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6426
0
                                 qsig_re_T_argumentExtension_choice, hf_index, ett_qsig_re_T_argumentExtension,
6427
0
                                 NULL);
6428
6429
0
  return offset;
6430
0
}
6431
6432
6433
static const ber_sequence_t qsig_re_ReAlertingArg_sequence[] = {
6434
  { &hf_qsig_re_alertedNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberScreened },
6435
  { &hf_qsig_re_alertedName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6436
  { &hf_qsig_re_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_re_T_argumentExtension },
6437
  { NULL, 0, 0, 0, NULL }
6438
};
6439
6440
static unsigned
6441
0
dissect_qsig_re_ReAlertingArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6442
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6443
0
                                   qsig_re_ReAlertingArg_sequence, hf_index, ett_qsig_re_ReAlertingArg);
6444
6445
0
  return offset;
6446
0
}
6447
6448
6449
static const value_string qsig_re_T_argumentExtension_01_vals[] = {
6450
  {   6, "extension" },
6451
  {   7, "multipleExtension" },
6452
  { 0, NULL }
6453
};
6454
6455
static const ber_choice_t qsig_re_T_argumentExtension_01_choice[] = {
6456
  {   6, &hf_qsig_re_extension   , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6457
  {   7, &hf_qsig_re_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_re_SEQUENCE_OF_Extension },
6458
  { 0, NULL, 0, 0, 0, NULL }
6459
};
6460
6461
static unsigned
6462
0
dissect_qsig_re_T_argumentExtension_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6463
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6464
0
                                 qsig_re_T_argumentExtension_01_choice, hf_index, ett_qsig_re_T_argumentExtension_01,
6465
0
                                 NULL);
6466
6467
0
  return offset;
6468
0
}
6469
6470
6471
static const ber_sequence_t qsig_re_ReAnswerArg_sequence[] = {
6472
  { &hf_qsig_re_connectedNumber, BER_CLASS_CON, 1, 0, dissect_qsig_PresentedNumberScreened },
6473
  { &hf_qsig_re_connectedSubaddress, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
6474
  { &hf_qsig_re_connectedName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6475
  { &hf_qsig_re_argumentExtension_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_re_T_argumentExtension_01 },
6476
  { NULL, 0, 0, 0, NULL }
6477
};
6478
6479
static unsigned
6480
0
dissect_qsig_re_ReAnswerArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6481
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6482
0
                                   qsig_re_ReAnswerArg_sequence, hf_index, ett_qsig_re_ReAnswerArg);
6483
6484
0
  return offset;
6485
0
}
6486
6487
/*--- PDUs ---*/
6488
6489
0
static int dissect_qsig_re_ReAlertingArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6490
0
  unsigned offset = 0;
6491
0
  asn1_ctx_t asn1_ctx;
6492
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6493
0
  offset = dissect_qsig_re_ReAlertingArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_re_qsig_re_ReAlertingArg_PDU);
6494
0
  return offset;
6495
0
}
6496
0
static int dissect_qsig_re_ReAnswerArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6497
0
  unsigned offset = 0;
6498
0
  asn1_ctx_t asn1_ctx;
6499
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6500
0
  offset = dissect_qsig_re_ReAnswerArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_re_qsig_re_ReAnswerArg_PDU);
6501
0
  return offset;
6502
0
}
6503
6504
6505
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
6506
6507
6508
static const value_string qsig_sync_Action_vals[] = {
6509
  {   0, "enslavement" },
6510
  {   1, "holdon" },
6511
  { 0, NULL }
6512
};
6513
6514
6515
static unsigned
6516
0
dissect_qsig_sync_Action(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6517
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6518
0
                                                NULL);
6519
6520
0
  return offset;
6521
0
}
6522
6523
6524
static const ber_sequence_t qsig_sync_SEQUENCE_OF_Extension_sequence_of[1] = {
6525
  { &hf_qsig_sync_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6526
};
6527
6528
static unsigned
6529
0
dissect_qsig_sync_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6530
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6531
0
                                      qsig_sync_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sync_SEQUENCE_OF_Extension);
6532
6533
0
  return offset;
6534
0
}
6535
6536
6537
static const value_string qsig_sync_ArgExtension_vals[] = {
6538
  {   1, "extension" },
6539
  {   2, "sequOfExtn" },
6540
  { 0, NULL }
6541
};
6542
6543
static const ber_choice_t qsig_sync_ArgExtension_choice[] = {
6544
  {   1, &hf_qsig_sync_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6545
  {   2, &hf_qsig_sync_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sync_SEQUENCE_OF_Extension },
6546
  { 0, NULL, 0, 0, 0, NULL }
6547
};
6548
6549
static unsigned
6550
0
dissect_qsig_sync_ArgExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6551
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6552
0
                                 qsig_sync_ArgExtension_choice, hf_index, ett_qsig_sync_ArgExtension,
6553
0
                                 NULL);
6554
6555
0
  return offset;
6556
0
}
6557
6558
6559
static const ber_sequence_t qsig_sync_SynchronizationReqArg_sequence[] = {
6560
  { &hf_qsig_sync_action    , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_Action },
6561
  { &hf_qsig_sync_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sync_ArgExtension },
6562
  { NULL, 0, 0, 0, NULL }
6563
};
6564
6565
static unsigned
6566
0
dissect_qsig_sync_SynchronizationReqArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6567
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6568
0
                                   qsig_sync_SynchronizationReqArg_sequence, hf_index, ett_qsig_sync_SynchronizationReqArg);
6569
6570
0
  return offset;
6571
0
}
6572
6573
6574
6575
static unsigned
6576
0
dissect_qsig_sync_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6577
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
6578
6579
0
  return offset;
6580
0
}
6581
6582
6583
static const ber_sequence_t qsig_sync_SynchronizationReqRes_sequence[] = {
6584
  { &hf_qsig_sync_action    , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_Action },
6585
  { &hf_qsig_sync_response  , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_BOOLEAN },
6586
  { &hf_qsig_sync_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sync_ArgExtension },
6587
  { NULL, 0, 0, 0, NULL }
6588
};
6589
6590
static unsigned
6591
0
dissect_qsig_sync_SynchronizationReqRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6592
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6593
0
                                   qsig_sync_SynchronizationReqRes_sequence, hf_index, ett_qsig_sync_SynchronizationReqRes);
6594
6595
0
  return offset;
6596
0
}
6597
6598
6599
static const value_string qsig_sync_T_stateinfo_vals[] = {
6600
  {   0, "freerunning" },
6601
  {   1, "idle" },
6602
  { 0, NULL }
6603
};
6604
6605
6606
static unsigned
6607
0
dissect_qsig_sync_T_stateinfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6608
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6609
0
                                                NULL);
6610
6611
0
  return offset;
6612
0
}
6613
6614
6615
static const ber_sequence_t qsig_sync_SynchronizationInfoArg_sequence[] = {
6616
  { &hf_qsig_sync_stateinfo , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_T_stateinfo },
6617
  { &hf_qsig_sync_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sync_ArgExtension },
6618
  { NULL, 0, 0, 0, NULL }
6619
};
6620
6621
static unsigned
6622
0
dissect_qsig_sync_SynchronizationInfoArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6623
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6624
0
                                   qsig_sync_SynchronizationInfoArg_sequence, hf_index, ett_qsig_sync_SynchronizationInfoArg);
6625
6626
0
  return offset;
6627
0
}
6628
6629
/*--- PDUs ---*/
6630
6631
0
static int dissect_qsig_sync_SynchronizationReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6632
0
  unsigned offset = 0;
6633
0
  asn1_ctx_t asn1_ctx;
6634
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6635
0
  offset = dissect_qsig_sync_SynchronizationReqArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU);
6636
0
  return offset;
6637
0
}
6638
0
static int dissect_qsig_sync_SynchronizationReqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6639
0
  unsigned offset = 0;
6640
0
  asn1_ctx_t asn1_ctx;
6641
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6642
0
  offset = dissect_qsig_sync_SynchronizationReqRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU);
6643
0
  return offset;
6644
0
}
6645
0
static int dissect_qsig_sync_SynchronizationInfoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6646
0
  unsigned offset = 0;
6647
0
  asn1_ctx_t asn1_ctx;
6648
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6649
0
  offset = dissect_qsig_sync_SynchronizationInfoArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU);
6650
0
  return offset;
6651
0
}
6652
0
static int dissect_qsig_sync_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6653
0
  unsigned offset = 0;
6654
0
  asn1_ctx_t asn1_ctx;
6655
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6656
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_Extension_PDU);
6657
0
  return offset;
6658
0
}
6659
6660
6661
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
6662
6663
6664
static const value_string qsig_cint_CintCause_vals[] = {
6665
  {   0, "unknown" },
6666
  {   1, "cintBnan" },
6667
  {   2, "cintBus" },
6668
  {   3, "cintCug" },
6669
  {   4, "cintDnd" },
6670
  {   5, "cintIbd" },
6671
  {   6, "cintInn" },
6672
  {   7, "cintMob1" },
6673
  {   8, "cintMob2" },
6674
  {   9, "cintMob3" },
6675
  {  10, "cintNcmp" },
6676
  {  11, "cintNcong" },
6677
  {  12, "cintNre" },
6678
  {  13, "cintOos" },
6679
  {  14, "cintRrs" },
6680
  {  15, "cintTbnan" },
6681
  {  16, "cintTnre" },
6682
  {  17, "cintTrans" },
6683
  {  18, "cintUpl" },
6684
  {  19, "cintInvDiv" },
6685
  {  20, "cintHold" },
6686
  { 0, NULL }
6687
};
6688
6689
6690
static unsigned
6691
0
dissect_qsig_cint_CintCause(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6692
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
6693
0
                                                            0U, 127U, hf_index, NULL);
6694
6695
0
  return offset;
6696
0
}
6697
6698
6699
6700
static unsigned
6701
0
dissect_qsig_cint_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6702
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6703
6704
0
  return offset;
6705
0
}
6706
6707
6708
static const ber_sequence_t qsig_cint_SEQUENCE_OF_Extension_sequence_of[1] = {
6709
  { &hf_qsig_cint_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6710
};
6711
6712
static unsigned
6713
0
dissect_qsig_cint_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6714
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6715
0
                                      qsig_cint_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cint_SEQUENCE_OF_Extension);
6716
6717
0
  return offset;
6718
0
}
6719
6720
6721
static const value_string qsig_cint_CintExtension_vals[] = {
6722
  {   0, "none" },
6723
  {   1, "single" },
6724
  {   2, "multiple" },
6725
  { 0, NULL }
6726
};
6727
6728
static const ber_choice_t qsig_cint_CintExtension_choice[] = {
6729
  {   0, &hf_qsig_cint_none      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_NULL },
6730
  {   1, &hf_qsig_cint_single    , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6731
  {   2, &hf_qsig_cint_multiple  , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_cint_SEQUENCE_OF_Extension },
6732
  { 0, NULL, 0, 0, 0, NULL }
6733
};
6734
6735
static unsigned
6736
0
dissect_qsig_cint_CintExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6737
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6738
0
                                 qsig_cint_CintExtension_choice, hf_index, ett_qsig_cint_CintExtension,
6739
0
                                 NULL);
6740
6741
0
  return offset;
6742
0
}
6743
6744
6745
static const ber_sequence_t qsig_cint_CintInformation1Arg_sequence[] = {
6746
  { &hf_qsig_cint_interceptionCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_CintCause },
6747
  { &hf_qsig_cint_interceptedToNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6748
  { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6749
  { NULL, 0, 0, 0, NULL }
6750
};
6751
6752
static unsigned
6753
0
dissect_qsig_cint_CintInformation1Arg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6754
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6755
0
                                   qsig_cint_CintInformation1Arg_sequence, hf_index, ett_qsig_cint_CintInformation1Arg);
6756
6757
0
  return offset;
6758
0
}
6759
6760
6761
static const ber_sequence_t qsig_cint_CintInformation2Arg_sequence[] = {
6762
  { &hf_qsig_cint_interceptionCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_CintCause },
6763
  { &hf_qsig_cint_calledNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6764
  { &hf_qsig_cint_originalCalledNumber, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6765
  { &hf_qsig_cint_calledName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6766
  { &hf_qsig_cint_originalCalledName, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6767
  { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6768
  { NULL, 0, 0, 0, NULL }
6769
};
6770
6771
static unsigned
6772
0
dissect_qsig_cint_CintInformation2Arg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6773
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6774
0
                                   qsig_cint_CintInformation2Arg_sequence, hf_index, ett_qsig_cint_CintInformation2Arg);
6775
6776
0
  return offset;
6777
0
}
6778
6779
6780
static const value_string qsig_cint_Condition_vals[] = {
6781
  {   0, "unknown" },
6782
  {   2, "cintBus" },
6783
  {   3, "cintCug" },
6784
  {   4, "cintDnd" },
6785
  {   5, "cintIbd" },
6786
  {   6, "cintInn" },
6787
  {   7, "cintMob1" },
6788
  {   8, "cintMob2" },
6789
  {   9, "cintMob3" },
6790
  {  10, "cintNcmp" },
6791
  {  11, "cintNcong" },
6792
  {  13, "cintOos" },
6793
  {  14, "cintRrs" },
6794
  {  17, "cintTrans" },
6795
  {  18, "cintUpl" },
6796
  {  19, "cintInvDiv" },
6797
  { 0, NULL }
6798
};
6799
6800
6801
static unsigned
6802
0
dissect_qsig_cint_Condition(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6803
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
6804
0
                                                            0U, 127U, hf_index, NULL);
6805
6806
0
  return offset;
6807
0
}
6808
6809
6810
static const ber_sequence_t qsig_cint_CintCondArg_sequence[] = {
6811
  { &hf_qsig_cint_interceptionCause_01, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_Condition },
6812
  { &hf_qsig_cint_originalCalledNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6813
  { &hf_qsig_cint_calledName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6814
  { &hf_qsig_cint_originalCalledName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6815
  { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6816
  { NULL, 0, 0, 0, NULL }
6817
};
6818
6819
static unsigned
6820
0
dissect_qsig_cint_CintCondArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6821
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6822
0
                                   qsig_cint_CintCondArg_sequence, hf_index, ett_qsig_cint_CintCondArg);
6823
6824
0
  return offset;
6825
0
}
6826
6827
/*--- PDUs ---*/
6828
6829
0
static int dissect_qsig_cint_CintInformation1Arg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6830
0
  unsigned offset = 0;
6831
0
  asn1_ctx_t asn1_ctx;
6832
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6833
0
  offset = dissect_qsig_cint_CintInformation1Arg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU);
6834
0
  return offset;
6835
0
}
6836
0
static int dissect_qsig_cint_CintInformation2Arg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6837
0
  unsigned offset = 0;
6838
0
  asn1_ctx_t asn1_ctx;
6839
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6840
0
  offset = dissect_qsig_cint_CintInformation2Arg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU);
6841
0
  return offset;
6842
0
}
6843
0
static int dissect_qsig_cint_CintCondArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6844
0
  unsigned offset = 0;
6845
0
  asn1_ctx_t asn1_ctx;
6846
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6847
0
  offset = dissect_qsig_cint_CintCondArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintCondArg_PDU);
6848
0
  return offset;
6849
0
}
6850
0
static int dissect_qsig_cint_CintExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6851
0
  unsigned offset = 0;
6852
0
  asn1_ctx_t asn1_ctx;
6853
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
6854
0
  offset = dissect_qsig_cint_CintExtension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintExtension_PDU);
6855
0
  return offset;
6856
0
}
6857
6858
6859
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
6860
6861
6862
static int * const qsig_cmn_FeatureIdList_bits[] = {
6863
  &hf_qsig_cmn_FeatureIdList_reserved,
6864
  &hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported,
6865
  &hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported,
6866
  &hf_qsig_cmn_FeatureIdList_ssCCBSpossible,
6867
  &hf_qsig_cmn_FeatureIdList_ssCCNRpossible,
6868
  &hf_qsig_cmn_FeatureIdList_ssCOsupported,
6869
  &hf_qsig_cmn_FeatureIdList_ssCIforcedRelease,
6870
  &hf_qsig_cmn_FeatureIdList_ssCIisolation,
6871
  &hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy,
6872
  &hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx,
6873
  &hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx,
6874
  &hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx,
6875
  &hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx,
6876
  &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate,
6877
  &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed,
6878
  &hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported,
6879
  &hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported,
6880
  &hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported,
6881
  NULL
6882
};
6883
6884
static unsigned
6885
0
dissect_qsig_cmn_FeatureIdList(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6886
0
  offset = dissect_ber_constrained_bitstring(implicit_tag, actx, tree, tvb, offset,
6887
0
                                                1, 64, qsig_cmn_FeatureIdList_bits, 18, hf_index, ett_qsig_cmn_FeatureIdList,
6888
0
                                                NULL);
6889
6890
0
  return offset;
6891
0
}
6892
6893
6894
6895
static unsigned
6896
0
dissect_qsig_cmn_INTEGER_0_3(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6897
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
6898
0
                                                            0U, 3U, hf_index, NULL);
6899
6900
0
  return offset;
6901
0
}
6902
6903
6904
6905
static unsigned
6906
0
dissect_qsig_cmn_IA5String_SIZE_1_10(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6907
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
6908
0
                                                        actx, tree, tvb, offset,
6909
0
                                                        1, 10, hf_index, NULL);
6910
6911
0
  return offset;
6912
0
}
6913
6914
6915
static const ber_sequence_t qsig_cmn_EquipmentId_sequence[] = {
6916
  { &hf_qsig_cmn_nodeId     , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6917
  { &hf_qsig_cmn_groupId    , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6918
  { &hf_qsig_cmn_unitId     , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6919
  { NULL, 0, 0, 0, NULL }
6920
};
6921
6922
static unsigned
6923
0
dissect_qsig_cmn_EquipmentId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6924
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6925
0
                                   qsig_cmn_EquipmentId_sequence, hf_index, ett_qsig_cmn_EquipmentId);
6926
6927
0
  return offset;
6928
0
}
6929
6930
6931
static const value_string qsig_cmn_PartyCategory_vals[] = {
6932
  {   0, "unknown" },
6933
  {   1, "extension" },
6934
  {   2, "pisnAttendant" },
6935
  {   3, "emergExt" },
6936
  { 0, NULL }
6937
};
6938
6939
6940
static unsigned
6941
0
dissect_qsig_cmn_PartyCategory(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6942
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6943
0
                                  NULL);
6944
6945
0
  return offset;
6946
0
}
6947
6948
6949
static const ber_sequence_t qsig_cmn_SEQUENCE_OF_Extension_sequence_of[1] = {
6950
  { &hf_qsig_cmn_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6951
};
6952
6953
static unsigned
6954
0
dissect_qsig_cmn_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6955
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6956
0
                                      qsig_cmn_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cmn_SEQUENCE_OF_Extension);
6957
6958
0
  return offset;
6959
0
}
6960
6961
6962
static const value_string qsig_cmn_T_extension_vals[] = {
6963
  {   7, "single" },
6964
  {   8, "multiple" },
6965
  { 0, NULL }
6966
};
6967
6968
static const ber_choice_t qsig_cmn_T_extension_choice[] = {
6969
  {   7, &hf_qsig_cmn_single     , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6970
  {   8, &hf_qsig_cmn_multiple   , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_qsig_cmn_SEQUENCE_OF_Extension },
6971
  { 0, NULL, 0, 0, 0, NULL }
6972
};
6973
6974
static unsigned
6975
0
dissect_qsig_cmn_T_extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6976
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
6977
0
                                 qsig_cmn_T_extension_choice, hf_index, ett_qsig_cmn_T_extension,
6978
0
                                 NULL);
6979
6980
0
  return offset;
6981
0
}
6982
6983
6984
static const ber_sequence_t qsig_cmn_CmnArg_sequence[] = {
6985
  { &hf_qsig_cmn_featureIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_FeatureIdList },
6986
  { &hf_qsig_cmn_ssDNDOprotectionLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_INTEGER_0_3 },
6987
  { &hf_qsig_cmn_ssCIprotectionLevel, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_INTEGER_0_3 },
6988
  { &hf_qsig_cmn_equipmentIdentity, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_EquipmentId },
6989
  { &hf_qsig_cmn_partyCategory, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_PartyCategory },
6990
  { &hf_qsig_cmn_extension  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cmn_T_extension },
6991
  { NULL, 0, 0, 0, NULL }
6992
};
6993
6994
static unsigned
6995
0
dissect_qsig_cmn_CmnArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6996
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6997
0
                                   qsig_cmn_CmnArg_sequence, hf_index, ett_qsig_cmn_CmnArg);
6998
6999
0
  return offset;
7000
0
}
7001
7002
7003
7004
static unsigned
7005
0
dissect_qsig_cmn_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7006
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7007
7008
0
  return offset;
7009
0
}
7010
7011
7012
static const value_string qsig_cmn_DummyArg_vals[] = {
7013
  {   0, "null" },
7014
  {   1, "single" },
7015
  {   2, "multiple" },
7016
  { 0, NULL }
7017
};
7018
7019
static const ber_choice_t qsig_cmn_DummyArg_choice[] = {
7020
  {   0, &hf_qsig_cmn_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cmn_NULL },
7021
  {   1, &hf_qsig_cmn_single     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7022
  {   2, &hf_qsig_cmn_multiple   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cmn_SEQUENCE_OF_Extension },
7023
  { 0, NULL, 0, 0, 0, NULL }
7024
};
7025
7026
static unsigned
7027
0
dissect_qsig_cmn_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7028
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7029
0
                                 qsig_cmn_DummyArg_choice, hf_index, ett_qsig_cmn_DummyArg,
7030
0
                                 NULL);
7031
7032
0
  return offset;
7033
0
}
7034
7035
/*--- PDUs ---*/
7036
7037
0
static int dissect_qsig_cmn_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7038
0
  unsigned offset = 0;
7039
0
  asn1_ctx_t asn1_ctx;
7040
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7041
0
  offset = dissect_qsig_cmn_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cmn_qsig_cmn_DummyArg_PDU);
7042
0
  return offset;
7043
0
}
7044
0
static int dissect_qsig_cmn_CmnArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7045
0
  unsigned offset = 0;
7046
0
  asn1_ctx_t asn1_ctx;
7047
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7048
0
  offset = dissect_qsig_cmn_CmnArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cmn_qsig_cmn_CmnArg_PDU);
7049
0
  return offset;
7050
0
}
7051
7052
7053
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
7054
7055
7056
static const value_string qsig_cpi_CPICapabilityLevel_vals[] = {
7057
  {   1, "interruptionLowPriority" },
7058
  {   2, "interruptionMediumPriority" },
7059
  {   3, "interruptionHighPriority" },
7060
  { 0, NULL }
7061
};
7062
7063
7064
static unsigned
7065
0
dissect_qsig_cpi_CPICapabilityLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7066
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7067
0
                                  NULL);
7068
7069
0
  return offset;
7070
0
}
7071
7072
7073
static const ber_sequence_t qsig_cpi_SEQUENCE_OF_Extension_sequence_of[1] = {
7074
  { &hf_qsig_cpi_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7075
};
7076
7077
static unsigned
7078
0
dissect_qsig_cpi_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7079
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7080
0
                                      qsig_cpi_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cpi_SEQUENCE_OF_Extension);
7081
7082
0
  return offset;
7083
0
}
7084
7085
7086
static const value_string qsig_cpi_T_argumentExtension_vals[] = {
7087
  {   1, "extension" },
7088
  {   2, "sequenceOfExtn" },
7089
  { 0, NULL }
7090
};
7091
7092
static const ber_choice_t qsig_cpi_T_argumentExtension_choice[] = {
7093
  {   1, &hf_qsig_cpi_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7094
  {   2, &hf_qsig_cpi_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cpi_SEQUENCE_OF_Extension },
7095
  { 0, NULL, 0, 0, 0, NULL }
7096
};
7097
7098
static unsigned
7099
0
dissect_qsig_cpi_T_argumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7100
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7101
0
                                 qsig_cpi_T_argumentExtension_choice, hf_index, ett_qsig_cpi_T_argumentExtension,
7102
0
                                 NULL);
7103
7104
0
  return offset;
7105
0
}
7106
7107
7108
static const ber_sequence_t qsig_cpi_CPIRequestArg_sequence[] = {
7109
  { &hf_qsig_cpi_cpiCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cpi_CPICapabilityLevel },
7110
  { &hf_qsig_cpi_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cpi_T_argumentExtension },
7111
  { NULL, 0, 0, 0, NULL }
7112
};
7113
7114
static unsigned
7115
0
dissect_qsig_cpi_CPIRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7116
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7117
0
                                   qsig_cpi_CPIRequestArg_sequence, hf_index, ett_qsig_cpi_CPIRequestArg);
7118
7119
0
  return offset;
7120
0
}
7121
7122
7123
static const value_string qsig_cpi_CPIProtectionLevel_vals[] = {
7124
  {   0, "noProtection" },
7125
  {   1, "lowProtection" },
7126
  {   2, "mediumProtection" },
7127
  {   3, "totalProtection" },
7128
  { 0, NULL }
7129
};
7130
7131
7132
static unsigned
7133
0
dissect_qsig_cpi_CPIProtectionLevel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7134
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7135
0
                                  NULL);
7136
7137
0
  return offset;
7138
0
}
7139
7140
7141
static const value_string qsig_cpi_T_argumentExtension_01_vals[] = {
7142
  {   1, "extension" },
7143
  {   2, "sequenceOfExtn" },
7144
  { 0, NULL }
7145
};
7146
7147
static const ber_choice_t qsig_cpi_T_argumentExtension_01_choice[] = {
7148
  {   1, &hf_qsig_cpi_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7149
  {   2, &hf_qsig_cpi_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cpi_SEQUENCE_OF_Extension },
7150
  { 0, NULL, 0, 0, 0, NULL }
7151
};
7152
7153
static unsigned
7154
0
dissect_qsig_cpi_T_argumentExtension_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7155
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7156
0
                                 qsig_cpi_T_argumentExtension_01_choice, hf_index, ett_qsig_cpi_T_argumentExtension_01,
7157
0
                                 NULL);
7158
7159
0
  return offset;
7160
0
}
7161
7162
7163
static const ber_sequence_t qsig_cpi_CPIPRequestArg_sequence[] = {
7164
  { &hf_qsig_cpi_cpiProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cpi_CPIProtectionLevel },
7165
  { &hf_qsig_cpi_argumentExtension_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cpi_T_argumentExtension_01 },
7166
  { NULL, 0, 0, 0, NULL }
7167
};
7168
7169
static unsigned
7170
0
dissect_qsig_cpi_CPIPRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7171
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7172
0
                                   qsig_cpi_CPIPRequestArg_sequence, hf_index, ett_qsig_cpi_CPIPRequestArg);
7173
7174
0
  return offset;
7175
0
}
7176
7177
/*--- PDUs ---*/
7178
7179
0
static int dissect_qsig_cpi_CPIRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7180
0
  unsigned offset = 0;
7181
0
  asn1_ctx_t asn1_ctx;
7182
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7183
0
  offset = dissect_qsig_cpi_CPIRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU);
7184
0
  return offset;
7185
0
}
7186
0
static int dissect_qsig_cpi_CPIPRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7187
0
  unsigned offset = 0;
7188
0
  asn1_ctx_t asn1_ctx;
7189
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7190
0
  offset = dissect_qsig_cpi_CPIPRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU);
7191
0
  return offset;
7192
0
}
7193
7194
7195
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
7196
7197
7198
7199
static unsigned
7200
0
dissect_qsig_pumr_AlternativeId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7201
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
7202
0
                                                   1, 20, hf_index, NULL);
7203
7204
0
  return offset;
7205
0
}
7206
7207
7208
static const value_string qsig_pumr_RpumUserId_vals[] = {
7209
  {   0, "pumNumber" },
7210
  {   1, "alternativeId" },
7211
  { 0, NULL }
7212
};
7213
7214
static const ber_choice_t qsig_pumr_RpumUserId_choice[] = {
7215
  {   0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7216
  {   1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7217
  { 0, NULL, 0, 0, 0, NULL }
7218
};
7219
7220
static unsigned
7221
0
dissect_qsig_pumr_RpumUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7222
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7223
0
                                 qsig_pumr_RpumUserId_choice, hf_index, ett_qsig_pumr_RpumUserId,
7224
0
                                 NULL);
7225
7226
0
  return offset;
7227
0
}
7228
7229
7230
static const value_string qsig_pumr_ServiceOption_vals[] = {
7231
  {   0, "inCallRegistration" },
7232
  {   1, "outCallRegistration" },
7233
  {   2, "allCallRegistration" },
7234
  { 0, NULL }
7235
};
7236
7237
7238
static unsigned
7239
0
dissect_qsig_pumr_ServiceOption(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7240
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7241
0
                                  NULL);
7242
7243
0
  return offset;
7244
0
}
7245
7246
7247
7248
static unsigned
7249
0
dissect_qsig_pumr_INTEGER(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7250
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7251
0
                                                NULL);
7252
7253
0
  return offset;
7254
0
}
7255
7256
7257
static const ber_sequence_t qsig_pumr_SessionParams_sequence[] = {
7258
  { &hf_qsig_pumr_durationOfSession, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_INTEGER },
7259
  { &hf_qsig_pumr_numberOfOutgCalls, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_INTEGER },
7260
  { NULL, 0, 0, 0, NULL }
7261
};
7262
7263
static unsigned
7264
0
dissect_qsig_pumr_SessionParams(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7265
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7266
0
                                   qsig_pumr_SessionParams_sequence, hf_index, ett_qsig_pumr_SessionParams);
7267
7268
0
  return offset;
7269
0
}
7270
7271
7272
7273
static unsigned
7274
0
dissect_qsig_pumr_UserPin(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7275
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
7276
0
                                                   1, 20, hf_index, NULL);
7277
7278
0
  return offset;
7279
0
}
7280
7281
7282
static const value_string qsig_pumr_T_userPin_vals[] = {
7283
  {   6, "pumUserPin" },
7284
  {   7, "activatingUserPin" },
7285
  { 0, NULL }
7286
};
7287
7288
static const ber_choice_t qsig_pumr_T_userPin_choice[] = {
7289
  {   6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7290
  {   7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7291
  { 0, NULL, 0, 0, 0, NULL }
7292
};
7293
7294
static unsigned
7295
0
dissect_qsig_pumr_T_userPin(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7296
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7297
0
                                 qsig_pumr_T_userPin_choice, hf_index, ett_qsig_pumr_T_userPin,
7298
0
                                 NULL);
7299
7300
0
  return offset;
7301
0
}
7302
7303
7304
static const ber_sequence_t qsig_pumr_SEQUENCE_OF_Extension_sequence_of[1] = {
7305
  { &hf_qsig_pumr_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7306
};
7307
7308
static unsigned
7309
0
dissect_qsig_pumr_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7310
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7311
0
                                      qsig_pumr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pumr_SEQUENCE_OF_Extension);
7312
7313
0
  return offset;
7314
0
}
7315
7316
7317
static const value_string qsig_pumr_PumrExtension_vals[] = {
7318
  {   4, "extension" },
7319
  {   5, "sequOfExtn" },
7320
  { 0, NULL }
7321
};
7322
7323
static const ber_choice_t qsig_pumr_PumrExtension_choice[] = {
7324
  {   4, &hf_qsig_pumr_extension , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7325
  {   5, &hf_qsig_pumr_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_SEQUENCE_OF_Extension },
7326
  { 0, NULL, 0, 0, 0, NULL }
7327
};
7328
7329
static unsigned
7330
0
dissect_qsig_pumr_PumrExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7331
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7332
0
                                 qsig_pumr_PumrExtension_choice, hf_index, ett_qsig_pumr_PumrExtension,
7333
0
                                 NULL);
7334
7335
0
  return offset;
7336
0
}
7337
7338
7339
static const ber_sequence_t qsig_pumr_PumRegistrArg_sequence[] = {
7340
  { &hf_qsig_pumr_pumRUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_RpumUserId },
7341
  { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7342
  { &hf_qsig_pumr_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7343
  { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7344
  { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7345
  { &hf_qsig_pumr_sessionParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7346
  { &hf_qsig_pumr_userPin   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_T_userPin },
7347
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7348
  { NULL, 0, 0, 0, NULL }
7349
};
7350
7351
static unsigned
7352
0
dissect_qsig_pumr_PumRegistrArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7353
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7354
0
                                   qsig_pumr_PumRegistrArg_sequence, hf_index, ett_qsig_pumr_PumRegistrArg);
7355
7356
0
  return offset;
7357
0
}
7358
7359
7360
static const ber_sequence_t qsig_pumr_PumRegistrRes_sequence[] = {
7361
  { &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7362
  { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7363
  { &hf_qsig_pumr_sessionParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7364
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7365
  { NULL, 0, 0, 0, NULL }
7366
};
7367
7368
static unsigned
7369
0
dissect_qsig_pumr_PumRegistrRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7370
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7371
0
                                   qsig_pumr_PumRegistrRes_sequence, hf_index, ett_qsig_pumr_PumRegistrRes);
7372
7373
0
  return offset;
7374
0
}
7375
7376
7377
7378
static unsigned
7379
0
dissect_qsig_pumr_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7380
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7381
7382
0
  return offset;
7383
0
}
7384
7385
7386
static const value_string qsig_pumr_DummyRes_vals[] = {
7387
  {   0, "null" },
7388
  {   1, "extension" },
7389
  {   2, "sequOfExtn" },
7390
  { 0, NULL }
7391
};
7392
7393
static const ber_choice_t qsig_pumr_DummyRes_choice[] = {
7394
  {   0, &hf_qsig_pumr_null      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_NULL },
7395
  {   1, &hf_qsig_pumr_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7396
  {   2, &hf_qsig_pumr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_SEQUENCE_OF_Extension },
7397
  { 0, NULL, 0, 0, 0, NULL }
7398
};
7399
7400
static unsigned
7401
0
dissect_qsig_pumr_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7402
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7403
0
                                 qsig_pumr_DummyRes_choice, hf_index, ett_qsig_pumr_DummyRes,
7404
0
                                 NULL);
7405
7406
0
  return offset;
7407
0
}
7408
7409
7410
static const value_string qsig_pumr_XpumUserId_vals[] = {
7411
  {   0, "pumNumber" },
7412
  {   1, "alternativeId" },
7413
  { 0, NULL }
7414
};
7415
7416
static const ber_choice_t qsig_pumr_XpumUserId_choice[] = {
7417
  {   0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7418
  {   1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7419
  { 0, NULL, 0, 0, 0, NULL }
7420
};
7421
7422
static unsigned
7423
0
dissect_qsig_pumr_XpumUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7424
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7425
0
                                 qsig_pumr_XpumUserId_choice, hf_index, ett_qsig_pumr_XpumUserId,
7426
0
                                 NULL);
7427
7428
0
  return offset;
7429
0
}
7430
7431
7432
static const ber_sequence_t qsig_pumr_PumDelRegArg_sequence[] = {
7433
  { &hf_qsig_pumr_pumXUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_XpumUserId },
7434
  { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7435
  { &hf_qsig_pumr_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7436
  { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7437
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7438
  { NULL, 0, 0, 0, NULL }
7439
};
7440
7441
static unsigned
7442
0
dissect_qsig_pumr_PumDelRegArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7443
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7444
0
                                   qsig_pumr_PumDelRegArg_sequence, hf_index, ett_qsig_pumr_PumDelRegArg);
7445
7446
0
  return offset;
7447
0
}
7448
7449
7450
static const value_string qsig_pumr_DpumUserId_vals[] = {
7451
  {   0, "pumNumber" },
7452
  {   1, "alternativeId" },
7453
  { 0, NULL }
7454
};
7455
7456
static const ber_choice_t qsig_pumr_DpumUserId_choice[] = {
7457
  {   0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7458
  {   1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7459
  { 0, NULL, 0, 0, 0, NULL }
7460
};
7461
7462
static unsigned
7463
0
dissect_qsig_pumr_DpumUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7464
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7465
0
                                 qsig_pumr_DpumUserId_choice, hf_index, ett_qsig_pumr_DpumUserId,
7466
0
                                 NULL);
7467
7468
0
  return offset;
7469
0
}
7470
7471
7472
static const value_string qsig_pumr_T_userPin_01_vals[] = {
7473
  {   6, "pumUserPin" },
7474
  {   7, "activatingUserPin" },
7475
  { 0, NULL }
7476
};
7477
7478
static const ber_choice_t qsig_pumr_T_userPin_01_choice[] = {
7479
  {   6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7480
  {   7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7481
  { 0, NULL, 0, 0, 0, NULL }
7482
};
7483
7484
static unsigned
7485
0
dissect_qsig_pumr_T_userPin_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7486
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7487
0
                                 qsig_pumr_T_userPin_01_choice, hf_index, ett_qsig_pumr_T_userPin_01,
7488
0
                                 NULL);
7489
7490
0
  return offset;
7491
0
}
7492
7493
7494
static const ber_sequence_t qsig_pumr_PumDe_regArg_sequence[] = {
7495
  { &hf_qsig_pumr_pumDUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_DpumUserId },
7496
  { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7497
  { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7498
  { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7499
  { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7500
  { &hf_qsig_pumr_userPin_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_T_userPin_01 },
7501
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7502
  { NULL, 0, 0, 0, NULL }
7503
};
7504
7505
static unsigned
7506
0
dissect_qsig_pumr_PumDe_regArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7507
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7508
0
                                   qsig_pumr_PumDe_regArg_sequence, hf_index, ett_qsig_pumr_PumDe_regArg);
7509
7510
0
  return offset;
7511
0
}
7512
7513
7514
static const value_string qsig_pumr_IpumUserId_vals[] = {
7515
  {   0, "pumNumber" },
7516
  {   1, "alternativeId" },
7517
  { 0, NULL }
7518
};
7519
7520
static const ber_choice_t qsig_pumr_IpumUserId_choice[] = {
7521
  {   0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7522
  {   1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7523
  { 0, NULL, 0, 0, 0, NULL }
7524
};
7525
7526
static unsigned
7527
0
dissect_qsig_pumr_IpumUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7528
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7529
0
                                 qsig_pumr_IpumUserId_choice, hf_index, ett_qsig_pumr_IpumUserId,
7530
0
                                 NULL);
7531
7532
0
  return offset;
7533
0
}
7534
7535
7536
7537
static unsigned
7538
0
dissect_qsig_pumr_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7539
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
7540
7541
0
  return offset;
7542
0
}
7543
7544
7545
static const value_string qsig_pumr_T_userPin_02_vals[] = {
7546
  {   6, "pumUserPin" },
7547
  {   7, "activatingUserPin" },
7548
  { 0, NULL }
7549
};
7550
7551
static const ber_choice_t qsig_pumr_T_userPin_02_choice[] = {
7552
  {   6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7553
  {   7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7554
  { 0, NULL, 0, 0, 0, NULL }
7555
};
7556
7557
static unsigned
7558
0
dissect_qsig_pumr_T_userPin_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7559
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7560
0
                                 qsig_pumr_T_userPin_02_choice, hf_index, ett_qsig_pumr_T_userPin_02,
7561
0
                                 NULL);
7562
7563
0
  return offset;
7564
0
}
7565
7566
7567
static const ber_sequence_t qsig_pumr_PumInterrogArg_sequence[] = {
7568
  { &hf_qsig_pumr_pumIUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_IpumUserId },
7569
  { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7570
  { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7571
  { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7572
  { &hf_qsig_pumr_serviceOption, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_pumr_ServiceOption },
7573
  { &hf_qsig_pumr_homeInfoOnly, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_BOOLEAN },
7574
  { &hf_qsig_pumr_userPin_02, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_T_userPin_02 },
7575
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7576
  { NULL, 0, 0, 0, NULL }
7577
};
7578
7579
static unsigned
7580
0
dissect_qsig_pumr_PumInterrogArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7581
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7582
0
                                   qsig_pumr_PumInterrogArg_sequence, hf_index, ett_qsig_pumr_PumInterrogArg);
7583
7584
0
  return offset;
7585
0
}
7586
7587
7588
static const ber_sequence_t qsig_pumr_PumInterrogRes_item_sequence[] = {
7589
  { &hf_qsig_pumr_basicService, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_BasicService },
7590
  { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7591
  { &hf_qsig_pumr_serviceOption, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_ServiceOption },
7592
  { &hf_qsig_pumr_interrogParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7593
  { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7594
  { NULL, 0, 0, 0, NULL }
7595
};
7596
7597
static unsigned
7598
0
dissect_qsig_pumr_PumInterrogRes_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7599
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7600
0
                                   qsig_pumr_PumInterrogRes_item_sequence, hf_index, ett_qsig_pumr_PumInterrogRes_item);
7601
7602
0
  return offset;
7603
0
}
7604
7605
7606
static const ber_sequence_t qsig_pumr_PumInterrogRes_set_of[1] = {
7607
  { &hf_qsig_pumr_PumInterrogRes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_PumInterrogRes_item },
7608
};
7609
7610
static unsigned
7611
0
dissect_qsig_pumr_PumInterrogRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7612
0
  offset = dissect_ber_constrained_set_of(implicit_tag, actx, tree, tvb, offset,
7613
0
                                             1, 8, qsig_pumr_PumInterrogRes_set_of, hf_index, ett_qsig_pumr_PumInterrogRes);
7614
7615
0
  return offset;
7616
0
}
7617
7618
/*--- PDUs ---*/
7619
7620
0
static int dissect_qsig_pumr_PumRegistrArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7621
0
  unsigned offset = 0;
7622
0
  asn1_ctx_t asn1_ctx;
7623
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7624
0
  offset = dissect_qsig_pumr_PumRegistrArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU);
7625
0
  return offset;
7626
0
}
7627
0
static int dissect_qsig_pumr_PumRegistrRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7628
0
  unsigned offset = 0;
7629
0
  asn1_ctx_t asn1_ctx;
7630
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7631
0
  offset = dissect_qsig_pumr_PumRegistrRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU);
7632
0
  return offset;
7633
0
}
7634
0
static int dissect_qsig_pumr_PumDelRegArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7635
0
  unsigned offset = 0;
7636
0
  asn1_ctx_t asn1_ctx;
7637
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7638
0
  offset = dissect_qsig_pumr_PumDelRegArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU);
7639
0
  return offset;
7640
0
}
7641
0
static int dissect_qsig_pumr_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7642
0
  unsigned offset = 0;
7643
0
  asn1_ctx_t asn1_ctx;
7644
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7645
0
  offset = dissect_qsig_pumr_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_DummyRes_PDU);
7646
0
  return offset;
7647
0
}
7648
0
static int dissect_qsig_pumr_PumDe_regArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7649
0
  unsigned offset = 0;
7650
0
  asn1_ctx_t asn1_ctx;
7651
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7652
0
  offset = dissect_qsig_pumr_PumDe_regArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU);
7653
0
  return offset;
7654
0
}
7655
0
static int dissect_qsig_pumr_PumInterrogArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7656
0
  unsigned offset = 0;
7657
0
  asn1_ctx_t asn1_ctx;
7658
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7659
0
  offset = dissect_qsig_pumr_PumInterrogArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU);
7660
0
  return offset;
7661
0
}
7662
0
static int dissect_qsig_pumr_PumInterrogRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7663
0
  unsigned offset = 0;
7664
0
  asn1_ctx_t asn1_ctx;
7665
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7666
0
  offset = dissect_qsig_pumr_PumInterrogRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU);
7667
0
  return offset;
7668
0
}
7669
0
static int dissect_qsig_pumr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7670
0
  unsigned offset = 0;
7671
0
  asn1_ctx_t asn1_ctx;
7672
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7673
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_Extension_PDU);
7674
0
  return offset;
7675
0
}
7676
7677
7678
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
7679
7680
7681
static const ber_sequence_t qsig_pumch_SEQUENCE_OF_Extension_sequence_of[1] = {
7682
  { &hf_qsig_pumch_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7683
};
7684
7685
static unsigned
7686
0
dissect_qsig_pumch_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7687
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7688
0
                                      qsig_pumch_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pumch_SEQUENCE_OF_Extension);
7689
7690
0
  return offset;
7691
0
}
7692
7693
7694
static const value_string qsig_pumch_PumiExtension_vals[] = {
7695
  {   4, "extension" },
7696
  {   5, "sequOfExtn" },
7697
  { 0, NULL }
7698
};
7699
7700
static const ber_choice_t qsig_pumch_PumiExtension_choice[] = {
7701
  {   4, &hf_qsig_pumch_extension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7702
  {   5, &hf_qsig_pumch_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7703
  { 0, NULL, 0, 0, 0, NULL }
7704
};
7705
7706
static unsigned
7707
0
dissect_qsig_pumch_PumiExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7708
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7709
0
                                 qsig_pumch_PumiExtension_choice, hf_index, ett_qsig_pumch_PumiExtension,
7710
0
                                 NULL);
7711
7712
0
  return offset;
7713
0
}
7714
7715
7716
static const ber_sequence_t qsig_pumch_EnquiryArg_sequence[] = {
7717
  { &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7718
  { &hf_qsig_pumch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
7719
  { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7720
  { NULL, 0, 0, 0, NULL }
7721
};
7722
7723
static unsigned
7724
0
dissect_qsig_pumch_EnquiryArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7725
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7726
0
                                   qsig_pumch_EnquiryArg_sequence, hf_index, ett_qsig_pumch_EnquiryArg);
7727
7728
0
  return offset;
7729
0
}
7730
7731
7732
7733
static unsigned
7734
0
dissect_qsig_pumch_AlternativeId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7735
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
7736
0
                                                   1, 20, hf_index, NULL);
7737
7738
0
  return offset;
7739
0
}
7740
7741
7742
static const ber_sequence_t qsig_pumch_T_both_sequence[] = {
7743
  { &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7744
  { &hf_qsig_pumch_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_AlternativeId },
7745
  { NULL, 0, 0, 0, NULL }
7746
};
7747
7748
static unsigned
7749
0
dissect_qsig_pumch_T_both(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7750
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7751
0
                                   qsig_pumch_T_both_sequence, hf_index, ett_qsig_pumch_T_both);
7752
7753
0
  return offset;
7754
0
}
7755
7756
7757
static const value_string qsig_pumch_PumIdentity_vals[] = {
7758
  {   0, "pisnNumber" },
7759
  {   1, "alternativeId" },
7760
  {   2, "both" },
7761
  { 0, NULL }
7762
};
7763
7764
static const ber_choice_t qsig_pumch_PumIdentity_choice[] = {
7765
  {   0, &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7766
  {   1, &hf_qsig_pumch_alternativeId, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_AlternativeId },
7767
  {   2, &hf_qsig_pumch_both     , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_T_both },
7768
  { 0, NULL, 0, 0, 0, NULL }
7769
};
7770
7771
static unsigned
7772
0
dissect_qsig_pumch_PumIdentity(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7773
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7774
0
                                 qsig_pumch_PumIdentity_choice, hf_index, ett_qsig_pumch_PumIdentity,
7775
0
                                 NULL);
7776
7777
0
  return offset;
7778
0
}
7779
7780
7781
static const ber_sequence_t qsig_pumch_DivertArg_sequence[] = {
7782
  { &hf_qsig_pumch_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7783
  { &hf_qsig_pumch_callingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
7784
  { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7785
  { &hf_qsig_pumch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
7786
  { &hf_qsig_pumch_callingUserSub, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
7787
  { &hf_qsig_pumch_callingUserName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
7788
  { &hf_qsig_pumch_pumUserSub, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
7789
  { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7790
  { NULL, 0, 0, 0, NULL }
7791
};
7792
7793
static unsigned
7794
0
dissect_qsig_pumch_DivertArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7795
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7796
0
                                   qsig_pumch_DivertArg_sequence, hf_index, ett_qsig_pumch_DivertArg);
7797
7798
0
  return offset;
7799
0
}
7800
7801
7802
static const ber_sequence_t qsig_pumch_InformArg_sequence[] = {
7803
  { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7804
  { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7805
  { NULL, 0, 0, 0, NULL }
7806
};
7807
7808
static unsigned
7809
0
dissect_qsig_pumch_InformArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7810
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7811
0
                                   qsig_pumch_InformArg_sequence, hf_index, ett_qsig_pumch_InformArg);
7812
7813
0
  return offset;
7814
0
}
7815
7816
7817
static const ber_sequence_t qsig_pumch_CurrLocation_sequence[] = {
7818
  { &hf_qsig_pumch_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7819
  { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7820
  { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7821
  { NULL, 0, 0, 0, NULL }
7822
};
7823
7824
static unsigned
7825
0
dissect_qsig_pumch_CurrLocation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7826
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7827
0
                                   qsig_pumch_CurrLocation_sequence, hf_index, ett_qsig_pumch_CurrLocation);
7828
7829
0
  return offset;
7830
0
}
7831
7832
7833
static const value_string qsig_pumch_SubscriptionOption_vals[] = {
7834
  {   0, "noNotification" },
7835
  {   1, "notificationWithoutDivertedToNr" },
7836
  {   2, "notificationWithDivertedToNr" },
7837
  { 0, NULL }
7838
};
7839
7840
7841
static unsigned
7842
0
dissect_qsig_pumch_SubscriptionOption(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7843
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7844
0
                                  NULL);
7845
7846
0
  return offset;
7847
0
}
7848
7849
7850
static const ber_sequence_t qsig_pumch_CfuActivated_sequence[] = {
7851
  { &hf_qsig_pumch_divToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
7852
  { &hf_qsig_pumch_divOptions, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_SubscriptionOption },
7853
  { &hf_qsig_pumch_pumName  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
7854
  { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7855
  { NULL, 0, 0, 0, NULL }
7856
};
7857
7858
static unsigned
7859
0
dissect_qsig_pumch_CfuActivated(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7860
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7861
0
                                   qsig_pumch_CfuActivated_sequence, hf_index, ett_qsig_pumch_CfuActivated);
7862
7863
0
  return offset;
7864
0
}
7865
7866
7867
static const value_string qsig_pumch_EnquiryRes_vals[] = {
7868
  {   1, "currLocation" },
7869
  {   2, "cfuActivated" },
7870
  { 0, NULL }
7871
};
7872
7873
static const ber_choice_t qsig_pumch_EnquiryRes_choice[] = {
7874
  {   1, &hf_qsig_pumch_currLocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_CurrLocation },
7875
  {   2, &hf_qsig_pumch_cfuActivated, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_CfuActivated },
7876
  { 0, NULL, 0, 0, 0, NULL }
7877
};
7878
7879
static unsigned
7880
0
dissect_qsig_pumch_EnquiryRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7881
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7882
0
                                 qsig_pumch_EnquiryRes_choice, hf_index, ett_qsig_pumch_EnquiryRes,
7883
0
                                 NULL);
7884
7885
0
  return offset;
7886
0
}
7887
7888
7889
7890
static unsigned
7891
0
dissect_qsig_pumch_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7892
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7893
7894
0
  return offset;
7895
0
}
7896
7897
7898
static const value_string qsig_pumch_DummyRes_vals[] = {
7899
  {   0, "null" },
7900
  {   1, "extension" },
7901
  {   2, "sequOfExtn" },
7902
  { 0, NULL }
7903
};
7904
7905
static const ber_choice_t qsig_pumch_DummyRes_choice[] = {
7906
  {   0, &hf_qsig_pumch_null     , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_NULL },
7907
  {   1, &hf_qsig_pumch_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7908
  {   2, &hf_qsig_pumch_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7909
  { 0, NULL, 0, 0, 0, NULL }
7910
};
7911
7912
static unsigned
7913
0
dissect_qsig_pumch_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7914
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7915
0
                                 qsig_pumch_DummyRes_choice, hf_index, ett_qsig_pumch_DummyRes,
7916
0
                                 NULL);
7917
7918
0
  return offset;
7919
0
}
7920
7921
7922
static const value_string qsig_pumch_T_pumoaextension_vals[] = {
7923
  {   3, "single" },
7924
  {   4, "multiple" },
7925
  { 0, NULL }
7926
};
7927
7928
static const ber_choice_t qsig_pumch_T_pumoaextension_choice[] = {
7929
  {   3, &hf_qsig_pumch_single   , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7930
  {   4, &hf_qsig_pumch_multiple , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7931
  { 0, NULL, 0, 0, 0, NULL }
7932
};
7933
7934
static unsigned
7935
0
dissect_qsig_pumch_T_pumoaextension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7936
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
7937
0
                                 qsig_pumch_T_pumoaextension_choice, hf_index, ett_qsig_pumch_T_pumoaextension,
7938
0
                                 NULL);
7939
7940
0
  return offset;
7941
0
}
7942
7943
7944
static const ber_sequence_t qsig_pumch_PumoArg_sequence[] = {
7945
  { &hf_qsig_pumch_destinationNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7946
  { &hf_qsig_pumch_pumIdentity, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7947
  { &hf_qsig_pumch_sendingComplete, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumch_NULL },
7948
  { &hf_qsig_pumch_pumoaextension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_T_pumoaextension },
7949
  { NULL, 0, 0, 0, NULL }
7950
};
7951
7952
static unsigned
7953
0
dissect_qsig_pumch_PumoArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7954
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7955
0
                                   qsig_pumch_PumoArg_sequence, hf_index, ett_qsig_pumch_PumoArg);
7956
7957
0
  return offset;
7958
0
}
7959
7960
/*--- PDUs ---*/
7961
7962
0
static int dissect_qsig_pumch_EnquiryArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7963
0
  unsigned offset = 0;
7964
0
  asn1_ctx_t asn1_ctx;
7965
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7966
0
  offset = dissect_qsig_pumch_EnquiryArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU);
7967
0
  return offset;
7968
0
}
7969
0
static int dissect_qsig_pumch_EnquiryRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7970
0
  unsigned offset = 0;
7971
0
  asn1_ctx_t asn1_ctx;
7972
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7973
0
  offset = dissect_qsig_pumch_EnquiryRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU);
7974
0
  return offset;
7975
0
}
7976
0
static int dissect_qsig_pumch_DivertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7977
0
  unsigned offset = 0;
7978
0
  asn1_ctx_t asn1_ctx;
7979
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7980
0
  offset = dissect_qsig_pumch_DivertArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_DivertArg_PDU);
7981
0
  return offset;
7982
0
}
7983
0
static int dissect_qsig_pumch_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7984
0
  unsigned offset = 0;
7985
0
  asn1_ctx_t asn1_ctx;
7986
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7987
0
  offset = dissect_qsig_pumch_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_DummyRes_PDU);
7988
0
  return offset;
7989
0
}
7990
0
static int dissect_qsig_pumch_InformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7991
0
  unsigned offset = 0;
7992
0
  asn1_ctx_t asn1_ctx;
7993
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
7994
0
  offset = dissect_qsig_pumch_InformArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_InformArg_PDU);
7995
0
  return offset;
7996
0
}
7997
0
static int dissect_qsig_pumch_PumoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7998
0
  unsigned offset = 0;
7999
0
  asn1_ctx_t asn1_ctx;
8000
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8001
0
  offset = dissect_qsig_pumch_PumoArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_PumoArg_PDU);
8002
0
  return offset;
8003
0
}
8004
0
static int dissect_qsig_pumch_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8005
0
  unsigned offset = 0;
8006
0
  asn1_ctx_t asn1_ctx;
8007
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8008
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_Extension_PDU);
8009
0
  return offset;
8010
0
}
8011
8012
8013
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
8014
8015
8016
8017
static unsigned
8018
0
dissect_qsig_ssct_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8019
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8020
8021
0
  return offset;
8022
0
}
8023
8024
8025
static const ber_sequence_t qsig_ssct_SEQUENCE_OF_Extension_sequence_of[1] = {
8026
  { &hf_qsig_ssct_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8027
};
8028
8029
static unsigned
8030
0
dissect_qsig_ssct_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8031
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8032
0
                                      qsig_ssct_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ssct_SEQUENCE_OF_Extension);
8033
8034
0
  return offset;
8035
0
}
8036
8037
8038
static const value_string qsig_ssct_DummyArg_vals[] = {
8039
  {   0, "null" },
8040
  {   1, "single" },
8041
  {   2, "multiple" },
8042
  { 0, NULL }
8043
};
8044
8045
static const ber_choice_t qsig_ssct_DummyArg_choice[] = {
8046
  {   0, &hf_qsig_ssct_null      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_NULL },
8047
  {   1, &hf_qsig_ssct_single    , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8048
  {   2, &hf_qsig_ssct_multiple  , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8049
  { 0, NULL, 0, 0, 0, NULL }
8050
};
8051
8052
static unsigned
8053
0
dissect_qsig_ssct_DummyArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8054
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8055
0
                                 qsig_ssct_DummyArg_choice, hf_index, ett_qsig_ssct_DummyArg,
8056
0
                                 NULL);
8057
8058
0
  return offset;
8059
0
}
8060
8061
8062
static const value_string qsig_ssct_DummyRes_vals[] = {
8063
  {   0, "null" },
8064
  {   1, "single" },
8065
  {   2, "multiple" },
8066
  { 0, NULL }
8067
};
8068
8069
static const ber_choice_t qsig_ssct_DummyRes_choice[] = {
8070
  {   0, &hf_qsig_ssct_null      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_NULL },
8071
  {   1, &hf_qsig_ssct_single    , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8072
  {   2, &hf_qsig_ssct_multiple  , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8073
  { 0, NULL, 0, 0, 0, NULL }
8074
};
8075
8076
static unsigned
8077
0
dissect_qsig_ssct_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8078
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8079
0
                                 qsig_ssct_DummyRes_choice, hf_index, ett_qsig_ssct_DummyRes,
8080
0
                                 NULL);
8081
8082
0
  return offset;
8083
0
}
8084
8085
8086
8087
static unsigned
8088
0
dissect_qsig_ssct_AwaitConnect(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8089
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
8090
8091
0
  return offset;
8092
0
}
8093
8094
8095
static const value_string qsig_ssct_SSCTIargumentExtension_vals[] = {
8096
  {   4, "single" },
8097
  {   5, "multiple" },
8098
  { 0, NULL }
8099
};
8100
8101
static const ber_choice_t qsig_ssct_SSCTIargumentExtension_choice[] = {
8102
  {   4, &hf_qsig_ssct_single    , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8103
  {   5, &hf_qsig_ssct_multiple  , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8104
  { 0, NULL, 0, 0, 0, NULL }
8105
};
8106
8107
static unsigned
8108
0
dissect_qsig_ssct_SSCTIargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8109
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8110
0
                                 qsig_ssct_SSCTIargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTIargumentExtension,
8111
0
                                 NULL);
8112
8113
0
  return offset;
8114
0
}
8115
8116
8117
static const ber_sequence_t qsig_ssct_SSCTInitiateArg_sequence[] = {
8118
  { &hf_qsig_ssct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8119
  { &hf_qsig_ssct_transferredAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressScreened },
8120
  { &hf_qsig_ssct_awaitConnect, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_AwaitConnect },
8121
  { &hf_qsig_ssct_transferredName, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8122
  { &hf_qsig_ssct_transferringAddress, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressScreened },
8123
  { &hf_qsig_ssct_transferringName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8124
  { &hf_qsig_ssct_argumentExtensionSSCTI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTIargumentExtension },
8125
  { NULL, 0, 0, 0, NULL }
8126
};
8127
8128
static unsigned
8129
0
dissect_qsig_ssct_SSCTInitiateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8130
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8131
0
                                   qsig_ssct_SSCTInitiateArg_sequence, hf_index, ett_qsig_ssct_SSCTInitiateArg);
8132
8133
0
  return offset;
8134
0
}
8135
8136
8137
static const value_string qsig_ssct_SSCTSargumentExtension_vals[] = {
8138
  {   3, "single" },
8139
  {   4, "multiple" },
8140
  { 0, NULL }
8141
};
8142
8143
static const ber_choice_t qsig_ssct_SSCTSargumentExtension_choice[] = {
8144
  {   3, &hf_qsig_ssct_single    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8145
  {   4, &hf_qsig_ssct_multiple  , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8146
  { 0, NULL, 0, 0, 0, NULL }
8147
};
8148
8149
static unsigned
8150
0
dissect_qsig_ssct_SSCTSargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8151
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8152
0
                                 qsig_ssct_SSCTSargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTSargumentExtension,
8153
0
                                 NULL);
8154
8155
0
  return offset;
8156
0
}
8157
8158
8159
static const ber_sequence_t qsig_ssct_SSCTSetupArg_sequence[] = {
8160
  { &hf_qsig_ssct_transferringAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressScreened },
8161
  { &hf_qsig_ssct_transferringName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8162
  { &hf_qsig_ssct_argumentExtensionSSCTS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTSargumentExtension },
8163
  { NULL, 0, 0, 0, NULL }
8164
};
8165
8166
static unsigned
8167
0
dissect_qsig_ssct_SSCTSetupArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8168
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8169
0
                                   qsig_ssct_SSCTSetupArg_sequence, hf_index, ett_qsig_ssct_SSCTSetupArg);
8170
8171
0
  return offset;
8172
0
}
8173
8174
8175
static const value_string qsig_ssct_SSCTDargumentExtension_vals[] = {
8176
  {   3, "single" },
8177
  {   4, "multiple" },
8178
  { 0, NULL }
8179
};
8180
8181
static const ber_choice_t qsig_ssct_SSCTDargumentExtension_choice[] = {
8182
  {   3, &hf_qsig_ssct_single    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8183
  {   4, &hf_qsig_ssct_multiple  , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8184
  { 0, NULL, 0, 0, 0, NULL }
8185
};
8186
8187
static unsigned
8188
0
dissect_qsig_ssct_SSCTDargumentExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8189
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8190
0
                                 qsig_ssct_SSCTDargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTDargumentExtension,
8191
0
                                 NULL);
8192
8193
0
  return offset;
8194
0
}
8195
8196
8197
static const ber_sequence_t qsig_ssct_SSCTDigitInfoArg_sequence[] = {
8198
  { &hf_qsig_ssct_reroutingNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
8199
  { &hf_qsig_ssct_sendingComplete, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_ssct_NULL },
8200
  { &hf_qsig_ssct_argumentExtensionSSCTD, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTDargumentExtension },
8201
  { NULL, 0, 0, 0, NULL }
8202
};
8203
8204
static unsigned
8205
0
dissect_qsig_ssct_SSCTDigitInfoArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8206
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8207
0
                                   qsig_ssct_SSCTDigitInfoArg_sequence, hf_index, ett_qsig_ssct_SSCTDigitInfoArg);
8208
8209
0
  return offset;
8210
0
}
8211
8212
/*--- PDUs ---*/
8213
8214
0
static int dissect_qsig_ssct_SSCTInitiateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8215
0
  unsigned offset = 0;
8216
0
  asn1_ctx_t asn1_ctx;
8217
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8218
0
  offset = dissect_qsig_ssct_SSCTInitiateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU);
8219
0
  return offset;
8220
0
}
8221
0
static int dissect_qsig_ssct_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8222
0
  unsigned offset = 0;
8223
0
  asn1_ctx_t asn1_ctx;
8224
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8225
0
  offset = dissect_qsig_ssct_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_DummyRes_PDU);
8226
0
  return offset;
8227
0
}
8228
0
static int dissect_qsig_ssct_SSCTSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8229
0
  unsigned offset = 0;
8230
0
  asn1_ctx_t asn1_ctx;
8231
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8232
0
  offset = dissect_qsig_ssct_SSCTSetupArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU);
8233
0
  return offset;
8234
0
}
8235
0
static int dissect_qsig_ssct_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8236
0
  unsigned offset = 0;
8237
0
  asn1_ctx_t asn1_ctx;
8238
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8239
0
  offset = dissect_qsig_ssct_DummyArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_DummyArg_PDU);
8240
0
  return offset;
8241
0
}
8242
0
static int dissect_qsig_ssct_SSCTDigitInfoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8243
0
  unsigned offset = 0;
8244
0
  asn1_ctx_t asn1_ctx;
8245
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8246
0
  offset = dissect_qsig_ssct_SSCTDigitInfoArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU);
8247
0
  return offset;
8248
0
}
8249
0
static int dissect_qsig_ssct_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8250
0
  unsigned offset = 0;
8251
0
  asn1_ctx_t asn1_ctx;
8252
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8253
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_Extension_PDU);
8254
0
  return offset;
8255
0
}
8256
8257
8258
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
8259
8260
8261
8262
static unsigned
8263
0
dissect_qsig_wtmlr_AlternativeId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8264
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
8265
0
                                                   1, 20, hf_index, NULL);
8266
8267
0
  return offset;
8268
0
}
8269
8270
8271
static const value_string qsig_wtmlr_WtmUserId_vals[] = {
8272
  {   0, "pisnNumber" },
8273
  {   1, "alternativeId" },
8274
  { 0, NULL }
8275
};
8276
8277
static const ber_choice_t qsig_wtmlr_WtmUserId_choice[] = {
8278
  {   0, &hf_qsig_wtmlr_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8279
  {   1, &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8280
  { 0, NULL, 0, 0, 0, NULL }
8281
};
8282
8283
static unsigned
8284
0
dissect_qsig_wtmlr_WtmUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8285
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8286
0
                                 qsig_wtmlr_WtmUserId_choice, hf_index, ett_qsig_wtmlr_WtmUserId,
8287
0
                                 NULL);
8288
8289
0
  return offset;
8290
0
}
8291
8292
8293
static const ber_sequence_t qsig_wtmlr_SEQUENCE_OF_Extension_sequence_of[1] = {
8294
  { &hf_qsig_wtmlr_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8295
};
8296
8297
static unsigned
8298
0
dissect_qsig_wtmlr_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8299
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8300
0
                                      qsig_wtmlr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmlr_SEQUENCE_OF_Extension);
8301
8302
0
  return offset;
8303
0
}
8304
8305
8306
static const value_string qsig_wtmlr_LrExtension_vals[] = {
8307
  {   1, "extension" },
8308
  {   2, "sequOfExtn" },
8309
  { 0, NULL }
8310
};
8311
8312
static const ber_choice_t qsig_wtmlr_LrExtension_choice[] = {
8313
  {   1, &hf_qsig_wtmlr_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8314
  {   2, &hf_qsig_wtmlr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmlr_SEQUENCE_OF_Extension },
8315
  { 0, NULL, 0, 0, 0, NULL }
8316
};
8317
8318
static unsigned
8319
0
dissect_qsig_wtmlr_LrExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8320
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8321
0
                                 qsig_wtmlr_LrExtension_choice, hf_index, ett_qsig_wtmlr_LrExtension,
8322
0
                                 NULL);
8323
8324
0
  return offset;
8325
0
}
8326
8327
8328
static const ber_sequence_t qsig_wtmlr_LocUpdArg_sequence[] = {
8329
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8330
  { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8331
  { &hf_qsig_wtmlr_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8332
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8333
  { NULL, 0, 0, 0, NULL }
8334
};
8335
8336
static unsigned
8337
0
dissect_qsig_wtmlr_LocUpdArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8338
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8339
0
                                   qsig_wtmlr_LocUpdArg_sequence, hf_index, ett_qsig_wtmlr_LocUpdArg);
8340
8341
0
  return offset;
8342
0
}
8343
8344
8345
8346
static unsigned
8347
0
dissect_qsig_wtmlr_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8348
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8349
8350
0
  return offset;
8351
0
}
8352
8353
8354
static const value_string qsig_wtmlr_DummyRes_vals[] = {
8355
  {   0, "null" },
8356
  {   1, "extension" },
8357
  {   2, "sequOfExtn" },
8358
  { 0, NULL }
8359
};
8360
8361
static const ber_choice_t qsig_wtmlr_DummyRes_choice[] = {
8362
  {   0, &hf_qsig_wtmlr_null     , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_NULL },
8363
  {   1, &hf_qsig_wtmlr_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8364
  {   2, &hf_qsig_wtmlr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmlr_SEQUENCE_OF_Extension },
8365
  { 0, NULL, 0, 0, 0, NULL }
8366
};
8367
8368
static unsigned
8369
0
dissect_qsig_wtmlr_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8370
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8371
0
                                 qsig_wtmlr_DummyRes_choice, hf_index, ett_qsig_wtmlr_DummyRes,
8372
0
                                 NULL);
8373
8374
0
  return offset;
8375
0
}
8376
8377
8378
static const ber_sequence_t qsig_wtmlr_LocDelArg_sequence[] = {
8379
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8380
  { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8381
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8382
  { NULL, 0, 0, 0, NULL }
8383
};
8384
8385
static unsigned
8386
0
dissect_qsig_wtmlr_LocDelArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8387
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8388
0
                                   qsig_wtmlr_LocDelArg_sequence, hf_index, ett_qsig_wtmlr_LocDelArg);
8389
8390
0
  return offset;
8391
0
}
8392
8393
8394
static const ber_sequence_t qsig_wtmlr_LocDeRegArg_sequence[] = {
8395
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8396
  { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8397
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8398
  { NULL, 0, 0, 0, NULL }
8399
};
8400
8401
static unsigned
8402
0
dissect_qsig_wtmlr_LocDeRegArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8403
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8404
0
                                   qsig_wtmlr_LocDeRegArg_sequence, hf_index, ett_qsig_wtmlr_LocDeRegArg);
8405
8406
0
  return offset;
8407
0
}
8408
8409
8410
static const ber_sequence_t qsig_wtmlr_PisnEnqArg_sequence[] = {
8411
  { &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8412
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8413
  { NULL, 0, 0, 0, NULL }
8414
};
8415
8416
static unsigned
8417
0
dissect_qsig_wtmlr_PisnEnqArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8418
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8419
0
                                   qsig_wtmlr_PisnEnqArg_sequence, hf_index, ett_qsig_wtmlr_PisnEnqArg);
8420
8421
0
  return offset;
8422
0
}
8423
8424
8425
static const ber_sequence_t qsig_wtmlr_PisnEnqRes_sequence[] = {
8426
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8427
  { &hf_qsig_wtmlr_resExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8428
  { NULL, 0, 0, 0, NULL }
8429
};
8430
8431
static unsigned
8432
0
dissect_qsig_wtmlr_PisnEnqRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8433
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8434
0
                                   qsig_wtmlr_PisnEnqRes_sequence, hf_index, ett_qsig_wtmlr_PisnEnqRes);
8435
8436
0
  return offset;
8437
0
}
8438
8439
8440
static const ber_sequence_t qsig_wtmlr_GetRRCInfArg_sequence[] = {
8441
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8442
  { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8443
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8444
  { NULL, 0, 0, 0, NULL }
8445
};
8446
8447
static unsigned
8448
0
dissect_qsig_wtmlr_GetRRCInfArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8449
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8450
0
                                   qsig_wtmlr_GetRRCInfArg_sequence, hf_index, ett_qsig_wtmlr_GetRRCInfArg);
8451
8452
0
  return offset;
8453
0
}
8454
8455
8456
8457
static unsigned
8458
0
dissect_qsig_wtmlr_RRClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8459
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
8460
0
                                                            0U, 99U, hf_index, NULL);
8461
8462
0
  return offset;
8463
0
}
8464
8465
8466
static const ber_sequence_t qsig_wtmlr_GetRRCInfRes_sequence[] = {
8467
  { &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8468
  { &hf_qsig_wtmlr_rrClass  , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_RRClass },
8469
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8470
  { NULL, 0, 0, 0, NULL }
8471
};
8472
8473
static unsigned
8474
0
dissect_qsig_wtmlr_GetRRCInfRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8475
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8476
0
                                   qsig_wtmlr_GetRRCInfRes_sequence, hf_index, ett_qsig_wtmlr_GetRRCInfRes);
8477
8478
0
  return offset;
8479
0
}
8480
8481
8482
static const ber_sequence_t qsig_wtmlr_LocInfoCheckArg_sequence[] = {
8483
  { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8484
  { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8485
  { &hf_qsig_wtmlr_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8486
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8487
  { NULL, 0, 0, 0, NULL }
8488
};
8489
8490
static unsigned
8491
0
dissect_qsig_wtmlr_LocInfoCheckArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8492
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8493
0
                                   qsig_wtmlr_LocInfoCheckArg_sequence, hf_index, ett_qsig_wtmlr_LocInfoCheckArg);
8494
8495
0
  return offset;
8496
0
}
8497
8498
8499
static const value_string qsig_wtmlr_CheckResult_vals[] = {
8500
  {   0, "locInfChk-correct" },
8501
  {   1, "locInfChk-incorrect" },
8502
  { 0, NULL }
8503
};
8504
8505
8506
static unsigned
8507
0
dissect_qsig_wtmlr_CheckResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8508
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
8509
0
                                  NULL);
8510
8511
0
  return offset;
8512
0
}
8513
8514
8515
static const ber_sequence_t qsig_wtmlr_LocInfoCheckRes_sequence[] = {
8516
  { &hf_qsig_wtmlr_checkResult, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_CheckResult },
8517
  { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8518
  { NULL, 0, 0, 0, NULL }
8519
};
8520
8521
static unsigned
8522
0
dissect_qsig_wtmlr_LocInfoCheckRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8523
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8524
0
                                   qsig_wtmlr_LocInfoCheckRes_sequence, hf_index, ett_qsig_wtmlr_LocInfoCheckRes);
8525
8526
0
  return offset;
8527
0
}
8528
8529
/*--- PDUs ---*/
8530
8531
0
static int dissect_qsig_wtmlr_LocUpdArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8532
0
  unsigned offset = 0;
8533
0
  asn1_ctx_t asn1_ctx;
8534
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8535
0
  offset = dissect_qsig_wtmlr_LocUpdArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU);
8536
0
  return offset;
8537
0
}
8538
0
static int dissect_qsig_wtmlr_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8539
0
  unsigned offset = 0;
8540
0
  asn1_ctx_t asn1_ctx;
8541
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8542
0
  offset = dissect_qsig_wtmlr_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU);
8543
0
  return offset;
8544
0
}
8545
0
static int dissect_qsig_wtmlr_LocDelArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8546
0
  unsigned offset = 0;
8547
0
  asn1_ctx_t asn1_ctx;
8548
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8549
0
  offset = dissect_qsig_wtmlr_LocDelArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU);
8550
0
  return offset;
8551
0
}
8552
0
static int dissect_qsig_wtmlr_LocDeRegArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8553
0
  unsigned offset = 0;
8554
0
  asn1_ctx_t asn1_ctx;
8555
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8556
0
  offset = dissect_qsig_wtmlr_LocDeRegArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU);
8557
0
  return offset;
8558
0
}
8559
0
static int dissect_qsig_wtmlr_PisnEnqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8560
0
  unsigned offset = 0;
8561
0
  asn1_ctx_t asn1_ctx;
8562
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8563
0
  offset = dissect_qsig_wtmlr_PisnEnqArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU);
8564
0
  return offset;
8565
0
}
8566
0
static int dissect_qsig_wtmlr_PisnEnqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8567
0
  unsigned offset = 0;
8568
0
  asn1_ctx_t asn1_ctx;
8569
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8570
0
  offset = dissect_qsig_wtmlr_PisnEnqRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU);
8571
0
  return offset;
8572
0
}
8573
0
static int dissect_qsig_wtmlr_GetRRCInfArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8574
0
  unsigned offset = 0;
8575
0
  asn1_ctx_t asn1_ctx;
8576
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8577
0
  offset = dissect_qsig_wtmlr_GetRRCInfArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU);
8578
0
  return offset;
8579
0
}
8580
0
static int dissect_qsig_wtmlr_GetRRCInfRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8581
0
  unsigned offset = 0;
8582
0
  asn1_ctx_t asn1_ctx;
8583
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8584
0
  offset = dissect_qsig_wtmlr_GetRRCInfRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU);
8585
0
  return offset;
8586
0
}
8587
0
static int dissect_qsig_wtmlr_LocInfoCheckArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8588
0
  unsigned offset = 0;
8589
0
  asn1_ctx_t asn1_ctx;
8590
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8591
0
  offset = dissect_qsig_wtmlr_LocInfoCheckArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU);
8592
0
  return offset;
8593
0
}
8594
0
static int dissect_qsig_wtmlr_LocInfoCheckRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8595
0
  unsigned offset = 0;
8596
0
  asn1_ctx_t asn1_ctx;
8597
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8598
0
  offset = dissect_qsig_wtmlr_LocInfoCheckRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU);
8599
0
  return offset;
8600
0
}
8601
0
static int dissect_qsig_wtmlr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8602
0
  unsigned offset = 0;
8603
0
  asn1_ctx_t asn1_ctx;
8604
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8605
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU);
8606
0
  return offset;
8607
0
}
8608
8609
8610
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
8611
8612
8613
static const ber_sequence_t qsig_wtmch_SEQUENCE_OF_Extension_sequence_of[1] = {
8614
  { &hf_qsig_wtmch_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8615
};
8616
8617
static unsigned
8618
0
dissect_qsig_wtmch_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8619
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8620
0
                                      qsig_wtmch_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmch_SEQUENCE_OF_Extension);
8621
8622
0
  return offset;
8623
0
}
8624
8625
8626
static const value_string qsig_wtmch_WtmiExtension_vals[] = {
8627
  {   4, "extension" },
8628
  {   5, "sequOfExtn" },
8629
  { 0, NULL }
8630
};
8631
8632
static const ber_choice_t qsig_wtmch_WtmiExtension_choice[] = {
8633
  {   4, &hf_qsig_wtmch_extension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8634
  {   5, &hf_qsig_wtmch_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8635
  { 0, NULL, 0, 0, 0, NULL }
8636
};
8637
8638
static unsigned
8639
0
dissect_qsig_wtmch_WtmiExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8640
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8641
0
                                 qsig_wtmch_WtmiExtension_choice, hf_index, ett_qsig_wtmch_WtmiExtension,
8642
0
                                 NULL);
8643
8644
0
  return offset;
8645
0
}
8646
8647
8648
static const ber_sequence_t qsig_wtmch_EnquiryArg_sequence[] = {
8649
  { &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8650
  { &hf_qsig_wtmch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
8651
  { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8652
  { NULL, 0, 0, 0, NULL }
8653
};
8654
8655
static unsigned
8656
0
dissect_qsig_wtmch_EnquiryArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8657
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8658
0
                                   qsig_wtmch_EnquiryArg_sequence, hf_index, ett_qsig_wtmch_EnquiryArg);
8659
8660
0
  return offset;
8661
0
}
8662
8663
8664
8665
static unsigned
8666
0
dissect_qsig_wtmch_AlternativeId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8667
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
8668
0
                                                   1, 20, hf_index, NULL);
8669
8670
0
  return offset;
8671
0
}
8672
8673
8674
static const ber_sequence_t qsig_wtmch_T_both_sequence[] = {
8675
  { &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8676
  { &hf_qsig_wtmch_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_AlternativeId },
8677
  { NULL, 0, 0, 0, NULL }
8678
};
8679
8680
static unsigned
8681
0
dissect_qsig_wtmch_T_both(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8682
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8683
0
                                   qsig_wtmch_T_both_sequence, hf_index, ett_qsig_wtmch_T_both);
8684
8685
0
  return offset;
8686
0
}
8687
8688
8689
static const value_string qsig_wtmch_WtmIdentity_vals[] = {
8690
  {   0, "pisnNumber" },
8691
  {   1, "alternativeId" },
8692
  {   2, "both" },
8693
  { 0, NULL }
8694
};
8695
8696
static const ber_choice_t qsig_wtmch_WtmIdentity_choice[] = {
8697
  {   0, &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8698
  {   1, &hf_qsig_wtmch_alternativeId, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_AlternativeId },
8699
  {   2, &hf_qsig_wtmch_both     , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_T_both },
8700
  { 0, NULL, 0, 0, 0, NULL }
8701
};
8702
8703
static unsigned
8704
0
dissect_qsig_wtmch_WtmIdentity(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8705
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8706
0
                                 qsig_wtmch_WtmIdentity_choice, hf_index, ett_qsig_wtmch_WtmIdentity,
8707
0
                                 NULL);
8708
8709
0
  return offset;
8710
0
}
8711
8712
8713
static const ber_sequence_t qsig_wtmch_DivertArg_sequence[] = {
8714
  { &hf_qsig_wtmch_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8715
  { &hf_qsig_wtmch_callingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
8716
  { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8717
  { &hf_qsig_wtmch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
8718
  { &hf_qsig_wtmch_callingUserSub, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
8719
  { &hf_qsig_wtmch_callingName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8720
  { &hf_qsig_wtmch_wtmUserSub, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
8721
  { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8722
  { NULL, 0, 0, 0, NULL }
8723
};
8724
8725
static unsigned
8726
0
dissect_qsig_wtmch_DivertArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8727
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8728
0
                                   qsig_wtmch_DivertArg_sequence, hf_index, ett_qsig_wtmch_DivertArg);
8729
8730
0
  return offset;
8731
0
}
8732
8733
8734
static const ber_sequence_t qsig_wtmch_InformArg_sequence[] = {
8735
  { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8736
  { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8737
  { NULL, 0, 0, 0, NULL }
8738
};
8739
8740
static unsigned
8741
0
dissect_qsig_wtmch_InformArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8742
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8743
0
                                   qsig_wtmch_InformArg_sequence, hf_index, ett_qsig_wtmch_InformArg);
8744
8745
0
  return offset;
8746
0
}
8747
8748
8749
static const ber_sequence_t qsig_wtmch_CurrLocation_sequence[] = {
8750
  { &hf_qsig_wtmch_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8751
  { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8752
  { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8753
  { NULL, 0, 0, 0, NULL }
8754
};
8755
8756
static unsigned
8757
0
dissect_qsig_wtmch_CurrLocation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8758
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8759
0
                                   qsig_wtmch_CurrLocation_sequence, hf_index, ett_qsig_wtmch_CurrLocation);
8760
8761
0
  return offset;
8762
0
}
8763
8764
8765
static const value_string qsig_wtmch_SubscriptionOption_vals[] = {
8766
  {   0, "noNotification" },
8767
  {   1, "notificationWithoutDivertedToNr" },
8768
  {   2, "notificationWithDivertedToNr" },
8769
  { 0, NULL }
8770
};
8771
8772
8773
static unsigned
8774
0
dissect_qsig_wtmch_SubscriptionOption(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8775
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
8776
0
                                  NULL);
8777
8778
0
  return offset;
8779
0
}
8780
8781
8782
static const ber_sequence_t qsig_wtmch_CfuActivated_sequence[] = {
8783
  { &hf_qsig_wtmch_divToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
8784
  { &hf_qsig_wtmch_divOptions, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_SubscriptionOption },
8785
  { &hf_qsig_wtmch_wtmName  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8786
  { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8787
  { NULL, 0, 0, 0, NULL }
8788
};
8789
8790
static unsigned
8791
0
dissect_qsig_wtmch_CfuActivated(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8792
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8793
0
                                   qsig_wtmch_CfuActivated_sequence, hf_index, ett_qsig_wtmch_CfuActivated);
8794
8795
0
  return offset;
8796
0
}
8797
8798
8799
static const value_string qsig_wtmch_EnquiryRes_vals[] = {
8800
  {   1, "currLocation" },
8801
  {   2, "cfuActivated" },
8802
  { 0, NULL }
8803
};
8804
8805
static const ber_choice_t qsig_wtmch_EnquiryRes_choice[] = {
8806
  {   1, &hf_qsig_wtmch_currLocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_CurrLocation },
8807
  {   2, &hf_qsig_wtmch_cfuActivated, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_CfuActivated },
8808
  { 0, NULL, 0, 0, 0, NULL }
8809
};
8810
8811
static unsigned
8812
0
dissect_qsig_wtmch_EnquiryRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8813
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8814
0
                                 qsig_wtmch_EnquiryRes_choice, hf_index, ett_qsig_wtmch_EnquiryRes,
8815
0
                                 NULL);
8816
8817
0
  return offset;
8818
0
}
8819
8820
8821
8822
static unsigned
8823
0
dissect_qsig_wtmch_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8824
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8825
8826
0
  return offset;
8827
0
}
8828
8829
8830
static const value_string qsig_wtmch_DummyRes_vals[] = {
8831
  {   0, "null" },
8832
  {   1, "extension" },
8833
  {   2, "sequOfExtn" },
8834
  { 0, NULL }
8835
};
8836
8837
static const ber_choice_t qsig_wtmch_DummyRes_choice[] = {
8838
  {   0, &hf_qsig_wtmch_null     , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_NULL },
8839
  {   1, &hf_qsig_wtmch_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8840
  {   2, &hf_qsig_wtmch_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8841
  { 0, NULL, 0, 0, 0, NULL }
8842
};
8843
8844
static unsigned
8845
0
dissect_qsig_wtmch_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8846
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8847
0
                                 qsig_wtmch_DummyRes_choice, hf_index, ett_qsig_wtmch_DummyRes,
8848
0
                                 NULL);
8849
8850
0
  return offset;
8851
0
}
8852
8853
8854
static const value_string qsig_wtmch_T_wtmoaextension_vals[] = {
8855
  {   2, "single" },
8856
  {   3, "multiple" },
8857
  { 0, NULL }
8858
};
8859
8860
static const ber_choice_t qsig_wtmch_T_wtmoaextension_choice[] = {
8861
  {   2, &hf_qsig_wtmch_single   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8862
  {   3, &hf_qsig_wtmch_multiple , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8863
  { 0, NULL, 0, 0, 0, NULL }
8864
};
8865
8866
static unsigned
8867
0
dissect_qsig_wtmch_T_wtmoaextension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8868
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8869
0
                                 qsig_wtmch_T_wtmoaextension_choice, hf_index, ett_qsig_wtmch_T_wtmoaextension,
8870
0
                                 NULL);
8871
8872
0
  return offset;
8873
0
}
8874
8875
8876
static const ber_sequence_t qsig_wtmch_WtmoArg_sequence[] = {
8877
  { &hf_qsig_wtmch_destinationNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
8878
  { &hf_qsig_wtmch_sendingComplete, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_NULL },
8879
  { &hf_qsig_wtmch_wtmoaextension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_T_wtmoaextension },
8880
  { NULL, 0, 0, 0, NULL }
8881
};
8882
8883
static unsigned
8884
0
dissect_qsig_wtmch_WtmoArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8885
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8886
0
                                   qsig_wtmch_WtmoArg_sequence, hf_index, ett_qsig_wtmch_WtmoArg);
8887
8888
0
  return offset;
8889
0
}
8890
8891
/*--- PDUs ---*/
8892
8893
0
static int dissect_qsig_wtmch_EnquiryArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8894
0
  unsigned offset = 0;
8895
0
  asn1_ctx_t asn1_ctx;
8896
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8897
0
  offset = dissect_qsig_wtmch_EnquiryArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU);
8898
0
  return offset;
8899
0
}
8900
0
static int dissect_qsig_wtmch_EnquiryRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8901
0
  unsigned offset = 0;
8902
0
  asn1_ctx_t asn1_ctx;
8903
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8904
0
  offset = dissect_qsig_wtmch_EnquiryRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU);
8905
0
  return offset;
8906
0
}
8907
0
static int dissect_qsig_wtmch_DivertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8908
0
  unsigned offset = 0;
8909
0
  asn1_ctx_t asn1_ctx;
8910
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8911
0
  offset = dissect_qsig_wtmch_DivertArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU);
8912
0
  return offset;
8913
0
}
8914
0
static int dissect_qsig_wtmch_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8915
0
  unsigned offset = 0;
8916
0
  asn1_ctx_t asn1_ctx;
8917
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8918
0
  offset = dissect_qsig_wtmch_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU);
8919
0
  return offset;
8920
0
}
8921
0
static int dissect_qsig_wtmch_InformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8922
0
  unsigned offset = 0;
8923
0
  asn1_ctx_t asn1_ctx;
8924
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8925
0
  offset = dissect_qsig_wtmch_InformArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_InformArg_PDU);
8926
0
  return offset;
8927
0
}
8928
0
static int dissect_qsig_wtmch_WtmoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8929
0
  unsigned offset = 0;
8930
0
  asn1_ctx_t asn1_ctx;
8931
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8932
0
  offset = dissect_qsig_wtmch_WtmoArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU);
8933
0
  return offset;
8934
0
}
8935
0
static int dissect_qsig_wtmch_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8936
0
  unsigned offset = 0;
8937
0
  asn1_ctx_t asn1_ctx;
8938
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
8939
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_Extension_PDU);
8940
0
  return offset;
8941
0
}
8942
8943
8944
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
8945
8946
/*--- Cyclic dependencies ---*/
8947
8948
/* AuthAlgorithm/param -> AuthAlgorithm/param */
8949
static unsigned dissect_qsig_wtmau_T_param(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
8950
8951
8952
8953
8954
static unsigned
8955
0
dissect_qsig_wtmau_AlternativeId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8956
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
8957
0
                                                   1, 20, hf_index, NULL);
8958
8959
0
  return offset;
8960
0
}
8961
8962
8963
static const value_string qsig_wtmau_WtmUserId_vals[] = {
8964
  {   0, "pisnNumber" },
8965
  {   1, "alternativeId" },
8966
  { 0, NULL }
8967
};
8968
8969
static const ber_choice_t qsig_wtmau_WtmUserId_choice[] = {
8970
  {   0, &hf_qsig_wtmau_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8971
  {   1, &hf_qsig_wtmau_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AlternativeId },
8972
  { 0, NULL, 0, 0, 0, NULL }
8973
};
8974
8975
static unsigned
8976
0
dissect_qsig_wtmau_WtmUserId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8977
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
8978
0
                                 qsig_wtmau_WtmUserId_choice, hf_index, ett_qsig_wtmau_WtmUserId,
8979
0
                                 NULL);
8980
8981
0
  return offset;
8982
0
}
8983
8984
8985
8986
static unsigned
8987
0
dissect_qsig_wtmau_AuthChallenge(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8988
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
8989
0
                                                   1, 8, hf_index, NULL);
8990
8991
0
  return offset;
8992
0
}
8993
8994
8995
8996
static unsigned
8997
0
dissect_qsig_wtmau_AuthResponse(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8998
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
8999
0
                                                   1, 4, hf_index, NULL);
9000
9001
0
  return offset;
9002
0
}
9003
9004
9005
9006
static unsigned
9007
0
dissect_qsig_wtmau_DerivedCipherKey(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9008
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9009
0
                                                   1, 8, hf_index, NULL);
9010
9011
0
  return offset;
9012
0
}
9013
9014
9015
9016
static unsigned
9017
0
dissect_qsig_wtmau_CalculationParam(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9018
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9019
0
                                                   1, 8, hf_index, NULL);
9020
9021
0
  return offset;
9022
0
}
9023
9024
9025
static const ber_sequence_t qsig_wtmau_CalcWtatInfoUnit_sequence[] = {
9026
  { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9027
  { &hf_qsig_wtmau_authResponse, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthResponse },
9028
  { &hf_qsig_wtmau_derivedCipherKey, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_DerivedCipherKey },
9029
  { &hf_qsig_wtmau_calculationParam, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalculationParam },
9030
  { NULL, 0, 0, 0, NULL }
9031
};
9032
9033
static unsigned
9034
0
dissect_qsig_wtmau_CalcWtatInfoUnit(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9035
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9036
0
                                   qsig_wtmau_CalcWtatInfoUnit_sequence, hf_index, ett_qsig_wtmau_CalcWtatInfoUnit);
9037
9038
0
  return offset;
9039
0
}
9040
9041
9042
static const ber_sequence_t qsig_wtmau_CalcWtatInfo_sequence_of[1] = {
9043
  { &hf_qsig_wtmau_CalcWtatInfo_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalcWtatInfoUnit },
9044
};
9045
9046
static unsigned
9047
0
dissect_qsig_wtmau_CalcWtatInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9048
0
  offset = dissect_ber_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
9049
0
                                                  1, 5, qsig_wtmau_CalcWtatInfo_sequence_of, hf_index, ett_qsig_wtmau_CalcWtatInfo);
9050
9051
0
  return offset;
9052
0
}
9053
9054
9055
static const ber_sequence_t qsig_wtmau_SEQUENCE_OF_Extension_sequence_of[1] = {
9056
  { &hf_qsig_wtmau_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9057
};
9058
9059
static unsigned
9060
0
dissect_qsig_wtmau_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9061
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9062
0
                                      qsig_wtmau_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmau_SEQUENCE_OF_Extension);
9063
9064
0
  return offset;
9065
0
}
9066
9067
9068
static const value_string qsig_wtmau_DummyExtension_vals[] = {
9069
  {   5, "extension" },
9070
  {   6, "sequOfExtn" },
9071
  { 0, NULL }
9072
};
9073
9074
static const ber_choice_t qsig_wtmau_DummyExtension_choice[] = {
9075
  {   5, &hf_qsig_wtmau_extension, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
9076
  {   6, &hf_qsig_wtmau_sequOfExtn, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_SEQUENCE_OF_Extension },
9077
  { 0, NULL, 0, 0, 0, NULL }
9078
};
9079
9080
static unsigned
9081
0
dissect_qsig_wtmau_DummyExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9082
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9083
0
                                 qsig_wtmau_DummyExtension_choice, hf_index, ett_qsig_wtmau_DummyExtension,
9084
0
                                 NULL);
9085
9086
0
  return offset;
9087
0
}
9088
9089
9090
static const ber_sequence_t qsig_wtmau_AuthWtmArg_sequence[] = {
9091
  { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9092
  { &hf_qsig_wtmau_calcWtatInfo, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtatInfo },
9093
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9094
  { NULL, 0, 0, 0, NULL }
9095
};
9096
9097
static unsigned
9098
0
dissect_qsig_wtmau_AuthWtmArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9099
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9100
0
                                   qsig_wtmau_AuthWtmArg_sequence, hf_index, ett_qsig_wtmau_AuthWtmArg);
9101
9102
0
  return offset;
9103
0
}
9104
9105
9106
static const value_string qsig_wtmau_T_autWtmResValue_vals[] = {
9107
  {   0, "auth-res-correct" },
9108
  {   1, "auth-res-incorrect" },
9109
  { 0, NULL }
9110
};
9111
9112
9113
static unsigned
9114
0
dissect_qsig_wtmau_T_autWtmResValue(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9115
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9116
0
                                  NULL);
9117
9118
0
  return offset;
9119
0
}
9120
9121
9122
static const ber_sequence_t qsig_wtmau_AuthWtmRes_sequence[] = {
9123
  { &hf_qsig_wtmau_autWtmResValue, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_T_autWtmResValue },
9124
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9125
  { NULL, 0, 0, 0, NULL }
9126
};
9127
9128
static unsigned
9129
0
dissect_qsig_wtmau_AuthWtmRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9130
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9131
0
                                   qsig_wtmau_AuthWtmRes_sequence, hf_index, ett_qsig_wtmau_AuthWtmRes);
9132
9133
0
  return offset;
9134
0
}
9135
9136
9137
9138
static unsigned
9139
0
dissect_qsig_wtmau_CanCompute(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9140
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
9141
9142
0
  return offset;
9143
0
}
9144
9145
9146
static const ber_sequence_t qsig_wtmau_WtatParamArg_sequence[] = {
9147
  { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9148
  { &hf_qsig_wtmau_canCompute, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CanCompute },
9149
  { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9150
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9151
  { NULL, 0, 0, 0, NULL }
9152
};
9153
9154
static unsigned
9155
0
dissect_qsig_wtmau_WtatParamArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9156
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9157
0
                                   qsig_wtmau_WtatParamArg_sequence, hf_index, ett_qsig_wtmau_WtatParamArg);
9158
9159
0
  return offset;
9160
0
}
9161
9162
9163
static const value_string qsig_wtmau_DefinedIDs_vals[] = {
9164
  {   0, "ct2" },
9165
  {   1, "dect" },
9166
  {   2, "gsm" },
9167
  {   3, "pci" },
9168
  {   4, "pwt" },
9169
  {   5, "us-gsm" },
9170
  {   6, "phs" },
9171
  {   7, "tetra" },
9172
  { 0, NULL }
9173
};
9174
9175
9176
static unsigned
9177
0
dissect_qsig_wtmau_DefinedIDs(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9178
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9179
0
                                                            0U, 255U, hf_index, NULL);
9180
9181
0
  return offset;
9182
0
}
9183
9184
9185
9186
static unsigned
9187
0
dissect_qsig_wtmau_T_param(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9188
  // AuthAlgorithm/param -> AuthAlgorithm/param
9189
0
  increment_dissection_depth_by_n(actx->pinfo, 1);
9190
9191
9192
0
  decrement_dissection_depth_by_n(actx->pinfo, 1);
9193
0
  return offset;
9194
0
}
9195
9196
9197
static const ber_sequence_t qsig_wtmau_AuthAlgorithm_sequence[] = {
9198
  { &hf_qsig_wtmau_authAlg  , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_DefinedIDs },
9199
  { &hf_qsig_wtmau_param    , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_T_param },
9200
  { NULL, 0, 0, 0, NULL }
9201
};
9202
9203
static unsigned
9204
0
dissect_qsig_wtmau_AuthAlgorithm(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9205
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9206
0
                                   qsig_wtmau_AuthAlgorithm_sequence, hf_index, ett_qsig_wtmau_AuthAlgorithm);
9207
9208
0
  return offset;
9209
0
}
9210
9211
9212
9213
static unsigned
9214
0
dissect_qsig_wtmau_AuthSessionKey(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9215
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9216
0
                                                   1, 16, hf_index, NULL);
9217
9218
0
  return offset;
9219
0
}
9220
9221
9222
static const ber_sequence_t qsig_wtmau_AuthSessionKeyInfo_sequence[] = {
9223
  { &hf_qsig_wtmau_authSessionKey, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthSessionKey },
9224
  { &hf_qsig_wtmau_calculationParam, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalculationParam },
9225
  { NULL, 0, 0, 0, NULL }
9226
};
9227
9228
static unsigned
9229
0
dissect_qsig_wtmau_AuthSessionKeyInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9230
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9231
0
                                   qsig_wtmau_AuthSessionKeyInfo_sequence, hf_index, ett_qsig_wtmau_AuthSessionKeyInfo);
9232
9233
0
  return offset;
9234
0
}
9235
9236
9237
9238
static unsigned
9239
0
dissect_qsig_wtmau_AuthKey(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9240
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9241
0
                                                   1, 16, hf_index, NULL);
9242
9243
0
  return offset;
9244
0
}
9245
9246
9247
9248
static unsigned
9249
0
dissect_qsig_wtmau_INTEGER_1_8(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9250
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9251
0
                                                            1U, 8U, hf_index, NULL);
9252
9253
0
  return offset;
9254
0
}
9255
9256
9257
static const value_string qsig_wtmau_T_wtatParamInfoChoice_vals[] = {
9258
  {   1, "authSessionKeyInfo" },
9259
  {   2, "calcWtatInfo" },
9260
  {   3, "authKey" },
9261
  {   4, "challLen" },
9262
  { 0, NULL }
9263
};
9264
9265
static const ber_choice_t qsig_wtmau_T_wtatParamInfoChoice_choice[] = {
9266
  {   1, &hf_qsig_wtmau_authSessionKeyInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthSessionKeyInfo },
9267
  {   2, &hf_qsig_wtmau_calcWtatInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtatInfo },
9268
  {   3, &hf_qsig_wtmau_authKey  , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthKey },
9269
  {   4, &hf_qsig_wtmau_challLen , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_INTEGER_1_8 },
9270
  { 0, NULL, 0, 0, 0, NULL }
9271
};
9272
9273
static unsigned
9274
0
dissect_qsig_wtmau_T_wtatParamInfoChoice(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9275
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9276
0
                                 qsig_wtmau_T_wtatParamInfoChoice_choice, hf_index, ett_qsig_wtmau_T_wtatParamInfoChoice,
9277
0
                                 NULL);
9278
9279
0
  return offset;
9280
0
}
9281
9282
9283
static const ber_sequence_t qsig_wtmau_WtatParamInfo_sequence[] = {
9284
  { &hf_qsig_wtmau_authAlgorithm, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthAlgorithm },
9285
  { &hf_qsig_wtmau_wtatParamInfoChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_T_wtatParamInfoChoice },
9286
  { NULL, 0, 0, 0, NULL }
9287
};
9288
9289
static unsigned
9290
0
dissect_qsig_wtmau_WtatParamInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9291
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9292
0
                                   qsig_wtmau_WtatParamInfo_sequence, hf_index, ett_qsig_wtmau_WtatParamInfo);
9293
9294
0
  return offset;
9295
0
}
9296
9297
9298
static const ber_sequence_t qsig_wtmau_WtatParamRes_sequence[] = {
9299
  { &hf_qsig_wtmau_wtatParamInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_WtatParamInfo },
9300
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9301
  { NULL, 0, 0, 0, NULL }
9302
};
9303
9304
static unsigned
9305
0
dissect_qsig_wtmau_WtatParamRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9306
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9307
0
                                   qsig_wtmau_WtatParamRes_sequence, hf_index, ett_qsig_wtmau_WtatParamRes);
9308
9309
0
  return offset;
9310
0
}
9311
9312
9313
static const ber_sequence_t qsig_wtmau_WtanParamArg_sequence[] = {
9314
  { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9315
  { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9316
  { &hf_qsig_wtmau_authAlgorithm, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthAlgorithm },
9317
  { &hf_qsig_wtmau_canCompute, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CanCompute },
9318
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9319
  { NULL, 0, 0, 0, NULL }
9320
};
9321
9322
static unsigned
9323
0
dissect_qsig_wtmau_WtanParamArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9324
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9325
0
                                   qsig_wtmau_WtanParamArg_sequence, hf_index, ett_qsig_wtmau_WtanParamArg);
9326
9327
0
  return offset;
9328
0
}
9329
9330
9331
static const ber_sequence_t qsig_wtmau_CalcWtanInfo_sequence[] = {
9332
  { &hf_qsig_wtmau_authResponse, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthResponse },
9333
  { &hf_qsig_wtmau_calculationParam, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalculationParam },
9334
  { NULL, 0, 0, 0, NULL }
9335
};
9336
9337
static unsigned
9338
0
dissect_qsig_wtmau_CalcWtanInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9339
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9340
0
                                   qsig_wtmau_CalcWtanInfo_sequence, hf_index, ett_qsig_wtmau_CalcWtanInfo);
9341
9342
0
  return offset;
9343
0
}
9344
9345
9346
static const value_string qsig_wtmau_WtanParamInfo_vals[] = {
9347
  {   1, "authSessionKeyInfo" },
9348
  {   2, "calcWtanInfo" },
9349
  { 0, NULL }
9350
};
9351
9352
static const ber_choice_t qsig_wtmau_WtanParamInfo_choice[] = {
9353
  {   1, &hf_qsig_wtmau_authSessionKeyInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthSessionKeyInfo },
9354
  {   2, &hf_qsig_wtmau_calcWtanInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtanInfo },
9355
  { 0, NULL, 0, 0, 0, NULL }
9356
};
9357
9358
static unsigned
9359
0
dissect_qsig_wtmau_WtanParamInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9360
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9361
0
                                 qsig_wtmau_WtanParamInfo_choice, hf_index, ett_qsig_wtmau_WtanParamInfo,
9362
0
                                 NULL);
9363
9364
0
  return offset;
9365
0
}
9366
9367
9368
static const ber_sequence_t qsig_wtmau_WtanParamRes_sequence[] = {
9369
  { &hf_qsig_wtmau_wtanParamInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtanParamInfo },
9370
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9371
  { NULL, 0, 0, 0, NULL }
9372
};
9373
9374
static unsigned
9375
0
dissect_qsig_wtmau_WtanParamRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9376
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9377
0
                                   qsig_wtmau_WtanParamRes_sequence, hf_index, ett_qsig_wtmau_WtanParamRes);
9378
9379
0
  return offset;
9380
0
}
9381
9382
9383
static const ber_sequence_t qsig_wtmau_ARG_transferAuthParam_sequence[] = {
9384
  { &hf_qsig_wtmau_wtatParamInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_WtatParamInfo },
9385
  { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9386
  { NULL, 0, 0, 0, NULL }
9387
};
9388
9389
static unsigned
9390
0
dissect_qsig_wtmau_ARG_transferAuthParam(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9391
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9392
0
                                   qsig_wtmau_ARG_transferAuthParam_sequence, hf_index, ett_qsig_wtmau_ARG_transferAuthParam);
9393
9394
0
  return offset;
9395
0
}
9396
9397
/*--- PDUs ---*/
9398
9399
0
static int dissect_qsig_wtmau_AuthWtmArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9400
0
  unsigned offset = 0;
9401
0
  asn1_ctx_t asn1_ctx;
9402
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9403
0
  offset = dissect_qsig_wtmau_AuthWtmArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU);
9404
0
  return offset;
9405
0
}
9406
0
static int dissect_qsig_wtmau_AuthWtmRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9407
0
  unsigned offset = 0;
9408
0
  asn1_ctx_t asn1_ctx;
9409
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9410
0
  offset = dissect_qsig_wtmau_AuthWtmRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU);
9411
0
  return offset;
9412
0
}
9413
0
static int dissect_qsig_wtmau_WtatParamArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9414
0
  unsigned offset = 0;
9415
0
  asn1_ctx_t asn1_ctx;
9416
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9417
0
  offset = dissect_qsig_wtmau_WtatParamArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU);
9418
0
  return offset;
9419
0
}
9420
0
static int dissect_qsig_wtmau_WtatParamRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9421
0
  unsigned offset = 0;
9422
0
  asn1_ctx_t asn1_ctx;
9423
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9424
0
  offset = dissect_qsig_wtmau_WtatParamRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU);
9425
0
  return offset;
9426
0
}
9427
0
static int dissect_qsig_wtmau_WtanParamArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9428
0
  unsigned offset = 0;
9429
0
  asn1_ctx_t asn1_ctx;
9430
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9431
0
  offset = dissect_qsig_wtmau_WtanParamArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU);
9432
0
  return offset;
9433
0
}
9434
0
static int dissect_qsig_wtmau_WtanParamRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9435
0
  unsigned offset = 0;
9436
0
  asn1_ctx_t asn1_ctx;
9437
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9438
0
  offset = dissect_qsig_wtmau_WtanParamRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU);
9439
0
  return offset;
9440
0
}
9441
0
static int dissect_qsig_wtmau_ARG_transferAuthParam_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9442
0
  unsigned offset = 0;
9443
0
  asn1_ctx_t asn1_ctx;
9444
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9445
0
  offset = dissect_qsig_wtmau_ARG_transferAuthParam(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU);
9446
0
  return offset;
9447
0
}
9448
0
static int dissect_qsig_wtmau_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9449
0
  unsigned offset = 0;
9450
0
  asn1_ctx_t asn1_ctx;
9451
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9452
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_Extension_PDU);
9453
0
  return offset;
9454
0
}
9455
9456
9457
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
9458
9459
9460
9461
static unsigned
9462
0
dissect_qsig_sd_BMPStringNormal(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9463
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9464
0
                                                   2, 64, hf_index, NULL);
9465
9466
0
  return offset;
9467
0
}
9468
9469
9470
9471
static unsigned
9472
0
dissect_qsig_sd_BMPStringExtended(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9473
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9474
0
                                                   2, 160, hf_index, NULL);
9475
9476
0
  return offset;
9477
0
}
9478
9479
9480
static const value_string qsig_sd_DisplayString_vals[] = {
9481
  {   0, "displayStringNormal" },
9482
  {   1, "displayStringExtended" },
9483
  { 0, NULL }
9484
};
9485
9486
static const ber_choice_t qsig_sd_DisplayString_choice[] = {
9487
  {   0, &hf_qsig_sd_displayStringNormal, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringNormal },
9488
  {   1, &hf_qsig_sd_displayStringExtended, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringExtended },
9489
  { 0, NULL, 0, 0, 0, NULL }
9490
};
9491
9492
static unsigned
9493
0
dissect_qsig_sd_DisplayString(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9494
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9495
0
                                 qsig_sd_DisplayString_choice, hf_index, ett_qsig_sd_DisplayString,
9496
0
                                 NULL);
9497
9498
0
  return offset;
9499
0
}
9500
9501
9502
static const ber_sequence_t qsig_sd_SEQUENCE_OF_Extension_sequence_of[1] = {
9503
  { &hf_qsig_sd_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9504
};
9505
9506
static unsigned
9507
0
dissect_qsig_sd_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9508
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9509
0
                                      qsig_sd_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sd_SEQUENCE_OF_Extension);
9510
9511
0
  return offset;
9512
0
}
9513
9514
9515
static const value_string qsig_sd_SDExtension_vals[] = {
9516
  {   2, "extension" },
9517
  {   3, "multipleExtension" },
9518
  { 0, NULL }
9519
};
9520
9521
static const ber_choice_t qsig_sd_SDExtension_choice[] = {
9522
  {   2, &hf_qsig_sd_extension   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
9523
  {   3, &hf_qsig_sd_multipleExtension, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_sd_SEQUENCE_OF_Extension },
9524
  { 0, NULL, 0, 0, 0, NULL }
9525
};
9526
9527
static unsigned
9528
0
dissect_qsig_sd_SDExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9529
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9530
0
                                 qsig_sd_SDExtension_choice, hf_index, ett_qsig_sd_SDExtension,
9531
0
                                 NULL);
9532
9533
0
  return offset;
9534
0
}
9535
9536
9537
static const ber_sequence_t qsig_sd_DisplayArg_sequence[] = {
9538
  { &hf_qsig_sd_displayString, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_DisplayString },
9539
  { &hf_qsig_sd_sdextension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_SDExtension },
9540
  { NULL, 0, 0, 0, NULL }
9541
};
9542
9543
static unsigned
9544
0
dissect_qsig_sd_DisplayArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9545
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9546
0
                                   qsig_sd_DisplayArg_sequence, hf_index, ett_qsig_sd_DisplayArg);
9547
9548
0
  return offset;
9549
0
}
9550
9551
9552
static const ber_sequence_t qsig_sd_KeypadArg_sequence[] = {
9553
  { &hf_qsig_sd_keypadString, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringNormal },
9554
  { &hf_qsig_sd_sdextension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_SDExtension },
9555
  { NULL, 0, 0, 0, NULL }
9556
};
9557
9558
static unsigned
9559
0
dissect_qsig_sd_KeypadArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9560
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9561
0
                                   qsig_sd_KeypadArg_sequence, hf_index, ett_qsig_sd_KeypadArg);
9562
9563
0
  return offset;
9564
0
}
9565
9566
/*--- PDUs ---*/
9567
9568
0
static int dissect_qsig_sd_DisplayArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9569
0
  unsigned offset = 0;
9570
0
  asn1_ctx_t asn1_ctx;
9571
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9572
0
  offset = dissect_qsig_sd_DisplayArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_DisplayArg_PDU);
9573
0
  return offset;
9574
0
}
9575
0
static int dissect_qsig_sd_KeypadArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9576
0
  unsigned offset = 0;
9577
0
  asn1_ctx_t asn1_ctx;
9578
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9579
0
  offset = dissect_qsig_sd_KeypadArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_KeypadArg_PDU);
9580
0
  return offset;
9581
0
}
9582
0
static int dissect_qsig_sd_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9583
0
  unsigned offset = 0;
9584
0
  asn1_ctx_t asn1_ctx;
9585
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9586
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_Extension_PDU);
9587
0
  return offset;
9588
0
}
9589
9590
9591
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
9592
9593
9594
9595
static unsigned
9596
0
dissect_qsig_cidl_SwitchingSubDomainName(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9597
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
9598
0
                                                        actx, tree, tvb, offset,
9599
0
                                                        1, 64, hf_index, NULL);
9600
9601
0
  return offset;
9602
0
}
9603
9604
9605
9606
static unsigned
9607
0
dissect_qsig_cidl_SubDomainID(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9608
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9609
0
                                                   1, 8, hf_index, NULL);
9610
9611
0
  return offset;
9612
0
}
9613
9614
9615
9616
static unsigned
9617
0
dissect_qsig_cidl_GloballyUniqueID(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9618
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9619
0
                                                   1, 16, hf_index, NULL);
9620
9621
0
  return offset;
9622
0
}
9623
9624
9625
static const value_string qsig_cidl_T_linkageID_vals[] = {
9626
  {   1, "subDomainID" },
9627
  {   2, "globallyUniqueID" },
9628
  { 0, NULL }
9629
};
9630
9631
static const ber_choice_t qsig_cidl_T_linkageID_choice[] = {
9632
  {   1, &hf_qsig_cidl_subDomainID, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SubDomainID },
9633
  {   2, &hf_qsig_cidl_globallyUniqueID, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_GloballyUniqueID },
9634
  { 0, NULL, 0, 0, 0, NULL }
9635
};
9636
9637
static unsigned
9638
0
dissect_qsig_cidl_T_linkageID(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9639
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9640
0
                                 qsig_cidl_T_linkageID_choice, hf_index, ett_qsig_cidl_T_linkageID,
9641
0
                                 NULL);
9642
9643
0
  return offset;
9644
0
}
9645
9646
9647
9648
static unsigned
9649
0
dissect_qsig_cidl_TimeStamp(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9650
0
  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
9651
9652
0
  return offset;
9653
0
}
9654
9655
9656
static const ber_sequence_t qsig_cidl_CallIdentificationData_sequence[] = {
9657
  { &hf_qsig_cidl_switchingSubDomainName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SwitchingSubDomainName },
9658
  { &hf_qsig_cidl_linkageID , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_T_linkageID },
9659
  { &hf_qsig_cidl_timeStamp , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cidl_TimeStamp },
9660
  { NULL, 0, 0, 0, NULL }
9661
};
9662
9663
static unsigned
9664
0
dissect_qsig_cidl_CallIdentificationData(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9665
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9666
0
                                   qsig_cidl_CallIdentificationData_sequence, hf_index, ett_qsig_cidl_CallIdentificationData);
9667
9668
0
  return offset;
9669
0
}
9670
9671
9672
static const ber_sequence_t qsig_cidl_SEQUENCE_OF_Extension_sequence_of[1] = {
9673
  { &hf_qsig_cidl_sequenceOfExt_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9674
};
9675
9676
static unsigned
9677
0
dissect_qsig_cidl_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9678
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9679
0
                                      qsig_cidl_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cidl_SEQUENCE_OF_Extension);
9680
9681
0
  return offset;
9682
0
}
9683
9684
9685
static const value_string qsig_cidl_ExtensionType_vals[] = {
9686
  {   3, "extension" },
9687
  {   4, "sequenceOfExt" },
9688
  { 0, NULL }
9689
};
9690
9691
static const ber_choice_t qsig_cidl_ExtensionType_choice[] = {
9692
  {   3, &hf_qsig_cidl_extension , BER_CLASS_CON, 3, 0, dissect_qsig_Extension },
9693
  {   4, &hf_qsig_cidl_sequenceOfExt, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SEQUENCE_OF_Extension },
9694
  { 0, NULL, 0, 0, 0, NULL }
9695
};
9696
9697
static unsigned
9698
0
dissect_qsig_cidl_ExtensionType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9699
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9700
0
                                 qsig_cidl_ExtensionType_choice, hf_index, ett_qsig_cidl_ExtensionType,
9701
0
                                 NULL);
9702
9703
0
  return offset;
9704
0
}
9705
9706
9707
static const ber_sequence_t qsig_cidl_CallIdentificationAssignArg_sequence[] = {
9708
  { &hf_qsig_cidl_globalCallID, BER_CLASS_CON, 0, 0, dissect_qsig_cidl_CallIdentificationData },
9709
  { &hf_qsig_cidl_threadID  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9710
  { &hf_qsig_cidl_legID     , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9711
  { &hf_qsig_cidl_extensiont, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_ExtensionType },
9712
  { NULL, 0, 0, 0, NULL }
9713
};
9714
9715
static unsigned
9716
0
dissect_qsig_cidl_CallIdentificationAssignArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9717
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9718
0
                                   qsig_cidl_CallIdentificationAssignArg_sequence, hf_index, ett_qsig_cidl_CallIdentificationAssignArg);
9719
9720
0
  return offset;
9721
0
}
9722
9723
9724
static const ber_sequence_t qsig_cidl_CallIdentificationUpdateArg_sequence[] = {
9725
  { &hf_qsig_cidl_globalCallID, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9726
  { &hf_qsig_cidl_threadID  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9727
  { &hf_qsig_cidl_legID     , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9728
  { &hf_qsig_cidl_extensiont, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_ExtensionType },
9729
  { NULL, 0, 0, 0, NULL }
9730
};
9731
9732
static unsigned
9733
0
dissect_qsig_cidl_CallIdentificationUpdateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9734
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9735
0
                                   qsig_cidl_CallIdentificationUpdateArg_sequence, hf_index, ett_qsig_cidl_CallIdentificationUpdateArg);
9736
9737
0
  return offset;
9738
0
}
9739
9740
/*--- PDUs ---*/
9741
9742
0
static int dissect_qsig_cidl_CallIdentificationAssignArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9743
0
  unsigned offset = 0;
9744
0
  asn1_ctx_t asn1_ctx;
9745
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9746
0
  offset = dissect_qsig_cidl_CallIdentificationAssignArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU);
9747
0
  return offset;
9748
0
}
9749
0
static int dissect_qsig_cidl_CallIdentificationUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9750
0
  unsigned offset = 0;
9751
0
  asn1_ctx_t asn1_ctx;
9752
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
9753
0
  offset = dissect_qsig_cidl_CallIdentificationUpdateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU);
9754
0
  return offset;
9755
0
}
9756
9757
9758
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
9759
9760
9761
9762
static unsigned
9763
0
dissect_qsig_sms_MessageReference(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9764
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9765
0
                                                            0U, 255U, hf_index, NULL);
9766
9767
0
  return offset;
9768
0
}
9769
9770
9771
9772
static unsigned
9773
0
dissect_qsig_sms_ProtocolIdentifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9774
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9775
0
                                                            0U, 127U, hf_index, NULL);
9776
9777
0
  return offset;
9778
0
}
9779
9780
9781
9782
static unsigned
9783
0
dissect_qsig_sms_ValidityPeriodRel(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9784
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9785
0
                                                            0U, 255U, hf_index, NULL);
9786
9787
0
  return offset;
9788
0
}
9789
9790
9791
9792
static unsigned
9793
0
dissect_qsig_sms_ValidityPeriodAbs(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9794
0
  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
9795
9796
0
  return offset;
9797
0
}
9798
9799
9800
9801
static unsigned
9802
0
dissect_qsig_sms_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9803
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
9804
9805
0
  return offset;
9806
0
}
9807
9808
9809
9810
static unsigned
9811
0
dissect_qsig_sms_INTEGER_0_255(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9812
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9813
0
                                                            0U, 255U, hf_index, NULL);
9814
9815
0
  return offset;
9816
0
}
9817
9818
9819
9820
static unsigned
9821
0
dissect_qsig_sms_ValidityPeriodSemi(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9822
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
9823
0
                                                   3, 3, hf_index, NULL);
9824
9825
0
  return offset;
9826
0
}
9827
9828
9829
static const value_string qsig_sms_EnhancedVP_vals[] = {
9830
  {   0, "validityPeriodRel" },
9831
  {   1, "validityPeriodSec" },
9832
  {   2, "validityPeriodSemi" },
9833
  { 0, NULL }
9834
};
9835
9836
static const ber_choice_t qsig_sms_EnhancedVP_choice[] = {
9837
  {   0, &hf_qsig_sms_validityPeriodRel, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodRel },
9838
  {   1, &hf_qsig_sms_validityPeriodSec, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_INTEGER_0_255 },
9839
  {   2, &hf_qsig_sms_validityPeriodSemi, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodSemi },
9840
  { 0, NULL, 0, 0, 0, NULL }
9841
};
9842
9843
static unsigned
9844
0
dissect_qsig_sms_EnhancedVP(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9845
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9846
0
                                 qsig_sms_EnhancedVP_choice, hf_index, ett_qsig_sms_EnhancedVP,
9847
0
                                 NULL);
9848
9849
0
  return offset;
9850
0
}
9851
9852
9853
static const ber_sequence_t qsig_sms_ValidityPeriodEnh_sequence[] = {
9854
  { &hf_qsig_sms_singleShotSM, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_BOOLEAN },
9855
  { &hf_qsig_sms_enhancedVP , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_EnhancedVP },
9856
  { NULL, 0, 0, 0, NULL }
9857
};
9858
9859
static unsigned
9860
0
dissect_qsig_sms_ValidityPeriodEnh(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9861
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9862
0
                                   qsig_sms_ValidityPeriodEnh_sequence, hf_index, ett_qsig_sms_ValidityPeriodEnh);
9863
9864
0
  return offset;
9865
0
}
9866
9867
9868
static const value_string qsig_sms_ValidityPeriod_vals[] = {
9869
  {   0, "validityPeriodRel" },
9870
  {   1, "validityPeriodAbs" },
9871
  {   2, "validityPeriodEnh" },
9872
  { 0, NULL }
9873
};
9874
9875
static const ber_choice_t qsig_sms_ValidityPeriod_choice[] = {
9876
  {   0, &hf_qsig_sms_validityPeriodRel, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodRel },
9877
  {   1, &hf_qsig_sms_validityPeriodAbs, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodAbs },
9878
  {   2, &hf_qsig_sms_validityPeriodEnh, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodEnh },
9879
  { 0, NULL, 0, 0, 0, NULL }
9880
};
9881
9882
static unsigned
9883
0
dissect_qsig_sms_ValidityPeriod(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9884
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
9885
0
                                 qsig_sms_ValidityPeriod_choice, hf_index, ett_qsig_sms_ValidityPeriod,
9886
0
                                 NULL);
9887
9888
0
  return offset;
9889
0
}
9890
9891
9892
static const ber_sequence_t qsig_sms_SmSubmitParameter_sequence[] = {
9893
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
9894
  { &hf_qsig_sms_validityPeriod, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_ValidityPeriod },
9895
  { &hf_qsig_sms_statusReportRequest, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9896
  { &hf_qsig_sms_replyPath  , BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9897
  { &hf_qsig_sms_rejectDuplicates, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9898
  { NULL, 0, 0, 0, NULL }
9899
};
9900
9901
static unsigned
9902
0
dissect_qsig_sms_SmSubmitParameter(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9903
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9904
0
                                   qsig_sms_SmSubmitParameter_sequence, hf_index, ett_qsig_sms_SmSubmitParameter);
9905
9906
0
  return offset;
9907
0
}
9908
9909
9910
static int * const qsig_sms_SmscControlParameterHeader_bits[] = {
9911
  &hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted,
9912
  &hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError,
9913
  &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying,
9914
  &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying,
9915
  &hf_qsig_sms_SmscControlParameterHeader_spare_bit4,
9916
  &hf_qsig_sms_SmscControlParameterHeader_spare_bit5,
9917
  &hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM,
9918
  &hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR,
9919
  NULL
9920
};
9921
9922
static unsigned
9923
0
dissect_qsig_sms_SmscControlParameterHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9924
0
  offset = dissect_ber_constrained_bitstring(implicit_tag, actx, tree, tvb, offset,
9925
0
                                                8, 8, qsig_sms_SmscControlParameterHeader_bits, 8, hf_index, ett_qsig_sms_SmscControlParameterHeader,
9926
0
                                                NULL);
9927
9928
0
  return offset;
9929
0
}
9930
9931
9932
static const ber_sequence_t qsig_sms_Concatenated8BitSMHeader_sequence[] = {
9933
  { &hf_qsig_sms_concatenated8BitSMReferenceNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9934
  { &hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9935
  { &hf_qsig_sms_sequenceNumberOf8BitSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9936
  { NULL, 0, 0, 0, NULL }
9937
};
9938
9939
static unsigned
9940
0
dissect_qsig_sms_Concatenated8BitSMHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9941
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9942
0
                                   qsig_sms_Concatenated8BitSMHeader_sequence, hf_index, ett_qsig_sms_Concatenated8BitSMHeader);
9943
9944
0
  return offset;
9945
0
}
9946
9947
9948
9949
static unsigned
9950
0
dissect_qsig_sms_INTEGER_0_65536(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9951
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
9952
0
                                                            0U, 65536U, hf_index, NULL);
9953
9954
0
  return offset;
9955
0
}
9956
9957
9958
static const ber_sequence_t qsig_sms_Concatenated16BitSMHeader_sequence[] = {
9959
  { &hf_qsig_sms_concatenated16BitSMReferenceNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
9960
  { &hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9961
  { &hf_qsig_sms_sequenceNumberOf16BitSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9962
  { NULL, 0, 0, 0, NULL }
9963
};
9964
9965
static unsigned
9966
0
dissect_qsig_sms_Concatenated16BitSMHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9967
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9968
0
                                   qsig_sms_Concatenated16BitSMHeader_sequence, hf_index, ett_qsig_sms_Concatenated16BitSMHeader);
9969
9970
0
  return offset;
9971
0
}
9972
9973
9974
static const ber_sequence_t qsig_sms_ApplicationPort8BitHeader_sequence[] = {
9975
  { &hf_qsig_sms_destination8BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9976
  { &hf_qsig_sms_originator8BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9977
  { NULL, 0, 0, 0, NULL }
9978
};
9979
9980
static unsigned
9981
0
dissect_qsig_sms_ApplicationPort8BitHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9982
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9983
0
                                   qsig_sms_ApplicationPort8BitHeader_sequence, hf_index, ett_qsig_sms_ApplicationPort8BitHeader);
9984
9985
0
  return offset;
9986
0
}
9987
9988
9989
static const ber_sequence_t qsig_sms_ApplicationPort16BitHeader_sequence[] = {
9990
  { &hf_qsig_sms_destination16BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
9991
  { &hf_qsig_sms_originator16BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
9992
  { NULL, 0, 0, 0, NULL }
9993
};
9994
9995
static unsigned
9996
0
dissect_qsig_sms_ApplicationPort16BitHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9997
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9998
0
                                   qsig_sms_ApplicationPort16BitHeader_sequence, hf_index, ett_qsig_sms_ApplicationPort16BitHeader);
9999
10000
0
  return offset;
10001
0
}
10002
10003
10004
static const value_string qsig_sms_DataHeaderSourceIndicator_vals[] = {
10005
  {   1, "originalSender" },
10006
  {   2, "originalReceiver" },
10007
  {   3, "sMSC" },
10008
  { 0, NULL }
10009
};
10010
10011
10012
static unsigned
10013
0
dissect_qsig_sms_DataHeaderSourceIndicator(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10014
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10015
0
                                                            0U, 255U, hf_index, NULL);
10016
10017
0
  return offset;
10018
0
}
10019
10020
10021
10022
static unsigned
10023
0
dissect_qsig_sms_WirelessControlHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10024
0
  offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10025
0
                                       NULL);
10026
10027
0
  return offset;
10028
0
}
10029
10030
10031
10032
static unsigned
10033
0
dissect_qsig_sms_OCTET_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10034
0
  offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10035
0
                                       NULL);
10036
10037
0
  return offset;
10038
0
}
10039
10040
10041
static const ber_sequence_t qsig_sms_GenericUserValue_sequence[] = {
10042
  { &hf_qsig_sms_parameterValue, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
10043
  { &hf_qsig_sms_genericUserData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_OCTET_STRING },
10044
  { NULL, 0, 0, 0, NULL }
10045
};
10046
10047
static unsigned
10048
0
dissect_qsig_sms_GenericUserValue(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10049
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10050
0
                                   qsig_sms_GenericUserValue_sequence, hf_index, ett_qsig_sms_GenericUserValue);
10051
10052
0
  return offset;
10053
0
}
10054
10055
10056
static const value_string qsig_sms_UserDataHeaderChoice_vals[] = {
10057
  {   0, "smscControlParameterHeader" },
10058
  {   1, "concatenated8BitSMHeader" },
10059
  {   2, "concatenated16BitSMHeader" },
10060
  {   3, "applicationPort8BitHeader" },
10061
  {   4, "applicationPort16BitHeader" },
10062
  {   5, "dataHeaderSourceIndicator" },
10063
  {   6, "wirelessControlHeader" },
10064
  {  99, "genericUserValue" },
10065
  { 0, NULL }
10066
};
10067
10068
static const ber_choice_t qsig_sms_UserDataHeaderChoice_choice[] = {
10069
  {   0, &hf_qsig_sms_smscControlParameterHeader, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_SmscControlParameterHeader },
10070
  {   1, &hf_qsig_sms_concatenated8BitSMHeader, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_Concatenated8BitSMHeader },
10071
  {   2, &hf_qsig_sms_concatenated16BitSMHeader, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_Concatenated16BitSMHeader },
10072
  {   3, &hf_qsig_sms_applicationPort8BitHeader, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ApplicationPort8BitHeader },
10073
  {   4, &hf_qsig_sms_applicationPort16BitHeader, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ApplicationPort16BitHeader },
10074
  {   5, &hf_qsig_sms_dataHeaderSourceIndicator, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_sms_DataHeaderSourceIndicator },
10075
  {   6, &hf_qsig_sms_wirelessControlHeader, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_sms_WirelessControlHeader },
10076
  {  99, &hf_qsig_sms_genericUserValue, BER_CLASS_CON, 99, BER_FLAGS_IMPLTAG, dissect_qsig_sms_GenericUserValue },
10077
  { 0, NULL, 0, 0, 0, NULL }
10078
};
10079
10080
static unsigned
10081
0
dissect_qsig_sms_UserDataHeaderChoice(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10082
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10083
0
                                 qsig_sms_UserDataHeaderChoice_choice, hf_index, ett_qsig_sms_UserDataHeaderChoice,
10084
0
                                 NULL);
10085
10086
0
  return offset;
10087
0
}
10088
10089
10090
static const ber_sequence_t qsig_sms_UserDataHeader_sequence_of[1] = {
10091
  { &hf_qsig_sms_UserDataHeader_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_UserDataHeaderChoice },
10092
};
10093
10094
static unsigned
10095
0
dissect_qsig_sms_UserDataHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10096
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10097
0
                                      qsig_sms_UserDataHeader_sequence_of, hf_index, ett_qsig_sms_UserDataHeader);
10098
10099
0
  return offset;
10100
0
}
10101
10102
10103
10104
static unsigned
10105
0
dissect_qsig_sms_INTEGER_0_3(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10106
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10107
0
                                                            0U, 3U, hf_index, NULL);
10108
10109
0
  return offset;
10110
0
}
10111
10112
10113
static const value_string qsig_sms_ShortMessageTextType_vals[] = {
10114
  {   0, "iA5Coded" },
10115
  {   1, "octetCoded" },
10116
  {   2, "uniCoded" },
10117
  {   3, "compressedCoded" },
10118
  { 0, NULL }
10119
};
10120
10121
10122
static unsigned
10123
0
dissect_qsig_sms_ShortMessageTextType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10124
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10125
0
                                                            0U, 8U, hf_index, NULL);
10126
10127
0
  return offset;
10128
0
}
10129
10130
10131
10132
static unsigned
10133
0
dissect_qsig_sms_ShortMessageTextData(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10134
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
10135
0
                                                   0, 140, hf_index, NULL);
10136
10137
0
  return offset;
10138
0
}
10139
10140
10141
static const ber_sequence_t qsig_sms_ShortMessageText_sequence[] = {
10142
  { &hf_qsig_sms_shortMessageTextType, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageTextType },
10143
  { &hf_qsig_sms_shortMessageTextData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageTextData },
10144
  { NULL, 0, 0, 0, NULL }
10145
};
10146
10147
static unsigned
10148
0
dissect_qsig_sms_ShortMessageText(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10149
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10150
0
                                   qsig_sms_ShortMessageText_sequence, hf_index, ett_qsig_sms_ShortMessageText);
10151
10152
0
  return offset;
10153
0
}
10154
10155
10156
static const ber_sequence_t qsig_sms_UserData_sequence[] = {
10157
  { &hf_qsig_sms_userDataHeader, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserDataHeader },
10158
  { &hf_qsig_sms_class      , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_INTEGER_0_3 },
10159
  { &hf_qsig_sms_compressed , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10160
  { &hf_qsig_sms_shortMessageText, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageText },
10161
  { NULL, 0, 0, 0, NULL }
10162
};
10163
10164
static unsigned
10165
0
dissect_qsig_sms_UserData(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10166
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10167
0
                                   qsig_sms_UserData_sequence, hf_index, ett_qsig_sms_UserData);
10168
10169
0
  return offset;
10170
0
}
10171
10172
10173
static const ber_sequence_t qsig_sms_SEQUENCE_OF_Extension_sequence_of[1] = {
10174
  { &hf_qsig_sms_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
10175
};
10176
10177
static unsigned
10178
0
dissect_qsig_sms_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10179
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10180
0
                                      qsig_sms_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sms_SEQUENCE_OF_Extension);
10181
10182
0
  return offset;
10183
0
}
10184
10185
10186
static const value_string qsig_sms_SmsExtension_vals[] = {
10187
  {   1, "single" },
10188
  {   2, "multiple" },
10189
  { 0, NULL }
10190
};
10191
10192
static const ber_choice_t qsig_sms_SmsExtension_choice[] = {
10193
  {   1, &hf_qsig_sms_single     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
10194
  {   2, &hf_qsig_sms_multiple   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_SEQUENCE_OF_Extension },
10195
  { 0, NULL, 0, 0, 0, NULL }
10196
};
10197
10198
static unsigned
10199
0
dissect_qsig_sms_SmsExtension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10200
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10201
0
                                 qsig_sms_SmsExtension_choice, hf_index, ett_qsig_sms_SmsExtension,
10202
0
                                 NULL);
10203
10204
0
  return offset;
10205
0
}
10206
10207
10208
static const ber_sequence_t qsig_sms_SmsSubmitArg_sequence[] = {
10209
  { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10210
  { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10211
  { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10212
  { &hf_qsig_sms_smSubmitParameter, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmSubmitParameter },
10213
  { &hf_qsig_sms_userData   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10214
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10215
  { NULL, 0, 0, 0, NULL }
10216
};
10217
10218
static unsigned
10219
0
dissect_qsig_sms_SmsSubmitArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10220
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10221
0
                                   qsig_sms_SmsSubmitArg_sequence, hf_index, ett_qsig_sms_SmsSubmitArg);
10222
10223
0
  return offset;
10224
0
}
10225
10226
10227
10228
static unsigned
10229
0
dissect_qsig_sms_ServiceCentreTimeStamp(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10230
0
  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
10231
10232
0
  return offset;
10233
0
}
10234
10235
10236
static const ber_sequence_t qsig_sms_SmsSubmitRes_sequence[] = {
10237
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10238
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10239
  { &hf_qsig_sms_userData   , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10240
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10241
  { NULL, 0, 0, 0, NULL }
10242
};
10243
10244
static unsigned
10245
0
dissect_qsig_sms_SmsSubmitRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10246
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10247
0
                                   qsig_sms_SmsSubmitRes_sequence, hf_index, ett_qsig_sms_SmsSubmitRes);
10248
10249
0
  return offset;
10250
0
}
10251
10252
10253
static const ber_sequence_t qsig_sms_SmDeliverParameter_sequence[] = {
10254
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10255
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10256
  { &hf_qsig_sms_priority   , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10257
  { &hf_qsig_sms_moreMessagesToSend, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10258
  { &hf_qsig_sms_statusReportIndication, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10259
  { &hf_qsig_sms_replyPath  , BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10260
  { NULL, 0, 0, 0, NULL }
10261
};
10262
10263
static unsigned
10264
0
dissect_qsig_sms_SmDeliverParameter(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10265
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10266
0
                                   qsig_sms_SmDeliverParameter_sequence, hf_index, ett_qsig_sms_SmDeliverParameter);
10267
10268
0
  return offset;
10269
0
}
10270
10271
10272
static const ber_sequence_t qsig_sms_SmsDeliverArg_sequence[] = {
10273
  { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10274
  { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10275
  { &hf_qsig_sms_originatingName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
10276
  { &hf_qsig_sms_smDeliverParameter, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmDeliverParameter },
10277
  { &hf_qsig_sms_userData   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10278
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10279
  { NULL, 0, 0, 0, NULL }
10280
};
10281
10282
static unsigned
10283
0
dissect_qsig_sms_SmsDeliverArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10284
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10285
0
                                   qsig_sms_SmsDeliverArg_sequence, hf_index, ett_qsig_sms_SmsDeliverArg);
10286
10287
0
  return offset;
10288
0
}
10289
10290
10291
10292
static unsigned
10293
0
dissect_qsig_sms_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10294
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
10295
10296
0
  return offset;
10297
0
}
10298
10299
10300
static const ber_sequence_t qsig_sms_ResChoiceSeq_sequence[] = {
10301
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10302
  { &hf_qsig_sms_userData   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10303
  { NULL, 0, 0, 0, NULL }
10304
};
10305
10306
static unsigned
10307
0
dissect_qsig_sms_ResChoiceSeq(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10308
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10309
0
                                   qsig_sms_ResChoiceSeq_sequence, hf_index, ett_qsig_sms_ResChoiceSeq);
10310
10311
0
  return offset;
10312
0
}
10313
10314
10315
static const value_string qsig_sms_SmsDeliverResChoice_vals[] = {
10316
  {   0, "null" },
10317
  {   1, "protocolIdentifier" },
10318
  {   2, "userData" },
10319
  {   3, "resChoiceSeq" },
10320
  { 0, NULL }
10321
};
10322
10323
static const ber_choice_t qsig_sms_SmsDeliverResChoice_choice[] = {
10324
  {   0, &hf_qsig_sms_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10325
  {   1, &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10326
  {   2, &hf_qsig_sms_userData   , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10327
  {   3, &hf_qsig_sms_resChoiceSeq, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ResChoiceSeq },
10328
  { 0, NULL, 0, 0, 0, NULL }
10329
};
10330
10331
static unsigned
10332
0
dissect_qsig_sms_SmsDeliverResChoice(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10333
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10334
0
                                 qsig_sms_SmsDeliverResChoice_choice, hf_index, ett_qsig_sms_SmsDeliverResChoice,
10335
0
                                 NULL);
10336
10337
0
  return offset;
10338
0
}
10339
10340
10341
static const ber_sequence_t qsig_sms_SmsDeliverRes_sequence[] = {
10342
  { &hf_qsig_sms_smsDeliverResponseChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsDeliverResChoice },
10343
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10344
  { NULL, 0, 0, 0, NULL }
10345
};
10346
10347
static unsigned
10348
0
dissect_qsig_sms_SmsDeliverRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10349
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10350
0
                                   qsig_sms_SmsDeliverRes_sequence, hf_index, ett_qsig_sms_SmsDeliverRes);
10351
10352
0
  return offset;
10353
0
}
10354
10355
10356
10357
static unsigned
10358
0
dissect_qsig_sms_DischargeTime(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10359
0
  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
10360
10361
0
  return offset;
10362
0
}
10363
10364
10365
10366
static unsigned
10367
0
dissect_qsig_sms_Status(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10368
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10369
0
                                                            0U, 255U, hf_index, NULL);
10370
10371
0
  return offset;
10372
0
}
10373
10374
10375
static const ber_sequence_t qsig_sms_SmsStatusReportArg_sequence[] = {
10376
  { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10377
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10378
  { &hf_qsig_sms_dischargeTime, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_DischargeTime },
10379
  { &hf_qsig_sms_recipientAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10380
  { &hf_qsig_sms_recipientName, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
10381
  { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10382
  { &hf_qsig_sms_status     , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_Status },
10383
  { &hf_qsig_sms_priority   , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10384
  { &hf_qsig_sms_moreMessagesToSend, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10385
  { &hf_qsig_sms_statusReportQualifier, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10386
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10387
  { &hf_qsig_sms_userData   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10388
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10389
  { NULL, 0, 0, 0, NULL }
10390
};
10391
10392
static unsigned
10393
0
dissect_qsig_sms_SmsStatusReportArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10394
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10395
0
                                   qsig_sms_SmsStatusReportArg_sequence, hf_index, ett_qsig_sms_SmsStatusReportArg);
10396
10397
0
  return offset;
10398
0
}
10399
10400
10401
static const value_string qsig_sms_SmsStatusReportResponseChoice_vals[] = {
10402
  {   0, "null" },
10403
  {   1, "protocolIdentifier" },
10404
  {   2, "userData" },
10405
  {   3, "resChoiceSeq" },
10406
  { 0, NULL }
10407
};
10408
10409
static const ber_choice_t qsig_sms_SmsStatusReportResponseChoice_choice[] = {
10410
  {   0, &hf_qsig_sms_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10411
  {   1, &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10412
  {   2, &hf_qsig_sms_userData   , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10413
  {   3, &hf_qsig_sms_resChoiceSeq, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ResChoiceSeq },
10414
  { 0, NULL, 0, 0, 0, NULL }
10415
};
10416
10417
static unsigned
10418
0
dissect_qsig_sms_SmsStatusReportResponseChoice(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10419
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10420
0
                                 qsig_sms_SmsStatusReportResponseChoice_choice, hf_index, ett_qsig_sms_SmsStatusReportResponseChoice,
10421
0
                                 NULL);
10422
10423
0
  return offset;
10424
0
}
10425
10426
10427
static const ber_sequence_t qsig_sms_SmsStatusReportRes_sequence[] = {
10428
  { &hf_qsig_sms_smsStatusReportResponseChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsStatusReportResponseChoice },
10429
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10430
  { NULL, 0, 0, 0, NULL }
10431
};
10432
10433
static unsigned
10434
0
dissect_qsig_sms_SmsStatusReportRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10435
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10436
0
                                   qsig_sms_SmsStatusReportRes_sequence, hf_index, ett_qsig_sms_SmsStatusReportRes);
10437
10438
0
  return offset;
10439
0
}
10440
10441
10442
static const value_string qsig_sms_CommandType_vals[] = {
10443
  {   0, "enquiry" },
10444
  {   1, "cancelSRR" },
10445
  {   2, "deletePreviouslySubmittedSM" },
10446
  {   3, "enableSRRrelatingToPreviouslySubmittedSM" },
10447
  { 0, NULL }
10448
};
10449
10450
10451
static unsigned
10452
0
dissect_qsig_sms_CommandType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10453
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10454
0
                                                            0U, 255U, hf_index, NULL);
10455
10456
0
  return offset;
10457
0
}
10458
10459
10460
10461
static unsigned
10462
0
dissect_qsig_sms_CommandData(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10463
0
  offset = dissect_ber_constrained_octet_string(implicit_tag, actx, tree, tvb, offset,
10464
0
                                                   0, 157, hf_index, NULL);
10465
10466
0
  return offset;
10467
0
}
10468
10469
10470
static const ber_sequence_t qsig_sms_SmsCommandArg_sequence[] = {
10471
  { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10472
  { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10473
  { &hf_qsig_sms_messageNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10474
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10475
  { &hf_qsig_sms_commandType, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_CommandType },
10476
  { &hf_qsig_sms_commandData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_CommandData },
10477
  { &hf_qsig_sms_statusReportRequest, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_BOOLEAN },
10478
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10479
  { NULL, 0, 0, 0, NULL }
10480
};
10481
10482
static unsigned
10483
0
dissect_qsig_sms_SmsCommandArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10484
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10485
0
                                   qsig_sms_SmsCommandArg_sequence, hf_index, ett_qsig_sms_SmsCommandArg);
10486
10487
0
  return offset;
10488
0
}
10489
10490
10491
static const ber_sequence_t qsig_sms_SmsCommandRes_sequence[] = {
10492
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10493
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10494
  { &hf_qsig_sms_userData   , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10495
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10496
  { NULL, 0, 0, 0, NULL }
10497
};
10498
10499
static unsigned
10500
0
dissect_qsig_sms_SmsCommandRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10501
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10502
0
                                   qsig_sms_SmsCommandRes_sequence, hf_index, ett_qsig_sms_SmsCommandRes);
10503
10504
0
  return offset;
10505
0
}
10506
10507
10508
static const ber_sequence_t qsig_sms_ScAlertArg_sequence[] = {
10509
  { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10510
  { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10511
  { NULL, 0, 0, 0, NULL }
10512
};
10513
10514
static unsigned
10515
0
dissect_qsig_sms_ScAlertArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10516
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10517
0
                                   qsig_sms_ScAlertArg_sequence, hf_index, ett_qsig_sms_ScAlertArg);
10518
10519
0
  return offset;
10520
0
}
10521
10522
10523
static const value_string qsig_sms_DummyRes_vals[] = {
10524
  {   0, "null" },
10525
  {   1, "smsExtension" },
10526
  { 0, NULL }
10527
};
10528
10529
static const ber_choice_t qsig_sms_DummyRes_choice[] = {
10530
  {   0, &hf_qsig_sms_null       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10531
  {   1, &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmsExtension },
10532
  { 0, NULL, 0, 0, 0, NULL }
10533
};
10534
10535
static unsigned
10536
0
dissect_qsig_sms_DummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10537
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10538
0
                                 qsig_sms_DummyRes_choice, hf_index, ett_qsig_sms_DummyRes,
10539
0
                                 NULL);
10540
10541
0
  return offset;
10542
0
}
10543
10544
10545
10546
static unsigned
10547
0
dissect_qsig_sms_FailureCause(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10548
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10549
0
                                                            0U, 255U, hf_index, NULL);
10550
10551
0
  return offset;
10552
0
}
10553
10554
10555
static const ber_sequence_t qsig_sms_PAR_smsDeliverError_sequence[] = {
10556
  { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10557
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10558
  { &hf_qsig_sms_userData   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10559
  { &hf_qsig_sms_scAddressSaved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10560
  { NULL, 0, 0, 0, NULL }
10561
};
10562
10563
static unsigned
10564
0
dissect_qsig_sms_PAR_smsDeliverError(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10565
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10566
0
                                   qsig_sms_PAR_smsDeliverError_sequence, hf_index, ett_qsig_sms_PAR_smsDeliverError);
10567
10568
0
  return offset;
10569
0
}
10570
10571
10572
static const ber_sequence_t qsig_sms_PAR_smsSubmitError_sequence[] = {
10573
  { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10574
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10575
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10576
  { &hf_qsig_sms_userData   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10577
  { NULL, 0, 0, 0, NULL }
10578
};
10579
10580
static unsigned
10581
0
dissect_qsig_sms_PAR_smsSubmitError(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10582
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10583
0
                                   qsig_sms_PAR_smsSubmitError_sequence, hf_index, ett_qsig_sms_PAR_smsSubmitError);
10584
10585
0
  return offset;
10586
0
}
10587
10588
10589
static const ber_sequence_t qsig_sms_PAR_smsStatusReportError_sequence[] = {
10590
  { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10591
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10592
  { &hf_qsig_sms_userData   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10593
  { &hf_qsig_sms_scAddressSaved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10594
  { NULL, 0, 0, 0, NULL }
10595
};
10596
10597
static unsigned
10598
0
dissect_qsig_sms_PAR_smsStatusReportError(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10599
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10600
0
                                   qsig_sms_PAR_smsStatusReportError_sequence, hf_index, ett_qsig_sms_PAR_smsStatusReportError);
10601
10602
0
  return offset;
10603
0
}
10604
10605
10606
static const ber_sequence_t qsig_sms_PAR_smsCommandError_sequence[] = {
10607
  { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10608
  { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10609
  { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10610
  { &hf_qsig_sms_userData   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10611
  { NULL, 0, 0, 0, NULL }
10612
};
10613
10614
static unsigned
10615
0
dissect_qsig_sms_PAR_smsCommandError(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10616
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10617
0
                                   qsig_sms_PAR_smsCommandError_sequence, hf_index, ett_qsig_sms_PAR_smsCommandError);
10618
10619
0
  return offset;
10620
0
}
10621
10622
/*--- PDUs ---*/
10623
10624
0
static int dissect_qsig_sms_SmsSubmitArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10625
0
  unsigned offset = 0;
10626
0
  asn1_ctx_t asn1_ctx;
10627
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10628
0
  offset = dissect_qsig_sms_SmsSubmitArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU);
10629
0
  return offset;
10630
0
}
10631
0
static int dissect_qsig_sms_SmsSubmitRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10632
0
  unsigned offset = 0;
10633
0
  asn1_ctx_t asn1_ctx;
10634
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10635
0
  offset = dissect_qsig_sms_SmsSubmitRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU);
10636
0
  return offset;
10637
0
}
10638
0
static int dissect_qsig_sms_SmsDeliverArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10639
0
  unsigned offset = 0;
10640
0
  asn1_ctx_t asn1_ctx;
10641
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10642
0
  offset = dissect_qsig_sms_SmsDeliverArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU);
10643
0
  return offset;
10644
0
}
10645
0
static int dissect_qsig_sms_SmsDeliverRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10646
0
  unsigned offset = 0;
10647
0
  asn1_ctx_t asn1_ctx;
10648
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10649
0
  offset = dissect_qsig_sms_SmsDeliverRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU);
10650
0
  return offset;
10651
0
}
10652
0
static int dissect_qsig_sms_SmsStatusReportArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10653
0
  unsigned offset = 0;
10654
0
  asn1_ctx_t asn1_ctx;
10655
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10656
0
  offset = dissect_qsig_sms_SmsStatusReportArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU);
10657
0
  return offset;
10658
0
}
10659
0
static int dissect_qsig_sms_SmsStatusReportRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10660
0
  unsigned offset = 0;
10661
0
  asn1_ctx_t asn1_ctx;
10662
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10663
0
  offset = dissect_qsig_sms_SmsStatusReportRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU);
10664
0
  return offset;
10665
0
}
10666
0
static int dissect_qsig_sms_SmsCommandArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10667
0
  unsigned offset = 0;
10668
0
  asn1_ctx_t asn1_ctx;
10669
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10670
0
  offset = dissect_qsig_sms_SmsCommandArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsCommandArg_PDU);
10671
0
  return offset;
10672
0
}
10673
0
static int dissect_qsig_sms_SmsCommandRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10674
0
  unsigned offset = 0;
10675
0
  asn1_ctx_t asn1_ctx;
10676
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10677
0
  offset = dissect_qsig_sms_SmsCommandRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsCommandRes_PDU);
10678
0
  return offset;
10679
0
}
10680
0
static int dissect_qsig_sms_ScAlertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10681
0
  unsigned offset = 0;
10682
0
  asn1_ctx_t asn1_ctx;
10683
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10684
0
  offset = dissect_qsig_sms_ScAlertArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_ScAlertArg_PDU);
10685
0
  return offset;
10686
0
}
10687
0
static int dissect_qsig_sms_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10688
0
  unsigned offset = 0;
10689
0
  asn1_ctx_t asn1_ctx;
10690
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10691
0
  offset = dissect_qsig_sms_DummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_DummyRes_PDU);
10692
0
  return offset;
10693
0
}
10694
0
static int dissect_qsig_sms_PAR_smsDeliverError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10695
0
  unsigned offset = 0;
10696
0
  asn1_ctx_t asn1_ctx;
10697
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10698
0
  offset = dissect_qsig_sms_PAR_smsDeliverError(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU);
10699
0
  return offset;
10700
0
}
10701
0
static int dissect_qsig_sms_PAR_smsSubmitError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10702
0
  unsigned offset = 0;
10703
0
  asn1_ctx_t asn1_ctx;
10704
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10705
0
  offset = dissect_qsig_sms_PAR_smsSubmitError(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU);
10706
0
  return offset;
10707
0
}
10708
0
static int dissect_qsig_sms_PAR_smsStatusReportError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10709
0
  unsigned offset = 0;
10710
0
  asn1_ctx_t asn1_ctx;
10711
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10712
0
  offset = dissect_qsig_sms_PAR_smsStatusReportError(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU);
10713
0
  return offset;
10714
0
}
10715
0
static int dissect_qsig_sms_PAR_smsCommandError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10716
0
  unsigned offset = 0;
10717
0
  asn1_ctx_t asn1_ctx;
10718
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10719
0
  offset = dissect_qsig_sms_PAR_smsCommandError(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU);
10720
0
  return offset;
10721
0
}
10722
0
static int dissect_qsig_sms_SmsExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10723
0
  unsigned offset = 0;
10724
0
  asn1_ctx_t asn1_ctx;
10725
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10726
0
  offset = dissect_qsig_sms_SmsExtension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsExtension_PDU);
10727
0
  return offset;
10728
0
}
10729
10730
10731
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
10732
10733
10734
10735
static unsigned
10736
0
dissect_qsig_mcr_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10737
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
10738
10739
0
  return offset;
10740
0
}
10741
10742
10743
static const value_string qsig_mcr_CallType_vals[] = {
10744
  {   0, "basicService" },
10745
  {   1, "cisc" },
10746
  { 0, NULL }
10747
};
10748
10749
static const ber_choice_t qsig_mcr_CallType_choice[] = {
10750
  {   0, &hf_qsig_mcr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
10751
  {   1, &hf_qsig_mcr_cisc       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_NULL },
10752
  { 0, NULL, 0, 0, 0, NULL }
10753
};
10754
10755
static unsigned
10756
0
dissect_qsig_mcr_CallType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10757
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10758
0
                                 qsig_mcr_CallType_choice, hf_index, ett_qsig_mcr_CallType,
10759
0
                                 NULL);
10760
10761
0
  return offset;
10762
0
}
10763
10764
10765
10766
static unsigned
10767
0
dissect_qsig_mcr_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10768
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
10769
10770
0
  return offset;
10771
0
}
10772
10773
10774
static const value_string qsig_mcr_CorrelationReason_vals[] = {
10775
  {   0, "unknown" },
10776
  {   1, "mCACommunication" },
10777
  {   2, "cTIApplication" },
10778
  { 0, NULL }
10779
};
10780
10781
10782
static unsigned
10783
0
dissect_qsig_mcr_CorrelationReason(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10784
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10785
0
                                                            0U, 255U, hf_index, NULL);
10786
10787
0
  return offset;
10788
0
}
10789
10790
10791
static const ber_sequence_t qsig_mcr_Correlation_sequence[] = {
10792
  { &hf_qsig_mcr_correlationData, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
10793
  { &hf_qsig_mcr_correlationReason, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_CorrelationReason },
10794
  { NULL, 0, 0, 0, NULL }
10795
};
10796
10797
static unsigned
10798
0
dissect_qsig_mcr_Correlation(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10799
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10800
0
                                   qsig_mcr_Correlation_sequence, hf_index, ett_qsig_mcr_Correlation);
10801
10802
0
  return offset;
10803
0
}
10804
10805
10806
static const ber_sequence_t qsig_mcr_SEQUENCE_OF_Extension_sequence_of[1] = {
10807
  { &hf_qsig_mcr_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
10808
};
10809
10810
static unsigned
10811
0
dissect_qsig_mcr_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10812
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10813
0
                                      qsig_mcr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mcr_SEQUENCE_OF_Extension);
10814
10815
0
  return offset;
10816
0
}
10817
10818
10819
static const value_string qsig_mcr_MCRExtensions_vals[] = {
10820
  {   0, "none" },
10821
  {   1, "single" },
10822
  {   2, "multiple" },
10823
  { 0, NULL }
10824
};
10825
10826
static const ber_choice_t qsig_mcr_MCRExtensions_choice[] = {
10827
  {   0, &hf_qsig_mcr_none       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_NULL },
10828
  {   1, &hf_qsig_mcr_single     , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
10829
  {   2, &hf_qsig_mcr_multiple   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcr_SEQUENCE_OF_Extension },
10830
  { 0, NULL, 0, 0, 0, NULL }
10831
};
10832
10833
static unsigned
10834
0
dissect_qsig_mcr_MCRExtensions(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10835
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10836
0
                                 qsig_mcr_MCRExtensions_choice, hf_index, ett_qsig_mcr_MCRExtensions,
10837
0
                                 NULL);
10838
10839
0
  return offset;
10840
0
}
10841
10842
10843
static const ber_sequence_t qsig_mcr_MCRequestArg_sequence[] = {
10844
  { &hf_qsig_mcr_callType   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_CallType },
10845
  { &hf_qsig_mcr_retainOrigCall, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_BOOLEAN },
10846
  { &hf_qsig_mcr_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressUnscreened },
10847
  { &hf_qsig_mcr_requestingAddress, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10848
  { &hf_qsig_mcr_cooperatingAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10849
  { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10850
  { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10851
  { NULL, 0, 0, 0, NULL }
10852
};
10853
10854
static unsigned
10855
0
dissect_qsig_mcr_MCRequestArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10856
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10857
0
                                   qsig_mcr_MCRequestArg_sequence, hf_index, ett_qsig_mcr_MCRequestArg);
10858
10859
0
  return offset;
10860
0
}
10861
10862
10863
static const ber_sequence_t qsig_mcr_MCRequestResult_sequence[] = {
10864
  { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10865
  { NULL, 0, 0, 0, NULL }
10866
};
10867
10868
static unsigned
10869
0
dissect_qsig_mcr_MCRequestResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10870
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10871
0
                                   qsig_mcr_MCRequestResult_sequence, hf_index, ett_qsig_mcr_MCRequestResult);
10872
10873
0
  return offset;
10874
0
}
10875
10876
10877
static const ber_sequence_t qsig_mcr_MCInformArg_sequence[] = {
10878
  { &hf_qsig_mcr_requestingAddress, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10879
  { &hf_qsig_mcr_cooperatingAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10880
  { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10881
  { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10882
  { NULL, 0, 0, 0, NULL }
10883
};
10884
10885
static unsigned
10886
0
dissect_qsig_mcr_MCInformArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10887
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10888
0
                                   qsig_mcr_MCInformArg_sequence, hf_index, ett_qsig_mcr_MCInformArg);
10889
10890
0
  return offset;
10891
0
}
10892
10893
10894
static const ber_sequence_t qsig_mcr_MCAlertingArg_sequence[] = {
10895
  { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10896
  { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10897
  { NULL, 0, 0, 0, NULL }
10898
};
10899
10900
static unsigned
10901
0
dissect_qsig_mcr_MCAlertingArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10902
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10903
0
                                   qsig_mcr_MCAlertingArg_sequence, hf_index, ett_qsig_mcr_MCAlertingArg);
10904
10905
0
  return offset;
10906
0
}
10907
10908
/*--- PDUs ---*/
10909
10910
0
static int dissect_qsig_mcr_MCRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10911
0
  unsigned offset = 0;
10912
0
  asn1_ctx_t asn1_ctx;
10913
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10914
0
  offset = dissect_qsig_mcr_MCRequestArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU);
10915
0
  return offset;
10916
0
}
10917
0
static int dissect_qsig_mcr_MCRequestResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10918
0
  unsigned offset = 0;
10919
0
  asn1_ctx_t asn1_ctx;
10920
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10921
0
  offset = dissect_qsig_mcr_MCRequestResult(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU);
10922
0
  return offset;
10923
0
}
10924
0
static int dissect_qsig_mcr_MCInformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10925
0
  unsigned offset = 0;
10926
0
  asn1_ctx_t asn1_ctx;
10927
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10928
0
  offset = dissect_qsig_mcr_MCInformArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCInformArg_PDU);
10929
0
  return offset;
10930
0
}
10931
0
static int dissect_qsig_mcr_MCAlertingArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10932
0
  unsigned offset = 0;
10933
0
  asn1_ctx_t asn1_ctx;
10934
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10935
0
  offset = dissect_qsig_mcr_MCAlertingArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU);
10936
0
  return offset;
10937
0
}
10938
0
static int dissect_qsig_mcr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10939
0
  unsigned offset = 0;
10940
0
  asn1_ctx_t asn1_ctx;
10941
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
10942
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_Extension_PDU);
10943
0
  return offset;
10944
0
}
10945
10946
10947
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
10948
10949
10950
10951
static unsigned
10952
0
dissect_qsig_mcm_INTEGER_0_65535(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10953
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
10954
0
                                                            0U, 65535U, hf_index, NULL);
10955
10956
0
  return offset;
10957
0
}
10958
10959
10960
10961
static unsigned
10962
0
dissect_qsig_mcm_NumericString_SIZE_1_10(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10963
0
  offset = dissect_ber_constrained_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
10964
0
                                                        actx, tree, tvb, offset,
10965
0
                                                        1, 10, hf_index, NULL);
10966
10967
0
  return offset;
10968
0
}
10969
10970
10971
static const value_string qsig_mcm_MsgCentreId_vals[] = {
10972
  {   0, "integer" },
10973
  {   1, "partyNumber" },
10974
  {   2, "numericString" },
10975
  { 0, NULL }
10976
};
10977
10978
static const ber_choice_t qsig_mcm_MsgCentreId_choice[] = {
10979
  {   0, &hf_qsig_mcm_integer    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_65535 },
10980
  {   1, &hf_qsig_mcm_partyNumber, BER_CLASS_CON, 1, 0, dissect_qsig_PartyNumber },
10981
  {   2, &hf_qsig_mcm_numericString, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NumericString_SIZE_1_10 },
10982
  { 0, NULL, 0, 0, 0, NULL }
10983
};
10984
10985
static unsigned
10986
0
dissect_qsig_mcm_MsgCentreId(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10987
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
10988
0
                                 qsig_mcm_MsgCentreId_choice, hf_index, ett_qsig_mcm_MsgCentreId,
10989
0
                                 NULL);
10990
10991
0
  return offset;
10992
0
}
10993
10994
10995
static const ber_sequence_t qsig_mcm_PartyInfo_sequence[] = {
10996
  { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10997
  { &hf_qsig_mcm_messageCentreID, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
10998
  { NULL, 0, 0, 0, NULL }
10999
};
11000
11001
static unsigned
11002
0
dissect_qsig_mcm_PartyInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11003
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11004
0
                                   qsig_mcm_PartyInfo_sequence, hf_index, ett_qsig_mcm_PartyInfo);
11005
11006
0
  return offset;
11007
0
}
11008
11009
11010
static const value_string qsig_mcm_MessageType_vals[] = {
11011
  {   0, "allServices" },
11012
  {   1, "speech" },
11013
  {   2, "unrestrictedDigitalInformation" },
11014
  {   3, "audio3100Hz" },
11015
  {  32, "telephony" },
11016
  {  33, "teletex" },
11017
  {  34, "telefaxGroup4Class1" },
11018
  {  35, "videotextSyntaxBased" },
11019
  {  36, "videotelephony" },
11020
  {  37, "telefaxGroup2-3" },
11021
  {  38, "reservedNotUsed1" },
11022
  {  39, "reservedNotUsed2" },
11023
  {  40, "reservedNotUsed3" },
11024
  {  41, "reservedNotUsed4" },
11025
  {  42, "reservedNotUsed5" },
11026
  {  51, "email" },
11027
  {  52, "video" },
11028
  {  53, "fileTransfer" },
11029
  {  54, "shortMessageService" },
11030
  {  55, "speechAndVideo" },
11031
  {  56, "speechAndFax" },
11032
  {  57, "speechAndEmail" },
11033
  {  58, "videoAndFax" },
11034
  {  59, "videoAndEmail" },
11035
  {  60, "faxAndEmail" },
11036
  {  61, "speechVideoAndFax" },
11037
  {  62, "speechVideoAndEmail" },
11038
  {  63, "speechFaxAndEmail" },
11039
  {  64, "videoFaxAndEmail" },
11040
  {  65, "speechVideoFaxAndEmail" },
11041
  {  66, "multimediaUnknown" },
11042
  {  67, "serviceUnknown" },
11043
  {  68, "futureReserve1" },
11044
  {  69, "futureReserve2" },
11045
  {  70, "futureReserve3" },
11046
  {  71, "futureReserve4" },
11047
  {  72, "futureReserve5" },
11048
  {  73, "futureReserve6" },
11049
  {  74, "futureReserve7" },
11050
  {  75, "futureReserve8" },
11051
  { 0, NULL }
11052
};
11053
11054
11055
static unsigned
11056
0
dissect_qsig_mcm_MessageType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11057
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11058
0
                                  NULL);
11059
11060
0
  return offset;
11061
0
}
11062
11063
11064
11065
static unsigned
11066
0
dissect_qsig_mcm_INTEGER_0_100(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11067
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
11068
0
                                                            0U, 100U, hf_index, NULL);
11069
11070
0
  return offset;
11071
0
}
11072
11073
11074
static const ber_sequence_t qsig_mcm_MailboxFullPar_sequence[] = {
11075
  { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11076
  { &hf_qsig_mcm_capacityReached, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_INTEGER_0_100 },
11077
  { NULL, 0, 0, 0, NULL }
11078
};
11079
11080
static unsigned
11081
0
dissect_qsig_mcm_MailboxFullPar(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11082
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11083
0
                                   qsig_mcm_MailboxFullPar_sequence, hf_index, ett_qsig_mcm_MailboxFullPar);
11084
11085
0
  return offset;
11086
0
}
11087
11088
11089
static const ber_sequence_t qsig_mcm_MailboxFullFor_sequence_of[1] = {
11090
  { &hf_qsig_mcm_MailboxFullFor_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MailboxFullPar },
11091
};
11092
11093
static unsigned
11094
0
dissect_qsig_mcm_MailboxFullFor(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11095
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11096
0
                                      qsig_mcm_MailboxFullFor_sequence_of, hf_index, ett_qsig_mcm_MailboxFullFor);
11097
11098
0
  return offset;
11099
0
}
11100
11101
11102
11103
static unsigned
11104
0
dissect_qsig_mcm_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11105
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
11106
11107
0
  return offset;
11108
0
}
11109
11110
11111
static const ber_sequence_t qsig_mcm_SEQUENCE_OF_Extension_sequence_of[1] = {
11112
  { &hf_qsig_mcm_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
11113
};
11114
11115
static unsigned
11116
0
dissect_qsig_mcm_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11117
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11118
0
                                      qsig_mcm_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_Extension);
11119
11120
0
  return offset;
11121
0
}
11122
11123
11124
static const value_string qsig_mcm_MCMExtensions_vals[] = {
11125
  {   0, "none" },
11126
  {   1, "extension" },
11127
  {   2, "multipleExtension" },
11128
  { 0, NULL }
11129
};
11130
11131
static const ber_choice_t qsig_mcm_MCMExtensions_choice[] = {
11132
  {   0, &hf_qsig_mcm_none       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11133
  {   1, &hf_qsig_mcm_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11134
  {   2, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11135
  { 0, NULL, 0, 0, 0, NULL }
11136
};
11137
11138
static unsigned
11139
0
dissect_qsig_mcm_MCMExtensions(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11140
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11141
0
                                 qsig_mcm_MCMExtensions_choice, hf_index, ett_qsig_mcm_MCMExtensions,
11142
0
                                 NULL);
11143
11144
0
  return offset;
11145
0
}
11146
11147
11148
static const ber_sequence_t qsig_mcm_MCMailboxFullArg_sequence[] = {
11149
  { &hf_qsig_mcm_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11150
  { &hf_qsig_mcm_mailboxFullFor, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MailboxFullFor },
11151
  { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11152
  { NULL, 0, 0, 0, NULL }
11153
};
11154
11155
static unsigned
11156
0
dissect_qsig_mcm_MCMailboxFullArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11157
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11158
0
                                   qsig_mcm_MCMailboxFullArg_sequence, hf_index, ett_qsig_mcm_MCMailboxFullArg);
11159
11160
0
  return offset;
11161
0
}
11162
11163
11164
static const value_string qsig_mcm_MCMMode_vals[] = {
11165
  {   0, "compressed" },
11166
  {   1, "complete" },
11167
  { 0, NULL }
11168
};
11169
11170
11171
static unsigned
11172
0
dissect_qsig_mcm_MCMMode(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11173
0
  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11174
0
                                                NULL);
11175
11176
0
  return offset;
11177
0
}
11178
11179
11180
static const ber_sequence_t qsig_mcm_MCMServiceInfo_sequence[] = {
11181
  { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11182
  { &hf_qsig_mcm_mCMModeNew , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_MCMMode },
11183
  { &hf_qsig_mcm_mCMModeRetrieved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_MCMMode },
11184
  { NULL, 0, 0, 0, NULL }
11185
};
11186
11187
static unsigned
11188
0
dissect_qsig_mcm_MCMServiceInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11189
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11190
0
                                   qsig_mcm_MCMServiceInfo_sequence, hf_index, ett_qsig_mcm_MCMServiceInfo);
11191
11192
0
  return offset;
11193
0
}
11194
11195
11196
static const ber_sequence_t qsig_mcm_SEQUENCE_OF_MCMServiceInfo_sequence_of[1] = {
11197
  { &hf_qsig_mcm_activateMCM_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MCMServiceInfo },
11198
};
11199
11200
static unsigned
11201
0
dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11202
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11203
0
                                      qsig_mcm_SEQUENCE_OF_MCMServiceInfo_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo);
11204
11205
0
  return offset;
11206
0
}
11207
11208
11209
static const ber_sequence_t qsig_mcm_SEQUENCE_OF_MessageType_sequence_of[1] = {
11210
  { &hf_qsig_mcm_deactivateMCM_item, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11211
};
11212
11213
static unsigned
11214
0
dissect_qsig_mcm_SEQUENCE_OF_MessageType(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11215
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11216
0
                                      qsig_mcm_SEQUENCE_OF_MessageType_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_MessageType);
11217
11218
0
  return offset;
11219
0
}
11220
11221
11222
static const value_string qsig_mcm_MCMChange_vals[] = {
11223
  {   0, "activateMCM" },
11224
  {   1, "deactivateMCM" },
11225
  {   2, "setToDefaultValues" },
11226
  { 0, NULL }
11227
};
11228
11229
static const ber_choice_t qsig_mcm_MCMChange_choice[] = {
11230
  {   0, &hf_qsig_mcm_activateMCM, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo },
11231
  {   1, &hf_qsig_mcm_deactivateMCM, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_MessageType },
11232
  {   2, &hf_qsig_mcm_setToDefaultValues, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11233
  { 0, NULL, 0, 0, 0, NULL }
11234
};
11235
11236
static unsigned
11237
0
dissect_qsig_mcm_MCMChange(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11238
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11239
0
                                 qsig_mcm_MCMChange_choice, hf_index, ett_qsig_mcm_MCMChange,
11240
0
                                 NULL);
11241
11242
0
  return offset;
11243
0
}
11244
11245
11246
static const ber_sequence_t qsig_mcm_MCMServiceArg_sequence[] = {
11247
  { &hf_qsig_mcm_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11248
  { &hf_qsig_mcm_mCMChange  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMChange },
11249
  { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11250
  { NULL, 0, 0, 0, NULL }
11251
};
11252
11253
static unsigned
11254
0
dissect_qsig_mcm_MCMServiceArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11255
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11256
0
                                   qsig_mcm_MCMServiceArg_sequence, hf_index, ett_qsig_mcm_MCMServiceArg);
11257
11258
0
  return offset;
11259
0
}
11260
11261
11262
static const ber_sequence_t qsig_mcm_MCMInterrogateArg_sequence[] = {
11263
  { &hf_qsig_mcm_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11264
  { &hf_qsig_mcm_interrogateInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_SEQUENCE_OF_MessageType },
11265
  { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11266
  { NULL, 0, 0, 0, NULL }
11267
};
11268
11269
static unsigned
11270
0
dissect_qsig_mcm_MCMInterrogateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11271
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11272
0
                                   qsig_mcm_MCMInterrogateArg_sequence, hf_index, ett_qsig_mcm_MCMInterrogateArg);
11273
11274
0
  return offset;
11275
0
}
11276
11277
11278
static const ber_sequence_t qsig_mcm_MCMInterrogateRes_sequence[] = {
11279
  { &hf_qsig_mcm_interrogateResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo },
11280
  { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11281
  { NULL, 0, 0, 0, NULL }
11282
};
11283
11284
static unsigned
11285
0
dissect_qsig_mcm_MCMInterrogateRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11286
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11287
0
                                   qsig_mcm_MCMInterrogateRes_sequence, hf_index, ett_qsig_mcm_MCMInterrogateRes);
11288
11289
0
  return offset;
11290
0
}
11291
11292
11293
11294
static unsigned
11295
0
dissect_qsig_mcm_NrOfMessages(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11296
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
11297
0
                                                            0U, 65535U, hf_index, NULL);
11298
11299
0
  return offset;
11300
0
}
11301
11302
11303
11304
static unsigned
11305
0
dissect_qsig_mcm_TimeStamp(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11306
0
  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
11307
11308
0
  return offset;
11309
0
}
11310
11311
11312
11313
static unsigned
11314
0
dissect_qsig_mcm_INTEGER_0_9(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11315
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
11316
0
                                                            0U, 9U, hf_index, NULL);
11317
11318
0
  return offset;
11319
0
}
11320
11321
11322
static const value_string qsig_mcm_MCMNewArgumentExt_vals[] = {
11323
  {   6, "extension" },
11324
  {   7, "multipleExtension" },
11325
  { 0, NULL }
11326
};
11327
11328
static const ber_choice_t qsig_mcm_MCMNewArgumentExt_choice[] = {
11329
  {   6, &hf_qsig_mcm_extension  , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11330
  {   7, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11331
  { 0, NULL, 0, 0, 0, NULL }
11332
};
11333
11334
static unsigned
11335
0
dissect_qsig_mcm_MCMNewArgumentExt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11336
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11337
0
                                 qsig_mcm_MCMNewArgumentExt_choice, hf_index, ett_qsig_mcm_MCMNewArgumentExt,
11338
0
                                 NULL);
11339
11340
0
  return offset;
11341
0
}
11342
11343
11344
static const ber_sequence_t qsig_mcm_MCMNewMsgArg_sequence[] = {
11345
  { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11346
  { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11347
  { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11348
  { &hf_qsig_mcm_nrOfMessages, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NrOfMessages },
11349
  { &hf_qsig_mcm_originatingNr, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
11350
  { &hf_qsig_mcm_timestamp  , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11351
  { &hf_qsig_mcm_priority   , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_9 },
11352
  { &hf_qsig_mcm_argumentExtMCMNew, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMNewArgumentExt },
11353
  { NULL, 0, 0, 0, NULL }
11354
};
11355
11356
static unsigned
11357
0
dissect_qsig_mcm_MCMNewMsgArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11358
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11359
0
                                   qsig_mcm_MCMNewMsgArg_sequence, hf_index, ett_qsig_mcm_MCMNewMsgArg);
11360
11361
0
  return offset;
11362
0
}
11363
11364
11365
static const value_string qsig_mcm_MCMNoNewArgumentExt_vals[] = {
11366
  {   3, "extension" },
11367
  {   4, "multipleExtension" },
11368
  { 0, NULL }
11369
};
11370
11371
static const ber_choice_t qsig_mcm_MCMNoNewArgumentExt_choice[] = {
11372
  {   3, &hf_qsig_mcm_extension  , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11373
  {   4, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11374
  { 0, NULL, 0, 0, 0, NULL }
11375
};
11376
11377
static unsigned
11378
0
dissect_qsig_mcm_MCMNoNewArgumentExt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11379
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11380
0
                                 qsig_mcm_MCMNoNewArgumentExt_choice, hf_index, ett_qsig_mcm_MCMNoNewArgumentExt,
11381
0
                                 NULL);
11382
11383
0
  return offset;
11384
0
}
11385
11386
11387
static const ber_sequence_t qsig_mcm_MCMNoNewMsgArg_sequence[] = {
11388
  { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11389
  { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11390
  { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11391
  { &hf_qsig_mcm_argumentExtMCMNoNew, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMNoNewArgumentExt },
11392
  { NULL, 0, 0, 0, NULL }
11393
};
11394
11395
static unsigned
11396
0
dissect_qsig_mcm_MCMNoNewMsgArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11397
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11398
0
                                   qsig_mcm_MCMNoNewMsgArg_sequence, hf_index, ett_qsig_mcm_MCMNoNewMsgArg);
11399
11400
0
  return offset;
11401
0
}
11402
11403
11404
11405
static unsigned
11406
0
dissect_qsig_mcm_Priority(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11407
0
  offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
11408
0
                                                            0U, 9U, hf_index, NULL);
11409
11410
0
  return offset;
11411
0
}
11412
11413
11414
static const ber_sequence_t qsig_mcm_AddressHeader_sequence[] = {
11415
  { &hf_qsig_mcm_originatorNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11416
  { &hf_qsig_mcm_timeStamp  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_TimeStamp },
11417
  { &hf_qsig_mcm_ahpriority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_Priority },
11418
  { NULL, 0, 0, 0, NULL }
11419
};
11420
11421
static unsigned
11422
0
dissect_qsig_mcm_AddressHeader(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11423
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11424
0
                                   qsig_mcm_AddressHeader_sequence, hf_index, ett_qsig_mcm_AddressHeader);
11425
11426
0
  return offset;
11427
0
}
11428
11429
11430
static const ber_sequence_t qsig_mcm_CompleteInfo_sequence_of[1] = {
11431
  { &hf_qsig_mcm_CompleteInfo_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_AddressHeader },
11432
};
11433
11434
static unsigned
11435
0
dissect_qsig_mcm_CompleteInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11436
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11437
0
                                      qsig_mcm_CompleteInfo_sequence_of, hf_index, ett_qsig_mcm_CompleteInfo);
11438
11439
0
  return offset;
11440
0
}
11441
11442
11443
static const ber_sequence_t qsig_mcm_CompressedInfo_sequence[] = {
11444
  { &hf_qsig_mcm_nrOfMessages, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NrOfMessages },
11445
  { &hf_qsig_mcm_lastTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11446
  { &hf_qsig_mcm_highestPriority, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_Priority },
11447
  { NULL, 0, 0, 0, NULL }
11448
};
11449
11450
static unsigned
11451
0
dissect_qsig_mcm_CompressedInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11452
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11453
0
                                   qsig_mcm_CompressedInfo_sequence, hf_index, ett_qsig_mcm_CompressedInfo);
11454
11455
0
  return offset;
11456
0
}
11457
11458
11459
static const value_string qsig_mcm_MessageInfo_vals[] = {
11460
  {   0, "completeInfo" },
11461
  {   1, "compressedInfo" },
11462
  {   2, "noMsgsOfMsgType" },
11463
  { 0, NULL }
11464
};
11465
11466
static const ber_choice_t qsig_mcm_MessageInfo_choice[] = {
11467
  {   0, &hf_qsig_mcm_completeInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_CompleteInfo },
11468
  {   1, &hf_qsig_mcm_compressedInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_CompressedInfo },
11469
  {   2, &hf_qsig_mcm_noMsgsOfMsgType, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11470
  { 0, NULL, 0, 0, 0, NULL }
11471
};
11472
11473
static unsigned
11474
0
dissect_qsig_mcm_MessageInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11475
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11476
0
                                 qsig_mcm_MessageInfo_choice, hf_index, ett_qsig_mcm_MessageInfo,
11477
0
                                 NULL);
11478
11479
0
  return offset;
11480
0
}
11481
11482
11483
static const ber_sequence_t qsig_mcm_AllMsgInfo_sequence[] = {
11484
  { &hf_qsig_mcm_newMsgInfo , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MessageInfo },
11485
  { &hf_qsig_mcm_retrievedMsgInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MessageInfo },
11486
  { NULL, 0, 0, 0, NULL }
11487
};
11488
11489
static unsigned
11490
0
dissect_qsig_mcm_AllMsgInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11491
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11492
0
                                   qsig_mcm_AllMsgInfo_sequence, hf_index, ett_qsig_mcm_AllMsgInfo);
11493
11494
0
  return offset;
11495
0
}
11496
11497
11498
static const value_string qsig_mcm_UpdateInfo_vals[] = {
11499
  {   0, "newMsgInfoOnly" },
11500
  {   1, "retrievedMsgInfoOnly" },
11501
  {   2, "allMsgInfo" },
11502
  { 0, NULL }
11503
};
11504
11505
static const ber_choice_t qsig_mcm_UpdateInfo_choice[] = {
11506
  {   0, &hf_qsig_mcm_newMsgInfoOnly, BER_CLASS_CON, 1, 0, dissect_qsig_mcm_MessageInfo },
11507
  {   1, &hf_qsig_mcm_retrievedMsgInfoOnly, BER_CLASS_CON, 2, 0, dissect_qsig_mcm_MessageInfo },
11508
  {   2, &hf_qsig_mcm_allMsgInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_AllMsgInfo },
11509
  { 0, NULL, 0, 0, 0, NULL }
11510
};
11511
11512
static unsigned
11513
0
dissect_qsig_mcm_UpdateInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11514
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11515
0
                                 qsig_mcm_UpdateInfo_choice, hf_index, ett_qsig_mcm_UpdateInfo,
11516
0
                                 NULL);
11517
11518
0
  return offset;
11519
0
}
11520
11521
11522
11523
static unsigned
11524
0
dissect_qsig_mcm_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11525
0
  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
11526
11527
0
  return offset;
11528
0
}
11529
11530
11531
static const ber_sequence_t qsig_mcm_MCMUpdateArg_sequence[] = {
11532
  { &hf_qsig_mcm_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11533
  { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11534
  { &hf_qsig_mcm_updateInfo , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_UpdateInfo },
11535
  { &hf_qsig_mcm_moreInfoFollows, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_BOOLEAN },
11536
  { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11537
  { NULL, 0, 0, 0, NULL }
11538
};
11539
11540
static unsigned
11541
0
dissect_qsig_mcm_MCMUpdateArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11542
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11543
0
                                   qsig_mcm_MCMUpdateArg_sequence, hf_index, ett_qsig_mcm_MCMUpdateArg);
11544
11545
0
  return offset;
11546
0
}
11547
11548
11549
static const value_string qsig_mcm_MCMUpdArgArgumentExt_vals[] = {
11550
  {   3, "extension" },
11551
  {   4, "multipleExtension" },
11552
  { 0, NULL }
11553
};
11554
11555
static const ber_choice_t qsig_mcm_MCMUpdArgArgumentExt_choice[] = {
11556
  {   3, &hf_qsig_mcm_extension  , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11557
  {   4, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11558
  { 0, NULL, 0, 0, 0, NULL }
11559
};
11560
11561
static unsigned
11562
0
dissect_qsig_mcm_MCMUpdArgArgumentExt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11563
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11564
0
                                 qsig_mcm_MCMUpdArgArgumentExt_choice, hf_index, ett_qsig_mcm_MCMUpdArgArgumentExt,
11565
0
                                 NULL);
11566
11567
0
  return offset;
11568
0
}
11569
11570
11571
static const ber_sequence_t qsig_mcm_MCMUpdateReqArg_sequence[] = {
11572
  { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11573
  { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11574
  { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11575
  { &hf_qsig_mcm_argumentExtMCMUpdArg, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMUpdArgArgumentExt },
11576
  { NULL, 0, 0, 0, NULL }
11577
};
11578
11579
static unsigned
11580
0
dissect_qsig_mcm_MCMUpdateReqArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11581
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11582
0
                                   qsig_mcm_MCMUpdateReqArg_sequence, hf_index, ett_qsig_mcm_MCMUpdateReqArg);
11583
11584
0
  return offset;
11585
0
}
11586
11587
11588
static const value_string qsig_mcm_MCMUpdResArgumentExt_vals[] = {
11589
  {   6, "extension" },
11590
  {   7, "multipleExtension" },
11591
  { 0, NULL }
11592
};
11593
11594
static const ber_choice_t qsig_mcm_MCMUpdResArgumentExt_choice[] = {
11595
  {   6, &hf_qsig_mcm_extension  , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11596
  {   7, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11597
  { 0, NULL, 0, 0, 0, NULL }
11598
};
11599
11600
static unsigned
11601
0
dissect_qsig_mcm_MCMUpdResArgumentExt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11602
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11603
0
                                 qsig_mcm_MCMUpdResArgumentExt_choice, hf_index, ett_qsig_mcm_MCMUpdResArgumentExt,
11604
0
                                 NULL);
11605
11606
0
  return offset;
11607
0
}
11608
11609
11610
static const ber_sequence_t qsig_mcm_MCMUpdateReqResElt_sequence[] = {
11611
  { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11612
  { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11613
  { &hf_qsig_mcm_nrOfMessages, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NrOfMessages },
11614
  { &hf_qsig_mcm_originatingNr, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
11615
  { &hf_qsig_mcm_timestamp  , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11616
  { &hf_qsig_mcm_priority   , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_9 },
11617
  { &hf_qsig_mcm_argumentExtMCMUpdRes, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMUpdResArgumentExt },
11618
  { NULL, 0, 0, 0, NULL }
11619
};
11620
11621
static unsigned
11622
0
dissect_qsig_mcm_MCMUpdateReqResElt(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11623
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11624
0
                                   qsig_mcm_MCMUpdateReqResElt_sequence, hf_index, ett_qsig_mcm_MCMUpdateReqResElt);
11625
11626
0
  return offset;
11627
0
}
11628
11629
11630
static const ber_sequence_t qsig_mcm_MCMUpdateReqRes_sequence_of[1] = {
11631
  { &hf_qsig_mcm_MCMUpdateReqRes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MCMUpdateReqResElt },
11632
};
11633
11634
static unsigned
11635
0
dissect_qsig_mcm_MCMUpdateReqRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11636
0
  offset = dissect_ber_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
11637
0
                                                  1, 10, qsig_mcm_MCMUpdateReqRes_sequence_of, hf_index, ett_qsig_mcm_MCMUpdateReqRes);
11638
11639
0
  return offset;
11640
0
}
11641
11642
11643
11644
static unsigned
11645
0
dissect_qsig_mcm_MCMDummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11646
0
  offset = dissect_qsig_mcm_MCMExtensions(implicit_tag, tvb, offset, actx, tree, hf_index);
11647
11648
0
  return offset;
11649
0
}
11650
11651
/*--- PDUs ---*/
11652
11653
0
static int dissect_qsig_mcm_MCMNewMsgArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11654
0
  unsigned offset = 0;
11655
0
  asn1_ctx_t asn1_ctx;
11656
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11657
0
  offset = dissect_qsig_mcm_MCMNewMsgArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU);
11658
0
  return offset;
11659
0
}
11660
0
static int dissect_qsig_mcm_MCMDummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11661
0
  unsigned offset = 0;
11662
0
  asn1_ctx_t asn1_ctx;
11663
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11664
0
  offset = dissect_qsig_mcm_MCMDummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU);
11665
0
  return offset;
11666
0
}
11667
0
static int dissect_qsig_mcm_MCMNoNewMsgArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11668
0
  unsigned offset = 0;
11669
0
  asn1_ctx_t asn1_ctx;
11670
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11671
0
  offset = dissect_qsig_mcm_MCMNoNewMsgArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU);
11672
0
  return offset;
11673
0
}
11674
0
static int dissect_qsig_mcm_MCMUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11675
0
  unsigned offset = 0;
11676
0
  asn1_ctx_t asn1_ctx;
11677
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11678
0
  offset = dissect_qsig_mcm_MCMUpdateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU);
11679
0
  return offset;
11680
0
}
11681
0
static int dissect_qsig_mcm_MCMUpdateReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11682
0
  unsigned offset = 0;
11683
0
  asn1_ctx_t asn1_ctx;
11684
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11685
0
  offset = dissect_qsig_mcm_MCMUpdateReqArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU);
11686
0
  return offset;
11687
0
}
11688
0
static int dissect_qsig_mcm_MCMUpdateReqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11689
0
  unsigned offset = 0;
11690
0
  asn1_ctx_t asn1_ctx;
11691
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11692
0
  offset = dissect_qsig_mcm_MCMUpdateReqRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU);
11693
0
  return offset;
11694
0
}
11695
0
static int dissect_qsig_mcm_MCMServiceArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11696
0
  unsigned offset = 0;
11697
0
  asn1_ctx_t asn1_ctx;
11698
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11699
0
  offset = dissect_qsig_mcm_MCMServiceArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU);
11700
0
  return offset;
11701
0
}
11702
0
static int dissect_qsig_mcm_MCMInterrogateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11703
0
  unsigned offset = 0;
11704
0
  asn1_ctx_t asn1_ctx;
11705
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11706
0
  offset = dissect_qsig_mcm_MCMInterrogateArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU);
11707
0
  return offset;
11708
0
}
11709
0
static int dissect_qsig_mcm_MCMInterrogateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11710
0
  unsigned offset = 0;
11711
0
  asn1_ctx_t asn1_ctx;
11712
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11713
0
  offset = dissect_qsig_mcm_MCMInterrogateRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU);
11714
0
  return offset;
11715
0
}
11716
0
static int dissect_qsig_mcm_MCMailboxFullArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11717
0
  unsigned offset = 0;
11718
0
  asn1_ctx_t asn1_ctx;
11719
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11720
0
  offset = dissect_qsig_mcm_MCMailboxFullArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU);
11721
0
  return offset;
11722
0
}
11723
0
static int dissect_qsig_mcm_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11724
0
  unsigned offset = 0;
11725
0
  asn1_ctx_t asn1_ctx;
11726
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11727
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_Extension_PDU);
11728
0
  return offset;
11729
0
}
11730
11731
11732
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
11733
11734
11735
static const ber_sequence_t qsig_mid_PartyInfo_sequence[] = {
11736
  { &hf_qsig_mid_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressUnscreened },
11737
  { &hf_qsig_mid_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11738
  { &hf_qsig_mid_messageCentreID, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MsgCentreId },
11739
  { NULL, 0, 0, 0, NULL }
11740
};
11741
11742
static unsigned
11743
0
dissect_qsig_mid_PartyInfo(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11744
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11745
0
                                   qsig_mid_PartyInfo_sequence, hf_index, ett_qsig_mid_PartyInfo);
11746
11747
0
  return offset;
11748
0
}
11749
11750
11751
11752
static unsigned
11753
0
dissect_qsig_mid_BMPString(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11754
0
  offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_BMPString,
11755
0
                                            actx, tree, tvb, offset, hf_index,
11756
0
                                            NULL);
11757
11758
0
  return offset;
11759
0
}
11760
11761
11762
11763
static unsigned
11764
0
dissect_qsig_mid_UTF8String(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11765
0
  offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String,
11766
0
                                            actx, tree, tvb, offset, hf_index,
11767
0
                                            NULL);
11768
11769
0
  return offset;
11770
0
}
11771
11772
11773
static const value_string qsig_mid_String_vals[] = {
11774
  {   0, "stringBmp" },
11775
  {   1, "stringUtf8" },
11776
  { 0, NULL }
11777
};
11778
11779
static const ber_choice_t qsig_mid_String_choice[] = {
11780
  {   0, &hf_qsig_mid_stringBmp  , BER_CLASS_UNI, BER_UNI_TAG_BMPString, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_BMPString },
11781
  {   1, &hf_qsig_mid_stringUtf8 , BER_CLASS_UNI, BER_UNI_TAG_UTF8String, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_UTF8String },
11782
  { 0, NULL, 0, 0, 0, NULL }
11783
};
11784
11785
static unsigned
11786
0
dissect_qsig_mid_String(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11787
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11788
0
                                 qsig_mid_String_choice, hf_index, ett_qsig_mid_String,
11789
0
                                 NULL);
11790
11791
0
  return offset;
11792
0
}
11793
11794
11795
11796
static unsigned
11797
0
dissect_qsig_mid_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11798
0
  offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
11799
11800
0
  return offset;
11801
0
}
11802
11803
11804
static const ber_sequence_t qsig_mid_SEQUENCE_OF_Extension_sequence_of[1] = {
11805
  { &hf_qsig_mid_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
11806
};
11807
11808
static unsigned
11809
0
dissect_qsig_mid_SEQUENCE_OF_Extension(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11810
0
  offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11811
0
                                      qsig_mid_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mid_SEQUENCE_OF_Extension);
11812
11813
0
  return offset;
11814
0
}
11815
11816
11817
static const value_string qsig_mid_MIDExtensions_vals[] = {
11818
  {   0, "none" },
11819
  {   1, "extension" },
11820
  {   2, "multipleExtension" },
11821
  { 0, NULL }
11822
};
11823
11824
static const ber_choice_t qsig_mid_MIDExtensions_choice[] = {
11825
  {   0, &hf_qsig_mid_none       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_NULL },
11826
  {   1, &hf_qsig_mid_extension  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11827
  {   2, &hf_qsig_mid_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mid_SEQUENCE_OF_Extension },
11828
  { 0, NULL, 0, 0, 0, NULL }
11829
};
11830
11831
static unsigned
11832
0
dissect_qsig_mid_MIDExtensions(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11833
0
  offset = dissect_ber_choice(actx, tree, tvb, offset,
11834
0
                                 qsig_mid_MIDExtensions_choice, hf_index, ett_qsig_mid_MIDExtensions,
11835
0
                                 NULL);
11836
11837
0
  return offset;
11838
0
}
11839
11840
11841
static const ber_sequence_t qsig_mid_MIDMailboxAuthArg_sequence[] = {
11842
  { &hf_qsig_mid_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_PartyInfo },
11843
  { &hf_qsig_mid_servedUserName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
11844
  { &hf_qsig_mid_mailBox    , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11845
  { &hf_qsig_mid_password   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11846
  { &hf_qsig_mid_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_MIDExtensions },
11847
  { NULL, 0, 0, 0, NULL }
11848
};
11849
11850
static unsigned
11851
0
dissect_qsig_mid_MIDMailboxAuthArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11852
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11853
0
                                   qsig_mid_MIDMailboxAuthArg_sequence, hf_index, ett_qsig_mid_MIDMailboxAuthArg);
11854
11855
0
  return offset;
11856
0
}
11857
11858
11859
static const ber_sequence_t qsig_mid_MIDMailboxIDArg_sequence[] = {
11860
  { &hf_qsig_mid_partyInfo  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_PartyInfo },
11861
  { &hf_qsig_mid_servedUserName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
11862
  { &hf_qsig_mid_mailBox    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11863
  { &hf_qsig_mid_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_MIDExtensions },
11864
  { NULL, 0, 0, 0, NULL }
11865
};
11866
11867
static unsigned
11868
0
dissect_qsig_mid_MIDMailboxIDArg(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11869
0
  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11870
0
                                   qsig_mid_MIDMailboxIDArg_sequence, hf_index, ett_qsig_mid_MIDMailboxIDArg);
11871
11872
0
  return offset;
11873
0
}
11874
11875
11876
11877
static unsigned
11878
0
dissect_qsig_mid_MIDDummyRes(bool implicit_tag _U_, tvbuff_t *tvb _U_, unsigned offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11879
0
  offset = dissect_qsig_mid_MIDExtensions(implicit_tag, tvb, offset, actx, tree, hf_index);
11880
11881
0
  return offset;
11882
0
}
11883
11884
/*--- PDUs ---*/
11885
11886
0
static int dissect_qsig_mid_MIDMailboxAuthArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11887
0
  unsigned offset = 0;
11888
0
  asn1_ctx_t asn1_ctx;
11889
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11890
0
  offset = dissect_qsig_mid_MIDMailboxAuthArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU);
11891
0
  return offset;
11892
0
}
11893
0
static int dissect_qsig_mid_MIDDummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11894
0
  unsigned offset = 0;
11895
0
  asn1_ctx_t asn1_ctx;
11896
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11897
0
  offset = dissect_qsig_mid_MIDDummyRes(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDDummyRes_PDU);
11898
0
  return offset;
11899
0
}
11900
0
static int dissect_qsig_mid_MIDMailboxIDArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11901
0
  unsigned offset = 0;
11902
0
  asn1_ctx_t asn1_ctx;
11903
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11904
0
  offset = dissect_qsig_mid_MIDMailboxIDArg(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU);
11905
0
  return offset;
11906
0
}
11907
0
static int dissect_qsig_mid_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11908
0
  unsigned offset = 0;
11909
0
  asn1_ctx_t asn1_ctx;
11910
0
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo);
11911
0
  offset = dissect_qsig_Extension(false, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_Extension_PDU);
11912
0
  return offset;
11913
0
}
11914
11915
11916
typedef struct _qsig_op_t {
11917
  uint32_t opcode;
11918
  dissector_t arg_pdu;
11919
  dissector_t res_pdu;
11920
} qsig_op_t;
11921
11922
static const qsig_op_t qsig_op_tab[] = {
11923
11924
/* --- Module General-Error-List --- --- ---                                  */
11925
11926
/* Unknown or empty loop list OPERATION */
11927
11928
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
11929
11930
/* Unknown or empty loop list OPERATION */
11931
11932
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
11933
11934
  /* callingName              */ {   0, dissect_qsig_na_NameArg_PDU, NULL },
11935
  /* calledName               */ {   1, dissect_qsig_na_NameArg_PDU, NULL },
11936
  /* connectedName            */ {   2, dissect_qsig_na_NameArg_PDU, NULL },
11937
  /* busyName                 */ {   3, dissect_qsig_na_NameArg_PDU, NULL },
11938
11939
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
11940
11941
  /* activateDiversionQ       */ {  15, dissect_qsig_cf_ARG_activateDiversionQ_PDU, dissect_qsig_cf_RES_activateDiversionQ_PDU },
11942
  /* deactivateDiversionQ     */ {  16, dissect_qsig_cf_ARG_deactivateDiversionQ_PDU, dissect_qsig_cf_RES_deactivateDiversionQ_PDU },
11943
  /* interrogateDiversionQ    */ {  17, dissect_qsig_cf_ARG_interrogateDiversionQ_PDU, dissect_qsig_cf_IntResultList_PDU },
11944
  /* checkRestriction         */ {  18, dissect_qsig_cf_ARG_checkRestriction_PDU, dissect_qsig_cf_RES_checkRestriction_PDU },
11945
  /* callRerouteing           */ {  19, dissect_qsig_cf_ARG_callRerouteing_PDU, dissect_qsig_cf_RES_callRerouteing_PDU },
11946
  /* divertingLegInformation1 */ {  20, dissect_qsig_cf_ARG_divertingLegInformation1_PDU, NULL },
11947
  /* divertingLegInformation2 */ {  21, dissect_qsig_cf_ARG_divertingLegInformation2_PDU, NULL },
11948
  /* divertingLegInformation3 */ {  22, dissect_qsig_cf_ARG_divertingLegInformation3_PDU, NULL },
11949
  /* cfnrDivertedLegFailed    */ {  23, dissect_qsig_cf_ARG_cfnrDivertedLegFailed_PDU, NULL },
11950
11951
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
11952
11953
  /* pathReplaceInvite        */ {  86, dissect_qsig_pr_DummyArg_PDU, NULL },
11954
  /* pathReplacePropose       */ {   4, dissect_qsig_pr_PRProposeArg_PDU, NULL },
11955
  /* pathReplaceSetup         */ {   5, dissect_qsig_pr_PRSetupArg_PDU, dissect_qsig_pr_DummyResult_PDU },
11956
  /* pathReplaceRetain        */ {   6, dissect_qsig_pr_PRRetainArg_PDU, dissect_qsig_pr_DummyResult_PDU },
11957
11958
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
11959
11960
  /* callTransferIdentify     */ {   7, dissect_qsig_ct_DummyArg_PDU, dissect_qsig_ct_CTIdentifyRes_PDU },
11961
  /* callTransferAbandon      */ {   8, dissect_qsig_ct_DummyArg_PDU, NULL },
11962
  /* callTransferInitiate     */ {   9, dissect_qsig_ct_CTInitiateArg_PDU, dissect_qsig_ct_DummyRes_PDU },
11963
  /* callTransferSetup        */ {  10, dissect_qsig_ct_CTSetupArg_PDU, dissect_qsig_ct_DummyRes_PDU },
11964
  /* callTransferActive       */ {  11, dissect_qsig_ct_CTActiveArg_PDU, NULL },
11965
  /* callTransferComplete     */ {  12, dissect_qsig_ct_CTCompleteArg_PDU, NULL },
11966
  /* callTransferUpdate       */ {  13, dissect_qsig_ct_CTUpdateArg_PDU, NULL },
11967
  /* subaddressTransfer       */ {  14, dissect_qsig_ct_SubaddressTransferArg_PDU, NULL },
11968
11969
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
11970
11971
  /* ccbsRequest              */ {  40, dissect_qsig_cc_CcRequestArg_PDU, dissect_qsig_cc_CcRequestRes_PDU },
11972
  /* ccnrRequest              */ {  27, dissect_qsig_cc_CcRequestArg_PDU, dissect_qsig_cc_CcRequestRes_PDU },
11973
  /* ccCancel                 */ {  28, dissect_qsig_cc_CcOptionalArg_PDU, NULL },
11974
  /* ccExecPossible           */ {  29, dissect_qsig_cc_CcOptionalArg_PDU, NULL },
11975
  /* ccPathReserve            */ {  30, dissect_qsig_cc_CcExtension_PDU, dissect_qsig_cc_CcExtension_PDU },
11976
  /* ccRingout                */ {  31, dissect_qsig_cc_CcExtension_PDU, NULL },
11977
  /* ccSuspend                */ {  32, dissect_qsig_cc_CcExtension_PDU, NULL },
11978
  /* ccResume                 */ {  33, dissect_qsig_cc_CcExtension_PDU, NULL },
11979
11980
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
11981
11982
  /* pathRetain               */ {  41, dissect_qsig_co_PathRetainArg_PDU, NULL },
11983
  /* serviceAvailable         */ {  42, dissect_qsig_co_ServiceAvailableArg_PDU, NULL },
11984
  /* callOfferRequest         */ {  34, dissect_qsig_co_DummyArg_PDU, dissect_qsig_co_DummyRes_PDU },
11985
  /* cfbOverride              */ {  49, dissect_qsig_co_DummyArg_PDU, NULL },
11986
11987
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
11988
11989
  /* doNotDisturbActivateQ    */ {  35, dissect_qsig_dnd_DNDActivateArg_PDU, dissect_qsig_dnd_DNDActivateRes_PDU },
11990
  /* doNotDisturbDeactivateQ  */ {  36, dissect_qsig_dnd_DNDDeactivateArg_PDU, dissect_qsig_dnd_DummyRes_PDU },
11991
  /* doNotDisturbInterrogateQ */ {  37, dissect_qsig_dnd_DNDInterrogateArg_PDU, dissect_qsig_dnd_DNDInterrogateRes_PDU },
11992
  /* doNotDisturbOverrideQ    */ {  38, dissect_qsig_dnd_DNDOverrideArg_PDU, NULL },
11993
  /* pathRetain               */ {  41, dissect_qsig_dnd_PathRetainArg_PDU, NULL },
11994
  /* serviceAvailable         */ {  42, dissect_qsig_dnd_ServiceAvailableArg_PDU, NULL },
11995
  /* doNotDisturbOvrExecuteQ  */ {  39, dissect_qsig_dnd_DummyArg_PDU, dissect_qsig_dnd_DummyRes_PDU },
11996
11997
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
11998
11999
  /* pathRetain               */ {  41, dissect_qsig_ci_PathRetainArg_PDU, NULL },
12000
  /* serviceAvailable         */ {  42, dissect_qsig_ci_ServiceAvailableArg_PDU, NULL },
12001
  /* callIntrusionRequest     */ {  43, dissect_qsig_ci_CIRequestArg_PDU, dissect_qsig_ci_CIRequestRes_PDU },
12002
  /* callIntrusionGetCIPL     */ {  44, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_CIGetCIPLRes_PDU },
12003
  /* callIntrusionForcedRelease */ {  46, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12004
  /* callIntrusionIsolate     */ {  45, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12005
  /* callIntrusionWOBRequest  */ {  47, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12006
  /* callIntrusionCompleted   */ {  48, dissect_qsig_ci_DummyArg_PDU, NULL },
12007
  /* cfbOverride              */ {  49, dissect_qsig_ci_DummyArg_PDU, NULL },
12008
12009
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
12010
12011
  /* aocRate                  */ {  63, dissect_qsig_aoc_AocRateArg_PDU, NULL },
12012
  /* aocInterim               */ {  62, dissect_qsig_aoc_AocInterimArg_PDU, NULL },
12013
  /* aocFinal                 */ {  61, dissect_qsig_aoc_AocFinalArg_PDU, NULL },
12014
  /* chargeRequest            */ {  59, dissect_qsig_aoc_ChargeRequestArg_PDU, dissect_qsig_aoc_ChargeRequestRes_PDU },
12015
  /* getFinalCharge           */ {  60, dissect_qsig_aoc_DummyArg_PDU, NULL },
12016
  /* aocComplete              */ {  64, dissect_qsig_aoc_AocCompleteArg_PDU, dissect_qsig_aoc_AocCompleteRes_PDU },
12017
  /* aocDivChargeReq          */ {  65, dissect_qsig_aoc_AocDivChargeReqArg_PDU, NULL },
12018
12019
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
12020
12021
  /* recallAlerting           */ {  57, dissect_qsig_re_ReAlertingArg_PDU, NULL },
12022
  /* recallAnswered           */ {  58, dissect_qsig_re_ReAnswerArg_PDU, NULL },
12023
12024
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
12025
12026
  /* synchronizationRequest   */ {  78, dissect_qsig_sync_SynchronizationReqArg_PDU, dissect_qsig_sync_SynchronizationReqRes_PDU },
12027
  /* synchronizationInfo      */ {  79, dissect_qsig_sync_SynchronizationInfoArg_PDU, NULL },
12028
12029
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
12030
12031
  /* cintLegInformation1      */ {  66, dissect_qsig_cint_CintInformation1Arg_PDU, NULL },
12032
  /* cintLegInformation2      */ {  67, dissect_qsig_cint_CintInformation2Arg_PDU, NULL },
12033
  /* cintCondition            */ {  68, dissect_qsig_cint_CintCondArg_PDU, NULL },
12034
  /* cintDisable              */ {  69, dissect_qsig_cint_CintExtension_PDU, NULL },
12035
  /* cintEnable               */ {  70, dissect_qsig_cint_CintExtension_PDU, NULL },
12036
12037
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
12038
12039
  /* cmnRequest               */ {  84, dissect_qsig_cmn_DummyArg_PDU, dissect_qsig_cmn_CmnArg_PDU },
12040
  /* cmnInform                */ {  85, dissect_qsig_cmn_CmnArg_PDU, NULL },
12041
12042
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
12043
12044
  /* callInterruptionRequest  */ {  87, dissect_qsig_cpi_CPIRequestArg_PDU, NULL },
12045
  /* callProtectionRequest    */ {  88, dissect_qsig_cpi_CPIPRequestArg_PDU, NULL },
12046
12047
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
12048
12049
  /* pumRegistr               */ {  89, dissect_qsig_pumr_PumRegistrArg_PDU, dissect_qsig_pumr_PumRegistrRes_PDU },
12050
  /* pumDelReg                */ {  90, dissect_qsig_pumr_PumDelRegArg_PDU, dissect_qsig_pumr_DummyRes_PDU },
12051
  /* pumDe-reg                */ {  91, dissect_qsig_pumr_PumDe_regArg_PDU, dissect_qsig_pumr_DummyRes_PDU },
12052
  /* pumInterrog              */ {  92, dissect_qsig_pumr_PumInterrogArg_PDU, dissect_qsig_pumr_PumInterrogRes_PDU },
12053
12054
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
12055
12056
  /* pumiEnquiry              */ {  93, dissect_qsig_pumch_EnquiryArg_PDU, dissect_qsig_pumch_EnquiryRes_PDU },
12057
  /* pumiDivert               */ {  94, dissect_qsig_pumch_DivertArg_PDU, dissect_qsig_pumch_DummyRes_PDU },
12058
  /* pumiInform               */ {  95, dissect_qsig_pumch_InformArg_PDU, NULL },
12059
  /* pumoCall                 */ {  96, dissect_qsig_pumch_PumoArg_PDU, NULL },
12060
12061
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
12062
12063
  /* ssctInitiate             */ {  99, dissect_qsig_ssct_SSCTInitiateArg_PDU, dissect_qsig_ssct_DummyRes_PDU },
12064
  /* ssctSetup                */ { 100, dissect_qsig_ssct_SSCTSetupArg_PDU, NULL },
12065
  /* ssctPostDial             */ { 101, dissect_qsig_ssct_DummyArg_PDU, NULL },
12066
  /* ssctDigitInfo            */ { 102, dissect_qsig_ssct_SSCTDigitInfoArg_PDU, NULL },
12067
12068
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
12069
12070
  /* locUpdate                */ {  50, dissect_qsig_wtmlr_LocUpdArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12071
  /* locDelete                */ {  51, dissect_qsig_wtmlr_LocDelArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12072
  /* locDeReg                 */ {  52, dissect_qsig_wtmlr_LocDeRegArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12073
  /* pisnEnquiry              */ {  53, dissect_qsig_wtmlr_PisnEnqArg_PDU, dissect_qsig_wtmlr_PisnEnqRes_PDU },
12074
  /* getRRCInf                */ {  97, dissect_qsig_wtmlr_GetRRCInfArg_PDU, dissect_qsig_wtmlr_GetRRCInfRes_PDU },
12075
  /* locInfoCheck             */ {  98, dissect_qsig_wtmlr_LocInfoCheckArg_PDU, dissect_qsig_wtmlr_LocInfoCheckRes_PDU },
12076
12077
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
12078
12079
  /* wtmiEnquiry              */ {  54, dissect_qsig_wtmch_EnquiryArg_PDU, dissect_qsig_wtmch_EnquiryRes_PDU },
12080
  /* wtmiDivert               */ {  55, dissect_qsig_wtmch_DivertArg_PDU, dissect_qsig_wtmch_DummyRes_PDU },
12081
  /* wtmiInform               */ {  56, dissect_qsig_wtmch_InformArg_PDU, NULL },
12082
  /* wtmoCall                 */ {  71, dissect_qsig_wtmch_WtmoArg_PDU, NULL },
12083
12084
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
12085
12086
  /* authWtmUser              */ {  72, dissect_qsig_wtmau_AuthWtmArg_PDU, dissect_qsig_wtmau_AuthWtmRes_PDU },
12087
  /* getWtatParam             */ {  73, dissect_qsig_wtmau_WtatParamArg_PDU, dissect_qsig_wtmau_WtatParamRes_PDU },
12088
  /* wtatParamEnq             */ {  74, dissect_qsig_wtmau_WtatParamArg_PDU, dissect_qsig_wtmau_WtatParamRes_PDU },
12089
  /* getWtanParam             */ {  75, dissect_qsig_wtmau_WtanParamArg_PDU, dissect_qsig_wtmau_WtanParamRes_PDU },
12090
  /* wtanParamEnq             */ {  76, dissect_qsig_wtmau_WtanParamArg_PDU, dissect_qsig_wtmau_WtanParamRes_PDU },
12091
  /* transferAuthParam        */ {  77, dissect_qsig_wtmau_ARG_transferAuthParam_PDU, NULL },
12092
12093
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
12094
12095
  /* display                  */ { 103, dissect_qsig_sd_DisplayArg_PDU, NULL },
12096
  /* keypad                   */ { 104, dissect_qsig_sd_KeypadArg_PDU, NULL },
12097
12098
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
12099
12100
  /* callIdentificationAssign */ { 105, dissect_qsig_cidl_CallIdentificationAssignArg_PDU, NULL },
12101
  /* callIdentificationUpdate */ { 106, dissect_qsig_cidl_CallIdentificationUpdateArg_PDU, NULL },
12102
12103
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
12104
12105
  /* smsSubmit                */ { 107, dissect_qsig_sms_SmsSubmitArg_PDU, dissect_qsig_sms_SmsSubmitRes_PDU },
12106
  /* smsDeliver               */ { 108, dissect_qsig_sms_SmsDeliverArg_PDU, dissect_qsig_sms_SmsDeliverRes_PDU },
12107
  /* smsStatusReport          */ { 109, dissect_qsig_sms_SmsStatusReportArg_PDU, dissect_qsig_sms_SmsStatusReportRes_PDU },
12108
  /* smsCommand               */ { 110, dissect_qsig_sms_SmsCommandArg_PDU, dissect_qsig_sms_SmsCommandRes_PDU },
12109
  /* scAlert                  */ { 111, dissect_qsig_sms_ScAlertArg_PDU, dissect_qsig_sms_DummyRes_PDU },
12110
12111
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
12112
12113
  /* mCRequest                */ { 112, dissect_qsig_mcr_MCRequestArg_PDU, dissect_qsig_mcr_MCRequestResult_PDU },
12114
  /* mCInform                 */ { 113, dissect_qsig_mcr_MCInformArg_PDU, NULL },
12115
  /* mCAlerting               */ { 114, dissect_qsig_mcr_MCAlertingArg_PDU, NULL },
12116
12117
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
12118
12119
  /* mCMNewMsg                */ {  80, dissect_qsig_mcm_MCMNewMsgArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12120
  /* mCMNoNewMsg              */ {  81, dissect_qsig_mcm_MCMNoNewMsgArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12121
  /* mCMUpdate                */ { 115, dissect_qsig_mcm_MCMUpdateArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12122
  /* mCMUpdateReq             */ {  82, dissect_qsig_mcm_MCMUpdateReqArg_PDU, dissect_qsig_mcm_MCMUpdateReqRes_PDU },
12123
  /* mCMService               */ { 116, dissect_qsig_mcm_MCMServiceArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12124
  /* mCMInterrogate           */ { 117, dissect_qsig_mcm_MCMInterrogateArg_PDU, dissect_qsig_mcm_MCMInterrogateRes_PDU },
12125
  /* mCMailboxFull            */ { 118, dissect_qsig_mcm_MCMailboxFullArg_PDU, NULL },
12126
12127
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
12128
12129
  /* mIDMailboxAuth           */ { 119, dissect_qsig_mid_MIDMailboxAuthArg_PDU, dissect_qsig_mid_MIDDummyRes_PDU },
12130
  /* mIDMailboxID             */ { 120, dissect_qsig_mid_MIDMailboxIDArg_PDU, dissect_qsig_mid_MIDDummyRes_PDU },
12131
};
12132
12133
typedef struct _qsig_err_t {
12134
  uint32_t errcode;
12135
  dissector_t err_pdu;
12136
} qsig_err_t;
12137
12138
static const qsig_err_t qsig_err_tab[] = {
12139
12140
/* --- Module General-Error-List --- --- ---                                  */
12141
12142
  /* userNotSubscribed        */ {    0, NULL },
12143
  /* rejectedByNetwork        */ {    1, NULL },
12144
  /* rejectedByUser           */ {    2, NULL },
12145
  /* notAvailable             */ {    3, NULL },
12146
  /* insufficientInformation  */ {    5, NULL },
12147
  /* invalidServedUserNr      */ {    6, NULL },
12148
  /* invalidCallState         */ {    7, NULL },
12149
  /* basicServiceNotProvided  */ {    8, NULL },
12150
  /* notIncomingCall          */ {    9, NULL },
12151
  /* supplementaryServiceInteractionNotAllowed */ {   10, NULL },
12152
  /* resourceUnavailable      */ {   11, NULL },
12153
  /* callFailure              */ {   25, NULL },
12154
  /* proceduralError          */ {   43, NULL },
12155
12156
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
12157
12158
/* Unknown or empty loop list ERROR */
12159
12160
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
12161
12162
/* Unknown or empty loop list ERROR */
12163
12164
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
12165
12166
  /* invalidDivertedToNr      */ {   12, NULL },
12167
  /* specialServiceNr         */ {   14, NULL },
12168
  /* diversionToServedUserNr  */ {   15, NULL },
12169
  /* numberOfDiversionsExceeded */ {   24, NULL },
12170
  /* temporarilyUnavailable   */ { 1000, NULL },
12171
  /* notAuthorized            */ { 1007, NULL },
12172
  /* unspecified              */ { 1008, dissect_qsig_cf_Extension_PDU },
12173
12174
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
12175
12176
  /* temporarilyUnavailable   */ { 1000, NULL },
12177
  /* collision                */ { 1001, NULL },
12178
  /* criteriaPermanentlyUnachievable */ { 1002, NULL },
12179
  /* criteriaTemporarilyUnachievable */ { 1003, NULL },
12180
  /* invalidRerouteingNumber  */ { 1004, NULL },
12181
  /* unrecognizedCallIdentity */ { 1005, NULL },
12182
  /* establishmentFailure     */ { 1006, NULL },
12183
  /* unspecified              */ { 1008, dissect_qsig_pr_Extension_PDU },
12184
12185
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
12186
12187
  /* unspecified              */ { 1008, dissect_qsig_ct_Extension_PDU },
12188
  /* invalidRerouteingNumber  */ { 1004, NULL },
12189
  /* unrecognizedCallIdentity */ { 1005, NULL },
12190
  /* establishmentFailure     */ { 1006, NULL },
12191
12192
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
12193
12194
  /* unspecified              */ { 1008, dissect_qsig_cc_Extension_PDU },
12195
  /* shortTermRejection       */ { 1010, NULL },
12196
  /* longTermRejection        */ { 1011, NULL },
12197
  /* remoteUserBusyAgain      */ { 1012, NULL },
12198
  /* failureToMatch           */ { 1013, NULL },
12199
  /* failedDueToInterworking  */ { 1014, NULL },
12200
12201
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
12202
12203
  /* notBusy                  */ { 1009, NULL },
12204
  /* temporarilyUnavailable   */ { 1000, NULL },
12205
  /* unspecified              */ { 1008, dissect_qsig_co_Extension_PDU },
12206
12207
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
12208
12209
  /* temporarilyUnavailable   */ { 1000, NULL },
12210
  /* unspecified              */ { 1008, dissect_qsig_dnd_Extension_PDU },
12211
12212
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
12213
12214
  /* notBusy                  */ { 1009, NULL },
12215
  /* temporarilyUnavailable   */ { 1000, NULL },
12216
  /* notAuthorized            */ { 1007, NULL },
12217
  /* unspecified              */ { 1008, dissect_qsig_ci_Extension_PDU },
12218
12219
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
12220
12221
  /* unspecified              */ { 1008, dissect_qsig_aoc_Extension_PDU },
12222
  /* freeOfCharge             */ { 1016, NULL },
12223
12224
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
12225
12226
/* Unknown or empty loop list ERROR */
12227
12228
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
12229
12230
  /* unspecified              */ { 1008, dissect_qsig_sync_Extension_PDU },
12231
12232
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
12233
12234
/* Unknown or empty loop list ERROR */
12235
12236
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
12237
12238
/* Unknown or empty loop list ERROR */
12239
12240
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
12241
12242
/* Unknown or empty loop list ERROR */
12243
12244
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
12245
12246
  /* unspecified              */ { 1008, dissect_qsig_pumr_Extension_PDU },
12247
  /* notAuthorized            */ { 1007, NULL },
12248
  /* temporarilyUnavailable   */ { 1000, NULL },
12249
  /* pumUserNotSubscribedToThisServiceOpt */ { 1019, NULL },
12250
  /* pumUserFailedAuthentication */ { 1020, NULL },
12251
  /* hostingAddrInvalid       */ { 1021, NULL },
12252
  /* pumUserNotRegistered     */ { 1022, NULL },
12253
12254
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
12255
12256
  /* locationNotKnown         */ { 1015, NULL },
12257
  /* unspecified              */ { 1008, dissect_qsig_pumch_Extension_PDU },
12258
12259
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
12260
12261
  /* unspecified              */ { 1008, dissect_qsig_ssct_Extension_PDU },
12262
12263
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
12264
12265
  /* notAuthorized            */ { 1007, NULL },
12266
  /* temporarilyUnavailable   */ { 1000, NULL },
12267
  /* unspecified              */ { 1008, dissect_qsig_wtmlr_Extension_PDU },
12268
12269
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
12270
12271
  /* unspecified              */ { 1008, dissect_qsig_wtmch_Extension_PDU },
12272
  /* locationNotKnown         */ { 1015, NULL },
12273
12274
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
12275
12276
  /* notAuthorized            */ { 1007, NULL },
12277
  /* paramNotAvailable        */ { 1017, NULL },
12278
  /* temporarilyUnavailable   */ { 1000, NULL },
12279
  /* unspecified              */ { 1008, dissect_qsig_wtmau_Extension_PDU },
12280
12281
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
12282
12283
  /* unspecified              */ { 1008, dissect_qsig_sd_Extension_PDU },
12284
  /* noDisplayAvailable       */ { 1023, NULL },
12285
  /* displayTemporarilyNotAvailable */ { 1024, NULL },
12286
  /* notPresentable           */ { 1025, NULL },
12287
12288
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
12289
12290
/* Unknown or empty loop list ERROR */
12291
12292
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
12293
12294
  /* smsDeliverError          */ { 1026, dissect_qsig_sms_PAR_smsDeliverError_PDU },
12295
  /* smsSubmitError           */ { 1027, dissect_qsig_sms_PAR_smsSubmitError_PDU },
12296
  /* smsStatusReportError     */ { 1028, dissect_qsig_sms_PAR_smsStatusReportError_PDU },
12297
  /* smsCommandError          */ { 1029, dissect_qsig_sms_PAR_smsCommandError_PDU },
12298
  /* unspecified              */ { 1008, dissect_qsig_sms_SmsExtension_PDU },
12299
12300
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
12301
12302
  /* invalidDestinationNumber */ { 1030, NULL },
12303
  /* invalidCooperationNumber */ { 1031, NULL },
12304
  /* mCRequestNotAllowed      */ { 1032, NULL },
12305
  /* mCExecutionNotAllowed    */ { 1033, NULL },
12306
  /* mCDestUserBusy           */ { 1034, NULL },
12307
  /* mCCoopUserBusy           */ { 1035, NULL },
12308
  /* mCCoopUserRejected       */ { 1036, NULL },
12309
  /* unspecified              */ { 1008, dissect_qsig_mcr_Extension_PDU },
12310
12311
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
12312
12313
  /* mCMModeNotProvided       */ { 1037, NULL },
12314
  /* unspecified              */ { 1008, dissect_qsig_mcm_Extension_PDU },
12315
12316
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
12317
12318
  /* invalidMailbox           */ { 1039, NULL },
12319
  /* authorizationFailed      */ { 1040, NULL },
12320
  /* unspecified              */ { 1008, dissect_qsig_mid_Extension_PDU },
12321
};
12322
12323
1
static const qsig_op_t *get_op(uint32_t opcode) {
12324
1
  int i;
12325
12326
  /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
12327
122
  for (i = array_length(qsig_op_tab) - 1; i >= 0; i--)
12328
122
    if (qsig_op_tab[i].opcode == opcode)
12329
1
      return &qsig_op_tab[i];
12330
0
  return NULL;
12331
1
}
12332
12333
1
static int32_t get_service(uint32_t opcode) {
12334
1
  if (opcode >= (int)array_length(op2srv_tab))
12335
0
    return NO_SRV;
12336
1
  return op2srv_tab[opcode];
12337
1
}
12338
12339
0
static const qsig_err_t *get_err(uint32_t errcode) {
12340
0
  int i;
12341
12342
  /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
12343
0
  for (i = array_length(qsig_err_tab) - 1; i >= 0; i--)
12344
0
    if (qsig_err_tab[i].errcode == errcode)
12345
0
      return &qsig_err_tab[i];
12346
0
  return NULL;
12347
0
}
12348
12349
/*--- dissect_qsig_arg ------------------------------------------------------*/
12350
static int
12351
1
dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12352
1
  unsigned offset = 0;
12353
1
  rose_ctx_t *rctx;
12354
1
  uint32_t opcode = 0, service, oid_num;
12355
1
  const qsig_op_t *op_ptr = NULL;
12356
1
  const char *p, *oid;
12357
1
  proto_item *ti, *ti_tmp;
12358
1
  proto_tree *qsig_tree;
12359
12360
  /* Reject the packet if data is NULL */
12361
1
  if (data == NULL)
12362
0
    return 0;
12363
1
  rctx = get_rose_ctx(data);
12364
1
  DISSECTOR_ASSERT(rctx);
12365
12366
1
  if (rctx->d.pdu != 1)  /* invoke */
12367
0
    return offset;
12368
1
  if (rctx->d.code == 0) {  /* local */
12369
1
    opcode = rctx->d.code_local;
12370
1
    op_ptr = get_op(opcode);
12371
1
  } else if (rctx->d.code == 1) {  /* global */
12372
0
    oid = g_strrstr(rctx->d.code_global, ".");
12373
0
    if (oid != NULL) {
12374
0
     if (ws_strtou32(oid+1, NULL, &oid_num))
12375
0
        op_ptr = get_op(oid_num);
12376
0
    }
12377
0
    if (op_ptr)
12378
0
        opcode = op_ptr->opcode;
12379
0
  } else {
12380
0
    return offset;
12381
0
  }
12382
1
  if (!op_ptr)
12383
0
    return offset;
12384
1
  service = get_service(opcode);
12385
12386
1
  ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_captured_length(tvb), ENC_NA);
12387
1
  qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12388
12389
1
  proto_tree_add_uint(qsig_tree, hf_qsig_operation, tvb, 0, 0, opcode);
12390
1
  p = try_val_to_str(opcode, VALS(qsig_str_operation));
12391
1
  if (p) {
12392
1
    proto_item_append_text(ti, ": %s", p);
12393
1
    proto_item_append_text(rctx->d.code_item, " - %s", p);
12394
1
    if (rctx->apdu_depth >= 0)
12395
1
      proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12396
1
  }
12397
12398
1
  ti_tmp = proto_tree_add_uint(qsig_tree, hf_qsig_service, tvb, 0, 0, service);
12399
1
  p = try_val_to_str(service, VALS(qsig_str_service_name));
12400
1
  if (p) proto_item_append_text(ti_tmp, " - %s", p);
12401
12402
1
  if (op_ptr->arg_pdu)
12403
1
    offset = op_ptr->arg_pdu(tvb, pinfo, qsig_tree, NULL);
12404
0
  else
12405
0
    if (tvb_reported_length_remaining(tvb, offset) > 0) {
12406
0
      proto_tree_add_expert_remaining(tree, pinfo, &ei_qsig_unsupported_error_type, tvb, offset);
12407
0
      offset += tvb_captured_length_remaining(tvb, offset);
12408
0
    }
12409
12410
1
  return offset;
12411
1
}
12412
12413
/*--- dissect_qsig_res -------------------------------------------------------*/
12414
static int
12415
0
dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12416
0
  unsigned offset = 0;
12417
0
  rose_ctx_t *rctx;
12418
0
  uint32_t opcode, service;
12419
0
  const qsig_op_t *op_ptr;
12420
0
  const char *p;
12421
0
  proto_item *ti, *ti_tmp;
12422
0
  proto_tree *qsig_tree;
12423
12424
  /* Reject the packet if data is NULL */
12425
0
  if (data == NULL)
12426
0
    return 0;
12427
0
  rctx = get_rose_ctx(data);
12428
0
  DISSECTOR_ASSERT(rctx);
12429
12430
0
  if (rctx->d.pdu != 2)  /* returnResult */
12431
0
    return offset;
12432
0
  if (rctx->d.code != 0)  /* local */
12433
0
    return offset;
12434
0
  opcode = rctx->d.code_local;
12435
0
  op_ptr = get_op(opcode);
12436
0
  if (!op_ptr)
12437
0
    return offset;
12438
0
  service = get_service(opcode);
12439
12440
0
  ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_captured_length(tvb), ENC_NA);
12441
0
  qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12442
12443
0
  proto_tree_add_uint(qsig_tree, hf_qsig_operation, tvb, 0, 0, opcode);
12444
0
  p = try_val_to_str(opcode, VALS(qsig_str_operation));
12445
0
  if (p) {
12446
0
    proto_item_append_text(ti, ": %s", p);
12447
0
    proto_item_append_text(rctx->d.code_item, " - %s", p);
12448
0
    if (rctx->apdu_depth >= 0)
12449
0
      proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12450
0
  }
12451
12452
0
  ti_tmp = proto_tree_add_uint(qsig_tree, hf_qsig_service, tvb, 0, 0, service);
12453
0
  p = try_val_to_str(service, VALS(qsig_str_service_name));
12454
0
  if (p) proto_item_append_text(ti_tmp, " - %s", p);
12455
12456
0
  if (op_ptr->res_pdu)
12457
0
    offset = op_ptr->res_pdu(tvb, pinfo, qsig_tree, NULL);
12458
0
  else
12459
0
    if (tvb_reported_length_remaining(tvb, offset) > 0) {
12460
0
      proto_tree_add_expert_remaining(tree, pinfo, &ei_qsig_unsupported_result_type, tvb, offset);
12461
0
      offset += tvb_captured_length_remaining(tvb, offset);
12462
0
    }
12463
12464
0
  return offset;
12465
0
}
12466
12467
/*--- dissect_qsig_err ------------------------------------------------------*/
12468
static int
12469
0
dissect_qsig_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12470
0
  unsigned offset = 0;
12471
0
  rose_ctx_t *rctx;
12472
0
  uint32_t errcode;
12473
0
  const qsig_err_t *err_ptr;
12474
0
  const char *p;
12475
0
  proto_item *ti;
12476
0
  proto_tree *qsig_tree;
12477
12478
  /* Reject the packet if data is NULL */
12479
0
  if (data == NULL)
12480
0
    return 0;
12481
0
  rctx = get_rose_ctx(data);
12482
0
  DISSECTOR_ASSERT(rctx);
12483
12484
0
  if (rctx->d.pdu != 3)  /* returnError */
12485
0
    return offset;
12486
0
  if (rctx->d.code != 0)  /* local */
12487
0
    return offset;
12488
0
  errcode = rctx->d.code_local;
12489
0
  err_ptr = get_err(errcode);
12490
0
  if (!err_ptr)
12491
0
    return offset;
12492
12493
0
  ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_captured_length(tvb), ENC_NA);
12494
0
  qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12495
12496
0
  proto_tree_add_uint(qsig_tree, hf_qsig_error, tvb, 0, 0, errcode);
12497
0
  p = try_val_to_str(errcode, VALS(qsig_str_error));
12498
0
  if (p) {
12499
0
    proto_item_append_text(ti, ": %s", p);
12500
0
    proto_item_append_text(rctx->d.code_item, " - %s", p);
12501
0
    if (rctx->apdu_depth >= 0)
12502
0
      proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12503
0
  }
12504
12505
0
  if (err_ptr->err_pdu)
12506
0
    offset = err_ptr->err_pdu(tvb, pinfo, qsig_tree, NULL);
12507
0
  else
12508
0
    if (tvb_reported_length_remaining(tvb, offset) > 0) {
12509
0
      proto_tree_add_expert_remaining(tree, pinfo, &ei_qsig_unsupported_error_type, tvb, offset);
12510
0
      offset += tvb_captured_length_remaining(tvb, offset);
12511
0
    }
12512
12513
0
  return offset;
12514
0
}
12515
12516
/*--- dissect_qsig_transit_counter_ie ---------------------------------------*/
12517
static int
12518
13
dissect_qsig_transit_counter_ie(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int length  _U_) {
12519
13
  proto_tree_add_item(tree, hf_qsig_tc, tvb, offset, 1, ENC_BIG_ENDIAN);
12520
13
  offset++;
12521
13
  return offset;
12522
13
}
12523
/*--- dissect_qsig_party_category_ie ----------------------------------------*/
12524
static int
12525
4
dissect_qsig_party_category_ie(tvbuff_t *tvb, int offset, packet_info *pinfo  _U_, proto_tree *tree, int length  _U_) {
12526
4
  proto_tree_add_item(tree, hf_qsig_pc, tvb, offset, 1, ENC_BIG_ENDIAN);
12527
4
  offset++;
12528
4
  return offset;
12529
4
}
12530
12531
/*--- dissect_qsig_ie -------------------------------------------------------*/
12532
static void
12533
19
dissect_qsig_ie(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int codeset) {
12534
19
  int offset;
12535
19
  proto_item *ti, *hidden_item;
12536
19
  proto_tree *ie_tree;
12537
19
  uint8_t ie_type, ie_len;
12538
12539
19
  offset = 0;
12540
12541
19
  ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, -1, ENC_NA);
12542
19
  proto_item_set_hidden(ti);
12543
12544
19
  ie_type = tvb_get_uint8(tvb, offset);
12545
19
  ie_len = tvb_get_uint8(tvb, offset + 1);
12546
12547
19
  ie_tree = proto_tree_add_subtree(tree, tvb, offset, -1, ett_qsig_ie, NULL,
12548
19
            val_to_str(pinfo->pool, ie_type, VALS(qsig_str_ie_type[codeset]), "unknown (0x%02X)"));
12549
12550
19
  proto_tree_add_item(ie_tree, *hf_qsig_ie_type_arr[codeset], tvb, offset, 1, ENC_BIG_ENDIAN);
12551
19
  hidden_item = proto_tree_add_item(ie_tree, hf_qsig_ie_type, tvb, offset, 1, ENC_BIG_ENDIAN);
12552
19
  proto_item_set_hidden(hidden_item);
12553
19
  proto_tree_add_item(ie_tree, hf_qsig_ie_len, tvb, offset + 1, 1, ENC_BIG_ENDIAN);
12554
19
  offset += 2;
12555
19
  if (tvb_reported_length_remaining(tvb, offset) <= 0)
12556
2
    return;
12557
17
  switch ((codeset << 8) | ie_type) {
12558
13
    case CS4 | QSIG_IE_TRANSIT_COUNTER :
12559
13
      dissect_qsig_transit_counter_ie(tvb, offset, pinfo, ie_tree, ie_len);
12560
13
      break;
12561
4
    case CS5 | QSIG_IE_PARTY_CATEGORY :
12562
4
      dissect_qsig_party_category_ie(tvb, offset, pinfo, ie_tree, ie_len);
12563
4
      break;
12564
0
    default:
12565
0
      if (ie_len > 0) {
12566
0
        if (tree) proto_tree_add_item(ie_tree, hf_qsig_ie_data, tvb, offset, ie_len, ENC_NA);
12567
0
      }
12568
17
  }
12569
17
}
12570
/*--- dissect_qsig_ie_cs4 ---------------------------------------------------*/
12571
static int
12572
14
dissect_qsig_ie_cs4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_) {
12573
14
  dissect_qsig_ie(tvb, pinfo, tree, 4);
12574
14
  return tvb_captured_length(tvb);
12575
14
}
12576
/*--- dissect_qsig_ie_cs5 ---------------------------------------------------*/
12577
static int
12578
5
dissect_qsig_ie_cs5(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_) {
12579
5
  dissect_qsig_ie(tvb, pinfo, tree, 5);
12580
5
  return tvb_captured_length(tvb);
12581
5
}
12582
12583
/*--- proto_register_qsig ---------------------------------------------------*/
12584
15
void proto_register_qsig(void) {
12585
12586
  /* List of fields */
12587
15
  static hf_register_info hf[] = {
12588
15
    { &hf_qsig_operation, { "Operation", "qsig.operation",
12589
15
                           FT_UINT8, BASE_DEC, VALS(qsig_str_operation), 0x0,
12590
15
                           NULL, HFILL }},
12591
15
    { &hf_qsig_service,   { "Service", "qsig.service",
12592
15
                           FT_UINT16, BASE_DEC, VALS(qsig_str_service), 0x0,
12593
15
                           "Supplementary Service", HFILL }},
12594
15
    { &hf_qsig_error,     { "Error", "qsig.error",
12595
15
                           FT_UINT16, BASE_DEC, VALS(qsig_str_error), 0x0,
12596
15
                           NULL, HFILL }},
12597
15
    { &hf_qsig_ie_type, { "Type", "qsig.ie.type",
12598
15
                          FT_UINT8, BASE_HEX, NULL, 0x0,
12599
15
                          "Information Element Type", HFILL }},
12600
15
    { &hf_qsig_ie_type_cs4, { "Type", "qsig.ie.type.cs4",
12601
15
                          FT_UINT8, BASE_HEX, VALS(qsig_str_ie_type_cs4), 0x0,
12602
15
                          "Information Element Type (Codeset 4)", HFILL }},
12603
15
    { &hf_qsig_ie_type_cs5, { "Type", "qsig.ie.type.cs5",
12604
15
                          FT_UINT8, BASE_HEX, VALS(qsig_str_ie_type_cs5), 0x0,
12605
15
                          "Information Element Type (Codeset 5)", HFILL }},
12606
15
    { &hf_qsig_ie_len,  { "Length", "qsig.ie.len",
12607
15
                          FT_UINT8, BASE_DEC, NULL, 0x0,
12608
15
                          "Information Element Length", HFILL }},
12609
15
    { &hf_qsig_ie_data, { "Data", "qsig.ie.data",
12610
15
                          FT_BYTES, BASE_NONE, NULL, 0x0,
12611
15
                          NULL, HFILL }},
12612
15
    { &hf_qsig_tc,      { "Transit count", "qsig.tc",
12613
15
                          FT_UINT8, BASE_DEC, NULL, 0x1F,
12614
15
                          NULL, HFILL }},
12615
15
    { &hf_qsig_pc,      { "Party category", "qsig.pc",
12616
15
                          FT_UINT8, BASE_HEX, VALS(qsig_str_pc), 0x07,
12617
15
                          NULL, HFILL }},
12618
12619
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
12620
12621
15
    { &hf_qsig_extensionId,
12622
15
      { "extensionId", "qsig.extensionId",
12623
15
        FT_OID, BASE_NONE, NULL, 0,
12624
15
        NULL, HFILL }},
12625
15
    { &hf_qsig_extensionArgument,
12626
15
      { "extensionArgument", "qsig.extensionArgument_element",
12627
15
        FT_NONE, BASE_NONE, NULL, 0,
12628
15
        NULL, HFILL }},
12629
15
    { &hf_qsig_presentationAllowedAddressS,
12630
15
      { "presentationAllowedAddressS", "qsig.presentationAllowedAddressS_element",
12631
15
        FT_NONE, BASE_NONE, NULL, 0,
12632
15
        "AddressScreened", HFILL }},
12633
15
    { &hf_qsig_presentationRestricted,
12634
15
      { "presentationRestricted", "qsig.presentationRestricted_element",
12635
15
        FT_NONE, BASE_NONE, NULL, 0,
12636
15
        NULL, HFILL }},
12637
15
    { &hf_qsig_numberNotAvailableDueToInterworking,
12638
15
      { "numberNotAvailableDueToInterworking", "qsig.numberNotAvailableDueToInterworking_element",
12639
15
        FT_NONE, BASE_NONE, NULL, 0,
12640
15
        NULL, HFILL }},
12641
15
    { &hf_qsig_presentationRestrictedAddressS,
12642
15
      { "presentationRestrictedAddressS", "qsig.presentationRestrictedAddressS_element",
12643
15
        FT_NONE, BASE_NONE, NULL, 0,
12644
15
        "AddressScreened", HFILL }},
12645
15
    { &hf_qsig_presentationAllowedAddressU,
12646
15
      { "presentationAllowedAddressU", "qsig.presentationAllowedAddressU_element",
12647
15
        FT_NONE, BASE_NONE, NULL, 0,
12648
15
        "Address", HFILL }},
12649
15
    { &hf_qsig_presentationRestrictedAddressU,
12650
15
      { "presentationRestrictedAddressU", "qsig.presentationRestrictedAddressU_element",
12651
15
        FT_NONE, BASE_NONE, NULL, 0,
12652
15
        "Address", HFILL }},
12653
15
    { &hf_qsig_presentationAllowedAddressNS,
12654
15
      { "presentationAllowedAddressNS", "qsig.presentationAllowedAddressNS_element",
12655
15
        FT_NONE, BASE_NONE, NULL, 0,
12656
15
        "NumberScreened", HFILL }},
12657
15
    { &hf_qsig_presentationRestrictedAddressNS,
12658
15
      { "presentationRestrictedAddressNS", "qsig.presentationRestrictedAddressNS_element",
12659
15
        FT_NONE, BASE_NONE, NULL, 0,
12660
15
        "NumberScreened", HFILL }},
12661
15
    { &hf_qsig_presentationAllowedAddressNU,
12662
15
      { "presentationAllowedAddressNU", "qsig.presentationAllowedAddressNU",
12663
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12664
15
        "PartyNumber", HFILL }},
12665
15
    { &hf_qsig_presentationRestrictedAddressNU,
12666
15
      { "presentationRestrictedAddressNU", "qsig.presentationRestrictedAddressNU",
12667
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12668
15
        "PartyNumber", HFILL }},
12669
15
    { &hf_qsig_partyNumber,
12670
15
      { "partyNumber", "qsig.partyNumber",
12671
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12672
15
        NULL, HFILL }},
12673
15
    { &hf_qsig_screeningIndicator,
12674
15
      { "screeningIndicator", "qsig.screeningIndicator",
12675
15
        FT_UINT32, BASE_DEC, VALS(qsig_ScreeningIndicator_vals), 0,
12676
15
        NULL, HFILL }},
12677
15
    { &hf_qsig_partySubaddress,
12678
15
      { "partySubaddress", "qsig.partySubaddress",
12679
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
12680
15
        NULL, HFILL }},
12681
15
    { &hf_qsig_unknownPartyNumber,
12682
15
      { "unknownPartyNumber", "qsig.unknownPartyNumber",
12683
15
        FT_STRING, BASE_NONE, NULL, 0,
12684
15
        "NumberDigits", HFILL }},
12685
15
    { &hf_qsig_publicPartyNumber,
12686
15
      { "publicPartyNumber", "qsig.publicPartyNumber_element",
12687
15
        FT_NONE, BASE_NONE, NULL, 0,
12688
15
        NULL, HFILL }},
12689
15
    { &hf_qsig_dataPartyNumber,
12690
15
      { "dataPartyNumber", "qsig.dataPartyNumber",
12691
15
        FT_STRING, BASE_NONE, NULL, 0,
12692
15
        "NumberDigits", HFILL }},
12693
15
    { &hf_qsig_telexPartyNumber,
12694
15
      { "telexPartyNumber", "qsig.telexPartyNumber",
12695
15
        FT_STRING, BASE_NONE, NULL, 0,
12696
15
        "NumberDigits", HFILL }},
12697
15
    { &hf_qsig_privatePartyNumber,
12698
15
      { "privatePartyNumber", "qsig.privatePartyNumber_element",
12699
15
        FT_NONE, BASE_NONE, NULL, 0,
12700
15
        NULL, HFILL }},
12701
15
    { &hf_qsig_nationalStandardPartyNumber,
12702
15
      { "nationalStandardPartyNumber", "qsig.nationalStandardPartyNumber",
12703
15
        FT_STRING, BASE_NONE, NULL, 0,
12704
15
        "NumberDigits", HFILL }},
12705
15
    { &hf_qsig_publicTypeOfNumber,
12706
15
      { "publicTypeOfNumber", "qsig.publicTypeOfNumber",
12707
15
        FT_UINT32, BASE_DEC, VALS(qsig_PublicTypeOfNumber_vals), 0,
12708
15
        NULL, HFILL }},
12709
15
    { &hf_qsig_publicNumberDigits,
12710
15
      { "publicNumberDigits", "qsig.publicNumberDigits",
12711
15
        FT_STRING, BASE_NONE, NULL, 0,
12712
15
        "NumberDigits", HFILL }},
12713
15
    { &hf_qsig_privateTypeOfNumber,
12714
15
      { "privateTypeOfNumber", "qsig.privateTypeOfNumber",
12715
15
        FT_UINT32, BASE_DEC, VALS(qsig_PrivateTypeOfNumber_vals), 0,
12716
15
        NULL, HFILL }},
12717
15
    { &hf_qsig_privateNumberDigits,
12718
15
      { "privateNumberDigits", "qsig.privateNumberDigits",
12719
15
        FT_STRING, BASE_NONE, NULL, 0,
12720
15
        "NumberDigits", HFILL }},
12721
15
    { &hf_qsig_userSpecifiedSubaddress,
12722
15
      { "userSpecifiedSubaddress", "qsig.userSpecifiedSubaddress_element",
12723
15
        FT_NONE, BASE_NONE, NULL, 0,
12724
15
        NULL, HFILL }},
12725
15
    { &hf_qsig_nSAPSubaddress,
12726
15
      { "nSAPSubaddress", "qsig.nSAPSubaddress",
12727
15
        FT_BYTES, BASE_NONE, NULL, 0,
12728
15
        NULL, HFILL }},
12729
15
    { &hf_qsig_subaddressInformation,
12730
15
      { "subaddressInformation", "qsig.subaddressInformation",
12731
15
        FT_BYTES, BASE_NONE, NULL, 0,
12732
15
        NULL, HFILL }},
12733
15
    { &hf_qsig_oddCountIndicator,
12734
15
      { "oddCountIndicator", "qsig.oddCountIndicator",
12735
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12736
15
        "BOOLEAN", HFILL }},
12737
12738
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
12739
12740
15
    { &hf_qsig_na_qsig_na_NameArg_PDU,
12741
15
      { "NameArg", "qsig.na.NameArg",
12742
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_NameArg_vals), 0,
12743
15
        NULL, HFILL }},
12744
15
    { &hf_qsig_na_name,
12745
15
      { "name", "qsig.na.name",
12746
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
12747
15
        NULL, HFILL }},
12748
15
    { &hf_qsig_na_nameSequence,
12749
15
      { "nameSequence", "qsig.na.nameSequence_element",
12750
15
        FT_NONE, BASE_NONE, NULL, 0,
12751
15
        NULL, HFILL }},
12752
15
    { &hf_qsig_na_extensionNA,
12753
15
      { "extension", "qsig.na.extensionNA",
12754
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_NameExtension_vals), 0,
12755
15
        "NameExtension", HFILL }},
12756
15
    { &hf_qsig_na_single,
12757
15
      { "single", "qsig.na.single_element",
12758
15
        FT_NONE, BASE_NONE, NULL, 0,
12759
15
        "Extension", HFILL }},
12760
15
    { &hf_qsig_na_multiple,
12761
15
      { "multiple", "qsig.na.multiple",
12762
15
        FT_UINT32, BASE_DEC, NULL, 0,
12763
15
        "SEQUENCE_OF_Extension", HFILL }},
12764
15
    { &hf_qsig_na_multiple_item,
12765
15
      { "Extension", "qsig.na.Extension_element",
12766
15
        FT_NONE, BASE_NONE, NULL, 0,
12767
15
        NULL, HFILL }},
12768
15
    { &hf_qsig_na_namePresentationAllowed,
12769
15
      { "namePresentationAllowed", "qsig.na.namePresentationAllowed",
12770
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_NamePresentationAllowed_vals), 0,
12771
15
        NULL, HFILL }},
12772
15
    { &hf_qsig_na_namePresentationRestricted,
12773
15
      { "namePresentationRestricted", "qsig.na.namePresentationRestricted",
12774
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_NamePresentationRestricted_vals), 0,
12775
15
        NULL, HFILL }},
12776
15
    { &hf_qsig_na_nameNotAvailable,
12777
15
      { "nameNotAvailable", "qsig.na.nameNotAvailable_element",
12778
15
        FT_NONE, BASE_NONE, NULL, 0,
12779
15
        NULL, HFILL }},
12780
15
    { &hf_qsig_na_namePresentationAllowedSimple,
12781
15
      { "namePresentationAllowedSimple", "qsig.na.namePresentationAllowedSimple",
12782
15
        FT_STRING, BASE_NONE, NULL, 0,
12783
15
        "NameData", HFILL }},
12784
15
    { &hf_qsig_na_namePresentationAllowedExtended,
12785
15
      { "namePresentationAllowedExtended", "qsig.na.namePresentationAllowedExtended_element",
12786
15
        FT_NONE, BASE_NONE, NULL, 0,
12787
15
        "NameSet", HFILL }},
12788
15
    { &hf_qsig_na_namePresentationRestrictedSimple,
12789
15
      { "namePresentationRestrictedSimple", "qsig.na.namePresentationRestrictedSimple",
12790
15
        FT_STRING, BASE_NONE, NULL, 0,
12791
15
        "NameData", HFILL }},
12792
15
    { &hf_qsig_na_namePresentationRestrictedExtended,
12793
15
      { "namePresentationRestrictedExtended", "qsig.na.namePresentationRestrictedExtended_element",
12794
15
        FT_NONE, BASE_NONE, NULL, 0,
12795
15
        "NameSet", HFILL }},
12796
15
    { &hf_qsig_na_namePresentationRestrictedNull,
12797
15
      { "namePresentationRestrictedNull", "qsig.na.namePresentationRestrictedNull_element",
12798
15
        FT_NONE, BASE_NONE, NULL, 0,
12799
15
        NULL, HFILL }},
12800
15
    { &hf_qsig_na_nameData,
12801
15
      { "nameData", "qsig.na.nameData",
12802
15
        FT_STRING, BASE_NONE, NULL, 0,
12803
15
        NULL, HFILL }},
12804
15
    { &hf_qsig_na_characterSet,
12805
15
      { "characterSet", "qsig.na.characterSet",
12806
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_CharacterSet_vals), 0,
12807
15
        NULL, HFILL }},
12808
12809
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
12810
12811
15
    { &hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU,
12812
15
      { "ARG-activateDiversionQ", "qsig.cf.ARG_activateDiversionQ_element",
12813
15
        FT_NONE, BASE_NONE, NULL, 0,
12814
15
        NULL, HFILL }},
12815
15
    { &hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU,
12816
15
      { "RES-activateDiversionQ", "qsig.cf.RES_activateDiversionQ",
12817
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_activateDiversionQ_vals), 0,
12818
15
        NULL, HFILL }},
12819
15
    { &hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU,
12820
15
      { "ARG-deactivateDiversionQ", "qsig.cf.ARG_deactivateDiversionQ_element",
12821
15
        FT_NONE, BASE_NONE, NULL, 0,
12822
15
        NULL, HFILL }},
12823
15
    { &hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU,
12824
15
      { "RES-deactivateDiversionQ", "qsig.cf.RES_deactivateDiversionQ",
12825
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_deactivateDiversionQ_vals), 0,
12826
15
        NULL, HFILL }},
12827
15
    { &hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU,
12828
15
      { "ARG-interrogateDiversionQ", "qsig.cf.ARG_interrogateDiversionQ_element",
12829
15
        FT_NONE, BASE_NONE, NULL, 0,
12830
15
        NULL, HFILL }},
12831
15
    { &hf_qsig_cf_qsig_cf_IntResultList_PDU,
12832
15
      { "IntResultList", "qsig.cf.IntResultList",
12833
15
        FT_UINT32, BASE_DEC, NULL, 0,
12834
15
        NULL, HFILL }},
12835
15
    { &hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU,
12836
15
      { "ARG-checkRestriction", "qsig.cf.ARG_checkRestriction_element",
12837
15
        FT_NONE, BASE_NONE, NULL, 0,
12838
15
        NULL, HFILL }},
12839
15
    { &hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU,
12840
15
      { "RES-checkRestriction", "qsig.cf.RES_checkRestriction",
12841
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_checkRestriction_vals), 0,
12842
15
        NULL, HFILL }},
12843
15
    { &hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU,
12844
15
      { "ARG-callRerouteing", "qsig.cf.ARG_callRerouteing_element",
12845
15
        FT_NONE, BASE_NONE, NULL, 0,
12846
15
        NULL, HFILL }},
12847
15
    { &hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU,
12848
15
      { "RES-callRerouteing", "qsig.cf.RES_callRerouteing",
12849
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_callRerouteing_vals), 0,
12850
15
        NULL, HFILL }},
12851
15
    { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU,
12852
15
      { "ARG-divertingLegInformation1", "qsig.cf.ARG_divertingLegInformation1_element",
12853
15
        FT_NONE, BASE_NONE, NULL, 0,
12854
15
        NULL, HFILL }},
12855
15
    { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU,
12856
15
      { "ARG-divertingLegInformation2", "qsig.cf.ARG_divertingLegInformation2_element",
12857
15
        FT_NONE, BASE_NONE, NULL, 0,
12858
15
        NULL, HFILL }},
12859
15
    { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU,
12860
15
      { "ARG-divertingLegInformation3", "qsig.cf.ARG_divertingLegInformation3_element",
12861
15
        FT_NONE, BASE_NONE, NULL, 0,
12862
15
        NULL, HFILL }},
12863
15
    { &hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU,
12864
15
      { "ARG-cfnrDivertedLegFailed", "qsig.cf.ARG_cfnrDivertedLegFailed",
12865
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_ARG_cfnrDivertedLegFailed_vals), 0,
12866
15
        NULL, HFILL }},
12867
15
    { &hf_qsig_cf_qsig_cf_Extension_PDU,
12868
15
      { "Extension", "qsig.cf.Extension_element",
12869
15
        FT_NONE, BASE_NONE, NULL, 0,
12870
15
        NULL, HFILL }},
12871
15
    { &hf_qsig_cf_procedure,
12872
15
      { "procedure", "qsig.cf.procedure",
12873
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_Procedure_vals), 0,
12874
15
        NULL, HFILL }},
12875
15
    { &hf_qsig_cf_basicService,
12876
15
      { "basicService", "qsig.cf.basicService",
12877
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
12878
15
        NULL, HFILL }},
12879
15
    { &hf_qsig_cf_divertedToAddress,
12880
15
      { "divertedToAddress", "qsig.cf.divertedToAddress_element",
12881
15
        FT_NONE, BASE_NONE, NULL, 0,
12882
15
        "Address", HFILL }},
12883
15
    { &hf_qsig_cf_servedUserNr,
12884
15
      { "servedUserNr", "qsig.cf.servedUserNr",
12885
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12886
15
        "PartyNumber", HFILL }},
12887
15
    { &hf_qsig_cf_activatingUserNr,
12888
15
      { "activatingUserNr", "qsig.cf.activatingUserNr",
12889
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12890
15
        "PartyNumber", HFILL }},
12891
15
    { &hf_qsig_cf_extensionAD,
12892
15
      { "extension", "qsig.cf.extensionAD",
12893
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_ADExtension_vals), 0,
12894
15
        "ADExtension", HFILL }},
12895
15
    { &hf_qsig_cf_single,
12896
15
      { "single", "qsig.cf.single_element",
12897
15
        FT_NONE, BASE_NONE, NULL, 0,
12898
15
        "Extension", HFILL }},
12899
15
    { &hf_qsig_cf_multiple,
12900
15
      { "multiple", "qsig.cf.multiple",
12901
15
        FT_UINT32, BASE_DEC, NULL, 0,
12902
15
        "SEQUENCE_OF_Extension", HFILL }},
12903
15
    { &hf_qsig_cf_multiple_item,
12904
15
      { "Extension", "qsig.cf.Extension_element",
12905
15
        FT_NONE, BASE_NONE, NULL, 0,
12906
15
        NULL, HFILL }},
12907
15
    { &hf_qsig_cf_null,
12908
15
      { "null", "qsig.cf.null_element",
12909
15
        FT_NONE, BASE_NONE, NULL, 0,
12910
15
        NULL, HFILL }},
12911
15
    { &hf_qsig_cf_deactivatingUserNr,
12912
15
      { "deactivatingUserNr", "qsig.cf.deactivatingUserNr",
12913
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12914
15
        "PartyNumber", HFILL }},
12915
15
    { &hf_qsig_cf_extensionDD,
12916
15
      { "extension", "qsig.cf.extensionDD",
12917
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DDExtension_vals), 0,
12918
15
        "DDExtension", HFILL }},
12919
15
    { &hf_qsig_cf_interrogatingUserNr,
12920
15
      { "interrogatingUserNr", "qsig.cf.interrogatingUserNr",
12921
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12922
15
        "PartyNumber", HFILL }},
12923
15
    { &hf_qsig_cf_extensionID,
12924
15
      { "extension", "qsig.cf.extensionID",
12925
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_IDExtension_vals), 0,
12926
15
        "IDExtension", HFILL }},
12927
15
    { &hf_qsig_cf_divertedToNr,
12928
15
      { "divertedToNr", "qsig.cf.divertedToNr",
12929
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12930
15
        "PartyNumber", HFILL }},
12931
15
    { &hf_qsig_cf_extensionCHR,
12932
15
      { "extension", "qsig.cf.extensionCHR",
12933
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_CHRExtension_vals), 0,
12934
15
        "CHRExtension", HFILL }},
12935
15
    { &hf_qsig_cf_rerouteingReason,
12936
15
      { "rerouteingReason", "qsig.cf.rerouteingReason",
12937
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
12938
15
        "DiversionReason", HFILL }},
12939
15
    { &hf_qsig_cf_originalRerouteingReason,
12940
15
      { "originalRerouteingReason", "qsig.cf.originalRerouteingReason",
12941
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
12942
15
        "DiversionReason", HFILL }},
12943
15
    { &hf_qsig_cf_calledAddress,
12944
15
      { "calledAddress", "qsig.cf.calledAddress_element",
12945
15
        FT_NONE, BASE_NONE, NULL, 0,
12946
15
        "Address", HFILL }},
12947
15
    { &hf_qsig_cf_diversionCounter,
12948
15
      { "diversionCounter", "qsig.cf.diversionCounter",
12949
15
        FT_UINT32, BASE_DEC, NULL, 0,
12950
15
        "INTEGER_1_15", HFILL }},
12951
15
    { &hf_qsig_cf_pSS1InfoElement,
12952
15
      { "pSS1InfoElement", "qsig.cf.pSS1InfoElement",
12953
15
        FT_BYTES, BASE_NONE, NULL, 0,
12954
15
        "PSS1InformationElement", HFILL }},
12955
15
    { &hf_qsig_cf_lastRerouteingNr,
12956
15
      { "lastRerouteingNr", "qsig.cf.lastRerouteingNr",
12957
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
12958
15
        "PresentedNumberUnscreened", HFILL }},
12959
15
    { &hf_qsig_cf_subscriptionOption,
12960
15
      { "subscriptionOption", "qsig.cf.subscriptionOption",
12961
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_SubscriptionOption_vals), 0,
12962
15
        NULL, HFILL }},
12963
15
    { &hf_qsig_cf_callingPartySubaddress,
12964
15
      { "callingPartySubaddress", "qsig.cf.callingPartySubaddress",
12965
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
12966
15
        "PartySubaddress", HFILL }},
12967
15
    { &hf_qsig_cf_callingNumber,
12968
15
      { "callingNumber", "qsig.cf.callingNumber",
12969
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
12970
15
        "PresentedNumberScreened", HFILL }},
12971
15
    { &hf_qsig_cf_callingName,
12972
15
      { "callingName", "qsig.cf.callingName",
12973
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
12974
15
        "Name", HFILL }},
12975
15
    { &hf_qsig_cf_originalCalledNr,
12976
15
      { "originalCalledNr", "qsig.cf.originalCalledNr",
12977
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
12978
15
        "PresentedNumberUnscreened", HFILL }},
12979
15
    { &hf_qsig_cf_redirectingName,
12980
15
      { "redirectingName", "qsig.cf.redirectingName",
12981
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
12982
15
        "Name", HFILL }},
12983
15
    { &hf_qsig_cf_originalCalledName,
12984
15
      { "originalCalledName", "qsig.cf.originalCalledName",
12985
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
12986
15
        "Name", HFILL }},
12987
15
    { &hf_qsig_cf_extensionCRR,
12988
15
      { "extension", "qsig.cf.extensionCRR",
12989
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_CRRExtension_vals), 0,
12990
15
        "CRRExtension", HFILL }},
12991
15
    { &hf_qsig_cf_diversionReason,
12992
15
      { "diversionReason", "qsig.cf.diversionReason",
12993
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
12994
15
        NULL, HFILL }},
12995
15
    { &hf_qsig_cf_nominatedNr,
12996
15
      { "nominatedNr", "qsig.cf.nominatedNr",
12997
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12998
15
        "PartyNumber", HFILL }},
12999
15
    { &hf_qsig_cf_extensionDLI1,
13000
15
      { "extension", "qsig.cf.extensionDLI1",
13001
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI1Extension_vals), 0,
13002
15
        "DLI1Extension", HFILL }},
13003
15
    { &hf_qsig_cf_originalDiversionReason,
13004
15
      { "originalDiversionReason", "qsig.cf.originalDiversionReason",
13005
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
13006
15
        "DiversionReason", HFILL }},
13007
15
    { &hf_qsig_cf_divertingNr,
13008
15
      { "divertingNr", "qsig.cf.divertingNr",
13009
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13010
15
        "PresentedNumberUnscreened", HFILL }},
13011
15
    { &hf_qsig_cf_extensionDLI2,
13012
15
      { "extension", "qsig.cf.extensionDLI2",
13013
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI2Extension_vals), 0,
13014
15
        "DLI2Extension", HFILL }},
13015
15
    { &hf_qsig_cf_presentationAllowedIndicator,
13016
15
      { "presentationAllowedIndicator", "qsig.cf.presentationAllowedIndicator",
13017
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13018
15
        NULL, HFILL }},
13019
15
    { &hf_qsig_cf_redirectionName,
13020
15
      { "redirectionName", "qsig.cf.redirectionName",
13021
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13022
15
        "Name", HFILL }},
13023
15
    { &hf_qsig_cf_extensionDLI3,
13024
15
      { "extension", "qsig.cf.extensionDLI3",
13025
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI3Extension_vals), 0,
13026
15
        "DLI3Extension", HFILL }},
13027
15
    { &hf_qsig_cf_IntResultList_item,
13028
15
      { "IntResult", "qsig.cf.IntResult_element",
13029
15
        FT_NONE, BASE_NONE, NULL, 0,
13030
15
        NULL, HFILL }},
13031
15
    { &hf_qsig_cf_remoteEnabled,
13032
15
      { "remoteEnabled", "qsig.cf.remoteEnabled",
13033
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13034
15
        "BOOLEAN", HFILL }},
13035
15
    { &hf_qsig_cf_extensionIR,
13036
15
      { "extension", "qsig.cf.extensionIR",
13037
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_IRExtension_vals), 0,
13038
15
        "IRExtension", HFILL }},
13039
13040
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
13041
13042
15
    { &hf_qsig_pr_qsig_pr_DummyArg_PDU,
13043
15
      { "DummyArg", "qsig.pr.DummyArg",
13044
15
        FT_UINT32, BASE_DEC, VALS(qsig_pr_DummyArg_vals), 0,
13045
15
        NULL, HFILL }},
13046
15
    { &hf_qsig_pr_qsig_pr_PRProposeArg_PDU,
13047
15
      { "PRProposeArg", "qsig.pr.PRProposeArg_element",
13048
15
        FT_NONE, BASE_NONE, NULL, 0,
13049
15
        NULL, HFILL }},
13050
15
    { &hf_qsig_pr_qsig_pr_PRSetupArg_PDU,
13051
15
      { "PRSetupArg", "qsig.pr.PRSetupArg_element",
13052
15
        FT_NONE, BASE_NONE, NULL, 0,
13053
15
        NULL, HFILL }},
13054
15
    { &hf_qsig_pr_qsig_pr_DummyResult_PDU,
13055
15
      { "DummyResult", "qsig.pr.DummyResult",
13056
15
        FT_UINT32, BASE_DEC, VALS(qsig_pr_DummyResult_vals), 0,
13057
15
        NULL, HFILL }},
13058
15
    { &hf_qsig_pr_qsig_pr_PRRetainArg_PDU,
13059
15
      { "PRRetainArg", "qsig.pr.PRRetainArg_element",
13060
15
        FT_NONE, BASE_NONE, NULL, 0,
13061
15
        NULL, HFILL }},
13062
15
    { &hf_qsig_pr_qsig_pr_Extension_PDU,
13063
15
      { "Extension", "qsig.pr.Extension_element",
13064
15
        FT_NONE, BASE_NONE, NULL, 0,
13065
15
        NULL, HFILL }},
13066
15
    { &hf_qsig_pr_callIdentity,
13067
15
      { "callIdentity", "qsig.pr.callIdentity",
13068
15
        FT_STRING, BASE_NONE, NULL, 0,
13069
15
        NULL, HFILL }},
13070
15
    { &hf_qsig_pr_rerouteingNumber,
13071
15
      { "rerouteingNumber", "qsig.pr.rerouteingNumber",
13072
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13073
15
        "PartyNumber", HFILL }},
13074
15
    { &hf_qsig_pr_extensionPRP,
13075
15
      { "extension", "qsig.pr.extensionPRP",
13076
15
        FT_UINT32, BASE_DEC, VALS(qsig_pr_PRPExtension_vals), 0,
13077
15
        "PRPExtension", HFILL }},
13078
15
    { &hf_qsig_pr_single,
13079
15
      { "single", "qsig.pr.single_element",
13080
15
        FT_NONE, BASE_NONE, NULL, 0,
13081
15
        "Extension", HFILL }},
13082
15
    { &hf_qsig_pr_multiple,
13083
15
      { "multiple", "qsig.pr.multiple",
13084
15
        FT_UINT32, BASE_DEC, NULL, 0,
13085
15
        "SEQUENCE_OF_Extension", HFILL }},
13086
15
    { &hf_qsig_pr_multiple_item,
13087
15
      { "Extension", "qsig.pr.Extension_element",
13088
15
        FT_NONE, BASE_NONE, NULL, 0,
13089
15
        NULL, HFILL }},
13090
15
    { &hf_qsig_pr_extensionPRS,
13091
15
      { "extension", "qsig.pr.extensionPRS",
13092
15
        FT_UINT32, BASE_DEC, VALS(qsig_pr_PRSExtension_vals), 0,
13093
15
        "PRSExtension", HFILL }},
13094
15
    { &hf_qsig_pr_extensionPRR,
13095
15
      { "extension", "qsig.pr.extensionPRR",
13096
15
        FT_UINT32, BASE_DEC, VALS(qsig_pr_PRRExtension_vals), 0,
13097
15
        "PRRExtension", HFILL }},
13098
15
    { &hf_qsig_pr_null,
13099
15
      { "null", "qsig.pr.null_element",
13100
15
        FT_NONE, BASE_NONE, NULL, 0,
13101
15
        NULL, HFILL }},
13102
13103
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
13104
13105
15
    { &hf_qsig_ct_qsig_ct_DummyArg_PDU,
13106
15
      { "DummyArg", "qsig.ct.DummyArg",
13107
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_DummyArg_vals), 0,
13108
15
        NULL, HFILL }},
13109
15
    { &hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU,
13110
15
      { "CTIdentifyRes", "qsig.ct.CTIdentifyRes_element",
13111
15
        FT_NONE, BASE_NONE, NULL, 0,
13112
15
        NULL, HFILL }},
13113
15
    { &hf_qsig_ct_qsig_ct_CTInitiateArg_PDU,
13114
15
      { "CTInitiateArg", "qsig.ct.CTInitiateArg_element",
13115
15
        FT_NONE, BASE_NONE, NULL, 0,
13116
15
        NULL, HFILL }},
13117
15
    { &hf_qsig_ct_qsig_ct_DummyRes_PDU,
13118
15
      { "DummyRes", "qsig.ct.DummyRes",
13119
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_DummyRes_vals), 0,
13120
15
        NULL, HFILL }},
13121
15
    { &hf_qsig_ct_qsig_ct_CTSetupArg_PDU,
13122
15
      { "CTSetupArg", "qsig.ct.CTSetupArg_element",
13123
15
        FT_NONE, BASE_NONE, NULL, 0,
13124
15
        NULL, HFILL }},
13125
15
    { &hf_qsig_ct_qsig_ct_CTActiveArg_PDU,
13126
15
      { "CTActiveArg", "qsig.ct.CTActiveArg_element",
13127
15
        FT_NONE, BASE_NONE, NULL, 0,
13128
15
        NULL, HFILL }},
13129
15
    { &hf_qsig_ct_qsig_ct_CTCompleteArg_PDU,
13130
15
      { "CTCompleteArg", "qsig.ct.CTCompleteArg_element",
13131
15
        FT_NONE, BASE_NONE, NULL, 0,
13132
15
        NULL, HFILL }},
13133
15
    { &hf_qsig_ct_qsig_ct_CTUpdateArg_PDU,
13134
15
      { "CTUpdateArg", "qsig.ct.CTUpdateArg_element",
13135
15
        FT_NONE, BASE_NONE, NULL, 0,
13136
15
        NULL, HFILL }},
13137
15
    { &hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU,
13138
15
      { "SubaddressTransferArg", "qsig.ct.SubaddressTransferArg_element",
13139
15
        FT_NONE, BASE_NONE, NULL, 0,
13140
15
        NULL, HFILL }},
13141
15
    { &hf_qsig_ct_qsig_ct_Extension_PDU,
13142
15
      { "Extension", "qsig.ct.Extension_element",
13143
15
        FT_NONE, BASE_NONE, NULL, 0,
13144
15
        NULL, HFILL }},
13145
15
    { &hf_qsig_ct_null,
13146
15
      { "null", "qsig.ct.null_element",
13147
15
        FT_NONE, BASE_NONE, NULL, 0,
13148
15
        NULL, HFILL }},
13149
15
    { &hf_qsig_ct_single,
13150
15
      { "single", "qsig.ct.single_element",
13151
15
        FT_NONE, BASE_NONE, NULL, 0,
13152
15
        "Extension", HFILL }},
13153
15
    { &hf_qsig_ct_multiple,
13154
15
      { "multiple", "qsig.ct.multiple",
13155
15
        FT_UINT32, BASE_DEC, NULL, 0,
13156
15
        "SEQUENCE_OF_Extension", HFILL }},
13157
15
    { &hf_qsig_ct_multiple_item,
13158
15
      { "Extension", "qsig.ct.Extension_element",
13159
15
        FT_NONE, BASE_NONE, NULL, 0,
13160
15
        NULL, HFILL }},
13161
15
    { &hf_qsig_ct_callIdentity,
13162
15
      { "callIdentity", "qsig.ct.callIdentity",
13163
15
        FT_STRING, BASE_NONE, NULL, 0,
13164
15
        NULL, HFILL }},
13165
15
    { &hf_qsig_ct_rerouteingNumber,
13166
15
      { "rerouteingNumber", "qsig.ct.rerouteingNumber",
13167
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13168
15
        "PartyNumber", HFILL }},
13169
15
    { &hf_qsig_ct_resultExtension,
13170
15
      { "resultExtension", "qsig.ct.resultExtension",
13171
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_T_resultExtension_vals), 0,
13172
15
        NULL, HFILL }},
13173
15
    { &hf_qsig_ct_argumentExtensionCTI,
13174
15
      { "argumentExtension", "qsig.ct.argumentExtensionCTI",
13175
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CTIargumentExtension_vals), 0,
13176
15
        "CTIargumentExtension", HFILL }},
13177
15
    { &hf_qsig_ct_argumentExtensionCTS,
13178
15
      { "argumentExtension", "qsig.ct.argumentExtensionCTS",
13179
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CTSargumentExtension_vals), 0,
13180
15
        "CTSargumentExtension", HFILL }},
13181
15
    { &hf_qsig_ct_connectedAddress,
13182
15
      { "connectedAddress", "qsig.ct.connectedAddress",
13183
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
13184
15
        "PresentedAddressScreened", HFILL }},
13185
15
    { &hf_qsig_ct_basicCallInfoElements,
13186
15
      { "basicCallInfoElements", "qsig.ct.basicCallInfoElements",
13187
15
        FT_BYTES, BASE_NONE, NULL, 0,
13188
15
        "PSS1InformationElement", HFILL }},
13189
15
    { &hf_qsig_ct_connectedName,
13190
15
      { "connectedName", "qsig.ct.connectedName",
13191
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13192
15
        "Name", HFILL }},
13193
15
    { &hf_qsig_ct_argumentExtensionCTA,
13194
15
      { "argumentExtension", "qsig.ct.argumentExtensionCTA",
13195
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CTAargumentExtension_vals), 0,
13196
15
        "CTAargumentExtension", HFILL }},
13197
15
    { &hf_qsig_ct_endDesignation,
13198
15
      { "endDesignation", "qsig.ct.endDesignation",
13199
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_EndDesignation_vals), 0,
13200
15
        NULL, HFILL }},
13201
15
    { &hf_qsig_ct_redirectionNumber,
13202
15
      { "redirectionNumber", "qsig.ct.redirectionNumber",
13203
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13204
15
        "PresentedNumberScreened", HFILL }},
13205
15
    { &hf_qsig_ct_redirectionName,
13206
15
      { "redirectionName", "qsig.ct.redirectionName",
13207
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13208
15
        "Name", HFILL }},
13209
15
    { &hf_qsig_ct_callStatus,
13210
15
      { "callStatus", "qsig.ct.callStatus",
13211
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CallStatus_vals), 0,
13212
15
        NULL, HFILL }},
13213
15
    { &hf_qsig_ct_argumentExtensionCTC,
13214
15
      { "argumentExtension", "qsig.ct.argumentExtensionCTC",
13215
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CTCargumentExtension_vals), 0,
13216
15
        "CTCargumentExtension", HFILL }},
13217
15
    { &hf_qsig_ct_argumentExtensionCTU,
13218
15
      { "argumentExtension", "qsig.ct.argumentExtensionCTU",
13219
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_CTUargumentExtension_vals), 0,
13220
15
        "CTUargumentExtension", HFILL }},
13221
15
    { &hf_qsig_ct_redirectionSubaddress,
13222
15
      { "redirectionSubaddress", "qsig.ct.redirectionSubaddress",
13223
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13224
15
        "PartySubaddress", HFILL }},
13225
15
    { &hf_qsig_ct_argumentExtensionST,
13226
15
      { "argumentExtension", "qsig.ct.argumentExtensionST",
13227
15
        FT_UINT32, BASE_DEC, VALS(qsig_ct_STargumentExtension_vals), 0,
13228
15
        "STargumentExtension", HFILL }},
13229
13230
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
13231
13232
15
    { &hf_qsig_cc_qsig_cc_CcRequestArg_PDU,
13233
15
      { "CcRequestArg", "qsig.cc.CcRequestArg_element",
13234
15
        FT_NONE, BASE_NONE, NULL, 0,
13235
15
        NULL, HFILL }},
13236
15
    { &hf_qsig_cc_qsig_cc_CcRequestRes_PDU,
13237
15
      { "CcRequestRes", "qsig.cc.CcRequestRes_element",
13238
15
        FT_NONE, BASE_NONE, NULL, 0,
13239
15
        NULL, HFILL }},
13240
15
    { &hf_qsig_cc_qsig_cc_CcOptionalArg_PDU,
13241
15
      { "CcOptionalArg", "qsig.cc.CcOptionalArg",
13242
15
        FT_UINT32, BASE_DEC, VALS(qsig_cc_CcOptionalArg_vals), 0,
13243
15
        NULL, HFILL }},
13244
15
    { &hf_qsig_cc_qsig_cc_CcExtension_PDU,
13245
15
      { "CcExtension", "qsig.cc.CcExtension",
13246
15
        FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13247
15
        NULL, HFILL }},
13248
15
    { &hf_qsig_cc_qsig_cc_Extension_PDU,
13249
15
      { "Extension", "qsig.cc.Extension_element",
13250
15
        FT_NONE, BASE_NONE, NULL, 0,
13251
15
        NULL, HFILL }},
13252
15
    { &hf_qsig_cc_numberA,
13253
15
      { "numberA", "qsig.cc.numberA",
13254
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13255
15
        "PresentedNumberUnscreened", HFILL }},
13256
15
    { &hf_qsig_cc_numberB,
13257
15
      { "numberB", "qsig.cc.numberB",
13258
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13259
15
        "PartyNumber", HFILL }},
13260
15
    { &hf_qsig_cc_service,
13261
15
      { "service", "qsig.cc.service",
13262
15
        FT_BYTES, BASE_NONE, NULL, 0,
13263
15
        "PSS1InformationElement", HFILL }},
13264
15
    { &hf_qsig_cc_subaddrA,
13265
15
      { "subaddrA", "qsig.cc.subaddrA",
13266
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13267
15
        "PartySubaddress", HFILL }},
13268
15
    { &hf_qsig_cc_subaddrB,
13269
15
      { "subaddrB", "qsig.cc.subaddrB",
13270
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13271
15
        "PartySubaddress", HFILL }},
13272
15
    { &hf_qsig_cc_can_retain_service,
13273
15
      { "can-retain-service", "qsig.cc.can_retain_service",
13274
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13275
15
        "BOOLEAN", HFILL }},
13276
15
    { &hf_qsig_cc_retain_sig_connection,
13277
15
      { "retain-sig-connection", "qsig.cc.retain_sig_connection",
13278
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13279
15
        "BOOLEAN", HFILL }},
13280
15
    { &hf_qsig_cc_extension,
13281
15
      { "extension", "qsig.cc.extension",
13282
15
        FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13283
15
        "CcExtension", HFILL }},
13284
15
    { &hf_qsig_cc_no_path_reservation,
13285
15
      { "no-path-reservation", "qsig.cc.no_path_reservation",
13286
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13287
15
        "BOOLEAN", HFILL }},
13288
15
    { &hf_qsig_cc_retain_service,
13289
15
      { "retain-service", "qsig.cc.retain_service",
13290
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13291
15
        "BOOLEAN", HFILL }},
13292
15
    { &hf_qsig_cc_fullArg,
13293
15
      { "fullArg", "qsig.cc.fullArg_element",
13294
15
        FT_NONE, BASE_NONE, NULL, 0,
13295
15
        NULL, HFILL }},
13296
15
    { &hf_qsig_cc_numberA_01,
13297
15
      { "numberA", "qsig.cc.numberA",
13298
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13299
15
        "PartyNumber", HFILL }},
13300
15
    { &hf_qsig_cc_extArg,
13301
15
      { "extArg", "qsig.cc.extArg",
13302
15
        FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13303
15
        "CcExtension", HFILL }},
13304
15
    { &hf_qsig_cc_none,
13305
15
      { "none", "qsig.cc.none_element",
13306
15
        FT_NONE, BASE_NONE, NULL, 0,
13307
15
        NULL, HFILL }},
13308
15
    { &hf_qsig_cc_single,
13309
15
      { "single", "qsig.cc.single_element",
13310
15
        FT_NONE, BASE_NONE, NULL, 0,
13311
15
        "Extension", HFILL }},
13312
15
    { &hf_qsig_cc_multiple,
13313
15
      { "multiple", "qsig.cc.multiple",
13314
15
        FT_UINT32, BASE_DEC, NULL, 0,
13315
15
        "SEQUENCE_OF_Extension", HFILL }},
13316
15
    { &hf_qsig_cc_multiple_item,
13317
15
      { "Extension", "qsig.cc.Extension_element",
13318
15
        FT_NONE, BASE_NONE, NULL, 0,
13319
15
        NULL, HFILL }},
13320
13321
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
13322
13323
15
    { &hf_qsig_co_qsig_co_PathRetainArg_PDU,
13324
15
      { "PathRetainArg", "qsig.co.PathRetainArg",
13325
15
        FT_UINT32, BASE_DEC, VALS(qsig_co_PathRetainArg_vals), 0,
13326
15
        NULL, HFILL }},
13327
15
    { &hf_qsig_co_qsig_co_ServiceAvailableArg_PDU,
13328
15
      { "ServiceAvailableArg", "qsig.co.ServiceAvailableArg",
13329
15
        FT_UINT32, BASE_DEC, VALS(qsig_co_ServiceAvailableArg_vals), 0,
13330
15
        NULL, HFILL }},
13331
15
    { &hf_qsig_co_qsig_co_DummyArg_PDU,
13332
15
      { "DummyArg", "qsig.co.DummyArg",
13333
15
        FT_UINT32, BASE_DEC, VALS(qsig_co_DummyArg_vals), 0,
13334
15
        NULL, HFILL }},
13335
15
    { &hf_qsig_co_qsig_co_DummyRes_PDU,
13336
15
      { "DummyRes", "qsig.co.DummyRes",
13337
15
        FT_UINT32, BASE_DEC, VALS(qsig_co_DummyRes_vals), 0,
13338
15
        NULL, HFILL }},
13339
15
    { &hf_qsig_co_qsig_co_Extension_PDU,
13340
15
      { "Extension", "qsig.co.Extension_element",
13341
15
        FT_NONE, BASE_NONE, NULL, 0,
13342
15
        NULL, HFILL }},
13343
15
    { &hf_qsig_co_serviceList,
13344
15
      { "serviceList", "qsig.co.serviceList",
13345
15
        FT_BYTES, BASE_NONE, NULL, 0,
13346
15
        NULL, HFILL }},
13347
15
    { &hf_qsig_co_extendedServiceList,
13348
15
      { "extendedServiceList", "qsig.co.extendedServiceList_element",
13349
15
        FT_NONE, BASE_NONE, NULL, 0,
13350
15
        NULL, HFILL }},
13351
15
    { &hf_qsig_co_extension,
13352
15
      { "extension", "qsig.co.extension_element",
13353
15
        FT_NONE, BASE_NONE, NULL, 0,
13354
15
        NULL, HFILL }},
13355
15
    { &hf_qsig_co_extendedServiceList_01,
13356
15
      { "extendedServiceList", "qsig.co.extendedServiceList_element",
13357
15
        FT_NONE, BASE_NONE, NULL, 0,
13358
15
        "T_extendedServiceList_01", HFILL }},
13359
15
    { &hf_qsig_co_null,
13360
15
      { "null", "qsig.co.null_element",
13361
15
        FT_NONE, BASE_NONE, NULL, 0,
13362
15
        NULL, HFILL }},
13363
15
    { &hf_qsig_co_sequenceOfExtn,
13364
15
      { "sequenceOfExtn", "qsig.co.sequenceOfExtn",
13365
15
        FT_UINT32, BASE_DEC, NULL, 0,
13366
15
        "SEQUENCE_OF_Extension", HFILL }},
13367
15
    { &hf_qsig_co_sequenceOfExtn_item,
13368
15
      { "Extension", "qsig.co.Extension_element",
13369
15
        FT_NONE, BASE_NONE, NULL, 0,
13370
15
        NULL, HFILL }},
13371
15
    { &hf_qsig_co_ServiceList_callOffer,
13372
15
      { "callOffer", "qsig.co.ServiceList.callOffer",
13373
15
        FT_BOOLEAN, 8, NULL, 0x80,
13374
15
        NULL, HFILL }},
13375
13376
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
13377
13378
15
    { &hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU,
13379
15
      { "DNDActivateArg", "qsig.dnd.DNDActivateArg_element",
13380
15
        FT_NONE, BASE_NONE, NULL, 0,
13381
15
        NULL, HFILL }},
13382
15
    { &hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU,
13383
15
      { "DNDActivateRes", "qsig.dnd.DNDActivateRes_element",
13384
15
        FT_NONE, BASE_NONE, NULL, 0,
13385
15
        NULL, HFILL }},
13386
15
    { &hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU,
13387
15
      { "DNDDeactivateArg", "qsig.dnd.DNDDeactivateArg_element",
13388
15
        FT_NONE, BASE_NONE, NULL, 0,
13389
15
        NULL, HFILL }},
13390
15
    { &hf_qsig_dnd_qsig_dnd_DummyRes_PDU,
13391
15
      { "DummyRes", "qsig.dnd.DummyRes",
13392
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DummyRes_vals), 0,
13393
15
        NULL, HFILL }},
13394
15
    { &hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU,
13395
15
      { "DNDInterrogateArg", "qsig.dnd.DNDInterrogateArg_element",
13396
15
        FT_NONE, BASE_NONE, NULL, 0,
13397
15
        NULL, HFILL }},
13398
15
    { &hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU,
13399
15
      { "DNDInterrogateRes", "qsig.dnd.DNDInterrogateRes_element",
13400
15
        FT_NONE, BASE_NONE, NULL, 0,
13401
15
        NULL, HFILL }},
13402
15
    { &hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU,
13403
15
      { "DNDOverrideArg", "qsig.dnd.DNDOverrideArg_element",
13404
15
        FT_NONE, BASE_NONE, NULL, 0,
13405
15
        NULL, HFILL }},
13406
15
    { &hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU,
13407
15
      { "PathRetainArg", "qsig.dnd.PathRetainArg",
13408
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_PathRetainArg_vals), 0,
13409
15
        NULL, HFILL }},
13410
15
    { &hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU,
13411
15
      { "ServiceAvailableArg", "qsig.dnd.ServiceAvailableArg",
13412
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_ServiceAvailableArg_vals), 0,
13413
15
        NULL, HFILL }},
13414
15
    { &hf_qsig_dnd_qsig_dnd_DummyArg_PDU,
13415
15
      { "DummyArg", "qsig.dnd.DummyArg",
13416
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DummyArg_vals), 0,
13417
15
        NULL, HFILL }},
13418
15
    { &hf_qsig_dnd_qsig_dnd_Extension_PDU,
13419
15
      { "Extension", "qsig.dnd.Extension_element",
13420
15
        FT_NONE, BASE_NONE, NULL, 0,
13421
15
        NULL, HFILL }},
13422
15
    { &hf_qsig_dnd_null,
13423
15
      { "null", "qsig.dnd.null_element",
13424
15
        FT_NONE, BASE_NONE, NULL, 0,
13425
15
        NULL, HFILL }},
13426
15
    { &hf_qsig_dnd_extension,
13427
15
      { "extension", "qsig.dnd.extension_element",
13428
15
        FT_NONE, BASE_NONE, NULL, 0,
13429
15
        NULL, HFILL }},
13430
15
    { &hf_qsig_dnd_sequenceOfExtn,
13431
15
      { "sequenceOfExtn", "qsig.dnd.sequenceOfExtn",
13432
15
        FT_UINT32, BASE_DEC, NULL, 0,
13433
15
        "SEQUENCE_OF_Extension", HFILL }},
13434
15
    { &hf_qsig_dnd_sequenceOfExtn_item,
13435
15
      { "Extension", "qsig.dnd.Extension_element",
13436
15
        FT_NONE, BASE_NONE, NULL, 0,
13437
15
        NULL, HFILL }},
13438
15
    { &hf_qsig_dnd_basicService,
13439
15
      { "basicService", "qsig.dnd.basicService",
13440
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
13441
15
        NULL, HFILL }},
13442
15
    { &hf_qsig_dnd_servedUserNr,
13443
15
      { "servedUserNr", "qsig.dnd.servedUserNr",
13444
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13445
15
        "PartyNumber", HFILL }},
13446
15
    { &hf_qsig_dnd_argumentExtensionDNDA,
13447
15
      { "argumentExtension", "qsig.dnd.argumentExtensionDNDA",
13448
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDAargumentExtension_vals), 0,
13449
15
        "DNDAargumentExtension", HFILL }},
13450
15
    { &hf_qsig_dnd_status,
13451
15
      { "status", "qsig.dnd.status",
13452
15
        FT_UINT32, BASE_DEC, NULL, 0,
13453
15
        NULL, HFILL }},
13454
15
    { &hf_qsig_dnd_status_item,
13455
15
      { "status item", "qsig.dnd.status_item_element",
13456
15
        FT_NONE, BASE_NONE, NULL, 0,
13457
15
        NULL, HFILL }},
13458
15
    { &hf_qsig_dnd_dndProtectionLevel,
13459
15
      { "dndProtectionLevel", "qsig.dnd.dndProtectionLevel",
13460
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDProtectionLevel_vals), 0,
13461
15
        NULL, HFILL }},
13462
15
    { &hf_qsig_dnd_resultExtension,
13463
15
      { "resultExtension", "qsig.dnd.resultExtension",
13464
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_T_resultExtension_vals), 0,
13465
15
        NULL, HFILL }},
13466
15
    { &hf_qsig_dnd_argumentExtensionDNDD,
13467
15
      { "argumentExtension", "qsig.dnd.argumentExtensionDNDD",
13468
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDDargumentExtension_vals), 0,
13469
15
        "DNDDargumentExtension", HFILL }},
13470
15
    { &hf_qsig_dnd_argumentExtensionDNDI,
13471
15
      { "argumentExtension", "qsig.dnd.argumentExtensionDNDI",
13472
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDIargumentExtension_vals), 0,
13473
15
        "DNDIargumentExtension", HFILL }},
13474
15
    { &hf_qsig_dnd_status_01,
13475
15
      { "status", "qsig.dnd.status",
13476
15
        FT_UINT32, BASE_DEC, NULL, 0,
13477
15
        "T_status_01", HFILL }},
13478
15
    { &hf_qsig_dnd_status_item_01,
13479
15
      { "status item", "qsig.dnd.status_item_element",
13480
15
        FT_NONE, BASE_NONE, NULL, 0,
13481
15
        "T_status_item_01", HFILL }},
13482
15
    { &hf_qsig_dnd_resultExtension_01,
13483
15
      { "resultExtension", "qsig.dnd.resultExtension",
13484
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_T_resultExtension_01_vals), 0,
13485
15
        "T_resultExtension_01", HFILL }},
13486
15
    { &hf_qsig_dnd_dndoCapabilityLevel,
13487
15
      { "dndoCapabilityLevel", "qsig.dnd.dndoCapabilityLevel",
13488
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDOCapabilityLevel_vals), 0,
13489
15
        NULL, HFILL }},
13490
15
    { &hf_qsig_dnd_argumentExtensionDNDO,
13491
15
      { "argumentExtension", "qsig.dnd.argumentExtensionDNDO",
13492
15
        FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDOargumentExtension_vals), 0,
13493
15
        "DNDOargumentExtension", HFILL }},
13494
15
    { &hf_qsig_dnd_serviceList,
13495
15
      { "serviceList", "qsig.dnd.serviceList",
13496
15
        FT_BYTES, BASE_NONE, NULL, 0,
13497
15
        NULL, HFILL }},
13498
15
    { &hf_qsig_dnd_extendedServiceList,
13499
15
      { "extendedServiceList", "qsig.dnd.extendedServiceList_element",
13500
15
        FT_NONE, BASE_NONE, NULL, 0,
13501
15
        NULL, HFILL }},
13502
15
    { &hf_qsig_dnd_extendedServiceList_01,
13503
15
      { "extendedServiceList", "qsig.dnd.extendedServiceList_element",
13504
15
        FT_NONE, BASE_NONE, NULL, 0,
13505
15
        "T_extendedServiceList_01", HFILL }},
13506
15
    { &hf_qsig_dnd_ServiceList_spare_bit0,
13507
15
      { "spare_bit0", "qsig.dnd.ServiceList.spare.bit0",
13508
15
        FT_BOOLEAN, 8, NULL, 0x80,
13509
15
        NULL, HFILL }},
13510
15
    { &hf_qsig_dnd_ServiceList_dndo_low,
13511
15
      { "dndo-low", "qsig.dnd.ServiceList.dndo.low",
13512
15
        FT_BOOLEAN, 8, NULL, 0x40,
13513
15
        NULL, HFILL }},
13514
15
    { &hf_qsig_dnd_ServiceList_dndo_medium,
13515
15
      { "dndo-medium", "qsig.dnd.ServiceList.dndo.medium",
13516
15
        FT_BOOLEAN, 8, NULL, 0x20,
13517
15
        NULL, HFILL }},
13518
15
    { &hf_qsig_dnd_ServiceList_dndo_high,
13519
15
      { "dndo-high", "qsig.dnd.ServiceList.dndo.high",
13520
15
        FT_BOOLEAN, 8, NULL, 0x10,
13521
15
        NULL, HFILL }},
13522
13523
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
13524
13525
15
    { &hf_qsig_ci_qsig_ci_PathRetainArg_PDU,
13526
15
      { "PathRetainArg", "qsig.ci.PathRetainArg",
13527
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_PathRetainArg_vals), 0,
13528
15
        NULL, HFILL }},
13529
15
    { &hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU,
13530
15
      { "ServiceAvailableArg", "qsig.ci.ServiceAvailableArg",
13531
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_ServiceAvailableArg_vals), 0,
13532
15
        NULL, HFILL }},
13533
15
    { &hf_qsig_ci_qsig_ci_CIRequestArg_PDU,
13534
15
      { "CIRequestArg", "qsig.ci.CIRequestArg_element",
13535
15
        FT_NONE, BASE_NONE, NULL, 0,
13536
15
        NULL, HFILL }},
13537
15
    { &hf_qsig_ci_qsig_ci_CIRequestRes_PDU,
13538
15
      { "CIRequestRes", "qsig.ci.CIRequestRes_element",
13539
15
        FT_NONE, BASE_NONE, NULL, 0,
13540
15
        NULL, HFILL }},
13541
15
    { &hf_qsig_ci_qsig_ci_DummyArg_PDU,
13542
15
      { "DummyArg", "qsig.ci.DummyArg",
13543
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_DummyArg_vals), 0,
13544
15
        NULL, HFILL }},
13545
15
    { &hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU,
13546
15
      { "CIGetCIPLRes", "qsig.ci.CIGetCIPLRes_element",
13547
15
        FT_NONE, BASE_NONE, NULL, 0,
13548
15
        NULL, HFILL }},
13549
15
    { &hf_qsig_ci_qsig_ci_DummyRes_PDU,
13550
15
      { "DummyRes", "qsig.ci.DummyRes",
13551
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_DummyRes_vals), 0,
13552
15
        NULL, HFILL }},
13553
15
    { &hf_qsig_ci_qsig_ci_Extension_PDU,
13554
15
      { "Extension", "qsig.ci.Extension_element",
13555
15
        FT_NONE, BASE_NONE, NULL, 0,
13556
15
        NULL, HFILL }},
13557
15
    { &hf_qsig_ci_serviceList,
13558
15
      { "serviceList", "qsig.ci.serviceList",
13559
15
        FT_BYTES, BASE_NONE, NULL, 0,
13560
15
        NULL, HFILL }},
13561
15
    { &hf_qsig_ci_extendedServiceList,
13562
15
      { "extendedServiceList", "qsig.ci.extendedServiceList_element",
13563
15
        FT_NONE, BASE_NONE, NULL, 0,
13564
15
        NULL, HFILL }},
13565
15
    { &hf_qsig_ci_extension,
13566
15
      { "extension", "qsig.ci.extension_element",
13567
15
        FT_NONE, BASE_NONE, NULL, 0,
13568
15
        NULL, HFILL }},
13569
15
    { &hf_qsig_ci_extendedServiceList_01,
13570
15
      { "extendedServiceList", "qsig.ci.extendedServiceList_element",
13571
15
        FT_NONE, BASE_NONE, NULL, 0,
13572
15
        "T_extendedServiceList_01", HFILL }},
13573
15
    { &hf_qsig_ci_null,
13574
15
      { "null", "qsig.ci.null_element",
13575
15
        FT_NONE, BASE_NONE, NULL, 0,
13576
15
        NULL, HFILL }},
13577
15
    { &hf_qsig_ci_sequenceOfExtn,
13578
15
      { "sequenceOfExtn", "qsig.ci.sequenceOfExtn",
13579
15
        FT_UINT32, BASE_DEC, NULL, 0,
13580
15
        "SEQUENCE_OF_Extension", HFILL }},
13581
15
    { &hf_qsig_ci_sequenceOfExtn_item,
13582
15
      { "Extension", "qsig.ci.Extension_element",
13583
15
        FT_NONE, BASE_NONE, NULL, 0,
13584
15
        NULL, HFILL }},
13585
15
    { &hf_qsig_ci_ciCapabilityLevel,
13586
15
      { "ciCapabilityLevel", "qsig.ci.ciCapabilityLevel",
13587
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_CICapabilityLevel_vals), 0,
13588
15
        NULL, HFILL }},
13589
15
    { &hf_qsig_ci_argumentExtension,
13590
15
      { "argumentExtension", "qsig.ci.argumentExtension",
13591
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_T_argumentExtension_vals), 0,
13592
15
        NULL, HFILL }},
13593
15
    { &hf_qsig_ci_ciUnwantedUserStatus,
13594
15
      { "ciUnwantedUserStatus", "qsig.ci.ciUnwantedUserStatus",
13595
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_CIUnwantedUserStatus_vals), 0,
13596
15
        NULL, HFILL }},
13597
15
    { &hf_qsig_ci_resultExtension,
13598
15
      { "resultExtension", "qsig.ci.resultExtension",
13599
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_T_resultExtension_vals), 0,
13600
15
        NULL, HFILL }},
13601
15
    { &hf_qsig_ci_ciProtectionLevel,
13602
15
      { "ciProtectionLevel", "qsig.ci.ciProtectionLevel",
13603
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_CIProtectionLevel_vals), 0,
13604
15
        NULL, HFILL }},
13605
15
    { &hf_qsig_ci_resultExtension_01,
13606
15
      { "resultExtension", "qsig.ci.resultExtension",
13607
15
        FT_UINT32, BASE_DEC, VALS(qsig_ci_T_resultExtension_01_vals), 0,
13608
15
        "T_resultExtension_01", HFILL }},
13609
15
    { &hf_qsig_ci_ServiceList_spare_bit0,
13610
15
      { "spare_bit0", "qsig.ci.ServiceList.spare.bit0",
13611
15
        FT_BOOLEAN, 8, NULL, 0x80,
13612
15
        NULL, HFILL }},
13613
15
    { &hf_qsig_ci_ServiceList_spare_bit1,
13614
15
      { "spare_bit1", "qsig.ci.ServiceList.spare.bit1",
13615
15
        FT_BOOLEAN, 8, NULL, 0x40,
13616
15
        NULL, HFILL }},
13617
15
    { &hf_qsig_ci_ServiceList_spare_bit2,
13618
15
      { "spare_bit2", "qsig.ci.ServiceList.spare.bit2",
13619
15
        FT_BOOLEAN, 8, NULL, 0x20,
13620
15
        NULL, HFILL }},
13621
15
    { &hf_qsig_ci_ServiceList_spare_bit3,
13622
15
      { "spare_bit3", "qsig.ci.ServiceList.spare.bit3",
13623
15
        FT_BOOLEAN, 8, NULL, 0x10,
13624
15
        NULL, HFILL }},
13625
15
    { &hf_qsig_ci_ServiceList_ci_low,
13626
15
      { "ci-low", "qsig.ci.ServiceList.ci.low",
13627
15
        FT_BOOLEAN, 8, NULL, 0x08,
13628
15
        NULL, HFILL }},
13629
15
    { &hf_qsig_ci_ServiceList_ci_medium,
13630
15
      { "ci-medium", "qsig.ci.ServiceList.ci.medium",
13631
15
        FT_BOOLEAN, 8, NULL, 0x04,
13632
15
        NULL, HFILL }},
13633
15
    { &hf_qsig_ci_ServiceList_ci_high,
13634
15
      { "ci-high", "qsig.ci.ServiceList.ci.high",
13635
15
        FT_BOOLEAN, 8, NULL, 0x02,
13636
15
        NULL, HFILL }},
13637
13638
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
13639
13640
15
    { &hf_qsig_aoc_qsig_aoc_AocRateArg_PDU,
13641
15
      { "AocRateArg", "qsig.aoc.AocRateArg_element",
13642
15
        FT_NONE, BASE_NONE, NULL, 0,
13643
15
        NULL, HFILL }},
13644
15
    { &hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU,
13645
15
      { "AocInterimArg", "qsig.aoc.AocInterimArg_element",
13646
15
        FT_NONE, BASE_NONE, NULL, 0,
13647
15
        NULL, HFILL }},
13648
15
    { &hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU,
13649
15
      { "AocFinalArg", "qsig.aoc.AocFinalArg_element",
13650
15
        FT_NONE, BASE_NONE, NULL, 0,
13651
15
        NULL, HFILL }},
13652
15
    { &hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU,
13653
15
      { "ChargeRequestArg", "qsig.aoc.ChargeRequestArg_element",
13654
15
        FT_NONE, BASE_NONE, NULL, 0,
13655
15
        NULL, HFILL }},
13656
15
    { &hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU,
13657
15
      { "ChargeRequestRes", "qsig.aoc.ChargeRequestRes_element",
13658
15
        FT_NONE, BASE_NONE, NULL, 0,
13659
15
        NULL, HFILL }},
13660
15
    { &hf_qsig_aoc_qsig_aoc_DummyArg_PDU,
13661
15
      { "DummyArg", "qsig.aoc.DummyArg",
13662
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_DummyArg_vals), 0,
13663
15
        NULL, HFILL }},
13664
15
    { &hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU,
13665
15
      { "AocCompleteArg", "qsig.aoc.AocCompleteArg_element",
13666
15
        FT_NONE, BASE_NONE, NULL, 0,
13667
15
        NULL, HFILL }},
13668
15
    { &hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU,
13669
15
      { "AocCompleteRes", "qsig.aoc.AocCompleteRes_element",
13670
15
        FT_NONE, BASE_NONE, NULL, 0,
13671
15
        NULL, HFILL }},
13672
15
    { &hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU,
13673
15
      { "AocDivChargeReqArg", "qsig.aoc.AocDivChargeReqArg_element",
13674
15
        FT_NONE, BASE_NONE, NULL, 0,
13675
15
        NULL, HFILL }},
13676
15
    { &hf_qsig_aoc_qsig_aoc_Extension_PDU,
13677
15
      { "Extension", "qsig.aoc.Extension_element",
13678
15
        FT_NONE, BASE_NONE, NULL, 0,
13679
15
        NULL, HFILL }},
13680
15
    { &hf_qsig_aoc_aocRate,
13681
15
      { "aocRate", "qsig.aoc.aocRate",
13682
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_aocRate_vals), 0,
13683
15
        NULL, HFILL }},
13684
15
    { &hf_qsig_aoc_chargeNotAvailable,
13685
15
      { "chargeNotAvailable", "qsig.aoc.chargeNotAvailable_element",
13686
15
        FT_NONE, BASE_NONE, NULL, 0,
13687
15
        NULL, HFILL }},
13688
15
    { &hf_qsig_aoc_aocSCurrencyInfoList,
13689
15
      { "aocSCurrencyInfoList", "qsig.aoc.aocSCurrencyInfoList",
13690
15
        FT_UINT32, BASE_DEC, NULL, 0,
13691
15
        NULL, HFILL }},
13692
15
    { &hf_qsig_aoc_rateArgExtension,
13693
15
      { "rateArgExtension", "qsig.aoc.rateArgExtension",
13694
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_rateArgExtension_vals), 0,
13695
15
        NULL, HFILL }},
13696
15
    { &hf_qsig_aoc_extension,
13697
15
      { "extension", "qsig.aoc.extension_element",
13698
15
        FT_NONE, BASE_NONE, NULL, 0,
13699
15
        NULL, HFILL }},
13700
15
    { &hf_qsig_aoc_multipleExtension,
13701
15
      { "multipleExtension", "qsig.aoc.multipleExtension",
13702
15
        FT_UINT32, BASE_DEC, NULL, 0,
13703
15
        "SEQUENCE_OF_Extension", HFILL }},
13704
15
    { &hf_qsig_aoc_multipleExtension_item,
13705
15
      { "Extension", "qsig.aoc.Extension_element",
13706
15
        FT_NONE, BASE_NONE, NULL, 0,
13707
15
        NULL, HFILL }},
13708
15
    { &hf_qsig_aoc_interimCharge,
13709
15
      { "interimCharge", "qsig.aoc.interimCharge",
13710
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_interimCharge_vals), 0,
13711
15
        NULL, HFILL }},
13712
15
    { &hf_qsig_aoc_freeOfCharge,
13713
15
      { "freeOfCharge", "qsig.aoc.freeOfCharge_element",
13714
15
        FT_NONE, BASE_NONE, NULL, 0,
13715
15
        NULL, HFILL }},
13716
15
    { &hf_qsig_aoc_specificCurrency,
13717
15
      { "specificCurrency", "qsig.aoc.specificCurrency_element",
13718
15
        FT_NONE, BASE_NONE, NULL, 0,
13719
15
        NULL, HFILL }},
13720
15
    { &hf_qsig_aoc_recordedCurrency,
13721
15
      { "recordedCurrency", "qsig.aoc.recordedCurrency_element",
13722
15
        FT_NONE, BASE_NONE, NULL, 0,
13723
15
        NULL, HFILL }},
13724
15
    { &hf_qsig_aoc_interimBillingId,
13725
15
      { "interimBillingId", "qsig.aoc.interimBillingId",
13726
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_InterimBillingId_vals), 0,
13727
15
        NULL, HFILL }},
13728
15
    { &hf_qsig_aoc_interimArgExtension,
13729
15
      { "interimArgExtension", "qsig.aoc.interimArgExtension",
13730
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_interimArgExtension_vals), 0,
13731
15
        NULL, HFILL }},
13732
15
    { &hf_qsig_aoc_finalCharge,
13733
15
      { "finalCharge", "qsig.aoc.finalCharge",
13734
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_finalCharge_vals), 0,
13735
15
        NULL, HFILL }},
13736
15
    { &hf_qsig_aoc_specificCurrency_01,
13737
15
      { "specificCurrency", "qsig.aoc.specificCurrency_element",
13738
15
        FT_NONE, BASE_NONE, NULL, 0,
13739
15
        "T_specificCurrency_01", HFILL }},
13740
15
    { &hf_qsig_aoc_finalBillingId,
13741
15
      { "finalBillingId", "qsig.aoc.finalBillingId",
13742
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_FinalBillingId_vals), 0,
13743
15
        NULL, HFILL }},
13744
15
    { &hf_qsig_aoc_chargingAssociation,
13745
15
      { "chargingAssociation", "qsig.aoc.chargingAssociation",
13746
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingAssociation_vals), 0,
13747
15
        NULL, HFILL }},
13748
15
    { &hf_qsig_aoc_finalArgExtension,
13749
15
      { "finalArgExtension", "qsig.aoc.finalArgExtension",
13750
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_finalArgExtension_vals), 0,
13751
15
        NULL, HFILL }},
13752
15
    { &hf_qsig_aoc_AOCSCurrencyInfoList_item,
13753
15
      { "AOCSCurrencyInfo", "qsig.aoc.AOCSCurrencyInfo_element",
13754
15
        FT_NONE, BASE_NONE, NULL, 0,
13755
15
        NULL, HFILL }},
13756
15
    { &hf_qsig_aoc_chargedItem,
13757
15
      { "chargedItem", "qsig.aoc.chargedItem",
13758
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargedItem_vals), 0,
13759
15
        NULL, HFILL }},
13760
15
    { &hf_qsig_aoc_rateType,
13761
15
      { "rateType", "qsig.aoc.rateType",
13762
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_rateType_vals), 0,
13763
15
        NULL, HFILL }},
13764
15
    { &hf_qsig_aoc_durationCurrency,
13765
15
      { "durationCurrency", "qsig.aoc.durationCurrency_element",
13766
15
        FT_NONE, BASE_NONE, NULL, 0,
13767
15
        NULL, HFILL }},
13768
15
    { &hf_qsig_aoc_flatRateCurrency,
13769
15
      { "flatRateCurrency", "qsig.aoc.flatRateCurrency_element",
13770
15
        FT_NONE, BASE_NONE, NULL, 0,
13771
15
        NULL, HFILL }},
13772
15
    { &hf_qsig_aoc_volumeRateCurrency,
13773
15
      { "volumeRateCurrency", "qsig.aoc.volumeRateCurrency_element",
13774
15
        FT_NONE, BASE_NONE, NULL, 0,
13775
15
        NULL, HFILL }},
13776
15
    { &hf_qsig_aoc_specialChargingCode,
13777
15
      { "specialChargingCode", "qsig.aoc.specialChargingCode",
13778
15
        FT_UINT32, BASE_DEC, NULL, 0,
13779
15
        NULL, HFILL }},
13780
15
    { &hf_qsig_aoc_currencyInfoNotAvailable,
13781
15
      { "currencyInfoNotAvailable", "qsig.aoc.currencyInfoNotAvailable_element",
13782
15
        FT_NONE, BASE_NONE, NULL, 0,
13783
15
        NULL, HFILL }},
13784
15
    { &hf_qsig_aoc_freeOfChargefromBeginning,
13785
15
      { "freeOfChargefromBeginning", "qsig.aoc.freeOfChargefromBeginning_element",
13786
15
        FT_NONE, BASE_NONE, NULL, 0,
13787
15
        NULL, HFILL }},
13788
15
    { &hf_qsig_aoc_dCurrency,
13789
15
      { "dCurrency", "qsig.aoc.dCurrency",
13790
15
        FT_STRING, BASE_NONE, NULL, 0,
13791
15
        "Currency", HFILL }},
13792
15
    { &hf_qsig_aoc_dAmount,
13793
15
      { "dAmount", "qsig.aoc.dAmount_element",
13794
15
        FT_NONE, BASE_NONE, NULL, 0,
13795
15
        "Amount", HFILL }},
13796
15
    { &hf_qsig_aoc_dChargingType,
13797
15
      { "dChargingType", "qsig.aoc.dChargingType",
13798
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingType_vals), 0,
13799
15
        "ChargingType", HFILL }},
13800
15
    { &hf_qsig_aoc_dTime,
13801
15
      { "dTime", "qsig.aoc.dTime_element",
13802
15
        FT_NONE, BASE_NONE, NULL, 0,
13803
15
        "Time", HFILL }},
13804
15
    { &hf_qsig_aoc_dGranularity,
13805
15
      { "dGranularity", "qsig.aoc.dGranularity_element",
13806
15
        FT_NONE, BASE_NONE, NULL, 0,
13807
15
        "Time", HFILL }},
13808
15
    { &hf_qsig_aoc_fRCurrency,
13809
15
      { "fRCurrency", "qsig.aoc.fRCurrency",
13810
15
        FT_STRING, BASE_NONE, NULL, 0,
13811
15
        "Currency", HFILL }},
13812
15
    { &hf_qsig_aoc_fRAmount,
13813
15
      { "fRAmount", "qsig.aoc.fRAmount_element",
13814
15
        FT_NONE, BASE_NONE, NULL, 0,
13815
15
        "Amount", HFILL }},
13816
15
    { &hf_qsig_aoc_vRCurrency,
13817
15
      { "vRCurrency", "qsig.aoc.vRCurrency",
13818
15
        FT_STRING, BASE_NONE, NULL, 0,
13819
15
        "Currency", HFILL }},
13820
15
    { &hf_qsig_aoc_vRAmount,
13821
15
      { "vRAmount", "qsig.aoc.vRAmount_element",
13822
15
        FT_NONE, BASE_NONE, NULL, 0,
13823
15
        "Amount", HFILL }},
13824
15
    { &hf_qsig_aoc_vRVolumeUnit,
13825
15
      { "vRVolumeUnit", "qsig.aoc.vRVolumeUnit",
13826
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_VolumeUnit_vals), 0,
13827
15
        "VolumeUnit", HFILL }},
13828
15
    { &hf_qsig_aoc_rCurrency,
13829
15
      { "rCurrency", "qsig.aoc.rCurrency",
13830
15
        FT_STRING, BASE_NONE, NULL, 0,
13831
15
        "Currency", HFILL }},
13832
15
    { &hf_qsig_aoc_rAmount,
13833
15
      { "rAmount", "qsig.aoc.rAmount_element",
13834
15
        FT_NONE, BASE_NONE, NULL, 0,
13835
15
        "Amount", HFILL }},
13836
15
    { &hf_qsig_aoc_currencyAmount,
13837
15
      { "currencyAmount", "qsig.aoc.currencyAmount",
13838
15
        FT_UINT32, BASE_DEC, NULL, 0,
13839
15
        NULL, HFILL }},
13840
15
    { &hf_qsig_aoc_multiplier,
13841
15
      { "multiplier", "qsig.aoc.multiplier",
13842
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_Multiplier_vals), 0,
13843
15
        NULL, HFILL }},
13844
15
    { &hf_qsig_aoc_lengthOfTimeUnit,
13845
15
      { "lengthOfTimeUnit", "qsig.aoc.lengthOfTimeUnit",
13846
15
        FT_UINT32, BASE_DEC, NULL, 0,
13847
15
        NULL, HFILL }},
13848
15
    { &hf_qsig_aoc_scale,
13849
15
      { "scale", "qsig.aoc.scale",
13850
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_Scale_vals), 0,
13851
15
        NULL, HFILL }},
13852
15
    { &hf_qsig_aoc_chargeNumber,
13853
15
      { "chargeNumber", "qsig.aoc.chargeNumber",
13854
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13855
15
        "PartyNumber", HFILL }},
13856
15
    { &hf_qsig_aoc_chargeIdentifier,
13857
15
      { "chargeIdentifier", "qsig.aoc.chargeIdentifier",
13858
15
        FT_INT32, BASE_DEC, NULL, 0,
13859
15
        NULL, HFILL }},
13860
15
    { &hf_qsig_aoc_adviceModeCombinations,
13861
15
      { "adviceModeCombinations", "qsig.aoc.adviceModeCombinations",
13862
15
        FT_UINT32, BASE_DEC, NULL, 0,
13863
15
        "SEQUENCE_SIZE_0_7_OF_AdviceModeCombination", HFILL }},
13864
15
    { &hf_qsig_aoc_adviceModeCombinations_item,
13865
15
      { "AdviceModeCombination", "qsig.aoc.AdviceModeCombination",
13866
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_AdviceModeCombination_vals), 0,
13867
15
        NULL, HFILL }},
13868
15
    { &hf_qsig_aoc_chargeReqArgExtension,
13869
15
      { "chargeReqArgExtension", "qsig.aoc.chargeReqArgExtension",
13870
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_chargeReqArgExtension_vals), 0,
13871
15
        NULL, HFILL }},
13872
15
    { &hf_qsig_aoc_adviceModeCombination,
13873
15
      { "adviceModeCombination", "qsig.aoc.adviceModeCombination",
13874
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_AdviceModeCombination_vals), 0,
13875
15
        NULL, HFILL }},
13876
15
    { &hf_qsig_aoc_chargeReqResExtension,
13877
15
      { "chargeReqResExtension", "qsig.aoc.chargeReqResExtension",
13878
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_chargeReqResExtension_vals), 0,
13879
15
        NULL, HFILL }},
13880
15
    { &hf_qsig_aoc_none,
13881
15
      { "none", "qsig.aoc.none_element",
13882
15
        FT_NONE, BASE_NONE, NULL, 0,
13883
15
        NULL, HFILL }},
13884
15
    { &hf_qsig_aoc_chargedUser,
13885
15
      { "chargedUser", "qsig.aoc.chargedUser",
13886
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13887
15
        "PartyNumber", HFILL }},
13888
15
    { &hf_qsig_aoc_completeArgExtension,
13889
15
      { "completeArgExtension", "qsig.aoc.completeArgExtension",
13890
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_completeArgExtension_vals), 0,
13891
15
        NULL, HFILL }},
13892
15
    { &hf_qsig_aoc_chargingOption,
13893
15
      { "chargingOption", "qsig.aoc.chargingOption",
13894
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingOption_vals), 0,
13895
15
        NULL, HFILL }},
13896
15
    { &hf_qsig_aoc_completeResExtension,
13897
15
      { "completeResExtension", "qsig.aoc.completeResExtension",
13898
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_completeResExtension_vals), 0,
13899
15
        NULL, HFILL }},
13900
15
    { &hf_qsig_aoc_divertingUser,
13901
15
      { "divertingUser", "qsig.aoc.divertingUser",
13902
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13903
15
        "PartyNumber", HFILL }},
13904
15
    { &hf_qsig_aoc_diversionType,
13905
15
      { "diversionType", "qsig.aoc.diversionType",
13906
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_DiversionType_vals), 0,
13907
15
        NULL, HFILL }},
13908
15
    { &hf_qsig_aoc_aocDivChargeReqArgExt,
13909
15
      { "aocDivChargeReqArgExt", "qsig.aoc.aocDivChargeReqArgExt",
13910
15
        FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_aocDivChargeReqArgExt_vals), 0,
13911
15
        NULL, HFILL }},
13912
13913
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
13914
13915
15
    { &hf_qsig_re_qsig_re_ReAlertingArg_PDU,
13916
15
      { "ReAlertingArg", "qsig.re.ReAlertingArg_element",
13917
15
        FT_NONE, BASE_NONE, NULL, 0,
13918
15
        NULL, HFILL }},
13919
15
    { &hf_qsig_re_qsig_re_ReAnswerArg_PDU,
13920
15
      { "ReAnswerArg", "qsig.re.ReAnswerArg_element",
13921
15
        FT_NONE, BASE_NONE, NULL, 0,
13922
15
        NULL, HFILL }},
13923
15
    { &hf_qsig_re_alertedNumber,
13924
15
      { "alertedNumber", "qsig.re.alertedNumber",
13925
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13926
15
        "PresentedNumberScreened", HFILL }},
13927
15
    { &hf_qsig_re_alertedName,
13928
15
      { "alertedName", "qsig.re.alertedName",
13929
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13930
15
        "Name", HFILL }},
13931
15
    { &hf_qsig_re_argumentExtension,
13932
15
      { "argumentExtension", "qsig.re.argumentExtension",
13933
15
        FT_UINT32, BASE_DEC, VALS(qsig_re_T_argumentExtension_vals), 0,
13934
15
        NULL, HFILL }},
13935
15
    { &hf_qsig_re_extension,
13936
15
      { "extension", "qsig.re.extension_element",
13937
15
        FT_NONE, BASE_NONE, NULL, 0,
13938
15
        NULL, HFILL }},
13939
15
    { &hf_qsig_re_multipleExtension,
13940
15
      { "multipleExtension", "qsig.re.multipleExtension",
13941
15
        FT_UINT32, BASE_DEC, NULL, 0,
13942
15
        "SEQUENCE_OF_Extension", HFILL }},
13943
15
    { &hf_qsig_re_multipleExtension_item,
13944
15
      { "Extension", "qsig.re.Extension_element",
13945
15
        FT_NONE, BASE_NONE, NULL, 0,
13946
15
        NULL, HFILL }},
13947
15
    { &hf_qsig_re_connectedNumber,
13948
15
      { "connectedNumber", "qsig.re.connectedNumber",
13949
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13950
15
        "PresentedNumberScreened", HFILL }},
13951
15
    { &hf_qsig_re_connectedSubaddress,
13952
15
      { "connectedSubaddress", "qsig.re.connectedSubaddress",
13953
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13954
15
        "PartySubaddress", HFILL }},
13955
15
    { &hf_qsig_re_connectedName,
13956
15
      { "connectedName", "qsig.re.connectedName",
13957
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13958
15
        "Name", HFILL }},
13959
15
    { &hf_qsig_re_argumentExtension_01,
13960
15
      { "argumentExtension", "qsig.re.argumentExtension",
13961
15
        FT_UINT32, BASE_DEC, VALS(qsig_re_T_argumentExtension_01_vals), 0,
13962
15
        "T_argumentExtension_01", HFILL }},
13963
13964
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
13965
13966
15
    { &hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU,
13967
15
      { "SynchronizationReqArg", "qsig.sync.SynchronizationReqArg_element",
13968
15
        FT_NONE, BASE_NONE, NULL, 0,
13969
15
        NULL, HFILL }},
13970
15
    { &hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU,
13971
15
      { "SynchronizationReqRes", "qsig.sync.SynchronizationReqRes_element",
13972
15
        FT_NONE, BASE_NONE, NULL, 0,
13973
15
        NULL, HFILL }},
13974
15
    { &hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU,
13975
15
      { "SynchronizationInfoArg", "qsig.sync.SynchronizationInfoArg_element",
13976
15
        FT_NONE, BASE_NONE, NULL, 0,
13977
15
        NULL, HFILL }},
13978
15
    { &hf_qsig_sync_qsig_sync_Extension_PDU,
13979
15
      { "Extension", "qsig.sync.Extension_element",
13980
15
        FT_NONE, BASE_NONE, NULL, 0,
13981
15
        NULL, HFILL }},
13982
15
    { &hf_qsig_sync_action,
13983
15
      { "action", "qsig.sync.action",
13984
15
        FT_INT32, BASE_DEC, VALS(qsig_sync_Action_vals), 0,
13985
15
        NULL, HFILL }},
13986
15
    { &hf_qsig_sync_argExtension,
13987
15
      { "argExtension", "qsig.sync.argExtension",
13988
15
        FT_UINT32, BASE_DEC, VALS(qsig_sync_ArgExtension_vals), 0,
13989
15
        NULL, HFILL }},
13990
15
    { &hf_qsig_sync_response,
13991
15
      { "response", "qsig.sync.response",
13992
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
13993
15
        "BOOLEAN", HFILL }},
13994
15
    { &hf_qsig_sync_stateinfo,
13995
15
      { "stateinfo", "qsig.sync.stateinfo",
13996
15
        FT_INT32, BASE_DEC, VALS(qsig_sync_T_stateinfo_vals), 0,
13997
15
        NULL, HFILL }},
13998
15
    { &hf_qsig_sync_extension,
13999
15
      { "extension", "qsig.sync.extension_element",
14000
15
        FT_NONE, BASE_NONE, NULL, 0,
14001
15
        NULL, HFILL }},
14002
15
    { &hf_qsig_sync_sequOfExtn,
14003
15
      { "sequOfExtn", "qsig.sync.sequOfExtn",
14004
15
        FT_UINT32, BASE_DEC, NULL, 0,
14005
15
        "SEQUENCE_OF_Extension", HFILL }},
14006
15
    { &hf_qsig_sync_sequOfExtn_item,
14007
15
      { "Extension", "qsig.sync.Extension_element",
14008
15
        FT_NONE, BASE_NONE, NULL, 0,
14009
15
        NULL, HFILL }},
14010
14011
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
14012
14013
15
    { &hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU,
14014
15
      { "CintInformation1Arg", "qsig.cint.CintInformation1Arg_element",
14015
15
        FT_NONE, BASE_NONE, NULL, 0,
14016
15
        NULL, HFILL }},
14017
15
    { &hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU,
14018
15
      { "CintInformation2Arg", "qsig.cint.CintInformation2Arg_element",
14019
15
        FT_NONE, BASE_NONE, NULL, 0,
14020
15
        NULL, HFILL }},
14021
15
    { &hf_qsig_cint_qsig_cint_CintCondArg_PDU,
14022
15
      { "CintCondArg", "qsig.cint.CintCondArg_element",
14023
15
        FT_NONE, BASE_NONE, NULL, 0,
14024
15
        NULL, HFILL }},
14025
15
    { &hf_qsig_cint_qsig_cint_CintExtension_PDU,
14026
15
      { "CintExtension", "qsig.cint.CintExtension",
14027
15
        FT_UINT32, BASE_DEC, VALS(qsig_cint_CintExtension_vals), 0,
14028
15
        NULL, HFILL }},
14029
15
    { &hf_qsig_cint_interceptionCause,
14030
15
      { "interceptionCause", "qsig.cint.interceptionCause",
14031
15
        FT_UINT32, BASE_DEC, VALS(qsig_cint_CintCause_vals), 0,
14032
15
        "CintCause", HFILL }},
14033
15
    { &hf_qsig_cint_interceptedToNumber,
14034
15
      { "interceptedToNumber", "qsig.cint.interceptedToNumber",
14035
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14036
15
        "PartyNumber", HFILL }},
14037
15
    { &hf_qsig_cint_extension,
14038
15
      { "extension", "qsig.cint.extension",
14039
15
        FT_UINT32, BASE_DEC, VALS(qsig_cint_CintExtension_vals), 0,
14040
15
        "CintExtension", HFILL }},
14041
15
    { &hf_qsig_cint_calledNumber,
14042
15
      { "calledNumber", "qsig.cint.calledNumber",
14043
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
14044
15
        "PresentedNumberUnscreened", HFILL }},
14045
15
    { &hf_qsig_cint_originalCalledNumber,
14046
15
      { "originalCalledNumber", "qsig.cint.originalCalledNumber",
14047
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
14048
15
        "PresentedNumberUnscreened", HFILL }},
14049
15
    { &hf_qsig_cint_calledName,
14050
15
      { "calledName", "qsig.cint.calledName",
14051
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14052
15
        "Name", HFILL }},
14053
15
    { &hf_qsig_cint_originalCalledName,
14054
15
      { "originalCalledName", "qsig.cint.originalCalledName",
14055
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14056
15
        "Name", HFILL }},
14057
15
    { &hf_qsig_cint_interceptionCause_01,
14058
15
      { "interceptionCause", "qsig.cint.interceptionCause",
14059
15
        FT_UINT32, BASE_DEC, VALS(qsig_cint_Condition_vals), 0,
14060
15
        "Condition", HFILL }},
14061
15
    { &hf_qsig_cint_none,
14062
15
      { "none", "qsig.cint.none_element",
14063
15
        FT_NONE, BASE_NONE, NULL, 0,
14064
15
        NULL, HFILL }},
14065
15
    { &hf_qsig_cint_single,
14066
15
      { "single", "qsig.cint.single_element",
14067
15
        FT_NONE, BASE_NONE, NULL, 0,
14068
15
        "Extension", HFILL }},
14069
15
    { &hf_qsig_cint_multiple,
14070
15
      { "multiple", "qsig.cint.multiple",
14071
15
        FT_UINT32, BASE_DEC, NULL, 0,
14072
15
        "SEQUENCE_OF_Extension", HFILL }},
14073
15
    { &hf_qsig_cint_multiple_item,
14074
15
      { "Extension", "qsig.cint.Extension_element",
14075
15
        FT_NONE, BASE_NONE, NULL, 0,
14076
15
        NULL, HFILL }},
14077
14078
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
14079
14080
15
    { &hf_qsig_cmn_qsig_cmn_DummyArg_PDU,
14081
15
      { "DummyArg", "qsig.cmn.DummyArg",
14082
15
        FT_UINT32, BASE_DEC, VALS(qsig_cmn_DummyArg_vals), 0,
14083
15
        NULL, HFILL }},
14084
15
    { &hf_qsig_cmn_qsig_cmn_CmnArg_PDU,
14085
15
      { "CmnArg", "qsig.cmn.CmnArg_element",
14086
15
        FT_NONE, BASE_NONE, NULL, 0,
14087
15
        NULL, HFILL }},
14088
15
    { &hf_qsig_cmn_featureIdentifier,
14089
15
      { "featureIdentifier", "qsig.cmn.featureIdentifier",
14090
15
        FT_BYTES, BASE_NONE, NULL, 0,
14091
15
        "FeatureIdList", HFILL }},
14092
15
    { &hf_qsig_cmn_ssDNDOprotectionLevel,
14093
15
      { "ssDNDOprotectionLevel", "qsig.cmn.ssDNDOprotectionLevel",
14094
15
        FT_UINT32, BASE_DEC, NULL, 0,
14095
15
        "INTEGER_0_3", HFILL }},
14096
15
    { &hf_qsig_cmn_ssCIprotectionLevel,
14097
15
      { "ssCIprotectionLevel", "qsig.cmn.ssCIprotectionLevel",
14098
15
        FT_UINT32, BASE_DEC, NULL, 0,
14099
15
        "INTEGER_0_3", HFILL }},
14100
15
    { &hf_qsig_cmn_equipmentIdentity,
14101
15
      { "equipmentIdentity", "qsig.cmn.equipmentIdentity_element",
14102
15
        FT_NONE, BASE_NONE, NULL, 0,
14103
15
        "EquipmentId", HFILL }},
14104
15
    { &hf_qsig_cmn_partyCategory,
14105
15
      { "partyCategory", "qsig.cmn.partyCategory",
14106
15
        FT_UINT32, BASE_DEC, VALS(qsig_cmn_PartyCategory_vals), 0,
14107
15
        NULL, HFILL }},
14108
15
    { &hf_qsig_cmn_extension,
14109
15
      { "extension", "qsig.cmn.extension",
14110
15
        FT_UINT32, BASE_DEC, VALS(qsig_cmn_T_extension_vals), 0,
14111
15
        NULL, HFILL }},
14112
15
    { &hf_qsig_cmn_single,
14113
15
      { "single", "qsig.cmn.single_element",
14114
15
        FT_NONE, BASE_NONE, NULL, 0,
14115
15
        "Extension", HFILL }},
14116
15
    { &hf_qsig_cmn_multiple,
14117
15
      { "multiple", "qsig.cmn.multiple",
14118
15
        FT_UINT32, BASE_DEC, NULL, 0,
14119
15
        "SEQUENCE_OF_Extension", HFILL }},
14120
15
    { &hf_qsig_cmn_multiple_item,
14121
15
      { "Extension", "qsig.cmn.Extension_element",
14122
15
        FT_NONE, BASE_NONE, NULL, 0,
14123
15
        NULL, HFILL }},
14124
15
    { &hf_qsig_cmn_null,
14125
15
      { "null", "qsig.cmn.null_element",
14126
15
        FT_NONE, BASE_NONE, NULL, 0,
14127
15
        NULL, HFILL }},
14128
15
    { &hf_qsig_cmn_nodeId,
14129
15
      { "nodeId", "qsig.cmn.nodeId",
14130
15
        FT_STRING, BASE_NONE, NULL, 0,
14131
15
        "IA5String_SIZE_1_10", HFILL }},
14132
15
    { &hf_qsig_cmn_groupId,
14133
15
      { "groupId", "qsig.cmn.groupId",
14134
15
        FT_STRING, BASE_NONE, NULL, 0,
14135
15
        "IA5String_SIZE_1_10", HFILL }},
14136
15
    { &hf_qsig_cmn_unitId,
14137
15
      { "unitId", "qsig.cmn.unitId",
14138
15
        FT_STRING, BASE_NONE, NULL, 0,
14139
15
        "IA5String_SIZE_1_10", HFILL }},
14140
15
    { &hf_qsig_cmn_FeatureIdList_reserved,
14141
15
      { "reserved", "qsig.cmn.FeatureIdList.reserved",
14142
15
        FT_BOOLEAN, 8, NULL, 0x80,
14143
15
        NULL, HFILL }},
14144
15
    { &hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported,
14145
15
      { "ssCFreRoutingSupported", "qsig.cmn.FeatureIdList.ssCFreRoutingSupported",
14146
15
        FT_BOOLEAN, 8, NULL, 0x40,
14147
15
        NULL, HFILL }},
14148
15
    { &hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported,
14149
15
      { "ssCTreRoutingSupported", "qsig.cmn.FeatureIdList.ssCTreRoutingSupported",
14150
15
        FT_BOOLEAN, 8, NULL, 0x20,
14151
15
        NULL, HFILL }},
14152
15
    { &hf_qsig_cmn_FeatureIdList_ssCCBSpossible,
14153
15
      { "ssCCBSpossible", "qsig.cmn.FeatureIdList.ssCCBSpossible",
14154
15
        FT_BOOLEAN, 8, NULL, 0x10,
14155
15
        NULL, HFILL }},
14156
15
    { &hf_qsig_cmn_FeatureIdList_ssCCNRpossible,
14157
15
      { "ssCCNRpossible", "qsig.cmn.FeatureIdList.ssCCNRpossible",
14158
15
        FT_BOOLEAN, 8, NULL, 0x08,
14159
15
        NULL, HFILL }},
14160
15
    { &hf_qsig_cmn_FeatureIdList_ssCOsupported,
14161
15
      { "ssCOsupported", "qsig.cmn.FeatureIdList.ssCOsupported",
14162
15
        FT_BOOLEAN, 8, NULL, 0x04,
14163
15
        NULL, HFILL }},
14164
15
    { &hf_qsig_cmn_FeatureIdList_ssCIforcedRelease,
14165
15
      { "ssCIforcedRelease", "qsig.cmn.FeatureIdList.ssCIforcedRelease",
14166
15
        FT_BOOLEAN, 8, NULL, 0x02,
14167
15
        NULL, HFILL }},
14168
15
    { &hf_qsig_cmn_FeatureIdList_ssCIisolation,
14169
15
      { "ssCIisolation", "qsig.cmn.FeatureIdList.ssCIisolation",
14170
15
        FT_BOOLEAN, 8, NULL, 0x01,
14171
15
        NULL, HFILL }},
14172
15
    { &hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy,
14173
15
      { "ssCIwaitOnBusy", "qsig.cmn.FeatureIdList.ssCIwaitOnBusy",
14174
15
        FT_BOOLEAN, 8, NULL, 0x80,
14175
15
        NULL, HFILL }},
14176
15
    { &hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx,
14177
15
      { "ssAOCsupportChargeRateProvAtGatewPinx", "qsig.cmn.FeatureIdList.ssAOCsupportChargeRateProvAtGatewPinx",
14178
15
        FT_BOOLEAN, 8, NULL, 0x40,
14179
15
        NULL, HFILL }},
14180
15
    { &hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx,
14181
15
      { "ssAOCsupportInterimChargeProvAtGatewPinx", "qsig.cmn.FeatureIdList.ssAOCsupportInterimChargeProvAtGatewPinx",
14182
15
        FT_BOOLEAN, 8, NULL, 0x20,
14183
15
        NULL, HFILL }},
14184
15
    { &hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx,
14185
15
      { "ssAOCsupportFinalChargeProvAtGatewPinx", "qsig.cmn.FeatureIdList.ssAOCsupportFinalChargeProvAtGatewPinx",
14186
15
        FT_BOOLEAN, 8, NULL, 0x10,
14187
15
        NULL, HFILL }},
14188
15
    { &hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx,
14189
15
      { "anfPRsupportedAtCooperatingPinx", "qsig.cmn.FeatureIdList.anfPRsupportedAtCooperatingPinx",
14190
15
        FT_BOOLEAN, 8, NULL, 0x08,
14191
15
        NULL, HFILL }},
14192
15
    { &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate,
14193
15
      { "anfCINTcanInterceptImmediate", "qsig.cmn.FeatureIdList.anfCINTcanInterceptImmediate",
14194
15
        FT_BOOLEAN, 8, NULL, 0x04,
14195
15
        NULL, HFILL }},
14196
15
    { &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed,
14197
15
      { "anfCINTcanInterceptDelayed", "qsig.cmn.FeatureIdList.anfCINTcanInterceptDelayed",
14198
15
        FT_BOOLEAN, 8, NULL, 0x02,
14199
15
        NULL, HFILL }},
14200
15
    { &hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported,
14201
15
      { "anfWTMIreRoutingSupported", "qsig.cmn.FeatureIdList.anfWTMIreRoutingSupported",
14202
15
        FT_BOOLEAN, 8, NULL, 0x01,
14203
15
        NULL, HFILL }},
14204
15
    { &hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported,
14205
15
      { "anfPUMIreRoutingSupported", "qsig.cmn.FeatureIdList.anfPUMIreRoutingSupported",
14206
15
        FT_BOOLEAN, 8, NULL, 0x80,
14207
15
        NULL, HFILL }},
14208
15
    { &hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported,
14209
15
      { "ssSSCTreRoutingSupported", "qsig.cmn.FeatureIdList.ssSSCTreRoutingSupported",
14210
15
        FT_BOOLEAN, 8, NULL, 0x40,
14211
15
        NULL, HFILL }},
14212
14213
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
14214
14215
15
    { &hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU,
14216
15
      { "CPIRequestArg", "qsig.cpi.CPIRequestArg_element",
14217
15
        FT_NONE, BASE_NONE, NULL, 0,
14218
15
        NULL, HFILL }},
14219
15
    { &hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU,
14220
15
      { "CPIPRequestArg", "qsig.cpi.CPIPRequestArg_element",
14221
15
        FT_NONE, BASE_NONE, NULL, 0,
14222
15
        NULL, HFILL }},
14223
15
    { &hf_qsig_cpi_cpiCapabilityLevel,
14224
15
      { "cpiCapabilityLevel", "qsig.cpi.cpiCapabilityLevel",
14225
15
        FT_UINT32, BASE_DEC, VALS(qsig_cpi_CPICapabilityLevel_vals), 0,
14226
15
        NULL, HFILL }},
14227
15
    { &hf_qsig_cpi_argumentExtension,
14228
15
      { "argumentExtension", "qsig.cpi.argumentExtension",
14229
15
        FT_UINT32, BASE_DEC, VALS(qsig_cpi_T_argumentExtension_vals), 0,
14230
15
        NULL, HFILL }},
14231
15
    { &hf_qsig_cpi_extension,
14232
15
      { "extension", "qsig.cpi.extension_element",
14233
15
        FT_NONE, BASE_NONE, NULL, 0,
14234
15
        NULL, HFILL }},
14235
15
    { &hf_qsig_cpi_sequenceOfExtn,
14236
15
      { "sequenceOfExtn", "qsig.cpi.sequenceOfExtn",
14237
15
        FT_UINT32, BASE_DEC, NULL, 0,
14238
15
        "SEQUENCE_OF_Extension", HFILL }},
14239
15
    { &hf_qsig_cpi_sequenceOfExtn_item,
14240
15
      { "Extension", "qsig.cpi.Extension_element",
14241
15
        FT_NONE, BASE_NONE, NULL, 0,
14242
15
        NULL, HFILL }},
14243
15
    { &hf_qsig_cpi_cpiProtectionLevel,
14244
15
      { "cpiProtectionLevel", "qsig.cpi.cpiProtectionLevel",
14245
15
        FT_UINT32, BASE_DEC, VALS(qsig_cpi_CPIProtectionLevel_vals), 0,
14246
15
        NULL, HFILL }},
14247
15
    { &hf_qsig_cpi_argumentExtension_01,
14248
15
      { "argumentExtension", "qsig.cpi.argumentExtension",
14249
15
        FT_UINT32, BASE_DEC, VALS(qsig_cpi_T_argumentExtension_01_vals), 0,
14250
15
        "T_argumentExtension_01", HFILL }},
14251
14252
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
14253
14254
15
    { &hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU,
14255
15
      { "PumRegistrArg", "qsig.pumr.PumRegistrArg_element",
14256
15
        FT_NONE, BASE_NONE, NULL, 0,
14257
15
        NULL, HFILL }},
14258
15
    { &hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU,
14259
15
      { "PumRegistrRes", "qsig.pumr.PumRegistrRes_element",
14260
15
        FT_NONE, BASE_NONE, NULL, 0,
14261
15
        NULL, HFILL }},
14262
15
    { &hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU,
14263
15
      { "PumDelRegArg", "qsig.pumr.PumDelRegArg_element",
14264
15
        FT_NONE, BASE_NONE, NULL, 0,
14265
15
        NULL, HFILL }},
14266
15
    { &hf_qsig_pumr_qsig_pumr_DummyRes_PDU,
14267
15
      { "DummyRes", "qsig.pumr.DummyRes",
14268
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_DummyRes_vals), 0,
14269
15
        NULL, HFILL }},
14270
15
    { &hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU,
14271
15
      { "PumDe-regArg", "qsig.pumr.PumDe_regArg_element",
14272
15
        FT_NONE, BASE_NONE, NULL, 0,
14273
15
        NULL, HFILL }},
14274
15
    { &hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU,
14275
15
      { "PumInterrogArg", "qsig.pumr.PumInterrogArg_element",
14276
15
        FT_NONE, BASE_NONE, NULL, 0,
14277
15
        NULL, HFILL }},
14278
15
    { &hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU,
14279
15
      { "PumInterrogRes", "qsig.pumr.PumInterrogRes",
14280
15
        FT_UINT32, BASE_DEC, NULL, 0,
14281
15
        NULL, HFILL }},
14282
15
    { &hf_qsig_pumr_qsig_pumr_Extension_PDU,
14283
15
      { "Extension", "qsig.pumr.Extension_element",
14284
15
        FT_NONE, BASE_NONE, NULL, 0,
14285
15
        NULL, HFILL }},
14286
15
    { &hf_qsig_pumr_pumRUserId,
14287
15
      { "pumUserId", "qsig.pumr.pumRUserId",
14288
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_RpumUserId_vals), 0,
14289
15
        "RpumUserId", HFILL }},
14290
15
    { &hf_qsig_pumr_pumNumber,
14291
15
      { "pumNumber", "qsig.pumr.pumNumber",
14292
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14293
15
        "PartyNumber", HFILL }},
14294
15
    { &hf_qsig_pumr_alternativeId,
14295
15
      { "alternativeId", "qsig.pumr.alternativeId",
14296
15
        FT_BYTES, BASE_NONE, NULL, 0,
14297
15
        NULL, HFILL }},
14298
15
    { &hf_qsig_pumr_basicService,
14299
15
      { "basicService", "qsig.pumr.basicService",
14300
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
14301
15
        NULL, HFILL }},
14302
15
    { &hf_qsig_pumr_hostingAddr,
14303
15
      { "hostingAddr", "qsig.pumr.hostingAddr",
14304
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14305
15
        "PartyNumber", HFILL }},
14306
15
    { &hf_qsig_pumr_activatingUserAddr,
14307
15
      { "activatingUserAddr", "qsig.pumr.activatingUserAddr",
14308
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14309
15
        "PartyNumber", HFILL }},
14310
15
    { &hf_qsig_pumr_serviceOption,
14311
15
      { "serviceOption", "qsig.pumr.serviceOption",
14312
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_ServiceOption_vals), 0,
14313
15
        NULL, HFILL }},
14314
15
    { &hf_qsig_pumr_sessionParams,
14315
15
      { "sessionParams", "qsig.pumr.sessionParams_element",
14316
15
        FT_NONE, BASE_NONE, NULL, 0,
14317
15
        NULL, HFILL }},
14318
15
    { &hf_qsig_pumr_userPin,
14319
15
      { "userPin", "qsig.pumr.userPin",
14320
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_vals), 0,
14321
15
        NULL, HFILL }},
14322
15
    { &hf_qsig_pumr_pumUserPin,
14323
15
      { "pumUserPin", "qsig.pumr.pumUserPin",
14324
15
        FT_BYTES, BASE_NONE, NULL, 0,
14325
15
        "UserPin", HFILL }},
14326
15
    { &hf_qsig_pumr_activatingUserPin,
14327
15
      { "activatingUserPin", "qsig.pumr.activatingUserPin",
14328
15
        FT_BYTES, BASE_NONE, NULL, 0,
14329
15
        "UserPin", HFILL }},
14330
15
    { &hf_qsig_pumr_argExtension,
14331
15
      { "argExtension", "qsig.pumr.argExtension",
14332
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_PumrExtension_vals), 0,
14333
15
        "PumrExtension", HFILL }},
14334
15
    { &hf_qsig_pumr_null,
14335
15
      { "null", "qsig.pumr.null_element",
14336
15
        FT_NONE, BASE_NONE, NULL, 0,
14337
15
        NULL, HFILL }},
14338
15
    { &hf_qsig_pumr_extension,
14339
15
      { "extension", "qsig.pumr.extension_element",
14340
15
        FT_NONE, BASE_NONE, NULL, 0,
14341
15
        NULL, HFILL }},
14342
15
    { &hf_qsig_pumr_sequOfExtn,
14343
15
      { "sequOfExtn", "qsig.pumr.sequOfExtn",
14344
15
        FT_UINT32, BASE_DEC, NULL, 0,
14345
15
        "SEQUENCE_OF_Extension", HFILL }},
14346
15
    { &hf_qsig_pumr_sequOfExtn_item,
14347
15
      { "Extension", "qsig.pumr.Extension_element",
14348
15
        FT_NONE, BASE_NONE, NULL, 0,
14349
15
        NULL, HFILL }},
14350
15
    { &hf_qsig_pumr_pumXUserId,
14351
15
      { "pumUserId", "qsig.pumr.pumXUserId",
14352
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_XpumUserId_vals), 0,
14353
15
        "XpumUserId", HFILL }},
14354
15
    { &hf_qsig_pumr_pumDUserId,
14355
15
      { "pumUserId", "qsig.pumr.pumDUserId",
14356
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_DpumUserId_vals), 0,
14357
15
        "DpumUserId", HFILL }},
14358
15
    { &hf_qsig_pumr_userPin_01,
14359
15
      { "userPin", "qsig.pumr.userPin",
14360
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_01_vals), 0,
14361
15
        "T_userPin_01", HFILL }},
14362
15
    { &hf_qsig_pumr_pumIUserId,
14363
15
      { "pumUserId", "qsig.pumr.pumIUserId",
14364
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_IpumUserId_vals), 0,
14365
15
        "IpumUserId", HFILL }},
14366
15
    { &hf_qsig_pumr_homeInfoOnly,
14367
15
      { "homeInfoOnly", "qsig.pumr.homeInfoOnly",
14368
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
14369
15
        "BOOLEAN", HFILL }},
14370
15
    { &hf_qsig_pumr_userPin_02,
14371
15
      { "userPin", "qsig.pumr.userPin",
14372
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_02_vals), 0,
14373
15
        "T_userPin_02", HFILL }},
14374
15
    { &hf_qsig_pumr_PumInterrogRes_item,
14375
15
      { "PumInterrogRes item", "qsig.pumr.PumInterrogRes_item_element",
14376
15
        FT_NONE, BASE_NONE, NULL, 0,
14377
15
        NULL, HFILL }},
14378
15
    { &hf_qsig_pumr_interrogParams,
14379
15
      { "interrogParams", "qsig.pumr.interrogParams_element",
14380
15
        FT_NONE, BASE_NONE, NULL, 0,
14381
15
        "SessionParams", HFILL }},
14382
15
    { &hf_qsig_pumr_durationOfSession,
14383
15
      { "durationOfSession", "qsig.pumr.durationOfSession",
14384
15
        FT_INT32, BASE_DEC, NULL, 0,
14385
15
        "INTEGER", HFILL }},
14386
15
    { &hf_qsig_pumr_numberOfOutgCalls,
14387
15
      { "numberOfOutgCalls", "qsig.pumr.numberOfOutgCalls",
14388
15
        FT_INT32, BASE_DEC, NULL, 0,
14389
15
        "INTEGER", HFILL }},
14390
14391
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
14392
14393
15
    { &hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU,
14394
15
      { "EnquiryArg", "qsig.pumch.EnquiryArg_element",
14395
15
        FT_NONE, BASE_NONE, NULL, 0,
14396
15
        NULL, HFILL }},
14397
15
    { &hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU,
14398
15
      { "EnquiryRes", "qsig.pumch.EnquiryRes",
14399
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_EnquiryRes_vals), 0,
14400
15
        NULL, HFILL }},
14401
15
    { &hf_qsig_pumch_qsig_pumch_DivertArg_PDU,
14402
15
      { "DivertArg", "qsig.pumch.DivertArg_element",
14403
15
        FT_NONE, BASE_NONE, NULL, 0,
14404
15
        NULL, HFILL }},
14405
15
    { &hf_qsig_pumch_qsig_pumch_DummyRes_PDU,
14406
15
      { "DummyRes", "qsig.pumch.DummyRes",
14407
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_DummyRes_vals), 0,
14408
15
        NULL, HFILL }},
14409
15
    { &hf_qsig_pumch_qsig_pumch_InformArg_PDU,
14410
15
      { "InformArg", "qsig.pumch.InformArg_element",
14411
15
        FT_NONE, BASE_NONE, NULL, 0,
14412
15
        NULL, HFILL }},
14413
15
    { &hf_qsig_pumch_qsig_pumch_PumoArg_PDU,
14414
15
      { "PumoArg", "qsig.pumch.PumoArg_element",
14415
15
        FT_NONE, BASE_NONE, NULL, 0,
14416
15
        NULL, HFILL }},
14417
15
    { &hf_qsig_pumch_qsig_pumch_Extension_PDU,
14418
15
      { "Extension", "qsig.pumch.Extension_element",
14419
15
        FT_NONE, BASE_NONE, NULL, 0,
14420
15
        NULL, HFILL }},
14421
15
    { &hf_qsig_pumch_pisnNumber,
14422
15
      { "pisnNumber", "qsig.pumch.pisnNumber",
14423
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14424
15
        "PartyNumber", HFILL }},
14425
15
    { &hf_qsig_pumch_qSIGInfoElement,
14426
15
      { "qSIGInfoElement", "qsig.pumch.qSIGInfoElement",
14427
15
        FT_BYTES, BASE_NONE, NULL, 0,
14428
15
        "PSS1InformationElement", HFILL }},
14429
15
    { &hf_qsig_pumch_argExtension,
14430
15
      { "argExtension", "qsig.pumch.argExtension",
14431
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_PumiExtension_vals), 0,
14432
15
        "PumiExtension", HFILL }},
14433
15
    { &hf_qsig_pumch_hostingAddr,
14434
15
      { "hostingAddr", "qsig.pumch.hostingAddr",
14435
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14436
15
        "PartyNumber", HFILL }},
14437
15
    { &hf_qsig_pumch_callingNumber,
14438
15
      { "callingNumber", "qsig.pumch.callingNumber",
14439
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
14440
15
        "PresentedNumberScreened", HFILL }},
14441
15
    { &hf_qsig_pumch_pumIdentity,
14442
15
      { "pumIdentity", "qsig.pumch.pumIdentity",
14443
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_PumIdentity_vals), 0,
14444
15
        NULL, HFILL }},
14445
15
    { &hf_qsig_pumch_callingUserSub,
14446
15
      { "callingUserSub", "qsig.pumch.callingUserSub",
14447
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14448
15
        "PartySubaddress", HFILL }},
14449
15
    { &hf_qsig_pumch_callingUserName,
14450
15
      { "callingUserName", "qsig.pumch.callingUserName",
14451
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14452
15
        "Name", HFILL }},
14453
15
    { &hf_qsig_pumch_pumUserSub,
14454
15
      { "pumUserSub", "qsig.pumch.pumUserSub",
14455
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14456
15
        "PartySubaddress", HFILL }},
14457
15
    { &hf_qsig_pumch_currLocation,
14458
15
      { "currLocation", "qsig.pumch.currLocation_element",
14459
15
        FT_NONE, BASE_NONE, NULL, 0,
14460
15
        NULL, HFILL }},
14461
15
    { &hf_qsig_pumch_cfuActivated,
14462
15
      { "cfuActivated", "qsig.pumch.cfuActivated_element",
14463
15
        FT_NONE, BASE_NONE, NULL, 0,
14464
15
        NULL, HFILL }},
14465
15
    { &hf_qsig_pumch_divToAddress,
14466
15
      { "divToAddress", "qsig.pumch.divToAddress_element",
14467
15
        FT_NONE, BASE_NONE, NULL, 0,
14468
15
        "Address", HFILL }},
14469
15
    { &hf_qsig_pumch_divOptions,
14470
15
      { "divOptions", "qsig.pumch.divOptions",
14471
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_SubscriptionOption_vals), 0,
14472
15
        "SubscriptionOption", HFILL }},
14473
15
    { &hf_qsig_pumch_pumName,
14474
15
      { "pumName", "qsig.pumch.pumName",
14475
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14476
15
        "Name", HFILL }},
14477
15
    { &hf_qsig_pumch_null,
14478
15
      { "null", "qsig.pumch.null_element",
14479
15
        FT_NONE, BASE_NONE, NULL, 0,
14480
15
        NULL, HFILL }},
14481
15
    { &hf_qsig_pumch_extension,
14482
15
      { "extension", "qsig.pumch.extension_element",
14483
15
        FT_NONE, BASE_NONE, NULL, 0,
14484
15
        NULL, HFILL }},
14485
15
    { &hf_qsig_pumch_sequOfExtn,
14486
15
      { "sequOfExtn", "qsig.pumch.sequOfExtn",
14487
15
        FT_UINT32, BASE_DEC, NULL, 0,
14488
15
        "SEQUENCE_OF_Extension", HFILL }},
14489
15
    { &hf_qsig_pumch_sequOfExtn_item,
14490
15
      { "Extension", "qsig.pumch.Extension_element",
14491
15
        FT_NONE, BASE_NONE, NULL, 0,
14492
15
        NULL, HFILL }},
14493
15
    { &hf_qsig_pumch_alternativeId,
14494
15
      { "alternativeId", "qsig.pumch.alternativeId",
14495
15
        FT_BYTES, BASE_NONE, NULL, 0,
14496
15
        NULL, HFILL }},
14497
15
    { &hf_qsig_pumch_both,
14498
15
      { "both", "qsig.pumch.both_element",
14499
15
        FT_NONE, BASE_NONE, NULL, 0,
14500
15
        NULL, HFILL }},
14501
15
    { &hf_qsig_pumch_destinationNumber,
14502
15
      { "destinationNumber", "qsig.pumch.destinationNumber",
14503
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14504
15
        "PartyNumber", HFILL }},
14505
15
    { &hf_qsig_pumch_sendingComplete,
14506
15
      { "sendingComplete", "qsig.pumch.sendingComplete_element",
14507
15
        FT_NONE, BASE_NONE, NULL, 0,
14508
15
        NULL, HFILL }},
14509
15
    { &hf_qsig_pumch_pumoaextension,
14510
15
      { "extension", "qsig.pumch.pumoaextension",
14511
15
        FT_UINT32, BASE_DEC, VALS(qsig_pumch_T_pumoaextension_vals), 0,
14512
15
        "T_pumoaextension", HFILL }},
14513
15
    { &hf_qsig_pumch_single,
14514
15
      { "single", "qsig.pumch.single_element",
14515
15
        FT_NONE, BASE_NONE, NULL, 0,
14516
15
        "Extension", HFILL }},
14517
15
    { &hf_qsig_pumch_multiple,
14518
15
      { "multiple", "qsig.pumch.multiple",
14519
15
        FT_UINT32, BASE_DEC, NULL, 0,
14520
15
        "SEQUENCE_OF_Extension", HFILL }},
14521
15
    { &hf_qsig_pumch_multiple_item,
14522
15
      { "Extension", "qsig.pumch.Extension_element",
14523
15
        FT_NONE, BASE_NONE, NULL, 0,
14524
15
        NULL, HFILL }},
14525
14526
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
14527
14528
15
    { &hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU,
14529
15
      { "SSCTInitiateArg", "qsig.ssct.SSCTInitiateArg_element",
14530
15
        FT_NONE, BASE_NONE, NULL, 0,
14531
15
        NULL, HFILL }},
14532
15
    { &hf_qsig_ssct_qsig_ssct_DummyRes_PDU,
14533
15
      { "DummyRes", "qsig.ssct.DummyRes",
14534
15
        FT_UINT32, BASE_DEC, VALS(qsig_ssct_DummyRes_vals), 0,
14535
15
        NULL, HFILL }},
14536
15
    { &hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU,
14537
15
      { "SSCTSetupArg", "qsig.ssct.SSCTSetupArg_element",
14538
15
        FT_NONE, BASE_NONE, NULL, 0,
14539
15
        NULL, HFILL }},
14540
15
    { &hf_qsig_ssct_qsig_ssct_DummyArg_PDU,
14541
15
      { "DummyArg", "qsig.ssct.DummyArg",
14542
15
        FT_UINT32, BASE_DEC, VALS(qsig_ssct_DummyArg_vals), 0,
14543
15
        NULL, HFILL }},
14544
15
    { &hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU,
14545
15
      { "SSCTDigitInfoArg", "qsig.ssct.SSCTDigitInfoArg_element",
14546
15
        FT_NONE, BASE_NONE, NULL, 0,
14547
15
        NULL, HFILL }},
14548
15
    { &hf_qsig_ssct_qsig_ssct_Extension_PDU,
14549
15
      { "Extension", "qsig.ssct.Extension_element",
14550
15
        FT_NONE, BASE_NONE, NULL, 0,
14551
15
        NULL, HFILL }},
14552
15
    { &hf_qsig_ssct_null,
14553
15
      { "null", "qsig.ssct.null_element",
14554
15
        FT_NONE, BASE_NONE, NULL, 0,
14555
15
        NULL, HFILL }},
14556
15
    { &hf_qsig_ssct_single,
14557
15
      { "single", "qsig.ssct.single_element",
14558
15
        FT_NONE, BASE_NONE, NULL, 0,
14559
15
        "Extension", HFILL }},
14560
15
    { &hf_qsig_ssct_multiple,
14561
15
      { "multiple", "qsig.ssct.multiple",
14562
15
        FT_UINT32, BASE_DEC, NULL, 0,
14563
15
        "SEQUENCE_OF_Extension", HFILL }},
14564
15
    { &hf_qsig_ssct_multiple_item,
14565
15
      { "Extension", "qsig.ssct.Extension_element",
14566
15
        FT_NONE, BASE_NONE, NULL, 0,
14567
15
        NULL, HFILL }},
14568
15
    { &hf_qsig_ssct_rerouteingNumber,
14569
15
      { "rerouteingNumber", "qsig.ssct.rerouteingNumber",
14570
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14571
15
        "PartyNumber", HFILL }},
14572
15
    { &hf_qsig_ssct_transferredAddress,
14573
15
      { "transferredAddress", "qsig.ssct.transferredAddress",
14574
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
14575
15
        "PresentedAddressScreened", HFILL }},
14576
15
    { &hf_qsig_ssct_awaitConnect,
14577
15
      { "awaitConnect", "qsig.ssct.awaitConnect",
14578
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
14579
15
        NULL, HFILL }},
14580
15
    { &hf_qsig_ssct_transferredName,
14581
15
      { "transferredName", "qsig.ssct.transferredName",
14582
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14583
15
        "Name", HFILL }},
14584
15
    { &hf_qsig_ssct_transferringAddress,
14585
15
      { "transferringAddress", "qsig.ssct.transferringAddress",
14586
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
14587
15
        "PresentedAddressScreened", HFILL }},
14588
15
    { &hf_qsig_ssct_transferringName,
14589
15
      { "transferringName", "qsig.ssct.transferringName",
14590
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14591
15
        "Name", HFILL }},
14592
15
    { &hf_qsig_ssct_argumentExtensionSSCTI,
14593
15
      { "argumentExtension", "qsig.ssct.argumentExtensionSSCTI",
14594
15
        FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTIargumentExtension_vals), 0,
14595
15
        "SSCTIargumentExtension", HFILL }},
14596
15
    { &hf_qsig_ssct_argumentExtensionSSCTS,
14597
15
      { "argumentExtension", "qsig.ssct.argumentExtensionSSCTS",
14598
15
        FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTSargumentExtension_vals), 0,
14599
15
        "SSCTSargumentExtension", HFILL }},
14600
15
    { &hf_qsig_ssct_reroutingNumber,
14601
15
      { "reroutingNumber", "qsig.ssct.reroutingNumber",
14602
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14603
15
        "PartyNumber", HFILL }},
14604
15
    { &hf_qsig_ssct_sendingComplete,
14605
15
      { "sendingComplete", "qsig.ssct.sendingComplete_element",
14606
15
        FT_NONE, BASE_NONE, NULL, 0,
14607
15
        NULL, HFILL }},
14608
15
    { &hf_qsig_ssct_argumentExtensionSSCTD,
14609
15
      { "argumentExtension", "qsig.ssct.argumentExtensionSSCTD",
14610
15
        FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTDargumentExtension_vals), 0,
14611
15
        "SSCTDargumentExtension", HFILL }},
14612
14613
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
14614
14615
15
    { &hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU,
14616
15
      { "LocUpdArg", "qsig.wtmlr.LocUpdArg_element",
14617
15
        FT_NONE, BASE_NONE, NULL, 0,
14618
15
        NULL, HFILL }},
14619
15
    { &hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU,
14620
15
      { "DummyRes", "qsig.wtmlr.DummyRes",
14621
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_DummyRes_vals), 0,
14622
15
        NULL, HFILL }},
14623
15
    { &hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU,
14624
15
      { "LocDelArg", "qsig.wtmlr.LocDelArg_element",
14625
15
        FT_NONE, BASE_NONE, NULL, 0,
14626
15
        NULL, HFILL }},
14627
15
    { &hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU,
14628
15
      { "LocDeRegArg", "qsig.wtmlr.LocDeRegArg_element",
14629
15
        FT_NONE, BASE_NONE, NULL, 0,
14630
15
        NULL, HFILL }},
14631
15
    { &hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU,
14632
15
      { "PisnEnqArg", "qsig.wtmlr.PisnEnqArg_element",
14633
15
        FT_NONE, BASE_NONE, NULL, 0,
14634
15
        NULL, HFILL }},
14635
15
    { &hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU,
14636
15
      { "PisnEnqRes", "qsig.wtmlr.PisnEnqRes_element",
14637
15
        FT_NONE, BASE_NONE, NULL, 0,
14638
15
        NULL, HFILL }},
14639
15
    { &hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU,
14640
15
      { "GetRRCInfArg", "qsig.wtmlr.GetRRCInfArg_element",
14641
15
        FT_NONE, BASE_NONE, NULL, 0,
14642
15
        NULL, HFILL }},
14643
15
    { &hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU,
14644
15
      { "GetRRCInfRes", "qsig.wtmlr.GetRRCInfRes_element",
14645
15
        FT_NONE, BASE_NONE, NULL, 0,
14646
15
        NULL, HFILL }},
14647
15
    { &hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU,
14648
15
      { "LocInfoCheckArg", "qsig.wtmlr.LocInfoCheckArg_element",
14649
15
        FT_NONE, BASE_NONE, NULL, 0,
14650
15
        NULL, HFILL }},
14651
15
    { &hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU,
14652
15
      { "LocInfoCheckRes", "qsig.wtmlr.LocInfoCheckRes_element",
14653
15
        FT_NONE, BASE_NONE, NULL, 0,
14654
15
        NULL, HFILL }},
14655
15
    { &hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU,
14656
15
      { "Extension", "qsig.wtmlr.Extension_element",
14657
15
        FT_NONE, BASE_NONE, NULL, 0,
14658
15
        NULL, HFILL }},
14659
15
    { &hf_qsig_wtmlr_wtmUserId,
14660
15
      { "wtmUserId", "qsig.wtmlr.wtmUserId",
14661
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_WtmUserId_vals), 0,
14662
15
        NULL, HFILL }},
14663
15
    { &hf_qsig_wtmlr_basicService,
14664
15
      { "basicService", "qsig.wtmlr.basicService",
14665
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
14666
15
        NULL, HFILL }},
14667
15
    { &hf_qsig_wtmlr_visitPINX,
14668
15
      { "visitPINX", "qsig.wtmlr.visitPINX",
14669
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14670
15
        "PartyNumber", HFILL }},
14671
15
    { &hf_qsig_wtmlr_argExtension,
14672
15
      { "argExtension", "qsig.wtmlr.argExtension",
14673
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_LrExtension_vals), 0,
14674
15
        "LrExtension", HFILL }},
14675
15
    { &hf_qsig_wtmlr_null,
14676
15
      { "null", "qsig.wtmlr.null_element",
14677
15
        FT_NONE, BASE_NONE, NULL, 0,
14678
15
        NULL, HFILL }},
14679
15
    { &hf_qsig_wtmlr_extension,
14680
15
      { "extension", "qsig.wtmlr.extension_element",
14681
15
        FT_NONE, BASE_NONE, NULL, 0,
14682
15
        NULL, HFILL }},
14683
15
    { &hf_qsig_wtmlr_sequOfExtn,
14684
15
      { "sequOfExtn", "qsig.wtmlr.sequOfExtn",
14685
15
        FT_UINT32, BASE_DEC, NULL, 0,
14686
15
        "SEQUENCE_OF_Extension", HFILL }},
14687
15
    { &hf_qsig_wtmlr_sequOfExtn_item,
14688
15
      { "Extension", "qsig.wtmlr.Extension_element",
14689
15
        FT_NONE, BASE_NONE, NULL, 0,
14690
15
        NULL, HFILL }},
14691
15
    { &hf_qsig_wtmlr_alternativeId,
14692
15
      { "alternativeId", "qsig.wtmlr.alternativeId",
14693
15
        FT_BYTES, BASE_NONE, NULL, 0,
14694
15
        NULL, HFILL }},
14695
15
    { &hf_qsig_wtmlr_resExtension,
14696
15
      { "resExtension", "qsig.wtmlr.resExtension",
14697
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_LrExtension_vals), 0,
14698
15
        "LrExtension", HFILL }},
14699
15
    { &hf_qsig_wtmlr_rrClass,
14700
15
      { "rrClass", "qsig.wtmlr.rrClass",
14701
15
        FT_UINT32, BASE_DEC, NULL, 0,
14702
15
        NULL, HFILL }},
14703
15
    { &hf_qsig_wtmlr_checkResult,
14704
15
      { "checkResult", "qsig.wtmlr.checkResult",
14705
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_CheckResult_vals), 0,
14706
15
        NULL, HFILL }},
14707
15
    { &hf_qsig_wtmlr_pisnNumber,
14708
15
      { "pisnNumber", "qsig.wtmlr.pisnNumber",
14709
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14710
15
        "PartyNumber", HFILL }},
14711
14712
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
14713
14714
15
    { &hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU,
14715
15
      { "EnquiryArg", "qsig.wtmch.EnquiryArg_element",
14716
15
        FT_NONE, BASE_NONE, NULL, 0,
14717
15
        NULL, HFILL }},
14718
15
    { &hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU,
14719
15
      { "EnquiryRes", "qsig.wtmch.EnquiryRes",
14720
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_EnquiryRes_vals), 0,
14721
15
        NULL, HFILL }},
14722
15
    { &hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU,
14723
15
      { "DivertArg", "qsig.wtmch.DivertArg_element",
14724
15
        FT_NONE, BASE_NONE, NULL, 0,
14725
15
        NULL, HFILL }},
14726
15
    { &hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU,
14727
15
      { "DummyRes", "qsig.wtmch.DummyRes",
14728
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_DummyRes_vals), 0,
14729
15
        NULL, HFILL }},
14730
15
    { &hf_qsig_wtmch_qsig_wtmch_InformArg_PDU,
14731
15
      { "InformArg", "qsig.wtmch.InformArg_element",
14732
15
        FT_NONE, BASE_NONE, NULL, 0,
14733
15
        NULL, HFILL }},
14734
15
    { &hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU,
14735
15
      { "WtmoArg", "qsig.wtmch.WtmoArg_element",
14736
15
        FT_NONE, BASE_NONE, NULL, 0,
14737
15
        NULL, HFILL }},
14738
15
    { &hf_qsig_wtmch_qsig_wtmch_Extension_PDU,
14739
15
      { "Extension", "qsig.wtmch.Extension_element",
14740
15
        FT_NONE, BASE_NONE, NULL, 0,
14741
15
        NULL, HFILL }},
14742
15
    { &hf_qsig_wtmch_pisnNumber,
14743
15
      { "pisnNumber", "qsig.wtmch.pisnNumber",
14744
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14745
15
        "PartyNumber", HFILL }},
14746
15
    { &hf_qsig_wtmch_qSIGInfoElement,
14747
15
      { "qSIGInfoElement", "qsig.wtmch.qSIGInfoElement",
14748
15
        FT_BYTES, BASE_NONE, NULL, 0,
14749
15
        "PSS1InformationElement", HFILL }},
14750
15
    { &hf_qsig_wtmch_argExtension,
14751
15
      { "argExtension", "qsig.wtmch.argExtension",
14752
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_WtmiExtension_vals), 0,
14753
15
        "WtmiExtension", HFILL }},
14754
15
    { &hf_qsig_wtmch_visitPINX,
14755
15
      { "visitPINX", "qsig.wtmch.visitPINX",
14756
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14757
15
        "PartyNumber", HFILL }},
14758
15
    { &hf_qsig_wtmch_callingNumber,
14759
15
      { "callingNumber", "qsig.wtmch.callingNumber",
14760
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
14761
15
        "PresentedNumberScreened", HFILL }},
14762
15
    { &hf_qsig_wtmch_wtmIdentity,
14763
15
      { "wtmIdentity", "qsig.wtmch.wtmIdentity",
14764
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_WtmIdentity_vals), 0,
14765
15
        NULL, HFILL }},
14766
15
    { &hf_qsig_wtmch_callingUserSub,
14767
15
      { "callingUserSub", "qsig.wtmch.callingUserSub",
14768
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14769
15
        "PartySubaddress", HFILL }},
14770
15
    { &hf_qsig_wtmch_callingName,
14771
15
      { "callingName", "qsig.wtmch.callingName",
14772
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14773
15
        "Name", HFILL }},
14774
15
    { &hf_qsig_wtmch_wtmUserSub,
14775
15
      { "wtmUserSub", "qsig.wtmch.wtmUserSub",
14776
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14777
15
        "PartySubaddress", HFILL }},
14778
15
    { &hf_qsig_wtmch_currLocation,
14779
15
      { "currLocation", "qsig.wtmch.currLocation_element",
14780
15
        FT_NONE, BASE_NONE, NULL, 0,
14781
15
        NULL, HFILL }},
14782
15
    { &hf_qsig_wtmch_cfuActivated,
14783
15
      { "cfuActivated", "qsig.wtmch.cfuActivated_element",
14784
15
        FT_NONE, BASE_NONE, NULL, 0,
14785
15
        NULL, HFILL }},
14786
15
    { &hf_qsig_wtmch_divToAddress,
14787
15
      { "divToAddress", "qsig.wtmch.divToAddress_element",
14788
15
        FT_NONE, BASE_NONE, NULL, 0,
14789
15
        "Address", HFILL }},
14790
15
    { &hf_qsig_wtmch_divOptions,
14791
15
      { "divOptions", "qsig.wtmch.divOptions",
14792
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_SubscriptionOption_vals), 0,
14793
15
        "SubscriptionOption", HFILL }},
14794
15
    { &hf_qsig_wtmch_wtmName,
14795
15
      { "wtmName", "qsig.wtmch.wtmName",
14796
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14797
15
        "Name", HFILL }},
14798
15
    { &hf_qsig_wtmch_null,
14799
15
      { "null", "qsig.wtmch.null_element",
14800
15
        FT_NONE, BASE_NONE, NULL, 0,
14801
15
        NULL, HFILL }},
14802
15
    { &hf_qsig_wtmch_extension,
14803
15
      { "extension", "qsig.wtmch.extension_element",
14804
15
        FT_NONE, BASE_NONE, NULL, 0,
14805
15
        NULL, HFILL }},
14806
15
    { &hf_qsig_wtmch_sequOfExtn,
14807
15
      { "sequOfExtn", "qsig.wtmch.sequOfExtn",
14808
15
        FT_UINT32, BASE_DEC, NULL, 0,
14809
15
        "SEQUENCE_OF_Extension", HFILL }},
14810
15
    { &hf_qsig_wtmch_sequOfExtn_item,
14811
15
      { "Extension", "qsig.wtmch.Extension_element",
14812
15
        FT_NONE, BASE_NONE, NULL, 0,
14813
15
        NULL, HFILL }},
14814
15
    { &hf_qsig_wtmch_alternativeId,
14815
15
      { "alternativeId", "qsig.wtmch.alternativeId",
14816
15
        FT_BYTES, BASE_NONE, NULL, 0,
14817
15
        NULL, HFILL }},
14818
15
    { &hf_qsig_wtmch_both,
14819
15
      { "both", "qsig.wtmch.both_element",
14820
15
        FT_NONE, BASE_NONE, NULL, 0,
14821
15
        NULL, HFILL }},
14822
15
    { &hf_qsig_wtmch_destinationNumber,
14823
15
      { "destinationNumber", "qsig.wtmch.destinationNumber",
14824
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14825
15
        "PartyNumber", HFILL }},
14826
15
    { &hf_qsig_wtmch_sendingComplete,
14827
15
      { "sendingComplete", "qsig.wtmch.sendingComplete_element",
14828
15
        FT_NONE, BASE_NONE, NULL, 0,
14829
15
        NULL, HFILL }},
14830
15
    { &hf_qsig_wtmch_wtmoaextension,
14831
15
      { "extension", "qsig.wtmch.wtmoaextension",
14832
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmch_T_wtmoaextension_vals), 0,
14833
15
        "T_wtmoaextension", HFILL }},
14834
15
    { &hf_qsig_wtmch_single,
14835
15
      { "single", "qsig.wtmch.single_element",
14836
15
        FT_NONE, BASE_NONE, NULL, 0,
14837
15
        "Extension", HFILL }},
14838
15
    { &hf_qsig_wtmch_multiple,
14839
15
      { "multiple", "qsig.wtmch.multiple",
14840
15
        FT_UINT32, BASE_DEC, NULL, 0,
14841
15
        "SEQUENCE_OF_Extension", HFILL }},
14842
15
    { &hf_qsig_wtmch_multiple_item,
14843
15
      { "Extension", "qsig.wtmch.Extension_element",
14844
15
        FT_NONE, BASE_NONE, NULL, 0,
14845
15
        NULL, HFILL }},
14846
14847
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
14848
14849
15
    { &hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU,
14850
15
      { "AuthWtmArg", "qsig.wtmau.AuthWtmArg_element",
14851
15
        FT_NONE, BASE_NONE, NULL, 0,
14852
15
        NULL, HFILL }},
14853
15
    { &hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU,
14854
15
      { "AuthWtmRes", "qsig.wtmau.AuthWtmRes_element",
14855
15
        FT_NONE, BASE_NONE, NULL, 0,
14856
15
        NULL, HFILL }},
14857
15
    { &hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU,
14858
15
      { "WtatParamArg", "qsig.wtmau.WtatParamArg_element",
14859
15
        FT_NONE, BASE_NONE, NULL, 0,
14860
15
        NULL, HFILL }},
14861
15
    { &hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU,
14862
15
      { "WtatParamRes", "qsig.wtmau.WtatParamRes_element",
14863
15
        FT_NONE, BASE_NONE, NULL, 0,
14864
15
        NULL, HFILL }},
14865
15
    { &hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU,
14866
15
      { "WtanParamArg", "qsig.wtmau.WtanParamArg_element",
14867
15
        FT_NONE, BASE_NONE, NULL, 0,
14868
15
        NULL, HFILL }},
14869
15
    { &hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU,
14870
15
      { "WtanParamRes", "qsig.wtmau.WtanParamRes_element",
14871
15
        FT_NONE, BASE_NONE, NULL, 0,
14872
15
        NULL, HFILL }},
14873
15
    { &hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU,
14874
15
      { "ARG-transferAuthParam", "qsig.wtmau.ARG_transferAuthParam_element",
14875
15
        FT_NONE, BASE_NONE, NULL, 0,
14876
15
        NULL, HFILL }},
14877
15
    { &hf_qsig_wtmau_qsig_wtmau_Extension_PDU,
14878
15
      { "Extension", "qsig.wtmau.Extension_element",
14879
15
        FT_NONE, BASE_NONE, NULL, 0,
14880
15
        NULL, HFILL }},
14881
15
    { &hf_qsig_wtmau_wtmUserId,
14882
15
      { "wtmUserId", "qsig.wtmau.wtmUserId",
14883
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_WtmUserId_vals), 0,
14884
15
        NULL, HFILL }},
14885
15
    { &hf_qsig_wtmau_calcWtatInfo,
14886
15
      { "calcWtatInfo", "qsig.wtmau.calcWtatInfo",
14887
15
        FT_UINT32, BASE_DEC, NULL, 0,
14888
15
        NULL, HFILL }},
14889
15
    { &hf_qsig_wtmau_dummyExtension,
14890
15
      { "dummyExtension", "qsig.wtmau.dummyExtension",
14891
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_DummyExtension_vals), 0,
14892
15
        NULL, HFILL }},
14893
15
    { &hf_qsig_wtmau_autWtmResValue,
14894
15
      { "autWtmResValue", "qsig.wtmau.autWtmResValue",
14895
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_T_autWtmResValue_vals), 0,
14896
15
        NULL, HFILL }},
14897
15
    { &hf_qsig_wtmau_canCompute,
14898
15
      { "canCompute", "qsig.wtmau.canCompute_element",
14899
15
        FT_NONE, BASE_NONE, NULL, 0,
14900
15
        NULL, HFILL }},
14901
15
    { &hf_qsig_wtmau_authChallenge,
14902
15
      { "authChallenge", "qsig.wtmau.authChallenge",
14903
15
        FT_BYTES, BASE_NONE, NULL, 0,
14904
15
        NULL, HFILL }},
14905
15
    { &hf_qsig_wtmau_wtatParamInfo,
14906
15
      { "wtatParamInfo", "qsig.wtmau.wtatParamInfo_element",
14907
15
        FT_NONE, BASE_NONE, NULL, 0,
14908
15
        NULL, HFILL }},
14909
15
    { &hf_qsig_wtmau_authAlgorithm,
14910
15
      { "authAlgorithm", "qsig.wtmau.authAlgorithm_element",
14911
15
        FT_NONE, BASE_NONE, NULL, 0,
14912
15
        NULL, HFILL }},
14913
15
    { &hf_qsig_wtmau_pisnNumber,
14914
15
      { "pisnNumber", "qsig.wtmau.pisnNumber",
14915
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14916
15
        "PartyNumber", HFILL }},
14917
15
    { &hf_qsig_wtmau_alternativeId,
14918
15
      { "alternativeId", "qsig.wtmau.alternativeId",
14919
15
        FT_BYTES, BASE_NONE, NULL, 0,
14920
15
        NULL, HFILL }},
14921
15
    { &hf_qsig_wtmau_wtanParamInfo,
14922
15
      { "wtanParamInfo", "qsig.wtmau.wtanParamInfo",
14923
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_WtanParamInfo_vals), 0,
14924
15
        NULL, HFILL }},
14925
15
    { &hf_qsig_wtmau_wtatParamInfoChoice,
14926
15
      { "wtatParamInfoChoice", "qsig.wtmau.wtatParamInfoChoice",
14927
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_T_wtatParamInfoChoice_vals), 0,
14928
15
        NULL, HFILL }},
14929
15
    { &hf_qsig_wtmau_authSessionKeyInfo,
14930
15
      { "authSessionKeyInfo", "qsig.wtmau.authSessionKeyInfo_element",
14931
15
        FT_NONE, BASE_NONE, NULL, 0,
14932
15
        NULL, HFILL }},
14933
15
    { &hf_qsig_wtmau_authKey,
14934
15
      { "authKey", "qsig.wtmau.authKey",
14935
15
        FT_BYTES, BASE_NONE, NULL, 0,
14936
15
        NULL, HFILL }},
14937
15
    { &hf_qsig_wtmau_challLen,
14938
15
      { "challLen", "qsig.wtmau.challLen",
14939
15
        FT_UINT32, BASE_DEC, NULL, 0,
14940
15
        "INTEGER_1_8", HFILL }},
14941
15
    { &hf_qsig_wtmau_calcWtanInfo,
14942
15
      { "calcWtanInfo", "qsig.wtmau.calcWtanInfo_element",
14943
15
        FT_NONE, BASE_NONE, NULL, 0,
14944
15
        NULL, HFILL }},
14945
15
    { &hf_qsig_wtmau_authSessionKey,
14946
15
      { "authSessionKey", "qsig.wtmau.authSessionKey",
14947
15
        FT_BYTES, BASE_NONE, NULL, 0,
14948
15
        NULL, HFILL }},
14949
15
    { &hf_qsig_wtmau_calculationParam,
14950
15
      { "calculationParam", "qsig.wtmau.calculationParam",
14951
15
        FT_BYTES, BASE_NONE, NULL, 0,
14952
15
        NULL, HFILL }},
14953
15
    { &hf_qsig_wtmau_CalcWtatInfo_item,
14954
15
      { "CalcWtatInfoUnit", "qsig.wtmau.CalcWtatInfoUnit_element",
14955
15
        FT_NONE, BASE_NONE, NULL, 0,
14956
15
        NULL, HFILL }},
14957
15
    { &hf_qsig_wtmau_authResponse,
14958
15
      { "authResponse", "qsig.wtmau.authResponse",
14959
15
        FT_BYTES, BASE_NONE, NULL, 0,
14960
15
        NULL, HFILL }},
14961
15
    { &hf_qsig_wtmau_derivedCipherKey,
14962
15
      { "derivedCipherKey", "qsig.wtmau.derivedCipherKey",
14963
15
        FT_BYTES, BASE_NONE, NULL, 0,
14964
15
        NULL, HFILL }},
14965
15
    { &hf_qsig_wtmau_extension,
14966
15
      { "extension", "qsig.wtmau.extension_element",
14967
15
        FT_NONE, BASE_NONE, NULL, 0,
14968
15
        NULL, HFILL }},
14969
15
    { &hf_qsig_wtmau_sequOfExtn,
14970
15
      { "sequOfExtn", "qsig.wtmau.sequOfExtn",
14971
15
        FT_UINT32, BASE_DEC, NULL, 0,
14972
15
        "SEQUENCE_OF_Extension", HFILL }},
14973
15
    { &hf_qsig_wtmau_sequOfExtn_item,
14974
15
      { "Extension", "qsig.wtmau.Extension_element",
14975
15
        FT_NONE, BASE_NONE, NULL, 0,
14976
15
        NULL, HFILL }},
14977
15
    { &hf_qsig_wtmau_authAlg,
14978
15
      { "authAlg", "qsig.wtmau.authAlg",
14979
15
        FT_UINT32, BASE_DEC, VALS(qsig_wtmau_DefinedIDs_vals), 0,
14980
15
        "DefinedIDs", HFILL }},
14981
15
    { &hf_qsig_wtmau_param,
14982
15
      { "param", "qsig.wtmau.param_element",
14983
15
        FT_NONE, BASE_NONE, NULL, 0,
14984
15
        NULL, HFILL }},
14985
14986
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
14987
14988
15
    { &hf_qsig_sd_qsig_sd_DisplayArg_PDU,
14989
15
      { "DisplayArg", "qsig.sd.DisplayArg_element",
14990
15
        FT_NONE, BASE_NONE, NULL, 0,
14991
15
        NULL, HFILL }},
14992
15
    { &hf_qsig_sd_qsig_sd_KeypadArg_PDU,
14993
15
      { "KeypadArg", "qsig.sd.KeypadArg_element",
14994
15
        FT_NONE, BASE_NONE, NULL, 0,
14995
15
        NULL, HFILL }},
14996
15
    { &hf_qsig_sd_qsig_sd_Extension_PDU,
14997
15
      { "Extension", "qsig.sd.Extension_element",
14998
15
        FT_NONE, BASE_NONE, NULL, 0,
14999
15
        NULL, HFILL }},
15000
15
    { &hf_qsig_sd_displayString,
15001
15
      { "displayString", "qsig.sd.displayString",
15002
15
        FT_UINT32, BASE_DEC, VALS(qsig_sd_DisplayString_vals), 0,
15003
15
        NULL, HFILL }},
15004
15
    { &hf_qsig_sd_sdextension,
15005
15
      { "extension", "qsig.sd.sdextension",
15006
15
        FT_UINT32, BASE_DEC, VALS(qsig_sd_SDExtension_vals), 0,
15007
15
        "SDExtension", HFILL }},
15008
15
    { &hf_qsig_sd_displayStringNormal,
15009
15
      { "displayStringNormal", "qsig.sd.displayStringNormal",
15010
15
        FT_BYTES, BASE_NONE, NULL, 0,
15011
15
        "BMPStringNormal", HFILL }},
15012
15
    { &hf_qsig_sd_displayStringExtended,
15013
15
      { "displayStringExtended", "qsig.sd.displayStringExtended",
15014
15
        FT_BYTES, BASE_NONE, NULL, 0,
15015
15
        "BMPStringExtended", HFILL }},
15016
15
    { &hf_qsig_sd_keypadString,
15017
15
      { "keypadString", "qsig.sd.keypadString",
15018
15
        FT_BYTES, BASE_NONE, NULL, 0,
15019
15
        "BMPStringNormal", HFILL }},
15020
15
    { &hf_qsig_sd_extension,
15021
15
      { "extension", "qsig.sd.extension_element",
15022
15
        FT_NONE, BASE_NONE, NULL, 0,
15023
15
        NULL, HFILL }},
15024
15
    { &hf_qsig_sd_multipleExtension,
15025
15
      { "multipleExtension", "qsig.sd.multipleExtension",
15026
15
        FT_UINT32, BASE_DEC, NULL, 0,
15027
15
        "SEQUENCE_OF_Extension", HFILL }},
15028
15
    { &hf_qsig_sd_multipleExtension_item,
15029
15
      { "Extension", "qsig.sd.Extension_element",
15030
15
        FT_NONE, BASE_NONE, NULL, 0,
15031
15
        NULL, HFILL }},
15032
15033
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
15034
15035
15
    { &hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU,
15036
15
      { "CallIdentificationAssignArg", "qsig.cidl.CallIdentificationAssignArg_element",
15037
15
        FT_NONE, BASE_NONE, NULL, 0,
15038
15
        NULL, HFILL }},
15039
15
    { &hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU,
15040
15
      { "CallIdentificationUpdateArg", "qsig.cidl.CallIdentificationUpdateArg_element",
15041
15
        FT_NONE, BASE_NONE, NULL, 0,
15042
15
        NULL, HFILL }},
15043
15
    { &hf_qsig_cidl_globalCallID,
15044
15
      { "globalCallID", "qsig.cidl.globalCallID_element",
15045
15
        FT_NONE, BASE_NONE, NULL, 0,
15046
15
        "CallIdentificationData", HFILL }},
15047
15
    { &hf_qsig_cidl_threadID,
15048
15
      { "threadID", "qsig.cidl.threadID_element",
15049
15
        FT_NONE, BASE_NONE, NULL, 0,
15050
15
        "CallIdentificationData", HFILL }},
15051
15
    { &hf_qsig_cidl_legID,
15052
15
      { "legID", "qsig.cidl.legID_element",
15053
15
        FT_NONE, BASE_NONE, NULL, 0,
15054
15
        "CallIdentificationData", HFILL }},
15055
15
    { &hf_qsig_cidl_extensiont,
15056
15
      { "extension", "qsig.cidl.extensiont",
15057
15
        FT_UINT32, BASE_DEC, VALS(qsig_cidl_ExtensionType_vals), 0,
15058
15
        "ExtensionType", HFILL }},
15059
15
    { &hf_qsig_cidl_switchingSubDomainName,
15060
15
      { "switchingSubDomainName", "qsig.cidl.switchingSubDomainName",
15061
15
        FT_STRING, BASE_NONE, NULL, 0,
15062
15
        NULL, HFILL }},
15063
15
    { &hf_qsig_cidl_linkageID,
15064
15
      { "linkageID", "qsig.cidl.linkageID",
15065
15
        FT_UINT32, BASE_DEC, VALS(qsig_cidl_T_linkageID_vals), 0,
15066
15
        NULL, HFILL }},
15067
15
    { &hf_qsig_cidl_subDomainID,
15068
15
      { "subDomainID", "qsig.cidl.subDomainID",
15069
15
        FT_BYTES, BASE_NONE, NULL, 0,
15070
15
        NULL, HFILL }},
15071
15
    { &hf_qsig_cidl_globallyUniqueID,
15072
15
      { "globallyUniqueID", "qsig.cidl.globallyUniqueID",
15073
15
        FT_BYTES, BASE_NONE, NULL, 0,
15074
15
        NULL, HFILL }},
15075
15
    { &hf_qsig_cidl_timeStamp,
15076
15
      { "timeStamp", "qsig.cidl.timeStamp",
15077
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15078
15
        NULL, HFILL }},
15079
15
    { &hf_qsig_cidl_extension,
15080
15
      { "extension", "qsig.cidl.extension_element",
15081
15
        FT_NONE, BASE_NONE, NULL, 0,
15082
15
        NULL, HFILL }},
15083
15
    { &hf_qsig_cidl_sequenceOfExt,
15084
15
      { "sequenceOfExt", "qsig.cidl.sequenceOfExt",
15085
15
        FT_UINT32, BASE_DEC, NULL, 0,
15086
15
        "SEQUENCE_OF_Extension", HFILL }},
15087
15
    { &hf_qsig_cidl_sequenceOfExt_item,
15088
15
      { "Extension", "qsig.cidl.Extension_element",
15089
15
        FT_NONE, BASE_NONE, NULL, 0,
15090
15
        NULL, HFILL }},
15091
15092
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
15093
15094
15
    { &hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU,
15095
15
      { "SmsSubmitArg", "qsig.sms.SmsSubmitArg_element",
15096
15
        FT_NONE, BASE_NONE, NULL, 0,
15097
15
        NULL, HFILL }},
15098
15
    { &hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU,
15099
15
      { "SmsSubmitRes", "qsig.sms.SmsSubmitRes_element",
15100
15
        FT_NONE, BASE_NONE, NULL, 0,
15101
15
        NULL, HFILL }},
15102
15
    { &hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU,
15103
15
      { "SmsDeliverArg", "qsig.sms.SmsDeliverArg_element",
15104
15
        FT_NONE, BASE_NONE, NULL, 0,
15105
15
        NULL, HFILL }},
15106
15
    { &hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU,
15107
15
      { "SmsDeliverRes", "qsig.sms.SmsDeliverRes_element",
15108
15
        FT_NONE, BASE_NONE, NULL, 0,
15109
15
        NULL, HFILL }},
15110
15
    { &hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU,
15111
15
      { "SmsStatusReportArg", "qsig.sms.SmsStatusReportArg_element",
15112
15
        FT_NONE, BASE_NONE, NULL, 0,
15113
15
        NULL, HFILL }},
15114
15
    { &hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU,
15115
15
      { "SmsStatusReportRes", "qsig.sms.SmsStatusReportRes_element",
15116
15
        FT_NONE, BASE_NONE, NULL, 0,
15117
15
        NULL, HFILL }},
15118
15
    { &hf_qsig_sms_qsig_sms_SmsCommandArg_PDU,
15119
15
      { "SmsCommandArg", "qsig.sms.SmsCommandArg_element",
15120
15
        FT_NONE, BASE_NONE, NULL, 0,
15121
15
        NULL, HFILL }},
15122
15
    { &hf_qsig_sms_qsig_sms_SmsCommandRes_PDU,
15123
15
      { "SmsCommandRes", "qsig.sms.SmsCommandRes_element",
15124
15
        FT_NONE, BASE_NONE, NULL, 0,
15125
15
        NULL, HFILL }},
15126
15
    { &hf_qsig_sms_qsig_sms_ScAlertArg_PDU,
15127
15
      { "ScAlertArg", "qsig.sms.ScAlertArg_element",
15128
15
        FT_NONE, BASE_NONE, NULL, 0,
15129
15
        NULL, HFILL }},
15130
15
    { &hf_qsig_sms_qsig_sms_DummyRes_PDU,
15131
15
      { "DummyRes", "qsig.sms.DummyRes",
15132
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_DummyRes_vals), 0,
15133
15
        NULL, HFILL }},
15134
15
    { &hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU,
15135
15
      { "PAR-smsDeliverError", "qsig.sms.PAR_smsDeliverError_element",
15136
15
        FT_NONE, BASE_NONE, NULL, 0,
15137
15
        NULL, HFILL }},
15138
15
    { &hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU,
15139
15
      { "PAR-smsSubmitError", "qsig.sms.PAR_smsSubmitError_element",
15140
15
        FT_NONE, BASE_NONE, NULL, 0,
15141
15
        NULL, HFILL }},
15142
15
    { &hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU,
15143
15
      { "PAR-smsStatusReportError", "qsig.sms.PAR_smsStatusReportError_element",
15144
15
        FT_NONE, BASE_NONE, NULL, 0,
15145
15
        NULL, HFILL }},
15146
15
    { &hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU,
15147
15
      { "PAR-smsCommandError", "qsig.sms.PAR_smsCommandError_element",
15148
15
        FT_NONE, BASE_NONE, NULL, 0,
15149
15
        NULL, HFILL }},
15150
15
    { &hf_qsig_sms_qsig_sms_SmsExtension_PDU,
15151
15
      { "SmsExtension", "qsig.sms.SmsExtension",
15152
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsExtension_vals), 0,
15153
15
        NULL, HFILL }},
15154
15
    { &hf_qsig_sms_destinationAddress,
15155
15
      { "destinationAddress", "qsig.sms.destinationAddress",
15156
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15157
15
        "PartyNumber", HFILL }},
15158
15
    { &hf_qsig_sms_originatingAddress,
15159
15
      { "originatingAddress", "qsig.sms.originatingAddress",
15160
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15161
15
        "PartyNumber", HFILL }},
15162
15
    { &hf_qsig_sms_messageReference,
15163
15
      { "messageReference", "qsig.sms.messageReference",
15164
15
        FT_UINT32, BASE_DEC, NULL, 0,
15165
15
        NULL, HFILL }},
15166
15
    { &hf_qsig_sms_smSubmitParameter,
15167
15
      { "smSubmitParameter", "qsig.sms.smSubmitParameter_element",
15168
15
        FT_NONE, BASE_NONE, NULL, 0,
15169
15
        NULL, HFILL }},
15170
15
    { &hf_qsig_sms_userData,
15171
15
      { "userData", "qsig.sms.userData_element",
15172
15
        FT_NONE, BASE_NONE, NULL, 0,
15173
15
        NULL, HFILL }},
15174
15
    { &hf_qsig_sms_smsExtension,
15175
15
      { "smsExtension", "qsig.sms.smsExtension",
15176
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsExtension_vals), 0,
15177
15
        NULL, HFILL }},
15178
15
    { &hf_qsig_sms_serviceCentreTimeStamp,
15179
15
      { "serviceCentreTimeStamp", "qsig.sms.serviceCentreTimeStamp",
15180
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15181
15
        NULL, HFILL }},
15182
15
    { &hf_qsig_sms_protocolIdentifier,
15183
15
      { "protocolIdentifier", "qsig.sms.protocolIdentifier",
15184
15
        FT_UINT32, BASE_DEC, NULL, 0,
15185
15
        NULL, HFILL }},
15186
15
    { &hf_qsig_sms_originatingName,
15187
15
      { "originatingName", "qsig.sms.originatingName",
15188
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15189
15
        "Name", HFILL }},
15190
15
    { &hf_qsig_sms_smDeliverParameter,
15191
15
      { "smDeliverParameter", "qsig.sms.smDeliverParameter_element",
15192
15
        FT_NONE, BASE_NONE, NULL, 0,
15193
15
        NULL, HFILL }},
15194
15
    { &hf_qsig_sms_smsDeliverResponseChoice,
15195
15
      { "smsDeliverResponseChoice", "qsig.sms.smsDeliverResponseChoice",
15196
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsDeliverResChoice_vals), 0,
15197
15
        "SmsDeliverResChoice", HFILL }},
15198
15
    { &hf_qsig_sms_dischargeTime,
15199
15
      { "dischargeTime", "qsig.sms.dischargeTime",
15200
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15201
15
        NULL, HFILL }},
15202
15
    { &hf_qsig_sms_recipientAddress,
15203
15
      { "recipientAddress", "qsig.sms.recipientAddress",
15204
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15205
15
        "PartyNumber", HFILL }},
15206
15
    { &hf_qsig_sms_recipientName,
15207
15
      { "recipientName", "qsig.sms.recipientName",
15208
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15209
15
        "Name", HFILL }},
15210
15
    { &hf_qsig_sms_status,
15211
15
      { "status", "qsig.sms.status",
15212
15
        FT_UINT32, BASE_DEC, NULL, 0,
15213
15
        NULL, HFILL }},
15214
15
    { &hf_qsig_sms_priority,
15215
15
      { "priority", "qsig.sms.priority",
15216
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15217
15
        "BOOLEAN", HFILL }},
15218
15
    { &hf_qsig_sms_moreMessagesToSend,
15219
15
      { "moreMessagesToSend", "qsig.sms.moreMessagesToSend",
15220
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15221
15
        "BOOLEAN", HFILL }},
15222
15
    { &hf_qsig_sms_statusReportQualifier,
15223
15
      { "statusReportQualifier", "qsig.sms.statusReportQualifier",
15224
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15225
15
        "BOOLEAN", HFILL }},
15226
15
    { &hf_qsig_sms_smsStatusReportResponseChoice,
15227
15
      { "smsStatusReportResponseChoice", "qsig.sms.smsStatusReportResponseChoice",
15228
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsStatusReportResponseChoice_vals), 0,
15229
15
        NULL, HFILL }},
15230
15
    { &hf_qsig_sms_messageNumber,
15231
15
      { "messageNumber", "qsig.sms.messageNumber",
15232
15
        FT_UINT32, BASE_DEC, NULL, 0,
15233
15
        "MessageReference", HFILL }},
15234
15
    { &hf_qsig_sms_commandType,
15235
15
      { "commandType", "qsig.sms.commandType",
15236
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_CommandType_vals), 0,
15237
15
        NULL, HFILL }},
15238
15
    { &hf_qsig_sms_commandData,
15239
15
      { "commandData", "qsig.sms.commandData",
15240
15
        FT_BYTES, BASE_NONE, NULL, 0,
15241
15
        NULL, HFILL }},
15242
15
    { &hf_qsig_sms_statusReportRequest,
15243
15
      { "statusReportRequest", "qsig.sms.statusReportRequest",
15244
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15245
15
        "BOOLEAN", HFILL }},
15246
15
    { &hf_qsig_sms_null,
15247
15
      { "null", "qsig.sms.null_element",
15248
15
        FT_NONE, BASE_NONE, NULL, 0,
15249
15
        NULL, HFILL }},
15250
15
    { &hf_qsig_sms_validityPeriod,
15251
15
      { "validityPeriod", "qsig.sms.validityPeriod",
15252
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_ValidityPeriod_vals), 0,
15253
15
        NULL, HFILL }},
15254
15
    { &hf_qsig_sms_replyPath,
15255
15
      { "replyPath", "qsig.sms.replyPath",
15256
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15257
15
        "BOOLEAN", HFILL }},
15258
15
    { &hf_qsig_sms_rejectDuplicates,
15259
15
      { "rejectDuplicates", "qsig.sms.rejectDuplicates",
15260
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15261
15
        "BOOLEAN", HFILL }},
15262
15
    { &hf_qsig_sms_statusReportIndication,
15263
15
      { "statusReportIndication", "qsig.sms.statusReportIndication",
15264
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15265
15
        "BOOLEAN", HFILL }},
15266
15
    { &hf_qsig_sms_resChoiceSeq,
15267
15
      { "resChoiceSeq", "qsig.sms.resChoiceSeq_element",
15268
15
        FT_NONE, BASE_NONE, NULL, 0,
15269
15
        NULL, HFILL }},
15270
15
    { &hf_qsig_sms_single,
15271
15
      { "single", "qsig.sms.single_element",
15272
15
        FT_NONE, BASE_NONE, NULL, 0,
15273
15
        "Extension", HFILL }},
15274
15
    { &hf_qsig_sms_multiple,
15275
15
      { "multiple", "qsig.sms.multiple",
15276
15
        FT_UINT32, BASE_DEC, NULL, 0,
15277
15
        "SEQUENCE_OF_Extension", HFILL }},
15278
15
    { &hf_qsig_sms_multiple_item,
15279
15
      { "Extension", "qsig.sms.Extension_element",
15280
15
        FT_NONE, BASE_NONE, NULL, 0,
15281
15
        NULL, HFILL }},
15282
15
    { &hf_qsig_sms_validityPeriodRel,
15283
15
      { "validityPeriodRel", "qsig.sms.validityPeriodRel",
15284
15
        FT_UINT32, BASE_DEC, NULL, 0,
15285
15
        NULL, HFILL }},
15286
15
    { &hf_qsig_sms_validityPeriodAbs,
15287
15
      { "validityPeriodAbs", "qsig.sms.validityPeriodAbs",
15288
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15289
15
        NULL, HFILL }},
15290
15
    { &hf_qsig_sms_validityPeriodEnh,
15291
15
      { "validityPeriodEnh", "qsig.sms.validityPeriodEnh_element",
15292
15
        FT_NONE, BASE_NONE, NULL, 0,
15293
15
        NULL, HFILL }},
15294
15
    { &hf_qsig_sms_singleShotSM,
15295
15
      { "singleShotSM", "qsig.sms.singleShotSM",
15296
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15297
15
        "BOOLEAN", HFILL }},
15298
15
    { &hf_qsig_sms_enhancedVP,
15299
15
      { "enhancedVP", "qsig.sms.enhancedVP",
15300
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_EnhancedVP_vals), 0,
15301
15
        NULL, HFILL }},
15302
15
    { &hf_qsig_sms_validityPeriodSec,
15303
15
      { "validityPeriodSec", "qsig.sms.validityPeriodSec",
15304
15
        FT_UINT32, BASE_DEC, NULL, 0,
15305
15
        "INTEGER_0_255", HFILL }},
15306
15
    { &hf_qsig_sms_validityPeriodSemi,
15307
15
      { "validityPeriodSemi", "qsig.sms.validityPeriodSemi",
15308
15
        FT_BYTES, BASE_NONE, NULL, 0,
15309
15
        NULL, HFILL }},
15310
15
    { &hf_qsig_sms_userDataHeader,
15311
15
      { "userDataHeader", "qsig.sms.userDataHeader",
15312
15
        FT_UINT32, BASE_DEC, NULL, 0,
15313
15
        NULL, HFILL }},
15314
15
    { &hf_qsig_sms_class,
15315
15
      { "class", "qsig.sms.class",
15316
15
        FT_UINT32, BASE_DEC, NULL, 0,
15317
15
        "INTEGER_0_3", HFILL }},
15318
15
    { &hf_qsig_sms_compressed,
15319
15
      { "compressed", "qsig.sms.compressed",
15320
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15321
15
        "BOOLEAN", HFILL }},
15322
15
    { &hf_qsig_sms_shortMessageText,
15323
15
      { "shortMessageText", "qsig.sms.shortMessageText_element",
15324
15
        FT_NONE, BASE_NONE, NULL, 0,
15325
15
        NULL, HFILL }},
15326
15
    { &hf_qsig_sms_shortMessageTextType,
15327
15
      { "shortMessageTextType", "qsig.sms.shortMessageTextType",
15328
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_ShortMessageTextType_vals), 0,
15329
15
        NULL, HFILL }},
15330
15
    { &hf_qsig_sms_shortMessageTextData,
15331
15
      { "shortMessageTextData", "qsig.sms.shortMessageTextData",
15332
15
        FT_BYTES, BASE_NONE, NULL, 0,
15333
15
        NULL, HFILL }},
15334
15
    { &hf_qsig_sms_UserDataHeader_item,
15335
15
      { "UserDataHeaderChoice", "qsig.sms.UserDataHeaderChoice",
15336
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_UserDataHeaderChoice_vals), 0,
15337
15
        NULL, HFILL }},
15338
15
    { &hf_qsig_sms_smscControlParameterHeader,
15339
15
      { "smscControlParameterHeader", "qsig.sms.smscControlParameterHeader",
15340
15
        FT_BYTES, BASE_NONE, NULL, 0,
15341
15
        NULL, HFILL }},
15342
15
    { &hf_qsig_sms_concatenated8BitSMHeader,
15343
15
      { "concatenated8BitSMHeader", "qsig.sms.concatenated8BitSMHeader_element",
15344
15
        FT_NONE, BASE_NONE, NULL, 0,
15345
15
        NULL, HFILL }},
15346
15
    { &hf_qsig_sms_concatenated16BitSMHeader,
15347
15
      { "concatenated16BitSMHeader", "qsig.sms.concatenated16BitSMHeader_element",
15348
15
        FT_NONE, BASE_NONE, NULL, 0,
15349
15
        NULL, HFILL }},
15350
15
    { &hf_qsig_sms_applicationPort8BitHeader,
15351
15
      { "applicationPort8BitHeader", "qsig.sms.applicationPort8BitHeader_element",
15352
15
        FT_NONE, BASE_NONE, NULL, 0,
15353
15
        NULL, HFILL }},
15354
15
    { &hf_qsig_sms_applicationPort16BitHeader,
15355
15
      { "applicationPort16BitHeader", "qsig.sms.applicationPort16BitHeader_element",
15356
15
        FT_NONE, BASE_NONE, NULL, 0,
15357
15
        NULL, HFILL }},
15358
15
    { &hf_qsig_sms_dataHeaderSourceIndicator,
15359
15
      { "dataHeaderSourceIndicator", "qsig.sms.dataHeaderSourceIndicator",
15360
15
        FT_UINT32, BASE_DEC, VALS(qsig_sms_DataHeaderSourceIndicator_vals), 0,
15361
15
        NULL, HFILL }},
15362
15
    { &hf_qsig_sms_wirelessControlHeader,
15363
15
      { "wirelessControlHeader", "qsig.sms.wirelessControlHeader",
15364
15
        FT_BYTES, BASE_NONE, NULL, 0,
15365
15
        NULL, HFILL }},
15366
15
    { &hf_qsig_sms_genericUserValue,
15367
15
      { "genericUserValue", "qsig.sms.genericUserValue_element",
15368
15
        FT_NONE, BASE_NONE, NULL, 0,
15369
15
        NULL, HFILL }},
15370
15
    { &hf_qsig_sms_concatenated8BitSMReferenceNumber,
15371
15
      { "concatenated8BitSMReferenceNumber", "qsig.sms.concatenated8BitSMReferenceNumber",
15372
15
        FT_UINT32, BASE_DEC, NULL, 0,
15373
15
        "INTEGER_0_255", HFILL }},
15374
15
    { &hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM,
15375
15
      { "maximumNumberOf8BitSMInConcatenatedSM", "qsig.sms.maximumNumberOf8BitSMInConcatenatedSM",
15376
15
        FT_UINT32, BASE_DEC, NULL, 0,
15377
15
        "INTEGER_0_255", HFILL }},
15378
15
    { &hf_qsig_sms_sequenceNumberOf8BitSM,
15379
15
      { "sequenceNumberOf8BitSM", "qsig.sms.sequenceNumberOf8BitSM",
15380
15
        FT_UINT32, BASE_DEC, NULL, 0,
15381
15
        "INTEGER_0_255", HFILL }},
15382
15
    { &hf_qsig_sms_concatenated16BitSMReferenceNumber,
15383
15
      { "concatenated16BitSMReferenceNumber", "qsig.sms.concatenated16BitSMReferenceNumber",
15384
15
        FT_UINT32, BASE_DEC, NULL, 0,
15385
15
        "INTEGER_0_65536", HFILL }},
15386
15
    { &hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM,
15387
15
      { "maximumNumberOf16BitSMInConcatenatedSM", "qsig.sms.maximumNumberOf16BitSMInConcatenatedSM",
15388
15
        FT_UINT32, BASE_DEC, NULL, 0,
15389
15
        "INTEGER_0_255", HFILL }},
15390
15
    { &hf_qsig_sms_sequenceNumberOf16BitSM,
15391
15
      { "sequenceNumberOf16BitSM", "qsig.sms.sequenceNumberOf16BitSM",
15392
15
        FT_UINT32, BASE_DEC, NULL, 0,
15393
15
        "INTEGER_0_255", HFILL }},
15394
15
    { &hf_qsig_sms_destination8BitPort,
15395
15
      { "destination8BitPort", "qsig.sms.destination8BitPort",
15396
15
        FT_UINT32, BASE_DEC, NULL, 0,
15397
15
        "INTEGER_0_255", HFILL }},
15398
15
    { &hf_qsig_sms_originator8BitPort,
15399
15
      { "originator8BitPort", "qsig.sms.originator8BitPort",
15400
15
        FT_UINT32, BASE_DEC, NULL, 0,
15401
15
        "INTEGER_0_255", HFILL }},
15402
15
    { &hf_qsig_sms_destination16BitPort,
15403
15
      { "destination16BitPort", "qsig.sms.destination16BitPort",
15404
15
        FT_UINT32, BASE_DEC, NULL, 0,
15405
15
        "INTEGER_0_65536", HFILL }},
15406
15
    { &hf_qsig_sms_originator16BitPort,
15407
15
      { "originator16BitPort", "qsig.sms.originator16BitPort",
15408
15
        FT_UINT32, BASE_DEC, NULL, 0,
15409
15
        "INTEGER_0_65536", HFILL }},
15410
15
    { &hf_qsig_sms_parameterValue,
15411
15
      { "parameterValue", "qsig.sms.parameterValue",
15412
15
        FT_UINT32, BASE_DEC, NULL, 0,
15413
15
        "INTEGER_0_255", HFILL }},
15414
15
    { &hf_qsig_sms_genericUserData,
15415
15
      { "genericUserData", "qsig.sms.genericUserData",
15416
15
        FT_BYTES, BASE_NONE, NULL, 0,
15417
15
        "OCTET_STRING", HFILL }},
15418
15
    { &hf_qsig_sms_failureCause,
15419
15
      { "failureCause", "qsig.sms.failureCause",
15420
15
        FT_UINT32, BASE_DEC, NULL, 0,
15421
15
        NULL, HFILL }},
15422
15
    { &hf_qsig_sms_scAddressSaved,
15423
15
      { "scAddressSaved", "qsig.sms.scAddressSaved",
15424
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15425
15
        "BOOLEAN", HFILL }},
15426
15
    { &hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted,
15427
15
      { "sRforTransactionCompleted", "qsig.sms.SmscControlParameterHeader.sRforTransactionCompleted",
15428
15
        FT_BOOLEAN, 8, NULL, 0x80,
15429
15
        NULL, HFILL }},
15430
15
    { &hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError,
15431
15
      { "sRforPermanentError", "qsig.sms.SmscControlParameterHeader.sRforPermanentError",
15432
15
        FT_BOOLEAN, 8, NULL, 0x40,
15433
15
        NULL, HFILL }},
15434
15
    { &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying,
15435
15
      { "sRforTempErrorSCnotTrying", "qsig.sms.SmscControlParameterHeader.sRforTempErrorSCnotTrying",
15436
15
        FT_BOOLEAN, 8, NULL, 0x20,
15437
15
        NULL, HFILL }},
15438
15
    { &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying,
15439
15
      { "sRforTempErrorSCstillTrying", "qsig.sms.SmscControlParameterHeader.sRforTempErrorSCstillTrying",
15440
15
        FT_BOOLEAN, 8, NULL, 0x10,
15441
15
        NULL, HFILL }},
15442
15
    { &hf_qsig_sms_SmscControlParameterHeader_spare_bit4,
15443
15
      { "spare_bit4", "qsig.sms.SmscControlParameterHeader.spare.bit4",
15444
15
        FT_BOOLEAN, 8, NULL, 0x08,
15445
15
        NULL, HFILL }},
15446
15
    { &hf_qsig_sms_SmscControlParameterHeader_spare_bit5,
15447
15
      { "spare_bit5", "qsig.sms.SmscControlParameterHeader.spare.bit5",
15448
15
        FT_BOOLEAN, 8, NULL, 0x04,
15449
15
        NULL, HFILL }},
15450
15
    { &hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM,
15451
15
      { "cancelSRRforConcatenatedSM", "qsig.sms.SmscControlParameterHeader.cancelSRRforConcatenatedSM",
15452
15
        FT_BOOLEAN, 8, NULL, 0x02,
15453
15
        NULL, HFILL }},
15454
15
    { &hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR,
15455
15
      { "includeOrigUDHintoSR", "qsig.sms.SmscControlParameterHeader.includeOrigUDHintoSR",
15456
15
        FT_BOOLEAN, 8, NULL, 0x01,
15457
15
        NULL, HFILL }},
15458
15459
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
15460
15461
15
    { &hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU,
15462
15
      { "MCRequestArg", "qsig.mcr.MCRequestArg_element",
15463
15
        FT_NONE, BASE_NONE, NULL, 0,
15464
15
        NULL, HFILL }},
15465
15
    { &hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU,
15466
15
      { "MCRequestResult", "qsig.mcr.MCRequestResult_element",
15467
15
        FT_NONE, BASE_NONE, NULL, 0,
15468
15
        NULL, HFILL }},
15469
15
    { &hf_qsig_mcr_qsig_mcr_MCInformArg_PDU,
15470
15
      { "MCInformArg", "qsig.mcr.MCInformArg_element",
15471
15
        FT_NONE, BASE_NONE, NULL, 0,
15472
15
        NULL, HFILL }},
15473
15
    { &hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU,
15474
15
      { "MCAlertingArg", "qsig.mcr.MCAlertingArg_element",
15475
15
        FT_NONE, BASE_NONE, NULL, 0,
15476
15
        NULL, HFILL }},
15477
15
    { &hf_qsig_mcr_qsig_mcr_Extension_PDU,
15478
15
      { "Extension", "qsig.mcr.Extension_element",
15479
15
        FT_NONE, BASE_NONE, NULL, 0,
15480
15
        NULL, HFILL }},
15481
15
    { &hf_qsig_mcr_callType,
15482
15
      { "callType", "qsig.mcr.callType",
15483
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcr_CallType_vals), 0,
15484
15
        NULL, HFILL }},
15485
15
    { &hf_qsig_mcr_retainOrigCall,
15486
15
      { "retainOrigCall", "qsig.mcr.retainOrigCall",
15487
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15488
15
        "BOOLEAN", HFILL }},
15489
15
    { &hf_qsig_mcr_destinationAddress,
15490
15
      { "destinationAddress", "qsig.mcr.destinationAddress",
15491
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15492
15
        "PresentedAddressUnscreened", HFILL }},
15493
15
    { &hf_qsig_mcr_requestingAddress,
15494
15
      { "requestingAddress", "qsig.mcr.requestingAddress",
15495
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15496
15
        "PresentedAddressUnscreened", HFILL }},
15497
15
    { &hf_qsig_mcr_cooperatingAddress,
15498
15
      { "cooperatingAddress", "qsig.mcr.cooperatingAddress",
15499
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15500
15
        "PresentedAddressUnscreened", HFILL }},
15501
15
    { &hf_qsig_mcr_correlation,
15502
15
      { "correlation", "qsig.mcr.correlation_element",
15503
15
        FT_NONE, BASE_NONE, NULL, 0,
15504
15
        NULL, HFILL }},
15505
15
    { &hf_qsig_mcr_extensions,
15506
15
      { "extensions", "qsig.mcr.extensions",
15507
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcr_MCRExtensions_vals), 0,
15508
15
        "MCRExtensions", HFILL }},
15509
15
    { &hf_qsig_mcr_basicService,
15510
15
      { "basicService", "qsig.mcr.basicService",
15511
15
        FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
15512
15
        NULL, HFILL }},
15513
15
    { &hf_qsig_mcr_cisc,
15514
15
      { "cisc", "qsig.mcr.cisc_element",
15515
15
        FT_NONE, BASE_NONE, NULL, 0,
15516
15
        NULL, HFILL }},
15517
15
    { &hf_qsig_mcr_correlationData,
15518
15
      { "correlationData", "qsig.mcr.correlationData",
15519
15
        FT_STRING, BASE_NONE, NULL, 0,
15520
15
        "CallIdentity", HFILL }},
15521
15
    { &hf_qsig_mcr_correlationReason,
15522
15
      { "correlationReason", "qsig.mcr.correlationReason",
15523
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcr_CorrelationReason_vals), 0,
15524
15
        NULL, HFILL }},
15525
15
    { &hf_qsig_mcr_none,
15526
15
      { "none", "qsig.mcr.none_element",
15527
15
        FT_NONE, BASE_NONE, NULL, 0,
15528
15
        NULL, HFILL }},
15529
15
    { &hf_qsig_mcr_single,
15530
15
      { "single", "qsig.mcr.single_element",
15531
15
        FT_NONE, BASE_NONE, NULL, 0,
15532
15
        "Extension", HFILL }},
15533
15
    { &hf_qsig_mcr_multiple,
15534
15
      { "multiple", "qsig.mcr.multiple",
15535
15
        FT_UINT32, BASE_DEC, NULL, 0,
15536
15
        "SEQUENCE_OF_Extension", HFILL }},
15537
15
    { &hf_qsig_mcr_multiple_item,
15538
15
      { "Extension", "qsig.mcr.Extension_element",
15539
15
        FT_NONE, BASE_NONE, NULL, 0,
15540
15
        NULL, HFILL }},
15541
15542
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
15543
15544
15
    { &hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU,
15545
15
      { "MCMNewMsgArg", "qsig.mcm.MCMNewMsgArg_element",
15546
15
        FT_NONE, BASE_NONE, NULL, 0,
15547
15
        NULL, HFILL }},
15548
15
    { &hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU,
15549
15
      { "MCMDummyRes", "qsig.mcm.MCMDummyRes",
15550
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMExtensions_vals), 0,
15551
15
        NULL, HFILL }},
15552
15
    { &hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU,
15553
15
      { "MCMNoNewMsgArg", "qsig.mcm.MCMNoNewMsgArg_element",
15554
15
        FT_NONE, BASE_NONE, NULL, 0,
15555
15
        NULL, HFILL }},
15556
15
    { &hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU,
15557
15
      { "MCMUpdateArg", "qsig.mcm.MCMUpdateArg_element",
15558
15
        FT_NONE, BASE_NONE, NULL, 0,
15559
15
        NULL, HFILL }},
15560
15
    { &hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU,
15561
15
      { "MCMUpdateReqArg", "qsig.mcm.MCMUpdateReqArg_element",
15562
15
        FT_NONE, BASE_NONE, NULL, 0,
15563
15
        NULL, HFILL }},
15564
15
    { &hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU,
15565
15
      { "MCMUpdateReqRes", "qsig.mcm.MCMUpdateReqRes",
15566
15
        FT_UINT32, BASE_DEC, NULL, 0,
15567
15
        NULL, HFILL }},
15568
15
    { &hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU,
15569
15
      { "MCMServiceArg", "qsig.mcm.MCMServiceArg_element",
15570
15
        FT_NONE, BASE_NONE, NULL, 0,
15571
15
        NULL, HFILL }},
15572
15
    { &hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU,
15573
15
      { "MCMInterrogateArg", "qsig.mcm.MCMInterrogateArg_element",
15574
15
        FT_NONE, BASE_NONE, NULL, 0,
15575
15
        NULL, HFILL }},
15576
15
    { &hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU,
15577
15
      { "MCMInterrogateRes", "qsig.mcm.MCMInterrogateRes_element",
15578
15
        FT_NONE, BASE_NONE, NULL, 0,
15579
15
        NULL, HFILL }},
15580
15
    { &hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU,
15581
15
      { "MCMailboxFullArg", "qsig.mcm.MCMailboxFullArg_element",
15582
15
        FT_NONE, BASE_NONE, NULL, 0,
15583
15
        NULL, HFILL }},
15584
15
    { &hf_qsig_mcm_qsig_mcm_Extension_PDU,
15585
15
      { "Extension", "qsig.mcm.Extension_element",
15586
15
        FT_NONE, BASE_NONE, NULL, 0,
15587
15
        NULL, HFILL }},
15588
15
    { &hf_qsig_mcm_partyInfo,
15589
15
      { "partyInfo", "qsig.mcm.partyInfo_element",
15590
15
        FT_NONE, BASE_NONE, NULL, 0,
15591
15
        NULL, HFILL }},
15592
15
    { &hf_qsig_mcm_mailboxFullFor,
15593
15
      { "mailboxFullFor", "qsig.mcm.mailboxFullFor",
15594
15
        FT_UINT32, BASE_DEC, NULL, 0,
15595
15
        NULL, HFILL }},
15596
15
    { &hf_qsig_mcm_extensions,
15597
15
      { "extensions", "qsig.mcm.extensions",
15598
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMExtensions_vals), 0,
15599
15
        "MCMExtensions", HFILL }},
15600
15
    { &hf_qsig_mcm_MailboxFullFor_item,
15601
15
      { "MailboxFullPar", "qsig.mcm.MailboxFullPar_element",
15602
15
        FT_NONE, BASE_NONE, NULL, 0,
15603
15
        NULL, HFILL }},
15604
15
    { &hf_qsig_mcm_messageType,
15605
15
      { "messageType", "qsig.mcm.messageType",
15606
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15607
15
        NULL, HFILL }},
15608
15
    { &hf_qsig_mcm_capacityReached,
15609
15
      { "capacityReached", "qsig.mcm.capacityReached",
15610
15
        FT_UINT32, BASE_DEC, NULL, 0,
15611
15
        "INTEGER_0_100", HFILL }},
15612
15
    { &hf_qsig_mcm_mCMChange,
15613
15
      { "mCMChange", "qsig.mcm.mCMChange",
15614
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMChange_vals), 0,
15615
15
        NULL, HFILL }},
15616
15
    { &hf_qsig_mcm_activateMCM,
15617
15
      { "activateMCM", "qsig.mcm.activateMCM",
15618
15
        FT_UINT32, BASE_DEC, NULL, 0,
15619
15
        "SEQUENCE_OF_MCMServiceInfo", HFILL }},
15620
15
    { &hf_qsig_mcm_activateMCM_item,
15621
15
      { "MCMServiceInfo", "qsig.mcm.MCMServiceInfo_element",
15622
15
        FT_NONE, BASE_NONE, NULL, 0,
15623
15
        NULL, HFILL }},
15624
15
    { &hf_qsig_mcm_deactivateMCM,
15625
15
      { "deactivateMCM", "qsig.mcm.deactivateMCM",
15626
15
        FT_UINT32, BASE_DEC, NULL, 0,
15627
15
        "SEQUENCE_OF_MessageType", HFILL }},
15628
15
    { &hf_qsig_mcm_deactivateMCM_item,
15629
15
      { "MessageType", "qsig.mcm.MessageType",
15630
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15631
15
        NULL, HFILL }},
15632
15
    { &hf_qsig_mcm_setToDefaultValues,
15633
15
      { "setToDefaultValues", "qsig.mcm.setToDefaultValues_element",
15634
15
        FT_NONE, BASE_NONE, NULL, 0,
15635
15
        NULL, HFILL }},
15636
15
    { &hf_qsig_mcm_mCMModeNew,
15637
15
      { "mCMModeNew", "qsig.mcm.mCMModeNew",
15638
15
        FT_INT32, BASE_DEC, VALS(qsig_mcm_MCMMode_vals), 0,
15639
15
        "MCMMode", HFILL }},
15640
15
    { &hf_qsig_mcm_mCMModeRetrieved,
15641
15
      { "mCMModeRetrieved", "qsig.mcm.mCMModeRetrieved",
15642
15
        FT_INT32, BASE_DEC, VALS(qsig_mcm_MCMMode_vals), 0,
15643
15
        "MCMMode", HFILL }},
15644
15
    { &hf_qsig_mcm_interrogateInfo,
15645
15
      { "interrogateInfo", "qsig.mcm.interrogateInfo",
15646
15
        FT_UINT32, BASE_DEC, NULL, 0,
15647
15
        "SEQUENCE_OF_MessageType", HFILL }},
15648
15
    { &hf_qsig_mcm_interrogateInfo_item,
15649
15
      { "MessageType", "qsig.mcm.MessageType",
15650
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15651
15
        NULL, HFILL }},
15652
15
    { &hf_qsig_mcm_interrogateResult,
15653
15
      { "interrogateResult", "qsig.mcm.interrogateResult",
15654
15
        FT_UINT32, BASE_DEC, NULL, 0,
15655
15
        "SEQUENCE_OF_MCMServiceInfo", HFILL }},
15656
15
    { &hf_qsig_mcm_interrogateResult_item,
15657
15
      { "MCMServiceInfo", "qsig.mcm.MCMServiceInfo_element",
15658
15
        FT_NONE, BASE_NONE, NULL, 0,
15659
15
        NULL, HFILL }},
15660
15
    { &hf_qsig_mcm_servedUserNr,
15661
15
      { "servedUserNr", "qsig.mcm.servedUserNr",
15662
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15663
15
        "PartyNumber", HFILL }},
15664
15
    { &hf_qsig_mcm_specificMessageType,
15665
15
      { "specificMessageType", "qsig.mcm.specificMessageType",
15666
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15667
15
        "MessageType", HFILL }},
15668
15
    { &hf_qsig_mcm_msgCentreId,
15669
15
      { "msgCentreId", "qsig.mcm.msgCentreId",
15670
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15671
15
        NULL, HFILL }},
15672
15
    { &hf_qsig_mcm_nrOfMessages,
15673
15
      { "nrOfMessages", "qsig.mcm.nrOfMessages",
15674
15
        FT_UINT32, BASE_DEC, NULL, 0,
15675
15
        NULL, HFILL }},
15676
15
    { &hf_qsig_mcm_originatingNr,
15677
15
      { "originatingNr", "qsig.mcm.originatingNr",
15678
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15679
15
        "PartyNumber", HFILL }},
15680
15
    { &hf_qsig_mcm_timestamp,
15681
15
      { "timestamp", "qsig.mcm.timestamp",
15682
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15683
15
        NULL, HFILL }},
15684
15
    { &hf_qsig_mcm_priority,
15685
15
      { "priority", "qsig.mcm.priority",
15686
15
        FT_UINT32, BASE_DEC, NULL, 0,
15687
15
        "INTEGER_0_9", HFILL }},
15688
15
    { &hf_qsig_mcm_argumentExtMCMNew,
15689
15
      { "argumentExt", "qsig.mcm.argumentExtMCMNew",
15690
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMNewArgumentExt_vals), 0,
15691
15
        "MCMNewArgumentExt", HFILL }},
15692
15
    { &hf_qsig_mcm_extension,
15693
15
      { "extension", "qsig.mcm.extension_element",
15694
15
        FT_NONE, BASE_NONE, NULL, 0,
15695
15
        NULL, HFILL }},
15696
15
    { &hf_qsig_mcm_multipleExtension,
15697
15
      { "multipleExtension", "qsig.mcm.multipleExtension",
15698
15
        FT_UINT32, BASE_DEC, NULL, 0,
15699
15
        "SEQUENCE_OF_Extension", HFILL }},
15700
15
    { &hf_qsig_mcm_multipleExtension_item,
15701
15
      { "Extension", "qsig.mcm.Extension_element",
15702
15
        FT_NONE, BASE_NONE, NULL, 0,
15703
15
        NULL, HFILL }},
15704
15
    { &hf_qsig_mcm_argumentExtMCMNoNew,
15705
15
      { "argumentExt", "qsig.mcm.argumentExtMCMNoNew",
15706
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMNoNewArgumentExt_vals), 0,
15707
15
        "MCMNoNewArgumentExt", HFILL }},
15708
15
    { &hf_qsig_mcm_updateInfo,
15709
15
      { "updateInfo", "qsig.mcm.updateInfo",
15710
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_UpdateInfo_vals), 0,
15711
15
        NULL, HFILL }},
15712
15
    { &hf_qsig_mcm_moreInfoFollows,
15713
15
      { "moreInfoFollows", "qsig.mcm.moreInfoFollows",
15714
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
15715
15
        "BOOLEAN", HFILL }},
15716
15
    { &hf_qsig_mcm_argumentExtMCMUpdArg,
15717
15
      { "argumentExt", "qsig.mcm.argumentExtMCMUpdArg",
15718
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMUpdArgArgumentExt_vals), 0,
15719
15
        "MCMUpdArgArgumentExt", HFILL }},
15720
15
    { &hf_qsig_mcm_MCMUpdateReqRes_item,
15721
15
      { "MCMUpdateReqResElt", "qsig.mcm.MCMUpdateReqResElt_element",
15722
15
        FT_NONE, BASE_NONE, NULL, 0,
15723
15
        NULL, HFILL }},
15724
15
    { &hf_qsig_mcm_argumentExtMCMUpdRes,
15725
15
      { "argumentExt", "qsig.mcm.argumentExtMCMUpdRes",
15726
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMUpdResArgumentExt_vals), 0,
15727
15
        "MCMUpdResArgumentExt", HFILL }},
15728
15
    { &hf_qsig_mcm_messageCentreID,
15729
15
      { "messageCentreID", "qsig.mcm.messageCentreID",
15730
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15731
15
        "MsgCentreId", HFILL }},
15732
15
    { &hf_qsig_mcm_newMsgInfoOnly,
15733
15
      { "newMsgInfoOnly", "qsig.mcm.newMsgInfoOnly",
15734
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15735
15
        "MessageInfo", HFILL }},
15736
15
    { &hf_qsig_mcm_retrievedMsgInfoOnly,
15737
15
      { "retrievedMsgInfoOnly", "qsig.mcm.retrievedMsgInfoOnly",
15738
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15739
15
        "MessageInfo", HFILL }},
15740
15
    { &hf_qsig_mcm_allMsgInfo,
15741
15
      { "allMsgInfo", "qsig.mcm.allMsgInfo_element",
15742
15
        FT_NONE, BASE_NONE, NULL, 0,
15743
15
        NULL, HFILL }},
15744
15
    { &hf_qsig_mcm_newMsgInfo,
15745
15
      { "newMsgInfo", "qsig.mcm.newMsgInfo",
15746
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15747
15
        "MessageInfo", HFILL }},
15748
15
    { &hf_qsig_mcm_retrievedMsgInfo,
15749
15
      { "retrievedMsgInfo", "qsig.mcm.retrievedMsgInfo",
15750
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15751
15
        "MessageInfo", HFILL }},
15752
15
    { &hf_qsig_mcm_completeInfo,
15753
15
      { "completeInfo", "qsig.mcm.completeInfo",
15754
15
        FT_UINT32, BASE_DEC, NULL, 0,
15755
15
        NULL, HFILL }},
15756
15
    { &hf_qsig_mcm_compressedInfo,
15757
15
      { "compressedInfo", "qsig.mcm.compressedInfo_element",
15758
15
        FT_NONE, BASE_NONE, NULL, 0,
15759
15
        NULL, HFILL }},
15760
15
    { &hf_qsig_mcm_noMsgsOfMsgType,
15761
15
      { "noMsgsOfMsgType", "qsig.mcm.noMsgsOfMsgType_element",
15762
15
        FT_NONE, BASE_NONE, NULL, 0,
15763
15
        NULL, HFILL }},
15764
15
    { &hf_qsig_mcm_CompleteInfo_item,
15765
15
      { "AddressHeader", "qsig.mcm.AddressHeader_element",
15766
15
        FT_NONE, BASE_NONE, NULL, 0,
15767
15
        NULL, HFILL }},
15768
15
    { &hf_qsig_mcm_originatorNr,
15769
15
      { "originatorNr", "qsig.mcm.originatorNr",
15770
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15771
15
        "PartyNumber", HFILL }},
15772
15
    { &hf_qsig_mcm_timeStamp,
15773
15
      { "timeStamp", "qsig.mcm.timeStamp",
15774
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15775
15
        NULL, HFILL }},
15776
15
    { &hf_qsig_mcm_ahpriority,
15777
15
      { "priority", "qsig.mcm.ahpriority",
15778
15
        FT_UINT32, BASE_DEC, NULL, 0,
15779
15
        NULL, HFILL }},
15780
15
    { &hf_qsig_mcm_lastTimeStamp,
15781
15
      { "lastTimeStamp", "qsig.mcm.lastTimeStamp",
15782
15
        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
15783
15
        "TimeStamp", HFILL }},
15784
15
    { &hf_qsig_mcm_highestPriority,
15785
15
      { "highestPriority", "qsig.mcm.highestPriority",
15786
15
        FT_UINT32, BASE_DEC, NULL, 0,
15787
15
        "Priority", HFILL }},
15788
15
    { &hf_qsig_mcm_integer,
15789
15
      { "integer", "qsig.mcm.integer",
15790
15
        FT_UINT32, BASE_DEC, NULL, 0,
15791
15
        "INTEGER_0_65535", HFILL }},
15792
15
    { &hf_qsig_mcm_partyNumber,
15793
15
      { "partyNumber", "qsig.mcm.partyNumber",
15794
15
        FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15795
15
        NULL, HFILL }},
15796
15
    { &hf_qsig_mcm_numericString,
15797
15
      { "numericString", "qsig.mcm.numericString",
15798
15
        FT_STRING, BASE_NONE, NULL, 0,
15799
15
        "NumericString_SIZE_1_10", HFILL }},
15800
15
    { &hf_qsig_mcm_none,
15801
15
      { "none", "qsig.mcm.none_element",
15802
15
        FT_NONE, BASE_NONE, NULL, 0,
15803
15
        NULL, HFILL }},
15804
15805
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
15806
15807
15
    { &hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU,
15808
15
      { "MIDMailboxAuthArg", "qsig.mid.MIDMailboxAuthArg_element",
15809
15
        FT_NONE, BASE_NONE, NULL, 0,
15810
15
        NULL, HFILL }},
15811
15
    { &hf_qsig_mid_qsig_mid_MIDDummyRes_PDU,
15812
15
      { "MIDDummyRes", "qsig.mid.MIDDummyRes",
15813
15
        FT_UINT32, BASE_DEC, VALS(qsig_mid_MIDExtensions_vals), 0,
15814
15
        NULL, HFILL }},
15815
15
    { &hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU,
15816
15
      { "MIDMailboxIDArg", "qsig.mid.MIDMailboxIDArg_element",
15817
15
        FT_NONE, BASE_NONE, NULL, 0,
15818
15
        NULL, HFILL }},
15819
15
    { &hf_qsig_mid_qsig_mid_Extension_PDU,
15820
15
      { "Extension", "qsig.mid.Extension_element",
15821
15
        FT_NONE, BASE_NONE, NULL, 0,
15822
15
        NULL, HFILL }},
15823
15
    { &hf_qsig_mid_partyInfo,
15824
15
      { "partyInfo", "qsig.mid.partyInfo_element",
15825
15
        FT_NONE, BASE_NONE, NULL, 0,
15826
15
        NULL, HFILL }},
15827
15
    { &hf_qsig_mid_servedUserName,
15828
15
      { "servedUserName", "qsig.mid.servedUserName",
15829
15
        FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15830
15
        "Name", HFILL }},
15831
15
    { &hf_qsig_mid_mailBox,
15832
15
      { "mailBox", "qsig.mid.mailBox",
15833
15
        FT_UINT32, BASE_DEC, VALS(qsig_mid_String_vals), 0,
15834
15
        "String", HFILL }},
15835
15
    { &hf_qsig_mid_password,
15836
15
      { "password", "qsig.mid.password",
15837
15
        FT_UINT32, BASE_DEC, VALS(qsig_mid_String_vals), 0,
15838
15
        "String", HFILL }},
15839
15
    { &hf_qsig_mid_extensions,
15840
15
      { "extensions", "qsig.mid.extensions",
15841
15
        FT_UINT32, BASE_DEC, VALS(qsig_mid_MIDExtensions_vals), 0,
15842
15
        "MIDExtensions", HFILL }},
15843
15
    { &hf_qsig_mid_servedUserNr,
15844
15
      { "servedUserNr", "qsig.mid.servedUserNr",
15845
15
        FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15846
15
        "PresentedAddressUnscreened", HFILL }},
15847
15
    { &hf_qsig_mid_messageType,
15848
15
      { "messageType", "qsig.mid.messageType",
15849
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15850
15
        NULL, HFILL }},
15851
15
    { &hf_qsig_mid_messageCentreID,
15852
15
      { "messageCentreID", "qsig.mid.messageCentreID",
15853
15
        FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15854
15
        "MsgCentreId", HFILL }},
15855
15
    { &hf_qsig_mid_stringBmp,
15856
15
      { "stringBmp", "qsig.mid.stringBmp",
15857
15
        FT_STRING, BASE_NONE, NULL, 0,
15858
15
        "BMPString", HFILL }},
15859
15
    { &hf_qsig_mid_stringUtf8,
15860
15
      { "stringUtf8", "qsig.mid.stringUtf8",
15861
15
        FT_STRING, BASE_NONE, NULL, 0,
15862
15
        "UTF8String", HFILL }},
15863
15
    { &hf_qsig_mid_none,
15864
15
      { "none", "qsig.mid.none_element",
15865
15
        FT_NONE, BASE_NONE, NULL, 0,
15866
15
        NULL, HFILL }},
15867
15
    { &hf_qsig_mid_extension,
15868
15
      { "extension", "qsig.mid.extension_element",
15869
15
        FT_NONE, BASE_NONE, NULL, 0,
15870
15
        NULL, HFILL }},
15871
15
    { &hf_qsig_mid_multipleExtension,
15872
15
      { "multipleExtension", "qsig.mid.multipleExtension",
15873
15
        FT_UINT32, BASE_DEC, NULL, 0,
15874
15
        "SEQUENCE_OF_Extension", HFILL }},
15875
15
    { &hf_qsig_mid_multipleExtension_item,
15876
15
      { "Extension", "qsig.mid.Extension_element",
15877
15
        FT_NONE, BASE_NONE, NULL, 0,
15878
15
        NULL, HFILL }},
15879
15
  };
15880
15881
  /* List of subtrees */
15882
15
  static int *ett[] = {
15883
15
    &ett_qsig,
15884
15
    &ett_qsig_ie,
15885
15
    &ett_qsig_unknown_extension,
15886
15887
/* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
15888
15889
15
    &ett_qsig_Extension,
15890
15
    &ett_qsig_PresentedAddressScreened,
15891
15
    &ett_qsig_PresentedAddressUnscreened,
15892
15
    &ett_qsig_PresentedNumberScreened,
15893
15
    &ett_qsig_PresentedNumberUnscreened,
15894
15
    &ett_qsig_AddressScreened,
15895
15
    &ett_qsig_NumberScreened,
15896
15
    &ett_qsig_Address,
15897
15
    &ett_qsig_PartyNumber,
15898
15
    &ett_qsig_PublicPartyNumber,
15899
15
    &ett_qsig_PrivatePartyNumber,
15900
15
    &ett_qsig_PartySubaddress,
15901
15
    &ett_qsig_UserSpecifiedSubaddress,
15902
15903
/* --- Module Name-Operations-asn1-97 --- --- ---                             */
15904
15905
15
    &ett_qsig_na_NameArg,
15906
15
    &ett_qsig_na_T_nameSequence,
15907
15
    &ett_qsig_na_NameExtension,
15908
15
    &ett_qsig_na_SEQUENCE_OF_Extension,
15909
15
    &ett_qsig_na_Name,
15910
15
    &ett_qsig_na_NamePresentationAllowed,
15911
15
    &ett_qsig_na_NamePresentationRestricted,
15912
15
    &ett_qsig_na_NameSet,
15913
15914
/* --- Module Call-Diversion-Operations-asn1-97 --- --- ---                   */
15915
15916
15
    &ett_qsig_cf_ARG_activateDiversionQ,
15917
15
    &ett_qsig_cf_ADExtension,
15918
15
    &ett_qsig_cf_SEQUENCE_OF_Extension,
15919
15
    &ett_qsig_cf_RES_activateDiversionQ,
15920
15
    &ett_qsig_cf_ARG_deactivateDiversionQ,
15921
15
    &ett_qsig_cf_DDExtension,
15922
15
    &ett_qsig_cf_RES_deactivateDiversionQ,
15923
15
    &ett_qsig_cf_ARG_interrogateDiversionQ,
15924
15
    &ett_qsig_cf_IDExtension,
15925
15
    &ett_qsig_cf_ARG_checkRestriction,
15926
15
    &ett_qsig_cf_CHRExtension,
15927
15
    &ett_qsig_cf_RES_checkRestriction,
15928
15
    &ett_qsig_cf_ARG_callRerouteing,
15929
15
    &ett_qsig_cf_CRRExtension,
15930
15
    &ett_qsig_cf_RES_callRerouteing,
15931
15
    &ett_qsig_cf_ARG_divertingLegInformation1,
15932
15
    &ett_qsig_cf_DLI1Extension,
15933
15
    &ett_qsig_cf_ARG_divertingLegInformation2,
15934
15
    &ett_qsig_cf_DLI2Extension,
15935
15
    &ett_qsig_cf_ARG_divertingLegInformation3,
15936
15
    &ett_qsig_cf_DLI3Extension,
15937
15
    &ett_qsig_cf_ARG_cfnrDivertedLegFailed,
15938
15
    &ett_qsig_cf_IntResultList,
15939
15
    &ett_qsig_cf_IntResult,
15940
15
    &ett_qsig_cf_IRExtension,
15941
15942
/* --- Module Path-Replacement-Operations-asn1-97 --- --- ---                 */
15943
15944
15
    &ett_qsig_pr_PRProposeArg,
15945
15
    &ett_qsig_pr_PRPExtension,
15946
15
    &ett_qsig_pr_SEQUENCE_OF_Extension,
15947
15
    &ett_qsig_pr_PRSetupArg,
15948
15
    &ett_qsig_pr_PRSExtension,
15949
15
    &ett_qsig_pr_PRRetainArg,
15950
15
    &ett_qsig_pr_PRRExtension,
15951
15
    &ett_qsig_pr_DummyResult,
15952
15
    &ett_qsig_pr_DummyArg,
15953
15954
/* --- Module Call-Transfer-Operations-asn1-97 --- --- ---                    */
15955
15956
15
    &ett_qsig_ct_DummyArg,
15957
15
    &ett_qsig_ct_SEQUENCE_OF_Extension,
15958
15
    &ett_qsig_ct_DummyRes,
15959
15
    &ett_qsig_ct_CTIdentifyRes,
15960
15
    &ett_qsig_ct_T_resultExtension,
15961
15
    &ett_qsig_ct_CTInitiateArg,
15962
15
    &ett_qsig_ct_CTIargumentExtension,
15963
15
    &ett_qsig_ct_CTSetupArg,
15964
15
    &ett_qsig_ct_CTSargumentExtension,
15965
15
    &ett_qsig_ct_CTActiveArg,
15966
15
    &ett_qsig_ct_CTAargumentExtension,
15967
15
    &ett_qsig_ct_CTCompleteArg,
15968
15
    &ett_qsig_ct_CTCargumentExtension,
15969
15
    &ett_qsig_ct_CTUpdateArg,
15970
15
    &ett_qsig_ct_CTUargumentExtension,
15971
15
    &ett_qsig_ct_SubaddressTransferArg,
15972
15
    &ett_qsig_ct_STargumentExtension,
15973
15974
/* --- Module SS-CC-Operations-asn1-97 --- --- ---                            */
15975
15976
15
    &ett_qsig_cc_CcRequestArg,
15977
15
    &ett_qsig_cc_CcRequestRes,
15978
15
    &ett_qsig_cc_CcOptionalArg,
15979
15
    &ett_qsig_cc_T_fullArg,
15980
15
    &ett_qsig_cc_CcExtension,
15981
15
    &ett_qsig_cc_SEQUENCE_OF_Extension,
15982
15983
/* --- Module Call-Offer-Operations-asn1-97 --- --- ---                       */
15984
15985
15
    &ett_qsig_co_PathRetainArg,
15986
15
    &ett_qsig_co_T_extendedServiceList,
15987
15
    &ett_qsig_co_ServiceAvailableArg,
15988
15
    &ett_qsig_co_T_extendedServiceList_01,
15989
15
    &ett_qsig_co_ServiceList,
15990
15
    &ett_qsig_co_DummyArg,
15991
15
    &ett_qsig_co_SEQUENCE_OF_Extension,
15992
15
    &ett_qsig_co_DummyRes,
15993
15994
/* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- ---                   */
15995
15996
15
    &ett_qsig_dnd_DummyArg,
15997
15
    &ett_qsig_dnd_SEQUENCE_OF_Extension,
15998
15
    &ett_qsig_dnd_DummyRes,
15999
15
    &ett_qsig_dnd_DNDActivateArg,
16000
15
    &ett_qsig_dnd_DNDAargumentExtension,
16001
15
    &ett_qsig_dnd_DNDActivateRes,
16002
15
    &ett_qsig_dnd_T_status,
16003
15
    &ett_qsig_dnd_T_status_item,
16004
15
    &ett_qsig_dnd_T_resultExtension,
16005
15
    &ett_qsig_dnd_DNDDeactivateArg,
16006
15
    &ett_qsig_dnd_DNDDargumentExtension,
16007
15
    &ett_qsig_dnd_DNDInterrogateArg,
16008
15
    &ett_qsig_dnd_DNDIargumentExtension,
16009
15
    &ett_qsig_dnd_DNDInterrogateRes,
16010
15
    &ett_qsig_dnd_T_status_01,
16011
15
    &ett_qsig_dnd_T_status_item_01,
16012
15
    &ett_qsig_dnd_T_resultExtension_01,
16013
15
    &ett_qsig_dnd_DNDOverrideArg,
16014
15
    &ett_qsig_dnd_DNDOargumentExtension,
16015
15
    &ett_qsig_dnd_PathRetainArg,
16016
15
    &ett_qsig_dnd_T_extendedServiceList,
16017
15
    &ett_qsig_dnd_ServiceAvailableArg,
16018
15
    &ett_qsig_dnd_T_extendedServiceList_01,
16019
15
    &ett_qsig_dnd_ServiceList,
16020
16021
/* --- Module Call-Intrusion-Operations-asn1-97 --- --- ---                   */
16022
16023
15
    &ett_qsig_ci_PathRetainArg,
16024
15
    &ett_qsig_ci_T_extendedServiceList,
16025
15
    &ett_qsig_ci_ServiceAvailableArg,
16026
15
    &ett_qsig_ci_T_extendedServiceList_01,
16027
15
    &ett_qsig_ci_ServiceList,
16028
15
    &ett_qsig_ci_DummyArg,
16029
15
    &ett_qsig_ci_SEQUENCE_OF_Extension,
16030
15
    &ett_qsig_ci_DummyRes,
16031
15
    &ett_qsig_ci_CIRequestArg,
16032
15
    &ett_qsig_ci_T_argumentExtension,
16033
15
    &ett_qsig_ci_CIRequestRes,
16034
15
    &ett_qsig_ci_T_resultExtension,
16035
15
    &ett_qsig_ci_CIGetCIPLRes,
16036
15
    &ett_qsig_ci_T_resultExtension_01,
16037
16038
/* --- Module SS-AOC-Operations-asn1-97 --- --- ---                           */
16039
16040
15
    &ett_qsig_aoc_AocRateArg,
16041
15
    &ett_qsig_aoc_T_aocRate,
16042
15
    &ett_qsig_aoc_T_rateArgExtension,
16043
15
    &ett_qsig_aoc_SEQUENCE_OF_Extension,
16044
15
    &ett_qsig_aoc_AocInterimArg,
16045
15
    &ett_qsig_aoc_T_interimCharge,
16046
15
    &ett_qsig_aoc_T_specificCurrency,
16047
15
    &ett_qsig_aoc_T_interimArgExtension,
16048
15
    &ett_qsig_aoc_AocFinalArg,
16049
15
    &ett_qsig_aoc_T_finalCharge,
16050
15
    &ett_qsig_aoc_T_specificCurrency_01,
16051
15
    &ett_qsig_aoc_T_finalArgExtension,
16052
15
    &ett_qsig_aoc_AOCSCurrencyInfoList,
16053
15
    &ett_qsig_aoc_AOCSCurrencyInfo,
16054
15
    &ett_qsig_aoc_T_rateType,
16055
15
    &ett_qsig_aoc_DurationCurrency,
16056
15
    &ett_qsig_aoc_FlatRateCurrency,
16057
15
    &ett_qsig_aoc_VolumeRateCurrency,
16058
15
    &ett_qsig_aoc_RecordedCurrency,
16059
15
    &ett_qsig_aoc_Amount,
16060
15
    &ett_qsig_aoc_Time,
16061
15
    &ett_qsig_aoc_ChargingAssociation,
16062
15
    &ett_qsig_aoc_ChargeRequestArg,
16063
15
    &ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination,
16064
15
    &ett_qsig_aoc_T_chargeReqArgExtension,
16065
15
    &ett_qsig_aoc_ChargeRequestRes,
16066
15
    &ett_qsig_aoc_T_chargeReqResExtension,
16067
15
    &ett_qsig_aoc_DummyArg,
16068
15
    &ett_qsig_aoc_AocCompleteArg,
16069
15
    &ett_qsig_aoc_T_completeArgExtension,
16070
15
    &ett_qsig_aoc_AocCompleteRes,
16071
15
    &ett_qsig_aoc_T_completeResExtension,
16072
15
    &ett_qsig_aoc_AocDivChargeReqArg,
16073
15
    &ett_qsig_aoc_T_aocDivChargeReqArgExt,
16074
16075
/* --- Module Recall-Operations-asn1-97 --- --- ---                           */
16076
16077
15
    &ett_qsig_re_ReAlertingArg,
16078
15
    &ett_qsig_re_T_argumentExtension,
16079
15
    &ett_qsig_re_SEQUENCE_OF_Extension,
16080
15
    &ett_qsig_re_ReAnswerArg,
16081
15
    &ett_qsig_re_T_argumentExtension_01,
16082
16083
/* --- Module Synchronization-Operations-asn1-97 --- --- ---                  */
16084
16085
15
    &ett_qsig_sync_SynchronizationReqArg,
16086
15
    &ett_qsig_sync_SynchronizationReqRes,
16087
15
    &ett_qsig_sync_SynchronizationInfoArg,
16088
15
    &ett_qsig_sync_ArgExtension,
16089
15
    &ett_qsig_sync_SEQUENCE_OF_Extension,
16090
16091
/* --- Module Call-Interception-Operations-asn1-97 --- --- ---                */
16092
16093
15
    &ett_qsig_cint_CintInformation1Arg,
16094
15
    &ett_qsig_cint_CintInformation2Arg,
16095
15
    &ett_qsig_cint_CintCondArg,
16096
15
    &ett_qsig_cint_CintExtension,
16097
15
    &ett_qsig_cint_SEQUENCE_OF_Extension,
16098
16099
/* --- Module Common-Information-Operations-asn1-97 --- --- ---               */
16100
16101
15
    &ett_qsig_cmn_CmnArg,
16102
15
    &ett_qsig_cmn_T_extension,
16103
15
    &ett_qsig_cmn_SEQUENCE_OF_Extension,
16104
15
    &ett_qsig_cmn_DummyArg,
16105
15
    &ett_qsig_cmn_FeatureIdList,
16106
15
    &ett_qsig_cmn_EquipmentId,
16107
16108
/* --- Module Call-Interruption-Operations-asn1-97 --- --- ---                */
16109
16110
15
    &ett_qsig_cpi_CPIRequestArg,
16111
15
    &ett_qsig_cpi_T_argumentExtension,
16112
15
    &ett_qsig_cpi_SEQUENCE_OF_Extension,
16113
15
    &ett_qsig_cpi_CPIPRequestArg,
16114
15
    &ett_qsig_cpi_T_argumentExtension_01,
16115
16116
/* --- Module PUM-Registration-Operations-asn1-97 --- --- ---                 */
16117
16118
15
    &ett_qsig_pumr_PumRegistrArg,
16119
15
    &ett_qsig_pumr_RpumUserId,
16120
15
    &ett_qsig_pumr_T_userPin,
16121
15
    &ett_qsig_pumr_PumRegistrRes,
16122
15
    &ett_qsig_pumr_DummyRes,
16123
15
    &ett_qsig_pumr_SEQUENCE_OF_Extension,
16124
15
    &ett_qsig_pumr_PumDelRegArg,
16125
15
    &ett_qsig_pumr_XpumUserId,
16126
15
    &ett_qsig_pumr_PumDe_regArg,
16127
15
    &ett_qsig_pumr_DpumUserId,
16128
15
    &ett_qsig_pumr_T_userPin_01,
16129
15
    &ett_qsig_pumr_PumInterrogArg,
16130
15
    &ett_qsig_pumr_IpumUserId,
16131
15
    &ett_qsig_pumr_T_userPin_02,
16132
15
    &ett_qsig_pumr_PumInterrogRes,
16133
15
    &ett_qsig_pumr_PumInterrogRes_item,
16134
15
    &ett_qsig_pumr_SessionParams,
16135
15
    &ett_qsig_pumr_PumrExtension,
16136
16137
/* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
16138
16139
15
    &ett_qsig_pumch_EnquiryArg,
16140
15
    &ett_qsig_pumch_DivertArg,
16141
15
    &ett_qsig_pumch_InformArg,
16142
15
    &ett_qsig_pumch_EnquiryRes,
16143
15
    &ett_qsig_pumch_CurrLocation,
16144
15
    &ett_qsig_pumch_CfuActivated,
16145
15
    &ett_qsig_pumch_DummyRes,
16146
15
    &ett_qsig_pumch_SEQUENCE_OF_Extension,
16147
15
    &ett_qsig_pumch_PumiExtension,
16148
15
    &ett_qsig_pumch_PumIdentity,
16149
15
    &ett_qsig_pumch_T_both,
16150
15
    &ett_qsig_pumch_PumoArg,
16151
15
    &ett_qsig_pumch_T_pumoaextension,
16152
16153
/* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- ---        */
16154
16155
15
    &ett_qsig_ssct_DummyArg,
16156
15
    &ett_qsig_ssct_SEQUENCE_OF_Extension,
16157
15
    &ett_qsig_ssct_DummyRes,
16158
15
    &ett_qsig_ssct_SSCTInitiateArg,
16159
15
    &ett_qsig_ssct_SSCTIargumentExtension,
16160
15
    &ett_qsig_ssct_SSCTSetupArg,
16161
15
    &ett_qsig_ssct_SSCTSargumentExtension,
16162
15
    &ett_qsig_ssct_SSCTDigitInfoArg,
16163
15
    &ett_qsig_ssct_SSCTDargumentExtension,
16164
16165
/* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- ---        */
16166
16167
15
    &ett_qsig_wtmlr_LocUpdArg,
16168
15
    &ett_qsig_wtmlr_DummyRes,
16169
15
    &ett_qsig_wtmlr_SEQUENCE_OF_Extension,
16170
15
    &ett_qsig_wtmlr_LocDelArg,
16171
15
    &ett_qsig_wtmlr_LocDeRegArg,
16172
15
    &ett_qsig_wtmlr_PisnEnqArg,
16173
15
    &ett_qsig_wtmlr_PisnEnqRes,
16174
15
    &ett_qsig_wtmlr_GetRRCInfArg,
16175
15
    &ett_qsig_wtmlr_GetRRCInfRes,
16176
15
    &ett_qsig_wtmlr_LocInfoCheckArg,
16177
15
    &ett_qsig_wtmlr_LocInfoCheckRes,
16178
15
    &ett_qsig_wtmlr_WtmUserId,
16179
15
    &ett_qsig_wtmlr_LrExtension,
16180
16181
/* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- ---  */
16182
16183
15
    &ett_qsig_wtmch_EnquiryArg,
16184
15
    &ett_qsig_wtmch_DivertArg,
16185
15
    &ett_qsig_wtmch_InformArg,
16186
15
    &ett_qsig_wtmch_EnquiryRes,
16187
15
    &ett_qsig_wtmch_CurrLocation,
16188
15
    &ett_qsig_wtmch_CfuActivated,
16189
15
    &ett_qsig_wtmch_DummyRes,
16190
15
    &ett_qsig_wtmch_SEQUENCE_OF_Extension,
16191
15
    &ett_qsig_wtmch_WtmiExtension,
16192
15
    &ett_qsig_wtmch_WtmIdentity,
16193
15
    &ett_qsig_wtmch_T_both,
16194
15
    &ett_qsig_wtmch_WtmoArg,
16195
15
    &ett_qsig_wtmch_T_wtmoaextension,
16196
16197
/* --- Module WTM-Authentication-Operations-asn1-97 --- --- ---               */
16198
16199
15
    &ett_qsig_wtmau_AuthWtmArg,
16200
15
    &ett_qsig_wtmau_AuthWtmRes,
16201
15
    &ett_qsig_wtmau_WtatParamArg,
16202
15
    &ett_qsig_wtmau_WtatParamRes,
16203
15
    &ett_qsig_wtmau_WtanParamArg,
16204
15
    &ett_qsig_wtmau_WtmUserId,
16205
15
    &ett_qsig_wtmau_WtanParamRes,
16206
15
    &ett_qsig_wtmau_ARG_transferAuthParam,
16207
15
    &ett_qsig_wtmau_WtatParamInfo,
16208
15
    &ett_qsig_wtmau_T_wtatParamInfoChoice,
16209
15
    &ett_qsig_wtmau_WtanParamInfo,
16210
15
    &ett_qsig_wtmau_AuthSessionKeyInfo,
16211
15
    &ett_qsig_wtmau_CalcWtatInfo,
16212
15
    &ett_qsig_wtmau_CalcWtatInfoUnit,
16213
15
    &ett_qsig_wtmau_CalcWtanInfo,
16214
15
    &ett_qsig_wtmau_DummyExtension,
16215
15
    &ett_qsig_wtmau_SEQUENCE_OF_Extension,
16216
15
    &ett_qsig_wtmau_AuthAlgorithm,
16217
16218
/* --- Module SS-SD-Operations-asn1-97 --- --- ---                            */
16219
16220
15
    &ett_qsig_sd_DisplayArg,
16221
15
    &ett_qsig_sd_DisplayString,
16222
15
    &ett_qsig_sd_KeypadArg,
16223
15
    &ett_qsig_sd_SDExtension,
16224
15
    &ett_qsig_sd_SEQUENCE_OF_Extension,
16225
16226
/* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
16227
16228
15
    &ett_qsig_cidl_CallIdentificationAssignArg,
16229
15
    &ett_qsig_cidl_CallIdentificationUpdateArg,
16230
15
    &ett_qsig_cidl_CallIdentificationData,
16231
15
    &ett_qsig_cidl_T_linkageID,
16232
15
    &ett_qsig_cidl_ExtensionType,
16233
15
    &ett_qsig_cidl_SEQUENCE_OF_Extension,
16234
16235
/* --- Module Short-Message-Service-Operations-asn1-97 --- --- ---            */
16236
16237
15
    &ett_qsig_sms_SmsSubmitArg,
16238
15
    &ett_qsig_sms_SmsSubmitRes,
16239
15
    &ett_qsig_sms_SmsDeliverArg,
16240
15
    &ett_qsig_sms_SmsDeliverRes,
16241
15
    &ett_qsig_sms_SmsStatusReportArg,
16242
15
    &ett_qsig_sms_SmsStatusReportRes,
16243
15
    &ett_qsig_sms_SmsCommandArg,
16244
15
    &ett_qsig_sms_SmsCommandRes,
16245
15
    &ett_qsig_sms_ScAlertArg,
16246
15
    &ett_qsig_sms_DummyRes,
16247
15
    &ett_qsig_sms_SmSubmitParameter,
16248
15
    &ett_qsig_sms_SmDeliverParameter,
16249
15
    &ett_qsig_sms_SmsDeliverResChoice,
16250
15
    &ett_qsig_sms_ResChoiceSeq,
16251
15
    &ett_qsig_sms_SmsStatusReportResponseChoice,
16252
15
    &ett_qsig_sms_SmsExtension,
16253
15
    &ett_qsig_sms_SEQUENCE_OF_Extension,
16254
15
    &ett_qsig_sms_ValidityPeriod,
16255
15
    &ett_qsig_sms_ValidityPeriodEnh,
16256
15
    &ett_qsig_sms_EnhancedVP,
16257
15
    &ett_qsig_sms_UserData,
16258
15
    &ett_qsig_sms_ShortMessageText,
16259
15
    &ett_qsig_sms_UserDataHeader,
16260
15
    &ett_qsig_sms_UserDataHeaderChoice,
16261
15
    &ett_qsig_sms_SmscControlParameterHeader,
16262
15
    &ett_qsig_sms_Concatenated8BitSMHeader,
16263
15
    &ett_qsig_sms_Concatenated16BitSMHeader,
16264
15
    &ett_qsig_sms_ApplicationPort8BitHeader,
16265
15
    &ett_qsig_sms_ApplicationPort16BitHeader,
16266
15
    &ett_qsig_sms_GenericUserValue,
16267
15
    &ett_qsig_sms_PAR_smsDeliverError,
16268
15
    &ett_qsig_sms_PAR_smsSubmitError,
16269
15
    &ett_qsig_sms_PAR_smsStatusReportError,
16270
15
    &ett_qsig_sms_PAR_smsCommandError,
16271
16272
/* --- Module SS-MCR-Operations-asn97 --- --- ---                             */
16273
16274
15
    &ett_qsig_mcr_MCRequestArg,
16275
15
    &ett_qsig_mcr_MCRequestResult,
16276
15
    &ett_qsig_mcr_MCInformArg,
16277
15
    &ett_qsig_mcr_MCAlertingArg,
16278
15
    &ett_qsig_mcr_CallType,
16279
15
    &ett_qsig_mcr_Correlation,
16280
15
    &ett_qsig_mcr_MCRExtensions,
16281
15
    &ett_qsig_mcr_SEQUENCE_OF_Extension,
16282
16283
/* --- Module SS-MCM-Operations-asn1-97 --- --- ---                           */
16284
16285
15
    &ett_qsig_mcm_MCMailboxFullArg,
16286
15
    &ett_qsig_mcm_MailboxFullFor,
16287
15
    &ett_qsig_mcm_MailboxFullPar,
16288
15
    &ett_qsig_mcm_MCMServiceArg,
16289
15
    &ett_qsig_mcm_MCMChange,
16290
15
    &ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo,
16291
15
    &ett_qsig_mcm_SEQUENCE_OF_MessageType,
16292
15
    &ett_qsig_mcm_MCMServiceInfo,
16293
15
    &ett_qsig_mcm_MCMInterrogateArg,
16294
15
    &ett_qsig_mcm_MCMInterrogateRes,
16295
15
    &ett_qsig_mcm_MCMNewMsgArg,
16296
15
    &ett_qsig_mcm_MCMNewArgumentExt,
16297
15
    &ett_qsig_mcm_SEQUENCE_OF_Extension,
16298
15
    &ett_qsig_mcm_MCMNoNewMsgArg,
16299
15
    &ett_qsig_mcm_MCMNoNewArgumentExt,
16300
15
    &ett_qsig_mcm_MCMUpdateArg,
16301
15
    &ett_qsig_mcm_MCMUpdateReqArg,
16302
15
    &ett_qsig_mcm_MCMUpdArgArgumentExt,
16303
15
    &ett_qsig_mcm_MCMUpdateReqRes,
16304
15
    &ett_qsig_mcm_MCMUpdateReqResElt,
16305
15
    &ett_qsig_mcm_MCMUpdResArgumentExt,
16306
15
    &ett_qsig_mcm_PartyInfo,
16307
15
    &ett_qsig_mcm_UpdateInfo,
16308
15
    &ett_qsig_mcm_AllMsgInfo,
16309
15
    &ett_qsig_mcm_MessageInfo,
16310
15
    &ett_qsig_mcm_CompleteInfo,
16311
15
    &ett_qsig_mcm_AddressHeader,
16312
15
    &ett_qsig_mcm_CompressedInfo,
16313
15
    &ett_qsig_mcm_MsgCentreId,
16314
15
    &ett_qsig_mcm_MCMExtensions,
16315
16316
/* --- Module SS-MID-Operations-asn1-97 --- --- ---                           */
16317
16318
15
    &ett_qsig_mid_MIDMailboxAuthArg,
16319
15
    &ett_qsig_mid_MIDMailboxIDArg,
16320
15
    &ett_qsig_mid_PartyInfo,
16321
15
    &ett_qsig_mid_String,
16322
15
    &ett_qsig_mid_MIDExtensions,
16323
15
    &ett_qsig_mid_SEQUENCE_OF_Extension,
16324
15
    &ett_cnq_PSS1InformationElement,
16325
15
  };
16326
16327
15
  static ei_register_info ei[] = {
16328
#if 0
16329
    { &ei_qsig_unsupported_arg_type, { "qsig.unsupported.arg_type", PI_UNDECODED, PI_WARN, "UNSUPPORTED ARGUMENT TYPE (QSIG)", EXPFILL }},
16330
#endif
16331
15
    { &ei_qsig_unsupported_result_type, { "qsig.unsupported.result_type", PI_UNDECODED, PI_WARN, "UNSUPPORTED RESULT TYPE (QSIG)", EXPFILL }},
16332
15
    { &ei_qsig_unsupported_error_type, { "qsig.unsupported.error_type", PI_UNDECODED, PI_WARN, "UNSUPPORTED ERROR TYPE (QSIG)", EXPFILL }},
16333
15
  };
16334
16335
15
  expert_module_t* expert_qsig;
16336
16337
  /* Register protocol and dissector */
16338
15
  proto_qsig = proto_register_protocol("QSIG", "QSIG", "qsig");
16339
16340
  /* Register fields and subtrees */
16341
15
  proto_register_field_array(proto_qsig, hf, array_length(hf));
16342
15
  proto_register_subtree_array(ett, array_length(ett));
16343
15
  expert_qsig = expert_register_protocol(proto_qsig);
16344
15
  expert_register_field_array(expert_qsig, ei, array_length(ei));
16345
16346
  /* Register dissectors */
16347
15
  qsig_arg_handle = register_dissector("qsig_arg", dissect_qsig_arg, proto_qsig);
16348
15
  qsig_res_handle = register_dissector("qsig_res", dissect_qsig_res, proto_qsig);
16349
15
  qsig_err_handle = register_dissector("qsig_err", dissect_qsig_err, proto_qsig);
16350
15
  qsig_ie4_handle = register_dissector("qsig_ie_cs4", dissect_qsig_ie_cs4, proto_qsig);
16351
15
  qsig_ie5_handle = register_dissector("qsig_ie_cs5", dissect_qsig_ie_cs5, proto_qsig);
16352
16353
  /* Register dissector tables */
16354
15
  extension_dissector_table = register_dissector_table("qsig.ext", "QSIG Extension", proto_qsig, FT_STRING, STRING_CASE_SENSITIVE);
16355
15
}
16356
16357
16358
/*--- proto_reg_handoff_qsig ------------------------------------------------*/
16359
15
void proto_reg_handoff_qsig(void) {
16360
15
  int i;
16361
15
  char *oid;
16362
15
  dissector_handle_t q931_handle;
16363
16364
15
  q931_handle = find_dissector_add_dependency("q931", proto_qsig);
16365
15
  q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_qsig);
16366
16367
1.84k
  for (i=0; i<(int)array_length(qsig_op_tab); i++) {
16368
1.83k
    dissector_add_uint("q932.ros.local.arg", qsig_op_tab[i].opcode, qsig_arg_handle);
16369
1.83k
    dissector_add_uint("q932.ros.local.res", qsig_op_tab[i].opcode, qsig_res_handle);
16370
16371
1.83k
    oid = wmem_strdup_printf(NULL, "1.3.12.9.%d", qsig_op_tab[i].opcode);
16372
1.83k
    dissector_add_string("q932.ros.global.arg", oid, qsig_arg_handle);
16373
1.83k
    dissector_add_string("q932.ros.global.res", oid, qsig_res_handle);
16374
1.83k
    wmem_free(NULL, oid);
16375
1.83k
  }
16376
1.38k
  for (i=0; i<(int)array_length(qsig_err_tab); i++) {
16377
1.36k
    dissector_add_uint("q932.ros.local.err", qsig_err_tab[i].errcode, qsig_err_handle);
16378
1.36k
  }
16379
16380
  /* QSIG-TC - Transit counter */
16381
15
  dissector_add_uint("q931.ie", CS4 | QSIG_IE_TRANSIT_COUNTER, qsig_ie4_handle);
16382
16383
  /* SSIG-BC - Party category */
16384
15
  dissector_add_uint("q931.ie", CS5 | QSIG_IE_PARTY_CATEGORY, qsig_ie5_handle);
16385
16386
  /* RFC 3204, 3.2 QSIG Media Type */
16387
15
  dissector_add_string("media_type", "application/qsig", q931_handle);
16388
16389
15
}
16390
16391
/*---------------------------------------------------------------------------*/