HACK: pinfo->private_data points to smb_info again
[wireshark-wip.git] / epan / dissectors / packet-qsig.c
blob5baa7f339c1aa9d475c686c34638f6b9eaa9d983
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 /* ../../tools/asn2wrs.py -c ./qsig.cnf -s ./packet-qsig-template -D . -O ../../epan/dissectors 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 */
6 /* Input file: packet-qsig-template.c */
8 #line 1 "../../asn1/qsig/packet-qsig-template.c"
9 /* packet-qsig.c
10 * Routines for QSIG packet dissection
11 * 2007 Tomas Kukosa
13 * $Id$
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
34 #include "config.h"
36 #include <epan/packet.h>
37 #include <epan/strutil.h>
38 #include <epan/asn1.h>
40 #include "packet-ber.h"
41 #include "packet-qsig.h"
43 #define PNAME "QSIG"
44 #define PSNAME "QSIG"
45 #define PFNAME "qsig"
47 /* Shifted codeset values */
48 #define CS0 0x000
49 #define CS1 0x100
50 #define CS2 0x200
51 #define CS3 0x300
52 #define CS4 0x400
53 #define CS5 0x500
54 #define CS6 0x600
55 #define CS7 0x700
57 #define QSIG_IE_TRANSIT_COUNTER 0x31
58 #define QSIG_IE_PARTY_CATEGORY 0x32
60 void proto_register_qsig(void);
61 void proto_reg_handoff_qsig(void);
63 static const value_string qsig_str_ie_type_cs4[] = {
64 { QSIG_IE_TRANSIT_COUNTER , "Transit counter" },
65 { 0, NULL}
67 static const value_string qsig_str_ie_type_cs5[] = {
68 { QSIG_IE_PARTY_CATEGORY , "Party category" },
69 { 0, NULL}
71 /* Codeset array */
72 static const value_string *qsig_str_ie_type[] = {
73 NULL,
74 NULL,
75 NULL,
76 NULL,
77 qsig_str_ie_type_cs4,
78 qsig_str_ie_type_cs5,
79 NULL,
80 NULL,
84 static const value_string qsig_str_pc[] = {
85 { 0x00 , "unknown" },
86 { 0x01 , "extension" },
87 { 0x02 , "operator" },
88 { 0x03 , "emergency extension" },
89 { 0, NULL}
92 static const value_string qsig_str_service[] = {
93 { 13868, "QSIG-NA" },
94 { 13873, "QSIG-CF" },
95 { 13874, "QSIG-PR" },
96 { 13869, "QSIG-CT" },
97 { 13870, "QSIG-CC" },
98 { 14843, "QSIG-CO" },
99 { 14844, "QSIG-DND(O)" },
100 { 14846, "QSIG-CI" },
101 { 15050, "QSIG-AOC" },
102 { 15052, "QSIG-RE" },
103 { 15054, "QSIG-CINT" },
104 { 15506, "QSIG-MWI" },
105 { 15507, "SYNC-SIG" },
106 { 15772, "QSIG-CMN" },
107 { 15992, "QSIG-CPI(P)" },
108 { 17876, "QSIG-PUMR" },
109 { 17878, "QSIG-PUMCH" },
110 { 19460, "QSIG-SSCT" },
111 { 15429, "QSIG-WTMLR" },
112 { 15431, "QSIG-WTMCH" },
113 { 15433, "QSIG-WTMAU" },
114 { 21407, "QSIG-SD" },
115 { 21889, "QSIG-CIDL" },
116 { 325, "QSIG-SMS" },
117 { 344, "QSIG-MCR" },
118 { 3471, "QSIG-MCM" },
119 { 3472, "QSIG-MID" },
120 { 0, NULL}
123 static const value_string qsig_str_service_name[] = {
124 { 13868, "Name-Operations" },
125 { 13873, "Call-Diversion-Operations" },
126 { 13874, "Path-Replacement-Operations" },
127 { 13869, "Call-Transfer-Operations" },
128 { 13870, "SS-CC-Operations" },
129 { 14843, "Call-Offer-Operations" },
130 { 14844, "Do-Not-Disturb-Operations" },
131 { 14846, "Call-Intrusion-Operations" },
132 { 15050, "SS-AOC-Operation" },
133 { 15052, "Recall-Operation" },
134 { 15054, "Call-Interception-Operations" },
135 { 15506, "SS-MWI-Operations" },
136 { 15507, "Synchronization-Operations" },
137 { 15772, "Common-Information-Operations" },
138 { 15992, "Call-Interruption-Operation" },
139 { 17876, "PUM-Registration-Operation" },
140 { 17878, "Private-User-Mobility-Call-Handling-Operations" },
141 { 19460, "Single-Step-Call-Transfer-Operations" },
142 { 15429, "WTM-Location-Registration-Operations" },
143 { 15431, "Wireless-Terminal-Call-Handling-Operations" },
144 { 15433, "WTM-Authentication-Operations" },
145 { 21407, "SS-SD-Operations" },
146 { 21889, "Call-Identification-and-Call-Linkage-Operations" },
147 { 325, "Short-Message-Service-Operations" },
148 { 344, "SS-MCR-Operations" },
149 { 3471, "SS-MCM-Operations" },
150 { 3472, "SS-MID-Operations" },
151 { 0, NULL}
154 #define NO_SRV (-1)
155 static const gint32 op2srv_tab[] = {
156 /* 0 */ 13868,
157 /* 1 */ 13868,
158 /* 2 */ 13868,
159 /* 3 */ 13868,
160 /* 4 */ 13874,
161 /* 5 */ 13874,
162 /* 6 */ 13874,
163 /* 7 */ 13869,
164 /* 8 */ 13869,
165 /* 9 */ 13869,
166 /* 10 */ 13869,
167 /* 11 */ 13869,
168 /* 12 */ 13869,
169 /* 13 */ 13869,
170 /* 14 */ 13869,
171 /* 15 */ 13873,
172 /* 16 */ 13873,
173 /* 17 */ 13873,
174 /* 18 */ 13873,
175 /* 19 */ 13873,
176 /* 20 */ 13873,
177 /* 21 */ 13873,
178 /* 22 */ 13873,
179 /* 23 */ 13873,
180 /* 24 */ NO_SRV,
181 /* 25 */ NO_SRV,
182 /* 26 */ NO_SRV,
183 /* 27 */ 13870,
184 /* 28 */ 13870,
185 /* 29 */ 13870,
186 /* 30 */ 13870,
187 /* 31 */ 13870,
188 /* 32 */ 13870,
189 /* 33 */ 13870,
190 /* 34 */ 14843,
191 /* 35 */ 14844,
192 /* 36 */ 14844,
193 /* 37 */ 14844,
194 /* 38 */ 14844,
195 /* 39 */ 14844,
196 /* 40 */ 13870,
197 /* 41 */ 90001,
198 /* 42 */ 90001,
199 /* 43 */ 14846,
200 /* 44 */ 14846,
201 /* 45 */ 14846,
202 /* 46 */ 14846,
203 /* 47 */ 14846,
204 /* 48 */ 14846,
205 /* 49 */ 90001,
206 /* 50 */ 15429,
207 /* 51 */ 15429,
208 /* 52 */ 15429,
209 /* 53 */ 15429,
210 /* 54 */ 15431,
211 /* 55 */ 15431,
212 /* 56 */ 15431,
213 /* 57 */ 15052,
214 /* 58 */ 15052,
215 /* 59 */ 15050,
216 /* 60 */ 15050,
217 /* 61 */ 15050,
218 /* 62 */ 15050,
219 /* 63 */ 15050,
220 /* 64 */ 15050,
221 /* 65 */ 15050,
222 /* 66 */ 15054,
223 /* 67 */ 15054,
224 /* 68 */ 15054,
225 /* 69 */ 15054,
226 /* 70 */ 15054,
227 /* 71 */ 15431,
228 /* 72 */ 15433,
229 /* 73 */ 15433,
230 /* 74 */ 15433,
231 /* 75 */ 15433,
232 /* 76 */ 15433,
233 /* 77 */ 15433,
234 /* 78 */ 15507,
235 /* 79 */ 15507,
236 /* 80 */ 3471,
237 /* 81 */ 3471,
238 /* 82 */ 3471,
239 /* 83 */ NO_SRV,
240 /* 84 */ 15772,
241 /* 85 */ 15772,
242 /* 86 */ 13874,
243 /* 87 */ 15992,
244 /* 88 */ 15992,
245 /* 89 */ 17876,
246 /* 90 */ 17876,
247 /* 91 */ 17876,
248 /* 92 */ 17876,
249 /* 93 */ 17878,
250 /* 94 */ 17878,
251 /* 95 */ 17878,
252 /* 96 */ 17878,
253 /* 97 */ 15429,
254 /* 98 */ 15429,
255 /* 99 */ 19460,
256 /* 100 */ 19460,
257 /* 101 */ 19460,
258 /* 102 */ 19460,
259 /* 103 */ 21407,
260 /* 104 */ 21407,
261 /* 105 */ 21889,
262 /* 106 */ 21889,
263 /* 107 */ 325,
264 /* 108 */ 325,
265 /* 109 */ 325,
266 /* 110 */ 325,
267 /* 111 */ 325,
268 /* 112 */ 344,
269 /* 113 */ 344,
270 /* 114 */ 344,
271 /* 115 */ 3471,
272 /* 116 */ 3471,
273 /* 117 */ 3471,
274 /* 118 */ 3471,
275 /* 119 */ 3472,
276 /* 120 */ 3472,
279 static const value_string qsig_str_operation[] = {
281 /*--- Included file: packet-qsig-table10.c ---*/
282 #line 1 "../../asn1/qsig/packet-qsig-table10.c"
284 /* --- Module General-Error-List --- --- --- */
286 /* Unknown or empty loop list OPERATION */
288 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
290 /* Unknown or empty loop list OPERATION */
292 /* --- Module Name-Operations-asn1-97 --- --- --- */
294 { 0, "callingName" },
295 { 1, "calledName" },
296 { 2, "connectedName" },
297 { 3, "busyName" },
299 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
301 { 15, "activateDiversionQ" },
302 { 16, "deactivateDiversionQ" },
303 { 17, "interrogateDiversionQ" },
304 { 18, "checkRestriction" },
305 { 19, "callRerouteing" },
306 { 20, "divertingLegInformation1" },
307 { 21, "divertingLegInformation2" },
308 { 22, "divertingLegInformation3" },
309 { 23, "cfnrDivertedLegFailed" },
311 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
313 { 86, "pathReplaceInvite" },
314 { 4, "pathReplacePropose" },
315 { 5, "pathReplaceSetup" },
316 { 6, "pathReplaceRetain" },
318 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
320 { 7, "callTransferIdentify" },
321 { 8, "callTransferAbandon" },
322 { 9, "callTransferInitiate" },
323 { 10, "callTransferSetup" },
324 { 11, "callTransferActive" },
325 { 12, "callTransferComplete" },
326 { 13, "callTransferUpdate" },
327 { 14, "subaddressTransfer" },
329 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
331 { 40, "ccbsRequest" },
332 { 27, "ccnrRequest" },
333 { 28, "ccCancel" },
334 { 29, "ccExecPossible" },
335 { 30, "ccPathReserve" },
336 { 31, "ccRingout" },
337 { 32, "ccSuspend" },
338 { 33, "ccResume" },
340 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
342 { 41, "pathRetain" },
343 { 42, "serviceAvailable" },
344 { 34, "callOfferRequest" },
345 { 49, "cfbOverride" },
347 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
349 { 35, "doNotDisturbActivateQ" },
350 { 36, "doNotDisturbDeactivateQ" },
351 { 37, "doNotDisturbInterrogateQ" },
352 { 38, "doNotDisturbOverrideQ" },
353 { 41, "pathRetain" },
354 { 42, "serviceAvailable" },
355 { 39, "doNotDisturbOvrExecuteQ" },
357 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
359 { 41, "pathRetain" },
360 { 42, "serviceAvailable" },
361 { 43, "callIntrusionRequest" },
362 { 44, "callIntrusionGetCIPL" },
363 { 46, "callIntrusionForcedRelease" },
364 { 45, "callIntrusionIsolate" },
365 { 47, "callIntrusionWOBRequest" },
366 { 48, "callIntrusionCompleted" },
367 { 49, "cfbOverride" },
369 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
371 { 63, "aocRate" },
372 { 62, "aocInterim" },
373 { 61, "aocFinal" },
374 { 59, "chargeRequest" },
375 { 60, "getFinalCharge" },
376 { 64, "aocComplete" },
377 { 65, "aocDivChargeReq" },
379 /* --- Module Recall-Operations-asn1-97 --- --- --- */
381 { 57, "recallAlerting" },
382 { 58, "recallAnswered" },
384 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
386 { 78, "synchronizationRequest" },
387 { 79, "synchronizationInfo" },
389 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
391 { 66, "cintLegInformation1" },
392 { 67, "cintLegInformation2" },
393 { 68, "cintCondition" },
394 { 69, "cintDisable" },
395 { 70, "cintEnable" },
397 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
399 { 84, "cmnRequest" },
400 { 85, "cmnInform" },
402 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
404 { 87, "callInterruptionRequest" },
405 { 88, "callProtectionRequest" },
407 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
409 { 89, "pumRegistr" },
410 { 90, "pumDelReg" },
411 { 91, "pumDe-reg" },
412 { 92, "pumInterrog" },
414 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
416 { 93, "pumiEnquiry" },
417 { 94, "pumiDivert" },
418 { 95, "pumiInform" },
419 { 96, "pumoCall" },
421 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
423 { 99, "ssctInitiate" },
424 { 100, "ssctSetup" },
425 { 101, "ssctPostDial" },
426 { 102, "ssctDigitInfo" },
428 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
430 { 50, "locUpdate" },
431 { 51, "locDelete" },
432 { 52, "locDeReg" },
433 { 53, "pisnEnquiry" },
434 { 97, "getRRCInf" },
435 { 98, "locInfoCheck" },
437 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
439 { 54, "wtmiEnquiry" },
440 { 55, "wtmiDivert" },
441 { 56, "wtmiInform" },
442 { 71, "wtmoCall" },
444 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
446 { 72, "authWtmUser" },
447 { 73, "getWtatParam" },
448 { 74, "wtatParamEnq" },
449 { 75, "getWtanParam" },
450 { 76, "wtanParamEnq" },
451 { 77, "transferAuthParam" },
453 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
455 { 103, "display" },
456 { 104, "keypad" },
458 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
460 { 105, "callIdentificationAssign" },
461 { 106, "callIdentificationUpdate" },
463 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
465 { 107, "smsSubmit" },
466 { 108, "smsDeliver" },
467 { 109, "smsStatusReport" },
468 { 110, "smsCommand" },
469 { 111, "scAlert" },
471 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
473 { 112, "mCRequest" },
474 { 113, "mCInform" },
475 { 114, "mCAlerting" },
477 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
479 { 80, "mCMNewMsg" },
480 { 81, "mCMNoNewMsg" },
481 { 115, "mCMUpdate" },
482 { 82, "mCMUpdateReq" },
483 { 116, "mCMService" },
484 { 117, "mCMInterrogate" },
485 { 118, "mCMailboxFull" },
487 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
489 { 119, "mIDMailboxAuth" },
490 { 120, "mIDMailboxID" },
492 /*--- End of included file: packet-qsig-table10.c ---*/
493 #line 273 "../../asn1/qsig/packet-qsig-template.c"
494 { 0, NULL}
497 static const value_string qsig_str_error[] = {
499 /*--- Included file: packet-qsig-table20.c ---*/
500 #line 1 "../../asn1/qsig/packet-qsig-table20.c"
502 /* --- Module General-Error-List --- --- --- */
504 { 0, "userNotSubscribed" },
505 { 1, "rejectedByNetwork" },
506 { 2, "rejectedByUser" },
507 { 3, "notAvailable" },
508 { 5, "insufficientInformation" },
509 { 6, "invalidServedUserNr" },
510 { 7, "invalidCallState" },
511 { 8, "basicServiceNotProvided" },
512 { 9, "notIncomingCall" },
513 { 10, "supplementaryServiceInteractionNotAllowed" },
514 { 11, "resourceUnavailable" },
515 { 25, "callFailure" },
516 { 43, "proceduralError" },
518 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
520 /* Unknown or empty loop list ERROR */
522 /* --- Module Name-Operations-asn1-97 --- --- --- */
524 /* Unknown or empty loop list ERROR */
526 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
528 { 12, "invalidDivertedToNr" },
529 { 14, "specialServiceNr" },
530 { 15, "diversionToServedUserNr" },
531 { 24, "numberOfDiversionsExceeded" },
532 { 1000, "temporarilyUnavailable" },
533 { 1007, "notAuthorized" },
534 { 1008, "unspecified" },
536 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
538 { 1000, "temporarilyUnavailable" },
539 { 1001, "collision" },
540 { 1002, "criteriaPermanentlyUnachievable" },
541 { 1003, "criteriaTemporarilyUnachievable" },
542 { 1004, "invalidRerouteingNumber" },
543 { 1005, "unrecognizedCallIdentity" },
544 { 1006, "establishmentFailure" },
545 { 1008, "unspecified" },
547 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
549 { 1008, "unspecified" },
550 { 1004, "invalidRerouteingNumber" },
551 { 1005, "unrecognizedCallIdentity" },
552 { 1006, "establishmentFailure" },
554 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
556 { 1008, "unspecified" },
557 { 1010, "shortTermRejection" },
558 { 1011, "longTermRejection" },
559 { 1012, "remoteUserBusyAgain" },
560 { 1013, "failureToMatch" },
561 { 1014, "failedDueToInterworking" },
563 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
565 { 1009, "notBusy" },
566 { 1000, "temporarilyUnavailable" },
567 { 1008, "unspecified" },
569 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
571 { 1000, "temporarilyUnavailable" },
572 { 43, "notActivated" },
573 { 1008, "unspecified" },
575 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
577 { 1009, "notBusy" },
578 { 1000, "temporarilyUnavailable" },
579 { 1007, "notAuthorized" },
580 { 1008, "unspecified" },
582 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
584 { 1008, "unspecified" },
585 { 1016, "freeOfCharge" },
587 /* --- Module Recall-Operations-asn1-97 --- --- --- */
589 /* Unknown or empty loop list ERROR */
591 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
593 { 1008, "unspecified" },
595 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
597 /* Unknown or empty loop list ERROR */
599 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
601 /* Unknown or empty loop list ERROR */
603 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
605 /* Unknown or empty loop list ERROR */
607 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
609 { 1008, "unspecified" },
610 { 1007, "notAuthorized" },
611 { 1000, "temporarilyUnavailable" },
612 { 1019, "pumUserNotSubscribedToThisServiceOpt" },
613 { 1020, "pumUserFailedAuthentication" },
614 { 1021, "hostingAddrInvalid" },
615 { 1022, "pumUserNotRegistered" },
617 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
619 { 1015, "locationNotKnown" },
620 { 1008, "unspecified" },
622 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
624 { 1008, "unspecified" },
626 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
628 { 1007, "notAuthorized" },
629 { 1000, "temporarilyUnavailable" },
630 { 1008, "unspecified" },
632 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
634 { 1008, "unspecified" },
635 { 1015, "locationNotKnown" },
637 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
639 { 1007, "notAuthorized" },
640 { 1017, "paramNotAvailable" },
641 { 1000, "temporarilyUnavailable" },
642 { 1008, "unspecified" },
644 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
646 { 1008, "unspecified" },
647 { 1023, "noDisplayAvailable" },
648 { 1024, "displayTemporarilyNotAvailable" },
649 { 1025, "notPresentable" },
651 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
653 /* Unknown or empty loop list ERROR */
655 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
657 { 1026, "smsDeliverError" },
658 { 1027, "smsSubmitError" },
659 { 1028, "smsStatusReportError" },
660 { 1029, "smsCommandError" },
661 { 1008, "unspecified" },
663 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
665 { 1030, "invalidDestinationNumber" },
666 { 1031, "invalidCooperationNumber" },
667 { 1032, "mCRequestNotAllowed" },
668 { 1033, "mCExecutionNotAllowed" },
669 { 1034, "mCDestUserBusy" },
670 { 1035, "mCCoopUserBusy" },
671 { 1036, "mCCoopUserRejected" },
672 { 1008, "unspecified" },
674 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
676 { 1037, "mCMModeNotProvided" },
677 { 1008, "unspecified" },
679 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
681 { 1039, "invalidMailbox" },
682 { 1040, "authorizationFailed" },
683 { 1008, "unspecified" },
685 /*--- End of included file: packet-qsig-table20.c ---*/
686 #line 278 "../../asn1/qsig/packet-qsig-template.c"
687 { 0, NULL}
690 /* Initialize the protocol and registered fields */
691 static int proto_qsig = -1;
692 static int hf_qsig_operation = -1;
693 static int hf_qsig_service = -1;
694 static int hf_qsig_error = -1;
695 static int hf_qsig_ie_type = -1;
696 static int hf_qsig_ie_type_cs4 = -1;
697 static int hf_qsig_ie_type_cs5 = -1;
698 static int hf_qsig_ie_len = -1;
699 static int hf_qsig_ie_data = -1;
700 static int hf_qsig_tc = -1;
701 static int hf_qsig_pc = -1;
703 /*--- Included file: packet-qsig-hf.c ---*/
704 #line 1 "../../asn1/qsig/packet-qsig-hf.c"
706 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
708 static int hf_qsig_extensionId = -1; /* T_extensionId */
709 static int hf_qsig_extensionArgument = -1; /* T_extensionArgument */
710 static int hf_qsig_presentationAllowedAddressS = -1; /* AddressScreened */
711 static int hf_qsig_presentationRestricted = -1; /* NULL */
712 static int hf_qsig_numberNotAvailableDueToInterworking = -1; /* NULL */
713 static int hf_qsig_presentationRestrictedAddressS = -1; /* AddressScreened */
714 static int hf_qsig_presentationAllowedAddressU = -1; /* Address */
715 static int hf_qsig_presentationRestrictedAddressU = -1; /* Address */
716 static int hf_qsig_presentationAllowedAddressNS = -1; /* NumberScreened */
717 static int hf_qsig_presentationRestrictedAddressNS = -1; /* NumberScreened */
718 static int hf_qsig_presentationAllowedAddressNU = -1; /* PartyNumber */
719 static int hf_qsig_presentationRestrictedAddressNU = -1; /* PartyNumber */
720 static int hf_qsig_partyNumber = -1; /* PartyNumber */
721 static int hf_qsig_screeningIndicator = -1; /* ScreeningIndicator */
722 static int hf_qsig_partySubaddress = -1; /* PartySubaddress */
723 static int hf_qsig_unknownPartyNumber = -1; /* NumberDigits */
724 static int hf_qsig_publicPartyNumber = -1; /* PublicPartyNumber */
725 static int hf_qsig_dataPartyNumber = -1; /* NumberDigits */
726 static int hf_qsig_telexPartyNumber = -1; /* NumberDigits */
727 static int hf_qsig_privatePartyNumber = -1; /* PrivatePartyNumber */
728 static int hf_qsig_nationalStandardPartyNumber = -1; /* NumberDigits */
729 static int hf_qsig_publicTypeOfNumber = -1; /* PublicTypeOfNumber */
730 static int hf_qsig_publicNumberDigits = -1; /* NumberDigits */
731 static int hf_qsig_privateTypeOfNumber = -1; /* PrivateTypeOfNumber */
732 static int hf_qsig_privateNumberDigits = -1; /* NumberDigits */
733 static int hf_qsig_userSpecifiedSubaddress = -1; /* UserSpecifiedSubaddress */
734 static int hf_qsig_nSAPSubaddress = -1; /* NSAPSubaddress */
735 static int hf_qsig_subaddressInformation = -1; /* SubaddressInformation */
736 static int hf_qsig_oddCountIndicator = -1; /* BOOLEAN */
738 /* --- Module Name-Operations-asn1-97 --- --- --- */
740 static int hf_qsig_na_qsig_na_NameArg_PDU = -1; /* NameArg */
741 static int hf_qsig_na_name = -1; /* Name */
742 static int hf_qsig_na_nameSequence = -1; /* T_nameSequence */
743 static int hf_qsig_na_extensionNA = -1; /* NameExtension */
744 static int hf_qsig_na_single = -1; /* Extension */
745 static int hf_qsig_na_multiple = -1; /* SEQUENCE_OF_Extension */
746 static int hf_qsig_na_multiple_item = -1; /* Extension */
747 static int hf_qsig_na_namePresentationAllowed = -1; /* NamePresentationAllowed */
748 static int hf_qsig_na_namePresentationRestricted = -1; /* NamePresentationRestricted */
749 static int hf_qsig_na_nameNotAvailable = -1; /* NameNotAvailable */
750 static int hf_qsig_na_namePresentationAllowedSimple = -1; /* NameData */
751 static int hf_qsig_na_namePresentationAllowedExtended = -1; /* NameSet */
752 static int hf_qsig_na_namePresentationRestrictedSimple = -1; /* NameData */
753 static int hf_qsig_na_namePresentationRestrictedExtended = -1; /* NameSet */
754 static int hf_qsig_na_namePresentationRestrictedNull = -1; /* NULL */
755 static int hf_qsig_na_nameData = -1; /* NameData */
756 static int hf_qsig_na_characterSet = -1; /* CharacterSet */
758 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
760 static int hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU = -1; /* ARG_activateDiversionQ */
761 static int hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU = -1; /* RES_activateDiversionQ */
762 static int hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU = -1; /* ARG_deactivateDiversionQ */
763 static int hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU = -1; /* RES_deactivateDiversionQ */
764 static int hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU = -1; /* ARG_interrogateDiversionQ */
765 static int hf_qsig_cf_qsig_cf_IntResultList_PDU = -1; /* IntResultList */
766 static int hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU = -1; /* ARG_checkRestriction */
767 static int hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU = -1; /* RES_checkRestriction */
768 static int hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU = -1; /* ARG_callRerouteing */
769 static int hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU = -1; /* RES_callRerouteing */
770 static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU = -1; /* ARG_divertingLegInformation1 */
771 static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU = -1; /* ARG_divertingLegInformation2 */
772 static int hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU = -1; /* ARG_divertingLegInformation3 */
773 static int hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU = -1; /* ARG_cfnrDivertedLegFailed */
774 static int hf_qsig_cf_qsig_cf_Extension_PDU = -1; /* Extension */
775 static int hf_qsig_cf_procedure = -1; /* Procedure */
776 static int hf_qsig_cf_basicService = -1; /* BasicService */
777 static int hf_qsig_cf_divertedToAddress = -1; /* Address */
778 static int hf_qsig_cf_servedUserNr = -1; /* PartyNumber */
779 static int hf_qsig_cf_activatingUserNr = -1; /* PartyNumber */
780 static int hf_qsig_cf_extensionAD = -1; /* ADExtension */
781 static int hf_qsig_cf_single = -1; /* Extension */
782 static int hf_qsig_cf_multiple = -1; /* SEQUENCE_OF_Extension */
783 static int hf_qsig_cf_multiple_item = -1; /* Extension */
784 static int hf_qsig_cf_null = -1; /* NULL */
785 static int hf_qsig_cf_deactivatingUserNr = -1; /* PartyNumber */
786 static int hf_qsig_cf_extensionDD = -1; /* DDExtension */
787 static int hf_qsig_cf_interrogatingUserNr = -1; /* PartyNumber */
788 static int hf_qsig_cf_extensionID = -1; /* IDExtension */
789 static int hf_qsig_cf_divertedToNr = -1; /* PartyNumber */
790 static int hf_qsig_cf_extensionCHR = -1; /* CHRExtension */
791 static int hf_qsig_cf_rerouteingReason = -1; /* DiversionReason */
792 static int hf_qsig_cf_originalRerouteingReason = -1; /* DiversionReason */
793 static int hf_qsig_cf_calledAddress = -1; /* Address */
794 static int hf_qsig_cf_diversionCounter = -1; /* INTEGER_1_15 */
795 static int hf_qsig_cf_pSS1InfoElement = -1; /* PSS1InformationElement */
796 static int hf_qsig_cf_lastRerouteingNr = -1; /* PresentedNumberUnscreened */
797 static int hf_qsig_cf_subscriptionOption = -1; /* SubscriptionOption */
798 static int hf_qsig_cf_callingPartySubaddress = -1; /* PartySubaddress */
799 static int hf_qsig_cf_callingNumber = -1; /* PresentedNumberScreened */
800 static int hf_qsig_cf_callingName = -1; /* Name */
801 static int hf_qsig_cf_originalCalledNr = -1; /* PresentedNumberUnscreened */
802 static int hf_qsig_cf_redirectingName = -1; /* Name */
803 static int hf_qsig_cf_originalCalledName = -1; /* Name */
804 static int hf_qsig_cf_extensionCRR = -1; /* CRRExtension */
805 static int hf_qsig_cf_diversionReason = -1; /* DiversionReason */
806 static int hf_qsig_cf_nominatedNr = -1; /* PartyNumber */
807 static int hf_qsig_cf_extensionDLI1 = -1; /* DLI1Extension */
808 static int hf_qsig_cf_originalDiversionReason = -1; /* DiversionReason */
809 static int hf_qsig_cf_divertingNr = -1; /* PresentedNumberUnscreened */
810 static int hf_qsig_cf_extensionDLI2 = -1; /* DLI2Extension */
811 static int hf_qsig_cf_presentationAllowedIndicator = -1; /* PresentationAllowedIndicator */
812 static int hf_qsig_cf_redirectionName = -1; /* Name */
813 static int hf_qsig_cf_extensionDLI3 = -1; /* DLI3Extension */
814 static int hf_qsig_cf_IntResultList_item = -1; /* IntResult */
815 static int hf_qsig_cf_remoteEnabled = -1; /* BOOLEAN */
816 static int hf_qsig_cf_extensionIR = -1; /* IRExtension */
818 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
820 static int hf_qsig_pr_qsig_pr_DummyArg_PDU = -1; /* DummyArg */
821 static int hf_qsig_pr_qsig_pr_PRProposeArg_PDU = -1; /* PRProposeArg */
822 static int hf_qsig_pr_qsig_pr_PRSetupArg_PDU = -1; /* PRSetupArg */
823 static int hf_qsig_pr_qsig_pr_DummyResult_PDU = -1; /* DummyResult */
824 static int hf_qsig_pr_qsig_pr_PRRetainArg_PDU = -1; /* PRRetainArg */
825 static int hf_qsig_pr_qsig_pr_Extension_PDU = -1; /* Extension */
826 static int hf_qsig_pr_callIdentity = -1; /* CallIdentity */
827 static int hf_qsig_pr_rerouteingNumber = -1; /* PartyNumber */
828 static int hf_qsig_pr_extensionPRP = -1; /* PRPExtension */
829 static int hf_qsig_pr_single = -1; /* Extension */
830 static int hf_qsig_pr_multiple = -1; /* SEQUENCE_OF_Extension */
831 static int hf_qsig_pr_multiple_item = -1; /* Extension */
832 static int hf_qsig_pr_extensionPRS = -1; /* PRSExtension */
833 static int hf_qsig_pr_extensionPRR = -1; /* PRRExtension */
834 static int hf_qsig_pr_null = -1; /* NULL */
836 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
838 static int hf_qsig_ct_qsig_ct_DummyArg_PDU = -1; /* DummyArg */
839 static int hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU = -1; /* CTIdentifyRes */
840 static int hf_qsig_ct_qsig_ct_CTInitiateArg_PDU = -1; /* CTInitiateArg */
841 static int hf_qsig_ct_qsig_ct_DummyRes_PDU = -1; /* DummyRes */
842 static int hf_qsig_ct_qsig_ct_CTSetupArg_PDU = -1; /* CTSetupArg */
843 static int hf_qsig_ct_qsig_ct_CTActiveArg_PDU = -1; /* CTActiveArg */
844 static int hf_qsig_ct_qsig_ct_CTCompleteArg_PDU = -1; /* CTCompleteArg */
845 static int hf_qsig_ct_qsig_ct_CTUpdateArg_PDU = -1; /* CTUpdateArg */
846 static int hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU = -1; /* SubaddressTransferArg */
847 static int hf_qsig_ct_qsig_ct_Extension_PDU = -1; /* Extension */
848 static int hf_qsig_ct_null = -1; /* NULL */
849 static int hf_qsig_ct_single = -1; /* Extension */
850 static int hf_qsig_ct_multiple = -1; /* SEQUENCE_OF_Extension */
851 static int hf_qsig_ct_multiple_item = -1; /* Extension */
852 static int hf_qsig_ct_callIdentity = -1; /* CallIdentity */
853 static int hf_qsig_ct_rerouteingNumber = -1; /* PartyNumber */
854 static int hf_qsig_ct_resultExtension = -1; /* T_resultExtension */
855 static int hf_qsig_ct_argumentExtensionCTI = -1; /* CTIargumentExtension */
856 static int hf_qsig_ct_argumentExtensionCTS = -1; /* CTSargumentExtension */
857 static int hf_qsig_ct_connectedAddress = -1; /* PresentedAddressScreened */
858 static int hf_qsig_ct_basicCallInfoElements = -1; /* PSS1InformationElement */
859 static int hf_qsig_ct_connectedName = -1; /* Name */
860 static int hf_qsig_ct_argumentExtensionCTA = -1; /* CTAargumentExtension */
861 static int hf_qsig_ct_endDesignation = -1; /* EndDesignation */
862 static int hf_qsig_ct_redirectionNumber = -1; /* PresentedNumberScreened */
863 static int hf_qsig_ct_redirectionName = -1; /* Name */
864 static int hf_qsig_ct_callStatus = -1; /* CallStatus */
865 static int hf_qsig_ct_argumentExtensionCTC = -1; /* CTCargumentExtension */
866 static int hf_qsig_ct_argumentExtensionCTU = -1; /* CTUargumentExtension */
867 static int hf_qsig_ct_redirectionSubaddress = -1; /* PartySubaddress */
868 static int hf_qsig_ct_argumentExtensionST = -1; /* STargumentExtension */
870 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
872 static int hf_qsig_cc_qsig_cc_CcRequestArg_PDU = -1; /* CcRequestArg */
873 static int hf_qsig_cc_qsig_cc_CcRequestRes_PDU = -1; /* CcRequestRes */
874 static int hf_qsig_cc_qsig_cc_CcOptionalArg_PDU = -1; /* CcOptionalArg */
875 static int hf_qsig_cc_qsig_cc_CcExtension_PDU = -1; /* CcExtension */
876 static int hf_qsig_cc_qsig_cc_Extension_PDU = -1; /* Extension */
877 static int hf_qsig_cc_numberA = -1; /* PresentedNumberUnscreened */
878 static int hf_qsig_cc_numberB = -1; /* PartyNumber */
879 static int hf_qsig_cc_service = -1; /* PSS1InformationElement */
880 static int hf_qsig_cc_subaddrA = -1; /* PartySubaddress */
881 static int hf_qsig_cc_subaddrB = -1; /* PartySubaddress */
882 static int hf_qsig_cc_can_retain_service = -1; /* BOOLEAN */
883 static int hf_qsig_cc_retain_sig_connection = -1; /* BOOLEAN */
884 static int hf_qsig_cc_extension = -1; /* CcExtension */
885 static int hf_qsig_cc_no_path_reservation = -1; /* BOOLEAN */
886 static int hf_qsig_cc_retain_service = -1; /* BOOLEAN */
887 static int hf_qsig_cc_fullArg = -1; /* T_fullArg */
888 static int hf_qsig_cc_numberA_01 = -1; /* PartyNumber */
889 static int hf_qsig_cc_extArg = -1; /* CcExtension */
890 static int hf_qsig_cc_none = -1; /* NULL */
891 static int hf_qsig_cc_single = -1; /* Extension */
892 static int hf_qsig_cc_multiple = -1; /* SEQUENCE_OF_Extension */
893 static int hf_qsig_cc_multiple_item = -1; /* Extension */
895 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
897 static int hf_qsig_co_qsig_co_PathRetainArg_PDU = -1; /* PathRetainArg */
898 static int hf_qsig_co_qsig_co_ServiceAvailableArg_PDU = -1; /* ServiceAvailableArg */
899 static int hf_qsig_co_qsig_co_DummyArg_PDU = -1; /* DummyArg */
900 static int hf_qsig_co_qsig_co_DummyRes_PDU = -1; /* DummyRes */
901 static int hf_qsig_co_qsig_co_Extension_PDU = -1; /* Extension */
902 static int hf_qsig_co_serviceList = -1; /* ServiceList */
903 static int hf_qsig_co_extendedServiceList = -1; /* T_extendedServiceList */
904 static int hf_qsig_co_extension = -1; /* Extension */
905 static int hf_qsig_co_extendedServiceList_01 = -1; /* T_extendedServiceList_01 */
906 static int hf_qsig_co_null = -1; /* NULL */
907 static int hf_qsig_co_sequenceOfExtn = -1; /* SEQUENCE_OF_Extension */
908 static int hf_qsig_co_sequenceOfExtn_item = -1; /* Extension */
909 /* named bits */
910 static int hf_qsig_co_ServiceList_callOffer = -1;
912 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
914 static int hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU = -1; /* DNDActivateArg */
915 static int hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU = -1; /* DNDActivateRes */
916 static int hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU = -1; /* DNDDeactivateArg */
917 static int hf_qsig_dnd_qsig_dnd_DummyRes_PDU = -1; /* DummyRes */
918 static int hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU = -1; /* DNDInterrogateArg */
919 static int hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU = -1; /* DNDInterrogateRes */
920 static int hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU = -1; /* DNDOverrideArg */
921 static int hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU = -1; /* PathRetainArg */
922 static int hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU = -1; /* ServiceAvailableArg */
923 static int hf_qsig_dnd_qsig_dnd_DummyArg_PDU = -1; /* DummyArg */
924 static int hf_qsig_dnd_qsig_dnd_Extension_PDU = -1; /* Extension */
925 static int hf_qsig_dnd_null = -1; /* NULL */
926 static int hf_qsig_dnd_extension = -1; /* Extension */
927 static int hf_qsig_dnd_sequenceOfExtn = -1; /* SEQUENCE_OF_Extension */
928 static int hf_qsig_dnd_sequenceOfExtn_item = -1; /* Extension */
929 static int hf_qsig_dnd_basicService = -1; /* BasicService */
930 static int hf_qsig_dnd_servedUserNr = -1; /* PartyNumber */
931 static int hf_qsig_dnd_argumentExtensionDNDA = -1; /* DNDAargumentExtension */
932 static int hf_qsig_dnd_status = -1; /* T_status */
933 static int hf_qsig_dnd_status_item = -1; /* T_status_item */
934 static int hf_qsig_dnd_dndProtectionLevel = -1; /* DNDProtectionLevel */
935 static int hf_qsig_dnd_resultExtension = -1; /* T_resultExtension */
936 static int hf_qsig_dnd_argumentExtensionDNDD = -1; /* DNDDargumentExtension */
937 static int hf_qsig_dnd_argumentExtensionDNDI = -1; /* DNDIargumentExtension */
938 static int hf_qsig_dnd_status_01 = -1; /* T_status_01 */
939 static int hf_qsig_dnd_status_item_01 = -1; /* T_status_item_01 */
940 static int hf_qsig_dnd_resultExtension_01 = -1; /* T_resultExtension_01 */
941 static int hf_qsig_dnd_dndoCapabilityLevel = -1; /* DNDOCapabilityLevel */
942 static int hf_qsig_dnd_argumentExtensionDNDO = -1; /* DNDOargumentExtension */
943 static int hf_qsig_dnd_serviceList = -1; /* ServiceList */
944 static int hf_qsig_dnd_extendedServiceList = -1; /* T_extendedServiceList */
945 static int hf_qsig_dnd_extendedServiceList_01 = -1; /* T_extendedServiceList_01 */
946 /* named bits */
947 static int hf_qsig_dnd_ServiceList_dndo_low = -1;
948 static int hf_qsig_dnd_ServiceList_dndo_medium = -1;
949 static int hf_qsig_dnd_ServiceList_dndo_high = -1;
951 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
953 static int hf_qsig_ci_qsig_ci_PathRetainArg_PDU = -1; /* PathRetainArg */
954 static int hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU = -1; /* ServiceAvailableArg */
955 static int hf_qsig_ci_qsig_ci_CIRequestArg_PDU = -1; /* CIRequestArg */
956 static int hf_qsig_ci_qsig_ci_CIRequestRes_PDU = -1; /* CIRequestRes */
957 static int hf_qsig_ci_qsig_ci_DummyArg_PDU = -1; /* DummyArg */
958 static int hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU = -1; /* CIGetCIPLRes */
959 static int hf_qsig_ci_qsig_ci_DummyRes_PDU = -1; /* DummyRes */
960 static int hf_qsig_ci_qsig_ci_Extension_PDU = -1; /* Extension */
961 static int hf_qsig_ci_serviceList = -1; /* ServiceList */
962 static int hf_qsig_ci_extendedServiceList = -1; /* T_extendedServiceList */
963 static int hf_qsig_ci_extension = -1; /* Extension */
964 static int hf_qsig_ci_extendedServiceList_01 = -1; /* T_extendedServiceList_01 */
965 static int hf_qsig_ci_null = -1; /* NULL */
966 static int hf_qsig_ci_sequenceOfExtn = -1; /* SEQUENCE_OF_Extension */
967 static int hf_qsig_ci_sequenceOfExtn_item = -1; /* Extension */
968 static int hf_qsig_ci_ciCapabilityLevel = -1; /* CICapabilityLevel */
969 static int hf_qsig_ci_argumentExtension = -1; /* T_argumentExtension */
970 static int hf_qsig_ci_ciUnwantedUserStatus = -1; /* CIUnwantedUserStatus */
971 static int hf_qsig_ci_resultExtension = -1; /* T_resultExtension */
972 static int hf_qsig_ci_ciProtectionLevel = -1; /* CIProtectionLevel */
973 static int hf_qsig_ci_resultExtension_01 = -1; /* T_resultExtension_01 */
974 /* named bits */
975 static int hf_qsig_ci_ServiceList_ci_low = -1;
976 static int hf_qsig_ci_ServiceList_ci_medium = -1;
977 static int hf_qsig_ci_ServiceList_ci_high = -1;
979 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
981 static int hf_qsig_aoc_qsig_aoc_AocRateArg_PDU = -1; /* AocRateArg */
982 static int hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU = -1; /* AocInterimArg */
983 static int hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU = -1; /* AocFinalArg */
984 static int hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU = -1; /* ChargeRequestArg */
985 static int hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU = -1; /* ChargeRequestRes */
986 static int hf_qsig_aoc_qsig_aoc_DummyArg_PDU = -1; /* DummyArg */
987 static int hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU = -1; /* AocCompleteArg */
988 static int hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU = -1; /* AocCompleteRes */
989 static int hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU = -1; /* AocDivChargeReqArg */
990 static int hf_qsig_aoc_qsig_aoc_Extension_PDU = -1; /* Extension */
991 static int hf_qsig_aoc_aocRate = -1; /* T_aocRate */
992 static int hf_qsig_aoc_chargeNotAvailable = -1; /* NULL */
993 static int hf_qsig_aoc_aocSCurrencyInfoList = -1; /* AOCSCurrencyInfoList */
994 static int hf_qsig_aoc_rateArgExtension = -1; /* T_rateArgExtension */
995 static int hf_qsig_aoc_extension = -1; /* Extension */
996 static int hf_qsig_aoc_multipleExtension = -1; /* SEQUENCE_OF_Extension */
997 static int hf_qsig_aoc_multipleExtension_item = -1; /* Extension */
998 static int hf_qsig_aoc_interimCharge = -1; /* T_interimCharge */
999 static int hf_qsig_aoc_freeOfCharge = -1; /* NULL */
1000 static int hf_qsig_aoc_specificCurrency = -1; /* T_specificCurrency */
1001 static int hf_qsig_aoc_recordedCurrency = -1; /* RecordedCurrency */
1002 static int hf_qsig_aoc_interimBillingId = -1; /* InterimBillingId */
1003 static int hf_qsig_aoc_interimArgExtension = -1; /* T_interimArgExtension */
1004 static int hf_qsig_aoc_finalCharge = -1; /* T_finalCharge */
1005 static int hf_qsig_aoc_specificCurrency_01 = -1; /* T_specificCurrency_01 */
1006 static int hf_qsig_aoc_finalBillingId = -1; /* FinalBillingId */
1007 static int hf_qsig_aoc_chargingAssociation = -1; /* ChargingAssociation */
1008 static int hf_qsig_aoc_finalArgExtension = -1; /* T_finalArgExtension */
1009 static int hf_qsig_aoc_AOCSCurrencyInfoList_item = -1; /* AOCSCurrencyInfo */
1010 static int hf_qsig_aoc_chargedItem = -1; /* ChargedItem */
1011 static int hf_qsig_aoc_rateType = -1; /* T_rateType */
1012 static int hf_qsig_aoc_durationCurrency = -1; /* DurationCurrency */
1013 static int hf_qsig_aoc_flatRateCurrency = -1; /* FlatRateCurrency */
1014 static int hf_qsig_aoc_volumeRateCurrency = -1; /* VolumeRateCurrency */
1015 static int hf_qsig_aoc_specialChargingCode = -1; /* SpecialChargingCode */
1016 static int hf_qsig_aoc_currencyInfoNotAvailable = -1; /* NULL */
1017 static int hf_qsig_aoc_freeOfChargefromBeginning = -1; /* NULL */
1018 static int hf_qsig_aoc_dCurrency = -1; /* Currency */
1019 static int hf_qsig_aoc_dAmount = -1; /* Amount */
1020 static int hf_qsig_aoc_dChargingType = -1; /* ChargingType */
1021 static int hf_qsig_aoc_dTime = -1; /* Time */
1022 static int hf_qsig_aoc_dGranularity = -1; /* Time */
1023 static int hf_qsig_aoc_fRCurrency = -1; /* Currency */
1024 static int hf_qsig_aoc_fRAmount = -1; /* Amount */
1025 static int hf_qsig_aoc_vRCurrency = -1; /* Currency */
1026 static int hf_qsig_aoc_vRAmount = -1; /* Amount */
1027 static int hf_qsig_aoc_vRVolumeUnit = -1; /* VolumeUnit */
1028 static int hf_qsig_aoc_rCurrency = -1; /* Currency */
1029 static int hf_qsig_aoc_rAmount = -1; /* Amount */
1030 static int hf_qsig_aoc_currencyAmount = -1; /* CurrencyAmount */
1031 static int hf_qsig_aoc_multiplier = -1; /* Multiplier */
1032 static int hf_qsig_aoc_lengthOfTimeUnit = -1; /* LengthOfTimeUnit */
1033 static int hf_qsig_aoc_scale = -1; /* Scale */
1034 static int hf_qsig_aoc_chargeNumber = -1; /* PartyNumber */
1035 static int hf_qsig_aoc_chargeIdentifier = -1; /* ChargeIdentifier */
1036 static int hf_qsig_aoc_adviceModeCombinations = -1; /* SEQUENCE_SIZE_0_7_OF_AdviceModeCombination */
1037 static int hf_qsig_aoc_adviceModeCombinations_item = -1; /* AdviceModeCombination */
1038 static int hf_qsig_aoc_chargeReqArgExtension = -1; /* T_chargeReqArgExtension */
1039 static int hf_qsig_aoc_adviceModeCombination = -1; /* AdviceModeCombination */
1040 static int hf_qsig_aoc_chargeReqResExtension = -1; /* T_chargeReqResExtension */
1041 static int hf_qsig_aoc_none = -1; /* NULL */
1042 static int hf_qsig_aoc_chargedUser = -1; /* PartyNumber */
1043 static int hf_qsig_aoc_completeArgExtension = -1; /* T_completeArgExtension */
1044 static int hf_qsig_aoc_chargingOption = -1; /* ChargingOption */
1045 static int hf_qsig_aoc_completeResExtension = -1; /* T_completeResExtension */
1046 static int hf_qsig_aoc_divertingUser = -1; /* PartyNumber */
1047 static int hf_qsig_aoc_diversionType = -1; /* DiversionType */
1048 static int hf_qsig_aoc_aocDivChargeReqArgExt = -1; /* T_aocDivChargeReqArgExt */
1050 /* --- Module Recall-Operations-asn1-97 --- --- --- */
1052 static int hf_qsig_re_qsig_re_ReAlertingArg_PDU = -1; /* ReAlertingArg */
1053 static int hf_qsig_re_qsig_re_ReAnswerArg_PDU = -1; /* ReAnswerArg */
1054 static int hf_qsig_re_alertedNumber = -1; /* PresentedNumberScreened */
1055 static int hf_qsig_re_alertedName = -1; /* Name */
1056 static int hf_qsig_re_argumentExtension = -1; /* T_argumentExtension */
1057 static int hf_qsig_re_extension = -1; /* Extension */
1058 static int hf_qsig_re_multipleExtension = -1; /* SEQUENCE_OF_Extension */
1059 static int hf_qsig_re_multipleExtension_item = -1; /* Extension */
1060 static int hf_qsig_re_connectedNumber = -1; /* PresentedNumberScreened */
1061 static int hf_qsig_re_connectedSubaddress = -1; /* PartySubaddress */
1062 static int hf_qsig_re_connectedName = -1; /* Name */
1063 static int hf_qsig_re_argumentExtension_01 = -1; /* T_argumentExtension_01 */
1065 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
1067 static int hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU = -1; /* SynchronizationReqArg */
1068 static int hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU = -1; /* SynchronizationReqRes */
1069 static int hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU = -1; /* SynchronizationInfoArg */
1070 static int hf_qsig_sync_qsig_sync_Extension_PDU = -1; /* Extension */
1071 static int hf_qsig_sync_action = -1; /* Action */
1072 static int hf_qsig_sync_argExtension = -1; /* ArgExtension */
1073 static int hf_qsig_sync_response = -1; /* BOOLEAN */
1074 static int hf_qsig_sync_stateinfo = -1; /* T_stateinfo */
1075 static int hf_qsig_sync_extension = -1; /* Extension */
1076 static int hf_qsig_sync_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1077 static int hf_qsig_sync_sequOfExtn_item = -1; /* Extension */
1079 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
1081 static int hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU = -1; /* CintInformation1Arg */
1082 static int hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU = -1; /* CintInformation2Arg */
1083 static int hf_qsig_cint_qsig_cint_CintCondArg_PDU = -1; /* CintCondArg */
1084 static int hf_qsig_cint_qsig_cint_CintExtension_PDU = -1; /* CintExtension */
1085 static int hf_qsig_cint_interceptionCause = -1; /* CintCause */
1086 static int hf_qsig_cint_interceptedToNumber = -1; /* PartyNumber */
1087 static int hf_qsig_cint_extension = -1; /* CintExtension */
1088 static int hf_qsig_cint_calledNumber = -1; /* PresentedNumberUnscreened */
1089 static int hf_qsig_cint_originalCalledNumber = -1; /* PresentedNumberUnscreened */
1090 static int hf_qsig_cint_calledName = -1; /* Name */
1091 static int hf_qsig_cint_originalCalledName = -1; /* Name */
1092 static int hf_qsig_cint_interceptionCause_01 = -1; /* Condition */
1093 static int hf_qsig_cint_none = -1; /* NULL */
1094 static int hf_qsig_cint_single = -1; /* Extension */
1095 static int hf_qsig_cint_multiple = -1; /* SEQUENCE_OF_Extension */
1096 static int hf_qsig_cint_multiple_item = -1; /* Extension */
1098 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
1100 static int hf_qsig_cmn_qsig_cmn_DummyArg_PDU = -1; /* DummyArg */
1101 static int hf_qsig_cmn_qsig_cmn_CmnArg_PDU = -1; /* CmnArg */
1102 static int hf_qsig_cmn_featureIdentifier = -1; /* FeatureIdList */
1103 static int hf_qsig_cmn_ssDNDOprotectionLevel = -1; /* INTEGER_0_3 */
1104 static int hf_qsig_cmn_ssCIprotectionLevel = -1; /* INTEGER_0_3 */
1105 static int hf_qsig_cmn_equipmentIdentity = -1; /* EquipmentId */
1106 static int hf_qsig_cmn_partyCategory = -1; /* PartyCategory */
1107 static int hf_qsig_cmn_extension = -1; /* T_extension */
1108 static int hf_qsig_cmn_single = -1; /* Extension */
1109 static int hf_qsig_cmn_multiple = -1; /* SEQUENCE_OF_Extension */
1110 static int hf_qsig_cmn_multiple_item = -1; /* Extension */
1111 static int hf_qsig_cmn_null = -1; /* NULL */
1112 static int hf_qsig_cmn_nodeId = -1; /* IA5String_SIZE_1_10 */
1113 static int hf_qsig_cmn_groupId = -1; /* IA5String_SIZE_1_10 */
1114 static int hf_qsig_cmn_unitId = -1; /* IA5String_SIZE_1_10 */
1115 /* named bits */
1116 static int hf_qsig_cmn_FeatureIdList_reserved = -1;
1117 static int hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported = -1;
1118 static int hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported = -1;
1119 static int hf_qsig_cmn_FeatureIdList_ssCCBSpossible = -1;
1120 static int hf_qsig_cmn_FeatureIdList_ssCCNRpossible = -1;
1121 static int hf_qsig_cmn_FeatureIdList_ssCOsupported = -1;
1122 static int hf_qsig_cmn_FeatureIdList_ssCIforcedRelease = -1;
1123 static int hf_qsig_cmn_FeatureIdList_ssCIisolation = -1;
1124 static int hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy = -1;
1125 static int hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx = -1;
1126 static int hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx = -1;
1127 static int hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx = -1;
1128 static int hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx = -1;
1129 static int hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate = -1;
1130 static int hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed = -1;
1131 static int hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported = -1;
1132 static int hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported = -1;
1133 static int hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported = -1;
1135 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
1137 static int hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU = -1; /* CPIRequestArg */
1138 static int hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU = -1; /* CPIPRequestArg */
1139 static int hf_qsig_cpi_cpiCapabilityLevel = -1; /* CPICapabilityLevel */
1140 static int hf_qsig_cpi_argumentExtension = -1; /* T_argumentExtension */
1141 static int hf_qsig_cpi_extension = -1; /* Extension */
1142 static int hf_qsig_cpi_sequenceOfExtn = -1; /* SEQUENCE_OF_Extension */
1143 static int hf_qsig_cpi_sequenceOfExtn_item = -1; /* Extension */
1144 static int hf_qsig_cpi_cpiProtectionLevel = -1; /* CPIProtectionLevel */
1145 static int hf_qsig_cpi_argumentExtension_01 = -1; /* T_argumentExtension_01 */
1147 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
1149 static int hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU = -1; /* PumRegistrArg */
1150 static int hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU = -1; /* PumRegistrRes */
1151 static int hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU = -1; /* PumDelRegArg */
1152 static int hf_qsig_pumr_qsig_pumr_DummyRes_PDU = -1; /* DummyRes */
1153 static int hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU = -1; /* PumDe_regArg */
1154 static int hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU = -1; /* PumInterrogArg */
1155 static int hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU = -1; /* PumInterrogRes */
1156 static int hf_qsig_pumr_qsig_pumr_Extension_PDU = -1; /* Extension */
1157 static int hf_qsig_pumr_pumRUserId = -1; /* RpumUserId */
1158 static int hf_qsig_pumr_pumNumber = -1; /* PartyNumber */
1159 static int hf_qsig_pumr_alternativeId = -1; /* AlternativeId */
1160 static int hf_qsig_pumr_basicService = -1; /* BasicService */
1161 static int hf_qsig_pumr_hostingAddr = -1; /* PartyNumber */
1162 static int hf_qsig_pumr_activatingUserAddr = -1; /* PartyNumber */
1163 static int hf_qsig_pumr_serviceOption = -1; /* ServiceOption */
1164 static int hf_qsig_pumr_sessionParams = -1; /* SessionParams */
1165 static int hf_qsig_pumr_userPin = -1; /* T_userPin */
1166 static int hf_qsig_pumr_pumUserPin = -1; /* UserPin */
1167 static int hf_qsig_pumr_activatingUserPin = -1; /* UserPin */
1168 static int hf_qsig_pumr_argExtension = -1; /* PumrExtension */
1169 static int hf_qsig_pumr_null = -1; /* NULL */
1170 static int hf_qsig_pumr_extension = -1; /* Extension */
1171 static int hf_qsig_pumr_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1172 static int hf_qsig_pumr_sequOfExtn_item = -1; /* Extension */
1173 static int hf_qsig_pumr_pumXUserId = -1; /* XpumUserId */
1174 static int hf_qsig_pumr_pumDUserId = -1; /* DpumUserId */
1175 static int hf_qsig_pumr_userPin_01 = -1; /* T_userPin_01 */
1176 static int hf_qsig_pumr_pumIUserId = -1; /* IpumUserId */
1177 static int hf_qsig_pumr_homeInfoOnly = -1; /* BOOLEAN */
1178 static int hf_qsig_pumr_userPin_02 = -1; /* T_userPin_02 */
1179 static int hf_qsig_pumr_PumInterrogRes_item = -1; /* PumInterrogRes_item */
1180 static int hf_qsig_pumr_interrogParams = -1; /* SessionParams */
1181 static int hf_qsig_pumr_durationOfSession = -1; /* INTEGER */
1182 static int hf_qsig_pumr_numberOfOutgCalls = -1; /* INTEGER */
1184 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
1186 static int hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU = -1; /* EnquiryArg */
1187 static int hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU = -1; /* EnquiryRes */
1188 static int hf_qsig_pumch_qsig_pumch_DivertArg_PDU = -1; /* DivertArg */
1189 static int hf_qsig_pumch_qsig_pumch_DummyRes_PDU = -1; /* DummyRes */
1190 static int hf_qsig_pumch_qsig_pumch_InformArg_PDU = -1; /* InformArg */
1191 static int hf_qsig_pumch_qsig_pumch_PumoArg_PDU = -1; /* PumoArg */
1192 static int hf_qsig_pumch_qsig_pumch_Extension_PDU = -1; /* Extension */
1193 static int hf_qsig_pumch_pisnNumber = -1; /* PartyNumber */
1194 static int hf_qsig_pumch_qSIGInfoElement = -1; /* PSS1InformationElement */
1195 static int hf_qsig_pumch_argExtension = -1; /* PumiExtension */
1196 static int hf_qsig_pumch_hostingAddr = -1; /* PartyNumber */
1197 static int hf_qsig_pumch_callingNumber = -1; /* PresentedNumberScreened */
1198 static int hf_qsig_pumch_pumIdentity = -1; /* PumIdentity */
1199 static int hf_qsig_pumch_callingUserSub = -1; /* PartySubaddress */
1200 static int hf_qsig_pumch_callingUserName = -1; /* Name */
1201 static int hf_qsig_pumch_pumUserSub = -1; /* PartySubaddress */
1202 static int hf_qsig_pumch_currLocation = -1; /* CurrLocation */
1203 static int hf_qsig_pumch_cfuActivated = -1; /* CfuActivated */
1204 static int hf_qsig_pumch_divToAddress = -1; /* Address */
1205 static int hf_qsig_pumch_divOptions = -1; /* SubscriptionOption */
1206 static int hf_qsig_pumch_pumName = -1; /* Name */
1207 static int hf_qsig_pumch_null = -1; /* NULL */
1208 static int hf_qsig_pumch_extension = -1; /* Extension */
1209 static int hf_qsig_pumch_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1210 static int hf_qsig_pumch_sequOfExtn_item = -1; /* Extension */
1211 static int hf_qsig_pumch_alternativeId = -1; /* AlternativeId */
1212 static int hf_qsig_pumch_both = -1; /* T_both */
1213 static int hf_qsig_pumch_destinationNumber = -1; /* PartyNumber */
1214 static int hf_qsig_pumch_sendingComplete = -1; /* NULL */
1215 static int hf_qsig_pumch_pumoaextension = -1; /* T_pumoaextension */
1216 static int hf_qsig_pumch_single = -1; /* Extension */
1217 static int hf_qsig_pumch_multiple = -1; /* SEQUENCE_OF_Extension */
1218 static int hf_qsig_pumch_multiple_item = -1; /* Extension */
1220 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
1222 static int hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU = -1; /* SSCTInitiateArg */
1223 static int hf_qsig_ssct_qsig_ssct_DummyRes_PDU = -1; /* DummyRes */
1224 static int hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU = -1; /* SSCTSetupArg */
1225 static int hf_qsig_ssct_qsig_ssct_DummyArg_PDU = -1; /* DummyArg */
1226 static int hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU = -1; /* SSCTDigitInfoArg */
1227 static int hf_qsig_ssct_qsig_ssct_Extension_PDU = -1; /* Extension */
1228 static int hf_qsig_ssct_null = -1; /* NULL */
1229 static int hf_qsig_ssct_single = -1; /* Extension */
1230 static int hf_qsig_ssct_multiple = -1; /* SEQUENCE_OF_Extension */
1231 static int hf_qsig_ssct_multiple_item = -1; /* Extension */
1232 static int hf_qsig_ssct_rerouteingNumber = -1; /* PartyNumber */
1233 static int hf_qsig_ssct_transferredAddress = -1; /* PresentedAddressScreened */
1234 static int hf_qsig_ssct_awaitConnect = -1; /* AwaitConnect */
1235 static int hf_qsig_ssct_transferredName = -1; /* Name */
1236 static int hf_qsig_ssct_transferringAddress = -1; /* PresentedAddressScreened */
1237 static int hf_qsig_ssct_transferringName = -1; /* Name */
1238 static int hf_qsig_ssct_argumentExtensionSSCTI = -1; /* SSCTIargumentExtension */
1239 static int hf_qsig_ssct_argumentExtensionSSCTS = -1; /* SSCTSargumentExtension */
1240 static int hf_qsig_ssct_reroutingNumber = -1; /* PartyNumber */
1241 static int hf_qsig_ssct_sendingComplete = -1; /* NULL */
1242 static int hf_qsig_ssct_argumentExtensionSSCTD = -1; /* SSCTDargumentExtension */
1244 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
1246 static int hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU = -1; /* LocUpdArg */
1247 static int hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU = -1; /* DummyRes */
1248 static int hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU = -1; /* LocDelArg */
1249 static int hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU = -1; /* LocDeRegArg */
1250 static int hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU = -1; /* PisnEnqArg */
1251 static int hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU = -1; /* PisnEnqRes */
1252 static int hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU = -1; /* GetRRCInfArg */
1253 static int hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU = -1; /* GetRRCInfRes */
1254 static int hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU = -1; /* LocInfoCheckArg */
1255 static int hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU = -1; /* LocInfoCheckRes */
1256 static int hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU = -1; /* Extension */
1257 static int hf_qsig_wtmlr_wtmUserId = -1; /* WtmUserId */
1258 static int hf_qsig_wtmlr_basicService = -1; /* BasicService */
1259 static int hf_qsig_wtmlr_visitPINX = -1; /* PartyNumber */
1260 static int hf_qsig_wtmlr_argExtension = -1; /* LrExtension */
1261 static int hf_qsig_wtmlr_null = -1; /* NULL */
1262 static int hf_qsig_wtmlr_extension = -1; /* Extension */
1263 static int hf_qsig_wtmlr_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1264 static int hf_qsig_wtmlr_sequOfExtn_item = -1; /* Extension */
1265 static int hf_qsig_wtmlr_alternativeId = -1; /* AlternativeId */
1266 static int hf_qsig_wtmlr_resExtension = -1; /* LrExtension */
1267 static int hf_qsig_wtmlr_rrClass = -1; /* RRClass */
1268 static int hf_qsig_wtmlr_checkResult = -1; /* CheckResult */
1269 static int hf_qsig_wtmlr_pisnNumber = -1; /* PartyNumber */
1271 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
1273 static int hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU = -1; /* EnquiryArg */
1274 static int hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU = -1; /* EnquiryRes */
1275 static int hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU = -1; /* DivertArg */
1276 static int hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU = -1; /* DummyRes */
1277 static int hf_qsig_wtmch_qsig_wtmch_InformArg_PDU = -1; /* InformArg */
1278 static int hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU = -1; /* WtmoArg */
1279 static int hf_qsig_wtmch_qsig_wtmch_Extension_PDU = -1; /* Extension */
1280 static int hf_qsig_wtmch_pisnNumber = -1; /* PartyNumber */
1281 static int hf_qsig_wtmch_qSIGInfoElement = -1; /* PSS1InformationElement */
1282 static int hf_qsig_wtmch_argExtension = -1; /* WtmiExtension */
1283 static int hf_qsig_wtmch_visitPINX = -1; /* PartyNumber */
1284 static int hf_qsig_wtmch_callingNumber = -1; /* PresentedNumberScreened */
1285 static int hf_qsig_wtmch_wtmIdentity = -1; /* WtmIdentity */
1286 static int hf_qsig_wtmch_callingUserSub = -1; /* PartySubaddress */
1287 static int hf_qsig_wtmch_callingName = -1; /* Name */
1288 static int hf_qsig_wtmch_wtmUserSub = -1; /* PartySubaddress */
1289 static int hf_qsig_wtmch_currLocation = -1; /* CurrLocation */
1290 static int hf_qsig_wtmch_cfuActivated = -1; /* CfuActivated */
1291 static int hf_qsig_wtmch_divToAddress = -1; /* Address */
1292 static int hf_qsig_wtmch_divOptions = -1; /* SubscriptionOption */
1293 static int hf_qsig_wtmch_wtmName = -1; /* Name */
1294 static int hf_qsig_wtmch_null = -1; /* NULL */
1295 static int hf_qsig_wtmch_extension = -1; /* Extension */
1296 static int hf_qsig_wtmch_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1297 static int hf_qsig_wtmch_sequOfExtn_item = -1; /* Extension */
1298 static int hf_qsig_wtmch_alternativeId = -1; /* AlternativeId */
1299 static int hf_qsig_wtmch_both = -1; /* T_both */
1300 static int hf_qsig_wtmch_destinationNumber = -1; /* PartyNumber */
1301 static int hf_qsig_wtmch_sendingComplete = -1; /* NULL */
1302 static int hf_qsig_wtmch_wtmoaextension = -1; /* T_wtmoaextension */
1303 static int hf_qsig_wtmch_single = -1; /* Extension */
1304 static int hf_qsig_wtmch_multiple = -1; /* SEQUENCE_OF_Extension */
1305 static int hf_qsig_wtmch_multiple_item = -1; /* Extension */
1307 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
1309 static int hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU = -1; /* AuthWtmArg */
1310 static int hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU = -1; /* AuthWtmRes */
1311 static int hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU = -1; /* WtatParamArg */
1312 static int hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU = -1; /* WtatParamRes */
1313 static int hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU = -1; /* WtanParamArg */
1314 static int hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU = -1; /* WtanParamRes */
1315 static int hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU = -1; /* ARG_transferAuthParam */
1316 static int hf_qsig_wtmau_qsig_wtmau_Extension_PDU = -1; /* Extension */
1317 static int hf_qsig_wtmau_wtmUserId = -1; /* WtmUserId */
1318 static int hf_qsig_wtmau_calcWtatInfo = -1; /* CalcWtatInfo */
1319 static int hf_qsig_wtmau_dummyExtension = -1; /* DummyExtension */
1320 static int hf_qsig_wtmau_autWtmResValue = -1; /* T_autWtmResValue */
1321 static int hf_qsig_wtmau_canCompute = -1; /* CanCompute */
1322 static int hf_qsig_wtmau_authChallenge = -1; /* AuthChallenge */
1323 static int hf_qsig_wtmau_wtatParamInfo = -1; /* WtatParamInfo */
1324 static int hf_qsig_wtmau_authAlgorithm = -1; /* AuthAlgorithm */
1325 static int hf_qsig_wtmau_pisnNumber = -1; /* PartyNumber */
1326 static int hf_qsig_wtmau_alternativeId = -1; /* AlternativeId */
1327 static int hf_qsig_wtmau_wtanParamInfo = -1; /* WtanParamInfo */
1328 static int hf_qsig_wtmau_wtatParamInfoChoice = -1; /* T_wtatParamInfoChoice */
1329 static int hf_qsig_wtmau_authSessionKeyInfo = -1; /* AuthSessionKeyInfo */
1330 static int hf_qsig_wtmau_authKey = -1; /* AuthKey */
1331 static int hf_qsig_wtmau_challLen = -1; /* INTEGER_1_8 */
1332 static int hf_qsig_wtmau_calcWtanInfo = -1; /* CalcWtanInfo */
1333 static int hf_qsig_wtmau_authSessionKey = -1; /* AuthSessionKey */
1334 static int hf_qsig_wtmau_calculationParam = -1; /* CalculationParam */
1335 static int hf_qsig_wtmau_CalcWtatInfo_item = -1; /* CalcWtatInfoUnit */
1336 static int hf_qsig_wtmau_authResponse = -1; /* AuthResponse */
1337 static int hf_qsig_wtmau_derivedCipherKey = -1; /* DerivedCipherKey */
1338 static int hf_qsig_wtmau_extension = -1; /* Extension */
1339 static int hf_qsig_wtmau_sequOfExtn = -1; /* SEQUENCE_OF_Extension */
1340 static int hf_qsig_wtmau_sequOfExtn_item = -1; /* Extension */
1341 static int hf_qsig_wtmau_authAlg = -1; /* DefinedIDs */
1342 static int hf_qsig_wtmau_param = -1; /* T_param */
1344 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
1346 static int hf_qsig_sd_qsig_sd_DisplayArg_PDU = -1; /* DisplayArg */
1347 static int hf_qsig_sd_qsig_sd_KeypadArg_PDU = -1; /* KeypadArg */
1348 static int hf_qsig_sd_qsig_sd_Extension_PDU = -1; /* Extension */
1349 static int hf_qsig_sd_displayString = -1; /* DisplayString */
1350 static int hf_qsig_sd_sdextension = -1; /* SDExtension */
1351 static int hf_qsig_sd_displayStringNormal = -1; /* BMPStringNormal */
1352 static int hf_qsig_sd_displayStringExtended = -1; /* BMPStringExtended */
1353 static int hf_qsig_sd_keypadString = -1; /* BMPStringNormal */
1354 static int hf_qsig_sd_extension = -1; /* Extension */
1355 static int hf_qsig_sd_multipleExtension = -1; /* SEQUENCE_OF_Extension */
1356 static int hf_qsig_sd_multipleExtension_item = -1; /* Extension */
1358 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
1360 static int hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU = -1; /* CallIdentificationAssignArg */
1361 static int hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU = -1; /* CallIdentificationUpdateArg */
1362 static int hf_qsig_cidl_globalCallID = -1; /* CallIdentificationData */
1363 static int hf_qsig_cidl_threadID = -1; /* CallIdentificationData */
1364 static int hf_qsig_cidl_legID = -1; /* CallIdentificationData */
1365 static int hf_qsig_cidl_extensiont = -1; /* ExtensionType */
1366 static int hf_qsig_cidl_switchingSubDomainName = -1; /* SwitchingSubDomainName */
1367 static int hf_qsig_cidl_linkageID = -1; /* T_linkageID */
1368 static int hf_qsig_cidl_subDomainID = -1; /* SubDomainID */
1369 static int hf_qsig_cidl_globallyUniqueID = -1; /* GloballyUniqueID */
1370 static int hf_qsig_cidl_timeStamp = -1; /* TimeStamp */
1371 static int hf_qsig_cidl_extension = -1; /* Extension */
1372 static int hf_qsig_cidl_sequenceOfExt = -1; /* SEQUENCE_OF_Extension */
1373 static int hf_qsig_cidl_sequenceOfExt_item = -1; /* Extension */
1375 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
1377 static int hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU = -1; /* SmsSubmitArg */
1378 static int hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU = -1; /* SmsSubmitRes */
1379 static int hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU = -1; /* SmsDeliverArg */
1380 static int hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU = -1; /* SmsDeliverRes */
1381 static int hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU = -1; /* SmsStatusReportArg */
1382 static int hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU = -1; /* SmsStatusReportRes */
1383 static int hf_qsig_sms_qsig_sms_SmsCommandArg_PDU = -1; /* SmsCommandArg */
1384 static int hf_qsig_sms_qsig_sms_SmsCommandRes_PDU = -1; /* SmsCommandRes */
1385 static int hf_qsig_sms_qsig_sms_ScAlertArg_PDU = -1; /* ScAlertArg */
1386 static int hf_qsig_sms_qsig_sms_DummyRes_PDU = -1; /* DummyRes */
1387 static int hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU = -1; /* PAR_smsDeliverError */
1388 static int hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU = -1; /* PAR_smsSubmitError */
1389 static int hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU = -1; /* PAR_smsStatusReportError */
1390 static int hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU = -1; /* PAR_smsCommandError */
1391 static int hf_qsig_sms_qsig_sms_SmsExtension_PDU = -1; /* SmsExtension */
1392 static int hf_qsig_sms_destinationAddress = -1; /* PartyNumber */
1393 static int hf_qsig_sms_originatingAddress = -1; /* PartyNumber */
1394 static int hf_qsig_sms_messageReference = -1; /* MessageReference */
1395 static int hf_qsig_sms_smSubmitParameter = -1; /* SmSubmitParameter */
1396 static int hf_qsig_sms_userData = -1; /* UserData */
1397 static int hf_qsig_sms_smsExtension = -1; /* SmsExtension */
1398 static int hf_qsig_sms_serviceCentreTimeStamp = -1; /* ServiceCentreTimeStamp */
1399 static int hf_qsig_sms_protocolIdentifier = -1; /* ProtocolIdentifier */
1400 static int hf_qsig_sms_originatingName = -1; /* Name */
1401 static int hf_qsig_sms_smDeliverParameter = -1; /* SmDeliverParameter */
1402 static int hf_qsig_sms_smsDeliverResponseChoice = -1; /* SmsDeliverResChoice */
1403 static int hf_qsig_sms_dischargeTime = -1; /* DischargeTime */
1404 static int hf_qsig_sms_recipientAddress = -1; /* PartyNumber */
1405 static int hf_qsig_sms_recipientName = -1; /* Name */
1406 static int hf_qsig_sms_status = -1; /* Status */
1407 static int hf_qsig_sms_priority = -1; /* BOOLEAN */
1408 static int hf_qsig_sms_moreMessagesToSend = -1; /* BOOLEAN */
1409 static int hf_qsig_sms_statusReportQualifier = -1; /* BOOLEAN */
1410 static int hf_qsig_sms_smsStatusReportResponseChoice = -1; /* SmsStatusReportResponseChoice */
1411 static int hf_qsig_sms_messageNumber = -1; /* MessageReference */
1412 static int hf_qsig_sms_commandType = -1; /* CommandType */
1413 static int hf_qsig_sms_commandData = -1; /* CommandData */
1414 static int hf_qsig_sms_statusReportRequest = -1; /* BOOLEAN */
1415 static int hf_qsig_sms_null = -1; /* NULL */
1416 static int hf_qsig_sms_validityPeriod = -1; /* ValidityPeriod */
1417 static int hf_qsig_sms_replyPath = -1; /* BOOLEAN */
1418 static int hf_qsig_sms_rejectDuplicates = -1; /* BOOLEAN */
1419 static int hf_qsig_sms_statusReportIndication = -1; /* BOOLEAN */
1420 static int hf_qsig_sms_resChoiceSeq = -1; /* ResChoiceSeq */
1421 static int hf_qsig_sms_single = -1; /* Extension */
1422 static int hf_qsig_sms_multiple = -1; /* SEQUENCE_OF_Extension */
1423 static int hf_qsig_sms_multiple_item = -1; /* Extension */
1424 static int hf_qsig_sms_validityPeriodRel = -1; /* ValidityPeriodRel */
1425 static int hf_qsig_sms_validityPeriodAbs = -1; /* ValidityPeriodAbs */
1426 static int hf_qsig_sms_validityPeriodEnh = -1; /* ValidityPeriodEnh */
1427 static int hf_qsig_sms_singleShotSM = -1; /* BOOLEAN */
1428 static int hf_qsig_sms_enhancedVP = -1; /* EnhancedVP */
1429 static int hf_qsig_sms_validityPeriodSec = -1; /* INTEGER_0_255 */
1430 static int hf_qsig_sms_validityPeriodSemi = -1; /* ValidityPeriodSemi */
1431 static int hf_qsig_sms_userDataHeader = -1; /* UserDataHeader */
1432 static int hf_qsig_sms_class = -1; /* INTEGER_0_3 */
1433 static int hf_qsig_sms_compressed = -1; /* BOOLEAN */
1434 static int hf_qsig_sms_shortMessageText = -1; /* ShortMessageText */
1435 static int hf_qsig_sms_shortMessageTextType = -1; /* ShortMessageTextType */
1436 static int hf_qsig_sms_shortMessageTextData = -1; /* ShortMessageTextData */
1437 static int hf_qsig_sms_UserDataHeader_item = -1; /* UserDataHeaderChoice */
1438 static int hf_qsig_sms_smscControlParameterHeader = -1; /* SmscControlParameterHeader */
1439 static int hf_qsig_sms_concatenated8BitSMHeader = -1; /* Concatenated8BitSMHeader */
1440 static int hf_qsig_sms_concatenated16BitSMHeader = -1; /* Concatenated16BitSMHeader */
1441 static int hf_qsig_sms_applicationPort8BitHeader = -1; /* ApplicationPort8BitHeader */
1442 static int hf_qsig_sms_applicationPort16BitHeader = -1; /* ApplicationPort16BitHeader */
1443 static int hf_qsig_sms_dataHeaderSourceIndicator = -1; /* DataHeaderSourceIndicator */
1444 static int hf_qsig_sms_wirelessControlHeader = -1; /* WirelessControlHeader */
1445 static int hf_qsig_sms_genericUserValue = -1; /* GenericUserValue */
1446 static int hf_qsig_sms_concatenated8BitSMReferenceNumber = -1; /* INTEGER_0_255 */
1447 static int hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM = -1; /* INTEGER_0_255 */
1448 static int hf_qsig_sms_sequenceNumberOf8BitSM = -1; /* INTEGER_0_255 */
1449 static int hf_qsig_sms_concatenated16BitSMReferenceNumber = -1; /* INTEGER_0_65536 */
1450 static int hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM = -1; /* INTEGER_0_255 */
1451 static int hf_qsig_sms_sequenceNumberOf16BitSM = -1; /* INTEGER_0_255 */
1452 static int hf_qsig_sms_destination8BitPort = -1; /* INTEGER_0_255 */
1453 static int hf_qsig_sms_originator8BitPort = -1; /* INTEGER_0_255 */
1454 static int hf_qsig_sms_destination16BitPort = -1; /* INTEGER_0_65536 */
1455 static int hf_qsig_sms_originator16BitPort = -1; /* INTEGER_0_65536 */
1456 static int hf_qsig_sms_parameterValue = -1; /* INTEGER_0_255 */
1457 static int hf_qsig_sms_genericUserData = -1; /* OCTET_STRING */
1458 static int hf_qsig_sms_failureCause = -1; /* FailureCause */
1459 static int hf_qsig_sms_scAddressSaved = -1; /* BOOLEAN */
1460 /* named bits */
1461 static int hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted = -1;
1462 static int hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError = -1;
1463 static int hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying = -1;
1464 static int hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying = -1;
1465 static int hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM = -1;
1466 static int hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR = -1;
1468 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
1470 static int hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU = -1; /* MCRequestArg */
1471 static int hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU = -1; /* MCRequestResult */
1472 static int hf_qsig_mcr_qsig_mcr_MCInformArg_PDU = -1; /* MCInformArg */
1473 static int hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU = -1; /* MCAlertingArg */
1474 static int hf_qsig_mcr_qsig_mcr_Extension_PDU = -1; /* Extension */
1475 static int hf_qsig_mcr_callType = -1; /* CallType */
1476 static int hf_qsig_mcr_retainOrigCall = -1; /* BOOLEAN */
1477 static int hf_qsig_mcr_destinationAddress = -1; /* PresentedAddressUnscreened */
1478 static int hf_qsig_mcr_requestingAddress = -1; /* PresentedAddressUnscreened */
1479 static int hf_qsig_mcr_cooperatingAddress = -1; /* PresentedAddressUnscreened */
1480 static int hf_qsig_mcr_correlation = -1; /* Correlation */
1481 static int hf_qsig_mcr_extensions = -1; /* MCRExtensions */
1482 static int hf_qsig_mcr_basicService = -1; /* BasicService */
1483 static int hf_qsig_mcr_cisc = -1; /* NULL */
1484 static int hf_qsig_mcr_correlationData = -1; /* CallIdentity */
1485 static int hf_qsig_mcr_correlationReason = -1; /* CorrelationReason */
1486 static int hf_qsig_mcr_none = -1; /* NULL */
1487 static int hf_qsig_mcr_single = -1; /* Extension */
1488 static int hf_qsig_mcr_multiple = -1; /* SEQUENCE_OF_Extension */
1489 static int hf_qsig_mcr_multiple_item = -1; /* Extension */
1491 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
1493 static int hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU = -1; /* MCMNewMsgArg */
1494 static int hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU = -1; /* MCMDummyRes */
1495 static int hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU = -1; /* MCMNoNewMsgArg */
1496 static int hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU = -1; /* MCMUpdateArg */
1497 static int hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU = -1; /* MCMUpdateReqArg */
1498 static int hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU = -1; /* MCMUpdateReqRes */
1499 static int hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU = -1; /* MCMServiceArg */
1500 static int hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU = -1; /* MCMInterrogateArg */
1501 static int hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU = -1; /* MCMInterrogateRes */
1502 static int hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU = -1; /* MCMailboxFullArg */
1503 static int hf_qsig_mcm_qsig_mcm_Extension_PDU = -1; /* Extension */
1504 static int hf_qsig_mcm_partyInfo = -1; /* PartyInfo */
1505 static int hf_qsig_mcm_mailboxFullFor = -1; /* MailboxFullFor */
1506 static int hf_qsig_mcm_extensions = -1; /* MCMExtensions */
1507 static int hf_qsig_mcm_MailboxFullFor_item = -1; /* MailboxFullPar */
1508 static int hf_qsig_mcm_messageType = -1; /* MessageType */
1509 static int hf_qsig_mcm_capacityReached = -1; /* INTEGER_0_100 */
1510 static int hf_qsig_mcm_mCMChange = -1; /* MCMChange */
1511 static int hf_qsig_mcm_activateMCM = -1; /* SEQUENCE_OF_MCMServiceInfo */
1512 static int hf_qsig_mcm_activateMCM_item = -1; /* MCMServiceInfo */
1513 static int hf_qsig_mcm_deactivateMCM = -1; /* SEQUENCE_OF_MessageType */
1514 static int hf_qsig_mcm_deactivateMCM_item = -1; /* MessageType */
1515 static int hf_qsig_mcm_setToDefaultValues = -1; /* NULL */
1516 static int hf_qsig_mcm_mCMModeNew = -1; /* MCMMode */
1517 static int hf_qsig_mcm_mCMModeRetrieved = -1; /* MCMMode */
1518 static int hf_qsig_mcm_interrogateInfo = -1; /* SEQUENCE_OF_MessageType */
1519 static int hf_qsig_mcm_interrogateInfo_item = -1; /* MessageType */
1520 static int hf_qsig_mcm_interrogateResult = -1; /* SEQUENCE_OF_MCMServiceInfo */
1521 static int hf_qsig_mcm_interrogateResult_item = -1; /* MCMServiceInfo */
1522 static int hf_qsig_mcm_servedUserNr = -1; /* PartyNumber */
1523 static int hf_qsig_mcm_specificMessageType = -1; /* MessageType */
1524 static int hf_qsig_mcm_msgCentreId = -1; /* MsgCentreId */
1525 static int hf_qsig_mcm_nrOfMessages = -1; /* NrOfMessages */
1526 static int hf_qsig_mcm_originatingNr = -1; /* PartyNumber */
1527 static int hf_qsig_mcm_timestamp = -1; /* TimeStamp */
1528 static int hf_qsig_mcm_priority = -1; /* INTEGER_0_9 */
1529 static int hf_qsig_mcm_argumentExtMCMNew = -1; /* MCMNewArgumentExt */
1530 static int hf_qsig_mcm_extension = -1; /* Extension */
1531 static int hf_qsig_mcm_multipleExtension = -1; /* SEQUENCE_OF_Extension */
1532 static int hf_qsig_mcm_multipleExtension_item = -1; /* Extension */
1533 static int hf_qsig_mcm_argumentExtMCMNoNew = -1; /* MCMNoNewArgumentExt */
1534 static int hf_qsig_mcm_updateInfo = -1; /* UpdateInfo */
1535 static int hf_qsig_mcm_moreInfoFollows = -1; /* BOOLEAN */
1536 static int hf_qsig_mcm_argumentExtMCMUpdArg = -1; /* MCMUpdArgArgumentExt */
1537 static int hf_qsig_mcm_MCMUpdateReqRes_item = -1; /* MCMUpdateReqResElt */
1538 static int hf_qsig_mcm_argumentExtMCMUpdRes = -1; /* MCMUpdResArgumentExt */
1539 static int hf_qsig_mcm_messageCentreID = -1; /* MsgCentreId */
1540 static int hf_qsig_mcm_newMsgInfoOnly = -1; /* MessageInfo */
1541 static int hf_qsig_mcm_retrievedMsgInfoOnly = -1; /* MessageInfo */
1542 static int hf_qsig_mcm_allMsgInfo = -1; /* AllMsgInfo */
1543 static int hf_qsig_mcm_newMsgInfo = -1; /* MessageInfo */
1544 static int hf_qsig_mcm_retrievedMsgInfo = -1; /* MessageInfo */
1545 static int hf_qsig_mcm_completeInfo = -1; /* CompleteInfo */
1546 static int hf_qsig_mcm_compressedInfo = -1; /* CompressedInfo */
1547 static int hf_qsig_mcm_noMsgsOfMsgType = -1; /* NULL */
1548 static int hf_qsig_mcm_CompleteInfo_item = -1; /* AddressHeader */
1549 static int hf_qsig_mcm_originatorNr = -1; /* PartyNumber */
1550 static int hf_qsig_mcm_timeStamp = -1; /* TimeStamp */
1551 static int hf_qsig_mcm_ahpriority = -1; /* Priority */
1552 static int hf_qsig_mcm_lastTimeStamp = -1; /* TimeStamp */
1553 static int hf_qsig_mcm_highestPriority = -1; /* Priority */
1554 static int hf_qsig_mcm_integer = -1; /* INTEGER_0_65535 */
1555 static int hf_qsig_mcm_partyNumber = -1; /* PartyNumber */
1556 static int hf_qsig_mcm_numericString = -1; /* NumericString_SIZE_1_10 */
1557 static int hf_qsig_mcm_none = -1; /* NULL */
1559 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
1561 static int hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU = -1; /* MIDMailboxAuthArg */
1562 static int hf_qsig_mid_qsig_mid_MIDDummyRes_PDU = -1; /* MIDDummyRes */
1563 static int hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU = -1; /* MIDMailboxIDArg */
1564 static int hf_qsig_mid_qsig_mid_Extension_PDU = -1; /* Extension */
1565 static int hf_qsig_mid_partyInfo = -1; /* PartyInfo */
1566 static int hf_qsig_mid_servedUserName = -1; /* Name */
1567 static int hf_qsig_mid_mailBox = -1; /* String */
1568 static int hf_qsig_mid_password = -1; /* String */
1569 static int hf_qsig_mid_extensions = -1; /* MIDExtensions */
1570 static int hf_qsig_mid_servedUserNr = -1; /* PresentedAddressUnscreened */
1571 static int hf_qsig_mid_messageType = -1; /* MessageType */
1572 static int hf_qsig_mid_messageCentreID = -1; /* MsgCentreId */
1573 static int hf_qsig_mid_stringBmp = -1; /* BMPString */
1574 static int hf_qsig_mid_stringUtf8 = -1; /* UTF8String */
1575 static int hf_qsig_mid_none = -1; /* NULL */
1576 static int hf_qsig_mid_extension = -1; /* Extension */
1577 static int hf_qsig_mid_multipleExtension = -1; /* SEQUENCE_OF_Extension */
1578 static int hf_qsig_mid_multipleExtension_item = -1; /* Extension */
1580 /*--- End of included file: packet-qsig-hf.c ---*/
1581 #line 294 "../../asn1/qsig/packet-qsig-template.c"
1583 static int *hf_qsig_ie_type_arr[] = {
1584 NULL,
1585 NULL,
1586 NULL,
1587 NULL,
1588 &hf_qsig_ie_type_cs4,
1589 &hf_qsig_ie_type_cs5,
1590 NULL,
1591 NULL,
1594 /* Initialize the subtree pointers */
1595 static gint ett_qsig = -1;
1596 static gint ett_qsig_ie = -1;
1597 static gint ett_qsig_unknown_extension = -1;
1599 /*--- Included file: packet-qsig-ett.c ---*/
1600 #line 1 "../../asn1/qsig/packet-qsig-ett.c"
1602 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
1604 static gint ett_qsig_Extension = -1;
1605 static gint ett_qsig_PresentedAddressScreened = -1;
1606 static gint ett_qsig_PresentedAddressUnscreened = -1;
1607 static gint ett_qsig_PresentedNumberScreened = -1;
1608 static gint ett_qsig_PresentedNumberUnscreened = -1;
1609 static gint ett_qsig_AddressScreened = -1;
1610 static gint ett_qsig_NumberScreened = -1;
1611 static gint ett_qsig_Address = -1;
1612 static gint ett_qsig_PartyNumber = -1;
1613 static gint ett_qsig_PublicPartyNumber = -1;
1614 static gint ett_qsig_PrivatePartyNumber = -1;
1615 static gint ett_qsig_PartySubaddress = -1;
1616 static gint ett_qsig_UserSpecifiedSubaddress = -1;
1618 /* --- Module Name-Operations-asn1-97 --- --- --- */
1620 static gint ett_qsig_na_NameArg = -1;
1621 static gint ett_qsig_na_T_nameSequence = -1;
1622 static gint ett_qsig_na_NameExtension = -1;
1623 static gint ett_qsig_na_SEQUENCE_OF_Extension = -1;
1624 static gint ett_qsig_na_Name = -1;
1625 static gint ett_qsig_na_NamePresentationAllowed = -1;
1626 static gint ett_qsig_na_NamePresentationRestricted = -1;
1627 static gint ett_qsig_na_NameSet = -1;
1629 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
1631 static gint ett_qsig_cf_ARG_activateDiversionQ = -1;
1632 static gint ett_qsig_cf_ADExtension = -1;
1633 static gint ett_qsig_cf_SEQUENCE_OF_Extension = -1;
1634 static gint ett_qsig_cf_RES_activateDiversionQ = -1;
1635 static gint ett_qsig_cf_ARG_deactivateDiversionQ = -1;
1636 static gint ett_qsig_cf_DDExtension = -1;
1637 static gint ett_qsig_cf_RES_deactivateDiversionQ = -1;
1638 static gint ett_qsig_cf_ARG_interrogateDiversionQ = -1;
1639 static gint ett_qsig_cf_IDExtension = -1;
1640 static gint ett_qsig_cf_ARG_checkRestriction = -1;
1641 static gint ett_qsig_cf_CHRExtension = -1;
1642 static gint ett_qsig_cf_RES_checkRestriction = -1;
1643 static gint ett_qsig_cf_ARG_callRerouteing = -1;
1644 static gint ett_qsig_cf_CRRExtension = -1;
1645 static gint ett_qsig_cf_RES_callRerouteing = -1;
1646 static gint ett_qsig_cf_ARG_divertingLegInformation1 = -1;
1647 static gint ett_qsig_cf_DLI1Extension = -1;
1648 static gint ett_qsig_cf_ARG_divertingLegInformation2 = -1;
1649 static gint ett_qsig_cf_DLI2Extension = -1;
1650 static gint ett_qsig_cf_ARG_divertingLegInformation3 = -1;
1651 static gint ett_qsig_cf_DLI3Extension = -1;
1652 static gint ett_qsig_cf_ARG_cfnrDivertedLegFailed = -1;
1653 static gint ett_qsig_cf_IntResultList = -1;
1654 static gint ett_qsig_cf_IntResult = -1;
1655 static gint ett_qsig_cf_IRExtension = -1;
1657 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
1659 static gint ett_qsig_pr_PRProposeArg = -1;
1660 static gint ett_qsig_pr_PRPExtension = -1;
1661 static gint ett_qsig_pr_SEQUENCE_OF_Extension = -1;
1662 static gint ett_qsig_pr_PRSetupArg = -1;
1663 static gint ett_qsig_pr_PRSExtension = -1;
1664 static gint ett_qsig_pr_PRRetainArg = -1;
1665 static gint ett_qsig_pr_PRRExtension = -1;
1666 static gint ett_qsig_pr_DummyResult = -1;
1667 static gint ett_qsig_pr_DummyArg = -1;
1669 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
1671 static gint ett_qsig_ct_DummyArg = -1;
1672 static gint ett_qsig_ct_SEQUENCE_OF_Extension = -1;
1673 static gint ett_qsig_ct_DummyRes = -1;
1674 static gint ett_qsig_ct_CTIdentifyRes = -1;
1675 static gint ett_qsig_ct_T_resultExtension = -1;
1676 static gint ett_qsig_ct_CTInitiateArg = -1;
1677 static gint ett_qsig_ct_CTIargumentExtension = -1;
1678 static gint ett_qsig_ct_CTSetupArg = -1;
1679 static gint ett_qsig_ct_CTSargumentExtension = -1;
1680 static gint ett_qsig_ct_CTActiveArg = -1;
1681 static gint ett_qsig_ct_CTAargumentExtension = -1;
1682 static gint ett_qsig_ct_CTCompleteArg = -1;
1683 static gint ett_qsig_ct_CTCargumentExtension = -1;
1684 static gint ett_qsig_ct_CTUpdateArg = -1;
1685 static gint ett_qsig_ct_CTUargumentExtension = -1;
1686 static gint ett_qsig_ct_SubaddressTransferArg = -1;
1687 static gint ett_qsig_ct_STargumentExtension = -1;
1689 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
1691 static gint ett_qsig_cc_CcRequestArg = -1;
1692 static gint ett_qsig_cc_CcRequestRes = -1;
1693 static gint ett_qsig_cc_CcOptionalArg = -1;
1694 static gint ett_qsig_cc_T_fullArg = -1;
1695 static gint ett_qsig_cc_CcExtension = -1;
1696 static gint ett_qsig_cc_SEQUENCE_OF_Extension = -1;
1698 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
1700 static gint ett_qsig_co_PathRetainArg = -1;
1701 static gint ett_qsig_co_T_extendedServiceList = -1;
1702 static gint ett_qsig_co_ServiceAvailableArg = -1;
1703 static gint ett_qsig_co_T_extendedServiceList_01 = -1;
1704 static gint ett_qsig_co_ServiceList = -1;
1705 static gint ett_qsig_co_DummyArg = -1;
1706 static gint ett_qsig_co_SEQUENCE_OF_Extension = -1;
1707 static gint ett_qsig_co_DummyRes = -1;
1709 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
1711 static gint ett_qsig_dnd_DummyArg = -1;
1712 static gint ett_qsig_dnd_SEQUENCE_OF_Extension = -1;
1713 static gint ett_qsig_dnd_DummyRes = -1;
1714 static gint ett_qsig_dnd_DNDActivateArg = -1;
1715 static gint ett_qsig_dnd_DNDAargumentExtension = -1;
1716 static gint ett_qsig_dnd_DNDActivateRes = -1;
1717 static gint ett_qsig_dnd_T_status = -1;
1718 static gint ett_qsig_dnd_T_status_item = -1;
1719 static gint ett_qsig_dnd_T_resultExtension = -1;
1720 static gint ett_qsig_dnd_DNDDeactivateArg = -1;
1721 static gint ett_qsig_dnd_DNDDargumentExtension = -1;
1722 static gint ett_qsig_dnd_DNDInterrogateArg = -1;
1723 static gint ett_qsig_dnd_DNDIargumentExtension = -1;
1724 static gint ett_qsig_dnd_DNDInterrogateRes = -1;
1725 static gint ett_qsig_dnd_T_status_01 = -1;
1726 static gint ett_qsig_dnd_T_status_item_01 = -1;
1727 static gint ett_qsig_dnd_T_resultExtension_01 = -1;
1728 static gint ett_qsig_dnd_DNDOverrideArg = -1;
1729 static gint ett_qsig_dnd_DNDOargumentExtension = -1;
1730 static gint ett_qsig_dnd_PathRetainArg = -1;
1731 static gint ett_qsig_dnd_T_extendedServiceList = -1;
1732 static gint ett_qsig_dnd_ServiceAvailableArg = -1;
1733 static gint ett_qsig_dnd_T_extendedServiceList_01 = -1;
1734 static gint ett_qsig_dnd_ServiceList = -1;
1736 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
1738 static gint ett_qsig_ci_PathRetainArg = -1;
1739 static gint ett_qsig_ci_T_extendedServiceList = -1;
1740 static gint ett_qsig_ci_ServiceAvailableArg = -1;
1741 static gint ett_qsig_ci_T_extendedServiceList_01 = -1;
1742 static gint ett_qsig_ci_ServiceList = -1;
1743 static gint ett_qsig_ci_DummyArg = -1;
1744 static gint ett_qsig_ci_SEQUENCE_OF_Extension = -1;
1745 static gint ett_qsig_ci_DummyRes = -1;
1746 static gint ett_qsig_ci_CIRequestArg = -1;
1747 static gint ett_qsig_ci_T_argumentExtension = -1;
1748 static gint ett_qsig_ci_CIRequestRes = -1;
1749 static gint ett_qsig_ci_T_resultExtension = -1;
1750 static gint ett_qsig_ci_CIGetCIPLRes = -1;
1751 static gint ett_qsig_ci_T_resultExtension_01 = -1;
1753 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
1755 static gint ett_qsig_aoc_AocRateArg = -1;
1756 static gint ett_qsig_aoc_T_aocRate = -1;
1757 static gint ett_qsig_aoc_T_rateArgExtension = -1;
1758 static gint ett_qsig_aoc_SEQUENCE_OF_Extension = -1;
1759 static gint ett_qsig_aoc_AocInterimArg = -1;
1760 static gint ett_qsig_aoc_T_interimCharge = -1;
1761 static gint ett_qsig_aoc_T_specificCurrency = -1;
1762 static gint ett_qsig_aoc_T_interimArgExtension = -1;
1763 static gint ett_qsig_aoc_AocFinalArg = -1;
1764 static gint ett_qsig_aoc_T_finalCharge = -1;
1765 static gint ett_qsig_aoc_T_specificCurrency_01 = -1;
1766 static gint ett_qsig_aoc_T_finalArgExtension = -1;
1767 static gint ett_qsig_aoc_AOCSCurrencyInfoList = -1;
1768 static gint ett_qsig_aoc_AOCSCurrencyInfo = -1;
1769 static gint ett_qsig_aoc_T_rateType = -1;
1770 static gint ett_qsig_aoc_DurationCurrency = -1;
1771 static gint ett_qsig_aoc_FlatRateCurrency = -1;
1772 static gint ett_qsig_aoc_VolumeRateCurrency = -1;
1773 static gint ett_qsig_aoc_RecordedCurrency = -1;
1774 static gint ett_qsig_aoc_Amount = -1;
1775 static gint ett_qsig_aoc_Time = -1;
1776 static gint ett_qsig_aoc_ChargingAssociation = -1;
1777 static gint ett_qsig_aoc_ChargeRequestArg = -1;
1778 static gint ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination = -1;
1779 static gint ett_qsig_aoc_T_chargeReqArgExtension = -1;
1780 static gint ett_qsig_aoc_ChargeRequestRes = -1;
1781 static gint ett_qsig_aoc_T_chargeReqResExtension = -1;
1782 static gint ett_qsig_aoc_DummyArg = -1;
1783 static gint ett_qsig_aoc_AocCompleteArg = -1;
1784 static gint ett_qsig_aoc_T_completeArgExtension = -1;
1785 static gint ett_qsig_aoc_AocCompleteRes = -1;
1786 static gint ett_qsig_aoc_T_completeResExtension = -1;
1787 static gint ett_qsig_aoc_AocDivChargeReqArg = -1;
1788 static gint ett_qsig_aoc_T_aocDivChargeReqArgExt = -1;
1790 /* --- Module Recall-Operations-asn1-97 --- --- --- */
1792 static gint ett_qsig_re_ReAlertingArg = -1;
1793 static gint ett_qsig_re_T_argumentExtension = -1;
1794 static gint ett_qsig_re_SEQUENCE_OF_Extension = -1;
1795 static gint ett_qsig_re_ReAnswerArg = -1;
1796 static gint ett_qsig_re_T_argumentExtension_01 = -1;
1798 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
1800 static gint ett_qsig_sync_SynchronizationReqArg = -1;
1801 static gint ett_qsig_sync_SynchronizationReqRes = -1;
1802 static gint ett_qsig_sync_SynchronizationInfoArg = -1;
1803 static gint ett_qsig_sync_ArgExtension = -1;
1804 static gint ett_qsig_sync_SEQUENCE_OF_Extension = -1;
1806 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
1808 static gint ett_qsig_cint_CintInformation1Arg = -1;
1809 static gint ett_qsig_cint_CintInformation2Arg = -1;
1810 static gint ett_qsig_cint_CintCondArg = -1;
1811 static gint ett_qsig_cint_CintExtension = -1;
1812 static gint ett_qsig_cint_SEQUENCE_OF_Extension = -1;
1814 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
1816 static gint ett_qsig_cmn_CmnArg = -1;
1817 static gint ett_qsig_cmn_T_extension = -1;
1818 static gint ett_qsig_cmn_SEQUENCE_OF_Extension = -1;
1819 static gint ett_qsig_cmn_DummyArg = -1;
1820 static gint ett_qsig_cmn_FeatureIdList = -1;
1821 static gint ett_qsig_cmn_EquipmentId = -1;
1823 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
1825 static gint ett_qsig_cpi_CPIRequestArg = -1;
1826 static gint ett_qsig_cpi_T_argumentExtension = -1;
1827 static gint ett_qsig_cpi_SEQUENCE_OF_Extension = -1;
1828 static gint ett_qsig_cpi_CPIPRequestArg = -1;
1829 static gint ett_qsig_cpi_T_argumentExtension_01 = -1;
1831 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
1833 static gint ett_qsig_pumr_PumRegistrArg = -1;
1834 static gint ett_qsig_pumr_RpumUserId = -1;
1835 static gint ett_qsig_pumr_T_userPin = -1;
1836 static gint ett_qsig_pumr_PumRegistrRes = -1;
1837 static gint ett_qsig_pumr_DummyRes = -1;
1838 static gint ett_qsig_pumr_SEQUENCE_OF_Extension = -1;
1839 static gint ett_qsig_pumr_PumDelRegArg = -1;
1840 static gint ett_qsig_pumr_XpumUserId = -1;
1841 static gint ett_qsig_pumr_PumDe_regArg = -1;
1842 static gint ett_qsig_pumr_DpumUserId = -1;
1843 static gint ett_qsig_pumr_T_userPin_01 = -1;
1844 static gint ett_qsig_pumr_PumInterrogArg = -1;
1845 static gint ett_qsig_pumr_IpumUserId = -1;
1846 static gint ett_qsig_pumr_T_userPin_02 = -1;
1847 static gint ett_qsig_pumr_PumInterrogRes = -1;
1848 static gint ett_qsig_pumr_PumInterrogRes_item = -1;
1849 static gint ett_qsig_pumr_SessionParams = -1;
1850 static gint ett_qsig_pumr_PumrExtension = -1;
1852 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
1854 static gint ett_qsig_pumch_EnquiryArg = -1;
1855 static gint ett_qsig_pumch_DivertArg = -1;
1856 static gint ett_qsig_pumch_InformArg = -1;
1857 static gint ett_qsig_pumch_EnquiryRes = -1;
1858 static gint ett_qsig_pumch_CurrLocation = -1;
1859 static gint ett_qsig_pumch_CfuActivated = -1;
1860 static gint ett_qsig_pumch_DummyRes = -1;
1861 static gint ett_qsig_pumch_SEQUENCE_OF_Extension = -1;
1862 static gint ett_qsig_pumch_PumiExtension = -1;
1863 static gint ett_qsig_pumch_PumIdentity = -1;
1864 static gint ett_qsig_pumch_T_both = -1;
1865 static gint ett_qsig_pumch_PumoArg = -1;
1866 static gint ett_qsig_pumch_T_pumoaextension = -1;
1868 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
1870 static gint ett_qsig_ssct_DummyArg = -1;
1871 static gint ett_qsig_ssct_SEQUENCE_OF_Extension = -1;
1872 static gint ett_qsig_ssct_DummyRes = -1;
1873 static gint ett_qsig_ssct_SSCTInitiateArg = -1;
1874 static gint ett_qsig_ssct_SSCTIargumentExtension = -1;
1875 static gint ett_qsig_ssct_SSCTSetupArg = -1;
1876 static gint ett_qsig_ssct_SSCTSargumentExtension = -1;
1877 static gint ett_qsig_ssct_SSCTDigitInfoArg = -1;
1878 static gint ett_qsig_ssct_SSCTDargumentExtension = -1;
1880 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
1882 static gint ett_qsig_wtmlr_LocUpdArg = -1;
1883 static gint ett_qsig_wtmlr_DummyRes = -1;
1884 static gint ett_qsig_wtmlr_SEQUENCE_OF_Extension = -1;
1885 static gint ett_qsig_wtmlr_LocDelArg = -1;
1886 static gint ett_qsig_wtmlr_LocDeRegArg = -1;
1887 static gint ett_qsig_wtmlr_PisnEnqArg = -1;
1888 static gint ett_qsig_wtmlr_PisnEnqRes = -1;
1889 static gint ett_qsig_wtmlr_GetRRCInfArg = -1;
1890 static gint ett_qsig_wtmlr_GetRRCInfRes = -1;
1891 static gint ett_qsig_wtmlr_LocInfoCheckArg = -1;
1892 static gint ett_qsig_wtmlr_LocInfoCheckRes = -1;
1893 static gint ett_qsig_wtmlr_WtmUserId = -1;
1894 static gint ett_qsig_wtmlr_LrExtension = -1;
1896 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
1898 static gint ett_qsig_wtmch_EnquiryArg = -1;
1899 static gint ett_qsig_wtmch_DivertArg = -1;
1900 static gint ett_qsig_wtmch_InformArg = -1;
1901 static gint ett_qsig_wtmch_EnquiryRes = -1;
1902 static gint ett_qsig_wtmch_CurrLocation = -1;
1903 static gint ett_qsig_wtmch_CfuActivated = -1;
1904 static gint ett_qsig_wtmch_DummyRes = -1;
1905 static gint ett_qsig_wtmch_SEQUENCE_OF_Extension = -1;
1906 static gint ett_qsig_wtmch_WtmiExtension = -1;
1907 static gint ett_qsig_wtmch_WtmIdentity = -1;
1908 static gint ett_qsig_wtmch_T_both = -1;
1909 static gint ett_qsig_wtmch_WtmoArg = -1;
1910 static gint ett_qsig_wtmch_T_wtmoaextension = -1;
1912 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
1914 static gint ett_qsig_wtmau_AuthWtmArg = -1;
1915 static gint ett_qsig_wtmau_AuthWtmRes = -1;
1916 static gint ett_qsig_wtmau_WtatParamArg = -1;
1917 static gint ett_qsig_wtmau_WtatParamRes = -1;
1918 static gint ett_qsig_wtmau_WtanParamArg = -1;
1919 static gint ett_qsig_wtmau_WtmUserId = -1;
1920 static gint ett_qsig_wtmau_WtanParamRes = -1;
1921 static gint ett_qsig_wtmau_ARG_transferAuthParam = -1;
1922 static gint ett_qsig_wtmau_WtatParamInfo = -1;
1923 static gint ett_qsig_wtmau_T_wtatParamInfoChoice = -1;
1924 static gint ett_qsig_wtmau_WtanParamInfo = -1;
1925 static gint ett_qsig_wtmau_AuthSessionKeyInfo = -1;
1926 static gint ett_qsig_wtmau_CalcWtatInfo = -1;
1927 static gint ett_qsig_wtmau_CalcWtatInfoUnit = -1;
1928 static gint ett_qsig_wtmau_CalcWtanInfo = -1;
1929 static gint ett_qsig_wtmau_DummyExtension = -1;
1930 static gint ett_qsig_wtmau_SEQUENCE_OF_Extension = -1;
1931 static gint ett_qsig_wtmau_AuthAlgorithm = -1;
1933 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
1935 static gint ett_qsig_sd_DisplayArg = -1;
1936 static gint ett_qsig_sd_DisplayString = -1;
1937 static gint ett_qsig_sd_KeypadArg = -1;
1938 static gint ett_qsig_sd_SDExtension = -1;
1939 static gint ett_qsig_sd_SEQUENCE_OF_Extension = -1;
1941 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
1943 static gint ett_qsig_cidl_CallIdentificationAssignArg = -1;
1944 static gint ett_qsig_cidl_CallIdentificationUpdateArg = -1;
1945 static gint ett_qsig_cidl_CallIdentificationData = -1;
1946 static gint ett_qsig_cidl_T_linkageID = -1;
1947 static gint ett_qsig_cidl_ExtensionType = -1;
1948 static gint ett_qsig_cidl_SEQUENCE_OF_Extension = -1;
1950 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
1952 static gint ett_qsig_sms_SmsSubmitArg = -1;
1953 static gint ett_qsig_sms_SmsSubmitRes = -1;
1954 static gint ett_qsig_sms_SmsDeliverArg = -1;
1955 static gint ett_qsig_sms_SmsDeliverRes = -1;
1956 static gint ett_qsig_sms_SmsStatusReportArg = -1;
1957 static gint ett_qsig_sms_SmsStatusReportRes = -1;
1958 static gint ett_qsig_sms_SmsCommandArg = -1;
1959 static gint ett_qsig_sms_SmsCommandRes = -1;
1960 static gint ett_qsig_sms_ScAlertArg = -1;
1961 static gint ett_qsig_sms_DummyRes = -1;
1962 static gint ett_qsig_sms_SmSubmitParameter = -1;
1963 static gint ett_qsig_sms_SmDeliverParameter = -1;
1964 static gint ett_qsig_sms_SmsDeliverResChoice = -1;
1965 static gint ett_qsig_sms_ResChoiceSeq = -1;
1966 static gint ett_qsig_sms_SmsStatusReportResponseChoice = -1;
1967 static gint ett_qsig_sms_SmsExtension = -1;
1968 static gint ett_qsig_sms_SEQUENCE_OF_Extension = -1;
1969 static gint ett_qsig_sms_ValidityPeriod = -1;
1970 static gint ett_qsig_sms_ValidityPeriodEnh = -1;
1971 static gint ett_qsig_sms_EnhancedVP = -1;
1972 static gint ett_qsig_sms_UserData = -1;
1973 static gint ett_qsig_sms_ShortMessageText = -1;
1974 static gint ett_qsig_sms_UserDataHeader = -1;
1975 static gint ett_qsig_sms_UserDataHeaderChoice = -1;
1976 static gint ett_qsig_sms_SmscControlParameterHeader = -1;
1977 static gint ett_qsig_sms_Concatenated8BitSMHeader = -1;
1978 static gint ett_qsig_sms_Concatenated16BitSMHeader = -1;
1979 static gint ett_qsig_sms_ApplicationPort8BitHeader = -1;
1980 static gint ett_qsig_sms_ApplicationPort16BitHeader = -1;
1981 static gint ett_qsig_sms_GenericUserValue = -1;
1982 static gint ett_qsig_sms_PAR_smsDeliverError = -1;
1983 static gint ett_qsig_sms_PAR_smsSubmitError = -1;
1984 static gint ett_qsig_sms_PAR_smsStatusReportError = -1;
1985 static gint ett_qsig_sms_PAR_smsCommandError = -1;
1987 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
1989 static gint ett_qsig_mcr_MCRequestArg = -1;
1990 static gint ett_qsig_mcr_MCRequestResult = -1;
1991 static gint ett_qsig_mcr_MCInformArg = -1;
1992 static gint ett_qsig_mcr_MCAlertingArg = -1;
1993 static gint ett_qsig_mcr_CallType = -1;
1994 static gint ett_qsig_mcr_Correlation = -1;
1995 static gint ett_qsig_mcr_MCRExtensions = -1;
1996 static gint ett_qsig_mcr_SEQUENCE_OF_Extension = -1;
1998 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
2000 static gint ett_qsig_mcm_MCMailboxFullArg = -1;
2001 static gint ett_qsig_mcm_MailboxFullFor = -1;
2002 static gint ett_qsig_mcm_MailboxFullPar = -1;
2003 static gint ett_qsig_mcm_MCMServiceArg = -1;
2004 static gint ett_qsig_mcm_MCMChange = -1;
2005 static gint ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo = -1;
2006 static gint ett_qsig_mcm_SEQUENCE_OF_MessageType = -1;
2007 static gint ett_qsig_mcm_MCMServiceInfo = -1;
2008 static gint ett_qsig_mcm_MCMInterrogateArg = -1;
2009 static gint ett_qsig_mcm_MCMInterrogateRes = -1;
2010 static gint ett_qsig_mcm_MCMNewMsgArg = -1;
2011 static gint ett_qsig_mcm_MCMNewArgumentExt = -1;
2012 static gint ett_qsig_mcm_SEQUENCE_OF_Extension = -1;
2013 static gint ett_qsig_mcm_MCMNoNewMsgArg = -1;
2014 static gint ett_qsig_mcm_MCMNoNewArgumentExt = -1;
2015 static gint ett_qsig_mcm_MCMUpdateArg = -1;
2016 static gint ett_qsig_mcm_MCMUpdateReqArg = -1;
2017 static gint ett_qsig_mcm_MCMUpdArgArgumentExt = -1;
2018 static gint ett_qsig_mcm_MCMUpdateReqRes = -1;
2019 static gint ett_qsig_mcm_MCMUpdateReqResElt = -1;
2020 static gint ett_qsig_mcm_MCMUpdResArgumentExt = -1;
2021 static gint ett_qsig_mcm_PartyInfo = -1;
2022 static gint ett_qsig_mcm_UpdateInfo = -1;
2023 static gint ett_qsig_mcm_AllMsgInfo = -1;
2024 static gint ett_qsig_mcm_MessageInfo = -1;
2025 static gint ett_qsig_mcm_CompleteInfo = -1;
2026 static gint ett_qsig_mcm_AddressHeader = -1;
2027 static gint ett_qsig_mcm_CompressedInfo = -1;
2028 static gint ett_qsig_mcm_MsgCentreId = -1;
2029 static gint ett_qsig_mcm_MCMExtensions = -1;
2031 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
2033 static gint ett_qsig_mid_MIDMailboxAuthArg = -1;
2034 static gint ett_qsig_mid_MIDMailboxIDArg = -1;
2035 static gint ett_qsig_mid_PartyInfo = -1;
2036 static gint ett_qsig_mid_String = -1;
2037 static gint ett_qsig_mid_MIDExtensions = -1;
2038 static gint ett_qsig_mid_SEQUENCE_OF_Extension = -1;
2040 /*--- End of included file: packet-qsig-ett.c ---*/
2041 #line 311 "../../asn1/qsig/packet-qsig-template.c"
2042 static gint ett_cnq_PSS1InformationElement = -1;
2044 /* Preferences */
2046 /* Subdissectors */
2047 static dissector_handle_t q931_ie_handle = NULL;
2049 /* Global variables */
2050 static const char *extension_oid = NULL;
2051 static GHashTable *qsig_opcode2oid_hashtable = NULL;
2052 static GHashTable *qsig_oid2op_hashtable = NULL;
2054 /* Dissector tables */
2055 static dissector_table_t extension_dissector_table;
2058 /*--- Included file: packet-qsig-fn.c ---*/
2059 #line 1 "../../asn1/qsig/packet-qsig-fn.c"
2061 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
2065 static int
2066 dissect_qsig_T_extensionId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2067 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &extension_oid);
2069 return offset;
2074 static int
2075 dissect_qsig_T_extensionArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2076 #line 146 "../../asn1/qsig/qsig.cnf"
2077 tvbuff_t *next_tvb;
2079 next_tvb = tvb_new_subset_remaining(tvb, offset);
2080 if (!dissector_try_string(extension_dissector_table, extension_oid, next_tvb, actx->pinfo, tree, NULL)) {
2081 proto_item *item=NULL;
2082 proto_tree *next_tree=NULL;
2084 item=proto_tree_add_text(tree, next_tvb, 0, tvb_length_remaining(tvb, offset), "QSIG: Dissector for extension with OID:%s not implemented.", extension_oid);
2085 if(item){
2086 next_tree=proto_item_add_subtree(item, ett_qsig_unknown_extension);
2088 dissect_unknown_ber(actx->pinfo, next_tvb, offset, next_tree);
2091 offset+=tvb_length_remaining(tvb, offset);
2094 return offset;
2098 static const ber_sequence_t qsig_Extension_sequence[] = {
2099 { &hf_qsig_extensionId , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_qsig_T_extensionId },
2100 { &hf_qsig_extensionArgument, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_T_extensionArgument },
2101 { NULL, 0, 0, 0, NULL }
2104 static int
2105 dissect_qsig_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2106 #line 143 "../../asn1/qsig/qsig.cnf"
2107 extension_oid = NULL;
2109 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2110 qsig_Extension_sequence, hf_index, ett_qsig_Extension);
2112 return offset;
2117 static int
2118 dissect_qsig_PSS1InformationElement_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2119 #line 168 "../../asn1/qsig/qsig.cnf"
2120 tvbuff_t *out_tvb = NULL;
2121 proto_tree *data_tree;
2123 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2124 &out_tvb);
2126 data_tree = proto_item_add_subtree(actx->created_item, ett_cnq_PSS1InformationElement);
2127 if (out_tvb && (tvb_length(out_tvb) > 0) && q931_ie_handle)
2128 call_dissector(q931_ie_handle, out_tvb, actx->pinfo, data_tree);
2131 return offset;
2136 static int
2137 dissect_qsig_PSS1InformationElement(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2138 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2139 hf_index, BER_CLASS_APP, 0, TRUE, dissect_qsig_PSS1InformationElement_U);
2141 return offset;
2146 static int
2147 dissect_qsig_NumberDigits(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2148 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
2149 actx, tree, tvb, offset, hf_index,
2150 NULL);
2152 return offset;
2156 static const value_string qsig_PublicTypeOfNumber_vals[] = {
2157 { 0, "unknown" },
2158 { 1, "internationalNumber" },
2159 { 2, "nationalNumber" },
2160 { 3, "networkSpecificNumber" },
2161 { 4, "subscriberNumber" },
2162 { 6, "abbreviatedNumber" },
2163 { 0, NULL }
2167 static int
2168 dissect_qsig_PublicTypeOfNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2169 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2170 NULL);
2172 return offset;
2176 static const ber_sequence_t qsig_PublicPartyNumber_sequence[] = {
2177 { &hf_qsig_publicTypeOfNumber, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_PublicTypeOfNumber },
2178 { &hf_qsig_publicNumberDigits, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_NumberDigits },
2179 { NULL, 0, 0, 0, NULL }
2182 static int
2183 dissect_qsig_PublicPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2184 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2185 qsig_PublicPartyNumber_sequence, hf_index, ett_qsig_PublicPartyNumber);
2187 return offset;
2191 static const value_string qsig_PrivateTypeOfNumber_vals[] = {
2192 { 0, "unknown" },
2193 { 1, "level2RegionalNumber" },
2194 { 2, "level1RegionalNumber" },
2195 { 3, "pISNSpecificNumber" },
2196 { 4, "localNumber" },
2197 { 6, "abbreviatedNumber" },
2198 { 0, NULL }
2202 static int
2203 dissect_qsig_PrivateTypeOfNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2204 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2205 NULL);
2207 return offset;
2211 static const ber_sequence_t qsig_PrivatePartyNumber_sequence[] = {
2212 { &hf_qsig_privateTypeOfNumber, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_PrivateTypeOfNumber },
2213 { &hf_qsig_privateNumberDigits, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_NumberDigits },
2214 { NULL, 0, 0, 0, NULL }
2217 static int
2218 dissect_qsig_PrivatePartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2219 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2220 qsig_PrivatePartyNumber_sequence, hf_index, ett_qsig_PrivatePartyNumber);
2222 return offset;
2226 static const value_string qsig_PartyNumber_vals[] = {
2227 { 0, "unknownPartyNumber" },
2228 { 1, "publicPartyNumber" },
2229 { 3, "dataPartyNumber" },
2230 { 4, "telexPartyNumber" },
2231 { 5, "privatePartyNumber" },
2232 { 8, "nationalStandardPartyNumber" },
2233 { 0, NULL }
2236 static const ber_choice_t qsig_PartyNumber_choice[] = {
2237 { 0, &hf_qsig_unknownPartyNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2238 { 1, &hf_qsig_publicPartyNumber, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_PublicPartyNumber },
2239 { 3, &hf_qsig_dataPartyNumber, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2240 { 4, &hf_qsig_telexPartyNumber, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2241 { 5, &hf_qsig_privatePartyNumber, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_PrivatePartyNumber },
2242 { 8, &hf_qsig_nationalStandardPartyNumber, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_qsig_NumberDigits },
2243 { 0, NULL, 0, 0, 0, NULL }
2246 static int
2247 dissect_qsig_PartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2248 offset = dissect_ber_choice(actx, tree, tvb, offset,
2249 qsig_PartyNumber_choice, hf_index, ett_qsig_PartyNumber,
2250 NULL);
2252 return offset;
2256 static const value_string qsig_ScreeningIndicator_vals[] = {
2257 { 0, "userProvidedNotScreened" },
2258 { 1, "userProvidedVerifiedAndPassed" },
2259 { 2, "userProvidedVerifiedAndFailed" },
2260 { 3, "networkProvided" },
2261 { 0, NULL }
2265 static int
2266 dissect_qsig_ScreeningIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2267 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2268 NULL);
2270 return offset;
2275 static int
2276 dissect_qsig_SubaddressInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2277 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2278 NULL);
2280 return offset;
2285 static int
2286 dissect_qsig_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2287 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2289 return offset;
2293 static const ber_sequence_t qsig_UserSpecifiedSubaddress_sequence[] = {
2294 { &hf_qsig_subaddressInformation, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_SubaddressInformation },
2295 { &hf_qsig_oddCountIndicator, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_BOOLEAN },
2296 { NULL, 0, 0, 0, NULL }
2299 static int
2300 dissect_qsig_UserSpecifiedSubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2301 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2302 qsig_UserSpecifiedSubaddress_sequence, hf_index, ett_qsig_UserSpecifiedSubaddress);
2304 return offset;
2309 static int
2310 dissect_qsig_NSAPSubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2311 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2312 NULL);
2314 return offset;
2318 static const value_string qsig_PartySubaddress_vals[] = {
2319 { 0, "userSpecifiedSubaddress" },
2320 { 1, "nSAPSubaddress" },
2321 { 0, NULL }
2324 static const ber_choice_t qsig_PartySubaddress_choice[] = {
2325 { 0, &hf_qsig_userSpecifiedSubaddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_UserSpecifiedSubaddress },
2326 { 1, &hf_qsig_nSAPSubaddress , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_NSAPSubaddress },
2327 { 0, NULL, 0, 0, 0, NULL }
2330 static int
2331 dissect_qsig_PartySubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2332 offset = dissect_ber_choice(actx, tree, tvb, offset,
2333 qsig_PartySubaddress_choice, hf_index, ett_qsig_PartySubaddress,
2334 NULL);
2336 return offset;
2340 static const ber_sequence_t qsig_AddressScreened_sequence[] = {
2341 { &hf_qsig_partyNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2342 { &hf_qsig_screeningIndicator, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ScreeningIndicator },
2343 { &hf_qsig_partySubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartySubaddress },
2344 { NULL, 0, 0, 0, NULL }
2347 static int
2348 dissect_qsig_AddressScreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2349 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2350 qsig_AddressScreened_sequence, hf_index, ett_qsig_AddressScreened);
2352 return offset;
2357 static int
2358 dissect_qsig_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2359 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2361 return offset;
2365 static const value_string qsig_PresentedAddressScreened_vals[] = {
2366 { 0, "presentationAllowedAddressS" },
2367 { 1, "presentationRestricted" },
2368 { 2, "numberNotAvailableDueToInterworking" },
2369 { 3, "presentationRestrictedAddressS" },
2370 { 0, NULL }
2373 static const ber_choice_t qsig_PresentedAddressScreened_choice[] = {
2374 { 0, &hf_qsig_presentationAllowedAddressS, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_AddressScreened },
2375 { 1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2376 { 2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2377 { 3, &hf_qsig_presentationRestrictedAddressS, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_AddressScreened },
2378 { 0, NULL, 0, 0, 0, NULL }
2381 static int
2382 dissect_qsig_PresentedAddressScreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2383 offset = dissect_ber_choice(actx, tree, tvb, offset,
2384 qsig_PresentedAddressScreened_choice, hf_index, ett_qsig_PresentedAddressScreened,
2385 NULL);
2387 return offset;
2391 static const ber_sequence_t qsig_Address_sequence[] = {
2392 { &hf_qsig_partyNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2393 { &hf_qsig_partySubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartySubaddress },
2394 { NULL, 0, 0, 0, NULL }
2397 static int
2398 dissect_qsig_Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2399 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2400 qsig_Address_sequence, hf_index, ett_qsig_Address);
2402 return offset;
2406 static const value_string qsig_PresentedAddressUnscreened_vals[] = {
2407 { 0, "presentationAllowedAddressU" },
2408 { 1, "presentationRestricted" },
2409 { 2, "numberNotAvailableDueToInterworking" },
2410 { 3, "presentationRestrictedAddressU" },
2411 { 0, NULL }
2414 static const ber_choice_t qsig_PresentedAddressUnscreened_choice[] = {
2415 { 0, &hf_qsig_presentationAllowedAddressU, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Address },
2416 { 1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2417 { 2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2418 { 3, &hf_qsig_presentationRestrictedAddressU, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Address },
2419 { 0, NULL, 0, 0, 0, NULL }
2422 static int
2423 dissect_qsig_PresentedAddressUnscreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2424 offset = dissect_ber_choice(actx, tree, tvb, offset,
2425 qsig_PresentedAddressUnscreened_choice, hf_index, ett_qsig_PresentedAddressUnscreened,
2426 NULL);
2428 return offset;
2432 static const ber_sequence_t qsig_NumberScreened_sequence[] = {
2433 { &hf_qsig_partyNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_PartyNumber },
2434 { &hf_qsig_screeningIndicator, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ScreeningIndicator },
2435 { NULL, 0, 0, 0, NULL }
2438 static int
2439 dissect_qsig_NumberScreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2440 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2441 qsig_NumberScreened_sequence, hf_index, ett_qsig_NumberScreened);
2443 return offset;
2447 static const value_string qsig_PresentedNumberScreened_vals[] = {
2448 { 0, "presentationAllowedAddressNS" },
2449 { 1, "presentationRestricted" },
2450 { 2, "numberNotAvailableDueToInterworking" },
2451 { 3, "presentationRestrictedAddressNS" },
2452 { 0, NULL }
2455 static const ber_choice_t qsig_PresentedNumberScreened_choice[] = {
2456 { 0, &hf_qsig_presentationAllowedAddressNS, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_NumberScreened },
2457 { 1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2458 { 2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2459 { 3, &hf_qsig_presentationRestrictedAddressNS, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_NumberScreened },
2460 { 0, NULL, 0, 0, 0, NULL }
2463 static int
2464 dissect_qsig_PresentedNumberScreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2465 offset = dissect_ber_choice(actx, tree, tvb, offset,
2466 qsig_PresentedNumberScreened_choice, hf_index, ett_qsig_PresentedNumberScreened,
2467 NULL);
2469 return offset;
2473 static const value_string qsig_PresentedNumberUnscreened_vals[] = {
2474 { 0, "presentationAllowedAddressNU" },
2475 { 1, "presentationRestricted" },
2476 { 2, "numberNotAvailableDueToInterworking" },
2477 { 3, "presentationRestrictedAddressNU" },
2478 { 0, NULL }
2481 static const ber_choice_t qsig_PresentedNumberUnscreened_choice[] = {
2482 { 0, &hf_qsig_presentationAllowedAddressNU, BER_CLASS_CON, 0, 0, dissect_qsig_PartyNumber },
2483 { 1, &hf_qsig_presentationRestricted, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2484 { 2, &hf_qsig_numberNotAvailableDueToInterworking, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_NULL },
2485 { 3, &hf_qsig_presentationRestrictedAddressNU, BER_CLASS_CON, 3, 0, dissect_qsig_PartyNumber },
2486 { 0, NULL, 0, 0, 0, NULL }
2489 static int
2490 dissect_qsig_PresentedNumberUnscreened(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2491 offset = dissect_ber_choice(actx, tree, tvb, offset,
2492 qsig_PresentedNumberUnscreened_choice, hf_index, ett_qsig_PresentedNumberUnscreened,
2493 NULL);
2495 return offset;
2500 static int
2501 dissect_qsig_PresentationAllowedIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2502 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2504 return offset;
2508 /* --- Module Name-Operations-asn1-97 --- --- --- */
2512 static int
2513 dissect_qsig_na_NameData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2514 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2515 NULL);
2517 return offset;
2521 static const value_string qsig_na_CharacterSet_vals[] = {
2522 { 0, "unknown" },
2523 { 1, "iso8859-1" },
2524 { 3, "iso8859-2" },
2525 { 4, "iso8859-3" },
2526 { 5, "iso8859-4" },
2527 { 6, "iso8859-5" },
2528 { 7, "iso8859-7" },
2529 { 8, "iso10646-BmpString" },
2530 { 9, "iso10646-utf-8String" },
2531 { 0, NULL }
2535 static int
2536 dissect_qsig_na_CharacterSet(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2537 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2538 NULL);
2540 return offset;
2544 static const ber_sequence_t qsig_na_NameSet_sequence[] = {
2545 { &hf_qsig_na_nameData , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NameData },
2546 { &hf_qsig_na_characterSet, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_CharacterSet },
2547 { NULL, 0, 0, 0, NULL }
2550 static int
2551 dissect_qsig_na_NameSet(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2552 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2553 qsig_na_NameSet_sequence, hf_index, ett_qsig_na_NameSet);
2555 return offset;
2559 static const value_string qsig_na_NamePresentationAllowed_vals[] = {
2560 { 0, "namePresentationAllowedSimple" },
2561 { 1, "namePresentationAllowedExtended" },
2562 { 0, NULL }
2565 static const ber_choice_t qsig_na_NamePresentationAllowed_choice[] = {
2566 { 0, &hf_qsig_na_namePresentationAllowedSimple, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameData },
2567 { 1, &hf_qsig_na_namePresentationAllowedExtended, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameSet },
2568 { 0, NULL, 0, 0, 0, NULL }
2571 static int
2572 dissect_qsig_na_NamePresentationAllowed(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2573 offset = dissect_ber_choice(actx, tree, tvb, offset,
2574 qsig_na_NamePresentationAllowed_choice, hf_index, ett_qsig_na_NamePresentationAllowed,
2575 NULL);
2577 return offset;
2582 static int
2583 dissect_qsig_na_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2584 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2586 return offset;
2590 static const value_string qsig_na_NamePresentationRestricted_vals[] = {
2591 { 2, "namePresentationRestrictedSimple" },
2592 { 3, "namePresentationRestrictedExtended" },
2593 { 7, "namePresentationRestrictedNull" },
2594 { 0, NULL }
2597 static const ber_choice_t qsig_na_NamePresentationRestricted_choice[] = {
2598 { 2, &hf_qsig_na_namePresentationRestrictedSimple, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameData },
2599 { 3, &hf_qsig_na_namePresentationRestrictedExtended, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_na_NameSet },
2600 { 7, &hf_qsig_na_namePresentationRestrictedNull, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_na_NULL },
2601 { 0, NULL, 0, 0, 0, NULL }
2604 static int
2605 dissect_qsig_na_NamePresentationRestricted(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2606 offset = dissect_ber_choice(actx, tree, tvb, offset,
2607 qsig_na_NamePresentationRestricted_choice, hf_index, ett_qsig_na_NamePresentationRestricted,
2608 NULL);
2610 return offset;
2615 static int
2616 dissect_qsig_na_NameNotAvailable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2617 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2618 hf_index, BER_CLASS_CON, 4, TRUE, dissect_qsig_na_NULL);
2620 return offset;
2624 static const ber_choice_t qsig_na_Name_choice[] = {
2625 { 0, &hf_qsig_na_namePresentationAllowed, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NamePresentationAllowed },
2626 { 1, &hf_qsig_na_namePresentationRestricted, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NamePresentationRestricted },
2627 { 2, &hf_qsig_na_nameNotAvailable, BER_CLASS_CON, 4, BER_FLAGS_NOOWNTAG, dissect_qsig_na_NameNotAvailable },
2628 { 0, NULL, 0, 0, 0, NULL }
2632 dissect_qsig_na_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2633 offset = dissect_ber_choice(actx, tree, tvb, offset,
2634 qsig_na_Name_choice, hf_index, ett_qsig_na_Name,
2635 NULL);
2637 return offset;
2641 static const ber_sequence_t qsig_na_SEQUENCE_OF_Extension_sequence_of[1] = {
2642 { &hf_qsig_na_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
2645 static int
2646 dissect_qsig_na_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2647 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2648 qsig_na_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_na_SEQUENCE_OF_Extension);
2650 return offset;
2654 static const value_string qsig_na_NameExtension_vals[] = {
2655 { 5, "single" },
2656 { 6, "multiple" },
2657 { 0, NULL }
2660 static const ber_choice_t qsig_na_NameExtension_choice[] = {
2661 { 5, &hf_qsig_na_single , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2662 { 6, &hf_qsig_na_multiple , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_na_SEQUENCE_OF_Extension },
2663 { 0, NULL, 0, 0, 0, NULL }
2666 static int
2667 dissect_qsig_na_NameExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2668 offset = dissect_ber_choice(actx, tree, tvb, offset,
2669 qsig_na_NameExtension_choice, hf_index, ett_qsig_na_NameExtension,
2670 NULL);
2672 return offset;
2676 static const ber_sequence_t qsig_na_T_nameSequence_sequence[] = {
2677 { &hf_qsig_na_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_na_Name },
2678 { &hf_qsig_na_extensionNA , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_na_NameExtension },
2679 { NULL, 0, 0, 0, NULL }
2682 static int
2683 dissect_qsig_na_T_nameSequence(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2684 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2685 qsig_na_T_nameSequence_sequence, hf_index, ett_qsig_na_T_nameSequence);
2687 return offset;
2691 static const value_string qsig_na_NameArg_vals[] = {
2692 { 0, "name" },
2693 { 1, "nameSequence" },
2694 { 0, NULL }
2697 static const ber_choice_t qsig_na_NameArg_choice[] = {
2698 { 0, &hf_qsig_na_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
2699 { 1, &hf_qsig_na_nameSequence, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_na_T_nameSequence },
2700 { 0, NULL, 0, 0, 0, NULL }
2703 static int
2704 dissect_qsig_na_NameArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2705 offset = dissect_ber_choice(actx, tree, tvb, offset,
2706 qsig_na_NameArg_choice, hf_index, ett_qsig_na_NameArg,
2707 NULL);
2709 return offset;
2712 /*--- PDUs ---*/
2714 static int dissect_qsig_na_NameArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2715 int offset = 0;
2716 asn1_ctx_t asn1_ctx;
2717 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2718 offset = dissect_qsig_na_NameArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_na_qsig_na_NameArg_PDU);
2719 return offset;
2723 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
2726 static const value_string qsig_cf_Procedure_vals[] = {
2727 { 0, "cfu" },
2728 { 1, "cfb" },
2729 { 2, "cfnr" },
2730 { 0, NULL }
2734 static int
2735 dissect_qsig_cf_Procedure(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2736 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2737 NULL);
2739 return offset;
2743 static const value_string qsig_cf_BasicService_vals[] = {
2744 { 0, "allServices" },
2745 { 1, "speech" },
2746 { 2, "unrestrictedDigitalInformation" },
2747 { 3, "audio3100Hz" },
2748 { 32, "telephony" },
2749 { 33, "teletex" },
2750 { 34, "telefaxGroup4Class1" },
2751 { 35, "videotexSyntaxBased" },
2752 { 36, "videotelephony" },
2753 { 0, NULL }
2757 static int
2758 dissect_qsig_cf_BasicService(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2759 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2760 NULL);
2762 return offset;
2766 static const ber_sequence_t qsig_cf_SEQUENCE_OF_Extension_sequence_of[1] = {
2767 { &hf_qsig_cf_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
2770 static int
2771 dissect_qsig_cf_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2772 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2773 qsig_cf_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cf_SEQUENCE_OF_Extension);
2775 return offset;
2779 static const value_string qsig_cf_ADExtension_vals[] = {
2780 { 1, "single" },
2781 { 2, "multiple" },
2782 { 0, NULL }
2785 static const ber_choice_t qsig_cf_ADExtension_choice[] = {
2786 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2787 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2788 { 0, NULL, 0, 0, 0, NULL }
2791 static int
2792 dissect_qsig_cf_ADExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2793 offset = dissect_ber_choice(actx, tree, tvb, offset,
2794 qsig_cf_ADExtension_choice, hf_index, ett_qsig_cf_ADExtension,
2795 NULL);
2797 return offset;
2801 static const ber_sequence_t qsig_cf_ARG_activateDiversionQ_sequence[] = {
2802 { &hf_qsig_cf_procedure , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2803 { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2804 { &hf_qsig_cf_divertedToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
2805 { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2806 { &hf_qsig_cf_activatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2807 { &hf_qsig_cf_extensionAD , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_ADExtension },
2808 { NULL, 0, 0, 0, NULL }
2811 static int
2812 dissect_qsig_cf_ARG_activateDiversionQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2813 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2814 qsig_cf_ARG_activateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_activateDiversionQ);
2816 return offset;
2821 static int
2822 dissect_qsig_cf_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2823 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2825 return offset;
2829 static const value_string qsig_cf_RES_activateDiversionQ_vals[] = {
2830 { 0, "null" },
2831 { 1, "single" },
2832 { 2, "multiple" },
2833 { 0, NULL }
2836 static const ber_choice_t qsig_cf_RES_activateDiversionQ_choice[] = {
2837 { 0, &hf_qsig_cf_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
2838 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2839 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2840 { 0, NULL, 0, 0, 0, NULL }
2843 static int
2844 dissect_qsig_cf_RES_activateDiversionQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2845 offset = dissect_ber_choice(actx, tree, tvb, offset,
2846 qsig_cf_RES_activateDiversionQ_choice, hf_index, ett_qsig_cf_RES_activateDiversionQ,
2847 NULL);
2849 return offset;
2853 static const value_string qsig_cf_DDExtension_vals[] = {
2854 { 1, "single" },
2855 { 2, "multiple" },
2856 { 0, NULL }
2859 static const ber_choice_t qsig_cf_DDExtension_choice[] = {
2860 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2861 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2862 { 0, NULL, 0, 0, 0, NULL }
2865 static int
2866 dissect_qsig_cf_DDExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2867 offset = dissect_ber_choice(actx, tree, tvb, offset,
2868 qsig_cf_DDExtension_choice, hf_index, ett_qsig_cf_DDExtension,
2869 NULL);
2871 return offset;
2875 static const ber_sequence_t qsig_cf_ARG_deactivateDiversionQ_sequence[] = {
2876 { &hf_qsig_cf_procedure , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2877 { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2878 { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2879 { &hf_qsig_cf_deactivatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2880 { &hf_qsig_cf_extensionDD , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DDExtension },
2881 { NULL, 0, 0, 0, NULL }
2884 static int
2885 dissect_qsig_cf_ARG_deactivateDiversionQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2886 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2887 qsig_cf_ARG_deactivateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_deactivateDiversionQ);
2889 return offset;
2893 static const value_string qsig_cf_RES_deactivateDiversionQ_vals[] = {
2894 { 0, "null" },
2895 { 1, "single" },
2896 { 2, "multiple" },
2897 { 0, NULL }
2900 static const ber_choice_t qsig_cf_RES_deactivateDiversionQ_choice[] = {
2901 { 0, &hf_qsig_cf_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
2902 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2903 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2904 { 0, NULL, 0, 0, 0, NULL }
2907 static int
2908 dissect_qsig_cf_RES_deactivateDiversionQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2909 offset = dissect_ber_choice(actx, tree, tvb, offset,
2910 qsig_cf_RES_deactivateDiversionQ_choice, hf_index, ett_qsig_cf_RES_deactivateDiversionQ,
2911 NULL);
2913 return offset;
2917 static const value_string qsig_cf_IDExtension_vals[] = {
2918 { 1, "single" },
2919 { 2, "multiple" },
2920 { 0, NULL }
2923 static const ber_choice_t qsig_cf_IDExtension_choice[] = {
2924 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2925 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2926 { 0, NULL, 0, 0, 0, NULL }
2929 static int
2930 dissect_qsig_cf_IDExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2931 offset = dissect_ber_choice(actx, tree, tvb, offset,
2932 qsig_cf_IDExtension_choice, hf_index, ett_qsig_cf_IDExtension,
2933 NULL);
2935 return offset;
2939 static const ber_sequence_t qsig_cf_ARG_interrogateDiversionQ_sequence[] = {
2940 { &hf_qsig_cf_procedure , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
2941 { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2942 { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2943 { &hf_qsig_cf_interrogatingUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2944 { &hf_qsig_cf_extensionID , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_IDExtension },
2945 { NULL, 0, 0, 0, NULL }
2948 static int
2949 dissect_qsig_cf_ARG_interrogateDiversionQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2950 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2951 qsig_cf_ARG_interrogateDiversionQ_sequence, hf_index, ett_qsig_cf_ARG_interrogateDiversionQ);
2953 return offset;
2957 static const value_string qsig_cf_CHRExtension_vals[] = {
2958 { 1, "single" },
2959 { 2, "multiple" },
2960 { 0, NULL }
2963 static const ber_choice_t qsig_cf_CHRExtension_choice[] = {
2964 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
2965 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
2966 { 0, NULL, 0, 0, 0, NULL }
2969 static int
2970 dissect_qsig_cf_CHRExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2971 offset = dissect_ber_choice(actx, tree, tvb, offset,
2972 qsig_cf_CHRExtension_choice, hf_index, ett_qsig_cf_CHRExtension,
2973 NULL);
2975 return offset;
2979 static const ber_sequence_t qsig_cf_ARG_checkRestriction_sequence[] = {
2980 { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2981 { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
2982 { &hf_qsig_cf_divertedToNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
2983 { &hf_qsig_cf_extensionCHR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_CHRExtension },
2984 { NULL, 0, 0, 0, NULL }
2987 static int
2988 dissect_qsig_cf_ARG_checkRestriction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2989 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2990 qsig_cf_ARG_checkRestriction_sequence, hf_index, ett_qsig_cf_ARG_checkRestriction);
2992 return offset;
2996 static const value_string qsig_cf_RES_checkRestriction_vals[] = {
2997 { 0, "null" },
2998 { 1, "single" },
2999 { 2, "multiple" },
3000 { 0, NULL }
3003 static const ber_choice_t qsig_cf_RES_checkRestriction_choice[] = {
3004 { 0, &hf_qsig_cf_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
3005 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3006 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3007 { 0, NULL, 0, 0, 0, NULL }
3010 static int
3011 dissect_qsig_cf_RES_checkRestriction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3012 offset = dissect_ber_choice(actx, tree, tvb, offset,
3013 qsig_cf_RES_checkRestriction_choice, hf_index, ett_qsig_cf_RES_checkRestriction,
3014 NULL);
3016 return offset;
3020 static const value_string qsig_cf_DiversionReason_vals[] = {
3021 { 0, "unknown" },
3022 { 1, "cfu" },
3023 { 2, "cfb" },
3024 { 3, "cfnr" },
3025 { 0, NULL }
3029 static int
3030 dissect_qsig_cf_DiversionReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3031 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3032 NULL);
3034 return offset;
3039 static int
3040 dissect_qsig_cf_INTEGER_1_15(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3041 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3042 NULL);
3044 return offset;
3048 static const value_string qsig_cf_SubscriptionOption_vals[] = {
3049 { 0, "noNotification" },
3050 { 1, "notificationWithoutDivertedToNr" },
3051 { 2, "notificationWithDivertedToNr" },
3052 { 0, NULL }
3056 static int
3057 dissect_qsig_cf_SubscriptionOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3058 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3059 NULL);
3061 return offset;
3065 static const value_string qsig_cf_CRRExtension_vals[] = {
3066 { 9, "single" },
3067 { 10, "multiple" },
3068 { 0, NULL }
3071 static const ber_choice_t qsig_cf_CRRExtension_choice[] = {
3072 { 9, &hf_qsig_cf_single , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3073 { 10, &hf_qsig_cf_multiple , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3074 { 0, NULL, 0, 0, 0, NULL }
3077 static int
3078 dissect_qsig_cf_CRRExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3079 offset = dissect_ber_choice(actx, tree, tvb, offset,
3080 qsig_cf_CRRExtension_choice, hf_index, ett_qsig_cf_CRRExtension,
3081 NULL);
3083 return offset;
3087 static const ber_sequence_t qsig_cf_ARG_callRerouteing_sequence[] = {
3088 { &hf_qsig_cf_rerouteingReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3089 { &hf_qsig_cf_originalRerouteingReason, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_DiversionReason },
3090 { &hf_qsig_cf_calledAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
3091 { &hf_qsig_cf_diversionCounter, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_INTEGER_1_15 },
3092 { &hf_qsig_cf_pSS1InfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3093 { &hf_qsig_cf_lastRerouteingNr, BER_CLASS_CON, 1, 0, dissect_qsig_PresentedNumberUnscreened },
3094 { &hf_qsig_cf_subscriptionOption, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SubscriptionOption },
3095 { &hf_qsig_cf_callingPartySubaddress, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
3096 { &hf_qsig_cf_callingNumber, BER_CLASS_CON, 4, 0, dissect_qsig_PresentedNumberScreened },
3097 { &hf_qsig_cf_callingName , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3098 { &hf_qsig_cf_originalCalledNr, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3099 { &hf_qsig_cf_redirectingName, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3100 { &hf_qsig_cf_originalCalledName, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3101 { &hf_qsig_cf_extensionCRR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_CRRExtension },
3102 { NULL, 0, 0, 0, NULL }
3105 static int
3106 dissect_qsig_cf_ARG_callRerouteing(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3107 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3108 qsig_cf_ARG_callRerouteing_sequence, hf_index, ett_qsig_cf_ARG_callRerouteing);
3110 return offset;
3114 static const value_string qsig_cf_RES_callRerouteing_vals[] = {
3115 { 0, "null" },
3116 { 1, "single" },
3117 { 2, "multiple" },
3118 { 0, NULL }
3121 static const ber_choice_t qsig_cf_RES_callRerouteing_choice[] = {
3122 { 0, &hf_qsig_cf_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
3123 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3124 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3125 { 0, NULL, 0, 0, 0, NULL }
3128 static int
3129 dissect_qsig_cf_RES_callRerouteing(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3130 offset = dissect_ber_choice(actx, tree, tvb, offset,
3131 qsig_cf_RES_callRerouteing_choice, hf_index, ett_qsig_cf_RES_callRerouteing,
3132 NULL);
3134 return offset;
3138 static const value_string qsig_cf_DLI1Extension_vals[] = {
3139 { 9, "single" },
3140 { 10, "multiple" },
3141 { 0, NULL }
3144 static const ber_choice_t qsig_cf_DLI1Extension_choice[] = {
3145 { 9, &hf_qsig_cf_single , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3146 { 10, &hf_qsig_cf_multiple , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3147 { 0, NULL, 0, 0, 0, NULL }
3150 static int
3151 dissect_qsig_cf_DLI1Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3152 offset = dissect_ber_choice(actx, tree, tvb, offset,
3153 qsig_cf_DLI1Extension_choice, hf_index, ett_qsig_cf_DLI1Extension,
3154 NULL);
3156 return offset;
3160 static const ber_sequence_t qsig_cf_ARG_divertingLegInformation1_sequence[] = {
3161 { &hf_qsig_cf_diversionReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3162 { &hf_qsig_cf_subscriptionOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_SubscriptionOption },
3163 { &hf_qsig_cf_nominatedNr , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3164 { &hf_qsig_cf_extensionDLI1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI1Extension },
3165 { NULL, 0, 0, 0, NULL }
3168 static int
3169 dissect_qsig_cf_ARG_divertingLegInformation1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3170 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3171 qsig_cf_ARG_divertingLegInformation1_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation1);
3173 return offset;
3177 static const value_string qsig_cf_DLI2Extension_vals[] = {
3178 { 5, "single" },
3179 { 6, "multiple" },
3180 { 0, NULL }
3183 static const ber_choice_t qsig_cf_DLI2Extension_choice[] = {
3184 { 5, &hf_qsig_cf_single , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3185 { 6, &hf_qsig_cf_multiple , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3186 { 0, NULL, 0, 0, 0, NULL }
3189 static int
3190 dissect_qsig_cf_DLI2Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3191 offset = dissect_ber_choice(actx, tree, tvb, offset,
3192 qsig_cf_DLI2Extension_choice, hf_index, ett_qsig_cf_DLI2Extension,
3193 NULL);
3195 return offset;
3199 static const ber_sequence_t qsig_cf_ARG_divertingLegInformation2_sequence[] = {
3200 { &hf_qsig_cf_diversionCounter, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_INTEGER_1_15 },
3201 { &hf_qsig_cf_diversionReason, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_DiversionReason },
3202 { &hf_qsig_cf_originalDiversionReason, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_DiversionReason },
3203 { &hf_qsig_cf_divertingNr , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3204 { &hf_qsig_cf_originalCalledNr, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
3205 { &hf_qsig_cf_redirectingName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3206 { &hf_qsig_cf_originalCalledName, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3207 { &hf_qsig_cf_extensionDLI2, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI2Extension },
3208 { NULL, 0, 0, 0, NULL }
3211 static int
3212 dissect_qsig_cf_ARG_divertingLegInformation2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3213 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3214 qsig_cf_ARG_divertingLegInformation2_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation2);
3216 return offset;
3220 static const value_string qsig_cf_DLI3Extension_vals[] = {
3221 { 1, "single" },
3222 { 2, "multiple" },
3223 { 0, NULL }
3226 static const ber_choice_t qsig_cf_DLI3Extension_choice[] = {
3227 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3228 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3229 { 0, NULL, 0, 0, 0, NULL }
3232 static int
3233 dissect_qsig_cf_DLI3Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3234 offset = dissect_ber_choice(actx, tree, tvb, offset,
3235 qsig_cf_DLI3Extension_choice, hf_index, ett_qsig_cf_DLI3Extension,
3236 NULL);
3238 return offset;
3242 static const ber_sequence_t qsig_cf_ARG_divertingLegInformation3_sequence[] = {
3243 { &hf_qsig_cf_presentationAllowedIndicator, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentationAllowedIndicator },
3244 { &hf_qsig_cf_redirectionName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
3245 { &hf_qsig_cf_extensionDLI3, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_DLI3Extension },
3246 { NULL, 0, 0, 0, NULL }
3249 static int
3250 dissect_qsig_cf_ARG_divertingLegInformation3(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3251 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3252 qsig_cf_ARG_divertingLegInformation3_sequence, hf_index, ett_qsig_cf_ARG_divertingLegInformation3);
3254 return offset;
3258 static const value_string qsig_cf_ARG_cfnrDivertedLegFailed_vals[] = {
3259 { 0, "null" },
3260 { 1, "single" },
3261 { 2, "multiple" },
3262 { 0, NULL }
3265 static const ber_choice_t qsig_cf_ARG_cfnrDivertedLegFailed_choice[] = {
3266 { 0, &hf_qsig_cf_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_NULL },
3267 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3268 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3269 { 0, NULL, 0, 0, 0, NULL }
3272 static int
3273 dissect_qsig_cf_ARG_cfnrDivertedLegFailed(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3274 offset = dissect_ber_choice(actx, tree, tvb, offset,
3275 qsig_cf_ARG_cfnrDivertedLegFailed_choice, hf_index, ett_qsig_cf_ARG_cfnrDivertedLegFailed,
3276 NULL);
3278 return offset;
3283 static int
3284 dissect_qsig_cf_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3285 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
3287 return offset;
3291 static const value_string qsig_cf_IRExtension_vals[] = {
3292 { 1, "single" },
3293 { 2, "multiple" },
3294 { 0, NULL }
3297 static const ber_choice_t qsig_cf_IRExtension_choice[] = {
3298 { 1, &hf_qsig_cf_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3299 { 2, &hf_qsig_cf_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cf_SEQUENCE_OF_Extension },
3300 { 0, NULL, 0, 0, 0, NULL }
3303 static int
3304 dissect_qsig_cf_IRExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3305 offset = dissect_ber_choice(actx, tree, tvb, offset,
3306 qsig_cf_IRExtension_choice, hf_index, ett_qsig_cf_IRExtension,
3307 NULL);
3309 return offset;
3313 static const ber_sequence_t qsig_cf_IntResult_sequence[] = {
3314 { &hf_qsig_cf_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3315 { &hf_qsig_cf_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
3316 { &hf_qsig_cf_procedure , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_Procedure },
3317 { &hf_qsig_cf_divertedToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
3318 { &hf_qsig_cf_remoteEnabled, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BOOLEAN },
3319 { &hf_qsig_cf_extensionIR , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cf_IRExtension },
3320 { NULL, 0, 0, 0, NULL }
3323 static int
3324 dissect_qsig_cf_IntResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3325 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3326 qsig_cf_IntResult_sequence, hf_index, ett_qsig_cf_IntResult);
3328 return offset;
3332 static const ber_sequence_t qsig_cf_IntResultList_set_of[1] = {
3333 { &hf_qsig_cf_IntResultList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_IntResult },
3336 static int
3337 dissect_qsig_cf_IntResultList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3338 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3339 qsig_cf_IntResultList_set_of, hf_index, ett_qsig_cf_IntResultList);
3341 return offset;
3344 /*--- PDUs ---*/
3346 static int dissect_qsig_cf_ARG_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3347 int offset = 0;
3348 asn1_ctx_t asn1_ctx;
3349 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3350 offset = dissect_qsig_cf_ARG_activateDiversionQ(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU);
3351 return offset;
3353 static int dissect_qsig_cf_RES_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3354 int offset = 0;
3355 asn1_ctx_t asn1_ctx;
3356 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3357 offset = dissect_qsig_cf_RES_activateDiversionQ(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU);
3358 return offset;
3360 static int dissect_qsig_cf_ARG_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3361 int offset = 0;
3362 asn1_ctx_t asn1_ctx;
3363 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3364 offset = dissect_qsig_cf_ARG_deactivateDiversionQ(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU);
3365 return offset;
3367 static int dissect_qsig_cf_RES_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3368 int offset = 0;
3369 asn1_ctx_t asn1_ctx;
3370 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3371 offset = dissect_qsig_cf_RES_deactivateDiversionQ(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU);
3372 return offset;
3374 static int dissect_qsig_cf_ARG_interrogateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3375 int offset = 0;
3376 asn1_ctx_t asn1_ctx;
3377 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3378 offset = dissect_qsig_cf_ARG_interrogateDiversionQ(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU);
3379 return offset;
3381 static int dissect_qsig_cf_IntResultList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3382 int offset = 0;
3383 asn1_ctx_t asn1_ctx;
3384 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3385 offset = dissect_qsig_cf_IntResultList(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_IntResultList_PDU);
3386 return offset;
3388 static int dissect_qsig_cf_ARG_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3389 int offset = 0;
3390 asn1_ctx_t asn1_ctx;
3391 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3392 offset = dissect_qsig_cf_ARG_checkRestriction(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU);
3393 return offset;
3395 static int dissect_qsig_cf_RES_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3396 int offset = 0;
3397 asn1_ctx_t asn1_ctx;
3398 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3399 offset = dissect_qsig_cf_RES_checkRestriction(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU);
3400 return offset;
3402 static int dissect_qsig_cf_ARG_callRerouteing_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3403 int offset = 0;
3404 asn1_ctx_t asn1_ctx;
3405 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3406 offset = dissect_qsig_cf_ARG_callRerouteing(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU);
3407 return offset;
3409 static int dissect_qsig_cf_RES_callRerouteing_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3410 int offset = 0;
3411 asn1_ctx_t asn1_ctx;
3412 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3413 offset = dissect_qsig_cf_RES_callRerouteing(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU);
3414 return offset;
3416 static int dissect_qsig_cf_ARG_divertingLegInformation1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3417 int offset = 0;
3418 asn1_ctx_t asn1_ctx;
3419 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3420 offset = dissect_qsig_cf_ARG_divertingLegInformation1(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU);
3421 return offset;
3423 static int dissect_qsig_cf_ARG_divertingLegInformation2_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3424 int offset = 0;
3425 asn1_ctx_t asn1_ctx;
3426 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3427 offset = dissect_qsig_cf_ARG_divertingLegInformation2(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU);
3428 return offset;
3430 static int dissect_qsig_cf_ARG_divertingLegInformation3_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3431 int offset = 0;
3432 asn1_ctx_t asn1_ctx;
3433 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3434 offset = dissect_qsig_cf_ARG_divertingLegInformation3(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU);
3435 return offset;
3437 static int dissect_qsig_cf_ARG_cfnrDivertedLegFailed_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3438 int offset = 0;
3439 asn1_ctx_t asn1_ctx;
3440 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3441 offset = dissect_qsig_cf_ARG_cfnrDivertedLegFailed(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU);
3442 return offset;
3444 static int dissect_qsig_cf_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3445 int offset = 0;
3446 asn1_ctx_t asn1_ctx;
3447 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3448 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cf_qsig_cf_Extension_PDU);
3449 return offset;
3453 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
3457 static int
3458 dissect_qsig_pr_CallIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3459 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
3460 actx, tree, tvb, offset, hf_index,
3461 NULL);
3463 return offset;
3467 static const ber_sequence_t qsig_pr_SEQUENCE_OF_Extension_sequence_of[1] = {
3468 { &hf_qsig_pr_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
3471 static int
3472 dissect_qsig_pr_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3473 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3474 qsig_pr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pr_SEQUENCE_OF_Extension);
3476 return offset;
3480 static const value_string qsig_pr_PRPExtension_vals[] = {
3481 { 1, "single" },
3482 { 2, "multiple" },
3483 { 0, NULL }
3486 static const ber_choice_t qsig_pr_PRPExtension_choice[] = {
3487 { 1, &hf_qsig_pr_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3488 { 2, &hf_qsig_pr_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3489 { 0, NULL, 0, 0, 0, NULL }
3492 static int
3493 dissect_qsig_pr_PRPExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3494 offset = dissect_ber_choice(actx, tree, tvb, offset,
3495 qsig_pr_PRPExtension_choice, hf_index, ett_qsig_pr_PRPExtension,
3496 NULL);
3498 return offset;
3502 static const ber_sequence_t qsig_pr_PRProposeArg_sequence[] = {
3503 { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3504 { &hf_qsig_pr_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3505 { &hf_qsig_pr_extensionPRP, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRPExtension },
3506 { NULL, 0, 0, 0, NULL }
3509 static int
3510 dissect_qsig_pr_PRProposeArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3511 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3512 qsig_pr_PRProposeArg_sequence, hf_index, ett_qsig_pr_PRProposeArg);
3514 return offset;
3518 static const value_string qsig_pr_PRSExtension_vals[] = {
3519 { 1, "single" },
3520 { 2, "multiple" },
3521 { 0, NULL }
3524 static const ber_choice_t qsig_pr_PRSExtension_choice[] = {
3525 { 1, &hf_qsig_pr_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3526 { 2, &hf_qsig_pr_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3527 { 0, NULL, 0, 0, 0, NULL }
3530 static int
3531 dissect_qsig_pr_PRSExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3532 offset = dissect_ber_choice(actx, tree, tvb, offset,
3533 qsig_pr_PRSExtension_choice, hf_index, ett_qsig_pr_PRSExtension,
3534 NULL);
3536 return offset;
3540 static const ber_sequence_t qsig_pr_PRSetupArg_sequence[] = {
3541 { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3542 { &hf_qsig_pr_extensionPRS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRSExtension },
3543 { NULL, 0, 0, 0, NULL }
3546 static int
3547 dissect_qsig_pr_PRSetupArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3548 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3549 qsig_pr_PRSetupArg_sequence, hf_index, ett_qsig_pr_PRSetupArg);
3551 return offset;
3555 static const value_string qsig_pr_PRRExtension_vals[] = {
3556 { 1, "single" },
3557 { 2, "multiple" },
3558 { 0, NULL }
3561 static const ber_choice_t qsig_pr_PRRExtension_choice[] = {
3562 { 1, &hf_qsig_pr_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3563 { 2, &hf_qsig_pr_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3564 { 0, NULL, 0, 0, 0, NULL }
3567 static int
3568 dissect_qsig_pr_PRRExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3569 offset = dissect_ber_choice(actx, tree, tvb, offset,
3570 qsig_pr_PRRExtension_choice, hf_index, ett_qsig_pr_PRRExtension,
3571 NULL);
3573 return offset;
3577 static const ber_sequence_t qsig_pr_PRRetainArg_sequence[] = {
3578 { &hf_qsig_pr_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
3579 { &hf_qsig_pr_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3580 { &hf_qsig_pr_extensionPRR, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pr_PRRExtension },
3581 { NULL, 0, 0, 0, NULL }
3584 static int
3585 dissect_qsig_pr_PRRetainArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3586 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3587 qsig_pr_PRRetainArg_sequence, hf_index, ett_qsig_pr_PRRetainArg);
3589 return offset;
3594 static int
3595 dissect_qsig_pr_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3596 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
3598 return offset;
3602 static const value_string qsig_pr_DummyResult_vals[] = {
3603 { 0, "null" },
3604 { 1, "single" },
3605 { 2, "multiple" },
3606 { 0, NULL }
3609 static const ber_choice_t qsig_pr_DummyResult_choice[] = {
3610 { 0, &hf_qsig_pr_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_NULL },
3611 { 1, &hf_qsig_pr_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3612 { 2, &hf_qsig_pr_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3613 { 0, NULL, 0, 0, 0, NULL }
3616 static int
3617 dissect_qsig_pr_DummyResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3618 offset = dissect_ber_choice(actx, tree, tvb, offset,
3619 qsig_pr_DummyResult_choice, hf_index, ett_qsig_pr_DummyResult,
3620 NULL);
3622 return offset;
3626 static const value_string qsig_pr_DummyArg_vals[] = {
3627 { 0, "null" },
3628 { 1, "single" },
3629 { 2, "multiple" },
3630 { 0, NULL }
3633 static const ber_choice_t qsig_pr_DummyArg_choice[] = {
3634 { 0, &hf_qsig_pr_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_NULL },
3635 { 1, &hf_qsig_pr_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3636 { 2, &hf_qsig_pr_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pr_SEQUENCE_OF_Extension },
3637 { 0, NULL, 0, 0, 0, NULL }
3640 static int
3641 dissect_qsig_pr_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3642 offset = dissect_ber_choice(actx, tree, tvb, offset,
3643 qsig_pr_DummyArg_choice, hf_index, ett_qsig_pr_DummyArg,
3644 NULL);
3646 return offset;
3649 /*--- PDUs ---*/
3651 static int dissect_qsig_pr_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3652 int offset = 0;
3653 asn1_ctx_t asn1_ctx;
3654 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3655 offset = dissect_qsig_pr_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_DummyArg_PDU);
3656 return offset;
3658 static int dissect_qsig_pr_PRProposeArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3659 int offset = 0;
3660 asn1_ctx_t asn1_ctx;
3661 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3662 offset = dissect_qsig_pr_PRProposeArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRProposeArg_PDU);
3663 return offset;
3665 static int dissect_qsig_pr_PRSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3666 int offset = 0;
3667 asn1_ctx_t asn1_ctx;
3668 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3669 offset = dissect_qsig_pr_PRSetupArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRSetupArg_PDU);
3670 return offset;
3672 static int dissect_qsig_pr_DummyResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3673 int offset = 0;
3674 asn1_ctx_t asn1_ctx;
3675 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3676 offset = dissect_qsig_pr_DummyResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_DummyResult_PDU);
3677 return offset;
3679 static int dissect_qsig_pr_PRRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3680 int offset = 0;
3681 asn1_ctx_t asn1_ctx;
3682 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3683 offset = dissect_qsig_pr_PRRetainArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_PRRetainArg_PDU);
3684 return offset;
3686 static int dissect_qsig_pr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3687 int offset = 0;
3688 asn1_ctx_t asn1_ctx;
3689 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
3690 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pr_qsig_pr_Extension_PDU);
3691 return offset;
3695 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
3699 static int
3700 dissect_qsig_ct_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3701 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
3703 return offset;
3707 static const ber_sequence_t qsig_ct_SEQUENCE_OF_Extension_sequence_of[1] = {
3708 { &hf_qsig_ct_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
3711 static int
3712 dissect_qsig_ct_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3713 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3714 qsig_ct_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ct_SEQUENCE_OF_Extension);
3716 return offset;
3720 static const value_string qsig_ct_DummyArg_vals[] = {
3721 { 0, "null" },
3722 { 1, "single" },
3723 { 2, "multiple" },
3724 { 0, NULL }
3727 static const ber_choice_t qsig_ct_DummyArg_choice[] = {
3728 { 0, &hf_qsig_ct_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_NULL },
3729 { 1, &hf_qsig_ct_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3730 { 2, &hf_qsig_ct_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3731 { 0, NULL, 0, 0, 0, NULL }
3734 static int
3735 dissect_qsig_ct_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3736 offset = dissect_ber_choice(actx, tree, tvb, offset,
3737 qsig_ct_DummyArg_choice, hf_index, ett_qsig_ct_DummyArg,
3738 NULL);
3740 return offset;
3744 static const value_string qsig_ct_DummyRes_vals[] = {
3745 { 0, "null" },
3746 { 1, "single" },
3747 { 2, "multiple" },
3748 { 0, NULL }
3751 static const ber_choice_t qsig_ct_DummyRes_choice[] = {
3752 { 0, &hf_qsig_ct_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_NULL },
3753 { 1, &hf_qsig_ct_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3754 { 2, &hf_qsig_ct_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3755 { 0, NULL, 0, 0, 0, NULL }
3758 static int
3759 dissect_qsig_ct_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3760 offset = dissect_ber_choice(actx, tree, tvb, offset,
3761 qsig_ct_DummyRes_choice, hf_index, ett_qsig_ct_DummyRes,
3762 NULL);
3764 return offset;
3769 static int
3770 dissect_qsig_ct_CallIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3771 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
3772 actx, tree, tvb, offset, hf_index,
3773 NULL);
3775 return offset;
3779 static const value_string qsig_ct_T_resultExtension_vals[] = {
3780 { 6, "single" },
3781 { 7, "multiple" },
3782 { 0, NULL }
3785 static const ber_choice_t qsig_ct_T_resultExtension_choice[] = {
3786 { 6, &hf_qsig_ct_single , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3787 { 7, &hf_qsig_ct_multiple , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3788 { 0, NULL, 0, 0, 0, NULL }
3791 static int
3792 dissect_qsig_ct_T_resultExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3793 offset = dissect_ber_choice(actx, tree, tvb, offset,
3794 qsig_ct_T_resultExtension_choice, hf_index, ett_qsig_ct_T_resultExtension,
3795 NULL);
3797 return offset;
3801 static const ber_sequence_t qsig_ct_CTIdentifyRes_sequence[] = {
3802 { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3803 { &hf_qsig_ct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3804 { &hf_qsig_ct_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_T_resultExtension },
3805 { NULL, 0, 0, 0, NULL }
3808 static int
3809 dissect_qsig_ct_CTIdentifyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3810 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3811 qsig_ct_CTIdentifyRes_sequence, hf_index, ett_qsig_ct_CTIdentifyRes);
3813 return offset;
3817 static const value_string qsig_ct_CTIargumentExtension_vals[] = {
3818 { 6, "single" },
3819 { 7, "multiple" },
3820 { 0, NULL }
3823 static const ber_choice_t qsig_ct_CTIargumentExtension_choice[] = {
3824 { 6, &hf_qsig_ct_single , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3825 { 7, &hf_qsig_ct_multiple , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3826 { 0, NULL, 0, 0, 0, NULL }
3829 static int
3830 dissect_qsig_ct_CTIargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3831 offset = dissect_ber_choice(actx, tree, tvb, offset,
3832 qsig_ct_CTIargumentExtension_choice, hf_index, ett_qsig_ct_CTIargumentExtension,
3833 NULL);
3835 return offset;
3839 static const ber_sequence_t qsig_ct_CTInitiateArg_sequence[] = {
3840 { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3841 { &hf_qsig_ct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
3842 { &hf_qsig_ct_argumentExtensionCTI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTIargumentExtension },
3843 { NULL, 0, 0, 0, NULL }
3846 static int
3847 dissect_qsig_ct_CTInitiateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3848 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3849 qsig_ct_CTInitiateArg_sequence, hf_index, ett_qsig_ct_CTInitiateArg);
3851 return offset;
3855 static const value_string qsig_ct_CTSargumentExtension_vals[] = {
3856 { 0, "single" },
3857 { 1, "multiple" },
3858 { 0, NULL }
3861 static const ber_choice_t qsig_ct_CTSargumentExtension_choice[] = {
3862 { 0, &hf_qsig_ct_single , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3863 { 1, &hf_qsig_ct_multiple , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3864 { 0, NULL, 0, 0, 0, NULL }
3867 static int
3868 dissect_qsig_ct_CTSargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3869 offset = dissect_ber_choice(actx, tree, tvb, offset,
3870 qsig_ct_CTSargumentExtension_choice, hf_index, ett_qsig_ct_CTSargumentExtension,
3871 NULL);
3873 return offset;
3877 static const ber_sequence_t qsig_ct_CTSetupArg_sequence[] = {
3878 { &hf_qsig_ct_callIdentity, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallIdentity },
3879 { &hf_qsig_ct_argumentExtensionCTS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTSargumentExtension },
3880 { NULL, 0, 0, 0, NULL }
3883 static int
3884 dissect_qsig_ct_CTSetupArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3885 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3886 qsig_ct_CTSetupArg_sequence, hf_index, ett_qsig_ct_CTSetupArg);
3888 return offset;
3892 static const value_string qsig_ct_CTAargumentExtension_vals[] = {
3893 { 9, "single" },
3894 { 10, "multiple" },
3895 { 0, NULL }
3898 static const ber_choice_t qsig_ct_CTAargumentExtension_choice[] = {
3899 { 9, &hf_qsig_ct_single , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3900 { 10, &hf_qsig_ct_multiple , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3901 { 0, NULL, 0, 0, 0, NULL }
3904 static int
3905 dissect_qsig_ct_CTAargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3906 offset = dissect_ber_choice(actx, tree, tvb, offset,
3907 qsig_ct_CTAargumentExtension_choice, hf_index, ett_qsig_ct_CTAargumentExtension,
3908 NULL);
3910 return offset;
3914 static const ber_sequence_t qsig_ct_CTActiveArg_sequence[] = {
3915 { &hf_qsig_ct_connectedAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressScreened },
3916 { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3917 { &hf_qsig_ct_connectedName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
3918 { &hf_qsig_ct_argumentExtensionCTA, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTAargumentExtension },
3919 { NULL, 0, 0, 0, NULL }
3922 static int
3923 dissect_qsig_ct_CTActiveArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3924 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3925 qsig_ct_CTActiveArg_sequence, hf_index, ett_qsig_ct_CTActiveArg);
3927 return offset;
3931 static const value_string qsig_ct_EndDesignation_vals[] = {
3932 { 0, "primaryEnd" },
3933 { 1, "secondaryEnd" },
3934 { 0, NULL }
3938 static int
3939 dissect_qsig_ct_EndDesignation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3940 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3941 NULL);
3943 return offset;
3947 static const value_string qsig_ct_CallStatus_vals[] = {
3948 { 0, "answered" },
3949 { 1, "alerting" },
3950 { 0, NULL }
3954 static int
3955 dissect_qsig_ct_CallStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3956 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3957 NULL);
3959 return offset;
3963 static const value_string qsig_ct_CTCargumentExtension_vals[] = {
3964 { 9, "single" },
3965 { 10, "multiple" },
3966 { 0, NULL }
3969 static const ber_choice_t qsig_ct_CTCargumentExtension_choice[] = {
3970 { 9, &hf_qsig_ct_single , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
3971 { 10, &hf_qsig_ct_multiple , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
3972 { 0, NULL, 0, 0, 0, NULL }
3975 static int
3976 dissect_qsig_ct_CTCargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3977 offset = dissect_ber_choice(actx, tree, tvb, offset,
3978 qsig_ct_CTCargumentExtension_choice, hf_index, ett_qsig_ct_CTCargumentExtension,
3979 NULL);
3981 return offset;
3985 static const ber_sequence_t qsig_ct_CTCompleteArg_sequence[] = {
3986 { &hf_qsig_ct_endDesignation, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ct_EndDesignation },
3987 { &hf_qsig_ct_redirectionNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
3988 { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
3989 { &hf_qsig_ct_redirectionName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
3990 { &hf_qsig_ct_callStatus , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_ct_CallStatus },
3991 { &hf_qsig_ct_argumentExtensionCTC, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTCargumentExtension },
3992 { NULL, 0, 0, 0, NULL }
3995 static int
3996 dissect_qsig_ct_CTCompleteArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3997 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3998 qsig_ct_CTCompleteArg_sequence, hf_index, ett_qsig_ct_CTCompleteArg);
4000 return offset;
4004 static const value_string qsig_ct_CTUargumentExtension_vals[] = {
4005 { 9, "single" },
4006 { 10, "multiple" },
4007 { 0, NULL }
4010 static const ber_choice_t qsig_ct_CTUargumentExtension_choice[] = {
4011 { 9, &hf_qsig_ct_single , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4012 { 10, &hf_qsig_ct_multiple , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
4013 { 0, NULL, 0, 0, 0, NULL }
4016 static int
4017 dissect_qsig_ct_CTUargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4018 offset = dissect_ber_choice(actx, tree, tvb, offset,
4019 qsig_ct_CTUargumentExtension_choice, hf_index, ett_qsig_ct_CTUargumentExtension,
4020 NULL);
4022 return offset;
4026 static const ber_sequence_t qsig_ct_CTUpdateArg_sequence[] = {
4027 { &hf_qsig_ct_redirectionNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
4028 { &hf_qsig_ct_redirectionName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
4029 { &hf_qsig_ct_basicCallInfoElements, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4030 { &hf_qsig_ct_argumentExtensionCTU, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_CTUargumentExtension },
4031 { NULL, 0, 0, 0, NULL }
4034 static int
4035 dissect_qsig_ct_CTUpdateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4036 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4037 qsig_ct_CTUpdateArg_sequence, hf_index, ett_qsig_ct_CTUpdateArg);
4039 return offset;
4043 static const value_string qsig_ct_STargumentExtension_vals[] = {
4044 { 0, "single" },
4045 { 1, "multiple" },
4046 { 0, NULL }
4049 static const ber_choice_t qsig_ct_STargumentExtension_choice[] = {
4050 { 0, &hf_qsig_ct_single , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4051 { 1, &hf_qsig_ct_multiple , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_ct_SEQUENCE_OF_Extension },
4052 { 0, NULL, 0, 0, 0, NULL }
4055 static int
4056 dissect_qsig_ct_STargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4057 offset = dissect_ber_choice(actx, tree, tvb, offset,
4058 qsig_ct_STargumentExtension_choice, hf_index, ett_qsig_ct_STargumentExtension,
4059 NULL);
4061 return offset;
4065 static const ber_sequence_t qsig_ct_SubaddressTransferArg_sequence[] = {
4066 { &hf_qsig_ct_redirectionSubaddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartySubaddress },
4067 { &hf_qsig_ct_argumentExtensionST, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ct_STargumentExtension },
4068 { NULL, 0, 0, 0, NULL }
4071 static int
4072 dissect_qsig_ct_SubaddressTransferArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4073 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4074 qsig_ct_SubaddressTransferArg_sequence, hf_index, ett_qsig_ct_SubaddressTransferArg);
4076 return offset;
4079 /*--- PDUs ---*/
4081 static int dissect_qsig_ct_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4082 int offset = 0;
4083 asn1_ctx_t asn1_ctx;
4084 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4085 offset = dissect_qsig_ct_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_DummyArg_PDU);
4086 return offset;
4088 static int dissect_qsig_ct_CTIdentifyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4089 int offset = 0;
4090 asn1_ctx_t asn1_ctx;
4091 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4092 offset = dissect_qsig_ct_CTIdentifyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU);
4093 return offset;
4095 static int dissect_qsig_ct_CTInitiateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4096 int offset = 0;
4097 asn1_ctx_t asn1_ctx;
4098 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4099 offset = dissect_qsig_ct_CTInitiateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTInitiateArg_PDU);
4100 return offset;
4102 static int dissect_qsig_ct_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4103 int offset = 0;
4104 asn1_ctx_t asn1_ctx;
4105 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4106 offset = dissect_qsig_ct_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_DummyRes_PDU);
4107 return offset;
4109 static int dissect_qsig_ct_CTSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4110 int offset = 0;
4111 asn1_ctx_t asn1_ctx;
4112 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4113 offset = dissect_qsig_ct_CTSetupArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTSetupArg_PDU);
4114 return offset;
4116 static int dissect_qsig_ct_CTActiveArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4117 int offset = 0;
4118 asn1_ctx_t asn1_ctx;
4119 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4120 offset = dissect_qsig_ct_CTActiveArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTActiveArg_PDU);
4121 return offset;
4123 static int dissect_qsig_ct_CTCompleteArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4124 int offset = 0;
4125 asn1_ctx_t asn1_ctx;
4126 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4127 offset = dissect_qsig_ct_CTCompleteArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTCompleteArg_PDU);
4128 return offset;
4130 static int dissect_qsig_ct_CTUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4131 int offset = 0;
4132 asn1_ctx_t asn1_ctx;
4133 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4134 offset = dissect_qsig_ct_CTUpdateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_CTUpdateArg_PDU);
4135 return offset;
4137 static int dissect_qsig_ct_SubaddressTransferArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4138 int offset = 0;
4139 asn1_ctx_t asn1_ctx;
4140 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4141 offset = dissect_qsig_ct_SubaddressTransferArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU);
4142 return offset;
4144 static int dissect_qsig_ct_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4145 int offset = 0;
4146 asn1_ctx_t asn1_ctx;
4147 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4148 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ct_qsig_ct_Extension_PDU);
4149 return offset;
4153 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
4157 static int
4158 dissect_qsig_cc_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4159 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
4161 return offset;
4166 static int
4167 dissect_qsig_cc_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4168 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4170 return offset;
4174 static const ber_sequence_t qsig_cc_SEQUENCE_OF_Extension_sequence_of[1] = {
4175 { &hf_qsig_cc_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4178 static int
4179 dissect_qsig_cc_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4180 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4181 qsig_cc_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cc_SEQUENCE_OF_Extension);
4183 return offset;
4187 static const value_string qsig_cc_CcExtension_vals[] = {
4188 { 0, "none" },
4189 { 1, "single" },
4190 { 2, "multiple" },
4191 { 0, NULL }
4194 static const ber_choice_t qsig_cc_CcExtension_choice[] = {
4195 { 0, &hf_qsig_cc_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cc_NULL },
4196 { 1, &hf_qsig_cc_single , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4197 { 2, &hf_qsig_cc_multiple , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_qsig_cc_SEQUENCE_OF_Extension },
4198 { 0, NULL, 0, 0, 0, NULL }
4201 static int
4202 dissect_qsig_cc_CcExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4203 offset = dissect_ber_choice(actx, tree, tvb, offset,
4204 qsig_cc_CcExtension_choice, hf_index, ett_qsig_cc_CcExtension,
4205 NULL);
4207 return offset;
4211 static const ber_sequence_t qsig_cc_CcRequestArg_sequence[] = {
4212 { &hf_qsig_cc_numberA , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberUnscreened },
4213 { &hf_qsig_cc_numberB , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4214 { &hf_qsig_cc_service , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4215 { &hf_qsig_cc_subaddrA , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4216 { &hf_qsig_cc_subaddrB , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4217 { &hf_qsig_cc_can_retain_service, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4218 { &hf_qsig_cc_retain_sig_connection, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4219 { &hf_qsig_cc_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4220 { NULL, 0, 0, 0, NULL }
4223 static int
4224 dissect_qsig_cc_CcRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4225 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4226 qsig_cc_CcRequestArg_sequence, hf_index, ett_qsig_cc_CcRequestArg);
4228 return offset;
4232 static const ber_sequence_t qsig_cc_CcRequestRes_sequence[] = {
4233 { &hf_qsig_cc_no_path_reservation, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4234 { &hf_qsig_cc_retain_service, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cc_BOOLEAN },
4235 { &hf_qsig_cc_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4236 { NULL, 0, 0, 0, NULL }
4239 static int
4240 dissect_qsig_cc_CcRequestRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4241 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4242 qsig_cc_CcRequestRes_sequence, hf_index, ett_qsig_cc_CcRequestRes);
4244 return offset;
4248 static const ber_sequence_t qsig_cc_T_fullArg_sequence[] = {
4249 { &hf_qsig_cc_numberA_01 , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4250 { &hf_qsig_cc_numberB , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4251 { &hf_qsig_cc_service , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
4252 { &hf_qsig_cc_subaddrA , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4253 { &hf_qsig_cc_subaddrB , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
4254 { &hf_qsig_cc_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cc_CcExtension },
4255 { NULL, 0, 0, 0, NULL }
4258 static int
4259 dissect_qsig_cc_T_fullArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4260 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4261 qsig_cc_T_fullArg_sequence, hf_index, ett_qsig_cc_T_fullArg);
4263 return offset;
4267 static const value_string qsig_cc_CcOptionalArg_vals[] = {
4268 { 0, "fullArg" },
4269 { 1, "extArg" },
4270 { 0, NULL }
4273 static const ber_choice_t qsig_cc_CcOptionalArg_choice[] = {
4274 { 0, &hf_qsig_cc_fullArg , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_cc_T_fullArg },
4275 { 1, &hf_qsig_cc_extArg , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_cc_CcExtension },
4276 { 0, NULL, 0, 0, 0, NULL }
4279 static int
4280 dissect_qsig_cc_CcOptionalArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4281 offset = dissect_ber_choice(actx, tree, tvb, offset,
4282 qsig_cc_CcOptionalArg_choice, hf_index, ett_qsig_cc_CcOptionalArg,
4283 NULL);
4285 return offset;
4288 /*--- PDUs ---*/
4290 static int dissect_qsig_cc_CcRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4291 int offset = 0;
4292 asn1_ctx_t asn1_ctx;
4293 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4294 offset = dissect_qsig_cc_CcRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcRequestArg_PDU);
4295 return offset;
4297 static int dissect_qsig_cc_CcRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4298 int offset = 0;
4299 asn1_ctx_t asn1_ctx;
4300 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4301 offset = dissect_qsig_cc_CcRequestRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcRequestRes_PDU);
4302 return offset;
4304 static int dissect_qsig_cc_CcOptionalArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4305 int offset = 0;
4306 asn1_ctx_t asn1_ctx;
4307 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4308 offset = dissect_qsig_cc_CcOptionalArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcOptionalArg_PDU);
4309 return offset;
4311 static int dissect_qsig_cc_CcExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4312 int offset = 0;
4313 asn1_ctx_t asn1_ctx;
4314 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4315 offset = dissect_qsig_cc_CcExtension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_CcExtension_PDU);
4316 return offset;
4318 static int dissect_qsig_cc_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4319 int offset = 0;
4320 asn1_ctx_t asn1_ctx;
4321 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4322 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cc_qsig_cc_Extension_PDU);
4323 return offset;
4327 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
4330 static const asn_namedbit qsig_co_ServiceList_bits[] = {
4331 { 0, &hf_qsig_co_ServiceList_callOffer, -1, -1, "callOffer", NULL },
4332 { 0, NULL, 0, 0, NULL, NULL }
4335 static int
4336 dissect_qsig_co_ServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4337 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
4338 qsig_co_ServiceList_bits, hf_index, ett_qsig_co_ServiceList,
4339 NULL);
4341 return offset;
4345 static const ber_sequence_t qsig_co_T_extendedServiceList_sequence[] = {
4346 { &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4347 { &hf_qsig_co_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4348 { NULL, 0, 0, 0, NULL }
4351 static int
4352 dissect_qsig_co_T_extendedServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4353 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4354 qsig_co_T_extendedServiceList_sequence, hf_index, ett_qsig_co_T_extendedServiceList);
4356 return offset;
4360 static const value_string qsig_co_PathRetainArg_vals[] = {
4361 { 0, "serviceList" },
4362 { 1, "extendedServiceList" },
4363 { 0, NULL }
4366 static const ber_choice_t qsig_co_PathRetainArg_choice[] = {
4367 { 0, &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4368 { 1, &hf_qsig_co_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_co_T_extendedServiceList },
4369 { 0, NULL, 0, 0, 0, NULL }
4372 static int
4373 dissect_qsig_co_PathRetainArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4374 offset = dissect_ber_choice(actx, tree, tvb, offset,
4375 qsig_co_PathRetainArg_choice, hf_index, ett_qsig_co_PathRetainArg,
4376 NULL);
4378 return offset;
4382 static const ber_sequence_t qsig_co_T_extendedServiceList_01_sequence[] = {
4383 { &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4384 { &hf_qsig_co_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4385 { NULL, 0, 0, 0, NULL }
4388 static int
4389 dissect_qsig_co_T_extendedServiceList_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4390 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4391 qsig_co_T_extendedServiceList_01_sequence, hf_index, ett_qsig_co_T_extendedServiceList_01);
4393 return offset;
4397 static const value_string qsig_co_ServiceAvailableArg_vals[] = {
4398 { 0, "serviceList" },
4399 { 1, "extendedServiceList" },
4400 { 0, NULL }
4403 static const ber_choice_t qsig_co_ServiceAvailableArg_choice[] = {
4404 { 0, &hf_qsig_co_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_co_ServiceList },
4405 { 1, &hf_qsig_co_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_co_T_extendedServiceList_01 },
4406 { 0, NULL, 0, 0, 0, NULL }
4409 static int
4410 dissect_qsig_co_ServiceAvailableArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4411 offset = dissect_ber_choice(actx, tree, tvb, offset,
4412 qsig_co_ServiceAvailableArg_choice, hf_index, ett_qsig_co_ServiceAvailableArg,
4413 NULL);
4415 return offset;
4420 static int
4421 dissect_qsig_co_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4422 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4424 return offset;
4428 static const ber_sequence_t qsig_co_SEQUENCE_OF_Extension_sequence_of[1] = {
4429 { &hf_qsig_co_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4432 static int
4433 dissect_qsig_co_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4434 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4435 qsig_co_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_co_SEQUENCE_OF_Extension);
4437 return offset;
4441 static const value_string qsig_co_DummyArg_vals[] = {
4442 { 0, "null" },
4443 { 1, "extension" },
4444 { 2, "sequenceOfExtn" },
4445 { 0, NULL }
4448 static const ber_choice_t qsig_co_DummyArg_choice[] = {
4449 { 0, &hf_qsig_co_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_co_NULL },
4450 { 1, &hf_qsig_co_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4451 { 2, &hf_qsig_co_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_co_SEQUENCE_OF_Extension },
4452 { 0, NULL, 0, 0, 0, NULL }
4455 static int
4456 dissect_qsig_co_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4457 offset = dissect_ber_choice(actx, tree, tvb, offset,
4458 qsig_co_DummyArg_choice, hf_index, ett_qsig_co_DummyArg,
4459 NULL);
4461 return offset;
4465 static const value_string qsig_co_DummyRes_vals[] = {
4466 { 0, "null" },
4467 { 1, "extension" },
4468 { 2, "sequenceOfExtn" },
4469 { 0, NULL }
4472 static const ber_choice_t qsig_co_DummyRes_choice[] = {
4473 { 0, &hf_qsig_co_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_co_NULL },
4474 { 1, &hf_qsig_co_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4475 { 2, &hf_qsig_co_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_co_SEQUENCE_OF_Extension },
4476 { 0, NULL, 0, 0, 0, NULL }
4479 static int
4480 dissect_qsig_co_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4481 offset = dissect_ber_choice(actx, tree, tvb, offset,
4482 qsig_co_DummyRes_choice, hf_index, ett_qsig_co_DummyRes,
4483 NULL);
4485 return offset;
4488 /*--- PDUs ---*/
4490 static int dissect_qsig_co_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4491 int offset = 0;
4492 asn1_ctx_t asn1_ctx;
4493 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4494 offset = dissect_qsig_co_PathRetainArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_PathRetainArg_PDU);
4495 return offset;
4497 static int dissect_qsig_co_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4498 int offset = 0;
4499 asn1_ctx_t asn1_ctx;
4500 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4501 offset = dissect_qsig_co_ServiceAvailableArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_ServiceAvailableArg_PDU);
4502 return offset;
4504 static int dissect_qsig_co_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4505 int offset = 0;
4506 asn1_ctx_t asn1_ctx;
4507 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4508 offset = dissect_qsig_co_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_DummyArg_PDU);
4509 return offset;
4511 static int dissect_qsig_co_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4512 int offset = 0;
4513 asn1_ctx_t asn1_ctx;
4514 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4515 offset = dissect_qsig_co_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_DummyRes_PDU);
4516 return offset;
4518 static int dissect_qsig_co_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4519 int offset = 0;
4520 asn1_ctx_t asn1_ctx;
4521 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4522 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_co_qsig_co_Extension_PDU);
4523 return offset;
4527 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
4531 static int
4532 dissect_qsig_dnd_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4533 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4535 return offset;
4539 static const ber_sequence_t qsig_dnd_SEQUENCE_OF_Extension_sequence_of[1] = {
4540 { &hf_qsig_dnd_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4543 static int
4544 dissect_qsig_dnd_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4545 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4546 qsig_dnd_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_dnd_SEQUENCE_OF_Extension);
4548 return offset;
4552 static const value_string qsig_dnd_DummyArg_vals[] = {
4553 { 0, "null" },
4554 { 1, "extension" },
4555 { 2, "sequenceOfExtn" },
4556 { 0, NULL }
4559 static const ber_choice_t qsig_dnd_DummyArg_choice[] = {
4560 { 0, &hf_qsig_dnd_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_NULL },
4561 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4562 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4563 { 0, NULL, 0, 0, 0, NULL }
4566 static int
4567 dissect_qsig_dnd_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4568 offset = dissect_ber_choice(actx, tree, tvb, offset,
4569 qsig_dnd_DummyArg_choice, hf_index, ett_qsig_dnd_DummyArg,
4570 NULL);
4572 return offset;
4576 static const value_string qsig_dnd_DummyRes_vals[] = {
4577 { 0, "null" },
4578 { 1, "extension" },
4579 { 2, "sequenceOfExtn" },
4580 { 0, NULL }
4583 static const ber_choice_t qsig_dnd_DummyRes_choice[] = {
4584 { 0, &hf_qsig_dnd_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_NULL },
4585 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4586 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4587 { 0, NULL, 0, 0, 0, NULL }
4590 static int
4591 dissect_qsig_dnd_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4592 offset = dissect_ber_choice(actx, tree, tvb, offset,
4593 qsig_dnd_DummyRes_choice, hf_index, ett_qsig_dnd_DummyRes,
4594 NULL);
4596 return offset;
4600 static const value_string qsig_dnd_DNDAargumentExtension_vals[] = {
4601 { 1, "extension" },
4602 { 2, "sequenceOfExtn" },
4603 { 0, NULL }
4606 static const ber_choice_t qsig_dnd_DNDAargumentExtension_choice[] = {
4607 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4608 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4609 { 0, NULL, 0, 0, 0, NULL }
4612 static int
4613 dissect_qsig_dnd_DNDAargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4614 offset = dissect_ber_choice(actx, tree, tvb, offset,
4615 qsig_dnd_DNDAargumentExtension_choice, hf_index, ett_qsig_dnd_DNDAargumentExtension,
4616 NULL);
4618 return offset;
4622 static const ber_sequence_t qsig_dnd_DNDActivateArg_sequence[] = {
4623 { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4624 { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4625 { &hf_qsig_dnd_argumentExtensionDNDA, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDAargumentExtension },
4626 { NULL, 0, 0, 0, NULL }
4629 static int
4630 dissect_qsig_dnd_DNDActivateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4631 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4632 qsig_dnd_DNDActivateArg_sequence, hf_index, ett_qsig_dnd_DNDActivateArg);
4634 return offset;
4638 static const value_string qsig_dnd_DNDProtectionLevel_vals[] = {
4639 { 0, "lowProtection" },
4640 { 1, "mediumProtection" },
4641 { 2, "highProtection" },
4642 { 3, "fullProtection" },
4643 { 0, NULL }
4647 static int
4648 dissect_qsig_dnd_DNDProtectionLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4649 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4650 NULL);
4652 return offset;
4656 static const ber_sequence_t qsig_dnd_T_status_item_sequence[] = {
4657 { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4658 { &hf_qsig_dnd_dndProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDProtectionLevel },
4659 { NULL, 0, 0, 0, NULL }
4662 static int
4663 dissect_qsig_dnd_T_status_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4664 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4665 qsig_dnd_T_status_item_sequence, hf_index, ett_qsig_dnd_T_status_item);
4667 return offset;
4671 static const ber_sequence_t qsig_dnd_T_status_set_of[1] = {
4672 { &hf_qsig_dnd_status_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_item },
4675 static int
4676 dissect_qsig_dnd_T_status(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4677 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4678 qsig_dnd_T_status_set_of, hf_index, ett_qsig_dnd_T_status);
4680 return offset;
4684 static const value_string qsig_dnd_T_resultExtension_vals[] = {
4685 { 1, "extension" },
4686 { 2, "sequenceOfExtn" },
4687 { 0, NULL }
4690 static const ber_choice_t qsig_dnd_T_resultExtension_choice[] = {
4691 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4692 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4693 { 0, NULL, 0, 0, 0, NULL }
4696 static int
4697 dissect_qsig_dnd_T_resultExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4698 offset = dissect_ber_choice(actx, tree, tvb, offset,
4699 qsig_dnd_T_resultExtension_choice, hf_index, ett_qsig_dnd_T_resultExtension,
4700 NULL);
4702 return offset;
4706 static const ber_sequence_t qsig_dnd_DNDActivateRes_sequence[] = {
4707 { &hf_qsig_dnd_status , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status },
4708 { &hf_qsig_dnd_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_T_resultExtension },
4709 { NULL, 0, 0, 0, NULL }
4712 static int
4713 dissect_qsig_dnd_DNDActivateRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4714 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4715 qsig_dnd_DNDActivateRes_sequence, hf_index, ett_qsig_dnd_DNDActivateRes);
4717 return offset;
4721 static const value_string qsig_dnd_DNDDargumentExtension_vals[] = {
4722 { 1, "extension" },
4723 { 2, "sequenceOfExtn" },
4724 { 0, NULL }
4727 static const ber_choice_t qsig_dnd_DNDDargumentExtension_choice[] = {
4728 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4729 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4730 { 0, NULL, 0, 0, 0, NULL }
4733 static int
4734 dissect_qsig_dnd_DNDDargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4735 offset = dissect_ber_choice(actx, tree, tvb, offset,
4736 qsig_dnd_DNDDargumentExtension_choice, hf_index, ett_qsig_dnd_DNDDargumentExtension,
4737 NULL);
4739 return offset;
4743 static const ber_sequence_t qsig_dnd_DNDDeactivateArg_sequence[] = {
4744 { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4745 { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4746 { &hf_qsig_dnd_argumentExtensionDNDD, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDDargumentExtension },
4747 { NULL, 0, 0, 0, NULL }
4750 static int
4751 dissect_qsig_dnd_DNDDeactivateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4752 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4753 qsig_dnd_DNDDeactivateArg_sequence, hf_index, ett_qsig_dnd_DNDDeactivateArg);
4755 return offset;
4759 static const value_string qsig_dnd_DNDIargumentExtension_vals[] = {
4760 { 1, "extension" },
4761 { 2, "sequenceOfExtn" },
4762 { 0, NULL }
4765 static const ber_choice_t qsig_dnd_DNDIargumentExtension_choice[] = {
4766 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4767 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4768 { 0, NULL, 0, 0, 0, NULL }
4771 static int
4772 dissect_qsig_dnd_DNDIargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4773 offset = dissect_ber_choice(actx, tree, tvb, offset,
4774 qsig_dnd_DNDIargumentExtension_choice, hf_index, ett_qsig_dnd_DNDIargumentExtension,
4775 NULL);
4777 return offset;
4781 static const ber_sequence_t qsig_dnd_DNDInterrogateArg_sequence[] = {
4782 { &hf_qsig_dnd_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
4783 { &hf_qsig_dnd_argumentExtensionDNDI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDIargumentExtension },
4784 { NULL, 0, 0, 0, NULL }
4787 static int
4788 dissect_qsig_dnd_DNDInterrogateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4789 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4790 qsig_dnd_DNDInterrogateArg_sequence, hf_index, ett_qsig_dnd_DNDInterrogateArg);
4792 return offset;
4796 static const ber_sequence_t qsig_dnd_T_status_item_01_sequence[] = {
4797 { &hf_qsig_dnd_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
4798 { &hf_qsig_dnd_dndProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDProtectionLevel },
4799 { NULL, 0, 0, 0, NULL }
4802 static int
4803 dissect_qsig_dnd_T_status_item_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4804 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4805 qsig_dnd_T_status_item_01_sequence, hf_index, ett_qsig_dnd_T_status_item_01);
4807 return offset;
4811 static const ber_sequence_t qsig_dnd_T_status_01_set_of[1] = {
4812 { &hf_qsig_dnd_status_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_item_01 },
4815 static int
4816 dissect_qsig_dnd_T_status_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4817 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4818 qsig_dnd_T_status_01_set_of, hf_index, ett_qsig_dnd_T_status_01);
4820 return offset;
4824 static const value_string qsig_dnd_T_resultExtension_01_vals[] = {
4825 { 1, "extension" },
4826 { 2, "sequenceOfExtn" },
4827 { 0, NULL }
4830 static const ber_choice_t qsig_dnd_T_resultExtension_01_choice[] = {
4831 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4832 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4833 { 0, NULL, 0, 0, 0, NULL }
4836 static int
4837 dissect_qsig_dnd_T_resultExtension_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4838 offset = dissect_ber_choice(actx, tree, tvb, offset,
4839 qsig_dnd_T_resultExtension_01_choice, hf_index, ett_qsig_dnd_T_resultExtension_01,
4840 NULL);
4842 return offset;
4846 static const ber_sequence_t qsig_dnd_DNDInterrogateRes_sequence[] = {
4847 { &hf_qsig_dnd_status_01 , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_status_01 },
4848 { &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 },
4849 { NULL, 0, 0, 0, NULL }
4852 static int
4853 dissect_qsig_dnd_DNDInterrogateRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4854 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4855 qsig_dnd_DNDInterrogateRes_sequence, hf_index, ett_qsig_dnd_DNDInterrogateRes);
4857 return offset;
4861 static const value_string qsig_dnd_DNDOCapabilityLevel_vals[] = {
4862 { 1, "overrideLowProt" },
4863 { 2, "overrideMediumProt" },
4864 { 3, "overrideHighProt" },
4865 { 0, NULL }
4869 static int
4870 dissect_qsig_dnd_DNDOCapabilityLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4871 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4872 NULL);
4874 return offset;
4878 static const value_string qsig_dnd_DNDOargumentExtension_vals[] = {
4879 { 1, "extension" },
4880 { 2, "sequenceOfExtn" },
4881 { 0, NULL }
4884 static const ber_choice_t qsig_dnd_DNDOargumentExtension_choice[] = {
4885 { 1, &hf_qsig_dnd_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
4886 { 2, &hf_qsig_dnd_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_dnd_SEQUENCE_OF_Extension },
4887 { 0, NULL, 0, 0, 0, NULL }
4890 static int
4891 dissect_qsig_dnd_DNDOargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4892 offset = dissect_ber_choice(actx, tree, tvb, offset,
4893 qsig_dnd_DNDOargumentExtension_choice, hf_index, ett_qsig_dnd_DNDOargumentExtension,
4894 NULL);
4896 return offset;
4900 static const ber_sequence_t qsig_dnd_DNDOverrideArg_sequence[] = {
4901 { &hf_qsig_dnd_dndoCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_DNDOCapabilityLevel },
4902 { &hf_qsig_dnd_argumentExtensionDNDO, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_dnd_DNDOargumentExtension },
4903 { NULL, 0, 0, 0, NULL }
4906 static int
4907 dissect_qsig_dnd_DNDOverrideArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4908 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4909 qsig_dnd_DNDOverrideArg_sequence, hf_index, ett_qsig_dnd_DNDOverrideArg);
4911 return offset;
4915 static const asn_namedbit qsig_dnd_ServiceList_bits[] = {
4916 { 1, &hf_qsig_dnd_ServiceList_dndo_low, -1, -1, "dndo-low", NULL },
4917 { 2, &hf_qsig_dnd_ServiceList_dndo_medium, -1, -1, "dndo-medium", NULL },
4918 { 3, &hf_qsig_dnd_ServiceList_dndo_high, -1, -1, "dndo-high", NULL },
4919 { 0, NULL, 0, 0, NULL, NULL }
4922 static int
4923 dissect_qsig_dnd_ServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4924 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
4925 qsig_dnd_ServiceList_bits, hf_index, ett_qsig_dnd_ServiceList,
4926 NULL);
4928 return offset;
4932 static const ber_sequence_t qsig_dnd_T_extendedServiceList_sequence[] = {
4933 { &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4934 { &hf_qsig_dnd_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4935 { NULL, 0, 0, 0, NULL }
4938 static int
4939 dissect_qsig_dnd_T_extendedServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4940 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4941 qsig_dnd_T_extendedServiceList_sequence, hf_index, ett_qsig_dnd_T_extendedServiceList);
4943 return offset;
4947 static const value_string qsig_dnd_PathRetainArg_vals[] = {
4948 { 0, "serviceList" },
4949 { 1, "extendedServiceList" },
4950 { 0, NULL }
4953 static const ber_choice_t qsig_dnd_PathRetainArg_choice[] = {
4954 { 0, &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4955 { 1, &hf_qsig_dnd_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_extendedServiceList },
4956 { 0, NULL, 0, 0, 0, NULL }
4959 static int
4960 dissect_qsig_dnd_PathRetainArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4961 offset = dissect_ber_choice(actx, tree, tvb, offset,
4962 qsig_dnd_PathRetainArg_choice, hf_index, ett_qsig_dnd_PathRetainArg,
4963 NULL);
4965 return offset;
4969 static const ber_sequence_t qsig_dnd_T_extendedServiceList_01_sequence[] = {
4970 { &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4971 { &hf_qsig_dnd_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
4972 { NULL, 0, 0, 0, NULL }
4975 static int
4976 dissect_qsig_dnd_T_extendedServiceList_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4977 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4978 qsig_dnd_T_extendedServiceList_01_sequence, hf_index, ett_qsig_dnd_T_extendedServiceList_01);
4980 return offset;
4984 static const value_string qsig_dnd_ServiceAvailableArg_vals[] = {
4985 { 0, "serviceList" },
4986 { 1, "extendedServiceList" },
4987 { 0, NULL }
4990 static const ber_choice_t qsig_dnd_ServiceAvailableArg_choice[] = {
4991 { 0, &hf_qsig_dnd_serviceList, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_ServiceList },
4992 { 1, &hf_qsig_dnd_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_dnd_T_extendedServiceList_01 },
4993 { 0, NULL, 0, 0, 0, NULL }
4996 static int
4997 dissect_qsig_dnd_ServiceAvailableArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4998 offset = dissect_ber_choice(actx, tree, tvb, offset,
4999 qsig_dnd_ServiceAvailableArg_choice, hf_index, ett_qsig_dnd_ServiceAvailableArg,
5000 NULL);
5002 return offset;
5005 /*--- PDUs ---*/
5007 static int dissect_qsig_dnd_DNDActivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5008 int offset = 0;
5009 asn1_ctx_t asn1_ctx;
5010 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5011 offset = dissect_qsig_dnd_DNDActivateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU);
5012 return offset;
5014 static int dissect_qsig_dnd_DNDActivateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5015 int offset = 0;
5016 asn1_ctx_t asn1_ctx;
5017 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5018 offset = dissect_qsig_dnd_DNDActivateRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU);
5019 return offset;
5021 static int dissect_qsig_dnd_DNDDeactivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5022 int offset = 0;
5023 asn1_ctx_t asn1_ctx;
5024 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5025 offset = dissect_qsig_dnd_DNDDeactivateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU);
5026 return offset;
5028 static int dissect_qsig_dnd_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5029 int offset = 0;
5030 asn1_ctx_t asn1_ctx;
5031 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5032 offset = dissect_qsig_dnd_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DummyRes_PDU);
5033 return offset;
5035 static int dissect_qsig_dnd_DNDInterrogateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5036 int offset = 0;
5037 asn1_ctx_t asn1_ctx;
5038 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5039 offset = dissect_qsig_dnd_DNDInterrogateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU);
5040 return offset;
5042 static int dissect_qsig_dnd_DNDInterrogateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5043 int offset = 0;
5044 asn1_ctx_t asn1_ctx;
5045 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5046 offset = dissect_qsig_dnd_DNDInterrogateRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU);
5047 return offset;
5049 static int dissect_qsig_dnd_DNDOverrideArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5050 int offset = 0;
5051 asn1_ctx_t asn1_ctx;
5052 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5053 offset = dissect_qsig_dnd_DNDOverrideArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU);
5054 return offset;
5056 static int dissect_qsig_dnd_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5057 int offset = 0;
5058 asn1_ctx_t asn1_ctx;
5059 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5060 offset = dissect_qsig_dnd_PathRetainArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU);
5061 return offset;
5063 static int dissect_qsig_dnd_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5064 int offset = 0;
5065 asn1_ctx_t asn1_ctx;
5066 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5067 offset = dissect_qsig_dnd_ServiceAvailableArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU);
5068 return offset;
5070 static int dissect_qsig_dnd_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5071 int offset = 0;
5072 asn1_ctx_t asn1_ctx;
5073 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5074 offset = dissect_qsig_dnd_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_DummyArg_PDU);
5075 return offset;
5077 static int dissect_qsig_dnd_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5078 int offset = 0;
5079 asn1_ctx_t asn1_ctx;
5080 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5081 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_dnd_qsig_dnd_Extension_PDU);
5082 return offset;
5086 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
5089 static const asn_namedbit qsig_ci_ServiceList_bits[] = {
5090 { 4, &hf_qsig_ci_ServiceList_ci_low, -1, -1, "ci-low", NULL },
5091 { 5, &hf_qsig_ci_ServiceList_ci_medium, -1, -1, "ci-medium", NULL },
5092 { 6, &hf_qsig_ci_ServiceList_ci_high, -1, -1, "ci-high", NULL },
5093 { 0, NULL, 0, 0, NULL, NULL }
5096 static int
5097 dissect_qsig_ci_ServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5098 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
5099 qsig_ci_ServiceList_bits, hf_index, ett_qsig_ci_ServiceList,
5100 NULL);
5102 return offset;
5106 static const ber_sequence_t qsig_ci_T_extendedServiceList_sequence[] = {
5107 { &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5108 { &hf_qsig_ci_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5109 { NULL, 0, 0, 0, NULL }
5112 static int
5113 dissect_qsig_ci_T_extendedServiceList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5114 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5115 qsig_ci_T_extendedServiceList_sequence, hf_index, ett_qsig_ci_T_extendedServiceList);
5117 return offset;
5121 static const value_string qsig_ci_PathRetainArg_vals[] = {
5122 { 0, "serviceList" },
5123 { 1, "extendedServiceList" },
5124 { 0, NULL }
5127 static const ber_choice_t qsig_ci_PathRetainArg_choice[] = {
5128 { 0, &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5129 { 1, &hf_qsig_ci_extendedServiceList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_T_extendedServiceList },
5130 { 0, NULL, 0, 0, 0, NULL }
5133 static int
5134 dissect_qsig_ci_PathRetainArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5135 offset = dissect_ber_choice(actx, tree, tvb, offset,
5136 qsig_ci_PathRetainArg_choice, hf_index, ett_qsig_ci_PathRetainArg,
5137 NULL);
5139 return offset;
5143 static const ber_sequence_t qsig_ci_T_extendedServiceList_01_sequence[] = {
5144 { &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5145 { &hf_qsig_ci_extension , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5146 { NULL, 0, 0, 0, NULL }
5149 static int
5150 dissect_qsig_ci_T_extendedServiceList_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5151 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5152 qsig_ci_T_extendedServiceList_01_sequence, hf_index, ett_qsig_ci_T_extendedServiceList_01);
5154 return offset;
5158 static const value_string qsig_ci_ServiceAvailableArg_vals[] = {
5159 { 0, "serviceList" },
5160 { 1, "extendedServiceList" },
5161 { 0, NULL }
5164 static const ber_choice_t qsig_ci_ServiceAvailableArg_choice[] = {
5165 { 0, &hf_qsig_ci_serviceList , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_ServiceList },
5166 { 1, &hf_qsig_ci_extendedServiceList_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_T_extendedServiceList_01 },
5167 { 0, NULL, 0, 0, 0, NULL }
5170 static int
5171 dissect_qsig_ci_ServiceAvailableArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5172 offset = dissect_ber_choice(actx, tree, tvb, offset,
5173 qsig_ci_ServiceAvailableArg_choice, hf_index, ett_qsig_ci_ServiceAvailableArg,
5174 NULL);
5176 return offset;
5181 static int
5182 dissect_qsig_ci_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5183 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5185 return offset;
5189 static const ber_sequence_t qsig_ci_SEQUENCE_OF_Extension_sequence_of[1] = {
5190 { &hf_qsig_ci_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5193 static int
5194 dissect_qsig_ci_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5195 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5196 qsig_ci_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ci_SEQUENCE_OF_Extension);
5198 return offset;
5202 static const value_string qsig_ci_DummyArg_vals[] = {
5203 { 0, "null" },
5204 { 1, "extension" },
5205 { 2, "sequenceOfExtn" },
5206 { 0, NULL }
5209 static const ber_choice_t qsig_ci_DummyArg_choice[] = {
5210 { 0, &hf_qsig_ci_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_NULL },
5211 { 1, &hf_qsig_ci_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5212 { 2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5213 { 0, NULL, 0, 0, 0, NULL }
5216 static int
5217 dissect_qsig_ci_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5218 offset = dissect_ber_choice(actx, tree, tvb, offset,
5219 qsig_ci_DummyArg_choice, hf_index, ett_qsig_ci_DummyArg,
5220 NULL);
5222 return offset;
5226 static const value_string qsig_ci_DummyRes_vals[] = {
5227 { 0, "null" },
5228 { 1, "extension" },
5229 { 2, "sequenceOfExtn" },
5230 { 0, NULL }
5233 static const ber_choice_t qsig_ci_DummyRes_choice[] = {
5234 { 0, &hf_qsig_ci_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_NULL },
5235 { 1, &hf_qsig_ci_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5236 { 2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5237 { 0, NULL, 0, 0, 0, NULL }
5240 static int
5241 dissect_qsig_ci_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5242 offset = dissect_ber_choice(actx, tree, tvb, offset,
5243 qsig_ci_DummyRes_choice, hf_index, ett_qsig_ci_DummyRes,
5244 NULL);
5246 return offset;
5250 static const value_string qsig_ci_CICapabilityLevel_vals[] = {
5251 { 1, "intrusionLowProt" },
5252 { 2, "intrusionMediumProt" },
5253 { 3, "intrusionHighProt" },
5254 { 0, NULL }
5258 static int
5259 dissect_qsig_ci_CICapabilityLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5260 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5261 NULL);
5263 return offset;
5267 static const value_string qsig_ci_T_argumentExtension_vals[] = {
5268 { 1, "extension" },
5269 { 2, "sequenceOfExtn" },
5270 { 0, NULL }
5273 static const ber_choice_t qsig_ci_T_argumentExtension_choice[] = {
5274 { 1, &hf_qsig_ci_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5275 { 2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5276 { 0, NULL, 0, 0, 0, NULL }
5279 static int
5280 dissect_qsig_ci_T_argumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5281 offset = dissect_ber_choice(actx, tree, tvb, offset,
5282 qsig_ci_T_argumentExtension_choice, hf_index, ett_qsig_ci_T_argumentExtension,
5283 NULL);
5285 return offset;
5289 static const ber_sequence_t qsig_ci_CIRequestArg_sequence[] = {
5290 { &hf_qsig_ci_ciCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CICapabilityLevel },
5291 { &hf_qsig_ci_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ci_T_argumentExtension },
5292 { NULL, 0, 0, 0, NULL }
5295 static int
5296 dissect_qsig_ci_CIRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5297 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5298 qsig_ci_CIRequestArg_sequence, hf_index, ett_qsig_ci_CIRequestArg);
5300 return offset;
5304 static const value_string qsig_ci_CIUnwantedUserStatus_vals[] = {
5305 { 0, "unwantedUserIntruded" },
5306 { 1, "unwantedUserIsolated" },
5307 { 0, NULL }
5311 static int
5312 dissect_qsig_ci_CIUnwantedUserStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5313 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5314 NULL);
5316 return offset;
5320 static const value_string qsig_ci_T_resultExtension_vals[] = {
5321 { 1, "extension" },
5322 { 2, "sequenceOfExtn" },
5323 { 0, NULL }
5326 static const ber_choice_t qsig_ci_T_resultExtension_choice[] = {
5327 { 1, &hf_qsig_ci_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5328 { 2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5329 { 0, NULL, 0, 0, 0, NULL }
5332 static int
5333 dissect_qsig_ci_T_resultExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5334 offset = dissect_ber_choice(actx, tree, tvb, offset,
5335 qsig_ci_T_resultExtension_choice, hf_index, ett_qsig_ci_T_resultExtension,
5336 NULL);
5338 return offset;
5342 static const ber_sequence_t qsig_ci_CIRequestRes_sequence[] = {
5343 { &hf_qsig_ci_ciUnwantedUserStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CIUnwantedUserStatus },
5344 { &hf_qsig_ci_resultExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ci_T_resultExtension },
5345 { NULL, 0, 0, 0, NULL }
5348 static int
5349 dissect_qsig_ci_CIRequestRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5350 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5351 qsig_ci_CIRequestRes_sequence, hf_index, ett_qsig_ci_CIRequestRes);
5353 return offset;
5357 static const value_string qsig_ci_CIProtectionLevel_vals[] = {
5358 { 0, "lowProtection" },
5359 { 1, "mediumProtection" },
5360 { 2, "highProtection" },
5361 { 3, "fullProtection" },
5362 { 0, NULL }
5366 static int
5367 dissect_qsig_ci_CIProtectionLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5368 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5369 NULL);
5371 return offset;
5375 static const value_string qsig_ci_T_resultExtension_01_vals[] = {
5376 { 1, "extension" },
5377 { 2, "sequenceOfExtn" },
5378 { 0, NULL }
5381 static const ber_choice_t qsig_ci_T_resultExtension_01_choice[] = {
5382 { 1, &hf_qsig_ci_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5383 { 2, &hf_qsig_ci_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ci_SEQUENCE_OF_Extension },
5384 { 0, NULL, 0, 0, 0, NULL }
5387 static int
5388 dissect_qsig_ci_T_resultExtension_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5389 offset = dissect_ber_choice(actx, tree, tvb, offset,
5390 qsig_ci_T_resultExtension_01_choice, hf_index, ett_qsig_ci_T_resultExtension_01,
5391 NULL);
5393 return offset;
5397 static const ber_sequence_t qsig_ci_CIGetCIPLRes_sequence[] = {
5398 { &hf_qsig_ci_ciProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_ci_CIProtectionLevel },
5399 { &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 },
5400 { NULL, 0, 0, 0, NULL }
5403 static int
5404 dissect_qsig_ci_CIGetCIPLRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5405 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5406 qsig_ci_CIGetCIPLRes_sequence, hf_index, ett_qsig_ci_CIGetCIPLRes);
5408 return offset;
5411 /*--- PDUs ---*/
5413 static int dissect_qsig_ci_PathRetainArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5414 int offset = 0;
5415 asn1_ctx_t asn1_ctx;
5416 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5417 offset = dissect_qsig_ci_PathRetainArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_PathRetainArg_PDU);
5418 return offset;
5420 static int dissect_qsig_ci_ServiceAvailableArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5421 int offset = 0;
5422 asn1_ctx_t asn1_ctx;
5423 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5424 offset = dissect_qsig_ci_ServiceAvailableArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU);
5425 return offset;
5427 static int dissect_qsig_ci_CIRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5428 int offset = 0;
5429 asn1_ctx_t asn1_ctx;
5430 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5431 offset = dissect_qsig_ci_CIRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIRequestArg_PDU);
5432 return offset;
5434 static int dissect_qsig_ci_CIRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5435 int offset = 0;
5436 asn1_ctx_t asn1_ctx;
5437 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5438 offset = dissect_qsig_ci_CIRequestRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIRequestRes_PDU);
5439 return offset;
5441 static int dissect_qsig_ci_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5442 int offset = 0;
5443 asn1_ctx_t asn1_ctx;
5444 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5445 offset = dissect_qsig_ci_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_DummyArg_PDU);
5446 return offset;
5448 static int dissect_qsig_ci_CIGetCIPLRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5449 int offset = 0;
5450 asn1_ctx_t asn1_ctx;
5451 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5452 offset = dissect_qsig_ci_CIGetCIPLRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU);
5453 return offset;
5455 static int dissect_qsig_ci_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5456 int offset = 0;
5457 asn1_ctx_t asn1_ctx;
5458 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5459 offset = dissect_qsig_ci_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_DummyRes_PDU);
5460 return offset;
5462 static int dissect_qsig_ci_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
5463 int offset = 0;
5464 asn1_ctx_t asn1_ctx;
5465 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
5466 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ci_qsig_ci_Extension_PDU);
5467 return offset;
5471 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
5475 static int
5476 dissect_qsig_aoc_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5477 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5479 return offset;
5483 static const value_string qsig_aoc_ChargedItem_vals[] = {
5484 { 0, "basicCommunication" },
5485 { 1, "callAttempt" },
5486 { 2, "callSetup" },
5487 { 3, "userToUserInfo" },
5488 { 4, "operationOfSupplementaryServ" },
5489 { 0, NULL }
5493 static int
5494 dissect_qsig_aoc_ChargedItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5495 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5496 NULL);
5498 return offset;
5503 static int
5504 dissect_qsig_aoc_Currency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5505 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
5506 actx, tree, tvb, offset, hf_index,
5507 NULL);
5509 return offset;
5514 static int
5515 dissect_qsig_aoc_CurrencyAmount(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5516 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5517 NULL);
5519 return offset;
5523 static const value_string qsig_aoc_Multiplier_vals[] = {
5524 { 0, "oneThousandth" },
5525 { 1, "oneHundredth" },
5526 { 2, "oneTenth" },
5527 { 3, "one" },
5528 { 4, "ten" },
5529 { 5, "hundred" },
5530 { 6, "thousand" },
5531 { 0, NULL }
5535 static int
5536 dissect_qsig_aoc_Multiplier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5537 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5538 NULL);
5540 return offset;
5544 static const ber_sequence_t qsig_aoc_Amount_sequence[] = {
5545 { &hf_qsig_aoc_currencyAmount, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_CurrencyAmount },
5546 { &hf_qsig_aoc_multiplier , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Multiplier },
5547 { NULL, 0, 0, 0, NULL }
5550 static int
5551 dissect_qsig_aoc_Amount(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5552 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5553 qsig_aoc_Amount_sequence, hf_index, ett_qsig_aoc_Amount);
5555 return offset;
5559 static const value_string qsig_aoc_ChargingType_vals[] = {
5560 { 0, "continuousCharging" },
5561 { 1, "stepFunction" },
5562 { 0, NULL }
5566 static int
5567 dissect_qsig_aoc_ChargingType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5568 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5569 NULL);
5571 return offset;
5576 static int
5577 dissect_qsig_aoc_LengthOfTimeUnit(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5578 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5579 NULL);
5581 return offset;
5585 static const value_string qsig_aoc_Scale_vals[] = {
5586 { 0, "oneHundredthSecond" },
5587 { 1, "oneTenthSecond" },
5588 { 2, "oneSecond" },
5589 { 3, "tenSeconds" },
5590 { 4, "oneMinute" },
5591 { 5, "oneHour" },
5592 { 6, "twentyFourHours" },
5593 { 0, NULL }
5597 static int
5598 dissect_qsig_aoc_Scale(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5599 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5600 NULL);
5602 return offset;
5606 static const ber_sequence_t qsig_aoc_Time_sequence[] = {
5607 { &hf_qsig_aoc_lengthOfTimeUnit, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_LengthOfTimeUnit },
5608 { &hf_qsig_aoc_scale , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Scale },
5609 { NULL, 0, 0, 0, NULL }
5612 static int
5613 dissect_qsig_aoc_Time(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5614 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5615 qsig_aoc_Time_sequence, hf_index, ett_qsig_aoc_Time);
5617 return offset;
5621 static const ber_sequence_t qsig_aoc_DurationCurrency_sequence[] = {
5622 { &hf_qsig_aoc_dCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5623 { &hf_qsig_aoc_dAmount , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5624 { &hf_qsig_aoc_dChargingType, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_ChargingType },
5625 { &hf_qsig_aoc_dTime , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Time },
5626 { &hf_qsig_aoc_dGranularity, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Time },
5627 { NULL, 0, 0, 0, NULL }
5630 static int
5631 dissect_qsig_aoc_DurationCurrency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5632 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5633 qsig_aoc_DurationCurrency_sequence, hf_index, ett_qsig_aoc_DurationCurrency);
5635 return offset;
5639 static const ber_sequence_t qsig_aoc_FlatRateCurrency_sequence[] = {
5640 { &hf_qsig_aoc_fRCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5641 { &hf_qsig_aoc_fRAmount , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5642 { NULL, 0, 0, 0, NULL }
5645 static int
5646 dissect_qsig_aoc_FlatRateCurrency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5647 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5648 qsig_aoc_FlatRateCurrency_sequence, hf_index, ett_qsig_aoc_FlatRateCurrency);
5650 return offset;
5654 static const value_string qsig_aoc_VolumeUnit_vals[] = {
5655 { 0, "octet" },
5656 { 1, "segment" },
5657 { 2, "message" },
5658 { 0, NULL }
5662 static int
5663 dissect_qsig_aoc_VolumeUnit(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5664 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5665 NULL);
5667 return offset;
5671 static const ber_sequence_t qsig_aoc_VolumeRateCurrency_sequence[] = {
5672 { &hf_qsig_aoc_vRCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5673 { &hf_qsig_aoc_vRAmount , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5674 { &hf_qsig_aoc_vRVolumeUnit, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_VolumeUnit },
5675 { NULL, 0, 0, 0, NULL }
5678 static int
5679 dissect_qsig_aoc_VolumeRateCurrency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5680 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5681 qsig_aoc_VolumeRateCurrency_sequence, hf_index, ett_qsig_aoc_VolumeRateCurrency);
5683 return offset;
5688 static int
5689 dissect_qsig_aoc_SpecialChargingCode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5690 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5691 NULL);
5693 return offset;
5697 static const value_string qsig_aoc_T_rateType_vals[] = {
5698 { 0, "durationCurrency" },
5699 { 1, "flatRateCurrency" },
5700 { 2, "volumeRateCurrency" },
5701 { 3, "specialChargingCode" },
5702 { 4, "freeOfCharge" },
5703 { 5, "currencyInfoNotAvailable" },
5704 { 6, "freeOfChargefromBeginning" },
5705 { 0, NULL }
5708 static const ber_choice_t qsig_aoc_T_rateType_choice[] = {
5709 { 0, &hf_qsig_aoc_durationCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_DurationCurrency },
5710 { 1, &hf_qsig_aoc_flatRateCurrency, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_FlatRateCurrency },
5711 { 2, &hf_qsig_aoc_volumeRateCurrency, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_VolumeRateCurrency },
5712 { 3, &hf_qsig_aoc_specialChargingCode, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_SpecialChargingCode },
5713 { 4, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5714 { 5, &hf_qsig_aoc_currencyInfoNotAvailable, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5715 { 6, &hf_qsig_aoc_freeOfChargefromBeginning, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5716 { 0, NULL, 0, 0, 0, NULL }
5719 static int
5720 dissect_qsig_aoc_T_rateType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5721 offset = dissect_ber_choice(actx, tree, tvb, offset,
5722 qsig_aoc_T_rateType_choice, hf_index, ett_qsig_aoc_T_rateType,
5723 NULL);
5725 return offset;
5729 static const ber_sequence_t qsig_aoc_AOCSCurrencyInfo_sequence[] = {
5730 { &hf_qsig_aoc_chargedItem, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargedItem },
5731 { &hf_qsig_aoc_rateType , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_rateType },
5732 { NULL, 0, 0, 0, NULL }
5735 static int
5736 dissect_qsig_aoc_AOCSCurrencyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5737 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5738 qsig_aoc_AOCSCurrencyInfo_sequence, hf_index, ett_qsig_aoc_AOCSCurrencyInfo);
5740 return offset;
5744 static const ber_sequence_t qsig_aoc_AOCSCurrencyInfoList_sequence_of[1] = {
5745 { &hf_qsig_aoc_AOCSCurrencyInfoList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AOCSCurrencyInfo },
5748 static int
5749 dissect_qsig_aoc_AOCSCurrencyInfoList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5750 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5751 qsig_aoc_AOCSCurrencyInfoList_sequence_of, hf_index, ett_qsig_aoc_AOCSCurrencyInfoList);
5753 return offset;
5757 static const value_string qsig_aoc_T_aocRate_vals[] = {
5758 { 0, "chargeNotAvailable" },
5759 { 1, "aocSCurrencyInfoList" },
5760 { 0, NULL }
5763 static const ber_choice_t qsig_aoc_T_aocRate_choice[] = {
5764 { 0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_NULL },
5765 { 1, &hf_qsig_aoc_aocSCurrencyInfoList, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AOCSCurrencyInfoList },
5766 { 0, NULL, 0, 0, 0, NULL }
5769 static int
5770 dissect_qsig_aoc_T_aocRate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5771 offset = dissect_ber_choice(actx, tree, tvb, offset,
5772 qsig_aoc_T_aocRate_choice, hf_index, ett_qsig_aoc_T_aocRate,
5773 NULL);
5775 return offset;
5779 static const ber_sequence_t qsig_aoc_SEQUENCE_OF_Extension_sequence_of[1] = {
5780 { &hf_qsig_aoc_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
5783 static int
5784 dissect_qsig_aoc_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5785 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5786 qsig_aoc_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_aoc_SEQUENCE_OF_Extension);
5788 return offset;
5792 static const value_string qsig_aoc_T_rateArgExtension_vals[] = {
5793 { 1, "extension" },
5794 { 2, "multipleExtension" },
5795 { 0, NULL }
5798 static const ber_choice_t qsig_aoc_T_rateArgExtension_choice[] = {
5799 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5800 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
5801 { 0, NULL, 0, 0, 0, NULL }
5804 static int
5805 dissect_qsig_aoc_T_rateArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5806 offset = dissect_ber_choice(actx, tree, tvb, offset,
5807 qsig_aoc_T_rateArgExtension_choice, hf_index, ett_qsig_aoc_T_rateArgExtension,
5808 NULL);
5810 return offset;
5814 static const ber_sequence_t qsig_aoc_AocRateArg_sequence[] = {
5815 { &hf_qsig_aoc_aocRate , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_aocRate },
5816 { &hf_qsig_aoc_rateArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_rateArgExtension },
5817 { NULL, 0, 0, 0, NULL }
5820 static int
5821 dissect_qsig_aoc_AocRateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5822 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5823 qsig_aoc_AocRateArg_sequence, hf_index, ett_qsig_aoc_AocRateArg);
5825 return offset;
5829 static const ber_sequence_t qsig_aoc_RecordedCurrency_sequence[] = {
5830 { &hf_qsig_aoc_rCurrency , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Currency },
5831 { &hf_qsig_aoc_rAmount , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_Amount },
5832 { NULL, 0, 0, 0, NULL }
5835 static int
5836 dissect_qsig_aoc_RecordedCurrency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5837 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5838 qsig_aoc_RecordedCurrency_sequence, hf_index, ett_qsig_aoc_RecordedCurrency);
5840 return offset;
5844 static const value_string qsig_aoc_InterimBillingId_vals[] = {
5845 { 0, "normalCharging" },
5846 { 2, "creditCardCharging" },
5847 { 0, NULL }
5851 static int
5852 dissect_qsig_aoc_InterimBillingId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5853 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5854 NULL);
5856 return offset;
5860 static const ber_sequence_t qsig_aoc_T_specificCurrency_sequence[] = {
5861 { &hf_qsig_aoc_recordedCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_RecordedCurrency },
5862 { &hf_qsig_aoc_interimBillingId, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_InterimBillingId },
5863 { NULL, 0, 0, 0, NULL }
5866 static int
5867 dissect_qsig_aoc_T_specificCurrency(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5868 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5869 qsig_aoc_T_specificCurrency_sequence, hf_index, ett_qsig_aoc_T_specificCurrency);
5871 return offset;
5875 static const value_string qsig_aoc_T_interimCharge_vals[] = {
5876 { 0, "chargeNotAvailable" },
5877 { 1, "freeOfCharge" },
5878 { 2, "specificCurrency" },
5879 { 0, NULL }
5882 static const ber_choice_t qsig_aoc_T_interimCharge_choice[] = {
5883 { 0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5884 { 1, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5885 { 2, &hf_qsig_aoc_specificCurrency, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_T_specificCurrency },
5886 { 0, NULL, 0, 0, 0, NULL }
5889 static int
5890 dissect_qsig_aoc_T_interimCharge(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5891 offset = dissect_ber_choice(actx, tree, tvb, offset,
5892 qsig_aoc_T_interimCharge_choice, hf_index, ett_qsig_aoc_T_interimCharge,
5893 NULL);
5895 return offset;
5899 static const value_string qsig_aoc_T_interimArgExtension_vals[] = {
5900 { 1, "extension" },
5901 { 2, "multipleExtension" },
5902 { 0, NULL }
5905 static const ber_choice_t qsig_aoc_T_interimArgExtension_choice[] = {
5906 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
5907 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
5908 { 0, NULL, 0, 0, 0, NULL }
5911 static int
5912 dissect_qsig_aoc_T_interimArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5913 offset = dissect_ber_choice(actx, tree, tvb, offset,
5914 qsig_aoc_T_interimArgExtension_choice, hf_index, ett_qsig_aoc_T_interimArgExtension,
5915 NULL);
5917 return offset;
5921 static const ber_sequence_t qsig_aoc_AocInterimArg_sequence[] = {
5922 { &hf_qsig_aoc_interimCharge, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_interimCharge },
5923 { &hf_qsig_aoc_interimArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_interimArgExtension },
5924 { NULL, 0, 0, 0, NULL }
5927 static int
5928 dissect_qsig_aoc_AocInterimArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5929 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5930 qsig_aoc_AocInterimArg_sequence, hf_index, ett_qsig_aoc_AocInterimArg);
5932 return offset;
5936 static const value_string qsig_aoc_FinalBillingId_vals[] = {
5937 { 0, "normalCharging" },
5938 { 2, "creditCardCharging" },
5939 { 3, "callForwardingUnconditional" },
5940 { 4, "callForwardingBusy" },
5941 { 5, "callForwardingNoReply" },
5942 { 6, "callDeflection" },
5943 { 7, "callTransfer" },
5944 { 0, NULL }
5948 static int
5949 dissect_qsig_aoc_FinalBillingId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5950 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5951 NULL);
5953 return offset;
5957 static const ber_sequence_t qsig_aoc_T_specificCurrency_01_sequence[] = {
5958 { &hf_qsig_aoc_recordedCurrency, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_RecordedCurrency },
5959 { &hf_qsig_aoc_finalBillingId, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_aoc_FinalBillingId },
5960 { NULL, 0, 0, 0, NULL }
5963 static int
5964 dissect_qsig_aoc_T_specificCurrency_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5965 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5966 qsig_aoc_T_specificCurrency_01_sequence, hf_index, ett_qsig_aoc_T_specificCurrency_01);
5968 return offset;
5972 static const value_string qsig_aoc_T_finalCharge_vals[] = {
5973 { 0, "chargeNotAvailable" },
5974 { 1, "freeOfCharge" },
5975 { 2, "specificCurrency" },
5976 { 0, NULL }
5979 static const ber_choice_t qsig_aoc_T_finalCharge_choice[] = {
5980 { 0, &hf_qsig_aoc_chargeNotAvailable, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5981 { 1, &hf_qsig_aoc_freeOfCharge, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_NULL },
5982 { 2, &hf_qsig_aoc_specificCurrency_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_T_specificCurrency_01 },
5983 { 0, NULL, 0, 0, 0, NULL }
5986 static int
5987 dissect_qsig_aoc_T_finalCharge(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5988 offset = dissect_ber_choice(actx, tree, tvb, offset,
5989 qsig_aoc_T_finalCharge_choice, hf_index, ett_qsig_aoc_T_finalCharge,
5990 NULL);
5992 return offset;
5997 static int
5998 dissect_qsig_aoc_ChargeIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5999 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6000 NULL);
6002 return offset;
6006 static const value_string qsig_aoc_ChargingAssociation_vals[] = {
6007 { 0, "chargeNumber" },
6008 { 1, "chargeIdentifier" },
6009 { 0, NULL }
6012 static const ber_choice_t qsig_aoc_ChargingAssociation_choice[] = {
6013 { 0, &hf_qsig_aoc_chargeNumber, BER_CLASS_CON, 0, 0, dissect_qsig_PartyNumber },
6014 { 1, &hf_qsig_aoc_chargeIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargeIdentifier },
6015 { 0, NULL, 0, 0, 0, NULL }
6018 static int
6019 dissect_qsig_aoc_ChargingAssociation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6020 offset = dissect_ber_choice(actx, tree, tvb, offset,
6021 qsig_aoc_ChargingAssociation_choice, hf_index, ett_qsig_aoc_ChargingAssociation,
6022 NULL);
6024 return offset;
6028 static const value_string qsig_aoc_T_finalArgExtension_vals[] = {
6029 { 1, "extension" },
6030 { 2, "multipleExtension" },
6031 { 0, NULL }
6034 static const ber_choice_t qsig_aoc_T_finalArgExtension_choice[] = {
6035 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6036 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6037 { 0, NULL, 0, 0, 0, NULL }
6040 static int
6041 dissect_qsig_aoc_T_finalArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6042 offset = dissect_ber_choice(actx, tree, tvb, offset,
6043 qsig_aoc_T_finalArgExtension_choice, hf_index, ett_qsig_aoc_T_finalArgExtension,
6044 NULL);
6046 return offset;
6050 static const ber_sequence_t qsig_aoc_AocFinalArg_sequence[] = {
6051 { &hf_qsig_aoc_finalCharge, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_finalCharge },
6052 { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6053 { &hf_qsig_aoc_finalArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_finalArgExtension },
6054 { NULL, 0, 0, 0, NULL }
6057 static int
6058 dissect_qsig_aoc_AocFinalArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6059 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6060 qsig_aoc_AocFinalArg_sequence, hf_index, ett_qsig_aoc_AocFinalArg);
6062 return offset;
6066 static const value_string qsig_aoc_AdviceModeCombination_vals[] = {
6067 { 0, "rate" },
6068 { 1, "rateInterim" },
6069 { 2, "rateFinal" },
6070 { 3, "interim" },
6071 { 4, "final" },
6072 { 5, "interimFinal" },
6073 { 6, "rateInterimFinal" },
6074 { 0, NULL }
6078 static int
6079 dissect_qsig_aoc_AdviceModeCombination(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6080 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6081 NULL);
6083 return offset;
6087 static const ber_sequence_t qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination_sequence_of[1] = {
6088 { &hf_qsig_aoc_adviceModeCombinations_item, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AdviceModeCombination },
6091 static int
6092 dissect_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6093 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6094 qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination_sequence_of, hf_index, ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination);
6096 return offset;
6100 static const value_string qsig_aoc_T_chargeReqArgExtension_vals[] = {
6101 { 1, "extension" },
6102 { 2, "multipleExtension" },
6103 { 0, NULL }
6106 static const ber_choice_t qsig_aoc_T_chargeReqArgExtension_choice[] = {
6107 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6108 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6109 { 0, NULL, 0, 0, 0, NULL }
6112 static int
6113 dissect_qsig_aoc_T_chargeReqArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6114 offset = dissect_ber_choice(actx, tree, tvb, offset,
6115 qsig_aoc_T_chargeReqArgExtension_choice, hf_index, ett_qsig_aoc_T_chargeReqArgExtension,
6116 NULL);
6118 return offset;
6122 static const ber_sequence_t qsig_aoc_ChargeRequestArg_sequence[] = {
6123 { &hf_qsig_aoc_adviceModeCombinations, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination },
6124 { &hf_qsig_aoc_chargeReqArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_chargeReqArgExtension },
6125 { NULL, 0, 0, 0, NULL }
6128 static int
6129 dissect_qsig_aoc_ChargeRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6130 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6131 qsig_aoc_ChargeRequestArg_sequence, hf_index, ett_qsig_aoc_ChargeRequestArg);
6133 return offset;
6137 static const value_string qsig_aoc_T_chargeReqResExtension_vals[] = {
6138 { 1, "extension" },
6139 { 2, "multipleExtension" },
6140 { 0, NULL }
6143 static const ber_choice_t qsig_aoc_T_chargeReqResExtension_choice[] = {
6144 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6145 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6146 { 0, NULL, 0, 0, 0, NULL }
6149 static int
6150 dissect_qsig_aoc_T_chargeReqResExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6151 offset = dissect_ber_choice(actx, tree, tvb, offset,
6152 qsig_aoc_T_chargeReqResExtension_choice, hf_index, ett_qsig_aoc_T_chargeReqResExtension,
6153 NULL);
6155 return offset;
6159 static const ber_sequence_t qsig_aoc_ChargeRequestRes_sequence[] = {
6160 { &hf_qsig_aoc_adviceModeCombination, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_AdviceModeCombination },
6161 { &hf_qsig_aoc_chargeReqResExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_chargeReqResExtension },
6162 { NULL, 0, 0, 0, NULL }
6165 static int
6166 dissect_qsig_aoc_ChargeRequestRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6167 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6168 qsig_aoc_ChargeRequestRes_sequence, hf_index, ett_qsig_aoc_ChargeRequestRes);
6170 return offset;
6174 static const value_string qsig_aoc_DummyArg_vals[] = {
6175 { 0, "none" },
6176 { 1, "extension" },
6177 { 2, "multipleExtension" },
6178 { 0, NULL }
6181 static const ber_choice_t qsig_aoc_DummyArg_choice[] = {
6182 { 0, &hf_qsig_aoc_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_NULL },
6183 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6184 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6185 { 0, NULL, 0, 0, 0, NULL }
6188 static int
6189 dissect_qsig_aoc_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6190 offset = dissect_ber_choice(actx, tree, tvb, offset,
6191 qsig_aoc_DummyArg_choice, hf_index, ett_qsig_aoc_DummyArg,
6192 NULL);
6194 return offset;
6198 static const value_string qsig_aoc_T_completeArgExtension_vals[] = {
6199 { 1, "extension" },
6200 { 2, "multipleExtension" },
6201 { 0, NULL }
6204 static const ber_choice_t qsig_aoc_T_completeArgExtension_choice[] = {
6205 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6206 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6207 { 0, NULL, 0, 0, 0, NULL }
6210 static int
6211 dissect_qsig_aoc_T_completeArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6212 offset = dissect_ber_choice(actx, tree, tvb, offset,
6213 qsig_aoc_T_completeArgExtension_choice, hf_index, ett_qsig_aoc_T_completeArgExtension,
6214 NULL);
6216 return offset;
6220 static const ber_sequence_t qsig_aoc_AocCompleteArg_sequence[] = {
6221 { &hf_qsig_aoc_chargedUser, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6222 { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6223 { &hf_qsig_aoc_completeArgExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_completeArgExtension },
6224 { NULL, 0, 0, 0, NULL }
6227 static int
6228 dissect_qsig_aoc_AocCompleteArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6229 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6230 qsig_aoc_AocCompleteArg_sequence, hf_index, ett_qsig_aoc_AocCompleteArg);
6232 return offset;
6236 static const value_string qsig_aoc_ChargingOption_vals[] = {
6237 { 0, "aocFreeOfCharge" },
6238 { 1, "aocContinueCharging" },
6239 { 2, "aocStopCharging" },
6240 { 0, NULL }
6244 static int
6245 dissect_qsig_aoc_ChargingOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6246 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6247 NULL);
6249 return offset;
6253 static const value_string qsig_aoc_T_completeResExtension_vals[] = {
6254 { 1, "extension" },
6255 { 2, "multipleExtension" },
6256 { 0, NULL }
6259 static const ber_choice_t qsig_aoc_T_completeResExtension_choice[] = {
6260 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6261 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6262 { 0, NULL, 0, 0, 0, NULL }
6265 static int
6266 dissect_qsig_aoc_T_completeResExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6267 offset = dissect_ber_choice(actx, tree, tvb, offset,
6268 qsig_aoc_T_completeResExtension_choice, hf_index, ett_qsig_aoc_T_completeResExtension,
6269 NULL);
6271 return offset;
6275 static const ber_sequence_t qsig_aoc_AocCompleteRes_sequence[] = {
6276 { &hf_qsig_aoc_chargingOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_ChargingOption },
6277 { &hf_qsig_aoc_completeResExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_completeResExtension },
6278 { NULL, 0, 0, 0, NULL }
6281 static int
6282 dissect_qsig_aoc_AocCompleteRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6283 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6284 qsig_aoc_AocCompleteRes_sequence, hf_index, ett_qsig_aoc_AocCompleteRes);
6286 return offset;
6290 static const value_string qsig_aoc_DiversionType_vals[] = {
6291 { 0, "callForwardingUnconditional" },
6292 { 1, "callForwardingBusy" },
6293 { 2, "callForwardingNoReply" },
6294 { 3, "callDeflection" },
6295 { 0, NULL }
6299 static int
6300 dissect_qsig_aoc_DiversionType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6301 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6302 NULL);
6304 return offset;
6308 static const value_string qsig_aoc_T_aocDivChargeReqArgExt_vals[] = {
6309 { 1, "extension" },
6310 { 2, "multipleExtension" },
6311 { 0, NULL }
6314 static const ber_choice_t qsig_aoc_T_aocDivChargeReqArgExt_choice[] = {
6315 { 1, &hf_qsig_aoc_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6316 { 2, &hf_qsig_aoc_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_aoc_SEQUENCE_OF_Extension },
6317 { 0, NULL, 0, 0, 0, NULL }
6320 static int
6321 dissect_qsig_aoc_T_aocDivChargeReqArgExt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6322 offset = dissect_ber_choice(actx, tree, tvb, offset,
6323 qsig_aoc_T_aocDivChargeReqArgExt_choice, hf_index, ett_qsig_aoc_T_aocDivChargeReqArgExt,
6324 NULL);
6326 return offset;
6330 static const ber_sequence_t qsig_aoc_AocDivChargeReqArg_sequence[] = {
6331 { &hf_qsig_aoc_divertingUser, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6332 { &hf_qsig_aoc_chargingAssociation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_ChargingAssociation },
6333 { &hf_qsig_aoc_diversionType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_aoc_DiversionType },
6334 { &hf_qsig_aoc_aocDivChargeReqArgExt, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_aoc_T_aocDivChargeReqArgExt },
6335 { NULL, 0, 0, 0, NULL }
6338 static int
6339 dissect_qsig_aoc_AocDivChargeReqArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6340 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6341 qsig_aoc_AocDivChargeReqArg_sequence, hf_index, ett_qsig_aoc_AocDivChargeReqArg);
6343 return offset;
6346 /*--- PDUs ---*/
6348 static int dissect_qsig_aoc_AocRateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6349 int offset = 0;
6350 asn1_ctx_t asn1_ctx;
6351 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6352 offset = dissect_qsig_aoc_AocRateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocRateArg_PDU);
6353 return offset;
6355 static int dissect_qsig_aoc_AocInterimArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6356 int offset = 0;
6357 asn1_ctx_t asn1_ctx;
6358 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6359 offset = dissect_qsig_aoc_AocInterimArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU);
6360 return offset;
6362 static int dissect_qsig_aoc_AocFinalArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6363 int offset = 0;
6364 asn1_ctx_t asn1_ctx;
6365 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6366 offset = dissect_qsig_aoc_AocFinalArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU);
6367 return offset;
6369 static int dissect_qsig_aoc_ChargeRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6370 int offset = 0;
6371 asn1_ctx_t asn1_ctx;
6372 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6373 offset = dissect_qsig_aoc_ChargeRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU);
6374 return offset;
6376 static int dissect_qsig_aoc_ChargeRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6377 int offset = 0;
6378 asn1_ctx_t asn1_ctx;
6379 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6380 offset = dissect_qsig_aoc_ChargeRequestRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU);
6381 return offset;
6383 static int dissect_qsig_aoc_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6384 int offset = 0;
6385 asn1_ctx_t asn1_ctx;
6386 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6387 offset = dissect_qsig_aoc_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_DummyArg_PDU);
6388 return offset;
6390 static int dissect_qsig_aoc_AocCompleteArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6391 int offset = 0;
6392 asn1_ctx_t asn1_ctx;
6393 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6394 offset = dissect_qsig_aoc_AocCompleteArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU);
6395 return offset;
6397 static int dissect_qsig_aoc_AocCompleteRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6398 int offset = 0;
6399 asn1_ctx_t asn1_ctx;
6400 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6401 offset = dissect_qsig_aoc_AocCompleteRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU);
6402 return offset;
6404 static int dissect_qsig_aoc_AocDivChargeReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6405 int offset = 0;
6406 asn1_ctx_t asn1_ctx;
6407 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6408 offset = dissect_qsig_aoc_AocDivChargeReqArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU);
6409 return offset;
6411 static int dissect_qsig_aoc_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6412 int offset = 0;
6413 asn1_ctx_t asn1_ctx;
6414 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6415 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_aoc_qsig_aoc_Extension_PDU);
6416 return offset;
6420 /* --- Module Recall-Operations-asn1-97 --- --- --- */
6423 static const ber_sequence_t qsig_re_SEQUENCE_OF_Extension_sequence_of[1] = {
6424 { &hf_qsig_re_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6427 static int
6428 dissect_qsig_re_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6429 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6430 qsig_re_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_re_SEQUENCE_OF_Extension);
6432 return offset;
6436 static const value_string qsig_re_T_argumentExtension_vals[] = {
6437 { 6, "extension" },
6438 { 7, "multipleExtension" },
6439 { 0, NULL }
6442 static const ber_choice_t qsig_re_T_argumentExtension_choice[] = {
6443 { 6, &hf_qsig_re_extension , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6444 { 7, &hf_qsig_re_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_re_SEQUENCE_OF_Extension },
6445 { 0, NULL, 0, 0, 0, NULL }
6448 static int
6449 dissect_qsig_re_T_argumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6450 offset = dissect_ber_choice(actx, tree, tvb, offset,
6451 qsig_re_T_argumentExtension_choice, hf_index, ett_qsig_re_T_argumentExtension,
6452 NULL);
6454 return offset;
6458 static const ber_sequence_t qsig_re_ReAlertingArg_sequence[] = {
6459 { &hf_qsig_re_alertedNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberScreened },
6460 { &hf_qsig_re_alertedName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6461 { &hf_qsig_re_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_re_T_argumentExtension },
6462 { NULL, 0, 0, 0, NULL }
6465 static int
6466 dissect_qsig_re_ReAlertingArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6467 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6468 qsig_re_ReAlertingArg_sequence, hf_index, ett_qsig_re_ReAlertingArg);
6470 return offset;
6474 static const value_string qsig_re_T_argumentExtension_01_vals[] = {
6475 { 6, "extension" },
6476 { 7, "multipleExtension" },
6477 { 0, NULL }
6480 static const ber_choice_t qsig_re_T_argumentExtension_01_choice[] = {
6481 { 6, &hf_qsig_re_extension , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6482 { 7, &hf_qsig_re_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_re_SEQUENCE_OF_Extension },
6483 { 0, NULL, 0, 0, 0, NULL }
6486 static int
6487 dissect_qsig_re_T_argumentExtension_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6488 offset = dissect_ber_choice(actx, tree, tvb, offset,
6489 qsig_re_T_argumentExtension_01_choice, hf_index, ett_qsig_re_T_argumentExtension_01,
6490 NULL);
6492 return offset;
6496 static const ber_sequence_t qsig_re_ReAnswerArg_sequence[] = {
6497 { &hf_qsig_re_connectedNumber, BER_CLASS_CON, 1, 0, dissect_qsig_PresentedNumberScreened },
6498 { &hf_qsig_re_connectedSubaddress, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
6499 { &hf_qsig_re_connectedName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6500 { &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 },
6501 { NULL, 0, 0, 0, NULL }
6504 static int
6505 dissect_qsig_re_ReAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6506 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6507 qsig_re_ReAnswerArg_sequence, hf_index, ett_qsig_re_ReAnswerArg);
6509 return offset;
6512 /*--- PDUs ---*/
6514 static int dissect_qsig_re_ReAlertingArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6515 int offset = 0;
6516 asn1_ctx_t asn1_ctx;
6517 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6518 offset = dissect_qsig_re_ReAlertingArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_re_qsig_re_ReAlertingArg_PDU);
6519 return offset;
6521 static int dissect_qsig_re_ReAnswerArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6522 int offset = 0;
6523 asn1_ctx_t asn1_ctx;
6524 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6525 offset = dissect_qsig_re_ReAnswerArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_re_qsig_re_ReAnswerArg_PDU);
6526 return offset;
6530 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
6533 static const value_string qsig_sync_Action_vals[] = {
6534 { 0, "enslavement" },
6535 { 1, "holdon" },
6536 { 0, NULL }
6540 static int
6541 dissect_qsig_sync_Action(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6542 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6543 NULL);
6545 return offset;
6549 static const ber_sequence_t qsig_sync_SEQUENCE_OF_Extension_sequence_of[1] = {
6550 { &hf_qsig_sync_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6553 static int
6554 dissect_qsig_sync_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6555 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6556 qsig_sync_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sync_SEQUENCE_OF_Extension);
6558 return offset;
6562 static const value_string qsig_sync_ArgExtension_vals[] = {
6563 { 1, "extension" },
6564 { 2, "sequOfExtn" },
6565 { 0, NULL }
6568 static const ber_choice_t qsig_sync_ArgExtension_choice[] = {
6569 { 1, &hf_qsig_sync_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6570 { 2, &hf_qsig_sync_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sync_SEQUENCE_OF_Extension },
6571 { 0, NULL, 0, 0, 0, NULL }
6574 static int
6575 dissect_qsig_sync_ArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6576 offset = dissect_ber_choice(actx, tree, tvb, offset,
6577 qsig_sync_ArgExtension_choice, hf_index, ett_qsig_sync_ArgExtension,
6578 NULL);
6580 return offset;
6584 static const ber_sequence_t qsig_sync_SynchronizationReqArg_sequence[] = {
6585 { &hf_qsig_sync_action , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_Action },
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 }
6590 static int
6591 dissect_qsig_sync_SynchronizationReqArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6592 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6593 qsig_sync_SynchronizationReqArg_sequence, hf_index, ett_qsig_sync_SynchronizationReqArg);
6595 return offset;
6600 static int
6601 dissect_qsig_sync_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6602 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
6604 return offset;
6608 static const ber_sequence_t qsig_sync_SynchronizationReqRes_sequence[] = {
6609 { &hf_qsig_sync_action , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_Action },
6610 { &hf_qsig_sync_response , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_BOOLEAN },
6611 { &hf_qsig_sync_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sync_ArgExtension },
6612 { NULL, 0, 0, 0, NULL }
6615 static int
6616 dissect_qsig_sync_SynchronizationReqRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6617 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6618 qsig_sync_SynchronizationReqRes_sequence, hf_index, ett_qsig_sync_SynchronizationReqRes);
6620 return offset;
6624 static const value_string qsig_sync_T_stateinfo_vals[] = {
6625 { 0, "freerunning" },
6626 { 1, "idle" },
6627 { 0, NULL }
6631 static int
6632 dissect_qsig_sync_T_stateinfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6633 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6634 NULL);
6636 return offset;
6640 static const ber_sequence_t qsig_sync_SynchronizationInfoArg_sequence[] = {
6641 { &hf_qsig_sync_stateinfo , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sync_T_stateinfo },
6642 { &hf_qsig_sync_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sync_ArgExtension },
6643 { NULL, 0, 0, 0, NULL }
6646 static int
6647 dissect_qsig_sync_SynchronizationInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6648 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6649 qsig_sync_SynchronizationInfoArg_sequence, hf_index, ett_qsig_sync_SynchronizationInfoArg);
6651 return offset;
6654 /*--- PDUs ---*/
6656 static int dissect_qsig_sync_SynchronizationReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6657 int offset = 0;
6658 asn1_ctx_t asn1_ctx;
6659 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6660 offset = dissect_qsig_sync_SynchronizationReqArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU);
6661 return offset;
6663 static int dissect_qsig_sync_SynchronizationReqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6664 int offset = 0;
6665 asn1_ctx_t asn1_ctx;
6666 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6667 offset = dissect_qsig_sync_SynchronizationReqRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU);
6668 return offset;
6670 static int dissect_qsig_sync_SynchronizationInfoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6671 int offset = 0;
6672 asn1_ctx_t asn1_ctx;
6673 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6674 offset = dissect_qsig_sync_SynchronizationInfoArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU);
6675 return offset;
6677 static int dissect_qsig_sync_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6678 int offset = 0;
6679 asn1_ctx_t asn1_ctx;
6680 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6681 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sync_qsig_sync_Extension_PDU);
6682 return offset;
6686 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
6689 static const value_string qsig_cint_CintCause_vals[] = {
6690 { 0, "unknown" },
6691 { 1, "cintBnan" },
6692 { 2, "cintBus" },
6693 { 3, "cintCug" },
6694 { 4, "cintDnd" },
6695 { 5, "cintIbd" },
6696 { 6, "cintInn" },
6697 { 7, "cintMob1" },
6698 { 8, "cintMob2" },
6699 { 9, "cintMob3" },
6700 { 10, "cintNcmp" },
6701 { 11, "cintNcong" },
6702 { 12, "cintNre" },
6703 { 13, "cintOos" },
6704 { 14, "cintRrs" },
6705 { 15, "cintTbnan" },
6706 { 16, "cintTnre" },
6707 { 17, "cintTrans" },
6708 { 18, "cintUpl" },
6709 { 19, "cintInvDiv" },
6710 { 20, "cintHold" },
6711 { 0, NULL }
6715 static int
6716 dissect_qsig_cint_CintCause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6717 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6718 NULL);
6720 return offset;
6725 static int
6726 dissect_qsig_cint_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6727 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6729 return offset;
6733 static const ber_sequence_t qsig_cint_SEQUENCE_OF_Extension_sequence_of[1] = {
6734 { &hf_qsig_cint_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6737 static int
6738 dissect_qsig_cint_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6739 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6740 qsig_cint_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cint_SEQUENCE_OF_Extension);
6742 return offset;
6746 static const value_string qsig_cint_CintExtension_vals[] = {
6747 { 0, "none" },
6748 { 1, "single" },
6749 { 2, "multiple" },
6750 { 0, NULL }
6753 static const ber_choice_t qsig_cint_CintExtension_choice[] = {
6754 { 0, &hf_qsig_cint_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_NULL },
6755 { 1, &hf_qsig_cint_single , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6756 { 2, &hf_qsig_cint_multiple , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_cint_SEQUENCE_OF_Extension },
6757 { 0, NULL, 0, 0, 0, NULL }
6760 static int
6761 dissect_qsig_cint_CintExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6762 offset = dissect_ber_choice(actx, tree, tvb, offset,
6763 qsig_cint_CintExtension_choice, hf_index, ett_qsig_cint_CintExtension,
6764 NULL);
6766 return offset;
6770 static const ber_sequence_t qsig_cint_CintInformation1Arg_sequence[] = {
6771 { &hf_qsig_cint_interceptionCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_CintCause },
6772 { &hf_qsig_cint_interceptedToNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
6773 { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6774 { NULL, 0, 0, 0, NULL }
6777 static int
6778 dissect_qsig_cint_CintInformation1Arg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6779 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6780 qsig_cint_CintInformation1Arg_sequence, hf_index, ett_qsig_cint_CintInformation1Arg);
6782 return offset;
6786 static const ber_sequence_t qsig_cint_CintInformation2Arg_sequence[] = {
6787 { &hf_qsig_cint_interceptionCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_CintCause },
6788 { &hf_qsig_cint_calledNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6789 { &hf_qsig_cint_originalCalledNumber, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6790 { &hf_qsig_cint_calledName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6791 { &hf_qsig_cint_originalCalledName, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6792 { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6793 { NULL, 0, 0, 0, NULL }
6796 static int
6797 dissect_qsig_cint_CintInformation2Arg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6798 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6799 qsig_cint_CintInformation2Arg_sequence, hf_index, ett_qsig_cint_CintInformation2Arg);
6801 return offset;
6805 static const value_string qsig_cint_Condition_vals[] = {
6806 { 0, "unknown" },
6807 { 2, "cintBus" },
6808 { 3, "cintCug" },
6809 { 4, "cintDnd" },
6810 { 5, "cintIbd" },
6811 { 6, "cintInn" },
6812 { 7, "cintMob1" },
6813 { 8, "cintMob2" },
6814 { 9, "cintMob3" },
6815 { 10, "cintNcmp" },
6816 { 11, "cintNcong" },
6817 { 13, "cintOos" },
6818 { 14, "cintRrs" },
6819 { 17, "cintTrans" },
6820 { 18, "cintUpl" },
6821 { 19, "cintInvDiv" },
6822 { 0, NULL }
6826 static int
6827 dissect_qsig_cint_Condition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6828 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6829 NULL);
6831 return offset;
6835 static const ber_sequence_t qsig_cint_CintCondArg_sequence[] = {
6836 { &hf_qsig_cint_interceptionCause_01, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_cint_Condition },
6837 { &hf_qsig_cint_originalCalledNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedNumberUnscreened },
6838 { &hf_qsig_cint_calledName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6839 { &hf_qsig_cint_originalCalledName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
6840 { &hf_qsig_cint_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cint_CintExtension },
6841 { NULL, 0, 0, 0, NULL }
6844 static int
6845 dissect_qsig_cint_CintCondArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6846 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6847 qsig_cint_CintCondArg_sequence, hf_index, ett_qsig_cint_CintCondArg);
6849 return offset;
6852 /*--- PDUs ---*/
6854 static int dissect_qsig_cint_CintInformation1Arg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6855 int offset = 0;
6856 asn1_ctx_t asn1_ctx;
6857 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6858 offset = dissect_qsig_cint_CintInformation1Arg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU);
6859 return offset;
6861 static int dissect_qsig_cint_CintInformation2Arg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6862 int offset = 0;
6863 asn1_ctx_t asn1_ctx;
6864 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6865 offset = dissect_qsig_cint_CintInformation2Arg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU);
6866 return offset;
6868 static int dissect_qsig_cint_CintCondArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6869 int offset = 0;
6870 asn1_ctx_t asn1_ctx;
6871 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6872 offset = dissect_qsig_cint_CintCondArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintCondArg_PDU);
6873 return offset;
6875 static int dissect_qsig_cint_CintExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
6876 int offset = 0;
6877 asn1_ctx_t asn1_ctx;
6878 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
6879 offset = dissect_qsig_cint_CintExtension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cint_qsig_cint_CintExtension_PDU);
6880 return offset;
6884 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
6887 static const asn_namedbit qsig_cmn_FeatureIdList_bits[] = {
6888 { 0, &hf_qsig_cmn_FeatureIdList_reserved, -1, -1, "reserved", NULL },
6889 { 1, &hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported, -1, -1, "ssCFreRoutingSupported", NULL },
6890 { 2, &hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported, -1, -1, "ssCTreRoutingSupported", NULL },
6891 { 3, &hf_qsig_cmn_FeatureIdList_ssCCBSpossible, -1, -1, "ssCCBSpossible", NULL },
6892 { 4, &hf_qsig_cmn_FeatureIdList_ssCCNRpossible, -1, -1, "ssCCNRpossible", NULL },
6893 { 5, &hf_qsig_cmn_FeatureIdList_ssCOsupported, -1, -1, "ssCOsupported", NULL },
6894 { 6, &hf_qsig_cmn_FeatureIdList_ssCIforcedRelease, -1, -1, "ssCIforcedRelease", NULL },
6895 { 7, &hf_qsig_cmn_FeatureIdList_ssCIisolation, -1, -1, "ssCIisolation", NULL },
6896 { 8, &hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy, -1, -1, "ssCIwaitOnBusy", NULL },
6897 { 9, &hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx, -1, -1, "ssAOCsupportChargeRateProvAtGatewPinx", NULL },
6898 { 10, &hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx, -1, -1, "ssAOCsupportInterimChargeProvAtGatewPinx", NULL },
6899 { 11, &hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx, -1, -1, "ssAOCsupportFinalChargeProvAtGatewPinx", NULL },
6900 { 12, &hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx, -1, -1, "anfPRsupportedAtCooperatingPinx", NULL },
6901 { 13, &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate, -1, -1, "anfCINTcanInterceptImmediate", NULL },
6902 { 14, &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed, -1, -1, "anfCINTcanInterceptDelayed", NULL },
6903 { 15, &hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported, -1, -1, "anfWTMIreRoutingSupported", NULL },
6904 { 16, &hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported, -1, -1, "anfPUMIreRoutingSupported", NULL },
6905 { 17, &hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported, -1, -1, "ssSSCTreRoutingSupported", NULL },
6906 { 0, NULL, 0, 0, NULL, NULL }
6909 static int
6910 dissect_qsig_cmn_FeatureIdList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6911 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
6912 qsig_cmn_FeatureIdList_bits, hf_index, ett_qsig_cmn_FeatureIdList,
6913 NULL);
6915 return offset;
6920 static int
6921 dissect_qsig_cmn_INTEGER_0_3(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6922 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6923 NULL);
6925 return offset;
6930 static int
6931 dissect_qsig_cmn_IA5String_SIZE_1_10(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6932 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
6933 actx, tree, tvb, offset, hf_index,
6934 NULL);
6936 return offset;
6940 static const ber_sequence_t qsig_cmn_EquipmentId_sequence[] = {
6941 { &hf_qsig_cmn_nodeId , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6942 { &hf_qsig_cmn_groupId , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6943 { &hf_qsig_cmn_unitId , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_IA5String_SIZE_1_10 },
6944 { NULL, 0, 0, 0, NULL }
6947 static int
6948 dissect_qsig_cmn_EquipmentId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6949 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6950 qsig_cmn_EquipmentId_sequence, hf_index, ett_qsig_cmn_EquipmentId);
6952 return offset;
6956 static const value_string qsig_cmn_PartyCategory_vals[] = {
6957 { 0, "unknown" },
6958 { 1, "extension" },
6959 { 2, "pisnAttendant" },
6960 { 3, "emergExt" },
6961 { 0, NULL }
6965 static int
6966 dissect_qsig_cmn_PartyCategory(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6967 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6968 NULL);
6970 return offset;
6974 static const ber_sequence_t qsig_cmn_SEQUENCE_OF_Extension_sequence_of[1] = {
6975 { &hf_qsig_cmn_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
6978 static int
6979 dissect_qsig_cmn_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6980 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6981 qsig_cmn_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cmn_SEQUENCE_OF_Extension);
6983 return offset;
6987 static const value_string qsig_cmn_T_extension_vals[] = {
6988 { 7, "single" },
6989 { 8, "multiple" },
6990 { 0, NULL }
6993 static const ber_choice_t qsig_cmn_T_extension_choice[] = {
6994 { 7, &hf_qsig_cmn_single , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
6995 { 8, &hf_qsig_cmn_multiple , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_qsig_cmn_SEQUENCE_OF_Extension },
6996 { 0, NULL, 0, 0, 0, NULL }
6999 static int
7000 dissect_qsig_cmn_T_extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7001 offset = dissect_ber_choice(actx, tree, tvb, offset,
7002 qsig_cmn_T_extension_choice, hf_index, ett_qsig_cmn_T_extension,
7003 NULL);
7005 return offset;
7009 static const ber_sequence_t qsig_cmn_CmnArg_sequence[] = {
7010 { &hf_qsig_cmn_featureIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_FeatureIdList },
7011 { &hf_qsig_cmn_ssDNDOprotectionLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_INTEGER_0_3 },
7012 { &hf_qsig_cmn_ssCIprotectionLevel, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_INTEGER_0_3 },
7013 { &hf_qsig_cmn_equipmentIdentity, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_EquipmentId },
7014 { &hf_qsig_cmn_partyCategory, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cmn_PartyCategory },
7015 { &hf_qsig_cmn_extension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cmn_T_extension },
7016 { NULL, 0, 0, 0, NULL }
7019 static int
7020 dissect_qsig_cmn_CmnArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7021 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7022 qsig_cmn_CmnArg_sequence, hf_index, ett_qsig_cmn_CmnArg);
7024 return offset;
7029 static int
7030 dissect_qsig_cmn_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7031 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7033 return offset;
7037 static const value_string qsig_cmn_DummyArg_vals[] = {
7038 { 0, "null" },
7039 { 1, "single" },
7040 { 2, "multiple" },
7041 { 0, NULL }
7044 static const ber_choice_t qsig_cmn_DummyArg_choice[] = {
7045 { 0, &hf_qsig_cmn_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_cmn_NULL },
7046 { 1, &hf_qsig_cmn_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7047 { 2, &hf_qsig_cmn_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cmn_SEQUENCE_OF_Extension },
7048 { 0, NULL, 0, 0, 0, NULL }
7051 static int
7052 dissect_qsig_cmn_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7053 offset = dissect_ber_choice(actx, tree, tvb, offset,
7054 qsig_cmn_DummyArg_choice, hf_index, ett_qsig_cmn_DummyArg,
7055 NULL);
7057 return offset;
7060 /*--- PDUs ---*/
7062 static int dissect_qsig_cmn_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7063 int offset = 0;
7064 asn1_ctx_t asn1_ctx;
7065 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7066 offset = dissect_qsig_cmn_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cmn_qsig_cmn_DummyArg_PDU);
7067 return offset;
7069 static int dissect_qsig_cmn_CmnArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7070 int offset = 0;
7071 asn1_ctx_t asn1_ctx;
7072 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7073 offset = dissect_qsig_cmn_CmnArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cmn_qsig_cmn_CmnArg_PDU);
7074 return offset;
7078 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
7081 static const value_string qsig_cpi_CPICapabilityLevel_vals[] = {
7082 { 1, "interruptionLowPriority" },
7083 { 2, "interruptionMediumPriority" },
7084 { 3, "interruptionHighPriority" },
7085 { 0, NULL }
7089 static int
7090 dissect_qsig_cpi_CPICapabilityLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7091 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7092 NULL);
7094 return offset;
7098 static const ber_sequence_t qsig_cpi_SEQUENCE_OF_Extension_sequence_of[1] = {
7099 { &hf_qsig_cpi_sequenceOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7102 static int
7103 dissect_qsig_cpi_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7104 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7105 qsig_cpi_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cpi_SEQUENCE_OF_Extension);
7107 return offset;
7111 static const value_string qsig_cpi_T_argumentExtension_vals[] = {
7112 { 1, "extension" },
7113 { 2, "sequenceOfExtn" },
7114 { 0, NULL }
7117 static const ber_choice_t qsig_cpi_T_argumentExtension_choice[] = {
7118 { 1, &hf_qsig_cpi_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7119 { 2, &hf_qsig_cpi_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cpi_SEQUENCE_OF_Extension },
7120 { 0, NULL, 0, 0, 0, NULL }
7123 static int
7124 dissect_qsig_cpi_T_argumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7125 offset = dissect_ber_choice(actx, tree, tvb, offset,
7126 qsig_cpi_T_argumentExtension_choice, hf_index, ett_qsig_cpi_T_argumentExtension,
7127 NULL);
7129 return offset;
7133 static const ber_sequence_t qsig_cpi_CPIRequestArg_sequence[] = {
7134 { &hf_qsig_cpi_cpiCapabilityLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cpi_CPICapabilityLevel },
7135 { &hf_qsig_cpi_argumentExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cpi_T_argumentExtension },
7136 { NULL, 0, 0, 0, NULL }
7139 static int
7140 dissect_qsig_cpi_CPIRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7141 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7142 qsig_cpi_CPIRequestArg_sequence, hf_index, ett_qsig_cpi_CPIRequestArg);
7144 return offset;
7148 static const value_string qsig_cpi_CPIProtectionLevel_vals[] = {
7149 { 0, "noProtection" },
7150 { 1, "lowProtection" },
7151 { 2, "mediumProtection" },
7152 { 3, "totalProtection" },
7153 { 0, NULL }
7157 static int
7158 dissect_qsig_cpi_CPIProtectionLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7159 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7160 NULL);
7162 return offset;
7166 static const value_string qsig_cpi_T_argumentExtension_01_vals[] = {
7167 { 1, "extension" },
7168 { 2, "sequenceOfExtn" },
7169 { 0, NULL }
7172 static const ber_choice_t qsig_cpi_T_argumentExtension_01_choice[] = {
7173 { 1, &hf_qsig_cpi_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7174 { 2, &hf_qsig_cpi_sequenceOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cpi_SEQUENCE_OF_Extension },
7175 { 0, NULL, 0, 0, 0, NULL }
7178 static int
7179 dissect_qsig_cpi_T_argumentExtension_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7180 offset = dissect_ber_choice(actx, tree, tvb, offset,
7181 qsig_cpi_T_argumentExtension_01_choice, hf_index, ett_qsig_cpi_T_argumentExtension_01,
7182 NULL);
7184 return offset;
7188 static const ber_sequence_t qsig_cpi_CPIPRequestArg_sequence[] = {
7189 { &hf_qsig_cpi_cpiProtectionLevel, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cpi_CPIProtectionLevel },
7190 { &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 },
7191 { NULL, 0, 0, 0, NULL }
7194 static int
7195 dissect_qsig_cpi_CPIPRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7196 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7197 qsig_cpi_CPIPRequestArg_sequence, hf_index, ett_qsig_cpi_CPIPRequestArg);
7199 return offset;
7202 /*--- PDUs ---*/
7204 static int dissect_qsig_cpi_CPIRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7205 int offset = 0;
7206 asn1_ctx_t asn1_ctx;
7207 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7208 offset = dissect_qsig_cpi_CPIRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU);
7209 return offset;
7211 static int dissect_qsig_cpi_CPIPRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7212 int offset = 0;
7213 asn1_ctx_t asn1_ctx;
7214 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7215 offset = dissect_qsig_cpi_CPIPRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU);
7216 return offset;
7220 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
7224 static int
7225 dissect_qsig_pumr_AlternativeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7226 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
7227 NULL);
7229 return offset;
7233 static const value_string qsig_pumr_RpumUserId_vals[] = {
7234 { 0, "pumNumber" },
7235 { 1, "alternativeId" },
7236 { 0, NULL }
7239 static const ber_choice_t qsig_pumr_RpumUserId_choice[] = {
7240 { 0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7241 { 1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7242 { 0, NULL, 0, 0, 0, NULL }
7245 static int
7246 dissect_qsig_pumr_RpumUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7247 offset = dissect_ber_choice(actx, tree, tvb, offset,
7248 qsig_pumr_RpumUserId_choice, hf_index, ett_qsig_pumr_RpumUserId,
7249 NULL);
7251 return offset;
7255 static const value_string qsig_pumr_ServiceOption_vals[] = {
7256 { 0, "inCallRegistration" },
7257 { 1, "outCallRegistration" },
7258 { 2, "allCallRegistration" },
7259 { 0, NULL }
7263 static int
7264 dissect_qsig_pumr_ServiceOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7265 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7266 NULL);
7268 return offset;
7273 static int
7274 dissect_qsig_pumr_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7275 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7276 NULL);
7278 return offset;
7282 static const ber_sequence_t qsig_pumr_SessionParams_sequence[] = {
7283 { &hf_qsig_pumr_durationOfSession, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_INTEGER },
7284 { &hf_qsig_pumr_numberOfOutgCalls, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_INTEGER },
7285 { NULL, 0, 0, 0, NULL }
7288 static int
7289 dissect_qsig_pumr_SessionParams(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7290 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7291 qsig_pumr_SessionParams_sequence, hf_index, ett_qsig_pumr_SessionParams);
7293 return offset;
7298 static int
7299 dissect_qsig_pumr_UserPin(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7300 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
7301 NULL);
7303 return offset;
7307 static const value_string qsig_pumr_T_userPin_vals[] = {
7308 { 6, "pumUserPin" },
7309 { 7, "activatingUserPin" },
7310 { 0, NULL }
7313 static const ber_choice_t qsig_pumr_T_userPin_choice[] = {
7314 { 6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7315 { 7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7316 { 0, NULL, 0, 0, 0, NULL }
7319 static int
7320 dissect_qsig_pumr_T_userPin(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7321 offset = dissect_ber_choice(actx, tree, tvb, offset,
7322 qsig_pumr_T_userPin_choice, hf_index, ett_qsig_pumr_T_userPin,
7323 NULL);
7325 return offset;
7329 static const ber_sequence_t qsig_pumr_SEQUENCE_OF_Extension_sequence_of[1] = {
7330 { &hf_qsig_pumr_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7333 static int
7334 dissect_qsig_pumr_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7335 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7336 qsig_pumr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pumr_SEQUENCE_OF_Extension);
7338 return offset;
7342 static const value_string qsig_pumr_PumrExtension_vals[] = {
7343 { 4, "extension" },
7344 { 5, "sequOfExtn" },
7345 { 0, NULL }
7348 static const ber_choice_t qsig_pumr_PumrExtension_choice[] = {
7349 { 4, &hf_qsig_pumr_extension , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7350 { 5, &hf_qsig_pumr_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_SEQUENCE_OF_Extension },
7351 { 0, NULL, 0, 0, 0, NULL }
7354 static int
7355 dissect_qsig_pumr_PumrExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7356 offset = dissect_ber_choice(actx, tree, tvb, offset,
7357 qsig_pumr_PumrExtension_choice, hf_index, ett_qsig_pumr_PumrExtension,
7358 NULL);
7360 return offset;
7364 static const ber_sequence_t qsig_pumr_PumRegistrArg_sequence[] = {
7365 { &hf_qsig_pumr_pumRUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_RpumUserId },
7366 { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7367 { &hf_qsig_pumr_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7368 { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7369 { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7370 { &hf_qsig_pumr_sessionParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7371 { &hf_qsig_pumr_userPin , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_T_userPin },
7372 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7373 { NULL, 0, 0, 0, NULL }
7376 static int
7377 dissect_qsig_pumr_PumRegistrArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7378 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7379 qsig_pumr_PumRegistrArg_sequence, hf_index, ett_qsig_pumr_PumRegistrArg);
7381 return offset;
7385 static const ber_sequence_t qsig_pumr_PumRegistrRes_sequence[] = {
7386 { &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7387 { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7388 { &hf_qsig_pumr_sessionParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7389 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7390 { NULL, 0, 0, 0, NULL }
7393 static int
7394 dissect_qsig_pumr_PumRegistrRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7395 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7396 qsig_pumr_PumRegistrRes_sequence, hf_index, ett_qsig_pumr_PumRegistrRes);
7398 return offset;
7403 static int
7404 dissect_qsig_pumr_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7405 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7407 return offset;
7411 static const value_string qsig_pumr_DummyRes_vals[] = {
7412 { 0, "null" },
7413 { 1, "extension" },
7414 { 2, "sequOfExtn" },
7415 { 0, NULL }
7418 static const ber_choice_t qsig_pumr_DummyRes_choice[] = {
7419 { 0, &hf_qsig_pumr_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_NULL },
7420 { 1, &hf_qsig_pumr_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7421 { 2, &hf_qsig_pumr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_SEQUENCE_OF_Extension },
7422 { 0, NULL, 0, 0, 0, NULL }
7425 static int
7426 dissect_qsig_pumr_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7427 offset = dissect_ber_choice(actx, tree, tvb, offset,
7428 qsig_pumr_DummyRes_choice, hf_index, ett_qsig_pumr_DummyRes,
7429 NULL);
7431 return offset;
7435 static const value_string qsig_pumr_XpumUserId_vals[] = {
7436 { 0, "pumNumber" },
7437 { 1, "alternativeId" },
7438 { 0, NULL }
7441 static const ber_choice_t qsig_pumr_XpumUserId_choice[] = {
7442 { 0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7443 { 1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7444 { 0, NULL, 0, 0, 0, NULL }
7447 static int
7448 dissect_qsig_pumr_XpumUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7449 offset = dissect_ber_choice(actx, tree, tvb, offset,
7450 qsig_pumr_XpumUserId_choice, hf_index, ett_qsig_pumr_XpumUserId,
7451 NULL);
7453 return offset;
7457 static const ber_sequence_t qsig_pumr_PumDelRegArg_sequence[] = {
7458 { &hf_qsig_pumr_pumXUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_XpumUserId },
7459 { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7460 { &hf_qsig_pumr_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7461 { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7462 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7463 { NULL, 0, 0, 0, NULL }
7466 static int
7467 dissect_qsig_pumr_PumDelRegArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7468 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7469 qsig_pumr_PumDelRegArg_sequence, hf_index, ett_qsig_pumr_PumDelRegArg);
7471 return offset;
7475 static const value_string qsig_pumr_DpumUserId_vals[] = {
7476 { 0, "pumNumber" },
7477 { 1, "alternativeId" },
7478 { 0, NULL }
7481 static const ber_choice_t qsig_pumr_DpumUserId_choice[] = {
7482 { 0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7483 { 1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7484 { 0, NULL, 0, 0, 0, NULL }
7487 static int
7488 dissect_qsig_pumr_DpumUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7489 offset = dissect_ber_choice(actx, tree, tvb, offset,
7490 qsig_pumr_DpumUserId_choice, hf_index, ett_qsig_pumr_DpumUserId,
7491 NULL);
7493 return offset;
7497 static const value_string qsig_pumr_T_userPin_01_vals[] = {
7498 { 6, "pumUserPin" },
7499 { 7, "activatingUserPin" },
7500 { 0, NULL }
7503 static const ber_choice_t qsig_pumr_T_userPin_01_choice[] = {
7504 { 6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7505 { 7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7506 { 0, NULL, 0, 0, 0, NULL }
7509 static int
7510 dissect_qsig_pumr_T_userPin_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7511 offset = dissect_ber_choice(actx, tree, tvb, offset,
7512 qsig_pumr_T_userPin_01_choice, hf_index, ett_qsig_pumr_T_userPin_01,
7513 NULL);
7515 return offset;
7519 static const ber_sequence_t qsig_pumr_PumDe_regArg_sequence[] = {
7520 { &hf_qsig_pumr_pumDUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_DpumUserId },
7521 { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7522 { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7523 { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7524 { &hf_qsig_pumr_serviceOption, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_ServiceOption },
7525 { &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 },
7526 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7527 { NULL, 0, 0, 0, NULL }
7530 static int
7531 dissect_qsig_pumr_PumDe_regArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7532 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7533 qsig_pumr_PumDe_regArg_sequence, hf_index, ett_qsig_pumr_PumDe_regArg);
7535 return offset;
7539 static const value_string qsig_pumr_IpumUserId_vals[] = {
7540 { 0, "pumNumber" },
7541 { 1, "alternativeId" },
7542 { 0, NULL }
7545 static const ber_choice_t qsig_pumr_IpumUserId_choice[] = {
7546 { 0, &hf_qsig_pumr_pumNumber , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7547 { 1, &hf_qsig_pumr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_AlternativeId },
7548 { 0, NULL, 0, 0, 0, NULL }
7551 static int
7552 dissect_qsig_pumr_IpumUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7553 offset = dissect_ber_choice(actx, tree, tvb, offset,
7554 qsig_pumr_IpumUserId_choice, hf_index, ett_qsig_pumr_IpumUserId,
7555 NULL);
7557 return offset;
7562 static int
7563 dissect_qsig_pumr_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7564 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
7566 return offset;
7570 static const value_string qsig_pumr_T_userPin_02_vals[] = {
7571 { 6, "pumUserPin" },
7572 { 7, "activatingUserPin" },
7573 { 0, NULL }
7576 static const ber_choice_t qsig_pumr_T_userPin_02_choice[] = {
7577 { 6, &hf_qsig_pumr_pumUserPin, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7578 { 7, &hf_qsig_pumr_activatingUserPin, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_pumr_UserPin },
7579 { 0, NULL, 0, 0, 0, NULL }
7582 static int
7583 dissect_qsig_pumr_T_userPin_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7584 offset = dissect_ber_choice(actx, tree, tvb, offset,
7585 qsig_pumr_T_userPin_02_choice, hf_index, ett_qsig_pumr_T_userPin_02,
7586 NULL);
7588 return offset;
7592 static const ber_sequence_t qsig_pumr_PumInterrogArg_sequence[] = {
7593 { &hf_qsig_pumr_pumIUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_IpumUserId },
7594 { &hf_qsig_pumr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
7595 { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7596 { &hf_qsig_pumr_activatingUserAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7597 { &hf_qsig_pumr_serviceOption, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_pumr_ServiceOption },
7598 { &hf_qsig_pumr_homeInfoOnly, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_BOOLEAN },
7599 { &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 },
7600 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7601 { NULL, 0, 0, 0, NULL }
7604 static int
7605 dissect_qsig_pumr_PumInterrogArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7606 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7607 qsig_pumr_PumInterrogArg_sequence, hf_index, ett_qsig_pumr_PumInterrogArg);
7609 return offset;
7613 static const ber_sequence_t qsig_pumr_PumInterrogRes_item_sequence[] = {
7614 { &hf_qsig_pumr_basicService, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cf_BasicService },
7615 { &hf_qsig_pumr_hostingAddr, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7616 { &hf_qsig_pumr_serviceOption, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumr_ServiceOption },
7617 { &hf_qsig_pumr_interrogParams, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_SessionParams },
7618 { &hf_qsig_pumr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumr_PumrExtension },
7619 { NULL, 0, 0, 0, NULL }
7622 static int
7623 dissect_qsig_pumr_PumInterrogRes_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7624 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7625 qsig_pumr_PumInterrogRes_item_sequence, hf_index, ett_qsig_pumr_PumInterrogRes_item);
7627 return offset;
7631 static const ber_sequence_t qsig_pumr_PumInterrogRes_set_of[1] = {
7632 { &hf_qsig_pumr_PumInterrogRes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_pumr_PumInterrogRes_item },
7635 static int
7636 dissect_qsig_pumr_PumInterrogRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7637 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
7638 qsig_pumr_PumInterrogRes_set_of, hf_index, ett_qsig_pumr_PumInterrogRes);
7640 return offset;
7643 /*--- PDUs ---*/
7645 static int dissect_qsig_pumr_PumRegistrArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7646 int offset = 0;
7647 asn1_ctx_t asn1_ctx;
7648 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7649 offset = dissect_qsig_pumr_PumRegistrArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU);
7650 return offset;
7652 static int dissect_qsig_pumr_PumRegistrRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7653 int offset = 0;
7654 asn1_ctx_t asn1_ctx;
7655 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7656 offset = dissect_qsig_pumr_PumRegistrRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU);
7657 return offset;
7659 static int dissect_qsig_pumr_PumDelRegArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7660 int offset = 0;
7661 asn1_ctx_t asn1_ctx;
7662 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7663 offset = dissect_qsig_pumr_PumDelRegArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU);
7664 return offset;
7666 static int dissect_qsig_pumr_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7667 int offset = 0;
7668 asn1_ctx_t asn1_ctx;
7669 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7670 offset = dissect_qsig_pumr_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_DummyRes_PDU);
7671 return offset;
7673 static int dissect_qsig_pumr_PumDe_regArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7674 int offset = 0;
7675 asn1_ctx_t asn1_ctx;
7676 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7677 offset = dissect_qsig_pumr_PumDe_regArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU);
7678 return offset;
7680 static int dissect_qsig_pumr_PumInterrogArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7681 int offset = 0;
7682 asn1_ctx_t asn1_ctx;
7683 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7684 offset = dissect_qsig_pumr_PumInterrogArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU);
7685 return offset;
7687 static int dissect_qsig_pumr_PumInterrogRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7688 int offset = 0;
7689 asn1_ctx_t asn1_ctx;
7690 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7691 offset = dissect_qsig_pumr_PumInterrogRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU);
7692 return offset;
7694 static int dissect_qsig_pumr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7695 int offset = 0;
7696 asn1_ctx_t asn1_ctx;
7697 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7698 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumr_qsig_pumr_Extension_PDU);
7699 return offset;
7703 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
7706 static const ber_sequence_t qsig_pumch_SEQUENCE_OF_Extension_sequence_of[1] = {
7707 { &hf_qsig_pumch_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
7710 static int
7711 dissect_qsig_pumch_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7712 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
7713 qsig_pumch_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_pumch_SEQUENCE_OF_Extension);
7715 return offset;
7719 static const value_string qsig_pumch_PumiExtension_vals[] = {
7720 { 4, "extension" },
7721 { 5, "sequOfExtn" },
7722 { 0, NULL }
7725 static const ber_choice_t qsig_pumch_PumiExtension_choice[] = {
7726 { 4, &hf_qsig_pumch_extension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7727 { 5, &hf_qsig_pumch_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7728 { 0, NULL, 0, 0, 0, NULL }
7731 static int
7732 dissect_qsig_pumch_PumiExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7733 offset = dissect_ber_choice(actx, tree, tvb, offset,
7734 qsig_pumch_PumiExtension_choice, hf_index, ett_qsig_pumch_PumiExtension,
7735 NULL);
7737 return offset;
7741 static const ber_sequence_t qsig_pumch_EnquiryArg_sequence[] = {
7742 { &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7743 { &hf_qsig_pumch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
7744 { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7745 { NULL, 0, 0, 0, NULL }
7748 static int
7749 dissect_qsig_pumch_EnquiryArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7750 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7751 qsig_pumch_EnquiryArg_sequence, hf_index, ett_qsig_pumch_EnquiryArg);
7753 return offset;
7758 static int
7759 dissect_qsig_pumch_AlternativeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7760 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
7761 NULL);
7763 return offset;
7767 static const ber_sequence_t qsig_pumch_T_both_sequence[] = {
7768 { &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7769 { &hf_qsig_pumch_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_AlternativeId },
7770 { NULL, 0, 0, 0, NULL }
7773 static int
7774 dissect_qsig_pumch_T_both(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7775 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7776 qsig_pumch_T_both_sequence, hf_index, ett_qsig_pumch_T_both);
7778 return offset;
7782 static const value_string qsig_pumch_PumIdentity_vals[] = {
7783 { 0, "pisnNumber" },
7784 { 1, "alternativeId" },
7785 { 2, "both" },
7786 { 0, NULL }
7789 static const ber_choice_t qsig_pumch_PumIdentity_choice[] = {
7790 { 0, &hf_qsig_pumch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7791 { 1, &hf_qsig_pumch_alternativeId, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_AlternativeId },
7792 { 2, &hf_qsig_pumch_both , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_T_both },
7793 { 0, NULL, 0, 0, 0, NULL }
7796 static int
7797 dissect_qsig_pumch_PumIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7798 offset = dissect_ber_choice(actx, tree, tvb, offset,
7799 qsig_pumch_PumIdentity_choice, hf_index, ett_qsig_pumch_PumIdentity,
7800 NULL);
7802 return offset;
7806 static const ber_sequence_t qsig_pumch_DivertArg_sequence[] = {
7807 { &hf_qsig_pumch_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7808 { &hf_qsig_pumch_callingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
7809 { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7810 { &hf_qsig_pumch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
7811 { &hf_qsig_pumch_callingUserSub, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
7812 { &hf_qsig_pumch_callingUserName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
7813 { &hf_qsig_pumch_pumUserSub, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
7814 { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7815 { NULL, 0, 0, 0, NULL }
7818 static int
7819 dissect_qsig_pumch_DivertArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7820 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7821 qsig_pumch_DivertArg_sequence, hf_index, ett_qsig_pumch_DivertArg);
7823 return offset;
7827 static const ber_sequence_t qsig_pumch_InformArg_sequence[] = {
7828 { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7829 { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7830 { NULL, 0, 0, 0, NULL }
7833 static int
7834 dissect_qsig_pumch_InformArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7835 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7836 qsig_pumch_InformArg_sequence, hf_index, ett_qsig_pumch_InformArg);
7838 return offset;
7842 static const ber_sequence_t qsig_pumch_CurrLocation_sequence[] = {
7843 { &hf_qsig_pumch_hostingAddr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
7844 { &hf_qsig_pumch_pumIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7845 { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7846 { NULL, 0, 0, 0, NULL }
7849 static int
7850 dissect_qsig_pumch_CurrLocation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7851 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7852 qsig_pumch_CurrLocation_sequence, hf_index, ett_qsig_pumch_CurrLocation);
7854 return offset;
7858 static const value_string qsig_pumch_SubscriptionOption_vals[] = {
7859 { 0, "noNotification" },
7860 { 1, "notificationWithoutDivertedToNr" },
7861 { 2, "notificationWithDivertedToNr" },
7862 { 0, NULL }
7866 static int
7867 dissect_qsig_pumch_SubscriptionOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7868 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7869 NULL);
7871 return offset;
7875 static const ber_sequence_t qsig_pumch_CfuActivated_sequence[] = {
7876 { &hf_qsig_pumch_divToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
7877 { &hf_qsig_pumch_divOptions, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_SubscriptionOption },
7878 { &hf_qsig_pumch_pumName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
7879 { &hf_qsig_pumch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumiExtension },
7880 { NULL, 0, 0, 0, NULL }
7883 static int
7884 dissect_qsig_pumch_CfuActivated(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7885 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7886 qsig_pumch_CfuActivated_sequence, hf_index, ett_qsig_pumch_CfuActivated);
7888 return offset;
7892 static const value_string qsig_pumch_EnquiryRes_vals[] = {
7893 { 1, "currLocation" },
7894 { 2, "cfuActivated" },
7895 { 0, NULL }
7898 static const ber_choice_t qsig_pumch_EnquiryRes_choice[] = {
7899 { 1, &hf_qsig_pumch_currLocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_CurrLocation },
7900 { 2, &hf_qsig_pumch_cfuActivated, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_CfuActivated },
7901 { 0, NULL, 0, 0, 0, NULL }
7904 static int
7905 dissect_qsig_pumch_EnquiryRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7906 offset = dissect_ber_choice(actx, tree, tvb, offset,
7907 qsig_pumch_EnquiryRes_choice, hf_index, ett_qsig_pumch_EnquiryRes,
7908 NULL);
7910 return offset;
7915 static int
7916 dissect_qsig_pumch_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7917 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7919 return offset;
7923 static const value_string qsig_pumch_DummyRes_vals[] = {
7924 { 0, "null" },
7925 { 1, "extension" },
7926 { 2, "sequOfExtn" },
7927 { 0, NULL }
7930 static const ber_choice_t qsig_pumch_DummyRes_choice[] = {
7931 { 0, &hf_qsig_pumch_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_pumch_NULL },
7932 { 1, &hf_qsig_pumch_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7933 { 2, &hf_qsig_pumch_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7934 { 0, NULL, 0, 0, 0, NULL }
7937 static int
7938 dissect_qsig_pumch_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7939 offset = dissect_ber_choice(actx, tree, tvb, offset,
7940 qsig_pumch_DummyRes_choice, hf_index, ett_qsig_pumch_DummyRes,
7941 NULL);
7943 return offset;
7947 static const value_string qsig_pumch_T_pumoaextension_vals[] = {
7948 { 3, "single" },
7949 { 4, "multiple" },
7950 { 0, NULL }
7953 static const ber_choice_t qsig_pumch_T_pumoaextension_choice[] = {
7954 { 3, &hf_qsig_pumch_single , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
7955 { 4, &hf_qsig_pumch_multiple , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_pumch_SEQUENCE_OF_Extension },
7956 { 0, NULL, 0, 0, 0, NULL }
7959 static int
7960 dissect_qsig_pumch_T_pumoaextension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7961 offset = dissect_ber_choice(actx, tree, tvb, offset,
7962 qsig_pumch_T_pumoaextension_choice, hf_index, ett_qsig_pumch_T_pumoaextension,
7963 NULL);
7965 return offset;
7969 static const ber_sequence_t qsig_pumch_PumoArg_sequence[] = {
7970 { &hf_qsig_pumch_destinationNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
7971 { &hf_qsig_pumch_pumIdentity, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_PumIdentity },
7972 { &hf_qsig_pumch_sendingComplete, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_pumch_NULL },
7973 { &hf_qsig_pumch_pumoaextension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_pumch_T_pumoaextension },
7974 { NULL, 0, 0, 0, NULL }
7977 static int
7978 dissect_qsig_pumch_PumoArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7979 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7980 qsig_pumch_PumoArg_sequence, hf_index, ett_qsig_pumch_PumoArg);
7982 return offset;
7985 /*--- PDUs ---*/
7987 static int dissect_qsig_pumch_EnquiryArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7988 int offset = 0;
7989 asn1_ctx_t asn1_ctx;
7990 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7991 offset = dissect_qsig_pumch_EnquiryArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU);
7992 return offset;
7994 static int dissect_qsig_pumch_EnquiryRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
7995 int offset = 0;
7996 asn1_ctx_t asn1_ctx;
7997 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7998 offset = dissect_qsig_pumch_EnquiryRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU);
7999 return offset;
8001 static int dissect_qsig_pumch_DivertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8002 int offset = 0;
8003 asn1_ctx_t asn1_ctx;
8004 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8005 offset = dissect_qsig_pumch_DivertArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_DivertArg_PDU);
8006 return offset;
8008 static int dissect_qsig_pumch_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8009 int offset = 0;
8010 asn1_ctx_t asn1_ctx;
8011 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8012 offset = dissect_qsig_pumch_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_DummyRes_PDU);
8013 return offset;
8015 static int dissect_qsig_pumch_InformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8016 int offset = 0;
8017 asn1_ctx_t asn1_ctx;
8018 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8019 offset = dissect_qsig_pumch_InformArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_InformArg_PDU);
8020 return offset;
8022 static int dissect_qsig_pumch_PumoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8023 int offset = 0;
8024 asn1_ctx_t asn1_ctx;
8025 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8026 offset = dissect_qsig_pumch_PumoArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_PumoArg_PDU);
8027 return offset;
8029 static int dissect_qsig_pumch_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8030 int offset = 0;
8031 asn1_ctx_t asn1_ctx;
8032 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8033 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_pumch_qsig_pumch_Extension_PDU);
8034 return offset;
8038 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
8042 static int
8043 dissect_qsig_ssct_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8044 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8046 return offset;
8050 static const ber_sequence_t qsig_ssct_SEQUENCE_OF_Extension_sequence_of[1] = {
8051 { &hf_qsig_ssct_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8054 static int
8055 dissect_qsig_ssct_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8056 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8057 qsig_ssct_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_ssct_SEQUENCE_OF_Extension);
8059 return offset;
8063 static const value_string qsig_ssct_DummyArg_vals[] = {
8064 { 0, "null" },
8065 { 1, "single" },
8066 { 2, "multiple" },
8067 { 0, NULL }
8070 static const ber_choice_t qsig_ssct_DummyArg_choice[] = {
8071 { 0, &hf_qsig_ssct_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_NULL },
8072 { 1, &hf_qsig_ssct_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8073 { 2, &hf_qsig_ssct_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8074 { 0, NULL, 0, 0, 0, NULL }
8077 static int
8078 dissect_qsig_ssct_DummyArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8079 offset = dissect_ber_choice(actx, tree, tvb, offset,
8080 qsig_ssct_DummyArg_choice, hf_index, ett_qsig_ssct_DummyArg,
8081 NULL);
8083 return offset;
8087 static const value_string qsig_ssct_DummyRes_vals[] = {
8088 { 0, "null" },
8089 { 1, "single" },
8090 { 2, "multiple" },
8091 { 0, NULL }
8094 static const ber_choice_t qsig_ssct_DummyRes_choice[] = {
8095 { 0, &hf_qsig_ssct_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_NULL },
8096 { 1, &hf_qsig_ssct_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8097 { 2, &hf_qsig_ssct_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8098 { 0, NULL, 0, 0, 0, NULL }
8101 static int
8102 dissect_qsig_ssct_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8103 offset = dissect_ber_choice(actx, tree, tvb, offset,
8104 qsig_ssct_DummyRes_choice, hf_index, ett_qsig_ssct_DummyRes,
8105 NULL);
8107 return offset;
8112 static int
8113 dissect_qsig_ssct_AwaitConnect(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8114 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
8116 return offset;
8120 static const value_string qsig_ssct_SSCTIargumentExtension_vals[] = {
8121 { 4, "single" },
8122 { 5, "multiple" },
8123 { 0, NULL }
8126 static const ber_choice_t qsig_ssct_SSCTIargumentExtension_choice[] = {
8127 { 4, &hf_qsig_ssct_single , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8128 { 5, &hf_qsig_ssct_multiple , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8129 { 0, NULL, 0, 0, 0, NULL }
8132 static int
8133 dissect_qsig_ssct_SSCTIargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8134 offset = dissect_ber_choice(actx, tree, tvb, offset,
8135 qsig_ssct_SSCTIargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTIargumentExtension,
8136 NULL);
8138 return offset;
8142 static const ber_sequence_t qsig_ssct_SSCTInitiateArg_sequence[] = {
8143 { &hf_qsig_ssct_rerouteingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8144 { &hf_qsig_ssct_transferredAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressScreened },
8145 { &hf_qsig_ssct_awaitConnect, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_qsig_ssct_AwaitConnect },
8146 { &hf_qsig_ssct_transferredName, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8147 { &hf_qsig_ssct_transferringAddress, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressScreened },
8148 { &hf_qsig_ssct_transferringName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8149 { &hf_qsig_ssct_argumentExtensionSSCTI, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTIargumentExtension },
8150 { NULL, 0, 0, 0, NULL }
8153 static int
8154 dissect_qsig_ssct_SSCTInitiateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8155 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8156 qsig_ssct_SSCTInitiateArg_sequence, hf_index, ett_qsig_ssct_SSCTInitiateArg);
8158 return offset;
8162 static const value_string qsig_ssct_SSCTSargumentExtension_vals[] = {
8163 { 3, "single" },
8164 { 4, "multiple" },
8165 { 0, NULL }
8168 static const ber_choice_t qsig_ssct_SSCTSargumentExtension_choice[] = {
8169 { 3, &hf_qsig_ssct_single , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8170 { 4, &hf_qsig_ssct_multiple , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8171 { 0, NULL, 0, 0, 0, NULL }
8174 static int
8175 dissect_qsig_ssct_SSCTSargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8176 offset = dissect_ber_choice(actx, tree, tvb, offset,
8177 qsig_ssct_SSCTSargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTSargumentExtension,
8178 NULL);
8180 return offset;
8184 static const ber_sequence_t qsig_ssct_SSCTSetupArg_sequence[] = {
8185 { &hf_qsig_ssct_transferringAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressScreened },
8186 { &hf_qsig_ssct_transferringName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8187 { &hf_qsig_ssct_argumentExtensionSSCTS, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTSargumentExtension },
8188 { NULL, 0, 0, 0, NULL }
8191 static int
8192 dissect_qsig_ssct_SSCTSetupArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8193 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8194 qsig_ssct_SSCTSetupArg_sequence, hf_index, ett_qsig_ssct_SSCTSetupArg);
8196 return offset;
8200 static const value_string qsig_ssct_SSCTDargumentExtension_vals[] = {
8201 { 3, "single" },
8202 { 4, "multiple" },
8203 { 0, NULL }
8206 static const ber_choice_t qsig_ssct_SSCTDargumentExtension_choice[] = {
8207 { 3, &hf_qsig_ssct_single , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8208 { 4, &hf_qsig_ssct_multiple , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_ssct_SEQUENCE_OF_Extension },
8209 { 0, NULL, 0, 0, 0, NULL }
8212 static int
8213 dissect_qsig_ssct_SSCTDargumentExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8214 offset = dissect_ber_choice(actx, tree, tvb, offset,
8215 qsig_ssct_SSCTDargumentExtension_choice, hf_index, ett_qsig_ssct_SSCTDargumentExtension,
8216 NULL);
8218 return offset;
8222 static const ber_sequence_t qsig_ssct_SSCTDigitInfoArg_sequence[] = {
8223 { &hf_qsig_ssct_reroutingNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
8224 { &hf_qsig_ssct_sendingComplete, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_ssct_NULL },
8225 { &hf_qsig_ssct_argumentExtensionSSCTD, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_ssct_SSCTDargumentExtension },
8226 { NULL, 0, 0, 0, NULL }
8229 static int
8230 dissect_qsig_ssct_SSCTDigitInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8231 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8232 qsig_ssct_SSCTDigitInfoArg_sequence, hf_index, ett_qsig_ssct_SSCTDigitInfoArg);
8234 return offset;
8237 /*--- PDUs ---*/
8239 static int dissect_qsig_ssct_SSCTInitiateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8240 int offset = 0;
8241 asn1_ctx_t asn1_ctx;
8242 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8243 offset = dissect_qsig_ssct_SSCTInitiateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU);
8244 return offset;
8246 static int dissect_qsig_ssct_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8247 int offset = 0;
8248 asn1_ctx_t asn1_ctx;
8249 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8250 offset = dissect_qsig_ssct_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_DummyRes_PDU);
8251 return offset;
8253 static int dissect_qsig_ssct_SSCTSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8254 int offset = 0;
8255 asn1_ctx_t asn1_ctx;
8256 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8257 offset = dissect_qsig_ssct_SSCTSetupArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU);
8258 return offset;
8260 static int dissect_qsig_ssct_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8261 int offset = 0;
8262 asn1_ctx_t asn1_ctx;
8263 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8264 offset = dissect_qsig_ssct_DummyArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_DummyArg_PDU);
8265 return offset;
8267 static int dissect_qsig_ssct_SSCTDigitInfoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8268 int offset = 0;
8269 asn1_ctx_t asn1_ctx;
8270 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8271 offset = dissect_qsig_ssct_SSCTDigitInfoArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU);
8272 return offset;
8274 static int dissect_qsig_ssct_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8275 int offset = 0;
8276 asn1_ctx_t asn1_ctx;
8277 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8278 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_ssct_qsig_ssct_Extension_PDU);
8279 return offset;
8283 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
8287 static int
8288 dissect_qsig_wtmlr_AlternativeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8289 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
8290 NULL);
8292 return offset;
8296 static const value_string qsig_wtmlr_WtmUserId_vals[] = {
8297 { 0, "pisnNumber" },
8298 { 1, "alternativeId" },
8299 { 0, NULL }
8302 static const ber_choice_t qsig_wtmlr_WtmUserId_choice[] = {
8303 { 0, &hf_qsig_wtmlr_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8304 { 1, &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8305 { 0, NULL, 0, 0, 0, NULL }
8308 static int
8309 dissect_qsig_wtmlr_WtmUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8310 offset = dissect_ber_choice(actx, tree, tvb, offset,
8311 qsig_wtmlr_WtmUserId_choice, hf_index, ett_qsig_wtmlr_WtmUserId,
8312 NULL);
8314 return offset;
8318 static const ber_sequence_t qsig_wtmlr_SEQUENCE_OF_Extension_sequence_of[1] = {
8319 { &hf_qsig_wtmlr_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8322 static int
8323 dissect_qsig_wtmlr_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8324 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8325 qsig_wtmlr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmlr_SEQUENCE_OF_Extension);
8327 return offset;
8331 static const value_string qsig_wtmlr_LrExtension_vals[] = {
8332 { 1, "extension" },
8333 { 2, "sequOfExtn" },
8334 { 0, NULL }
8337 static const ber_choice_t qsig_wtmlr_LrExtension_choice[] = {
8338 { 1, &hf_qsig_wtmlr_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8339 { 2, &hf_qsig_wtmlr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmlr_SEQUENCE_OF_Extension },
8340 { 0, NULL, 0, 0, 0, NULL }
8343 static int
8344 dissect_qsig_wtmlr_LrExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8345 offset = dissect_ber_choice(actx, tree, tvb, offset,
8346 qsig_wtmlr_LrExtension_choice, hf_index, ett_qsig_wtmlr_LrExtension,
8347 NULL);
8349 return offset;
8353 static const ber_sequence_t qsig_wtmlr_LocUpdArg_sequence[] = {
8354 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8355 { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8356 { &hf_qsig_wtmlr_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8357 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8358 { NULL, 0, 0, 0, NULL }
8361 static int
8362 dissect_qsig_wtmlr_LocUpdArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8363 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8364 qsig_wtmlr_LocUpdArg_sequence, hf_index, ett_qsig_wtmlr_LocUpdArg);
8366 return offset;
8371 static int
8372 dissect_qsig_wtmlr_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8373 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8375 return offset;
8379 static const value_string qsig_wtmlr_DummyRes_vals[] = {
8380 { 0, "null" },
8381 { 1, "extension" },
8382 { 2, "sequOfExtn" },
8383 { 0, NULL }
8386 static const ber_choice_t qsig_wtmlr_DummyRes_choice[] = {
8387 { 0, &hf_qsig_wtmlr_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_NULL },
8388 { 1, &hf_qsig_wtmlr_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8389 { 2, &hf_qsig_wtmlr_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmlr_SEQUENCE_OF_Extension },
8390 { 0, NULL, 0, 0, 0, NULL }
8393 static int
8394 dissect_qsig_wtmlr_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8395 offset = dissect_ber_choice(actx, tree, tvb, offset,
8396 qsig_wtmlr_DummyRes_choice, hf_index, ett_qsig_wtmlr_DummyRes,
8397 NULL);
8399 return offset;
8403 static const ber_sequence_t qsig_wtmlr_LocDelArg_sequence[] = {
8404 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8405 { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8406 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8407 { NULL, 0, 0, 0, NULL }
8410 static int
8411 dissect_qsig_wtmlr_LocDelArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8412 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8413 qsig_wtmlr_LocDelArg_sequence, hf_index, ett_qsig_wtmlr_LocDelArg);
8415 return offset;
8419 static const ber_sequence_t qsig_wtmlr_LocDeRegArg_sequence[] = {
8420 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8421 { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8422 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8423 { NULL, 0, 0, 0, NULL }
8426 static int
8427 dissect_qsig_wtmlr_LocDeRegArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8428 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8429 qsig_wtmlr_LocDeRegArg_sequence, hf_index, ett_qsig_wtmlr_LocDeRegArg);
8431 return offset;
8435 static const ber_sequence_t qsig_wtmlr_PisnEnqArg_sequence[] = {
8436 { &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8437 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8438 { NULL, 0, 0, 0, NULL }
8441 static int
8442 dissect_qsig_wtmlr_PisnEnqArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8443 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8444 qsig_wtmlr_PisnEnqArg_sequence, hf_index, ett_qsig_wtmlr_PisnEnqArg);
8446 return offset;
8450 static const ber_sequence_t qsig_wtmlr_PisnEnqRes_sequence[] = {
8451 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8452 { &hf_qsig_wtmlr_resExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8453 { NULL, 0, 0, 0, NULL }
8456 static int
8457 dissect_qsig_wtmlr_PisnEnqRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8458 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8459 qsig_wtmlr_PisnEnqRes_sequence, hf_index, ett_qsig_wtmlr_PisnEnqRes);
8461 return offset;
8465 static const ber_sequence_t qsig_wtmlr_GetRRCInfArg_sequence[] = {
8466 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8467 { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8468 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8469 { NULL, 0, 0, 0, NULL }
8472 static int
8473 dissect_qsig_wtmlr_GetRRCInfArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8474 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8475 qsig_wtmlr_GetRRCInfArg_sequence, hf_index, ett_qsig_wtmlr_GetRRCInfArg);
8477 return offset;
8482 static int
8483 dissect_qsig_wtmlr_RRClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8484 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
8485 NULL);
8487 return offset;
8491 static const ber_sequence_t qsig_wtmlr_GetRRCInfRes_sequence[] = {
8492 { &hf_qsig_wtmlr_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_AlternativeId },
8493 { &hf_qsig_wtmlr_rrClass , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_RRClass },
8494 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8495 { NULL, 0, 0, 0, NULL }
8498 static int
8499 dissect_qsig_wtmlr_GetRRCInfRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8500 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8501 qsig_wtmlr_GetRRCInfRes_sequence, hf_index, ett_qsig_wtmlr_GetRRCInfRes);
8503 return offset;
8507 static const ber_sequence_t qsig_wtmlr_LocInfoCheckArg_sequence[] = {
8508 { &hf_qsig_wtmlr_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_WtmUserId },
8509 { &hf_qsig_wtmlr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
8510 { &hf_qsig_wtmlr_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8511 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8512 { NULL, 0, 0, 0, NULL }
8515 static int
8516 dissect_qsig_wtmlr_LocInfoCheckArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8517 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8518 qsig_wtmlr_LocInfoCheckArg_sequence, hf_index, ett_qsig_wtmlr_LocInfoCheckArg);
8520 return offset;
8524 static const value_string qsig_wtmlr_CheckResult_vals[] = {
8525 { 0, "locInfChk-correct" },
8526 { 1, "locInfChk-incorrect" },
8527 { 0, NULL }
8531 static int
8532 dissect_qsig_wtmlr_CheckResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8533 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
8534 NULL);
8536 return offset;
8540 static const ber_sequence_t qsig_wtmlr_LocInfoCheckRes_sequence[] = {
8541 { &hf_qsig_wtmlr_checkResult, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmlr_CheckResult },
8542 { &hf_qsig_wtmlr_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmlr_LrExtension },
8543 { NULL, 0, 0, 0, NULL }
8546 static int
8547 dissect_qsig_wtmlr_LocInfoCheckRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8548 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8549 qsig_wtmlr_LocInfoCheckRes_sequence, hf_index, ett_qsig_wtmlr_LocInfoCheckRes);
8551 return offset;
8554 /*--- PDUs ---*/
8556 static int dissect_qsig_wtmlr_LocUpdArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8557 int offset = 0;
8558 asn1_ctx_t asn1_ctx;
8559 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8560 offset = dissect_qsig_wtmlr_LocUpdArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU);
8561 return offset;
8563 static int dissect_qsig_wtmlr_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8564 int offset = 0;
8565 asn1_ctx_t asn1_ctx;
8566 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8567 offset = dissect_qsig_wtmlr_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU);
8568 return offset;
8570 static int dissect_qsig_wtmlr_LocDelArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8571 int offset = 0;
8572 asn1_ctx_t asn1_ctx;
8573 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8574 offset = dissect_qsig_wtmlr_LocDelArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU);
8575 return offset;
8577 static int dissect_qsig_wtmlr_LocDeRegArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8578 int offset = 0;
8579 asn1_ctx_t asn1_ctx;
8580 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8581 offset = dissect_qsig_wtmlr_LocDeRegArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU);
8582 return offset;
8584 static int dissect_qsig_wtmlr_PisnEnqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8585 int offset = 0;
8586 asn1_ctx_t asn1_ctx;
8587 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8588 offset = dissect_qsig_wtmlr_PisnEnqArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU);
8589 return offset;
8591 static int dissect_qsig_wtmlr_PisnEnqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8592 int offset = 0;
8593 asn1_ctx_t asn1_ctx;
8594 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8595 offset = dissect_qsig_wtmlr_PisnEnqRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU);
8596 return offset;
8598 static int dissect_qsig_wtmlr_GetRRCInfArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8599 int offset = 0;
8600 asn1_ctx_t asn1_ctx;
8601 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8602 offset = dissect_qsig_wtmlr_GetRRCInfArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU);
8603 return offset;
8605 static int dissect_qsig_wtmlr_GetRRCInfRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8606 int offset = 0;
8607 asn1_ctx_t asn1_ctx;
8608 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8609 offset = dissect_qsig_wtmlr_GetRRCInfRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU);
8610 return offset;
8612 static int dissect_qsig_wtmlr_LocInfoCheckArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8613 int offset = 0;
8614 asn1_ctx_t asn1_ctx;
8615 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8616 offset = dissect_qsig_wtmlr_LocInfoCheckArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU);
8617 return offset;
8619 static int dissect_qsig_wtmlr_LocInfoCheckRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8620 int offset = 0;
8621 asn1_ctx_t asn1_ctx;
8622 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8623 offset = dissect_qsig_wtmlr_LocInfoCheckRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU);
8624 return offset;
8626 static int dissect_qsig_wtmlr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8627 int offset = 0;
8628 asn1_ctx_t asn1_ctx;
8629 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8630 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU);
8631 return offset;
8635 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
8638 static const ber_sequence_t qsig_wtmch_SEQUENCE_OF_Extension_sequence_of[1] = {
8639 { &hf_qsig_wtmch_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
8642 static int
8643 dissect_qsig_wtmch_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8644 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
8645 qsig_wtmch_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmch_SEQUENCE_OF_Extension);
8647 return offset;
8651 static const value_string qsig_wtmch_WtmiExtension_vals[] = {
8652 { 4, "extension" },
8653 { 5, "sequOfExtn" },
8654 { 0, NULL }
8657 static const ber_choice_t qsig_wtmch_WtmiExtension_choice[] = {
8658 { 4, &hf_qsig_wtmch_extension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8659 { 5, &hf_qsig_wtmch_sequOfExtn, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8660 { 0, NULL, 0, 0, 0, NULL }
8663 static int
8664 dissect_qsig_wtmch_WtmiExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8665 offset = dissect_ber_choice(actx, tree, tvb, offset,
8666 qsig_wtmch_WtmiExtension_choice, hf_index, ett_qsig_wtmch_WtmiExtension,
8667 NULL);
8669 return offset;
8673 static const ber_sequence_t qsig_wtmch_EnquiryArg_sequence[] = {
8674 { &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8675 { &hf_qsig_wtmch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
8676 { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8677 { NULL, 0, 0, 0, NULL }
8680 static int
8681 dissect_qsig_wtmch_EnquiryArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8682 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8683 qsig_wtmch_EnquiryArg_sequence, hf_index, ett_qsig_wtmch_EnquiryArg);
8685 return offset;
8690 static int
8691 dissect_qsig_wtmch_AlternativeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8692 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
8693 NULL);
8695 return offset;
8699 static const ber_sequence_t qsig_wtmch_T_both_sequence[] = {
8700 { &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8701 { &hf_qsig_wtmch_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_AlternativeId },
8702 { NULL, 0, 0, 0, NULL }
8705 static int
8706 dissect_qsig_wtmch_T_both(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8707 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8708 qsig_wtmch_T_both_sequence, hf_index, ett_qsig_wtmch_T_both);
8710 return offset;
8714 static const value_string qsig_wtmch_WtmIdentity_vals[] = {
8715 { 0, "pisnNumber" },
8716 { 1, "alternativeId" },
8717 { 2, "both" },
8718 { 0, NULL }
8721 static const ber_choice_t qsig_wtmch_WtmIdentity_choice[] = {
8722 { 0, &hf_qsig_wtmch_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8723 { 1, &hf_qsig_wtmch_alternativeId, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_AlternativeId },
8724 { 2, &hf_qsig_wtmch_both , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_T_both },
8725 { 0, NULL, 0, 0, 0, NULL }
8728 static int
8729 dissect_qsig_wtmch_WtmIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8730 offset = dissect_ber_choice(actx, tree, tvb, offset,
8731 qsig_wtmch_WtmIdentity_choice, hf_index, ett_qsig_wtmch_WtmIdentity,
8732 NULL);
8734 return offset;
8738 static const ber_sequence_t qsig_wtmch_DivertArg_sequence[] = {
8739 { &hf_qsig_wtmch_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8740 { &hf_qsig_wtmch_callingNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedNumberScreened },
8741 { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8742 { &hf_qsig_wtmch_qSIGInfoElement, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_qsig_PSS1InformationElement },
8743 { &hf_qsig_wtmch_callingUserSub, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
8744 { &hf_qsig_wtmch_callingName, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8745 { &hf_qsig_wtmch_wtmUserSub, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_qsig_PartySubaddress },
8746 { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8747 { NULL, 0, 0, 0, NULL }
8750 static int
8751 dissect_qsig_wtmch_DivertArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8752 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8753 qsig_wtmch_DivertArg_sequence, hf_index, ett_qsig_wtmch_DivertArg);
8755 return offset;
8759 static const ber_sequence_t qsig_wtmch_InformArg_sequence[] = {
8760 { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8761 { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8762 { NULL, 0, 0, 0, NULL }
8765 static int
8766 dissect_qsig_wtmch_InformArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8767 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8768 qsig_wtmch_InformArg_sequence, hf_index, ett_qsig_wtmch_InformArg);
8770 return offset;
8774 static const ber_sequence_t qsig_wtmch_CurrLocation_sequence[] = {
8775 { &hf_qsig_wtmch_visitPINX, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8776 { &hf_qsig_wtmch_wtmIdentity, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmIdentity },
8777 { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8778 { NULL, 0, 0, 0, NULL }
8781 static int
8782 dissect_qsig_wtmch_CurrLocation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8783 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8784 qsig_wtmch_CurrLocation_sequence, hf_index, ett_qsig_wtmch_CurrLocation);
8786 return offset;
8790 static const value_string qsig_wtmch_SubscriptionOption_vals[] = {
8791 { 0, "noNotification" },
8792 { 1, "notificationWithoutDivertedToNr" },
8793 { 2, "notificationWithDivertedToNr" },
8794 { 0, NULL }
8798 static int
8799 dissect_qsig_wtmch_SubscriptionOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8800 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
8801 NULL);
8803 return offset;
8807 static const ber_sequence_t qsig_wtmch_CfuActivated_sequence[] = {
8808 { &hf_qsig_wtmch_divToAddress, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Address },
8809 { &hf_qsig_wtmch_divOptions, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_SubscriptionOption },
8810 { &hf_qsig_wtmch_wtmName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
8811 { &hf_qsig_wtmch_argExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_WtmiExtension },
8812 { NULL, 0, 0, 0, NULL }
8815 static int
8816 dissect_qsig_wtmch_CfuActivated(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8817 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8818 qsig_wtmch_CfuActivated_sequence, hf_index, ett_qsig_wtmch_CfuActivated);
8820 return offset;
8824 static const value_string qsig_wtmch_EnquiryRes_vals[] = {
8825 { 1, "currLocation" },
8826 { 2, "cfuActivated" },
8827 { 0, NULL }
8830 static const ber_choice_t qsig_wtmch_EnquiryRes_choice[] = {
8831 { 1, &hf_qsig_wtmch_currLocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_CurrLocation },
8832 { 2, &hf_qsig_wtmch_cfuActivated, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_CfuActivated },
8833 { 0, NULL, 0, 0, 0, NULL }
8836 static int
8837 dissect_qsig_wtmch_EnquiryRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8838 offset = dissect_ber_choice(actx, tree, tvb, offset,
8839 qsig_wtmch_EnquiryRes_choice, hf_index, ett_qsig_wtmch_EnquiryRes,
8840 NULL);
8842 return offset;
8847 static int
8848 dissect_qsig_wtmch_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8849 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
8851 return offset;
8855 static const value_string qsig_wtmch_DummyRes_vals[] = {
8856 { 0, "null" },
8857 { 1, "extension" },
8858 { 2, "sequOfExtn" },
8859 { 0, NULL }
8862 static const ber_choice_t qsig_wtmch_DummyRes_choice[] = {
8863 { 0, &hf_qsig_wtmch_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmch_NULL },
8864 { 1, &hf_qsig_wtmch_extension, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8865 { 2, &hf_qsig_wtmch_sequOfExtn, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8866 { 0, NULL, 0, 0, 0, NULL }
8869 static int
8870 dissect_qsig_wtmch_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8871 offset = dissect_ber_choice(actx, tree, tvb, offset,
8872 qsig_wtmch_DummyRes_choice, hf_index, ett_qsig_wtmch_DummyRes,
8873 NULL);
8875 return offset;
8879 static const value_string qsig_wtmch_T_wtmoaextension_vals[] = {
8880 { 2, "single" },
8881 { 3, "multiple" },
8882 { 0, NULL }
8885 static const ber_choice_t qsig_wtmch_T_wtmoaextension_choice[] = {
8886 { 2, &hf_qsig_wtmch_single , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
8887 { 3, &hf_qsig_wtmch_multiple , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_SEQUENCE_OF_Extension },
8888 { 0, NULL, 0, 0, 0, NULL }
8891 static int
8892 dissect_qsig_wtmch_T_wtmoaextension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8893 offset = dissect_ber_choice(actx, tree, tvb, offset,
8894 qsig_wtmch_T_wtmoaextension_choice, hf_index, ett_qsig_wtmch_T_wtmoaextension,
8895 NULL);
8897 return offset;
8901 static const ber_sequence_t qsig_wtmch_WtmoArg_sequence[] = {
8902 { &hf_qsig_wtmch_destinationNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
8903 { &hf_qsig_wtmch_sendingComplete, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmch_NULL },
8904 { &hf_qsig_wtmch_wtmoaextension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmch_T_wtmoaextension },
8905 { NULL, 0, 0, 0, NULL }
8908 static int
8909 dissect_qsig_wtmch_WtmoArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8910 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
8911 qsig_wtmch_WtmoArg_sequence, hf_index, ett_qsig_wtmch_WtmoArg);
8913 return offset;
8916 /*--- PDUs ---*/
8918 static int dissect_qsig_wtmch_EnquiryArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8919 int offset = 0;
8920 asn1_ctx_t asn1_ctx;
8921 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8922 offset = dissect_qsig_wtmch_EnquiryArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU);
8923 return offset;
8925 static int dissect_qsig_wtmch_EnquiryRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8926 int offset = 0;
8927 asn1_ctx_t asn1_ctx;
8928 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8929 offset = dissect_qsig_wtmch_EnquiryRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU);
8930 return offset;
8932 static int dissect_qsig_wtmch_DivertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8933 int offset = 0;
8934 asn1_ctx_t asn1_ctx;
8935 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8936 offset = dissect_qsig_wtmch_DivertArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU);
8937 return offset;
8939 static int dissect_qsig_wtmch_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8940 int offset = 0;
8941 asn1_ctx_t asn1_ctx;
8942 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8943 offset = dissect_qsig_wtmch_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU);
8944 return offset;
8946 static int dissect_qsig_wtmch_InformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8947 int offset = 0;
8948 asn1_ctx_t asn1_ctx;
8949 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8950 offset = dissect_qsig_wtmch_InformArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_InformArg_PDU);
8951 return offset;
8953 static int dissect_qsig_wtmch_WtmoArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8954 int offset = 0;
8955 asn1_ctx_t asn1_ctx;
8956 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8957 offset = dissect_qsig_wtmch_WtmoArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU);
8958 return offset;
8960 static int dissect_qsig_wtmch_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8961 int offset = 0;
8962 asn1_ctx_t asn1_ctx;
8963 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
8964 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmch_qsig_wtmch_Extension_PDU);
8965 return offset;
8969 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
8973 static int
8974 dissect_qsig_wtmau_AlternativeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8975 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
8976 NULL);
8978 return offset;
8982 static const value_string qsig_wtmau_WtmUserId_vals[] = {
8983 { 0, "pisnNumber" },
8984 { 1, "alternativeId" },
8985 { 0, NULL }
8988 static const ber_choice_t qsig_wtmau_WtmUserId_choice[] = {
8989 { 0, &hf_qsig_wtmau_pisnNumber, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
8990 { 1, &hf_qsig_wtmau_alternativeId, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AlternativeId },
8991 { 0, NULL, 0, 0, 0, NULL }
8994 static int
8995 dissect_qsig_wtmau_WtmUserId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8996 offset = dissect_ber_choice(actx, tree, tvb, offset,
8997 qsig_wtmau_WtmUserId_choice, hf_index, ett_qsig_wtmau_WtmUserId,
8998 NULL);
9000 return offset;
9005 static int
9006 dissect_qsig_wtmau_AuthChallenge(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9007 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9008 NULL);
9010 return offset;
9015 static int
9016 dissect_qsig_wtmau_AuthResponse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9017 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9018 NULL);
9020 return offset;
9025 static int
9026 dissect_qsig_wtmau_DerivedCipherKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9027 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9028 NULL);
9030 return offset;
9035 static int
9036 dissect_qsig_wtmau_CalculationParam(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9037 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9038 NULL);
9040 return offset;
9044 static const ber_sequence_t qsig_wtmau_CalcWtatInfoUnit_sequence[] = {
9045 { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9046 { &hf_qsig_wtmau_authResponse, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthResponse },
9047 { &hf_qsig_wtmau_derivedCipherKey, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_DerivedCipherKey },
9048 { &hf_qsig_wtmau_calculationParam, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalculationParam },
9049 { NULL, 0, 0, 0, NULL }
9052 static int
9053 dissect_qsig_wtmau_CalcWtatInfoUnit(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9054 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9055 qsig_wtmau_CalcWtatInfoUnit_sequence, hf_index, ett_qsig_wtmau_CalcWtatInfoUnit);
9057 return offset;
9061 static const ber_sequence_t qsig_wtmau_CalcWtatInfo_sequence_of[1] = {
9062 { &hf_qsig_wtmau_CalcWtatInfo_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalcWtatInfoUnit },
9065 static int
9066 dissect_qsig_wtmau_CalcWtatInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9067 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9068 qsig_wtmau_CalcWtatInfo_sequence_of, hf_index, ett_qsig_wtmau_CalcWtatInfo);
9070 return offset;
9074 static const ber_sequence_t qsig_wtmau_SEQUENCE_OF_Extension_sequence_of[1] = {
9075 { &hf_qsig_wtmau_sequOfExtn_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9078 static int
9079 dissect_qsig_wtmau_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9080 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9081 qsig_wtmau_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_wtmau_SEQUENCE_OF_Extension);
9083 return offset;
9087 static const value_string qsig_wtmau_DummyExtension_vals[] = {
9088 { 5, "extension" },
9089 { 6, "sequOfExtn" },
9090 { 0, NULL }
9093 static const ber_choice_t qsig_wtmau_DummyExtension_choice[] = {
9094 { 5, &hf_qsig_wtmau_extension, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
9095 { 6, &hf_qsig_wtmau_sequOfExtn, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_SEQUENCE_OF_Extension },
9096 { 0, NULL, 0, 0, 0, NULL }
9099 static int
9100 dissect_qsig_wtmau_DummyExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9101 offset = dissect_ber_choice(actx, tree, tvb, offset,
9102 qsig_wtmau_DummyExtension_choice, hf_index, ett_qsig_wtmau_DummyExtension,
9103 NULL);
9105 return offset;
9109 static const ber_sequence_t qsig_wtmau_AuthWtmArg_sequence[] = {
9110 { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9111 { &hf_qsig_wtmau_calcWtatInfo, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtatInfo },
9112 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9113 { NULL, 0, 0, 0, NULL }
9116 static int
9117 dissect_qsig_wtmau_AuthWtmArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9118 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9119 qsig_wtmau_AuthWtmArg_sequence, hf_index, ett_qsig_wtmau_AuthWtmArg);
9121 return offset;
9125 static const value_string qsig_wtmau_T_autWtmResValue_vals[] = {
9126 { 0, "auth-res-correct" },
9127 { 1, "auth-res-incorrect" },
9128 { 0, NULL }
9132 static int
9133 dissect_qsig_wtmau_T_autWtmResValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9134 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9135 NULL);
9137 return offset;
9141 static const ber_sequence_t qsig_wtmau_AuthWtmRes_sequence[] = {
9142 { &hf_qsig_wtmau_autWtmResValue, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_T_autWtmResValue },
9143 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9144 { NULL, 0, 0, 0, NULL }
9147 static int
9148 dissect_qsig_wtmau_AuthWtmRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9149 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9150 qsig_wtmau_AuthWtmRes_sequence, hf_index, ett_qsig_wtmau_AuthWtmRes);
9152 return offset;
9157 static int
9158 dissect_qsig_wtmau_CanCompute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9159 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
9161 return offset;
9165 static const ber_sequence_t qsig_wtmau_WtatParamArg_sequence[] = {
9166 { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9167 { &hf_qsig_wtmau_canCompute, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CanCompute },
9168 { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9169 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9170 { NULL, 0, 0, 0, NULL }
9173 static int
9174 dissect_qsig_wtmau_WtatParamArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9175 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9176 qsig_wtmau_WtatParamArg_sequence, hf_index, ett_qsig_wtmau_WtatParamArg);
9178 return offset;
9182 static const value_string qsig_wtmau_DefinedIDs_vals[] = {
9183 { 0, "ct2" },
9184 { 1, "dect" },
9185 { 2, "gsm" },
9186 { 3, "pci" },
9187 { 4, "pwt" },
9188 { 5, "us-gsm" },
9189 { 6, "phs" },
9190 { 7, "tetra" },
9191 { 0, NULL }
9195 static int
9196 dissect_qsig_wtmau_DefinedIDs(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9197 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9198 NULL);
9200 return offset;
9205 static int
9206 dissect_qsig_wtmau_T_param(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9207 #line 164 "../../asn1/qsig/qsig.cnf"
9211 return offset;
9215 static const ber_sequence_t qsig_wtmau_AuthAlgorithm_sequence[] = {
9216 { &hf_qsig_wtmau_authAlg , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_DefinedIDs },
9217 { &hf_qsig_wtmau_param , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_T_param },
9218 { NULL, 0, 0, 0, NULL }
9221 static int
9222 dissect_qsig_wtmau_AuthAlgorithm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9223 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9224 qsig_wtmau_AuthAlgorithm_sequence, hf_index, ett_qsig_wtmau_AuthAlgorithm);
9226 return offset;
9231 static int
9232 dissect_qsig_wtmau_AuthSessionKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9233 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9234 NULL);
9236 return offset;
9240 static const ber_sequence_t qsig_wtmau_AuthSessionKeyInfo_sequence[] = {
9241 { &hf_qsig_wtmau_authSessionKey, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthSessionKey },
9242 { &hf_qsig_wtmau_calculationParam, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalculationParam },
9243 { NULL, 0, 0, 0, NULL }
9246 static int
9247 dissect_qsig_wtmau_AuthSessionKeyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9248 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9249 qsig_wtmau_AuthSessionKeyInfo_sequence, hf_index, ett_qsig_wtmau_AuthSessionKeyInfo);
9251 return offset;
9256 static int
9257 dissect_qsig_wtmau_AuthKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9258 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9259 NULL);
9261 return offset;
9266 static int
9267 dissect_qsig_wtmau_INTEGER_1_8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9268 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9269 NULL);
9271 return offset;
9275 static const value_string qsig_wtmau_T_wtatParamInfoChoice_vals[] = {
9276 { 1, "authSessionKeyInfo" },
9277 { 2, "calcWtatInfo" },
9278 { 3, "authKey" },
9279 { 4, "challLen" },
9280 { 0, NULL }
9283 static const ber_choice_t qsig_wtmau_T_wtatParamInfoChoice_choice[] = {
9284 { 1, &hf_qsig_wtmau_authSessionKeyInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthSessionKeyInfo },
9285 { 2, &hf_qsig_wtmau_calcWtatInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtatInfo },
9286 { 3, &hf_qsig_wtmau_authKey , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthKey },
9287 { 4, &hf_qsig_wtmau_challLen , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_INTEGER_1_8 },
9288 { 0, NULL, 0, 0, 0, NULL }
9291 static int
9292 dissect_qsig_wtmau_T_wtatParamInfoChoice(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9293 offset = dissect_ber_choice(actx, tree, tvb, offset,
9294 qsig_wtmau_T_wtatParamInfoChoice_choice, hf_index, ett_qsig_wtmau_T_wtatParamInfoChoice,
9295 NULL);
9297 return offset;
9301 static const ber_sequence_t qsig_wtmau_WtatParamInfo_sequence[] = {
9302 { &hf_qsig_wtmau_authAlgorithm, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthAlgorithm },
9303 { &hf_qsig_wtmau_wtatParamInfoChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_T_wtatParamInfoChoice },
9304 { NULL, 0, 0, 0, NULL }
9307 static int
9308 dissect_qsig_wtmau_WtatParamInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9309 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9310 qsig_wtmau_WtatParamInfo_sequence, hf_index, ett_qsig_wtmau_WtatParamInfo);
9312 return offset;
9316 static const ber_sequence_t qsig_wtmau_WtatParamRes_sequence[] = {
9317 { &hf_qsig_wtmau_wtatParamInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_WtatParamInfo },
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 }
9322 static int
9323 dissect_qsig_wtmau_WtatParamRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9324 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9325 qsig_wtmau_WtatParamRes_sequence, hf_index, ett_qsig_wtmau_WtatParamRes);
9327 return offset;
9331 static const ber_sequence_t qsig_wtmau_WtanParamArg_sequence[] = {
9332 { &hf_qsig_wtmau_wtmUserId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtmUserId },
9333 { &hf_qsig_wtmau_authChallenge, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthChallenge },
9334 { &hf_qsig_wtmau_authAlgorithm, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthAlgorithm },
9335 { &hf_qsig_wtmau_canCompute, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CanCompute },
9336 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9337 { NULL, 0, 0, 0, NULL }
9340 static int
9341 dissect_qsig_wtmau_WtanParamArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9342 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9343 qsig_wtmau_WtanParamArg_sequence, hf_index, ett_qsig_wtmau_WtanParamArg);
9345 return offset;
9349 static const ber_sequence_t qsig_wtmau_CalcWtanInfo_sequence[] = {
9350 { &hf_qsig_wtmau_authResponse, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_AuthResponse },
9351 { &hf_qsig_wtmau_calculationParam, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_CalculationParam },
9352 { NULL, 0, 0, 0, NULL }
9355 static int
9356 dissect_qsig_wtmau_CalcWtanInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9357 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9358 qsig_wtmau_CalcWtanInfo_sequence, hf_index, ett_qsig_wtmau_CalcWtanInfo);
9360 return offset;
9364 static const value_string qsig_wtmau_WtanParamInfo_vals[] = {
9365 { 1, "authSessionKeyInfo" },
9366 { 2, "calcWtanInfo" },
9367 { 0, NULL }
9370 static const ber_choice_t qsig_wtmau_WtanParamInfo_choice[] = {
9371 { 1, &hf_qsig_wtmau_authSessionKeyInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_AuthSessionKeyInfo },
9372 { 2, &hf_qsig_wtmau_calcWtanInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_wtmau_CalcWtanInfo },
9373 { 0, NULL, 0, 0, 0, NULL }
9376 static int
9377 dissect_qsig_wtmau_WtanParamInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9378 offset = dissect_ber_choice(actx, tree, tvb, offset,
9379 qsig_wtmau_WtanParamInfo_choice, hf_index, ett_qsig_wtmau_WtanParamInfo,
9380 NULL);
9382 return offset;
9386 static const ber_sequence_t qsig_wtmau_WtanParamRes_sequence[] = {
9387 { &hf_qsig_wtmau_wtanParamInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_WtanParamInfo },
9388 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9389 { NULL, 0, 0, 0, NULL }
9392 static int
9393 dissect_qsig_wtmau_WtanParamRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9394 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9395 qsig_wtmau_WtanParamRes_sequence, hf_index, ett_qsig_wtmau_WtanParamRes);
9397 return offset;
9401 static const ber_sequence_t qsig_wtmau_ARG_transferAuthParam_sequence[] = {
9402 { &hf_qsig_wtmau_wtatParamInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_wtmau_WtatParamInfo },
9403 { &hf_qsig_wtmau_dummyExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_wtmau_DummyExtension },
9404 { NULL, 0, 0, 0, NULL }
9407 static int
9408 dissect_qsig_wtmau_ARG_transferAuthParam(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9409 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9410 qsig_wtmau_ARG_transferAuthParam_sequence, hf_index, ett_qsig_wtmau_ARG_transferAuthParam);
9412 return offset;
9415 /*--- PDUs ---*/
9417 static int dissect_qsig_wtmau_AuthWtmArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9418 int offset = 0;
9419 asn1_ctx_t asn1_ctx;
9420 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9421 offset = dissect_qsig_wtmau_AuthWtmArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU);
9422 return offset;
9424 static int dissect_qsig_wtmau_AuthWtmRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9425 int offset = 0;
9426 asn1_ctx_t asn1_ctx;
9427 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9428 offset = dissect_qsig_wtmau_AuthWtmRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU);
9429 return offset;
9431 static int dissect_qsig_wtmau_WtatParamArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9432 int offset = 0;
9433 asn1_ctx_t asn1_ctx;
9434 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9435 offset = dissect_qsig_wtmau_WtatParamArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU);
9436 return offset;
9438 static int dissect_qsig_wtmau_WtatParamRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9439 int offset = 0;
9440 asn1_ctx_t asn1_ctx;
9441 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9442 offset = dissect_qsig_wtmau_WtatParamRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU);
9443 return offset;
9445 static int dissect_qsig_wtmau_WtanParamArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9446 int offset = 0;
9447 asn1_ctx_t asn1_ctx;
9448 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9449 offset = dissect_qsig_wtmau_WtanParamArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU);
9450 return offset;
9452 static int dissect_qsig_wtmau_WtanParamRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9453 int offset = 0;
9454 asn1_ctx_t asn1_ctx;
9455 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9456 offset = dissect_qsig_wtmau_WtanParamRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU);
9457 return offset;
9459 static int dissect_qsig_wtmau_ARG_transferAuthParam_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9460 int offset = 0;
9461 asn1_ctx_t asn1_ctx;
9462 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9463 offset = dissect_qsig_wtmau_ARG_transferAuthParam(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU);
9464 return offset;
9466 static int dissect_qsig_wtmau_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9467 int offset = 0;
9468 asn1_ctx_t asn1_ctx;
9469 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9470 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_wtmau_qsig_wtmau_Extension_PDU);
9471 return offset;
9475 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
9479 static int
9480 dissect_qsig_sd_BMPStringNormal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9481 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9482 NULL);
9484 return offset;
9489 static int
9490 dissect_qsig_sd_BMPStringExtended(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9491 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9492 NULL);
9494 return offset;
9498 static const value_string qsig_sd_DisplayString_vals[] = {
9499 { 0, "displayStringNormal" },
9500 { 1, "displayStringExtended" },
9501 { 0, NULL }
9504 static const ber_choice_t qsig_sd_DisplayString_choice[] = {
9505 { 0, &hf_qsig_sd_displayStringNormal, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringNormal },
9506 { 1, &hf_qsig_sd_displayStringExtended, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringExtended },
9507 { 0, NULL, 0, 0, 0, NULL }
9510 static int
9511 dissect_qsig_sd_DisplayString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9512 offset = dissect_ber_choice(actx, tree, tvb, offset,
9513 qsig_sd_DisplayString_choice, hf_index, ett_qsig_sd_DisplayString,
9514 NULL);
9516 return offset;
9520 static const ber_sequence_t qsig_sd_SEQUENCE_OF_Extension_sequence_of[1] = {
9521 { &hf_qsig_sd_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9524 static int
9525 dissect_qsig_sd_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9526 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9527 qsig_sd_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sd_SEQUENCE_OF_Extension);
9529 return offset;
9533 static const value_string qsig_sd_SDExtension_vals[] = {
9534 { 2, "extension" },
9535 { 3, "multipleExtension" },
9536 { 0, NULL }
9539 static const ber_choice_t qsig_sd_SDExtension_choice[] = {
9540 { 2, &hf_qsig_sd_extension , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
9541 { 3, &hf_qsig_sd_multipleExtension, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_sd_SEQUENCE_OF_Extension },
9542 { 0, NULL, 0, 0, 0, NULL }
9545 static int
9546 dissect_qsig_sd_SDExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9547 offset = dissect_ber_choice(actx, tree, tvb, offset,
9548 qsig_sd_SDExtension_choice, hf_index, ett_qsig_sd_SDExtension,
9549 NULL);
9551 return offset;
9555 static const ber_sequence_t qsig_sd_DisplayArg_sequence[] = {
9556 { &hf_qsig_sd_displayString, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_DisplayString },
9557 { &hf_qsig_sd_sdextension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_SDExtension },
9558 { NULL, 0, 0, 0, NULL }
9561 static int
9562 dissect_qsig_sd_DisplayArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9563 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9564 qsig_sd_DisplayArg_sequence, hf_index, ett_qsig_sd_DisplayArg);
9566 return offset;
9570 static const ber_sequence_t qsig_sd_KeypadArg_sequence[] = {
9571 { &hf_qsig_sd_keypadString, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sd_BMPStringNormal },
9572 { &hf_qsig_sd_sdextension , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sd_SDExtension },
9573 { NULL, 0, 0, 0, NULL }
9576 static int
9577 dissect_qsig_sd_KeypadArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9578 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9579 qsig_sd_KeypadArg_sequence, hf_index, ett_qsig_sd_KeypadArg);
9581 return offset;
9584 /*--- PDUs ---*/
9586 static int dissect_qsig_sd_DisplayArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9587 int offset = 0;
9588 asn1_ctx_t asn1_ctx;
9589 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9590 offset = dissect_qsig_sd_DisplayArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_DisplayArg_PDU);
9591 return offset;
9593 static int dissect_qsig_sd_KeypadArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9594 int offset = 0;
9595 asn1_ctx_t asn1_ctx;
9596 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9597 offset = dissect_qsig_sd_KeypadArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_KeypadArg_PDU);
9598 return offset;
9600 static int dissect_qsig_sd_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9601 int offset = 0;
9602 asn1_ctx_t asn1_ctx;
9603 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9604 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sd_qsig_sd_Extension_PDU);
9605 return offset;
9609 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
9613 static int
9614 dissect_qsig_cidl_SwitchingSubDomainName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9615 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
9616 actx, tree, tvb, offset, hf_index,
9617 NULL);
9619 return offset;
9624 static int
9625 dissect_qsig_cidl_SubDomainID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9626 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9627 NULL);
9629 return offset;
9634 static int
9635 dissect_qsig_cidl_GloballyUniqueID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9636 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9637 NULL);
9639 return offset;
9643 static const value_string qsig_cidl_T_linkageID_vals[] = {
9644 { 1, "subDomainID" },
9645 { 2, "globallyUniqueID" },
9646 { 0, NULL }
9649 static const ber_choice_t qsig_cidl_T_linkageID_choice[] = {
9650 { 1, &hf_qsig_cidl_subDomainID, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SubDomainID },
9651 { 2, &hf_qsig_cidl_globallyUniqueID, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_GloballyUniqueID },
9652 { 0, NULL, 0, 0, 0, NULL }
9655 static int
9656 dissect_qsig_cidl_T_linkageID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9657 offset = dissect_ber_choice(actx, tree, tvb, offset,
9658 qsig_cidl_T_linkageID_choice, hf_index, ett_qsig_cidl_T_linkageID,
9659 NULL);
9661 return offset;
9666 static int
9667 dissect_qsig_cidl_TimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9668 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
9670 return offset;
9674 static const ber_sequence_t qsig_cidl_CallIdentificationData_sequence[] = {
9675 { &hf_qsig_cidl_switchingSubDomainName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SwitchingSubDomainName },
9676 { &hf_qsig_cidl_linkageID , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_T_linkageID },
9677 { &hf_qsig_cidl_timeStamp , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_cidl_TimeStamp },
9678 { NULL, 0, 0, 0, NULL }
9681 static int
9682 dissect_qsig_cidl_CallIdentificationData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9683 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9684 qsig_cidl_CallIdentificationData_sequence, hf_index, ett_qsig_cidl_CallIdentificationData);
9686 return offset;
9690 static const ber_sequence_t qsig_cidl_SEQUENCE_OF_Extension_sequence_of[1] = {
9691 { &hf_qsig_cidl_sequenceOfExt_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
9694 static int
9695 dissect_qsig_cidl_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9696 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
9697 qsig_cidl_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_cidl_SEQUENCE_OF_Extension);
9699 return offset;
9703 static const value_string qsig_cidl_ExtensionType_vals[] = {
9704 { 3, "extension" },
9705 { 4, "sequenceOfExt" },
9706 { 0, NULL }
9709 static const ber_choice_t qsig_cidl_ExtensionType_choice[] = {
9710 { 3, &hf_qsig_cidl_extension , BER_CLASS_CON, 3, 0, dissect_qsig_Extension },
9711 { 4, &hf_qsig_cidl_sequenceOfExt, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_cidl_SEQUENCE_OF_Extension },
9712 { 0, NULL, 0, 0, 0, NULL }
9715 static int
9716 dissect_qsig_cidl_ExtensionType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9717 offset = dissect_ber_choice(actx, tree, tvb, offset,
9718 qsig_cidl_ExtensionType_choice, hf_index, ett_qsig_cidl_ExtensionType,
9719 NULL);
9721 return offset;
9725 static const ber_sequence_t qsig_cidl_CallIdentificationAssignArg_sequence[] = {
9726 { &hf_qsig_cidl_globalCallID, BER_CLASS_CON, 0, 0, dissect_qsig_cidl_CallIdentificationData },
9727 { &hf_qsig_cidl_threadID , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9728 { &hf_qsig_cidl_legID , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9729 { &hf_qsig_cidl_extensiont, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_ExtensionType },
9730 { NULL, 0, 0, 0, NULL }
9733 static int
9734 dissect_qsig_cidl_CallIdentificationAssignArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9735 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9736 qsig_cidl_CallIdentificationAssignArg_sequence, hf_index, ett_qsig_cidl_CallIdentificationAssignArg);
9738 return offset;
9742 static const ber_sequence_t qsig_cidl_CallIdentificationUpdateArg_sequence[] = {
9743 { &hf_qsig_cidl_globalCallID, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9744 { &hf_qsig_cidl_threadID , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9745 { &hf_qsig_cidl_legID , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_qsig_cidl_CallIdentificationData },
9746 { &hf_qsig_cidl_extensiont, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_cidl_ExtensionType },
9747 { NULL, 0, 0, 0, NULL }
9750 static int
9751 dissect_qsig_cidl_CallIdentificationUpdateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9752 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9753 qsig_cidl_CallIdentificationUpdateArg_sequence, hf_index, ett_qsig_cidl_CallIdentificationUpdateArg);
9755 return offset;
9758 /*--- PDUs ---*/
9760 static int dissect_qsig_cidl_CallIdentificationAssignArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9761 int offset = 0;
9762 asn1_ctx_t asn1_ctx;
9763 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9764 offset = dissect_qsig_cidl_CallIdentificationAssignArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU);
9765 return offset;
9767 static int dissect_qsig_cidl_CallIdentificationUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
9768 int offset = 0;
9769 asn1_ctx_t asn1_ctx;
9770 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
9771 offset = dissect_qsig_cidl_CallIdentificationUpdateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU);
9772 return offset;
9776 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
9780 static int
9781 dissect_qsig_sms_MessageReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9782 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9783 NULL);
9785 return offset;
9790 static int
9791 dissect_qsig_sms_ProtocolIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9792 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9793 NULL);
9795 return offset;
9800 static int
9801 dissect_qsig_sms_ValidityPeriodRel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9802 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9803 NULL);
9805 return offset;
9810 static int
9811 dissect_qsig_sms_ValidityPeriodAbs(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9812 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
9814 return offset;
9819 static int
9820 dissect_qsig_sms_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9821 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
9823 return offset;
9828 static int
9829 dissect_qsig_sms_INTEGER_0_255(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9830 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9831 NULL);
9833 return offset;
9838 static int
9839 dissect_qsig_sms_ValidityPeriodSemi(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9840 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
9841 NULL);
9843 return offset;
9847 static const value_string qsig_sms_EnhancedVP_vals[] = {
9848 { 0, "validityPeriodRel" },
9849 { 1, "validityPeriodSec" },
9850 { 2, "validityPeriodSemi" },
9851 { 0, NULL }
9854 static const ber_choice_t qsig_sms_EnhancedVP_choice[] = {
9855 { 0, &hf_qsig_sms_validityPeriodRel, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodRel },
9856 { 1, &hf_qsig_sms_validityPeriodSec, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_INTEGER_0_255 },
9857 { 2, &hf_qsig_sms_validityPeriodSemi, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodSemi },
9858 { 0, NULL, 0, 0, 0, NULL }
9861 static int
9862 dissect_qsig_sms_EnhancedVP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9863 offset = dissect_ber_choice(actx, tree, tvb, offset,
9864 qsig_sms_EnhancedVP_choice, hf_index, ett_qsig_sms_EnhancedVP,
9865 NULL);
9867 return offset;
9871 static const ber_sequence_t qsig_sms_ValidityPeriodEnh_sequence[] = {
9872 { &hf_qsig_sms_singleShotSM, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_BOOLEAN },
9873 { &hf_qsig_sms_enhancedVP , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_EnhancedVP },
9874 { NULL, 0, 0, 0, NULL }
9877 static int
9878 dissect_qsig_sms_ValidityPeriodEnh(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9879 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9880 qsig_sms_ValidityPeriodEnh_sequence, hf_index, ett_qsig_sms_ValidityPeriodEnh);
9882 return offset;
9886 static const value_string qsig_sms_ValidityPeriod_vals[] = {
9887 { 0, "validityPeriodRel" },
9888 { 1, "validityPeriodAbs" },
9889 { 2, "validityPeriodEnh" },
9890 { 0, NULL }
9893 static const ber_choice_t qsig_sms_ValidityPeriod_choice[] = {
9894 { 0, &hf_qsig_sms_validityPeriodRel, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodRel },
9895 { 1, &hf_qsig_sms_validityPeriodAbs, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodAbs },
9896 { 2, &hf_qsig_sms_validityPeriodEnh, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ValidityPeriodEnh },
9897 { 0, NULL, 0, 0, 0, NULL }
9900 static int
9901 dissect_qsig_sms_ValidityPeriod(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9902 offset = dissect_ber_choice(actx, tree, tvb, offset,
9903 qsig_sms_ValidityPeriod_choice, hf_index, ett_qsig_sms_ValidityPeriod,
9904 NULL);
9906 return offset;
9910 static const ber_sequence_t qsig_sms_SmSubmitParameter_sequence[] = {
9911 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
9912 { &hf_qsig_sms_validityPeriod, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_ValidityPeriod },
9913 { &hf_qsig_sms_statusReportRequest, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9914 { &hf_qsig_sms_replyPath , BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9915 { &hf_qsig_sms_rejectDuplicates, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
9916 { NULL, 0, 0, 0, NULL }
9919 static int
9920 dissect_qsig_sms_SmSubmitParameter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9921 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9922 qsig_sms_SmSubmitParameter_sequence, hf_index, ett_qsig_sms_SmSubmitParameter);
9924 return offset;
9928 static const asn_namedbit qsig_sms_SmscControlParameterHeader_bits[] = {
9929 { 0, &hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted, -1, -1, "sRforTransactionCompleted", NULL },
9930 { 1, &hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError, -1, -1, "sRforPermanentError", NULL },
9931 { 2, &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying, -1, -1, "sRforTempErrorSCnotTrying", NULL },
9932 { 3, &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying, -1, -1, "sRforTempErrorSCstillTrying", NULL },
9933 { 6, &hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM, -1, -1, "cancelSRRforConcatenatedSM", NULL },
9934 { 7, &hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR, -1, -1, "includeOrigUDHintoSR", NULL },
9935 { 0, NULL, 0, 0, NULL, NULL }
9938 static int
9939 dissect_qsig_sms_SmscControlParameterHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9940 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
9941 qsig_sms_SmscControlParameterHeader_bits, hf_index, ett_qsig_sms_SmscControlParameterHeader,
9942 NULL);
9944 return offset;
9948 static const ber_sequence_t qsig_sms_Concatenated8BitSMHeader_sequence[] = {
9949 { &hf_qsig_sms_concatenated8BitSMReferenceNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9950 { &hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9951 { &hf_qsig_sms_sequenceNumberOf8BitSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9952 { NULL, 0, 0, 0, NULL }
9955 static int
9956 dissect_qsig_sms_Concatenated8BitSMHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9957 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9958 qsig_sms_Concatenated8BitSMHeader_sequence, hf_index, ett_qsig_sms_Concatenated8BitSMHeader);
9960 return offset;
9965 static int
9966 dissect_qsig_sms_INTEGER_0_65536(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9967 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
9968 NULL);
9970 return offset;
9974 static const ber_sequence_t qsig_sms_Concatenated16BitSMHeader_sequence[] = {
9975 { &hf_qsig_sms_concatenated16BitSMReferenceNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
9976 { &hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9977 { &hf_qsig_sms_sequenceNumberOf16BitSM, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9978 { NULL, 0, 0, 0, NULL }
9981 static int
9982 dissect_qsig_sms_Concatenated16BitSMHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9983 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9984 qsig_sms_Concatenated16BitSMHeader_sequence, hf_index, ett_qsig_sms_Concatenated16BitSMHeader);
9986 return offset;
9990 static const ber_sequence_t qsig_sms_ApplicationPort8BitHeader_sequence[] = {
9991 { &hf_qsig_sms_destination8BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9992 { &hf_qsig_sms_originator8BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
9993 { NULL, 0, 0, 0, NULL }
9996 static int
9997 dissect_qsig_sms_ApplicationPort8BitHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9998 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
9999 qsig_sms_ApplicationPort8BitHeader_sequence, hf_index, ett_qsig_sms_ApplicationPort8BitHeader);
10001 return offset;
10005 static const ber_sequence_t qsig_sms_ApplicationPort16BitHeader_sequence[] = {
10006 { &hf_qsig_sms_destination16BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
10007 { &hf_qsig_sms_originator16BitPort, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_65536 },
10008 { NULL, 0, 0, 0, NULL }
10011 static int
10012 dissect_qsig_sms_ApplicationPort16BitHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10013 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10014 qsig_sms_ApplicationPort16BitHeader_sequence, hf_index, ett_qsig_sms_ApplicationPort16BitHeader);
10016 return offset;
10020 static const value_string qsig_sms_DataHeaderSourceIndicator_vals[] = {
10021 { 1, "originalSender" },
10022 { 2, "originalReceiver" },
10023 { 3, "sMSC" },
10024 { 0, NULL }
10028 static int
10029 dissect_qsig_sms_DataHeaderSourceIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10030 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10031 NULL);
10033 return offset;
10038 static int
10039 dissect_qsig_sms_WirelessControlHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10040 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10041 NULL);
10043 return offset;
10048 static int
10049 dissect_qsig_sms_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10050 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10051 NULL);
10053 return offset;
10057 static const ber_sequence_t qsig_sms_GenericUserValue_sequence[] = {
10058 { &hf_qsig_sms_parameterValue, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_INTEGER_0_255 },
10059 { &hf_qsig_sms_genericUserData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_OCTET_STRING },
10060 { NULL, 0, 0, 0, NULL }
10063 static int
10064 dissect_qsig_sms_GenericUserValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10065 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10066 qsig_sms_GenericUserValue_sequence, hf_index, ett_qsig_sms_GenericUserValue);
10068 return offset;
10072 static const value_string qsig_sms_UserDataHeaderChoice_vals[] = {
10073 { 0, "smscControlParameterHeader" },
10074 { 1, "concatenated8BitSMHeader" },
10075 { 2, "concatenated16BitSMHeader" },
10076 { 3, "applicationPort8BitHeader" },
10077 { 4, "applicationPort16BitHeader" },
10078 { 5, "dataHeaderSourceIndicator" },
10079 { 6, "wirelessControlHeader" },
10080 { 99, "genericUserValue" },
10081 { 0, NULL }
10084 static const ber_choice_t qsig_sms_UserDataHeaderChoice_choice[] = {
10085 { 0, &hf_qsig_sms_smscControlParameterHeader, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_SmscControlParameterHeader },
10086 { 1, &hf_qsig_sms_concatenated8BitSMHeader, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_Concatenated8BitSMHeader },
10087 { 2, &hf_qsig_sms_concatenated16BitSMHeader, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_Concatenated16BitSMHeader },
10088 { 3, &hf_qsig_sms_applicationPort8BitHeader, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ApplicationPort8BitHeader },
10089 { 4, &hf_qsig_sms_applicationPort16BitHeader, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ApplicationPort16BitHeader },
10090 { 5, &hf_qsig_sms_dataHeaderSourceIndicator, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_qsig_sms_DataHeaderSourceIndicator },
10091 { 6, &hf_qsig_sms_wirelessControlHeader, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_sms_WirelessControlHeader },
10092 { 99, &hf_qsig_sms_genericUserValue, BER_CLASS_CON, 99, BER_FLAGS_IMPLTAG, dissect_qsig_sms_GenericUserValue },
10093 { 0, NULL, 0, 0, 0, NULL }
10096 static int
10097 dissect_qsig_sms_UserDataHeaderChoice(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10098 offset = dissect_ber_choice(actx, tree, tvb, offset,
10099 qsig_sms_UserDataHeaderChoice_choice, hf_index, ett_qsig_sms_UserDataHeaderChoice,
10100 NULL);
10102 return offset;
10106 static const ber_sequence_t qsig_sms_UserDataHeader_sequence_of[1] = {
10107 { &hf_qsig_sms_UserDataHeader_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_UserDataHeaderChoice },
10110 static int
10111 dissect_qsig_sms_UserDataHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10112 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10113 qsig_sms_UserDataHeader_sequence_of, hf_index, ett_qsig_sms_UserDataHeader);
10115 return offset;
10120 static int
10121 dissect_qsig_sms_INTEGER_0_3(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10122 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10123 NULL);
10125 return offset;
10129 static const value_string qsig_sms_ShortMessageTextType_vals[] = {
10130 { 0, "iA5Coded" },
10131 { 1, "octetCoded" },
10132 { 2, "uniCoded" },
10133 { 3, "compressedCoded" },
10134 { 0, NULL }
10138 static int
10139 dissect_qsig_sms_ShortMessageTextType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10140 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10141 NULL);
10143 return offset;
10148 static int
10149 dissect_qsig_sms_ShortMessageTextData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10150 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10151 NULL);
10153 return offset;
10157 static const ber_sequence_t qsig_sms_ShortMessageText_sequence[] = {
10158 { &hf_qsig_sms_shortMessageTextType, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageTextType },
10159 { &hf_qsig_sms_shortMessageTextData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageTextData },
10160 { NULL, 0, 0, 0, NULL }
10163 static int
10164 dissect_qsig_sms_ShortMessageText(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10165 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10166 qsig_sms_ShortMessageText_sequence, hf_index, ett_qsig_sms_ShortMessageText);
10168 return offset;
10172 static const ber_sequence_t qsig_sms_UserData_sequence[] = {
10173 { &hf_qsig_sms_userDataHeader, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserDataHeader },
10174 { &hf_qsig_sms_class , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_INTEGER_0_3 },
10175 { &hf_qsig_sms_compressed , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10176 { &hf_qsig_sms_shortMessageText, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ShortMessageText },
10177 { NULL, 0, 0, 0, NULL }
10180 static int
10181 dissect_qsig_sms_UserData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10182 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10183 qsig_sms_UserData_sequence, hf_index, ett_qsig_sms_UserData);
10185 return offset;
10189 static const ber_sequence_t qsig_sms_SEQUENCE_OF_Extension_sequence_of[1] = {
10190 { &hf_qsig_sms_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
10193 static int
10194 dissect_qsig_sms_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10195 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10196 qsig_sms_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_sms_SEQUENCE_OF_Extension);
10198 return offset;
10202 static const value_string qsig_sms_SmsExtension_vals[] = {
10203 { 1, "single" },
10204 { 2, "multiple" },
10205 { 0, NULL }
10208 static const ber_choice_t qsig_sms_SmsExtension_choice[] = {
10209 { 1, &hf_qsig_sms_single , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
10210 { 2, &hf_qsig_sms_multiple , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_sms_SEQUENCE_OF_Extension },
10211 { 0, NULL, 0, 0, 0, NULL }
10214 static int
10215 dissect_qsig_sms_SmsExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10216 offset = dissect_ber_choice(actx, tree, tvb, offset,
10217 qsig_sms_SmsExtension_choice, hf_index, ett_qsig_sms_SmsExtension,
10218 NULL);
10220 return offset;
10224 static const ber_sequence_t qsig_sms_SmsSubmitArg_sequence[] = {
10225 { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10226 { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10227 { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10228 { &hf_qsig_sms_smSubmitParameter, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmSubmitParameter },
10229 { &hf_qsig_sms_userData , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10230 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10231 { NULL, 0, 0, 0, NULL }
10234 static int
10235 dissect_qsig_sms_SmsSubmitArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10236 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10237 qsig_sms_SmsSubmitArg_sequence, hf_index, ett_qsig_sms_SmsSubmitArg);
10239 return offset;
10244 static int
10245 dissect_qsig_sms_ServiceCentreTimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10246 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
10248 return offset;
10252 static const ber_sequence_t qsig_sms_SmsSubmitRes_sequence[] = {
10253 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10254 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10255 { &hf_qsig_sms_userData , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10256 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10257 { NULL, 0, 0, 0, NULL }
10260 static int
10261 dissect_qsig_sms_SmsSubmitRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10262 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10263 qsig_sms_SmsSubmitRes_sequence, hf_index, ett_qsig_sms_SmsSubmitRes);
10265 return offset;
10269 static const ber_sequence_t qsig_sms_SmDeliverParameter_sequence[] = {
10270 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10271 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10272 { &hf_qsig_sms_priority , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10273 { &hf_qsig_sms_moreMessagesToSend, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10274 { &hf_qsig_sms_statusReportIndication, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10275 { &hf_qsig_sms_replyPath , BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10276 { NULL, 0, 0, 0, NULL }
10279 static int
10280 dissect_qsig_sms_SmDeliverParameter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10281 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10282 qsig_sms_SmDeliverParameter_sequence, hf_index, ett_qsig_sms_SmDeliverParameter);
10284 return offset;
10288 static const ber_sequence_t qsig_sms_SmsDeliverArg_sequence[] = {
10289 { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10290 { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10291 { &hf_qsig_sms_originatingName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
10292 { &hf_qsig_sms_smDeliverParameter, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmDeliverParameter },
10293 { &hf_qsig_sms_userData , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10294 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10295 { NULL, 0, 0, 0, NULL }
10298 static int
10299 dissect_qsig_sms_SmsDeliverArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10300 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10301 qsig_sms_SmsDeliverArg_sequence, hf_index, ett_qsig_sms_SmsDeliverArg);
10303 return offset;
10308 static int
10309 dissect_qsig_sms_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10310 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
10312 return offset;
10316 static const ber_sequence_t qsig_sms_ResChoiceSeq_sequence[] = {
10317 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10318 { &hf_qsig_sms_userData , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10319 { NULL, 0, 0, 0, NULL }
10322 static int
10323 dissect_qsig_sms_ResChoiceSeq(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10324 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10325 qsig_sms_ResChoiceSeq_sequence, hf_index, ett_qsig_sms_ResChoiceSeq);
10327 return offset;
10331 static const value_string qsig_sms_SmsDeliverResChoice_vals[] = {
10332 { 0, "null" },
10333 { 1, "protocolIdentifier" },
10334 { 2, "userData" },
10335 { 3, "resChoiceSeq" },
10336 { 0, NULL }
10339 static const ber_choice_t qsig_sms_SmsDeliverResChoice_choice[] = {
10340 { 0, &hf_qsig_sms_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10341 { 1, &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10342 { 2, &hf_qsig_sms_userData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10343 { 3, &hf_qsig_sms_resChoiceSeq, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ResChoiceSeq },
10344 { 0, NULL, 0, 0, 0, NULL }
10347 static int
10348 dissect_qsig_sms_SmsDeliverResChoice(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10349 offset = dissect_ber_choice(actx, tree, tvb, offset,
10350 qsig_sms_SmsDeliverResChoice_choice, hf_index, ett_qsig_sms_SmsDeliverResChoice,
10351 NULL);
10353 return offset;
10357 static const ber_sequence_t qsig_sms_SmsDeliverRes_sequence[] = {
10358 { &hf_qsig_sms_smsDeliverResponseChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsDeliverResChoice },
10359 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10360 { NULL, 0, 0, 0, NULL }
10363 static int
10364 dissect_qsig_sms_SmsDeliverRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10365 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10366 qsig_sms_SmsDeliverRes_sequence, hf_index, ett_qsig_sms_SmsDeliverRes);
10368 return offset;
10373 static int
10374 dissect_qsig_sms_DischargeTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10375 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
10377 return offset;
10382 static int
10383 dissect_qsig_sms_Status(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10384 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10385 NULL);
10387 return offset;
10391 static const ber_sequence_t qsig_sms_SmsStatusReportArg_sequence[] = {
10392 { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10393 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10394 { &hf_qsig_sms_dischargeTime, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_DischargeTime },
10395 { &hf_qsig_sms_recipientAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10396 { &hf_qsig_sms_recipientName, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_qsig_na_Name },
10397 { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10398 { &hf_qsig_sms_status , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_Status },
10399 { &hf_qsig_sms_priority , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10400 { &hf_qsig_sms_moreMessagesToSend, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10401 { &hf_qsig_sms_statusReportQualifier, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10402 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10403 { &hf_qsig_sms_userData , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10404 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10405 { NULL, 0, 0, 0, NULL }
10408 static int
10409 dissect_qsig_sms_SmsStatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10410 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10411 qsig_sms_SmsStatusReportArg_sequence, hf_index, ett_qsig_sms_SmsStatusReportArg);
10413 return offset;
10417 static const value_string qsig_sms_SmsStatusReportResponseChoice_vals[] = {
10418 { 0, "null" },
10419 { 1, "protocolIdentifier" },
10420 { 2, "userData" },
10421 { 3, "resChoiceSeq" },
10422 { 0, NULL }
10425 static const ber_choice_t qsig_sms_SmsStatusReportResponseChoice_choice[] = {
10426 { 0, &hf_qsig_sms_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10427 { 1, &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10428 { 2, &hf_qsig_sms_userData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10429 { 3, &hf_qsig_sms_resChoiceSeq, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_sms_ResChoiceSeq },
10430 { 0, NULL, 0, 0, 0, NULL }
10433 static int
10434 dissect_qsig_sms_SmsStatusReportResponseChoice(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10435 offset = dissect_ber_choice(actx, tree, tvb, offset,
10436 qsig_sms_SmsStatusReportResponseChoice_choice, hf_index, ett_qsig_sms_SmsStatusReportResponseChoice,
10437 NULL);
10439 return offset;
10443 static const ber_sequence_t qsig_sms_SmsStatusReportRes_sequence[] = {
10444 { &hf_qsig_sms_smsStatusReportResponseChoice, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsStatusReportResponseChoice },
10445 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10446 { NULL, 0, 0, 0, NULL }
10449 static int
10450 dissect_qsig_sms_SmsStatusReportRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10451 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10452 qsig_sms_SmsStatusReportRes_sequence, hf_index, ett_qsig_sms_SmsStatusReportRes);
10454 return offset;
10458 static const value_string qsig_sms_CommandType_vals[] = {
10459 { 0, "enquiry" },
10460 { 1, "cancelSRR" },
10461 { 2, "deletePreviouslySubmittedSM" },
10462 { 3, "enableSRRrelatingToPreviouslySubmittedSM" },
10463 { 0, NULL }
10467 static int
10468 dissect_qsig_sms_CommandType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10469 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10470 NULL);
10472 return offset;
10477 static int
10478 dissect_qsig_sms_CommandData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10479 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
10480 NULL);
10482 return offset;
10486 static const ber_sequence_t qsig_sms_SmsCommandArg_sequence[] = {
10487 { &hf_qsig_sms_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10488 { &hf_qsig_sms_messageReference, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10489 { &hf_qsig_sms_messageNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_MessageReference },
10490 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10491 { &hf_qsig_sms_commandType, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_CommandType },
10492 { &hf_qsig_sms_commandData, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_CommandData },
10493 { &hf_qsig_sms_statusReportRequest, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_BOOLEAN },
10494 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10495 { NULL, 0, 0, 0, NULL }
10498 static int
10499 dissect_qsig_sms_SmsCommandArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10500 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10501 qsig_sms_SmsCommandArg_sequence, hf_index, ett_qsig_sms_SmsCommandArg);
10503 return offset;
10507 static const ber_sequence_t qsig_sms_SmsCommandRes_sequence[] = {
10508 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10509 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ProtocolIdentifier },
10510 { &hf_qsig_sms_userData , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_sms_UserData },
10511 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10512 { NULL, 0, 0, 0, NULL }
10515 static int
10516 dissect_qsig_sms_SmsCommandRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10517 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10518 qsig_sms_SmsCommandRes_sequence, hf_index, ett_qsig_sms_SmsCommandRes);
10520 return offset;
10524 static const ber_sequence_t qsig_sms_ScAlertArg_sequence[] = {
10525 { &hf_qsig_sms_originatingAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
10526 { &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_sms_SmsExtension },
10527 { NULL, 0, 0, 0, NULL }
10530 static int
10531 dissect_qsig_sms_ScAlertArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10532 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10533 qsig_sms_ScAlertArg_sequence, hf_index, ett_qsig_sms_ScAlertArg);
10535 return offset;
10539 static const value_string qsig_sms_DummyRes_vals[] = {
10540 { 0, "null" },
10541 { 1, "smsExtension" },
10542 { 0, NULL }
10545 static const ber_choice_t qsig_sms_DummyRes_choice[] = {
10546 { 0, &hf_qsig_sms_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_NULL },
10547 { 1, &hf_qsig_sms_smsExtension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_SmsExtension },
10548 { 0, NULL, 0, 0, 0, NULL }
10551 static int
10552 dissect_qsig_sms_DummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10553 offset = dissect_ber_choice(actx, tree, tvb, offset,
10554 qsig_sms_DummyRes_choice, hf_index, ett_qsig_sms_DummyRes,
10555 NULL);
10557 return offset;
10562 static int
10563 dissect_qsig_sms_FailureCause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10564 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10565 NULL);
10567 return offset;
10571 static const ber_sequence_t qsig_sms_PAR_smsDeliverError_sequence[] = {
10572 { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10573 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10574 { &hf_qsig_sms_userData , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10575 { &hf_qsig_sms_scAddressSaved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10576 { NULL, 0, 0, 0, NULL }
10579 static int
10580 dissect_qsig_sms_PAR_smsDeliverError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10581 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10582 qsig_sms_PAR_smsDeliverError_sequence, hf_index, ett_qsig_sms_PAR_smsDeliverError);
10584 return offset;
10588 static const ber_sequence_t qsig_sms_PAR_smsSubmitError_sequence[] = {
10589 { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10590 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
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 { NULL, 0, 0, 0, NULL }
10596 static int
10597 dissect_qsig_sms_PAR_smsSubmitError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10598 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10599 qsig_sms_PAR_smsSubmitError_sequence, hf_index, ett_qsig_sms_PAR_smsSubmitError);
10601 return offset;
10605 static const ber_sequence_t qsig_sms_PAR_smsStatusReportError_sequence[] = {
10606 { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10607 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10608 { &hf_qsig_sms_userData , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10609 { &hf_qsig_sms_scAddressSaved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_BOOLEAN },
10610 { NULL, 0, 0, 0, NULL }
10613 static int
10614 dissect_qsig_sms_PAR_smsStatusReportError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10615 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10616 qsig_sms_PAR_smsStatusReportError_sequence, hf_index, ett_qsig_sms_PAR_smsStatusReportError);
10618 return offset;
10622 static const ber_sequence_t qsig_sms_PAR_smsCommandError_sequence[] = {
10623 { &hf_qsig_sms_failureCause, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_FailureCause },
10624 { &hf_qsig_sms_serviceCentreTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_qsig_sms_ServiceCentreTimeStamp },
10625 { &hf_qsig_sms_protocolIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_ProtocolIdentifier },
10626 { &hf_qsig_sms_userData , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_sms_UserData },
10627 { NULL, 0, 0, 0, NULL }
10630 static int
10631 dissect_qsig_sms_PAR_smsCommandError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10632 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10633 qsig_sms_PAR_smsCommandError_sequence, hf_index, ett_qsig_sms_PAR_smsCommandError);
10635 return offset;
10638 /*--- PDUs ---*/
10640 static int dissect_qsig_sms_SmsSubmitArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10641 int offset = 0;
10642 asn1_ctx_t asn1_ctx;
10643 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10644 offset = dissect_qsig_sms_SmsSubmitArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU);
10645 return offset;
10647 static int dissect_qsig_sms_SmsSubmitRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10648 int offset = 0;
10649 asn1_ctx_t asn1_ctx;
10650 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10651 offset = dissect_qsig_sms_SmsSubmitRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU);
10652 return offset;
10654 static int dissect_qsig_sms_SmsDeliverArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10655 int offset = 0;
10656 asn1_ctx_t asn1_ctx;
10657 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10658 offset = dissect_qsig_sms_SmsDeliverArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU);
10659 return offset;
10661 static int dissect_qsig_sms_SmsDeliverRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10662 int offset = 0;
10663 asn1_ctx_t asn1_ctx;
10664 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10665 offset = dissect_qsig_sms_SmsDeliverRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU);
10666 return offset;
10668 static int dissect_qsig_sms_SmsStatusReportArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10669 int offset = 0;
10670 asn1_ctx_t asn1_ctx;
10671 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10672 offset = dissect_qsig_sms_SmsStatusReportArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU);
10673 return offset;
10675 static int dissect_qsig_sms_SmsStatusReportRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10676 int offset = 0;
10677 asn1_ctx_t asn1_ctx;
10678 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10679 offset = dissect_qsig_sms_SmsStatusReportRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU);
10680 return offset;
10682 static int dissect_qsig_sms_SmsCommandArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10683 int offset = 0;
10684 asn1_ctx_t asn1_ctx;
10685 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10686 offset = dissect_qsig_sms_SmsCommandArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsCommandArg_PDU);
10687 return offset;
10689 static int dissect_qsig_sms_SmsCommandRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10690 int offset = 0;
10691 asn1_ctx_t asn1_ctx;
10692 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10693 offset = dissect_qsig_sms_SmsCommandRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsCommandRes_PDU);
10694 return offset;
10696 static int dissect_qsig_sms_ScAlertArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10697 int offset = 0;
10698 asn1_ctx_t asn1_ctx;
10699 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10700 offset = dissect_qsig_sms_ScAlertArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_ScAlertArg_PDU);
10701 return offset;
10703 static int dissect_qsig_sms_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10704 int offset = 0;
10705 asn1_ctx_t asn1_ctx;
10706 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10707 offset = dissect_qsig_sms_DummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_DummyRes_PDU);
10708 return offset;
10710 static int dissect_qsig_sms_PAR_smsDeliverError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10711 int offset = 0;
10712 asn1_ctx_t asn1_ctx;
10713 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10714 offset = dissect_qsig_sms_PAR_smsDeliverError(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU);
10715 return offset;
10717 static int dissect_qsig_sms_PAR_smsSubmitError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10718 int offset = 0;
10719 asn1_ctx_t asn1_ctx;
10720 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10721 offset = dissect_qsig_sms_PAR_smsSubmitError(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU);
10722 return offset;
10724 static int dissect_qsig_sms_PAR_smsStatusReportError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10725 int offset = 0;
10726 asn1_ctx_t asn1_ctx;
10727 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10728 offset = dissect_qsig_sms_PAR_smsStatusReportError(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU);
10729 return offset;
10731 static int dissect_qsig_sms_PAR_smsCommandError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10732 int offset = 0;
10733 asn1_ctx_t asn1_ctx;
10734 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10735 offset = dissect_qsig_sms_PAR_smsCommandError(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU);
10736 return offset;
10738 static int dissect_qsig_sms_SmsExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10739 int offset = 0;
10740 asn1_ctx_t asn1_ctx;
10741 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10742 offset = dissect_qsig_sms_SmsExtension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_sms_qsig_sms_SmsExtension_PDU);
10743 return offset;
10747 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
10751 static int
10752 dissect_qsig_mcr_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10753 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
10755 return offset;
10759 static const value_string qsig_mcr_CallType_vals[] = {
10760 { 0, "basicService" },
10761 { 1, "cisc" },
10762 { 0, NULL }
10765 static const ber_choice_t qsig_mcr_CallType_choice[] = {
10766 { 0, &hf_qsig_mcr_basicService, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_cf_BasicService },
10767 { 1, &hf_qsig_mcr_cisc , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_NULL },
10768 { 0, NULL, 0, 0, 0, NULL }
10771 static int
10772 dissect_qsig_mcr_CallType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10773 offset = dissect_ber_choice(actx, tree, tvb, offset,
10774 qsig_mcr_CallType_choice, hf_index, ett_qsig_mcr_CallType,
10775 NULL);
10777 return offset;
10782 static int
10783 dissect_qsig_mcr_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10784 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
10786 return offset;
10790 static const value_string qsig_mcr_CorrelationReason_vals[] = {
10791 { 0, "unknown" },
10792 { 1, "mCACommunication" },
10793 { 2, "cTIApplication" },
10794 { 0, NULL }
10798 static int
10799 dissect_qsig_mcr_CorrelationReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10800 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10801 NULL);
10803 return offset;
10807 static const ber_sequence_t qsig_mcr_Correlation_sequence[] = {
10808 { &hf_qsig_mcr_correlationData, BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_qsig_pr_CallIdentity },
10809 { &hf_qsig_mcr_correlationReason, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_CorrelationReason },
10810 { NULL, 0, 0, 0, NULL }
10813 static int
10814 dissect_qsig_mcr_Correlation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10815 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10816 qsig_mcr_Correlation_sequence, hf_index, ett_qsig_mcr_Correlation);
10818 return offset;
10822 static const ber_sequence_t qsig_mcr_SEQUENCE_OF_Extension_sequence_of[1] = {
10823 { &hf_qsig_mcr_multiple_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
10826 static int
10827 dissect_qsig_mcr_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10828 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
10829 qsig_mcr_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mcr_SEQUENCE_OF_Extension);
10831 return offset;
10835 static const value_string qsig_mcr_MCRExtensions_vals[] = {
10836 { 0, "none" },
10837 { 1, "single" },
10838 { 2, "multiple" },
10839 { 0, NULL }
10842 static const ber_choice_t qsig_mcr_MCRExtensions_choice[] = {
10843 { 0, &hf_qsig_mcr_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_NULL },
10844 { 1, &hf_qsig_mcr_single , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
10845 { 2, &hf_qsig_mcr_multiple , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcr_SEQUENCE_OF_Extension },
10846 { 0, NULL, 0, 0, 0, NULL }
10849 static int
10850 dissect_qsig_mcr_MCRExtensions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10851 offset = dissect_ber_choice(actx, tree, tvb, offset,
10852 qsig_mcr_MCRExtensions_choice, hf_index, ett_qsig_mcr_MCRExtensions,
10853 NULL);
10855 return offset;
10859 static const ber_sequence_t qsig_mcr_MCRequestArg_sequence[] = {
10860 { &hf_qsig_mcr_callType , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_CallType },
10861 { &hf_qsig_mcr_retainOrigCall, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_BOOLEAN },
10862 { &hf_qsig_mcr_destinationAddress, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressUnscreened },
10863 { &hf_qsig_mcr_requestingAddress, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10864 { &hf_qsig_mcr_cooperatingAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10865 { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10866 { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10867 { NULL, 0, 0, 0, NULL }
10870 static int
10871 dissect_qsig_mcr_MCRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10872 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10873 qsig_mcr_MCRequestArg_sequence, hf_index, ett_qsig_mcr_MCRequestArg);
10875 return offset;
10879 static const ber_sequence_t qsig_mcr_MCRequestResult_sequence[] = {
10880 { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10881 { NULL, 0, 0, 0, NULL }
10884 static int
10885 dissect_qsig_mcr_MCRequestResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10886 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10887 qsig_mcr_MCRequestResult_sequence, hf_index, ett_qsig_mcr_MCRequestResult);
10889 return offset;
10893 static const ber_sequence_t qsig_mcr_MCInformArg_sequence[] = {
10894 { &hf_qsig_mcr_requestingAddress, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10895 { &hf_qsig_mcr_cooperatingAddress, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_qsig_PresentedAddressUnscreened },
10896 { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10897 { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10898 { NULL, 0, 0, 0, NULL }
10901 static int
10902 dissect_qsig_mcr_MCInformArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10903 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10904 qsig_mcr_MCInformArg_sequence, hf_index, ett_qsig_mcr_MCInformArg);
10906 return offset;
10910 static const ber_sequence_t qsig_mcr_MCAlertingArg_sequence[] = {
10911 { &hf_qsig_mcr_correlation, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcr_Correlation },
10912 { &hf_qsig_mcr_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcr_MCRExtensions },
10913 { NULL, 0, 0, 0, NULL }
10916 static int
10917 dissect_qsig_mcr_MCAlertingArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10918 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
10919 qsig_mcr_MCAlertingArg_sequence, hf_index, ett_qsig_mcr_MCAlertingArg);
10921 return offset;
10924 /*--- PDUs ---*/
10926 static int dissect_qsig_mcr_MCRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10927 int offset = 0;
10928 asn1_ctx_t asn1_ctx;
10929 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10930 offset = dissect_qsig_mcr_MCRequestArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU);
10931 return offset;
10933 static int dissect_qsig_mcr_MCRequestResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10934 int offset = 0;
10935 asn1_ctx_t asn1_ctx;
10936 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10937 offset = dissect_qsig_mcr_MCRequestResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU);
10938 return offset;
10940 static int dissect_qsig_mcr_MCInformArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10941 int offset = 0;
10942 asn1_ctx_t asn1_ctx;
10943 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10944 offset = dissect_qsig_mcr_MCInformArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCInformArg_PDU);
10945 return offset;
10947 static int dissect_qsig_mcr_MCAlertingArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10948 int offset = 0;
10949 asn1_ctx_t asn1_ctx;
10950 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10951 offset = dissect_qsig_mcr_MCAlertingArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU);
10952 return offset;
10954 static int dissect_qsig_mcr_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
10955 int offset = 0;
10956 asn1_ctx_t asn1_ctx;
10957 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
10958 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcr_qsig_mcr_Extension_PDU);
10959 return offset;
10963 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
10967 static int
10968 dissect_qsig_mcm_INTEGER_0_65535(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10969 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
10970 NULL);
10972 return offset;
10977 static int
10978 dissect_qsig_mcm_NumericString_SIZE_1_10(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10979 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
10980 actx, tree, tvb, offset, hf_index,
10981 NULL);
10983 return offset;
10987 static const value_string qsig_mcm_MsgCentreId_vals[] = {
10988 { 0, "integer" },
10989 { 1, "partyNumber" },
10990 { 2, "numericString" },
10991 { 0, NULL }
10994 static const ber_choice_t qsig_mcm_MsgCentreId_choice[] = {
10995 { 0, &hf_qsig_mcm_integer , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_65535 },
10996 { 1, &hf_qsig_mcm_partyNumber, BER_CLASS_CON, 1, 0, dissect_qsig_PartyNumber },
10997 { 2, &hf_qsig_mcm_numericString, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NumericString_SIZE_1_10 },
10998 { 0, NULL, 0, 0, 0, NULL }
11001 static int
11002 dissect_qsig_mcm_MsgCentreId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11003 offset = dissect_ber_choice(actx, tree, tvb, offset,
11004 qsig_mcm_MsgCentreId_choice, hf_index, ett_qsig_mcm_MsgCentreId,
11005 NULL);
11007 return offset;
11011 static const ber_sequence_t qsig_mcm_PartyInfo_sequence[] = {
11012 { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11013 { &hf_qsig_mcm_messageCentreID, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11014 { NULL, 0, 0, 0, NULL }
11017 static int
11018 dissect_qsig_mcm_PartyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11019 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11020 qsig_mcm_PartyInfo_sequence, hf_index, ett_qsig_mcm_PartyInfo);
11022 return offset;
11026 static const value_string qsig_mcm_MessageType_vals[] = {
11027 { 0, "allServices" },
11028 { 1, "speech" },
11029 { 2, "unrestrictedDigitalInformation" },
11030 { 3, "audio3100Hz" },
11031 { 32, "telephony" },
11032 { 33, "teletex" },
11033 { 34, "telefaxGroup4Class1" },
11034 { 35, "videotextSyntaxBased" },
11035 { 36, "videotelephony" },
11036 { 37, "telefaxGroup2-3" },
11037 { 38, "reservedNotUsed1" },
11038 { 39, "reservedNotUsed2" },
11039 { 40, "reservedNotUsed3" },
11040 { 41, "reservedNotUsed4" },
11041 { 42, "reservedNotUsed5" },
11042 { 51, "email" },
11043 { 52, "video" },
11044 { 53, "fileTransfer" },
11045 { 54, "shortMessageService" },
11046 { 55, "speechAndVideo" },
11047 { 56, "speechAndFax" },
11048 { 57, "speechAndEmail" },
11049 { 58, "videoAndFax" },
11050 { 59, "videoAndEmail" },
11051 { 60, "faxAndEmail" },
11052 { 61, "speechVideoAndFax" },
11053 { 62, "speechVideoAndEmail" },
11054 { 63, "speechFaxAndEmail" },
11055 { 64, "videoFaxAndEmail" },
11056 { 65, "speechVideoFaxAndEmail" },
11057 { 66, "multimediaUnknown" },
11058 { 67, "serviceUnknown" },
11059 { 68, "futureReserve1" },
11060 { 69, "futureReserve2" },
11061 { 70, "futureReserve3" },
11062 { 71, "futureReserve4" },
11063 { 72, "futureReserve5" },
11064 { 73, "futureReserve6" },
11065 { 74, "futureReserve7" },
11066 { 75, "futureReserve8" },
11067 { 0, NULL }
11071 static int
11072 dissect_qsig_mcm_MessageType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11073 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11074 NULL);
11076 return offset;
11081 static int
11082 dissect_qsig_mcm_INTEGER_0_100(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11083 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11084 NULL);
11086 return offset;
11090 static const ber_sequence_t qsig_mcm_MailboxFullPar_sequence[] = {
11091 { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11092 { &hf_qsig_mcm_capacityReached, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_INTEGER_0_100 },
11093 { NULL, 0, 0, 0, NULL }
11096 static int
11097 dissect_qsig_mcm_MailboxFullPar(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11098 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11099 qsig_mcm_MailboxFullPar_sequence, hf_index, ett_qsig_mcm_MailboxFullPar);
11101 return offset;
11105 static const ber_sequence_t qsig_mcm_MailboxFullFor_sequence_of[1] = {
11106 { &hf_qsig_mcm_MailboxFullFor_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MailboxFullPar },
11109 static int
11110 dissect_qsig_mcm_MailboxFullFor(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11111 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11112 qsig_mcm_MailboxFullFor_sequence_of, hf_index, ett_qsig_mcm_MailboxFullFor);
11114 return offset;
11119 static int
11120 dissect_qsig_mcm_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11121 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
11123 return offset;
11127 static const ber_sequence_t qsig_mcm_SEQUENCE_OF_Extension_sequence_of[1] = {
11128 { &hf_qsig_mcm_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
11131 static int
11132 dissect_qsig_mcm_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11133 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11134 qsig_mcm_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_Extension);
11136 return offset;
11140 static const value_string qsig_mcm_MCMExtensions_vals[] = {
11141 { 0, "none" },
11142 { 1, "extension" },
11143 { 2, "multipleExtension" },
11144 { 0, NULL }
11147 static const ber_choice_t qsig_mcm_MCMExtensions_choice[] = {
11148 { 0, &hf_qsig_mcm_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11149 { 1, &hf_qsig_mcm_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11150 { 2, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11151 { 0, NULL, 0, 0, 0, NULL }
11154 static int
11155 dissect_qsig_mcm_MCMExtensions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11156 offset = dissect_ber_choice(actx, tree, tvb, offset,
11157 qsig_mcm_MCMExtensions_choice, hf_index, ett_qsig_mcm_MCMExtensions,
11158 NULL);
11160 return offset;
11164 static const ber_sequence_t qsig_mcm_MCMailboxFullArg_sequence[] = {
11165 { &hf_qsig_mcm_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11166 { &hf_qsig_mcm_mailboxFullFor, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MailboxFullFor },
11167 { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11168 { NULL, 0, 0, 0, NULL }
11171 static int
11172 dissect_qsig_mcm_MCMailboxFullArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11173 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11174 qsig_mcm_MCMailboxFullArg_sequence, hf_index, ett_qsig_mcm_MCMailboxFullArg);
11176 return offset;
11180 static const value_string qsig_mcm_MCMMode_vals[] = {
11181 { 0, "compressed" },
11182 { 1, "complete" },
11183 { 0, NULL }
11187 static int
11188 dissect_qsig_mcm_MCMMode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11189 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11190 NULL);
11192 return offset;
11196 static const ber_sequence_t qsig_mcm_MCMServiceInfo_sequence[] = {
11197 { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11198 { &hf_qsig_mcm_mCMModeNew , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_MCMMode },
11199 { &hf_qsig_mcm_mCMModeRetrieved, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_MCMMode },
11200 { NULL, 0, 0, 0, NULL }
11203 static int
11204 dissect_qsig_mcm_MCMServiceInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11205 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11206 qsig_mcm_MCMServiceInfo_sequence, hf_index, ett_qsig_mcm_MCMServiceInfo);
11208 return offset;
11212 static const ber_sequence_t qsig_mcm_SEQUENCE_OF_MCMServiceInfo_sequence_of[1] = {
11213 { &hf_qsig_mcm_activateMCM_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MCMServiceInfo },
11216 static int
11217 dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11218 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11219 qsig_mcm_SEQUENCE_OF_MCMServiceInfo_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo);
11221 return offset;
11225 static const ber_sequence_t qsig_mcm_SEQUENCE_OF_MessageType_sequence_of[1] = {
11226 { &hf_qsig_mcm_deactivateMCM_item, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11229 static int
11230 dissect_qsig_mcm_SEQUENCE_OF_MessageType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11231 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11232 qsig_mcm_SEQUENCE_OF_MessageType_sequence_of, hf_index, ett_qsig_mcm_SEQUENCE_OF_MessageType);
11234 return offset;
11238 static const value_string qsig_mcm_MCMChange_vals[] = {
11239 { 0, "activateMCM" },
11240 { 1, "deactivateMCM" },
11241 { 2, "setToDefaultValues" },
11242 { 0, NULL }
11245 static const ber_choice_t qsig_mcm_MCMChange_choice[] = {
11246 { 0, &hf_qsig_mcm_activateMCM, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo },
11247 { 1, &hf_qsig_mcm_deactivateMCM, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_MessageType },
11248 { 2, &hf_qsig_mcm_setToDefaultValues, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11249 { 0, NULL, 0, 0, 0, NULL }
11252 static int
11253 dissect_qsig_mcm_MCMChange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11254 offset = dissect_ber_choice(actx, tree, tvb, offset,
11255 qsig_mcm_MCMChange_choice, hf_index, ett_qsig_mcm_MCMChange,
11256 NULL);
11258 return offset;
11262 static const ber_sequence_t qsig_mcm_MCMServiceArg_sequence[] = {
11263 { &hf_qsig_mcm_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11264 { &hf_qsig_mcm_mCMChange , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMChange },
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 }
11269 static int
11270 dissect_qsig_mcm_MCMServiceArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11271 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11272 qsig_mcm_MCMServiceArg_sequence, hf_index, ett_qsig_mcm_MCMServiceArg);
11274 return offset;
11278 static const ber_sequence_t qsig_mcm_MCMInterrogateArg_sequence[] = {
11279 { &hf_qsig_mcm_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11280 { &hf_qsig_mcm_interrogateInfo, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_SEQUENCE_OF_MessageType },
11281 { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11282 { NULL, 0, 0, 0, NULL }
11285 static int
11286 dissect_qsig_mcm_MCMInterrogateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11287 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11288 qsig_mcm_MCMInterrogateArg_sequence, hf_index, ett_qsig_mcm_MCMInterrogateArg);
11290 return offset;
11294 static const ber_sequence_t qsig_mcm_MCMInterrogateRes_sequence[] = {
11295 { &hf_qsig_mcm_interrogateResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_SEQUENCE_OF_MCMServiceInfo },
11296 { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11297 { NULL, 0, 0, 0, NULL }
11300 static int
11301 dissect_qsig_mcm_MCMInterrogateRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11302 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11303 qsig_mcm_MCMInterrogateRes_sequence, hf_index, ett_qsig_mcm_MCMInterrogateRes);
11305 return offset;
11310 static int
11311 dissect_qsig_mcm_NrOfMessages(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11312 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11313 NULL);
11315 return offset;
11320 static int
11321 dissect_qsig_mcm_TimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11322 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
11324 return offset;
11329 static int
11330 dissect_qsig_mcm_INTEGER_0_9(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11331 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11332 NULL);
11334 return offset;
11338 static const value_string qsig_mcm_MCMNewArgumentExt_vals[] = {
11339 { 6, "extension" },
11340 { 7, "multipleExtension" },
11341 { 0, NULL }
11344 static const ber_choice_t qsig_mcm_MCMNewArgumentExt_choice[] = {
11345 { 6, &hf_qsig_mcm_extension , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11346 { 7, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11347 { 0, NULL, 0, 0, 0, NULL }
11350 static int
11351 dissect_qsig_mcm_MCMNewArgumentExt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11352 offset = dissect_ber_choice(actx, tree, tvb, offset,
11353 qsig_mcm_MCMNewArgumentExt_choice, hf_index, ett_qsig_mcm_MCMNewArgumentExt,
11354 NULL);
11356 return offset;
11360 static const ber_sequence_t qsig_mcm_MCMNewMsgArg_sequence[] = {
11361 { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11362 { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11363 { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11364 { &hf_qsig_mcm_nrOfMessages, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NrOfMessages },
11365 { &hf_qsig_mcm_originatingNr, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
11366 { &hf_qsig_mcm_timestamp , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11367 { &hf_qsig_mcm_priority , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_9 },
11368 { &hf_qsig_mcm_argumentExtMCMNew, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMNewArgumentExt },
11369 { NULL, 0, 0, 0, NULL }
11372 static int
11373 dissect_qsig_mcm_MCMNewMsgArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11374 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11375 qsig_mcm_MCMNewMsgArg_sequence, hf_index, ett_qsig_mcm_MCMNewMsgArg);
11377 return offset;
11381 static const value_string qsig_mcm_MCMNoNewArgumentExt_vals[] = {
11382 { 3, "extension" },
11383 { 4, "multipleExtension" },
11384 { 0, NULL }
11387 static const ber_choice_t qsig_mcm_MCMNoNewArgumentExt_choice[] = {
11388 { 3, &hf_qsig_mcm_extension , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11389 { 4, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11390 { 0, NULL, 0, 0, 0, NULL }
11393 static int
11394 dissect_qsig_mcm_MCMNoNewArgumentExt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11395 offset = dissect_ber_choice(actx, tree, tvb, offset,
11396 qsig_mcm_MCMNoNewArgumentExt_choice, hf_index, ett_qsig_mcm_MCMNoNewArgumentExt,
11397 NULL);
11399 return offset;
11403 static const ber_sequence_t qsig_mcm_MCMNoNewMsgArg_sequence[] = {
11404 { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11405 { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11406 { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11407 { &hf_qsig_mcm_argumentExtMCMNoNew, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMNoNewArgumentExt },
11408 { NULL, 0, 0, 0, NULL }
11411 static int
11412 dissect_qsig_mcm_MCMNoNewMsgArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11413 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11414 qsig_mcm_MCMNoNewMsgArg_sequence, hf_index, ett_qsig_mcm_MCMNoNewMsgArg);
11416 return offset;
11421 static int
11422 dissect_qsig_mcm_Priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11423 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
11424 NULL);
11426 return offset;
11430 static const ber_sequence_t qsig_mcm_AddressHeader_sequence[] = {
11431 { &hf_qsig_mcm_originatorNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11432 { &hf_qsig_mcm_timeStamp , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_TimeStamp },
11433 { &hf_qsig_mcm_ahpriority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_Priority },
11434 { NULL, 0, 0, 0, NULL }
11437 static int
11438 dissect_qsig_mcm_AddressHeader(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11439 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11440 qsig_mcm_AddressHeader_sequence, hf_index, ett_qsig_mcm_AddressHeader);
11442 return offset;
11446 static const ber_sequence_t qsig_mcm_CompleteInfo_sequence_of[1] = {
11447 { &hf_qsig_mcm_CompleteInfo_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_AddressHeader },
11450 static int
11451 dissect_qsig_mcm_CompleteInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11452 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11453 qsig_mcm_CompleteInfo_sequence_of, hf_index, ett_qsig_mcm_CompleteInfo);
11455 return offset;
11459 static const ber_sequence_t qsig_mcm_CompressedInfo_sequence[] = {
11460 { &hf_qsig_mcm_nrOfMessages, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NrOfMessages },
11461 { &hf_qsig_mcm_lastTimeStamp, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11462 { &hf_qsig_mcm_highestPriority, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_Priority },
11463 { NULL, 0, 0, 0, NULL }
11466 static int
11467 dissect_qsig_mcm_CompressedInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11468 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11469 qsig_mcm_CompressedInfo_sequence, hf_index, ett_qsig_mcm_CompressedInfo);
11471 return offset;
11475 static const value_string qsig_mcm_MessageInfo_vals[] = {
11476 { 0, "completeInfo" },
11477 { 1, "compressedInfo" },
11478 { 2, "noMsgsOfMsgType" },
11479 { 0, NULL }
11482 static const ber_choice_t qsig_mcm_MessageInfo_choice[] = {
11483 { 0, &hf_qsig_mcm_completeInfo, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_CompleteInfo },
11484 { 1, &hf_qsig_mcm_compressedInfo, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_CompressedInfo },
11485 { 2, &hf_qsig_mcm_noMsgsOfMsgType, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_NULL },
11486 { 0, NULL, 0, 0, 0, NULL }
11489 static int
11490 dissect_qsig_mcm_MessageInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11491 offset = dissect_ber_choice(actx, tree, tvb, offset,
11492 qsig_mcm_MessageInfo_choice, hf_index, ett_qsig_mcm_MessageInfo,
11493 NULL);
11495 return offset;
11499 static const ber_sequence_t qsig_mcm_AllMsgInfo_sequence[] = {
11500 { &hf_qsig_mcm_newMsgInfo , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MessageInfo },
11501 { &hf_qsig_mcm_retrievedMsgInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MessageInfo },
11502 { NULL, 0, 0, 0, NULL }
11505 static int
11506 dissect_qsig_mcm_AllMsgInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11507 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11508 qsig_mcm_AllMsgInfo_sequence, hf_index, ett_qsig_mcm_AllMsgInfo);
11510 return offset;
11514 static const value_string qsig_mcm_UpdateInfo_vals[] = {
11515 { 0, "newMsgInfoOnly" },
11516 { 1, "retrievedMsgInfoOnly" },
11517 { 2, "allMsgInfo" },
11518 { 0, NULL }
11521 static const ber_choice_t qsig_mcm_UpdateInfo_choice[] = {
11522 { 0, &hf_qsig_mcm_newMsgInfoOnly, BER_CLASS_CON, 1, 0, dissect_qsig_mcm_MessageInfo },
11523 { 1, &hf_qsig_mcm_retrievedMsgInfoOnly, BER_CLASS_CON, 2, 0, dissect_qsig_mcm_MessageInfo },
11524 { 2, &hf_qsig_mcm_allMsgInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_AllMsgInfo },
11525 { 0, NULL, 0, 0, 0, NULL }
11528 static int
11529 dissect_qsig_mcm_UpdateInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11530 offset = dissect_ber_choice(actx, tree, tvb, offset,
11531 qsig_mcm_UpdateInfo_choice, hf_index, ett_qsig_mcm_UpdateInfo,
11532 NULL);
11534 return offset;
11539 static int
11540 dissect_qsig_mcm_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11541 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
11543 return offset;
11547 static const ber_sequence_t qsig_mcm_MCMUpdateArg_sequence[] = {
11548 { &hf_qsig_mcm_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_PartyInfo },
11549 { &hf_qsig_mcm_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11550 { &hf_qsig_mcm_updateInfo , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_UpdateInfo },
11551 { &hf_qsig_mcm_moreInfoFollows, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_BOOLEAN },
11552 { &hf_qsig_mcm_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMExtensions },
11553 { NULL, 0, 0, 0, NULL }
11556 static int
11557 dissect_qsig_mcm_MCMUpdateArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11558 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11559 qsig_mcm_MCMUpdateArg_sequence, hf_index, ett_qsig_mcm_MCMUpdateArg);
11561 return offset;
11565 static const value_string qsig_mcm_MCMUpdArgArgumentExt_vals[] = {
11566 { 3, "extension" },
11567 { 4, "multipleExtension" },
11568 { 0, NULL }
11571 static const ber_choice_t qsig_mcm_MCMUpdArgArgumentExt_choice[] = {
11572 { 3, &hf_qsig_mcm_extension , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11573 { 4, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11574 { 0, NULL, 0, 0, 0, NULL }
11577 static int
11578 dissect_qsig_mcm_MCMUpdArgArgumentExt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11579 offset = dissect_ber_choice(actx, tree, tvb, offset,
11580 qsig_mcm_MCMUpdArgArgumentExt_choice, hf_index, ett_qsig_mcm_MCMUpdArgArgumentExt,
11581 NULL);
11583 return offset;
11587 static const ber_sequence_t qsig_mcm_MCMUpdateReqArg_sequence[] = {
11588 { &hf_qsig_mcm_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PartyNumber },
11589 { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11590 { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11591 { &hf_qsig_mcm_argumentExtMCMUpdArg, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMUpdArgArgumentExt },
11592 { NULL, 0, 0, 0, NULL }
11595 static int
11596 dissect_qsig_mcm_MCMUpdateReqArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11597 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11598 qsig_mcm_MCMUpdateReqArg_sequence, hf_index, ett_qsig_mcm_MCMUpdateReqArg);
11600 return offset;
11604 static const value_string qsig_mcm_MCMUpdResArgumentExt_vals[] = {
11605 { 6, "extension" },
11606 { 7, "multipleExtension" },
11607 { 0, NULL }
11610 static const ber_choice_t qsig_mcm_MCMUpdResArgumentExt_choice[] = {
11611 { 6, &hf_qsig_mcm_extension , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11612 { 7, &hf_qsig_mcm_multipleExtension, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_qsig_mcm_SEQUENCE_OF_Extension },
11613 { 0, NULL, 0, 0, 0, NULL }
11616 static int
11617 dissect_qsig_mcm_MCMUpdResArgumentExt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11618 offset = dissect_ber_choice(actx, tree, tvb, offset,
11619 qsig_mcm_MCMUpdResArgumentExt_choice, hf_index, ett_qsig_mcm_MCMUpdResArgumentExt,
11620 NULL);
11622 return offset;
11626 static const ber_sequence_t qsig_mcm_MCMUpdateReqResElt_sequence[] = {
11627 { &hf_qsig_mcm_specificMessageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11628 { &hf_qsig_mcm_msgCentreId, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MsgCentreId },
11629 { &hf_qsig_mcm_nrOfMessages, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_NrOfMessages },
11630 { &hf_qsig_mcm_originatingNr, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_qsig_PartyNumber },
11631 { &hf_qsig_mcm_timestamp , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_TimeStamp },
11632 { &hf_qsig_mcm_priority , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_qsig_mcm_INTEGER_0_9 },
11633 { &hf_qsig_mcm_argumentExtMCMUpdRes, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mcm_MCMUpdResArgumentExt },
11634 { NULL, 0, 0, 0, NULL }
11637 static int
11638 dissect_qsig_mcm_MCMUpdateReqResElt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11639 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11640 qsig_mcm_MCMUpdateReqResElt_sequence, hf_index, ett_qsig_mcm_MCMUpdateReqResElt);
11642 return offset;
11646 static const ber_sequence_t qsig_mcm_MCMUpdateReqRes_sequence_of[1] = {
11647 { &hf_qsig_mcm_MCMUpdateReqRes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MCMUpdateReqResElt },
11650 static int
11651 dissect_qsig_mcm_MCMUpdateReqRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11652 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11653 qsig_mcm_MCMUpdateReqRes_sequence_of, hf_index, ett_qsig_mcm_MCMUpdateReqRes);
11655 return offset;
11660 static int
11661 dissect_qsig_mcm_MCMDummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11662 offset = dissect_qsig_mcm_MCMExtensions(implicit_tag, tvb, offset, actx, tree, hf_index);
11664 return offset;
11667 /*--- PDUs ---*/
11669 static int dissect_qsig_mcm_MCMNewMsgArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11670 int offset = 0;
11671 asn1_ctx_t asn1_ctx;
11672 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11673 offset = dissect_qsig_mcm_MCMNewMsgArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU);
11674 return offset;
11676 static int dissect_qsig_mcm_MCMDummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11677 int offset = 0;
11678 asn1_ctx_t asn1_ctx;
11679 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11680 offset = dissect_qsig_mcm_MCMDummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU);
11681 return offset;
11683 static int dissect_qsig_mcm_MCMNoNewMsgArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11684 int offset = 0;
11685 asn1_ctx_t asn1_ctx;
11686 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11687 offset = dissect_qsig_mcm_MCMNoNewMsgArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU);
11688 return offset;
11690 static int dissect_qsig_mcm_MCMUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11691 int offset = 0;
11692 asn1_ctx_t asn1_ctx;
11693 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11694 offset = dissect_qsig_mcm_MCMUpdateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU);
11695 return offset;
11697 static int dissect_qsig_mcm_MCMUpdateReqArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11698 int offset = 0;
11699 asn1_ctx_t asn1_ctx;
11700 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11701 offset = dissect_qsig_mcm_MCMUpdateReqArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU);
11702 return offset;
11704 static int dissect_qsig_mcm_MCMUpdateReqRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11705 int offset = 0;
11706 asn1_ctx_t asn1_ctx;
11707 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11708 offset = dissect_qsig_mcm_MCMUpdateReqRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU);
11709 return offset;
11711 static int dissect_qsig_mcm_MCMServiceArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11712 int offset = 0;
11713 asn1_ctx_t asn1_ctx;
11714 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11715 offset = dissect_qsig_mcm_MCMServiceArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU);
11716 return offset;
11718 static int dissect_qsig_mcm_MCMInterrogateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11719 int offset = 0;
11720 asn1_ctx_t asn1_ctx;
11721 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11722 offset = dissect_qsig_mcm_MCMInterrogateArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU);
11723 return offset;
11725 static int dissect_qsig_mcm_MCMInterrogateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11726 int offset = 0;
11727 asn1_ctx_t asn1_ctx;
11728 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11729 offset = dissect_qsig_mcm_MCMInterrogateRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU);
11730 return offset;
11732 static int dissect_qsig_mcm_MCMailboxFullArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11733 int offset = 0;
11734 asn1_ctx_t asn1_ctx;
11735 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11736 offset = dissect_qsig_mcm_MCMailboxFullArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU);
11737 return offset;
11739 static int dissect_qsig_mcm_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11740 int offset = 0;
11741 asn1_ctx_t asn1_ctx;
11742 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11743 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mcm_qsig_mcm_Extension_PDU);
11744 return offset;
11748 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
11751 static const ber_sequence_t qsig_mid_PartyInfo_sequence[] = {
11752 { &hf_qsig_mid_servedUserNr, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_PresentedAddressUnscreened },
11753 { &hf_qsig_mid_messageType, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MessageType },
11754 { &hf_qsig_mid_messageCentreID, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_qsig_mcm_MsgCentreId },
11755 { NULL, 0, 0, 0, NULL }
11758 static int
11759 dissect_qsig_mid_PartyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11760 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11761 qsig_mid_PartyInfo_sequence, hf_index, ett_qsig_mid_PartyInfo);
11763 return offset;
11768 static int
11769 dissect_qsig_mid_BMPString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11770 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_BMPString,
11771 actx, tree, tvb, offset, hf_index,
11772 NULL);
11774 return offset;
11779 static int
11780 dissect_qsig_mid_UTF8String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11781 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String,
11782 actx, tree, tvb, offset, hf_index,
11783 NULL);
11785 return offset;
11789 static const value_string qsig_mid_String_vals[] = {
11790 { 0, "stringBmp" },
11791 { 1, "stringUtf8" },
11792 { 0, NULL }
11795 static const ber_choice_t qsig_mid_String_choice[] = {
11796 { 0, &hf_qsig_mid_stringBmp , BER_CLASS_UNI, BER_UNI_TAG_BMPString, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_BMPString },
11797 { 1, &hf_qsig_mid_stringUtf8 , BER_CLASS_UNI, BER_UNI_TAG_UTF8String, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_UTF8String },
11798 { 0, NULL, 0, 0, 0, NULL }
11801 static int
11802 dissect_qsig_mid_String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11803 offset = dissect_ber_choice(actx, tree, tvb, offset,
11804 qsig_mid_String_choice, hf_index, ett_qsig_mid_String,
11805 NULL);
11807 return offset;
11812 static int
11813 dissect_qsig_mid_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11814 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
11816 return offset;
11820 static const ber_sequence_t qsig_mid_SEQUENCE_OF_Extension_sequence_of[1] = {
11821 { &hf_qsig_mid_multipleExtension_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_Extension },
11824 static int
11825 dissect_qsig_mid_SEQUENCE_OF_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11826 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
11827 qsig_mid_SEQUENCE_OF_Extension_sequence_of, hf_index, ett_qsig_mid_SEQUENCE_OF_Extension);
11829 return offset;
11833 static const value_string qsig_mid_MIDExtensions_vals[] = {
11834 { 0, "none" },
11835 { 1, "extension" },
11836 { 2, "multipleExtension" },
11837 { 0, NULL }
11840 static const ber_choice_t qsig_mid_MIDExtensions_choice[] = {
11841 { 0, &hf_qsig_mid_none , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_NULL },
11842 { 1, &hf_qsig_mid_extension , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_qsig_Extension },
11843 { 2, &hf_qsig_mid_multipleExtension, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_qsig_mid_SEQUENCE_OF_Extension },
11844 { 0, NULL, 0, 0, 0, NULL }
11847 static int
11848 dissect_qsig_mid_MIDExtensions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11849 offset = dissect_ber_choice(actx, tree, tvb, offset,
11850 qsig_mid_MIDExtensions_choice, hf_index, ett_qsig_mid_MIDExtensions,
11851 NULL);
11853 return offset;
11857 static const ber_sequence_t qsig_mid_MIDMailboxAuthArg_sequence[] = {
11858 { &hf_qsig_mid_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_PartyInfo },
11859 { &hf_qsig_mid_servedUserName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
11860 { &hf_qsig_mid_mailBox , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11861 { &hf_qsig_mid_password , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11862 { &hf_qsig_mid_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_MIDExtensions },
11863 { NULL, 0, 0, 0, NULL }
11866 static int
11867 dissect_qsig_mid_MIDMailboxAuthArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11868 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11869 qsig_mid_MIDMailboxAuthArg_sequence, hf_index, ett_qsig_mid_MIDMailboxAuthArg);
11871 return offset;
11875 static const ber_sequence_t qsig_mid_MIDMailboxIDArg_sequence[] = {
11876 { &hf_qsig_mid_partyInfo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_qsig_mid_PartyInfo },
11877 { &hf_qsig_mid_servedUserName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_qsig_na_Name },
11878 { &hf_qsig_mid_mailBox , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_String },
11879 { &hf_qsig_mid_extensions , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_qsig_mid_MIDExtensions },
11880 { NULL, 0, 0, 0, NULL }
11883 static int
11884 dissect_qsig_mid_MIDMailboxIDArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11885 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
11886 qsig_mid_MIDMailboxIDArg_sequence, hf_index, ett_qsig_mid_MIDMailboxIDArg);
11888 return offset;
11893 static int
11894 dissect_qsig_mid_MIDDummyRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11895 offset = dissect_qsig_mid_MIDExtensions(implicit_tag, tvb, offset, actx, tree, hf_index);
11897 return offset;
11900 /*--- PDUs ---*/
11902 static int dissect_qsig_mid_MIDMailboxAuthArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11903 int offset = 0;
11904 asn1_ctx_t asn1_ctx;
11905 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11906 offset = dissect_qsig_mid_MIDMailboxAuthArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU);
11907 return offset;
11909 static int dissect_qsig_mid_MIDDummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11910 int offset = 0;
11911 asn1_ctx_t asn1_ctx;
11912 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11913 offset = dissect_qsig_mid_MIDDummyRes(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDDummyRes_PDU);
11914 return offset;
11916 static int dissect_qsig_mid_MIDMailboxIDArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11917 int offset = 0;
11918 asn1_ctx_t asn1_ctx;
11919 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11920 offset = dissect_qsig_mid_MIDMailboxIDArg(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU);
11921 return offset;
11923 static int dissect_qsig_mid_Extension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
11924 int offset = 0;
11925 asn1_ctx_t asn1_ctx;
11926 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
11927 offset = dissect_qsig_Extension(FALSE, tvb, offset, &asn1_ctx, tree, hf_qsig_mid_qsig_mid_Extension_PDU);
11928 return offset;
11932 /*--- End of included file: packet-qsig-fn.c ---*/
11933 #line 327 "../../asn1/qsig/packet-qsig-template.c"
11935 typedef struct _qsig_op_t {
11936 gint32 opcode;
11937 new_dissector_t arg_pdu;
11938 new_dissector_t res_pdu;
11939 } qsig_op_t;
11941 static const qsig_op_t qsig_op_tab[] = {
11943 /*--- Included file: packet-qsig-table11.c ---*/
11944 #line 1 "../../asn1/qsig/packet-qsig-table11.c"
11946 /* --- Module General-Error-List --- --- --- */
11948 /* Unknown or empty loop list OPERATION */
11950 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
11952 /* Unknown or empty loop list OPERATION */
11954 /* --- Module Name-Operations-asn1-97 --- --- --- */
11956 /* callingName */ { 0, dissect_qsig_na_NameArg_PDU, NULL },
11957 /* calledName */ { 1, dissect_qsig_na_NameArg_PDU, NULL },
11958 /* connectedName */ { 2, dissect_qsig_na_NameArg_PDU, NULL },
11959 /* busyName */ { 3, dissect_qsig_na_NameArg_PDU, NULL },
11961 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
11963 /* activateDiversionQ */ { 15, dissect_qsig_cf_ARG_activateDiversionQ_PDU, dissect_qsig_cf_RES_activateDiversionQ_PDU },
11964 /* deactivateDiversionQ */ { 16, dissect_qsig_cf_ARG_deactivateDiversionQ_PDU, dissect_qsig_cf_RES_deactivateDiversionQ_PDU },
11965 /* interrogateDiversionQ */ { 17, dissect_qsig_cf_ARG_interrogateDiversionQ_PDU, dissect_qsig_cf_IntResultList_PDU },
11966 /* checkRestriction */ { 18, dissect_qsig_cf_ARG_checkRestriction_PDU, dissect_qsig_cf_RES_checkRestriction_PDU },
11967 /* callRerouteing */ { 19, dissect_qsig_cf_ARG_callRerouteing_PDU, dissect_qsig_cf_RES_callRerouteing_PDU },
11968 /* divertingLegInformation1 */ { 20, dissect_qsig_cf_ARG_divertingLegInformation1_PDU, NULL },
11969 /* divertingLegInformation2 */ { 21, dissect_qsig_cf_ARG_divertingLegInformation2_PDU, NULL },
11970 /* divertingLegInformation3 */ { 22, dissect_qsig_cf_ARG_divertingLegInformation3_PDU, NULL },
11971 /* cfnrDivertedLegFailed */ { 23, dissect_qsig_cf_ARG_cfnrDivertedLegFailed_PDU, NULL },
11973 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
11975 /* pathReplaceInvite */ { 86, dissect_qsig_pr_DummyArg_PDU, NULL },
11976 /* pathReplacePropose */ { 4, dissect_qsig_pr_PRProposeArg_PDU, NULL },
11977 /* pathReplaceSetup */ { 5, dissect_qsig_pr_PRSetupArg_PDU, dissect_qsig_pr_DummyResult_PDU },
11978 /* pathReplaceRetain */ { 6, dissect_qsig_pr_PRRetainArg_PDU, dissect_qsig_pr_DummyResult_PDU },
11980 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
11982 /* callTransferIdentify */ { 7, dissect_qsig_ct_DummyArg_PDU, dissect_qsig_ct_CTIdentifyRes_PDU },
11983 /* callTransferAbandon */ { 8, dissect_qsig_ct_DummyArg_PDU, NULL },
11984 /* callTransferInitiate */ { 9, dissect_qsig_ct_CTInitiateArg_PDU, dissect_qsig_ct_DummyRes_PDU },
11985 /* callTransferSetup */ { 10, dissect_qsig_ct_CTSetupArg_PDU, dissect_qsig_ct_DummyRes_PDU },
11986 /* callTransferActive */ { 11, dissect_qsig_ct_CTActiveArg_PDU, NULL },
11987 /* callTransferComplete */ { 12, dissect_qsig_ct_CTCompleteArg_PDU, NULL },
11988 /* callTransferUpdate */ { 13, dissect_qsig_ct_CTUpdateArg_PDU, NULL },
11989 /* subaddressTransfer */ { 14, dissect_qsig_ct_SubaddressTransferArg_PDU, NULL },
11991 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
11993 /* ccbsRequest */ { 40, dissect_qsig_cc_CcRequestArg_PDU, dissect_qsig_cc_CcRequestRes_PDU },
11994 /* ccnrRequest */ { 27, dissect_qsig_cc_CcRequestArg_PDU, dissect_qsig_cc_CcRequestRes_PDU },
11995 /* ccCancel */ { 28, dissect_qsig_cc_CcOptionalArg_PDU, NULL },
11996 /* ccExecPossible */ { 29, dissect_qsig_cc_CcOptionalArg_PDU, NULL },
11997 /* ccPathReserve */ { 30, dissect_qsig_cc_CcExtension_PDU, dissect_qsig_cc_CcExtension_PDU },
11998 /* ccRingout */ { 31, dissect_qsig_cc_CcExtension_PDU, NULL },
11999 /* ccSuspend */ { 32, dissect_qsig_cc_CcExtension_PDU, NULL },
12000 /* ccResume */ { 33, dissect_qsig_cc_CcExtension_PDU, NULL },
12002 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
12004 /* pathRetain */ { 41, dissect_qsig_co_PathRetainArg_PDU, NULL },
12005 /* serviceAvailable */ { 42, dissect_qsig_co_ServiceAvailableArg_PDU, NULL },
12006 /* callOfferRequest */ { 34, dissect_qsig_co_DummyArg_PDU, dissect_qsig_co_DummyRes_PDU },
12007 /* cfbOverride */ { 49, dissect_qsig_co_DummyArg_PDU, NULL },
12009 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
12011 /* doNotDisturbActivateQ */ { 35, dissect_qsig_dnd_DNDActivateArg_PDU, dissect_qsig_dnd_DNDActivateRes_PDU },
12012 /* doNotDisturbDeactivateQ */ { 36, dissect_qsig_dnd_DNDDeactivateArg_PDU, dissect_qsig_dnd_DummyRes_PDU },
12013 /* doNotDisturbInterrogateQ */ { 37, dissect_qsig_dnd_DNDInterrogateArg_PDU, dissect_qsig_dnd_DNDInterrogateRes_PDU },
12014 /* doNotDisturbOverrideQ */ { 38, dissect_qsig_dnd_DNDOverrideArg_PDU, NULL },
12015 /* pathRetain */ { 41, dissect_qsig_dnd_PathRetainArg_PDU, NULL },
12016 /* serviceAvailable */ { 42, dissect_qsig_dnd_ServiceAvailableArg_PDU, NULL },
12017 /* doNotDisturbOvrExecuteQ */ { 39, dissect_qsig_dnd_DummyArg_PDU, dissect_qsig_dnd_DummyRes_PDU },
12019 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
12021 /* pathRetain */ { 41, dissect_qsig_ci_PathRetainArg_PDU, NULL },
12022 /* serviceAvailable */ { 42, dissect_qsig_ci_ServiceAvailableArg_PDU, NULL },
12023 /* callIntrusionRequest */ { 43, dissect_qsig_ci_CIRequestArg_PDU, dissect_qsig_ci_CIRequestRes_PDU },
12024 /* callIntrusionGetCIPL */ { 44, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_CIGetCIPLRes_PDU },
12025 /* callIntrusionForcedRelease */ { 46, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12026 /* callIntrusionIsolate */ { 45, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12027 /* callIntrusionWOBRequest */ { 47, dissect_qsig_ci_DummyArg_PDU, dissect_qsig_ci_DummyRes_PDU },
12028 /* callIntrusionCompleted */ { 48, dissect_qsig_ci_DummyArg_PDU, NULL },
12029 /* cfbOverride */ { 49, dissect_qsig_ci_DummyArg_PDU, NULL },
12031 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
12033 /* aocRate */ { 63, dissect_qsig_aoc_AocRateArg_PDU, NULL },
12034 /* aocInterim */ { 62, dissect_qsig_aoc_AocInterimArg_PDU, NULL },
12035 /* aocFinal */ { 61, dissect_qsig_aoc_AocFinalArg_PDU, NULL },
12036 /* chargeRequest */ { 59, dissect_qsig_aoc_ChargeRequestArg_PDU, dissect_qsig_aoc_ChargeRequestRes_PDU },
12037 /* getFinalCharge */ { 60, dissect_qsig_aoc_DummyArg_PDU, NULL },
12038 /* aocComplete */ { 64, dissect_qsig_aoc_AocCompleteArg_PDU, dissect_qsig_aoc_AocCompleteRes_PDU },
12039 /* aocDivChargeReq */ { 65, dissect_qsig_aoc_AocDivChargeReqArg_PDU, NULL },
12041 /* --- Module Recall-Operations-asn1-97 --- --- --- */
12043 /* recallAlerting */ { 57, dissect_qsig_re_ReAlertingArg_PDU, NULL },
12044 /* recallAnswered */ { 58, dissect_qsig_re_ReAnswerArg_PDU, NULL },
12046 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
12048 /* synchronizationRequest */ { 78, dissect_qsig_sync_SynchronizationReqArg_PDU, dissect_qsig_sync_SynchronizationReqRes_PDU },
12049 /* synchronizationInfo */ { 79, dissect_qsig_sync_SynchronizationInfoArg_PDU, NULL },
12051 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
12053 /* cintLegInformation1 */ { 66, dissect_qsig_cint_CintInformation1Arg_PDU, NULL },
12054 /* cintLegInformation2 */ { 67, dissect_qsig_cint_CintInformation2Arg_PDU, NULL },
12055 /* cintCondition */ { 68, dissect_qsig_cint_CintCondArg_PDU, NULL },
12056 /* cintDisable */ { 69, dissect_qsig_cint_CintExtension_PDU, NULL },
12057 /* cintEnable */ { 70, dissect_qsig_cint_CintExtension_PDU, NULL },
12059 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
12061 /* cmnRequest */ { 84, dissect_qsig_cmn_DummyArg_PDU, dissect_qsig_cmn_CmnArg_PDU },
12062 /* cmnInform */ { 85, dissect_qsig_cmn_CmnArg_PDU, NULL },
12064 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
12066 /* callInterruptionRequest */ { 87, dissect_qsig_cpi_CPIRequestArg_PDU, NULL },
12067 /* callProtectionRequest */ { 88, dissect_qsig_cpi_CPIPRequestArg_PDU, NULL },
12069 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
12071 /* pumRegistr */ { 89, dissect_qsig_pumr_PumRegistrArg_PDU, dissect_qsig_pumr_PumRegistrRes_PDU },
12072 /* pumDelReg */ { 90, dissect_qsig_pumr_PumDelRegArg_PDU, dissect_qsig_pumr_DummyRes_PDU },
12073 /* pumDe-reg */ { 91, dissect_qsig_pumr_PumDe_regArg_PDU, dissect_qsig_pumr_DummyRes_PDU },
12074 /* pumInterrog */ { 92, dissect_qsig_pumr_PumInterrogArg_PDU, dissect_qsig_pumr_PumInterrogRes_PDU },
12076 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
12078 /* pumiEnquiry */ { 93, dissect_qsig_pumch_EnquiryArg_PDU, dissect_qsig_pumch_EnquiryRes_PDU },
12079 /* pumiDivert */ { 94, dissect_qsig_pumch_DivertArg_PDU, dissect_qsig_pumch_DummyRes_PDU },
12080 /* pumiInform */ { 95, dissect_qsig_pumch_InformArg_PDU, NULL },
12081 /* pumoCall */ { 96, dissect_qsig_pumch_PumoArg_PDU, NULL },
12083 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
12085 /* ssctInitiate */ { 99, dissect_qsig_ssct_SSCTInitiateArg_PDU, dissect_qsig_ssct_DummyRes_PDU },
12086 /* ssctSetup */ { 100, dissect_qsig_ssct_SSCTSetupArg_PDU, NULL },
12087 /* ssctPostDial */ { 101, dissect_qsig_ssct_DummyArg_PDU, NULL },
12088 /* ssctDigitInfo */ { 102, dissect_qsig_ssct_SSCTDigitInfoArg_PDU, NULL },
12090 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
12092 /* locUpdate */ { 50, dissect_qsig_wtmlr_LocUpdArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12093 /* locDelete */ { 51, dissect_qsig_wtmlr_LocDelArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12094 /* locDeReg */ { 52, dissect_qsig_wtmlr_LocDeRegArg_PDU, dissect_qsig_wtmlr_DummyRes_PDU },
12095 /* pisnEnquiry */ { 53, dissect_qsig_wtmlr_PisnEnqArg_PDU, dissect_qsig_wtmlr_PisnEnqRes_PDU },
12096 /* getRRCInf */ { 97, dissect_qsig_wtmlr_GetRRCInfArg_PDU, dissect_qsig_wtmlr_GetRRCInfRes_PDU },
12097 /* locInfoCheck */ { 98, dissect_qsig_wtmlr_LocInfoCheckArg_PDU, dissect_qsig_wtmlr_LocInfoCheckRes_PDU },
12099 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
12101 /* wtmiEnquiry */ { 54, dissect_qsig_wtmch_EnquiryArg_PDU, dissect_qsig_wtmch_EnquiryRes_PDU },
12102 /* wtmiDivert */ { 55, dissect_qsig_wtmch_DivertArg_PDU, dissect_qsig_wtmch_DummyRes_PDU },
12103 /* wtmiInform */ { 56, dissect_qsig_wtmch_InformArg_PDU, NULL },
12104 /* wtmoCall */ { 71, dissect_qsig_wtmch_WtmoArg_PDU, NULL },
12106 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
12108 /* authWtmUser */ { 72, dissect_qsig_wtmau_AuthWtmArg_PDU, dissect_qsig_wtmau_AuthWtmRes_PDU },
12109 /* getWtatParam */ { 73, dissect_qsig_wtmau_WtatParamArg_PDU, dissect_qsig_wtmau_WtatParamRes_PDU },
12110 /* wtatParamEnq */ { 74, dissect_qsig_wtmau_WtatParamArg_PDU, dissect_qsig_wtmau_WtatParamRes_PDU },
12111 /* getWtanParam */ { 75, dissect_qsig_wtmau_WtanParamArg_PDU, dissect_qsig_wtmau_WtanParamRes_PDU },
12112 /* wtanParamEnq */ { 76, dissect_qsig_wtmau_WtanParamArg_PDU, dissect_qsig_wtmau_WtanParamRes_PDU },
12113 /* transferAuthParam */ { 77, dissect_qsig_wtmau_ARG_transferAuthParam_PDU, NULL },
12115 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
12117 /* display */ { 103, dissect_qsig_sd_DisplayArg_PDU, NULL },
12118 /* keypad */ { 104, dissect_qsig_sd_KeypadArg_PDU, NULL },
12120 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
12122 /* callIdentificationAssign */ { 105, dissect_qsig_cidl_CallIdentificationAssignArg_PDU, NULL },
12123 /* callIdentificationUpdate */ { 106, dissect_qsig_cidl_CallIdentificationUpdateArg_PDU, NULL },
12125 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
12127 /* smsSubmit */ { 107, dissect_qsig_sms_SmsSubmitArg_PDU, dissect_qsig_sms_SmsSubmitRes_PDU },
12128 /* smsDeliver */ { 108, dissect_qsig_sms_SmsDeliverArg_PDU, dissect_qsig_sms_SmsDeliverRes_PDU },
12129 /* smsStatusReport */ { 109, dissect_qsig_sms_SmsStatusReportArg_PDU, dissect_qsig_sms_SmsStatusReportRes_PDU },
12130 /* smsCommand */ { 110, dissect_qsig_sms_SmsCommandArg_PDU, dissect_qsig_sms_SmsCommandRes_PDU },
12131 /* scAlert */ { 111, dissect_qsig_sms_ScAlertArg_PDU, dissect_qsig_sms_DummyRes_PDU },
12133 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
12135 /* mCRequest */ { 112, dissect_qsig_mcr_MCRequestArg_PDU, dissect_qsig_mcr_MCRequestResult_PDU },
12136 /* mCInform */ { 113, dissect_qsig_mcr_MCInformArg_PDU, NULL },
12137 /* mCAlerting */ { 114, dissect_qsig_mcr_MCAlertingArg_PDU, NULL },
12139 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
12141 /* mCMNewMsg */ { 80, dissect_qsig_mcm_MCMNewMsgArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12142 /* mCMNoNewMsg */ { 81, dissect_qsig_mcm_MCMNoNewMsgArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12143 /* mCMUpdate */ { 115, dissect_qsig_mcm_MCMUpdateArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12144 /* mCMUpdateReq */ { 82, dissect_qsig_mcm_MCMUpdateReqArg_PDU, dissect_qsig_mcm_MCMUpdateReqRes_PDU },
12145 /* mCMService */ { 116, dissect_qsig_mcm_MCMServiceArg_PDU, dissect_qsig_mcm_MCMDummyRes_PDU },
12146 /* mCMInterrogate */ { 117, dissect_qsig_mcm_MCMInterrogateArg_PDU, dissect_qsig_mcm_MCMInterrogateRes_PDU },
12147 /* mCMailboxFull */ { 118, dissect_qsig_mcm_MCMailboxFullArg_PDU, NULL },
12149 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
12151 /* mIDMailboxAuth */ { 119, dissect_qsig_mid_MIDMailboxAuthArg_PDU, dissect_qsig_mid_MIDDummyRes_PDU },
12152 /* mIDMailboxID */ { 120, dissect_qsig_mid_MIDMailboxIDArg_PDU, dissect_qsig_mid_MIDDummyRes_PDU },
12154 /*--- End of included file: packet-qsig-table11.c ---*/
12155 #line 336 "../../asn1/qsig/packet-qsig-template.c"
12158 typedef struct _qsig_err_t {
12159 gint32 errcode;
12160 new_dissector_t err_pdu;
12161 } qsig_err_t;
12163 static const qsig_err_t qsig_err_tab[] = {
12165 /*--- Included file: packet-qsig-table21.c ---*/
12166 #line 1 "../../asn1/qsig/packet-qsig-table21.c"
12168 /* --- Module General-Error-List --- --- --- */
12170 /* userNotSubscribed */ { 0, NULL },
12171 /* rejectedByNetwork */ { 1, NULL },
12172 /* rejectedByUser */ { 2, NULL },
12173 /* notAvailable */ { 3, NULL },
12174 /* insufficientInformation */ { 5, NULL },
12175 /* invalidServedUserNr */ { 6, NULL },
12176 /* invalidCallState */ { 7, NULL },
12177 /* basicServiceNotProvided */ { 8, NULL },
12178 /* notIncomingCall */ { 9, NULL },
12179 /* supplementaryServiceInteractionNotAllowed */ { 10, NULL },
12180 /* resourceUnavailable */ { 11, NULL },
12181 /* callFailure */ { 25, NULL },
12182 /* proceduralError */ { 43, NULL },
12184 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
12186 /* Unknown or empty loop list ERROR */
12188 /* --- Module Name-Operations-asn1-97 --- --- --- */
12190 /* Unknown or empty loop list ERROR */
12192 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
12194 /* invalidDivertedToNr */ { 12, NULL },
12195 /* specialServiceNr */ { 14, NULL },
12196 /* diversionToServedUserNr */ { 15, NULL },
12197 /* numberOfDiversionsExceeded */ { 24, NULL },
12198 /* temporarilyUnavailable */ { 1000, NULL },
12199 /* notAuthorized */ { 1007, NULL },
12200 /* unspecified */ { 1008, dissect_qsig_cf_Extension_PDU },
12202 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
12204 /* temporarilyUnavailable */ { 1000, NULL },
12205 /* collision */ { 1001, NULL },
12206 /* criteriaPermanentlyUnachievable */ { 1002, NULL },
12207 /* criteriaTemporarilyUnachievable */ { 1003, NULL },
12208 /* invalidRerouteingNumber */ { 1004, NULL },
12209 /* unrecognizedCallIdentity */ { 1005, NULL },
12210 /* establishmentFailure */ { 1006, NULL },
12211 /* unspecified */ { 1008, dissect_qsig_pr_Extension_PDU },
12213 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
12215 /* unspecified */ { 1008, dissect_qsig_ct_Extension_PDU },
12216 /* invalidRerouteingNumber */ { 1004, NULL },
12217 /* unrecognizedCallIdentity */ { 1005, NULL },
12218 /* establishmentFailure */ { 1006, NULL },
12220 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
12222 /* unspecified */ { 1008, dissect_qsig_cc_Extension_PDU },
12223 /* shortTermRejection */ { 1010, NULL },
12224 /* longTermRejection */ { 1011, NULL },
12225 /* remoteUserBusyAgain */ { 1012, NULL },
12226 /* failureToMatch */ { 1013, NULL },
12227 /* failedDueToInterworking */ { 1014, NULL },
12229 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
12231 /* notBusy */ { 1009, NULL },
12232 /* temporarilyUnavailable */ { 1000, NULL },
12233 /* unspecified */ { 1008, dissect_qsig_co_Extension_PDU },
12235 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
12237 /* temporarilyUnavailable */ { 1000, NULL },
12238 /* notActivated */ { 43, NULL },
12239 /* unspecified */ { 1008, dissect_qsig_dnd_Extension_PDU },
12241 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
12243 /* notBusy */ { 1009, NULL },
12244 /* temporarilyUnavailable */ { 1000, NULL },
12245 /* notAuthorized */ { 1007, NULL },
12246 /* unspecified */ { 1008, dissect_qsig_ci_Extension_PDU },
12248 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
12250 /* unspecified */ { 1008, dissect_qsig_aoc_Extension_PDU },
12251 /* freeOfCharge */ { 1016, NULL },
12253 /* --- Module Recall-Operations-asn1-97 --- --- --- */
12255 /* Unknown or empty loop list ERROR */
12257 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
12259 /* unspecified */ { 1008, dissect_qsig_sync_Extension_PDU },
12261 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
12263 /* Unknown or empty loop list ERROR */
12265 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
12267 /* Unknown or empty loop list ERROR */
12269 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
12271 /* Unknown or empty loop list ERROR */
12273 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
12275 /* unspecified */ { 1008, dissect_qsig_pumr_Extension_PDU },
12276 /* notAuthorized */ { 1007, NULL },
12277 /* temporarilyUnavailable */ { 1000, NULL },
12278 /* pumUserNotSubscribedToThisServiceOpt */ { 1019, NULL },
12279 /* pumUserFailedAuthentication */ { 1020, NULL },
12280 /* hostingAddrInvalid */ { 1021, NULL },
12281 /* pumUserNotRegistered */ { 1022, NULL },
12283 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
12285 /* locationNotKnown */ { 1015, NULL },
12286 /* unspecified */ { 1008, dissect_qsig_pumch_Extension_PDU },
12288 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
12290 /* unspecified */ { 1008, dissect_qsig_ssct_Extension_PDU },
12292 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
12294 /* notAuthorized */ { 1007, NULL },
12295 /* temporarilyUnavailable */ { 1000, NULL },
12296 /* unspecified */ { 1008, dissect_qsig_wtmlr_Extension_PDU },
12298 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
12300 /* unspecified */ { 1008, dissect_qsig_wtmch_Extension_PDU },
12301 /* locationNotKnown */ { 1015, NULL },
12303 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
12305 /* notAuthorized */ { 1007, NULL },
12306 /* paramNotAvailable */ { 1017, NULL },
12307 /* temporarilyUnavailable */ { 1000, NULL },
12308 /* unspecified */ { 1008, dissect_qsig_wtmau_Extension_PDU },
12310 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
12312 /* unspecified */ { 1008, dissect_qsig_sd_Extension_PDU },
12313 /* noDisplayAvailable */ { 1023, NULL },
12314 /* displayTemporarilyNotAvailable */ { 1024, NULL },
12315 /* notPresentable */ { 1025, NULL },
12317 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
12319 /* Unknown or empty loop list ERROR */
12321 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
12323 /* smsDeliverError */ { 1026, dissect_qsig_sms_PAR_smsDeliverError_PDU },
12324 /* smsSubmitError */ { 1027, dissect_qsig_sms_PAR_smsSubmitError_PDU },
12325 /* smsStatusReportError */ { 1028, dissect_qsig_sms_PAR_smsStatusReportError_PDU },
12326 /* smsCommandError */ { 1029, dissect_qsig_sms_PAR_smsCommandError_PDU },
12327 /* unspecified */ { 1008, dissect_qsig_sms_SmsExtension_PDU },
12329 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
12331 /* invalidDestinationNumber */ { 1030, NULL },
12332 /* invalidCooperationNumber */ { 1031, NULL },
12333 /* mCRequestNotAllowed */ { 1032, NULL },
12334 /* mCExecutionNotAllowed */ { 1033, NULL },
12335 /* mCDestUserBusy */ { 1034, NULL },
12336 /* mCCoopUserBusy */ { 1035, NULL },
12337 /* mCCoopUserRejected */ { 1036, NULL },
12338 /* unspecified */ { 1008, dissect_qsig_mcr_Extension_PDU },
12340 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
12342 /* mCMModeNotProvided */ { 1037, NULL },
12343 /* unspecified */ { 1008, dissect_qsig_mcm_Extension_PDU },
12345 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
12347 /* invalidMailbox */ { 1039, NULL },
12348 /* authorizationFailed */ { 1040, NULL },
12349 /* unspecified */ { 1008, dissect_qsig_mid_Extension_PDU },
12351 /*--- End of included file: packet-qsig-table21.c ---*/
12352 #line 345 "../../asn1/qsig/packet-qsig-template.c"
12355 static const qsig_op_t *get_op(gint32 opcode) {
12356 int i;
12358 /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
12359 for (i = array_length(qsig_op_tab) - 1; i >= 0; i--)
12360 if (qsig_op_tab[i].opcode == opcode)
12361 return &qsig_op_tab[i];
12362 return NULL;
12365 static gint32 get_service(gint32 opcode) {
12366 if ((opcode < 0) || (opcode >= (int)array_length(op2srv_tab)))
12367 return NO_SRV;
12368 return op2srv_tab[opcode];
12371 static const qsig_err_t *get_err(gint32 errcode) {
12372 int i;
12374 /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
12375 for (i = array_length(qsig_err_tab) - 1; i >= 0; i--)
12376 if (qsig_err_tab[i].errcode == errcode)
12377 return &qsig_err_tab[i];
12378 return NULL;
12381 /*--- dissect_qsig_arg ------------------------------------------------------*/
12382 static int
12383 dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12384 int offset;
12385 rose_ctx_t *rctx = get_rose_ctx(data);
12386 gint32 opcode = 0, service;
12387 const qsig_op_t *op_ptr;
12388 const gchar *p;
12389 proto_item *ti, *ti_tmp;
12390 proto_tree *qsig_tree;
12392 offset = 0;
12394 DISSECTOR_ASSERT(rctx);
12395 if (rctx->d.pdu != 1) /* invoke */
12396 return offset;
12397 if (rctx->d.code == 0) { /* local */
12398 opcode = rctx->d.code_local;
12399 op_ptr = get_op(opcode);
12400 } else if (rctx->d.code == 1) { /* global */
12401 op_ptr = (qsig_op_t *)g_hash_table_lookup(qsig_oid2op_hashtable, rctx->d.code_global);
12402 if (op_ptr) opcode = op_ptr->opcode;
12403 } else {
12404 return offset;
12406 if (!op_ptr)
12407 return offset;
12408 service = get_service(opcode);
12410 ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_length(tvb), ENC_NA);
12411 qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12413 proto_tree_add_uint(qsig_tree, hf_qsig_operation, tvb, 0, 0, opcode);
12414 p = try_val_to_str(opcode, VALS(qsig_str_operation));
12415 if (p) {
12416 proto_item_append_text(ti, ": %s", p);
12417 proto_item_append_text(rctx->d.code_item, " - %s", p);
12418 if (rctx->apdu_depth >= 0)
12419 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12422 ti_tmp = proto_tree_add_uint(qsig_tree, hf_qsig_service, tvb, 0, 0, service);
12423 p = try_val_to_str(service, VALS(qsig_str_service_name));
12424 if (p) proto_item_append_text(ti_tmp, " - %s", p);
12426 if (op_ptr->arg_pdu)
12427 offset = op_ptr->arg_pdu(tvb, pinfo, qsig_tree, NULL);
12428 else
12429 if (tvb_length_remaining(tvb, offset) > 0) {
12430 proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED ARGUMENT TYPE (QSIG)");
12431 offset += tvb_length_remaining(tvb, offset);
12434 return offset;
12437 /*--- dissect_qsig_res -------------------------------------------------------*/
12438 static int
12439 dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12440 gint offset;
12441 rose_ctx_t *rctx = get_rose_ctx(data);
12442 gint32 opcode, service;
12443 const qsig_op_t *op_ptr;
12444 const gchar *p;
12445 proto_item *ti, *ti_tmp;
12446 proto_tree *qsig_tree;
12448 offset = 0;
12450 DISSECTOR_ASSERT(rctx);
12451 if (rctx->d.pdu != 2) /* returnResult */
12452 return offset;
12453 if (rctx->d.code != 0) /* local */
12454 return offset;
12455 opcode = rctx->d.code_local;
12456 op_ptr = get_op(opcode);
12457 if (!op_ptr)
12458 return offset;
12459 service = get_service(opcode);
12461 ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_length(tvb), ENC_NA);
12462 qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12464 proto_tree_add_uint(qsig_tree, hf_qsig_operation, tvb, 0, 0, opcode);
12465 p = try_val_to_str(opcode, VALS(qsig_str_operation));
12466 if (p) {
12467 proto_item_append_text(ti, ": %s", p);
12468 proto_item_append_text(rctx->d.code_item, " - %s", p);
12469 if (rctx->apdu_depth >= 0)
12470 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12473 ti_tmp = proto_tree_add_uint(qsig_tree, hf_qsig_service, tvb, 0, 0, service);
12474 p = try_val_to_str(service, VALS(qsig_str_service_name));
12475 if (p) proto_item_append_text(ti_tmp, " - %s", p);
12477 if (op_ptr->res_pdu)
12478 offset = op_ptr->res_pdu(tvb, pinfo, qsig_tree, NULL);
12479 else
12480 if (tvb_length_remaining(tvb, offset) > 0) {
12481 proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED RESULT TYPE (QSIG)");
12482 offset += tvb_length_remaining(tvb, offset);
12485 return offset;
12488 /*--- dissect_qsig_err ------------------------------------------------------*/
12489 static int
12490 dissect_qsig_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
12491 int offset;
12492 rose_ctx_t *rctx = get_rose_ctx(data);
12493 gint32 errcode;
12494 const qsig_err_t *err_ptr;
12495 const gchar *p;
12496 proto_item *ti;
12497 proto_tree *qsig_tree;
12499 offset = 0;
12501 DISSECTOR_ASSERT(rctx);
12502 if (rctx->d.pdu != 3) /* returnError */
12503 return offset;
12504 if (rctx->d.code != 0) /* local */
12505 return offset;
12506 errcode = rctx->d.code_local;
12507 err_ptr = get_err(errcode);
12508 if (!err_ptr)
12509 return offset;
12511 ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, tvb_length(tvb), ENC_NA);
12512 qsig_tree = proto_item_add_subtree(ti, ett_qsig);
12514 proto_tree_add_uint(qsig_tree, hf_qsig_error, tvb, 0, 0, errcode);
12515 p = try_val_to_str(errcode, VALS(qsig_str_error));
12516 if (p) {
12517 proto_item_append_text(ti, ": %s", p);
12518 proto_item_append_text(rctx->d.code_item, " - %s", p);
12519 if (rctx->apdu_depth >= 0)
12520 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
12523 if (err_ptr->err_pdu)
12524 offset = err_ptr->err_pdu(tvb, pinfo, qsig_tree, NULL);
12525 else
12526 if (tvb_length_remaining(tvb, offset) > 0) {
12527 proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED ERROR TYPE (QSIG)");
12528 offset += tvb_length_remaining(tvb, offset);
12531 return offset;
12534 /*--- dissect_qsig_transit_counter_ie ---------------------------------------*/
12535 static int
12536 dissect_qsig_transit_counter_ie(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int length _U_) {
12537 proto_tree_add_item(tree, hf_qsig_tc, tvb, offset, 1, ENC_BIG_ENDIAN);
12538 offset++;
12539 return offset;
12541 /*--- dissect_qsig_party_category_ie ----------------------------------------*/
12542 static int
12543 dissect_qsig_party_category_ie(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int length _U_) {
12544 proto_tree_add_item(tree, hf_qsig_pc, tvb, offset, 1, ENC_BIG_ENDIAN);
12545 offset++;
12546 return offset;
12549 /*--- dissect_qsig_ie -------------------------------------------------------*/
12550 static void
12551 dissect_qsig_ie(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int codeset) {
12552 gint offset;
12553 proto_item *ti, *ti_ie, *hidden_item;
12554 proto_tree *ie_tree;
12555 guint8 ie_type, ie_len;
12557 offset = 0;
12559 ti = proto_tree_add_item(tree, proto_qsig, tvb, offset, -1, ENC_NA);
12560 PROTO_ITEM_SET_HIDDEN(ti);
12562 ie_type = tvb_get_guint8(tvb, offset);
12563 ie_len = tvb_get_guint8(tvb, offset + 1);
12565 ti_ie = proto_tree_add_text(tree, tvb, offset, -1, "%s",
12566 val_to_str(ie_type, VALS(qsig_str_ie_type[codeset]), "unknown (0x%02X)"));
12567 ie_tree = proto_item_add_subtree(ti_ie, ett_qsig_ie);
12568 proto_tree_add_item(ie_tree, *hf_qsig_ie_type_arr[codeset], tvb, offset, 1, ENC_BIG_ENDIAN);
12569 hidden_item = proto_tree_add_item(ie_tree, hf_qsig_ie_type, tvb, offset, 1, ENC_BIG_ENDIAN);
12570 PROTO_ITEM_SET_HIDDEN(hidden_item);
12571 proto_tree_add_item(ie_tree, hf_qsig_ie_len, tvb, offset + 1, 1, ENC_BIG_ENDIAN);
12572 offset += 2;
12573 if (tvb_length_remaining(tvb, offset) <= 0)
12574 return;
12575 switch ((codeset << 8) | ie_type) {
12576 case CS4 | QSIG_IE_TRANSIT_COUNTER :
12577 dissect_qsig_transit_counter_ie(tvb, offset, pinfo, ie_tree, ie_len);
12578 break;
12579 case CS5 | QSIG_IE_PARTY_CATEGORY :
12580 dissect_qsig_party_category_ie(tvb, offset, pinfo, ie_tree, ie_len);
12581 break;
12582 default:
12583 if (ie_len > 0) {
12584 if (tree) proto_tree_add_item(ie_tree, hf_qsig_ie_data, tvb, offset, ie_len, ENC_NA);
12588 /*--- dissect_qsig_ie_cs4 ---------------------------------------------------*/
12589 static void
12590 dissect_qsig_ie_cs4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
12591 dissect_qsig_ie(tvb, pinfo, tree, 4);
12593 /*--- dissect_qsig_ie_cs5 ---------------------------------------------------*/
12594 static void
12595 dissect_qsig_ie_cs5(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
12596 dissect_qsig_ie(tvb, pinfo, tree, 5);
12599 /*--- qsig_init_tables ---------------------------------------------------------*/
12600 static void qsig_init_tables(void) {
12601 guint i;
12602 gint opcode, *key;
12603 gchar *oid;
12605 if (qsig_opcode2oid_hashtable)
12606 g_hash_table_destroy(qsig_opcode2oid_hashtable);
12607 qsig_opcode2oid_hashtable = g_hash_table_new_full(g_int_hash, g_int_equal, g_free, g_free);
12609 if (qsig_oid2op_hashtable)
12610 g_hash_table_destroy(qsig_oid2op_hashtable);
12611 qsig_oid2op_hashtable = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
12613 /* fill-in global OIDs */
12614 for (i=0; i<array_length(qsig_op_tab); i++) {
12615 opcode = qsig_op_tab[i].opcode;
12616 oid = g_strdup_printf("1.3.12.9.%d", opcode);
12617 key = (gint *)g_malloc(sizeof(gint));
12618 *key = opcode;
12619 g_hash_table_insert(qsig_opcode2oid_hashtable, key, oid);
12620 g_hash_table_insert(qsig_oid2op_hashtable, g_strdup(oid), (gpointer)&qsig_op_tab[i]);
12625 /*--- proto_register_qsig ---------------------------------------------------*/
12626 void proto_register_qsig(void) {
12628 /* List of fields */
12629 static hf_register_info hf[] = {
12630 { &hf_qsig_operation, { "Operation", "qsig.operation",
12631 FT_UINT8, BASE_DEC, VALS(qsig_str_operation), 0x0,
12632 NULL, HFILL }},
12633 { &hf_qsig_service, { "Service", "qsig.service",
12634 FT_UINT8, BASE_DEC, VALS(qsig_str_service), 0x0,
12635 "Supplementary Service", HFILL }},
12636 { &hf_qsig_error, { "Error", "qsig.error",
12637 FT_UINT8, BASE_DEC, VALS(qsig_str_error), 0x0,
12638 NULL, HFILL }},
12639 { &hf_qsig_ie_type, { "Type", "qsig.ie.type",
12640 FT_UINT8, BASE_HEX, NULL, 0x0,
12641 "Information Element Type", HFILL }},
12642 { &hf_qsig_ie_type_cs4, { "Type", "qsig.ie.type.cs4",
12643 FT_UINT8, BASE_HEX, VALS(qsig_str_ie_type_cs4), 0x0,
12644 "Information Element Type (Codeset 4)", HFILL }},
12645 { &hf_qsig_ie_type_cs5, { "Type", "qsig.ie.type.cs5",
12646 FT_UINT8, BASE_HEX, VALS(qsig_str_ie_type_cs5), 0x0,
12647 "Information Element Type (Codeset 5)", HFILL }},
12648 { &hf_qsig_ie_len, { "Length", "qsig.ie.len",
12649 FT_UINT8, BASE_DEC, NULL, 0x0,
12650 "Information Element Length", HFILL }},
12651 { &hf_qsig_ie_data, { "Data", "qsig.ie.data",
12652 FT_BYTES, BASE_NONE, NULL, 0x0,
12653 NULL, HFILL }},
12654 { &hf_qsig_tc, { "Transit count", "qsig.tc",
12655 FT_UINT8, BASE_DEC, NULL, 0x1F,
12656 NULL, HFILL }},
12657 { &hf_qsig_pc, { "Party category", "qsig.pc",
12658 FT_UINT8, BASE_HEX, VALS(qsig_str_pc), 0x07,
12659 NULL, HFILL }},
12661 /*--- Included file: packet-qsig-hfarr.c ---*/
12662 #line 1 "../../asn1/qsig/packet-qsig-hfarr.c"
12664 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
12666 { &hf_qsig_extensionId,
12667 { "extensionId", "qsig.extensionId",
12668 FT_OID, BASE_NONE, NULL, 0,
12669 NULL, HFILL }},
12670 { &hf_qsig_extensionArgument,
12671 { "extensionArgument", "qsig.extensionArgument_element",
12672 FT_NONE, BASE_NONE, NULL, 0,
12673 NULL, HFILL }},
12674 { &hf_qsig_presentationAllowedAddressS,
12675 { "presentationAllowedAddressS", "qsig.presentationAllowedAddressS_element",
12676 FT_NONE, BASE_NONE, NULL, 0,
12677 "AddressScreened", HFILL }},
12678 { &hf_qsig_presentationRestricted,
12679 { "presentationRestricted", "qsig.presentationRestricted_element",
12680 FT_NONE, BASE_NONE, NULL, 0,
12681 NULL, HFILL }},
12682 { &hf_qsig_numberNotAvailableDueToInterworking,
12683 { "numberNotAvailableDueToInterworking", "qsig.numberNotAvailableDueToInterworking_element",
12684 FT_NONE, BASE_NONE, NULL, 0,
12685 NULL, HFILL }},
12686 { &hf_qsig_presentationRestrictedAddressS,
12687 { "presentationRestrictedAddressS", "qsig.presentationRestrictedAddressS_element",
12688 FT_NONE, BASE_NONE, NULL, 0,
12689 "AddressScreened", HFILL }},
12690 { &hf_qsig_presentationAllowedAddressU,
12691 { "presentationAllowedAddressU", "qsig.presentationAllowedAddressU_element",
12692 FT_NONE, BASE_NONE, NULL, 0,
12693 "Address", HFILL }},
12694 { &hf_qsig_presentationRestrictedAddressU,
12695 { "presentationRestrictedAddressU", "qsig.presentationRestrictedAddressU_element",
12696 FT_NONE, BASE_NONE, NULL, 0,
12697 "Address", HFILL }},
12698 { &hf_qsig_presentationAllowedAddressNS,
12699 { "presentationAllowedAddressNS", "qsig.presentationAllowedAddressNS_element",
12700 FT_NONE, BASE_NONE, NULL, 0,
12701 "NumberScreened", HFILL }},
12702 { &hf_qsig_presentationRestrictedAddressNS,
12703 { "presentationRestrictedAddressNS", "qsig.presentationRestrictedAddressNS_element",
12704 FT_NONE, BASE_NONE, NULL, 0,
12705 "NumberScreened", HFILL }},
12706 { &hf_qsig_presentationAllowedAddressNU,
12707 { "presentationAllowedAddressNU", "qsig.presentationAllowedAddressNU",
12708 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12709 "PartyNumber", HFILL }},
12710 { &hf_qsig_presentationRestrictedAddressNU,
12711 { "presentationRestrictedAddressNU", "qsig.presentationRestrictedAddressNU",
12712 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12713 "PartyNumber", HFILL }},
12714 { &hf_qsig_partyNumber,
12715 { "partyNumber", "qsig.partyNumber",
12716 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12717 NULL, HFILL }},
12718 { &hf_qsig_screeningIndicator,
12719 { "screeningIndicator", "qsig.screeningIndicator",
12720 FT_UINT32, BASE_DEC, VALS(qsig_ScreeningIndicator_vals), 0,
12721 NULL, HFILL }},
12722 { &hf_qsig_partySubaddress,
12723 { "partySubaddress", "qsig.partySubaddress",
12724 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
12725 NULL, HFILL }},
12726 { &hf_qsig_unknownPartyNumber,
12727 { "unknownPartyNumber", "qsig.unknownPartyNumber",
12728 FT_STRING, BASE_NONE, NULL, 0,
12729 "NumberDigits", HFILL }},
12730 { &hf_qsig_publicPartyNumber,
12731 { "publicPartyNumber", "qsig.publicPartyNumber_element",
12732 FT_NONE, BASE_NONE, NULL, 0,
12733 NULL, HFILL }},
12734 { &hf_qsig_dataPartyNumber,
12735 { "dataPartyNumber", "qsig.dataPartyNumber",
12736 FT_STRING, BASE_NONE, NULL, 0,
12737 "NumberDigits", HFILL }},
12738 { &hf_qsig_telexPartyNumber,
12739 { "telexPartyNumber", "qsig.telexPartyNumber",
12740 FT_STRING, BASE_NONE, NULL, 0,
12741 "NumberDigits", HFILL }},
12742 { &hf_qsig_privatePartyNumber,
12743 { "privatePartyNumber", "qsig.privatePartyNumber_element",
12744 FT_NONE, BASE_NONE, NULL, 0,
12745 NULL, HFILL }},
12746 { &hf_qsig_nationalStandardPartyNumber,
12747 { "nationalStandardPartyNumber", "qsig.nationalStandardPartyNumber",
12748 FT_STRING, BASE_NONE, NULL, 0,
12749 "NumberDigits", HFILL }},
12750 { &hf_qsig_publicTypeOfNumber,
12751 { "publicTypeOfNumber", "qsig.publicTypeOfNumber",
12752 FT_UINT32, BASE_DEC, VALS(qsig_PublicTypeOfNumber_vals), 0,
12753 NULL, HFILL }},
12754 { &hf_qsig_publicNumberDigits,
12755 { "publicNumberDigits", "qsig.publicNumberDigits",
12756 FT_STRING, BASE_NONE, NULL, 0,
12757 "NumberDigits", HFILL }},
12758 { &hf_qsig_privateTypeOfNumber,
12759 { "privateTypeOfNumber", "qsig.privateTypeOfNumber",
12760 FT_UINT32, BASE_DEC, VALS(qsig_PrivateTypeOfNumber_vals), 0,
12761 NULL, HFILL }},
12762 { &hf_qsig_privateNumberDigits,
12763 { "privateNumberDigits", "qsig.privateNumberDigits",
12764 FT_STRING, BASE_NONE, NULL, 0,
12765 "NumberDigits", HFILL }},
12766 { &hf_qsig_userSpecifiedSubaddress,
12767 { "userSpecifiedSubaddress", "qsig.userSpecifiedSubaddress_element",
12768 FT_NONE, BASE_NONE, NULL, 0,
12769 NULL, HFILL }},
12770 { &hf_qsig_nSAPSubaddress,
12771 { "nSAPSubaddress", "qsig.nSAPSubaddress",
12772 FT_BYTES, BASE_NONE, NULL, 0,
12773 NULL, HFILL }},
12774 { &hf_qsig_subaddressInformation,
12775 { "subaddressInformation", "qsig.subaddressInformation",
12776 FT_BYTES, BASE_NONE, NULL, 0,
12777 NULL, HFILL }},
12778 { &hf_qsig_oddCountIndicator,
12779 { "oddCountIndicator", "qsig.oddCountIndicator",
12780 FT_BOOLEAN, BASE_NONE, NULL, 0,
12781 "BOOLEAN", HFILL }},
12783 /* --- Module Name-Operations-asn1-97 --- --- --- */
12785 { &hf_qsig_na_qsig_na_NameArg_PDU,
12786 { "NameArg", "qsig.na.NameArg",
12787 FT_UINT32, BASE_DEC, VALS(qsig_na_NameArg_vals), 0,
12788 NULL, HFILL }},
12789 { &hf_qsig_na_name,
12790 { "name", "qsig.na.name",
12791 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
12792 NULL, HFILL }},
12793 { &hf_qsig_na_nameSequence,
12794 { "nameSequence", "qsig.na.nameSequence_element",
12795 FT_NONE, BASE_NONE, NULL, 0,
12796 NULL, HFILL }},
12797 { &hf_qsig_na_extensionNA,
12798 { "extension", "qsig.na.extension",
12799 FT_UINT32, BASE_DEC, VALS(qsig_na_NameExtension_vals), 0,
12800 "NameExtension", HFILL }},
12801 { &hf_qsig_na_single,
12802 { "single", "qsig.na.single_element",
12803 FT_NONE, BASE_NONE, NULL, 0,
12804 "Extension", HFILL }},
12805 { &hf_qsig_na_multiple,
12806 { "multiple", "qsig.na.multiple",
12807 FT_UINT32, BASE_DEC, NULL, 0,
12808 "SEQUENCE_OF_Extension", HFILL }},
12809 { &hf_qsig_na_multiple_item,
12810 { "Extension", "qsig.na.Extension_element",
12811 FT_NONE, BASE_NONE, NULL, 0,
12812 NULL, HFILL }},
12813 { &hf_qsig_na_namePresentationAllowed,
12814 { "namePresentationAllowed", "qsig.na.namePresentationAllowed",
12815 FT_UINT32, BASE_DEC, VALS(qsig_na_NamePresentationAllowed_vals), 0,
12816 NULL, HFILL }},
12817 { &hf_qsig_na_namePresentationRestricted,
12818 { "namePresentationRestricted", "qsig.na.namePresentationRestricted",
12819 FT_UINT32, BASE_DEC, VALS(qsig_na_NamePresentationRestricted_vals), 0,
12820 NULL, HFILL }},
12821 { &hf_qsig_na_nameNotAvailable,
12822 { "nameNotAvailable", "qsig.na.nameNotAvailable_element",
12823 FT_NONE, BASE_NONE, NULL, 0,
12824 NULL, HFILL }},
12825 { &hf_qsig_na_namePresentationAllowedSimple,
12826 { "namePresentationAllowedSimple", "qsig.na.namePresentationAllowedSimple",
12827 FT_STRING, BASE_NONE, NULL, 0,
12828 "NameData", HFILL }},
12829 { &hf_qsig_na_namePresentationAllowedExtended,
12830 { "namePresentationAllowedExtended", "qsig.na.namePresentationAllowedExtended_element",
12831 FT_NONE, BASE_NONE, NULL, 0,
12832 "NameSet", HFILL }},
12833 { &hf_qsig_na_namePresentationRestrictedSimple,
12834 { "namePresentationRestrictedSimple", "qsig.na.namePresentationRestrictedSimple",
12835 FT_STRING, BASE_NONE, NULL, 0,
12836 "NameData", HFILL }},
12837 { &hf_qsig_na_namePresentationRestrictedExtended,
12838 { "namePresentationRestrictedExtended", "qsig.na.namePresentationRestrictedExtended_element",
12839 FT_NONE, BASE_NONE, NULL, 0,
12840 "NameSet", HFILL }},
12841 { &hf_qsig_na_namePresentationRestrictedNull,
12842 { "namePresentationRestrictedNull", "qsig.na.namePresentationRestrictedNull_element",
12843 FT_NONE, BASE_NONE, NULL, 0,
12844 NULL, HFILL }},
12845 { &hf_qsig_na_nameData,
12846 { "nameData", "qsig.na.nameData",
12847 FT_STRING, BASE_NONE, NULL, 0,
12848 NULL, HFILL }},
12849 { &hf_qsig_na_characterSet,
12850 { "characterSet", "qsig.na.characterSet",
12851 FT_UINT32, BASE_DEC, VALS(qsig_na_CharacterSet_vals), 0,
12852 NULL, HFILL }},
12854 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
12856 { &hf_qsig_cf_qsig_cf_ARG_activateDiversionQ_PDU,
12857 { "ARG-activateDiversionQ", "qsig.cf.ARG_activateDiversionQ_element",
12858 FT_NONE, BASE_NONE, NULL, 0,
12859 NULL, HFILL }},
12860 { &hf_qsig_cf_qsig_cf_RES_activateDiversionQ_PDU,
12861 { "RES-activateDiversionQ", "qsig.cf.RES_activateDiversionQ",
12862 FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_activateDiversionQ_vals), 0,
12863 NULL, HFILL }},
12864 { &hf_qsig_cf_qsig_cf_ARG_deactivateDiversionQ_PDU,
12865 { "ARG-deactivateDiversionQ", "qsig.cf.ARG_deactivateDiversionQ_element",
12866 FT_NONE, BASE_NONE, NULL, 0,
12867 NULL, HFILL }},
12868 { &hf_qsig_cf_qsig_cf_RES_deactivateDiversionQ_PDU,
12869 { "RES-deactivateDiversionQ", "qsig.cf.RES_deactivateDiversionQ",
12870 FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_deactivateDiversionQ_vals), 0,
12871 NULL, HFILL }},
12872 { &hf_qsig_cf_qsig_cf_ARG_interrogateDiversionQ_PDU,
12873 { "ARG-interrogateDiversionQ", "qsig.cf.ARG_interrogateDiversionQ_element",
12874 FT_NONE, BASE_NONE, NULL, 0,
12875 NULL, HFILL }},
12876 { &hf_qsig_cf_qsig_cf_IntResultList_PDU,
12877 { "IntResultList", "qsig.cf.IntResultList",
12878 FT_UINT32, BASE_DEC, NULL, 0,
12879 NULL, HFILL }},
12880 { &hf_qsig_cf_qsig_cf_ARG_checkRestriction_PDU,
12881 { "ARG-checkRestriction", "qsig.cf.ARG_checkRestriction_element",
12882 FT_NONE, BASE_NONE, NULL, 0,
12883 NULL, HFILL }},
12884 { &hf_qsig_cf_qsig_cf_RES_checkRestriction_PDU,
12885 { "RES-checkRestriction", "qsig.cf.RES_checkRestriction",
12886 FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_checkRestriction_vals), 0,
12887 NULL, HFILL }},
12888 { &hf_qsig_cf_qsig_cf_ARG_callRerouteing_PDU,
12889 { "ARG-callRerouteing", "qsig.cf.ARG_callRerouteing_element",
12890 FT_NONE, BASE_NONE, NULL, 0,
12891 NULL, HFILL }},
12892 { &hf_qsig_cf_qsig_cf_RES_callRerouteing_PDU,
12893 { "RES-callRerouteing", "qsig.cf.RES_callRerouteing",
12894 FT_UINT32, BASE_DEC, VALS(qsig_cf_RES_callRerouteing_vals), 0,
12895 NULL, HFILL }},
12896 { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation1_PDU,
12897 { "ARG-divertingLegInformation1", "qsig.cf.ARG_divertingLegInformation1_element",
12898 FT_NONE, BASE_NONE, NULL, 0,
12899 NULL, HFILL }},
12900 { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation2_PDU,
12901 { "ARG-divertingLegInformation2", "qsig.cf.ARG_divertingLegInformation2_element",
12902 FT_NONE, BASE_NONE, NULL, 0,
12903 NULL, HFILL }},
12904 { &hf_qsig_cf_qsig_cf_ARG_divertingLegInformation3_PDU,
12905 { "ARG-divertingLegInformation3", "qsig.cf.ARG_divertingLegInformation3_element",
12906 FT_NONE, BASE_NONE, NULL, 0,
12907 NULL, HFILL }},
12908 { &hf_qsig_cf_qsig_cf_ARG_cfnrDivertedLegFailed_PDU,
12909 { "ARG-cfnrDivertedLegFailed", "qsig.cf.ARG_cfnrDivertedLegFailed",
12910 FT_UINT32, BASE_DEC, VALS(qsig_cf_ARG_cfnrDivertedLegFailed_vals), 0,
12911 NULL, HFILL }},
12912 { &hf_qsig_cf_qsig_cf_Extension_PDU,
12913 { "Extension", "qsig.cf.Extension_element",
12914 FT_NONE, BASE_NONE, NULL, 0,
12915 NULL, HFILL }},
12916 { &hf_qsig_cf_procedure,
12917 { "procedure", "qsig.cf.procedure",
12918 FT_UINT32, BASE_DEC, VALS(qsig_cf_Procedure_vals), 0,
12919 NULL, HFILL }},
12920 { &hf_qsig_cf_basicService,
12921 { "basicService", "qsig.cf.basicService",
12922 FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
12923 NULL, HFILL }},
12924 { &hf_qsig_cf_divertedToAddress,
12925 { "divertedToAddress", "qsig.cf.divertedToAddress_element",
12926 FT_NONE, BASE_NONE, NULL, 0,
12927 "Address", HFILL }},
12928 { &hf_qsig_cf_servedUserNr,
12929 { "servedUserNr", "qsig.cf.servedUserNr",
12930 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12931 "PartyNumber", HFILL }},
12932 { &hf_qsig_cf_activatingUserNr,
12933 { "activatingUserNr", "qsig.cf.activatingUserNr",
12934 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12935 "PartyNumber", HFILL }},
12936 { &hf_qsig_cf_extensionAD,
12937 { "extension", "qsig.cf.extension",
12938 FT_UINT32, BASE_DEC, VALS(qsig_cf_ADExtension_vals), 0,
12939 "ADExtension", HFILL }},
12940 { &hf_qsig_cf_single,
12941 { "single", "qsig.cf.single_element",
12942 FT_NONE, BASE_NONE, NULL, 0,
12943 "Extension", HFILL }},
12944 { &hf_qsig_cf_multiple,
12945 { "multiple", "qsig.cf.multiple",
12946 FT_UINT32, BASE_DEC, NULL, 0,
12947 "SEQUENCE_OF_Extension", HFILL }},
12948 { &hf_qsig_cf_multiple_item,
12949 { "Extension", "qsig.cf.Extension_element",
12950 FT_NONE, BASE_NONE, NULL, 0,
12951 NULL, HFILL }},
12952 { &hf_qsig_cf_null,
12953 { "null", "qsig.cf.null_element",
12954 FT_NONE, BASE_NONE, NULL, 0,
12955 NULL, HFILL }},
12956 { &hf_qsig_cf_deactivatingUserNr,
12957 { "deactivatingUserNr", "qsig.cf.deactivatingUserNr",
12958 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12959 "PartyNumber", HFILL }},
12960 { &hf_qsig_cf_extensionDD,
12961 { "extension", "qsig.cf.extension",
12962 FT_UINT32, BASE_DEC, VALS(qsig_cf_DDExtension_vals), 0,
12963 "DDExtension", HFILL }},
12964 { &hf_qsig_cf_interrogatingUserNr,
12965 { "interrogatingUserNr", "qsig.cf.interrogatingUserNr",
12966 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12967 "PartyNumber", HFILL }},
12968 { &hf_qsig_cf_extensionID,
12969 { "extension", "qsig.cf.extension",
12970 FT_UINT32, BASE_DEC, VALS(qsig_cf_IDExtension_vals), 0,
12971 "IDExtension", HFILL }},
12972 { &hf_qsig_cf_divertedToNr,
12973 { "divertedToNr", "qsig.cf.divertedToNr",
12974 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
12975 "PartyNumber", HFILL }},
12976 { &hf_qsig_cf_extensionCHR,
12977 { "extension", "qsig.cf.extension",
12978 FT_UINT32, BASE_DEC, VALS(qsig_cf_CHRExtension_vals), 0,
12979 "CHRExtension", HFILL }},
12980 { &hf_qsig_cf_rerouteingReason,
12981 { "rerouteingReason", "qsig.cf.rerouteingReason",
12982 FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
12983 "DiversionReason", HFILL }},
12984 { &hf_qsig_cf_originalRerouteingReason,
12985 { "originalRerouteingReason", "qsig.cf.originalRerouteingReason",
12986 FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
12987 "DiversionReason", HFILL }},
12988 { &hf_qsig_cf_calledAddress,
12989 { "calledAddress", "qsig.cf.calledAddress_element",
12990 FT_NONE, BASE_NONE, NULL, 0,
12991 "Address", HFILL }},
12992 { &hf_qsig_cf_diversionCounter,
12993 { "diversionCounter", "qsig.cf.diversionCounter",
12994 FT_UINT32, BASE_DEC, NULL, 0,
12995 "INTEGER_1_15", HFILL }},
12996 { &hf_qsig_cf_pSS1InfoElement,
12997 { "pSS1InfoElement", "qsig.cf.pSS1InfoElement",
12998 FT_BYTES, BASE_NONE, NULL, 0,
12999 "PSS1InformationElement", HFILL }},
13000 { &hf_qsig_cf_lastRerouteingNr,
13001 { "lastRerouteingNr", "qsig.cf.lastRerouteingNr",
13002 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13003 "PresentedNumberUnscreened", HFILL }},
13004 { &hf_qsig_cf_subscriptionOption,
13005 { "subscriptionOption", "qsig.cf.subscriptionOption",
13006 FT_UINT32, BASE_DEC, VALS(qsig_cf_SubscriptionOption_vals), 0,
13007 NULL, HFILL }},
13008 { &hf_qsig_cf_callingPartySubaddress,
13009 { "callingPartySubaddress", "qsig.cf.callingPartySubaddress",
13010 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13011 "PartySubaddress", HFILL }},
13012 { &hf_qsig_cf_callingNumber,
13013 { "callingNumber", "qsig.cf.callingNumber",
13014 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13015 "PresentedNumberScreened", HFILL }},
13016 { &hf_qsig_cf_callingName,
13017 { "callingName", "qsig.cf.callingName",
13018 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13019 "Name", HFILL }},
13020 { &hf_qsig_cf_originalCalledNr,
13021 { "originalCalledNr", "qsig.cf.originalCalledNr",
13022 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13023 "PresentedNumberUnscreened", HFILL }},
13024 { &hf_qsig_cf_redirectingName,
13025 { "redirectingName", "qsig.cf.redirectingName",
13026 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13027 "Name", HFILL }},
13028 { &hf_qsig_cf_originalCalledName,
13029 { "originalCalledName", "qsig.cf.originalCalledName",
13030 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13031 "Name", HFILL }},
13032 { &hf_qsig_cf_extensionCRR,
13033 { "extension", "qsig.cf.extension",
13034 FT_UINT32, BASE_DEC, VALS(qsig_cf_CRRExtension_vals), 0,
13035 "CRRExtension", HFILL }},
13036 { &hf_qsig_cf_diversionReason,
13037 { "diversionReason", "qsig.cf.diversionReason",
13038 FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
13039 NULL, HFILL }},
13040 { &hf_qsig_cf_nominatedNr,
13041 { "nominatedNr", "qsig.cf.nominatedNr",
13042 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13043 "PartyNumber", HFILL }},
13044 { &hf_qsig_cf_extensionDLI1,
13045 { "extension", "qsig.cf.extension",
13046 FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI1Extension_vals), 0,
13047 "DLI1Extension", HFILL }},
13048 { &hf_qsig_cf_originalDiversionReason,
13049 { "originalDiversionReason", "qsig.cf.originalDiversionReason",
13050 FT_UINT32, BASE_DEC, VALS(qsig_cf_DiversionReason_vals), 0,
13051 "DiversionReason", HFILL }},
13052 { &hf_qsig_cf_divertingNr,
13053 { "divertingNr", "qsig.cf.divertingNr",
13054 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13055 "PresentedNumberUnscreened", HFILL }},
13056 { &hf_qsig_cf_extensionDLI2,
13057 { "extension", "qsig.cf.extension",
13058 FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI2Extension_vals), 0,
13059 "DLI2Extension", HFILL }},
13060 { &hf_qsig_cf_presentationAllowedIndicator,
13061 { "presentationAllowedIndicator", "qsig.cf.presentationAllowedIndicator",
13062 FT_BOOLEAN, BASE_NONE, NULL, 0,
13063 NULL, HFILL }},
13064 { &hf_qsig_cf_redirectionName,
13065 { "redirectionName", "qsig.cf.redirectionName",
13066 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13067 "Name", HFILL }},
13068 { &hf_qsig_cf_extensionDLI3,
13069 { "extension", "qsig.cf.extension",
13070 FT_UINT32, BASE_DEC, VALS(qsig_cf_DLI3Extension_vals), 0,
13071 "DLI3Extension", HFILL }},
13072 { &hf_qsig_cf_IntResultList_item,
13073 { "IntResult", "qsig.cf.IntResult_element",
13074 FT_NONE, BASE_NONE, NULL, 0,
13075 NULL, HFILL }},
13076 { &hf_qsig_cf_remoteEnabled,
13077 { "remoteEnabled", "qsig.cf.remoteEnabled",
13078 FT_BOOLEAN, BASE_NONE, NULL, 0,
13079 "BOOLEAN", HFILL }},
13080 { &hf_qsig_cf_extensionIR,
13081 { "extension", "qsig.cf.extension",
13082 FT_UINT32, BASE_DEC, VALS(qsig_cf_IRExtension_vals), 0,
13083 "IRExtension", HFILL }},
13085 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
13087 { &hf_qsig_pr_qsig_pr_DummyArg_PDU,
13088 { "DummyArg", "qsig.pr.DummyArg",
13089 FT_UINT32, BASE_DEC, VALS(qsig_pr_DummyArg_vals), 0,
13090 NULL, HFILL }},
13091 { &hf_qsig_pr_qsig_pr_PRProposeArg_PDU,
13092 { "PRProposeArg", "qsig.pr.PRProposeArg_element",
13093 FT_NONE, BASE_NONE, NULL, 0,
13094 NULL, HFILL }},
13095 { &hf_qsig_pr_qsig_pr_PRSetupArg_PDU,
13096 { "PRSetupArg", "qsig.pr.PRSetupArg_element",
13097 FT_NONE, BASE_NONE, NULL, 0,
13098 NULL, HFILL }},
13099 { &hf_qsig_pr_qsig_pr_DummyResult_PDU,
13100 { "DummyResult", "qsig.pr.DummyResult",
13101 FT_UINT32, BASE_DEC, VALS(qsig_pr_DummyResult_vals), 0,
13102 NULL, HFILL }},
13103 { &hf_qsig_pr_qsig_pr_PRRetainArg_PDU,
13104 { "PRRetainArg", "qsig.pr.PRRetainArg_element",
13105 FT_NONE, BASE_NONE, NULL, 0,
13106 NULL, HFILL }},
13107 { &hf_qsig_pr_qsig_pr_Extension_PDU,
13108 { "Extension", "qsig.pr.Extension_element",
13109 FT_NONE, BASE_NONE, NULL, 0,
13110 NULL, HFILL }},
13111 { &hf_qsig_pr_callIdentity,
13112 { "callIdentity", "qsig.pr.callIdentity",
13113 FT_STRING, BASE_NONE, NULL, 0,
13114 NULL, HFILL }},
13115 { &hf_qsig_pr_rerouteingNumber,
13116 { "rerouteingNumber", "qsig.pr.rerouteingNumber",
13117 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13118 "PartyNumber", HFILL }},
13119 { &hf_qsig_pr_extensionPRP,
13120 { "extension", "qsig.pr.extension",
13121 FT_UINT32, BASE_DEC, VALS(qsig_pr_PRPExtension_vals), 0,
13122 "PRPExtension", HFILL }},
13123 { &hf_qsig_pr_single,
13124 { "single", "qsig.pr.single_element",
13125 FT_NONE, BASE_NONE, NULL, 0,
13126 "Extension", HFILL }},
13127 { &hf_qsig_pr_multiple,
13128 { "multiple", "qsig.pr.multiple",
13129 FT_UINT32, BASE_DEC, NULL, 0,
13130 "SEQUENCE_OF_Extension", HFILL }},
13131 { &hf_qsig_pr_multiple_item,
13132 { "Extension", "qsig.pr.Extension_element",
13133 FT_NONE, BASE_NONE, NULL, 0,
13134 NULL, HFILL }},
13135 { &hf_qsig_pr_extensionPRS,
13136 { "extension", "qsig.pr.extension",
13137 FT_UINT32, BASE_DEC, VALS(qsig_pr_PRSExtension_vals), 0,
13138 "PRSExtension", HFILL }},
13139 { &hf_qsig_pr_extensionPRR,
13140 { "extension", "qsig.pr.extension",
13141 FT_UINT32, BASE_DEC, VALS(qsig_pr_PRRExtension_vals), 0,
13142 "PRRExtension", HFILL }},
13143 { &hf_qsig_pr_null,
13144 { "null", "qsig.pr.null_element",
13145 FT_NONE, BASE_NONE, NULL, 0,
13146 NULL, HFILL }},
13148 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
13150 { &hf_qsig_ct_qsig_ct_DummyArg_PDU,
13151 { "DummyArg", "qsig.ct.DummyArg",
13152 FT_UINT32, BASE_DEC, VALS(qsig_ct_DummyArg_vals), 0,
13153 NULL, HFILL }},
13154 { &hf_qsig_ct_qsig_ct_CTIdentifyRes_PDU,
13155 { "CTIdentifyRes", "qsig.ct.CTIdentifyRes_element",
13156 FT_NONE, BASE_NONE, NULL, 0,
13157 NULL, HFILL }},
13158 { &hf_qsig_ct_qsig_ct_CTInitiateArg_PDU,
13159 { "CTInitiateArg", "qsig.ct.CTInitiateArg_element",
13160 FT_NONE, BASE_NONE, NULL, 0,
13161 NULL, HFILL }},
13162 { &hf_qsig_ct_qsig_ct_DummyRes_PDU,
13163 { "DummyRes", "qsig.ct.DummyRes",
13164 FT_UINT32, BASE_DEC, VALS(qsig_ct_DummyRes_vals), 0,
13165 NULL, HFILL }},
13166 { &hf_qsig_ct_qsig_ct_CTSetupArg_PDU,
13167 { "CTSetupArg", "qsig.ct.CTSetupArg_element",
13168 FT_NONE, BASE_NONE, NULL, 0,
13169 NULL, HFILL }},
13170 { &hf_qsig_ct_qsig_ct_CTActiveArg_PDU,
13171 { "CTActiveArg", "qsig.ct.CTActiveArg_element",
13172 FT_NONE, BASE_NONE, NULL, 0,
13173 NULL, HFILL }},
13174 { &hf_qsig_ct_qsig_ct_CTCompleteArg_PDU,
13175 { "CTCompleteArg", "qsig.ct.CTCompleteArg_element",
13176 FT_NONE, BASE_NONE, NULL, 0,
13177 NULL, HFILL }},
13178 { &hf_qsig_ct_qsig_ct_CTUpdateArg_PDU,
13179 { "CTUpdateArg", "qsig.ct.CTUpdateArg_element",
13180 FT_NONE, BASE_NONE, NULL, 0,
13181 NULL, HFILL }},
13182 { &hf_qsig_ct_qsig_ct_SubaddressTransferArg_PDU,
13183 { "SubaddressTransferArg", "qsig.ct.SubaddressTransferArg_element",
13184 FT_NONE, BASE_NONE, NULL, 0,
13185 NULL, HFILL }},
13186 { &hf_qsig_ct_qsig_ct_Extension_PDU,
13187 { "Extension", "qsig.ct.Extension_element",
13188 FT_NONE, BASE_NONE, NULL, 0,
13189 NULL, HFILL }},
13190 { &hf_qsig_ct_null,
13191 { "null", "qsig.ct.null_element",
13192 FT_NONE, BASE_NONE, NULL, 0,
13193 NULL, HFILL }},
13194 { &hf_qsig_ct_single,
13195 { "single", "qsig.ct.single_element",
13196 FT_NONE, BASE_NONE, NULL, 0,
13197 "Extension", HFILL }},
13198 { &hf_qsig_ct_multiple,
13199 { "multiple", "qsig.ct.multiple",
13200 FT_UINT32, BASE_DEC, NULL, 0,
13201 "SEQUENCE_OF_Extension", HFILL }},
13202 { &hf_qsig_ct_multiple_item,
13203 { "Extension", "qsig.ct.Extension_element",
13204 FT_NONE, BASE_NONE, NULL, 0,
13205 NULL, HFILL }},
13206 { &hf_qsig_ct_callIdentity,
13207 { "callIdentity", "qsig.ct.callIdentity",
13208 FT_STRING, BASE_NONE, NULL, 0,
13209 NULL, HFILL }},
13210 { &hf_qsig_ct_rerouteingNumber,
13211 { "rerouteingNumber", "qsig.ct.rerouteingNumber",
13212 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13213 "PartyNumber", HFILL }},
13214 { &hf_qsig_ct_resultExtension,
13215 { "resultExtension", "qsig.ct.resultExtension",
13216 FT_UINT32, BASE_DEC, VALS(qsig_ct_T_resultExtension_vals), 0,
13217 NULL, HFILL }},
13218 { &hf_qsig_ct_argumentExtensionCTI,
13219 { "argumentExtension", "qsig.ct.argumentExtension",
13220 FT_UINT32, BASE_DEC, VALS(qsig_ct_CTIargumentExtension_vals), 0,
13221 "CTIargumentExtension", HFILL }},
13222 { &hf_qsig_ct_argumentExtensionCTS,
13223 { "argumentExtension", "qsig.ct.argumentExtension",
13224 FT_UINT32, BASE_DEC, VALS(qsig_ct_CTSargumentExtension_vals), 0,
13225 "CTSargumentExtension", HFILL }},
13226 { &hf_qsig_ct_connectedAddress,
13227 { "connectedAddress", "qsig.ct.connectedAddress",
13228 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
13229 "PresentedAddressScreened", HFILL }},
13230 { &hf_qsig_ct_basicCallInfoElements,
13231 { "basicCallInfoElements", "qsig.ct.basicCallInfoElements",
13232 FT_BYTES, BASE_NONE, NULL, 0,
13233 "PSS1InformationElement", HFILL }},
13234 { &hf_qsig_ct_connectedName,
13235 { "connectedName", "qsig.ct.connectedName",
13236 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13237 "Name", HFILL }},
13238 { &hf_qsig_ct_argumentExtensionCTA,
13239 { "argumentExtension", "qsig.ct.argumentExtension",
13240 FT_UINT32, BASE_DEC, VALS(qsig_ct_CTAargumentExtension_vals), 0,
13241 "CTAargumentExtension", HFILL }},
13242 { &hf_qsig_ct_endDesignation,
13243 { "endDesignation", "qsig.ct.endDesignation",
13244 FT_UINT32, BASE_DEC, VALS(qsig_ct_EndDesignation_vals), 0,
13245 NULL, HFILL }},
13246 { &hf_qsig_ct_redirectionNumber,
13247 { "redirectionNumber", "qsig.ct.redirectionNumber",
13248 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13249 "PresentedNumberScreened", HFILL }},
13250 { &hf_qsig_ct_redirectionName,
13251 { "redirectionName", "qsig.ct.redirectionName",
13252 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13253 "Name", HFILL }},
13254 { &hf_qsig_ct_callStatus,
13255 { "callStatus", "qsig.ct.callStatus",
13256 FT_UINT32, BASE_DEC, VALS(qsig_ct_CallStatus_vals), 0,
13257 NULL, HFILL }},
13258 { &hf_qsig_ct_argumentExtensionCTC,
13259 { "argumentExtension", "qsig.ct.argumentExtension",
13260 FT_UINT32, BASE_DEC, VALS(qsig_ct_CTCargumentExtension_vals), 0,
13261 "CTCargumentExtension", HFILL }},
13262 { &hf_qsig_ct_argumentExtensionCTU,
13263 { "argumentExtension", "qsig.ct.argumentExtension",
13264 FT_UINT32, BASE_DEC, VALS(qsig_ct_CTUargumentExtension_vals), 0,
13265 "CTUargumentExtension", HFILL }},
13266 { &hf_qsig_ct_redirectionSubaddress,
13267 { "redirectionSubaddress", "qsig.ct.redirectionSubaddress",
13268 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13269 "PartySubaddress", HFILL }},
13270 { &hf_qsig_ct_argumentExtensionST,
13271 { "argumentExtension", "qsig.ct.argumentExtension",
13272 FT_UINT32, BASE_DEC, VALS(qsig_ct_STargumentExtension_vals), 0,
13273 "STargumentExtension", HFILL }},
13275 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
13277 { &hf_qsig_cc_qsig_cc_CcRequestArg_PDU,
13278 { "CcRequestArg", "qsig.cc.CcRequestArg_element",
13279 FT_NONE, BASE_NONE, NULL, 0,
13280 NULL, HFILL }},
13281 { &hf_qsig_cc_qsig_cc_CcRequestRes_PDU,
13282 { "CcRequestRes", "qsig.cc.CcRequestRes_element",
13283 FT_NONE, BASE_NONE, NULL, 0,
13284 NULL, HFILL }},
13285 { &hf_qsig_cc_qsig_cc_CcOptionalArg_PDU,
13286 { "CcOptionalArg", "qsig.cc.CcOptionalArg",
13287 FT_UINT32, BASE_DEC, VALS(qsig_cc_CcOptionalArg_vals), 0,
13288 NULL, HFILL }},
13289 { &hf_qsig_cc_qsig_cc_CcExtension_PDU,
13290 { "CcExtension", "qsig.cc.CcExtension",
13291 FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13292 NULL, HFILL }},
13293 { &hf_qsig_cc_qsig_cc_Extension_PDU,
13294 { "Extension", "qsig.cc.Extension_element",
13295 FT_NONE, BASE_NONE, NULL, 0,
13296 NULL, HFILL }},
13297 { &hf_qsig_cc_numberA,
13298 { "numberA", "qsig.cc.numberA",
13299 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
13300 "PresentedNumberUnscreened", HFILL }},
13301 { &hf_qsig_cc_numberB,
13302 { "numberB", "qsig.cc.numberB",
13303 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13304 "PartyNumber", HFILL }},
13305 { &hf_qsig_cc_service,
13306 { "service", "qsig.cc.service",
13307 FT_BYTES, BASE_NONE, NULL, 0,
13308 "PSS1InformationElement", HFILL }},
13309 { &hf_qsig_cc_subaddrA,
13310 { "subaddrA", "qsig.cc.subaddrA",
13311 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13312 "PartySubaddress", HFILL }},
13313 { &hf_qsig_cc_subaddrB,
13314 { "subaddrB", "qsig.cc.subaddrB",
13315 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13316 "PartySubaddress", HFILL }},
13317 { &hf_qsig_cc_can_retain_service,
13318 { "can-retain-service", "qsig.cc.can_retain_service",
13319 FT_BOOLEAN, BASE_NONE, NULL, 0,
13320 "BOOLEAN", HFILL }},
13321 { &hf_qsig_cc_retain_sig_connection,
13322 { "retain-sig-connection", "qsig.cc.retain_sig_connection",
13323 FT_BOOLEAN, BASE_NONE, NULL, 0,
13324 "BOOLEAN", HFILL }},
13325 { &hf_qsig_cc_extension,
13326 { "extension", "qsig.cc.extension",
13327 FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13328 "CcExtension", HFILL }},
13329 { &hf_qsig_cc_no_path_reservation,
13330 { "no-path-reservation", "qsig.cc.no_path_reservation",
13331 FT_BOOLEAN, BASE_NONE, NULL, 0,
13332 "BOOLEAN", HFILL }},
13333 { &hf_qsig_cc_retain_service,
13334 { "retain-service", "qsig.cc.retain_service",
13335 FT_BOOLEAN, BASE_NONE, NULL, 0,
13336 "BOOLEAN", HFILL }},
13337 { &hf_qsig_cc_fullArg,
13338 { "fullArg", "qsig.cc.fullArg_element",
13339 FT_NONE, BASE_NONE, NULL, 0,
13340 NULL, HFILL }},
13341 { &hf_qsig_cc_numberA_01,
13342 { "numberA", "qsig.cc.numberA",
13343 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13344 "PartyNumber", HFILL }},
13345 { &hf_qsig_cc_extArg,
13346 { "extArg", "qsig.cc.extArg",
13347 FT_UINT32, BASE_DEC, VALS(qsig_cc_CcExtension_vals), 0,
13348 "CcExtension", HFILL }},
13349 { &hf_qsig_cc_none,
13350 { "none", "qsig.cc.none_element",
13351 FT_NONE, BASE_NONE, NULL, 0,
13352 NULL, HFILL }},
13353 { &hf_qsig_cc_single,
13354 { "single", "qsig.cc.single_element",
13355 FT_NONE, BASE_NONE, NULL, 0,
13356 "Extension", HFILL }},
13357 { &hf_qsig_cc_multiple,
13358 { "multiple", "qsig.cc.multiple",
13359 FT_UINT32, BASE_DEC, NULL, 0,
13360 "SEQUENCE_OF_Extension", HFILL }},
13361 { &hf_qsig_cc_multiple_item,
13362 { "Extension", "qsig.cc.Extension_element",
13363 FT_NONE, BASE_NONE, NULL, 0,
13364 NULL, HFILL }},
13366 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
13368 { &hf_qsig_co_qsig_co_PathRetainArg_PDU,
13369 { "PathRetainArg", "qsig.co.PathRetainArg",
13370 FT_UINT32, BASE_DEC, VALS(qsig_co_PathRetainArg_vals), 0,
13371 NULL, HFILL }},
13372 { &hf_qsig_co_qsig_co_ServiceAvailableArg_PDU,
13373 { "ServiceAvailableArg", "qsig.co.ServiceAvailableArg",
13374 FT_UINT32, BASE_DEC, VALS(qsig_co_ServiceAvailableArg_vals), 0,
13375 NULL, HFILL }},
13376 { &hf_qsig_co_qsig_co_DummyArg_PDU,
13377 { "DummyArg", "qsig.co.DummyArg",
13378 FT_UINT32, BASE_DEC, VALS(qsig_co_DummyArg_vals), 0,
13379 NULL, HFILL }},
13380 { &hf_qsig_co_qsig_co_DummyRes_PDU,
13381 { "DummyRes", "qsig.co.DummyRes",
13382 FT_UINT32, BASE_DEC, VALS(qsig_co_DummyRes_vals), 0,
13383 NULL, HFILL }},
13384 { &hf_qsig_co_qsig_co_Extension_PDU,
13385 { "Extension", "qsig.co.Extension_element",
13386 FT_NONE, BASE_NONE, NULL, 0,
13387 NULL, HFILL }},
13388 { &hf_qsig_co_serviceList,
13389 { "serviceList", "qsig.co.serviceList",
13390 FT_BYTES, BASE_NONE, NULL, 0,
13391 NULL, HFILL }},
13392 { &hf_qsig_co_extendedServiceList,
13393 { "extendedServiceList", "qsig.co.extendedServiceList_element",
13394 FT_NONE, BASE_NONE, NULL, 0,
13395 NULL, HFILL }},
13396 { &hf_qsig_co_extension,
13397 { "extension", "qsig.co.extension_element",
13398 FT_NONE, BASE_NONE, NULL, 0,
13399 NULL, HFILL }},
13400 { &hf_qsig_co_extendedServiceList_01,
13401 { "extendedServiceList", "qsig.co.extendedServiceList_element",
13402 FT_NONE, BASE_NONE, NULL, 0,
13403 "T_extendedServiceList_01", HFILL }},
13404 { &hf_qsig_co_null,
13405 { "null", "qsig.co.null_element",
13406 FT_NONE, BASE_NONE, NULL, 0,
13407 NULL, HFILL }},
13408 { &hf_qsig_co_sequenceOfExtn,
13409 { "sequenceOfExtn", "qsig.co.sequenceOfExtn",
13410 FT_UINT32, BASE_DEC, NULL, 0,
13411 "SEQUENCE_OF_Extension", HFILL }},
13412 { &hf_qsig_co_sequenceOfExtn_item,
13413 { "Extension", "qsig.co.Extension_element",
13414 FT_NONE, BASE_NONE, NULL, 0,
13415 NULL, HFILL }},
13416 { &hf_qsig_co_ServiceList_callOffer,
13417 { "callOffer", "qsig.co.callOffer",
13418 FT_BOOLEAN, 8, NULL, 0x80,
13419 NULL, HFILL }},
13421 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
13423 { &hf_qsig_dnd_qsig_dnd_DNDActivateArg_PDU,
13424 { "DNDActivateArg", "qsig.dnd.DNDActivateArg_element",
13425 FT_NONE, BASE_NONE, NULL, 0,
13426 NULL, HFILL }},
13427 { &hf_qsig_dnd_qsig_dnd_DNDActivateRes_PDU,
13428 { "DNDActivateRes", "qsig.dnd.DNDActivateRes_element",
13429 FT_NONE, BASE_NONE, NULL, 0,
13430 NULL, HFILL }},
13431 { &hf_qsig_dnd_qsig_dnd_DNDDeactivateArg_PDU,
13432 { "DNDDeactivateArg", "qsig.dnd.DNDDeactivateArg_element",
13433 FT_NONE, BASE_NONE, NULL, 0,
13434 NULL, HFILL }},
13435 { &hf_qsig_dnd_qsig_dnd_DummyRes_PDU,
13436 { "DummyRes", "qsig.dnd.DummyRes",
13437 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DummyRes_vals), 0,
13438 NULL, HFILL }},
13439 { &hf_qsig_dnd_qsig_dnd_DNDInterrogateArg_PDU,
13440 { "DNDInterrogateArg", "qsig.dnd.DNDInterrogateArg_element",
13441 FT_NONE, BASE_NONE, NULL, 0,
13442 NULL, HFILL }},
13443 { &hf_qsig_dnd_qsig_dnd_DNDInterrogateRes_PDU,
13444 { "DNDInterrogateRes", "qsig.dnd.DNDInterrogateRes_element",
13445 FT_NONE, BASE_NONE, NULL, 0,
13446 NULL, HFILL }},
13447 { &hf_qsig_dnd_qsig_dnd_DNDOverrideArg_PDU,
13448 { "DNDOverrideArg", "qsig.dnd.DNDOverrideArg_element",
13449 FT_NONE, BASE_NONE, NULL, 0,
13450 NULL, HFILL }},
13451 { &hf_qsig_dnd_qsig_dnd_PathRetainArg_PDU,
13452 { "PathRetainArg", "qsig.dnd.PathRetainArg",
13453 FT_UINT32, BASE_DEC, VALS(qsig_dnd_PathRetainArg_vals), 0,
13454 NULL, HFILL }},
13455 { &hf_qsig_dnd_qsig_dnd_ServiceAvailableArg_PDU,
13456 { "ServiceAvailableArg", "qsig.dnd.ServiceAvailableArg",
13457 FT_UINT32, BASE_DEC, VALS(qsig_dnd_ServiceAvailableArg_vals), 0,
13458 NULL, HFILL }},
13459 { &hf_qsig_dnd_qsig_dnd_DummyArg_PDU,
13460 { "DummyArg", "qsig.dnd.DummyArg",
13461 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DummyArg_vals), 0,
13462 NULL, HFILL }},
13463 { &hf_qsig_dnd_qsig_dnd_Extension_PDU,
13464 { "Extension", "qsig.dnd.Extension_element",
13465 FT_NONE, BASE_NONE, NULL, 0,
13466 NULL, HFILL }},
13467 { &hf_qsig_dnd_null,
13468 { "null", "qsig.dnd.null_element",
13469 FT_NONE, BASE_NONE, NULL, 0,
13470 NULL, HFILL }},
13471 { &hf_qsig_dnd_extension,
13472 { "extension", "qsig.dnd.extension_element",
13473 FT_NONE, BASE_NONE, NULL, 0,
13474 NULL, HFILL }},
13475 { &hf_qsig_dnd_sequenceOfExtn,
13476 { "sequenceOfExtn", "qsig.dnd.sequenceOfExtn",
13477 FT_UINT32, BASE_DEC, NULL, 0,
13478 "SEQUENCE_OF_Extension", HFILL }},
13479 { &hf_qsig_dnd_sequenceOfExtn_item,
13480 { "Extension", "qsig.dnd.Extension_element",
13481 FT_NONE, BASE_NONE, NULL, 0,
13482 NULL, HFILL }},
13483 { &hf_qsig_dnd_basicService,
13484 { "basicService", "qsig.dnd.basicService",
13485 FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
13486 NULL, HFILL }},
13487 { &hf_qsig_dnd_servedUserNr,
13488 { "servedUserNr", "qsig.dnd.servedUserNr",
13489 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13490 "PartyNumber", HFILL }},
13491 { &hf_qsig_dnd_argumentExtensionDNDA,
13492 { "argumentExtension", "qsig.dnd.argumentExtension",
13493 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDAargumentExtension_vals), 0,
13494 "DNDAargumentExtension", HFILL }},
13495 { &hf_qsig_dnd_status,
13496 { "status", "qsig.dnd.status",
13497 FT_UINT32, BASE_DEC, NULL, 0,
13498 NULL, HFILL }},
13499 { &hf_qsig_dnd_status_item,
13500 { "status item", "qsig.dnd.status_item_element",
13501 FT_NONE, BASE_NONE, NULL, 0,
13502 NULL, HFILL }},
13503 { &hf_qsig_dnd_dndProtectionLevel,
13504 { "dndProtectionLevel", "qsig.dnd.dndProtectionLevel",
13505 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDProtectionLevel_vals), 0,
13506 NULL, HFILL }},
13507 { &hf_qsig_dnd_resultExtension,
13508 { "resultExtension", "qsig.dnd.resultExtension",
13509 FT_UINT32, BASE_DEC, VALS(qsig_dnd_T_resultExtension_vals), 0,
13510 NULL, HFILL }},
13511 { &hf_qsig_dnd_argumentExtensionDNDD,
13512 { "argumentExtension", "qsig.dnd.argumentExtension",
13513 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDDargumentExtension_vals), 0,
13514 "DNDDargumentExtension", HFILL }},
13515 { &hf_qsig_dnd_argumentExtensionDNDI,
13516 { "argumentExtension", "qsig.dnd.argumentExtension",
13517 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDIargumentExtension_vals), 0,
13518 "DNDIargumentExtension", HFILL }},
13519 { &hf_qsig_dnd_status_01,
13520 { "status", "qsig.dnd.status",
13521 FT_UINT32, BASE_DEC, NULL, 0,
13522 "T_status_01", HFILL }},
13523 { &hf_qsig_dnd_status_item_01,
13524 { "status item", "qsig.dnd.status_item_element",
13525 FT_NONE, BASE_NONE, NULL, 0,
13526 "T_status_item_01", HFILL }},
13527 { &hf_qsig_dnd_resultExtension_01,
13528 { "resultExtension", "qsig.dnd.resultExtension",
13529 FT_UINT32, BASE_DEC, VALS(qsig_dnd_T_resultExtension_01_vals), 0,
13530 "T_resultExtension_01", HFILL }},
13531 { &hf_qsig_dnd_dndoCapabilityLevel,
13532 { "dndoCapabilityLevel", "qsig.dnd.dndoCapabilityLevel",
13533 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDOCapabilityLevel_vals), 0,
13534 NULL, HFILL }},
13535 { &hf_qsig_dnd_argumentExtensionDNDO,
13536 { "argumentExtension", "qsig.dnd.argumentExtension",
13537 FT_UINT32, BASE_DEC, VALS(qsig_dnd_DNDOargumentExtension_vals), 0,
13538 "DNDOargumentExtension", HFILL }},
13539 { &hf_qsig_dnd_serviceList,
13540 { "serviceList", "qsig.dnd.serviceList",
13541 FT_BYTES, BASE_NONE, NULL, 0,
13542 NULL, HFILL }},
13543 { &hf_qsig_dnd_extendedServiceList,
13544 { "extendedServiceList", "qsig.dnd.extendedServiceList_element",
13545 FT_NONE, BASE_NONE, NULL, 0,
13546 NULL, HFILL }},
13547 { &hf_qsig_dnd_extendedServiceList_01,
13548 { "extendedServiceList", "qsig.dnd.extendedServiceList_element",
13549 FT_NONE, BASE_NONE, NULL, 0,
13550 "T_extendedServiceList_01", HFILL }},
13551 { &hf_qsig_dnd_ServiceList_dndo_low,
13552 { "dndo-low", "qsig.dnd.dndo-low",
13553 FT_BOOLEAN, 8, NULL, 0x40,
13554 NULL, HFILL }},
13555 { &hf_qsig_dnd_ServiceList_dndo_medium,
13556 { "dndo-medium", "qsig.dnd.dndo-medium",
13557 FT_BOOLEAN, 8, NULL, 0x20,
13558 NULL, HFILL }},
13559 { &hf_qsig_dnd_ServiceList_dndo_high,
13560 { "dndo-high", "qsig.dnd.dndo-high",
13561 FT_BOOLEAN, 8, NULL, 0x10,
13562 NULL, HFILL }},
13564 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
13566 { &hf_qsig_ci_qsig_ci_PathRetainArg_PDU,
13567 { "PathRetainArg", "qsig.ci.PathRetainArg",
13568 FT_UINT32, BASE_DEC, VALS(qsig_ci_PathRetainArg_vals), 0,
13569 NULL, HFILL }},
13570 { &hf_qsig_ci_qsig_ci_ServiceAvailableArg_PDU,
13571 { "ServiceAvailableArg", "qsig.ci.ServiceAvailableArg",
13572 FT_UINT32, BASE_DEC, VALS(qsig_ci_ServiceAvailableArg_vals), 0,
13573 NULL, HFILL }},
13574 { &hf_qsig_ci_qsig_ci_CIRequestArg_PDU,
13575 { "CIRequestArg", "qsig.ci.CIRequestArg_element",
13576 FT_NONE, BASE_NONE, NULL, 0,
13577 NULL, HFILL }},
13578 { &hf_qsig_ci_qsig_ci_CIRequestRes_PDU,
13579 { "CIRequestRes", "qsig.ci.CIRequestRes_element",
13580 FT_NONE, BASE_NONE, NULL, 0,
13581 NULL, HFILL }},
13582 { &hf_qsig_ci_qsig_ci_DummyArg_PDU,
13583 { "DummyArg", "qsig.ci.DummyArg",
13584 FT_UINT32, BASE_DEC, VALS(qsig_ci_DummyArg_vals), 0,
13585 NULL, HFILL }},
13586 { &hf_qsig_ci_qsig_ci_CIGetCIPLRes_PDU,
13587 { "CIGetCIPLRes", "qsig.ci.CIGetCIPLRes_element",
13588 FT_NONE, BASE_NONE, NULL, 0,
13589 NULL, HFILL }},
13590 { &hf_qsig_ci_qsig_ci_DummyRes_PDU,
13591 { "DummyRes", "qsig.ci.DummyRes",
13592 FT_UINT32, BASE_DEC, VALS(qsig_ci_DummyRes_vals), 0,
13593 NULL, HFILL }},
13594 { &hf_qsig_ci_qsig_ci_Extension_PDU,
13595 { "Extension", "qsig.ci.Extension_element",
13596 FT_NONE, BASE_NONE, NULL, 0,
13597 NULL, HFILL }},
13598 { &hf_qsig_ci_serviceList,
13599 { "serviceList", "qsig.ci.serviceList",
13600 FT_BYTES, BASE_NONE, NULL, 0,
13601 NULL, HFILL }},
13602 { &hf_qsig_ci_extendedServiceList,
13603 { "extendedServiceList", "qsig.ci.extendedServiceList_element",
13604 FT_NONE, BASE_NONE, NULL, 0,
13605 NULL, HFILL }},
13606 { &hf_qsig_ci_extension,
13607 { "extension", "qsig.ci.extension_element",
13608 FT_NONE, BASE_NONE, NULL, 0,
13609 NULL, HFILL }},
13610 { &hf_qsig_ci_extendedServiceList_01,
13611 { "extendedServiceList", "qsig.ci.extendedServiceList_element",
13612 FT_NONE, BASE_NONE, NULL, 0,
13613 "T_extendedServiceList_01", HFILL }},
13614 { &hf_qsig_ci_null,
13615 { "null", "qsig.ci.null_element",
13616 FT_NONE, BASE_NONE, NULL, 0,
13617 NULL, HFILL }},
13618 { &hf_qsig_ci_sequenceOfExtn,
13619 { "sequenceOfExtn", "qsig.ci.sequenceOfExtn",
13620 FT_UINT32, BASE_DEC, NULL, 0,
13621 "SEQUENCE_OF_Extension", HFILL }},
13622 { &hf_qsig_ci_sequenceOfExtn_item,
13623 { "Extension", "qsig.ci.Extension_element",
13624 FT_NONE, BASE_NONE, NULL, 0,
13625 NULL, HFILL }},
13626 { &hf_qsig_ci_ciCapabilityLevel,
13627 { "ciCapabilityLevel", "qsig.ci.ciCapabilityLevel",
13628 FT_UINT32, BASE_DEC, VALS(qsig_ci_CICapabilityLevel_vals), 0,
13629 NULL, HFILL }},
13630 { &hf_qsig_ci_argumentExtension,
13631 { "argumentExtension", "qsig.ci.argumentExtension",
13632 FT_UINT32, BASE_DEC, VALS(qsig_ci_T_argumentExtension_vals), 0,
13633 NULL, HFILL }},
13634 { &hf_qsig_ci_ciUnwantedUserStatus,
13635 { "ciUnwantedUserStatus", "qsig.ci.ciUnwantedUserStatus",
13636 FT_UINT32, BASE_DEC, VALS(qsig_ci_CIUnwantedUserStatus_vals), 0,
13637 NULL, HFILL }},
13638 { &hf_qsig_ci_resultExtension,
13639 { "resultExtension", "qsig.ci.resultExtension",
13640 FT_UINT32, BASE_DEC, VALS(qsig_ci_T_resultExtension_vals), 0,
13641 NULL, HFILL }},
13642 { &hf_qsig_ci_ciProtectionLevel,
13643 { "ciProtectionLevel", "qsig.ci.ciProtectionLevel",
13644 FT_UINT32, BASE_DEC, VALS(qsig_ci_CIProtectionLevel_vals), 0,
13645 NULL, HFILL }},
13646 { &hf_qsig_ci_resultExtension_01,
13647 { "resultExtension", "qsig.ci.resultExtension",
13648 FT_UINT32, BASE_DEC, VALS(qsig_ci_T_resultExtension_01_vals), 0,
13649 "T_resultExtension_01", HFILL }},
13650 { &hf_qsig_ci_ServiceList_ci_low,
13651 { "ci-low", "qsig.ci.ci-low",
13652 FT_BOOLEAN, 8, NULL, 0x08,
13653 NULL, HFILL }},
13654 { &hf_qsig_ci_ServiceList_ci_medium,
13655 { "ci-medium", "qsig.ci.ci-medium",
13656 FT_BOOLEAN, 8, NULL, 0x04,
13657 NULL, HFILL }},
13658 { &hf_qsig_ci_ServiceList_ci_high,
13659 { "ci-high", "qsig.ci.ci-high",
13660 FT_BOOLEAN, 8, NULL, 0x02,
13661 NULL, HFILL }},
13663 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
13665 { &hf_qsig_aoc_qsig_aoc_AocRateArg_PDU,
13666 { "AocRateArg", "qsig.aoc.AocRateArg_element",
13667 FT_NONE, BASE_NONE, NULL, 0,
13668 NULL, HFILL }},
13669 { &hf_qsig_aoc_qsig_aoc_AocInterimArg_PDU,
13670 { "AocInterimArg", "qsig.aoc.AocInterimArg_element",
13671 FT_NONE, BASE_NONE, NULL, 0,
13672 NULL, HFILL }},
13673 { &hf_qsig_aoc_qsig_aoc_AocFinalArg_PDU,
13674 { "AocFinalArg", "qsig.aoc.AocFinalArg_element",
13675 FT_NONE, BASE_NONE, NULL, 0,
13676 NULL, HFILL }},
13677 { &hf_qsig_aoc_qsig_aoc_ChargeRequestArg_PDU,
13678 { "ChargeRequestArg", "qsig.aoc.ChargeRequestArg_element",
13679 FT_NONE, BASE_NONE, NULL, 0,
13680 NULL, HFILL }},
13681 { &hf_qsig_aoc_qsig_aoc_ChargeRequestRes_PDU,
13682 { "ChargeRequestRes", "qsig.aoc.ChargeRequestRes_element",
13683 FT_NONE, BASE_NONE, NULL, 0,
13684 NULL, HFILL }},
13685 { &hf_qsig_aoc_qsig_aoc_DummyArg_PDU,
13686 { "DummyArg", "qsig.aoc.DummyArg",
13687 FT_UINT32, BASE_DEC, VALS(qsig_aoc_DummyArg_vals), 0,
13688 NULL, HFILL }},
13689 { &hf_qsig_aoc_qsig_aoc_AocCompleteArg_PDU,
13690 { "AocCompleteArg", "qsig.aoc.AocCompleteArg_element",
13691 FT_NONE, BASE_NONE, NULL, 0,
13692 NULL, HFILL }},
13693 { &hf_qsig_aoc_qsig_aoc_AocCompleteRes_PDU,
13694 { "AocCompleteRes", "qsig.aoc.AocCompleteRes_element",
13695 FT_NONE, BASE_NONE, NULL, 0,
13696 NULL, HFILL }},
13697 { &hf_qsig_aoc_qsig_aoc_AocDivChargeReqArg_PDU,
13698 { "AocDivChargeReqArg", "qsig.aoc.AocDivChargeReqArg_element",
13699 FT_NONE, BASE_NONE, NULL, 0,
13700 NULL, HFILL }},
13701 { &hf_qsig_aoc_qsig_aoc_Extension_PDU,
13702 { "Extension", "qsig.aoc.Extension_element",
13703 FT_NONE, BASE_NONE, NULL, 0,
13704 NULL, HFILL }},
13705 { &hf_qsig_aoc_aocRate,
13706 { "aocRate", "qsig.aoc.aocRate",
13707 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_aocRate_vals), 0,
13708 NULL, HFILL }},
13709 { &hf_qsig_aoc_chargeNotAvailable,
13710 { "chargeNotAvailable", "qsig.aoc.chargeNotAvailable_element",
13711 FT_NONE, BASE_NONE, NULL, 0,
13712 NULL, HFILL }},
13713 { &hf_qsig_aoc_aocSCurrencyInfoList,
13714 { "aocSCurrencyInfoList", "qsig.aoc.aocSCurrencyInfoList",
13715 FT_UINT32, BASE_DEC, NULL, 0,
13716 NULL, HFILL }},
13717 { &hf_qsig_aoc_rateArgExtension,
13718 { "rateArgExtension", "qsig.aoc.rateArgExtension",
13719 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_rateArgExtension_vals), 0,
13720 NULL, HFILL }},
13721 { &hf_qsig_aoc_extension,
13722 { "extension", "qsig.aoc.extension_element",
13723 FT_NONE, BASE_NONE, NULL, 0,
13724 NULL, HFILL }},
13725 { &hf_qsig_aoc_multipleExtension,
13726 { "multipleExtension", "qsig.aoc.multipleExtension",
13727 FT_UINT32, BASE_DEC, NULL, 0,
13728 "SEQUENCE_OF_Extension", HFILL }},
13729 { &hf_qsig_aoc_multipleExtension_item,
13730 { "Extension", "qsig.aoc.Extension_element",
13731 FT_NONE, BASE_NONE, NULL, 0,
13732 NULL, HFILL }},
13733 { &hf_qsig_aoc_interimCharge,
13734 { "interimCharge", "qsig.aoc.interimCharge",
13735 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_interimCharge_vals), 0,
13736 NULL, HFILL }},
13737 { &hf_qsig_aoc_freeOfCharge,
13738 { "freeOfCharge", "qsig.aoc.freeOfCharge_element",
13739 FT_NONE, BASE_NONE, NULL, 0,
13740 NULL, HFILL }},
13741 { &hf_qsig_aoc_specificCurrency,
13742 { "specificCurrency", "qsig.aoc.specificCurrency_element",
13743 FT_NONE, BASE_NONE, NULL, 0,
13744 NULL, HFILL }},
13745 { &hf_qsig_aoc_recordedCurrency,
13746 { "recordedCurrency", "qsig.aoc.recordedCurrency_element",
13747 FT_NONE, BASE_NONE, NULL, 0,
13748 NULL, HFILL }},
13749 { &hf_qsig_aoc_interimBillingId,
13750 { "interimBillingId", "qsig.aoc.interimBillingId",
13751 FT_UINT32, BASE_DEC, VALS(qsig_aoc_InterimBillingId_vals), 0,
13752 NULL, HFILL }},
13753 { &hf_qsig_aoc_interimArgExtension,
13754 { "interimArgExtension", "qsig.aoc.interimArgExtension",
13755 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_interimArgExtension_vals), 0,
13756 NULL, HFILL }},
13757 { &hf_qsig_aoc_finalCharge,
13758 { "finalCharge", "qsig.aoc.finalCharge",
13759 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_finalCharge_vals), 0,
13760 NULL, HFILL }},
13761 { &hf_qsig_aoc_specificCurrency_01,
13762 { "specificCurrency", "qsig.aoc.specificCurrency_element",
13763 FT_NONE, BASE_NONE, NULL, 0,
13764 "T_specificCurrency_01", HFILL }},
13765 { &hf_qsig_aoc_finalBillingId,
13766 { "finalBillingId", "qsig.aoc.finalBillingId",
13767 FT_UINT32, BASE_DEC, VALS(qsig_aoc_FinalBillingId_vals), 0,
13768 NULL, HFILL }},
13769 { &hf_qsig_aoc_chargingAssociation,
13770 { "chargingAssociation", "qsig.aoc.chargingAssociation",
13771 FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingAssociation_vals), 0,
13772 NULL, HFILL }},
13773 { &hf_qsig_aoc_finalArgExtension,
13774 { "finalArgExtension", "qsig.aoc.finalArgExtension",
13775 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_finalArgExtension_vals), 0,
13776 NULL, HFILL }},
13777 { &hf_qsig_aoc_AOCSCurrencyInfoList_item,
13778 { "AOCSCurrencyInfo", "qsig.aoc.AOCSCurrencyInfo_element",
13779 FT_NONE, BASE_NONE, NULL, 0,
13780 NULL, HFILL }},
13781 { &hf_qsig_aoc_chargedItem,
13782 { "chargedItem", "qsig.aoc.chargedItem",
13783 FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargedItem_vals), 0,
13784 NULL, HFILL }},
13785 { &hf_qsig_aoc_rateType,
13786 { "rateType", "qsig.aoc.rateType",
13787 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_rateType_vals), 0,
13788 NULL, HFILL }},
13789 { &hf_qsig_aoc_durationCurrency,
13790 { "durationCurrency", "qsig.aoc.durationCurrency_element",
13791 FT_NONE, BASE_NONE, NULL, 0,
13792 NULL, HFILL }},
13793 { &hf_qsig_aoc_flatRateCurrency,
13794 { "flatRateCurrency", "qsig.aoc.flatRateCurrency_element",
13795 FT_NONE, BASE_NONE, NULL, 0,
13796 NULL, HFILL }},
13797 { &hf_qsig_aoc_volumeRateCurrency,
13798 { "volumeRateCurrency", "qsig.aoc.volumeRateCurrency_element",
13799 FT_NONE, BASE_NONE, NULL, 0,
13800 NULL, HFILL }},
13801 { &hf_qsig_aoc_specialChargingCode,
13802 { "specialChargingCode", "qsig.aoc.specialChargingCode",
13803 FT_UINT32, BASE_DEC, NULL, 0,
13804 NULL, HFILL }},
13805 { &hf_qsig_aoc_currencyInfoNotAvailable,
13806 { "currencyInfoNotAvailable", "qsig.aoc.currencyInfoNotAvailable_element",
13807 FT_NONE, BASE_NONE, NULL, 0,
13808 NULL, HFILL }},
13809 { &hf_qsig_aoc_freeOfChargefromBeginning,
13810 { "freeOfChargefromBeginning", "qsig.aoc.freeOfChargefromBeginning_element",
13811 FT_NONE, BASE_NONE, NULL, 0,
13812 NULL, HFILL }},
13813 { &hf_qsig_aoc_dCurrency,
13814 { "dCurrency", "qsig.aoc.dCurrency",
13815 FT_STRING, BASE_NONE, NULL, 0,
13816 "Currency", HFILL }},
13817 { &hf_qsig_aoc_dAmount,
13818 { "dAmount", "qsig.aoc.dAmount_element",
13819 FT_NONE, BASE_NONE, NULL, 0,
13820 "Amount", HFILL }},
13821 { &hf_qsig_aoc_dChargingType,
13822 { "dChargingType", "qsig.aoc.dChargingType",
13823 FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingType_vals), 0,
13824 "ChargingType", HFILL }},
13825 { &hf_qsig_aoc_dTime,
13826 { "dTime", "qsig.aoc.dTime_element",
13827 FT_NONE, BASE_NONE, NULL, 0,
13828 "Time", HFILL }},
13829 { &hf_qsig_aoc_dGranularity,
13830 { "dGranularity", "qsig.aoc.dGranularity_element",
13831 FT_NONE, BASE_NONE, NULL, 0,
13832 "Time", HFILL }},
13833 { &hf_qsig_aoc_fRCurrency,
13834 { "fRCurrency", "qsig.aoc.fRCurrency",
13835 FT_STRING, BASE_NONE, NULL, 0,
13836 "Currency", HFILL }},
13837 { &hf_qsig_aoc_fRAmount,
13838 { "fRAmount", "qsig.aoc.fRAmount_element",
13839 FT_NONE, BASE_NONE, NULL, 0,
13840 "Amount", HFILL }},
13841 { &hf_qsig_aoc_vRCurrency,
13842 { "vRCurrency", "qsig.aoc.vRCurrency",
13843 FT_STRING, BASE_NONE, NULL, 0,
13844 "Currency", HFILL }},
13845 { &hf_qsig_aoc_vRAmount,
13846 { "vRAmount", "qsig.aoc.vRAmount_element",
13847 FT_NONE, BASE_NONE, NULL, 0,
13848 "Amount", HFILL }},
13849 { &hf_qsig_aoc_vRVolumeUnit,
13850 { "vRVolumeUnit", "qsig.aoc.vRVolumeUnit",
13851 FT_UINT32, BASE_DEC, VALS(qsig_aoc_VolumeUnit_vals), 0,
13852 "VolumeUnit", HFILL }},
13853 { &hf_qsig_aoc_rCurrency,
13854 { "rCurrency", "qsig.aoc.rCurrency",
13855 FT_STRING, BASE_NONE, NULL, 0,
13856 "Currency", HFILL }},
13857 { &hf_qsig_aoc_rAmount,
13858 { "rAmount", "qsig.aoc.rAmount_element",
13859 FT_NONE, BASE_NONE, NULL, 0,
13860 "Amount", HFILL }},
13861 { &hf_qsig_aoc_currencyAmount,
13862 { "currencyAmount", "qsig.aoc.currencyAmount",
13863 FT_UINT32, BASE_DEC, NULL, 0,
13864 NULL, HFILL }},
13865 { &hf_qsig_aoc_multiplier,
13866 { "multiplier", "qsig.aoc.multiplier",
13867 FT_UINT32, BASE_DEC, VALS(qsig_aoc_Multiplier_vals), 0,
13868 NULL, HFILL }},
13869 { &hf_qsig_aoc_lengthOfTimeUnit,
13870 { "lengthOfTimeUnit", "qsig.aoc.lengthOfTimeUnit",
13871 FT_UINT32, BASE_DEC, NULL, 0,
13872 NULL, HFILL }},
13873 { &hf_qsig_aoc_scale,
13874 { "scale", "qsig.aoc.scale",
13875 FT_UINT32, BASE_DEC, VALS(qsig_aoc_Scale_vals), 0,
13876 NULL, HFILL }},
13877 { &hf_qsig_aoc_chargeNumber,
13878 { "chargeNumber", "qsig.aoc.chargeNumber",
13879 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13880 "PartyNumber", HFILL }},
13881 { &hf_qsig_aoc_chargeIdentifier,
13882 { "chargeIdentifier", "qsig.aoc.chargeIdentifier",
13883 FT_INT32, BASE_DEC, NULL, 0,
13884 NULL, HFILL }},
13885 { &hf_qsig_aoc_adviceModeCombinations,
13886 { "adviceModeCombinations", "qsig.aoc.adviceModeCombinations",
13887 FT_UINT32, BASE_DEC, NULL, 0,
13888 "SEQUENCE_SIZE_0_7_OF_AdviceModeCombination", HFILL }},
13889 { &hf_qsig_aoc_adviceModeCombinations_item,
13890 { "AdviceModeCombination", "qsig.aoc.AdviceModeCombination",
13891 FT_UINT32, BASE_DEC, VALS(qsig_aoc_AdviceModeCombination_vals), 0,
13892 NULL, HFILL }},
13893 { &hf_qsig_aoc_chargeReqArgExtension,
13894 { "chargeReqArgExtension", "qsig.aoc.chargeReqArgExtension",
13895 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_chargeReqArgExtension_vals), 0,
13896 NULL, HFILL }},
13897 { &hf_qsig_aoc_adviceModeCombination,
13898 { "adviceModeCombination", "qsig.aoc.adviceModeCombination",
13899 FT_UINT32, BASE_DEC, VALS(qsig_aoc_AdviceModeCombination_vals), 0,
13900 NULL, HFILL }},
13901 { &hf_qsig_aoc_chargeReqResExtension,
13902 { "chargeReqResExtension", "qsig.aoc.chargeReqResExtension",
13903 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_chargeReqResExtension_vals), 0,
13904 NULL, HFILL }},
13905 { &hf_qsig_aoc_none,
13906 { "none", "qsig.aoc.none_element",
13907 FT_NONE, BASE_NONE, NULL, 0,
13908 NULL, HFILL }},
13909 { &hf_qsig_aoc_chargedUser,
13910 { "chargedUser", "qsig.aoc.chargedUser",
13911 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13912 "PartyNumber", HFILL }},
13913 { &hf_qsig_aoc_completeArgExtension,
13914 { "completeArgExtension", "qsig.aoc.completeArgExtension",
13915 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_completeArgExtension_vals), 0,
13916 NULL, HFILL }},
13917 { &hf_qsig_aoc_chargingOption,
13918 { "chargingOption", "qsig.aoc.chargingOption",
13919 FT_UINT32, BASE_DEC, VALS(qsig_aoc_ChargingOption_vals), 0,
13920 NULL, HFILL }},
13921 { &hf_qsig_aoc_completeResExtension,
13922 { "completeResExtension", "qsig.aoc.completeResExtension",
13923 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_completeResExtension_vals), 0,
13924 NULL, HFILL }},
13925 { &hf_qsig_aoc_divertingUser,
13926 { "divertingUser", "qsig.aoc.divertingUser",
13927 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
13928 "PartyNumber", HFILL }},
13929 { &hf_qsig_aoc_diversionType,
13930 { "diversionType", "qsig.aoc.diversionType",
13931 FT_UINT32, BASE_DEC, VALS(qsig_aoc_DiversionType_vals), 0,
13932 NULL, HFILL }},
13933 { &hf_qsig_aoc_aocDivChargeReqArgExt,
13934 { "aocDivChargeReqArgExt", "qsig.aoc.aocDivChargeReqArgExt",
13935 FT_UINT32, BASE_DEC, VALS(qsig_aoc_T_aocDivChargeReqArgExt_vals), 0,
13936 NULL, HFILL }},
13938 /* --- Module Recall-Operations-asn1-97 --- --- --- */
13940 { &hf_qsig_re_qsig_re_ReAlertingArg_PDU,
13941 { "ReAlertingArg", "qsig.re.ReAlertingArg_element",
13942 FT_NONE, BASE_NONE, NULL, 0,
13943 NULL, HFILL }},
13944 { &hf_qsig_re_qsig_re_ReAnswerArg_PDU,
13945 { "ReAnswerArg", "qsig.re.ReAnswerArg_element",
13946 FT_NONE, BASE_NONE, NULL, 0,
13947 NULL, HFILL }},
13948 { &hf_qsig_re_alertedNumber,
13949 { "alertedNumber", "qsig.re.alertedNumber",
13950 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13951 "PresentedNumberScreened", HFILL }},
13952 { &hf_qsig_re_alertedName,
13953 { "alertedName", "qsig.re.alertedName",
13954 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13955 "Name", HFILL }},
13956 { &hf_qsig_re_argumentExtension,
13957 { "argumentExtension", "qsig.re.argumentExtension",
13958 FT_UINT32, BASE_DEC, VALS(qsig_re_T_argumentExtension_vals), 0,
13959 NULL, HFILL }},
13960 { &hf_qsig_re_extension,
13961 { "extension", "qsig.re.extension_element",
13962 FT_NONE, BASE_NONE, NULL, 0,
13963 NULL, HFILL }},
13964 { &hf_qsig_re_multipleExtension,
13965 { "multipleExtension", "qsig.re.multipleExtension",
13966 FT_UINT32, BASE_DEC, NULL, 0,
13967 "SEQUENCE_OF_Extension", HFILL }},
13968 { &hf_qsig_re_multipleExtension_item,
13969 { "Extension", "qsig.re.Extension_element",
13970 FT_NONE, BASE_NONE, NULL, 0,
13971 NULL, HFILL }},
13972 { &hf_qsig_re_connectedNumber,
13973 { "connectedNumber", "qsig.re.connectedNumber",
13974 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
13975 "PresentedNumberScreened", HFILL }},
13976 { &hf_qsig_re_connectedSubaddress,
13977 { "connectedSubaddress", "qsig.re.connectedSubaddress",
13978 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
13979 "PartySubaddress", HFILL }},
13980 { &hf_qsig_re_connectedName,
13981 { "connectedName", "qsig.re.connectedName",
13982 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
13983 "Name", HFILL }},
13984 { &hf_qsig_re_argumentExtension_01,
13985 { "argumentExtension", "qsig.re.argumentExtension",
13986 FT_UINT32, BASE_DEC, VALS(qsig_re_T_argumentExtension_01_vals), 0,
13987 "T_argumentExtension_01", HFILL }},
13989 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
13991 { &hf_qsig_sync_qsig_sync_SynchronizationReqArg_PDU,
13992 { "SynchronizationReqArg", "qsig.sync.SynchronizationReqArg_element",
13993 FT_NONE, BASE_NONE, NULL, 0,
13994 NULL, HFILL }},
13995 { &hf_qsig_sync_qsig_sync_SynchronizationReqRes_PDU,
13996 { "SynchronizationReqRes", "qsig.sync.SynchronizationReqRes_element",
13997 FT_NONE, BASE_NONE, NULL, 0,
13998 NULL, HFILL }},
13999 { &hf_qsig_sync_qsig_sync_SynchronizationInfoArg_PDU,
14000 { "SynchronizationInfoArg", "qsig.sync.SynchronizationInfoArg_element",
14001 FT_NONE, BASE_NONE, NULL, 0,
14002 NULL, HFILL }},
14003 { &hf_qsig_sync_qsig_sync_Extension_PDU,
14004 { "Extension", "qsig.sync.Extension_element",
14005 FT_NONE, BASE_NONE, NULL, 0,
14006 NULL, HFILL }},
14007 { &hf_qsig_sync_action,
14008 { "action", "qsig.sync.action",
14009 FT_INT32, BASE_DEC, VALS(qsig_sync_Action_vals), 0,
14010 NULL, HFILL }},
14011 { &hf_qsig_sync_argExtension,
14012 { "argExtension", "qsig.sync.argExtension",
14013 FT_UINT32, BASE_DEC, VALS(qsig_sync_ArgExtension_vals), 0,
14014 NULL, HFILL }},
14015 { &hf_qsig_sync_response,
14016 { "response", "qsig.sync.response",
14017 FT_BOOLEAN, BASE_NONE, NULL, 0,
14018 "BOOLEAN", HFILL }},
14019 { &hf_qsig_sync_stateinfo,
14020 { "stateinfo", "qsig.sync.stateinfo",
14021 FT_INT32, BASE_DEC, VALS(qsig_sync_T_stateinfo_vals), 0,
14022 NULL, HFILL }},
14023 { &hf_qsig_sync_extension,
14024 { "extension", "qsig.sync.extension_element",
14025 FT_NONE, BASE_NONE, NULL, 0,
14026 NULL, HFILL }},
14027 { &hf_qsig_sync_sequOfExtn,
14028 { "sequOfExtn", "qsig.sync.sequOfExtn",
14029 FT_UINT32, BASE_DEC, NULL, 0,
14030 "SEQUENCE_OF_Extension", HFILL }},
14031 { &hf_qsig_sync_sequOfExtn_item,
14032 { "Extension", "qsig.sync.Extension_element",
14033 FT_NONE, BASE_NONE, NULL, 0,
14034 NULL, HFILL }},
14036 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
14038 { &hf_qsig_cint_qsig_cint_CintInformation1Arg_PDU,
14039 { "CintInformation1Arg", "qsig.cint.CintInformation1Arg_element",
14040 FT_NONE, BASE_NONE, NULL, 0,
14041 NULL, HFILL }},
14042 { &hf_qsig_cint_qsig_cint_CintInformation2Arg_PDU,
14043 { "CintInformation2Arg", "qsig.cint.CintInformation2Arg_element",
14044 FT_NONE, BASE_NONE, NULL, 0,
14045 NULL, HFILL }},
14046 { &hf_qsig_cint_qsig_cint_CintCondArg_PDU,
14047 { "CintCondArg", "qsig.cint.CintCondArg_element",
14048 FT_NONE, BASE_NONE, NULL, 0,
14049 NULL, HFILL }},
14050 { &hf_qsig_cint_qsig_cint_CintExtension_PDU,
14051 { "CintExtension", "qsig.cint.CintExtension",
14052 FT_UINT32, BASE_DEC, VALS(qsig_cint_CintExtension_vals), 0,
14053 NULL, HFILL }},
14054 { &hf_qsig_cint_interceptionCause,
14055 { "interceptionCause", "qsig.cint.interceptionCause",
14056 FT_UINT32, BASE_DEC, VALS(qsig_cint_CintCause_vals), 0,
14057 "CintCause", HFILL }},
14058 { &hf_qsig_cint_interceptedToNumber,
14059 { "interceptedToNumber", "qsig.cint.interceptedToNumber",
14060 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14061 "PartyNumber", HFILL }},
14062 { &hf_qsig_cint_extension,
14063 { "extension", "qsig.cint.extension",
14064 FT_UINT32, BASE_DEC, VALS(qsig_cint_CintExtension_vals), 0,
14065 "CintExtension", HFILL }},
14066 { &hf_qsig_cint_calledNumber,
14067 { "calledNumber", "qsig.cint.calledNumber",
14068 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
14069 "PresentedNumberUnscreened", HFILL }},
14070 { &hf_qsig_cint_originalCalledNumber,
14071 { "originalCalledNumber", "qsig.cint.originalCalledNumber",
14072 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberUnscreened_vals), 0,
14073 "PresentedNumberUnscreened", HFILL }},
14074 { &hf_qsig_cint_calledName,
14075 { "calledName", "qsig.cint.calledName",
14076 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14077 "Name", HFILL }},
14078 { &hf_qsig_cint_originalCalledName,
14079 { "originalCalledName", "qsig.cint.originalCalledName",
14080 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14081 "Name", HFILL }},
14082 { &hf_qsig_cint_interceptionCause_01,
14083 { "interceptionCause", "qsig.cint.interceptionCause",
14084 FT_UINT32, BASE_DEC, VALS(qsig_cint_Condition_vals), 0,
14085 "Condition", HFILL }},
14086 { &hf_qsig_cint_none,
14087 { "none", "qsig.cint.none_element",
14088 FT_NONE, BASE_NONE, NULL, 0,
14089 NULL, HFILL }},
14090 { &hf_qsig_cint_single,
14091 { "single", "qsig.cint.single_element",
14092 FT_NONE, BASE_NONE, NULL, 0,
14093 "Extension", HFILL }},
14094 { &hf_qsig_cint_multiple,
14095 { "multiple", "qsig.cint.multiple",
14096 FT_UINT32, BASE_DEC, NULL, 0,
14097 "SEQUENCE_OF_Extension", HFILL }},
14098 { &hf_qsig_cint_multiple_item,
14099 { "Extension", "qsig.cint.Extension_element",
14100 FT_NONE, BASE_NONE, NULL, 0,
14101 NULL, HFILL }},
14103 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
14105 { &hf_qsig_cmn_qsig_cmn_DummyArg_PDU,
14106 { "DummyArg", "qsig.cmn.DummyArg",
14107 FT_UINT32, BASE_DEC, VALS(qsig_cmn_DummyArg_vals), 0,
14108 NULL, HFILL }},
14109 { &hf_qsig_cmn_qsig_cmn_CmnArg_PDU,
14110 { "CmnArg", "qsig.cmn.CmnArg_element",
14111 FT_NONE, BASE_NONE, NULL, 0,
14112 NULL, HFILL }},
14113 { &hf_qsig_cmn_featureIdentifier,
14114 { "featureIdentifier", "qsig.cmn.featureIdentifier",
14115 FT_BYTES, BASE_NONE, NULL, 0,
14116 "FeatureIdList", HFILL }},
14117 { &hf_qsig_cmn_ssDNDOprotectionLevel,
14118 { "ssDNDOprotectionLevel", "qsig.cmn.ssDNDOprotectionLevel",
14119 FT_UINT32, BASE_DEC, NULL, 0,
14120 "INTEGER_0_3", HFILL }},
14121 { &hf_qsig_cmn_ssCIprotectionLevel,
14122 { "ssCIprotectionLevel", "qsig.cmn.ssCIprotectionLevel",
14123 FT_UINT32, BASE_DEC, NULL, 0,
14124 "INTEGER_0_3", HFILL }},
14125 { &hf_qsig_cmn_equipmentIdentity,
14126 { "equipmentIdentity", "qsig.cmn.equipmentIdentity_element",
14127 FT_NONE, BASE_NONE, NULL, 0,
14128 "EquipmentId", HFILL }},
14129 { &hf_qsig_cmn_partyCategory,
14130 { "partyCategory", "qsig.cmn.partyCategory",
14131 FT_UINT32, BASE_DEC, VALS(qsig_cmn_PartyCategory_vals), 0,
14132 NULL, HFILL }},
14133 { &hf_qsig_cmn_extension,
14134 { "extension", "qsig.cmn.extension",
14135 FT_UINT32, BASE_DEC, VALS(qsig_cmn_T_extension_vals), 0,
14136 NULL, HFILL }},
14137 { &hf_qsig_cmn_single,
14138 { "single", "qsig.cmn.single_element",
14139 FT_NONE, BASE_NONE, NULL, 0,
14140 "Extension", HFILL }},
14141 { &hf_qsig_cmn_multiple,
14142 { "multiple", "qsig.cmn.multiple",
14143 FT_UINT32, BASE_DEC, NULL, 0,
14144 "SEQUENCE_OF_Extension", HFILL }},
14145 { &hf_qsig_cmn_multiple_item,
14146 { "Extension", "qsig.cmn.Extension_element",
14147 FT_NONE, BASE_NONE, NULL, 0,
14148 NULL, HFILL }},
14149 { &hf_qsig_cmn_null,
14150 { "null", "qsig.cmn.null_element",
14151 FT_NONE, BASE_NONE, NULL, 0,
14152 NULL, HFILL }},
14153 { &hf_qsig_cmn_nodeId,
14154 { "nodeId", "qsig.cmn.nodeId",
14155 FT_STRING, BASE_NONE, NULL, 0,
14156 "IA5String_SIZE_1_10", HFILL }},
14157 { &hf_qsig_cmn_groupId,
14158 { "groupId", "qsig.cmn.groupId",
14159 FT_STRING, BASE_NONE, NULL, 0,
14160 "IA5String_SIZE_1_10", HFILL }},
14161 { &hf_qsig_cmn_unitId,
14162 { "unitId", "qsig.cmn.unitId",
14163 FT_STRING, BASE_NONE, NULL, 0,
14164 "IA5String_SIZE_1_10", HFILL }},
14165 { &hf_qsig_cmn_FeatureIdList_reserved,
14166 { "reserved", "qsig.cmn.reserved",
14167 FT_BOOLEAN, 8, NULL, 0x80,
14168 NULL, HFILL }},
14169 { &hf_qsig_cmn_FeatureIdList_ssCFreRoutingSupported,
14170 { "ssCFreRoutingSupported", "qsig.cmn.ssCFreRoutingSupported",
14171 FT_BOOLEAN, 8, NULL, 0x40,
14172 NULL, HFILL }},
14173 { &hf_qsig_cmn_FeatureIdList_ssCTreRoutingSupported,
14174 { "ssCTreRoutingSupported", "qsig.cmn.ssCTreRoutingSupported",
14175 FT_BOOLEAN, 8, NULL, 0x20,
14176 NULL, HFILL }},
14177 { &hf_qsig_cmn_FeatureIdList_ssCCBSpossible,
14178 { "ssCCBSpossible", "qsig.cmn.ssCCBSpossible",
14179 FT_BOOLEAN, 8, NULL, 0x10,
14180 NULL, HFILL }},
14181 { &hf_qsig_cmn_FeatureIdList_ssCCNRpossible,
14182 { "ssCCNRpossible", "qsig.cmn.ssCCNRpossible",
14183 FT_BOOLEAN, 8, NULL, 0x08,
14184 NULL, HFILL }},
14185 { &hf_qsig_cmn_FeatureIdList_ssCOsupported,
14186 { "ssCOsupported", "qsig.cmn.ssCOsupported",
14187 FT_BOOLEAN, 8, NULL, 0x04,
14188 NULL, HFILL }},
14189 { &hf_qsig_cmn_FeatureIdList_ssCIforcedRelease,
14190 { "ssCIforcedRelease", "qsig.cmn.ssCIforcedRelease",
14191 FT_BOOLEAN, 8, NULL, 0x02,
14192 NULL, HFILL }},
14193 { &hf_qsig_cmn_FeatureIdList_ssCIisolation,
14194 { "ssCIisolation", "qsig.cmn.ssCIisolation",
14195 FT_BOOLEAN, 8, NULL, 0x01,
14196 NULL, HFILL }},
14197 { &hf_qsig_cmn_FeatureIdList_ssCIwaitOnBusy,
14198 { "ssCIwaitOnBusy", "qsig.cmn.ssCIwaitOnBusy",
14199 FT_BOOLEAN, 8, NULL, 0x80,
14200 NULL, HFILL }},
14201 { &hf_qsig_cmn_FeatureIdList_ssAOCsupportChargeRateProvAtGatewPinx,
14202 { "ssAOCsupportChargeRateProvAtGatewPinx", "qsig.cmn.ssAOCsupportChargeRateProvAtGatewPinx",
14203 FT_BOOLEAN, 8, NULL, 0x40,
14204 NULL, HFILL }},
14205 { &hf_qsig_cmn_FeatureIdList_ssAOCsupportInterimChargeProvAtGatewPinx,
14206 { "ssAOCsupportInterimChargeProvAtGatewPinx", "qsig.cmn.ssAOCsupportInterimChargeProvAtGatewPinx",
14207 FT_BOOLEAN, 8, NULL, 0x20,
14208 NULL, HFILL }},
14209 { &hf_qsig_cmn_FeatureIdList_ssAOCsupportFinalChargeProvAtGatewPinx,
14210 { "ssAOCsupportFinalChargeProvAtGatewPinx", "qsig.cmn.ssAOCsupportFinalChargeProvAtGatewPinx",
14211 FT_BOOLEAN, 8, NULL, 0x10,
14212 NULL, HFILL }},
14213 { &hf_qsig_cmn_FeatureIdList_anfPRsupportedAtCooperatingPinx,
14214 { "anfPRsupportedAtCooperatingPinx", "qsig.cmn.anfPRsupportedAtCooperatingPinx",
14215 FT_BOOLEAN, 8, NULL, 0x08,
14216 NULL, HFILL }},
14217 { &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptImmediate,
14218 { "anfCINTcanInterceptImmediate", "qsig.cmn.anfCINTcanInterceptImmediate",
14219 FT_BOOLEAN, 8, NULL, 0x04,
14220 NULL, HFILL }},
14221 { &hf_qsig_cmn_FeatureIdList_anfCINTcanInterceptDelayed,
14222 { "anfCINTcanInterceptDelayed", "qsig.cmn.anfCINTcanInterceptDelayed",
14223 FT_BOOLEAN, 8, NULL, 0x02,
14224 NULL, HFILL }},
14225 { &hf_qsig_cmn_FeatureIdList_anfWTMIreRoutingSupported,
14226 { "anfWTMIreRoutingSupported", "qsig.cmn.anfWTMIreRoutingSupported",
14227 FT_BOOLEAN, 8, NULL, 0x01,
14228 NULL, HFILL }},
14229 { &hf_qsig_cmn_FeatureIdList_anfPUMIreRoutingSupported,
14230 { "anfPUMIreRoutingSupported", "qsig.cmn.anfPUMIreRoutingSupported",
14231 FT_BOOLEAN, 8, NULL, 0x80,
14232 NULL, HFILL }},
14233 { &hf_qsig_cmn_FeatureIdList_ssSSCTreRoutingSupported,
14234 { "ssSSCTreRoutingSupported", "qsig.cmn.ssSSCTreRoutingSupported",
14235 FT_BOOLEAN, 8, NULL, 0x40,
14236 NULL, HFILL }},
14238 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
14240 { &hf_qsig_cpi_qsig_cpi_CPIRequestArg_PDU,
14241 { "CPIRequestArg", "qsig.cpi.CPIRequestArg_element",
14242 FT_NONE, BASE_NONE, NULL, 0,
14243 NULL, HFILL }},
14244 { &hf_qsig_cpi_qsig_cpi_CPIPRequestArg_PDU,
14245 { "CPIPRequestArg", "qsig.cpi.CPIPRequestArg_element",
14246 FT_NONE, BASE_NONE, NULL, 0,
14247 NULL, HFILL }},
14248 { &hf_qsig_cpi_cpiCapabilityLevel,
14249 { "cpiCapabilityLevel", "qsig.cpi.cpiCapabilityLevel",
14250 FT_UINT32, BASE_DEC, VALS(qsig_cpi_CPICapabilityLevel_vals), 0,
14251 NULL, HFILL }},
14252 { &hf_qsig_cpi_argumentExtension,
14253 { "argumentExtension", "qsig.cpi.argumentExtension",
14254 FT_UINT32, BASE_DEC, VALS(qsig_cpi_T_argumentExtension_vals), 0,
14255 NULL, HFILL }},
14256 { &hf_qsig_cpi_extension,
14257 { "extension", "qsig.cpi.extension_element",
14258 FT_NONE, BASE_NONE, NULL, 0,
14259 NULL, HFILL }},
14260 { &hf_qsig_cpi_sequenceOfExtn,
14261 { "sequenceOfExtn", "qsig.cpi.sequenceOfExtn",
14262 FT_UINT32, BASE_DEC, NULL, 0,
14263 "SEQUENCE_OF_Extension", HFILL }},
14264 { &hf_qsig_cpi_sequenceOfExtn_item,
14265 { "Extension", "qsig.cpi.Extension_element",
14266 FT_NONE, BASE_NONE, NULL, 0,
14267 NULL, HFILL }},
14268 { &hf_qsig_cpi_cpiProtectionLevel,
14269 { "cpiProtectionLevel", "qsig.cpi.cpiProtectionLevel",
14270 FT_UINT32, BASE_DEC, VALS(qsig_cpi_CPIProtectionLevel_vals), 0,
14271 NULL, HFILL }},
14272 { &hf_qsig_cpi_argumentExtension_01,
14273 { "argumentExtension", "qsig.cpi.argumentExtension",
14274 FT_UINT32, BASE_DEC, VALS(qsig_cpi_T_argumentExtension_01_vals), 0,
14275 "T_argumentExtension_01", HFILL }},
14277 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
14279 { &hf_qsig_pumr_qsig_pumr_PumRegistrArg_PDU,
14280 { "PumRegistrArg", "qsig.pumr.PumRegistrArg_element",
14281 FT_NONE, BASE_NONE, NULL, 0,
14282 NULL, HFILL }},
14283 { &hf_qsig_pumr_qsig_pumr_PumRegistrRes_PDU,
14284 { "PumRegistrRes", "qsig.pumr.PumRegistrRes_element",
14285 FT_NONE, BASE_NONE, NULL, 0,
14286 NULL, HFILL }},
14287 { &hf_qsig_pumr_qsig_pumr_PumDelRegArg_PDU,
14288 { "PumDelRegArg", "qsig.pumr.PumDelRegArg_element",
14289 FT_NONE, BASE_NONE, NULL, 0,
14290 NULL, HFILL }},
14291 { &hf_qsig_pumr_qsig_pumr_DummyRes_PDU,
14292 { "DummyRes", "qsig.pumr.DummyRes",
14293 FT_UINT32, BASE_DEC, VALS(qsig_pumr_DummyRes_vals), 0,
14294 NULL, HFILL }},
14295 { &hf_qsig_pumr_qsig_pumr_PumDe_regArg_PDU,
14296 { "PumDe-regArg", "qsig.pumr.PumDe_regArg_element",
14297 FT_NONE, BASE_NONE, NULL, 0,
14298 NULL, HFILL }},
14299 { &hf_qsig_pumr_qsig_pumr_PumInterrogArg_PDU,
14300 { "PumInterrogArg", "qsig.pumr.PumInterrogArg_element",
14301 FT_NONE, BASE_NONE, NULL, 0,
14302 NULL, HFILL }},
14303 { &hf_qsig_pumr_qsig_pumr_PumInterrogRes_PDU,
14304 { "PumInterrogRes", "qsig.pumr.PumInterrogRes",
14305 FT_UINT32, BASE_DEC, NULL, 0,
14306 NULL, HFILL }},
14307 { &hf_qsig_pumr_qsig_pumr_Extension_PDU,
14308 { "Extension", "qsig.pumr.Extension_element",
14309 FT_NONE, BASE_NONE, NULL, 0,
14310 NULL, HFILL }},
14311 { &hf_qsig_pumr_pumRUserId,
14312 { "pumUserId", "qsig.pumr.pumUserId",
14313 FT_UINT32, BASE_DEC, VALS(qsig_pumr_RpumUserId_vals), 0,
14314 "RpumUserId", HFILL }},
14315 { &hf_qsig_pumr_pumNumber,
14316 { "pumNumber", "qsig.pumr.pumNumber",
14317 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14318 "PartyNumber", HFILL }},
14319 { &hf_qsig_pumr_alternativeId,
14320 { "alternativeId", "qsig.pumr.alternativeId",
14321 FT_BYTES, BASE_NONE, NULL, 0,
14322 NULL, HFILL }},
14323 { &hf_qsig_pumr_basicService,
14324 { "basicService", "qsig.pumr.basicService",
14325 FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
14326 NULL, HFILL }},
14327 { &hf_qsig_pumr_hostingAddr,
14328 { "hostingAddr", "qsig.pumr.hostingAddr",
14329 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14330 "PartyNumber", HFILL }},
14331 { &hf_qsig_pumr_activatingUserAddr,
14332 { "activatingUserAddr", "qsig.pumr.activatingUserAddr",
14333 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14334 "PartyNumber", HFILL }},
14335 { &hf_qsig_pumr_serviceOption,
14336 { "serviceOption", "qsig.pumr.serviceOption",
14337 FT_UINT32, BASE_DEC, VALS(qsig_pumr_ServiceOption_vals), 0,
14338 NULL, HFILL }},
14339 { &hf_qsig_pumr_sessionParams,
14340 { "sessionParams", "qsig.pumr.sessionParams_element",
14341 FT_NONE, BASE_NONE, NULL, 0,
14342 NULL, HFILL }},
14343 { &hf_qsig_pumr_userPin,
14344 { "userPin", "qsig.pumr.userPin",
14345 FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_vals), 0,
14346 NULL, HFILL }},
14347 { &hf_qsig_pumr_pumUserPin,
14348 { "pumUserPin", "qsig.pumr.pumUserPin",
14349 FT_BYTES, BASE_NONE, NULL, 0,
14350 "UserPin", HFILL }},
14351 { &hf_qsig_pumr_activatingUserPin,
14352 { "activatingUserPin", "qsig.pumr.activatingUserPin",
14353 FT_BYTES, BASE_NONE, NULL, 0,
14354 "UserPin", HFILL }},
14355 { &hf_qsig_pumr_argExtension,
14356 { "argExtension", "qsig.pumr.argExtension",
14357 FT_UINT32, BASE_DEC, VALS(qsig_pumr_PumrExtension_vals), 0,
14358 "PumrExtension", HFILL }},
14359 { &hf_qsig_pumr_null,
14360 { "null", "qsig.pumr.null_element",
14361 FT_NONE, BASE_NONE, NULL, 0,
14362 NULL, HFILL }},
14363 { &hf_qsig_pumr_extension,
14364 { "extension", "qsig.pumr.extension_element",
14365 FT_NONE, BASE_NONE, NULL, 0,
14366 NULL, HFILL }},
14367 { &hf_qsig_pumr_sequOfExtn,
14368 { "sequOfExtn", "qsig.pumr.sequOfExtn",
14369 FT_UINT32, BASE_DEC, NULL, 0,
14370 "SEQUENCE_OF_Extension", HFILL }},
14371 { &hf_qsig_pumr_sequOfExtn_item,
14372 { "Extension", "qsig.pumr.Extension_element",
14373 FT_NONE, BASE_NONE, NULL, 0,
14374 NULL, HFILL }},
14375 { &hf_qsig_pumr_pumXUserId,
14376 { "pumUserId", "qsig.pumr.pumUserId",
14377 FT_UINT32, BASE_DEC, VALS(qsig_pumr_XpumUserId_vals), 0,
14378 "XpumUserId", HFILL }},
14379 { &hf_qsig_pumr_pumDUserId,
14380 { "pumUserId", "qsig.pumr.pumUserId",
14381 FT_UINT32, BASE_DEC, VALS(qsig_pumr_DpumUserId_vals), 0,
14382 "DpumUserId", HFILL }},
14383 { &hf_qsig_pumr_userPin_01,
14384 { "userPin", "qsig.pumr.userPin",
14385 FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_01_vals), 0,
14386 "T_userPin_01", HFILL }},
14387 { &hf_qsig_pumr_pumIUserId,
14388 { "pumUserId", "qsig.pumr.pumUserId",
14389 FT_UINT32, BASE_DEC, VALS(qsig_pumr_IpumUserId_vals), 0,
14390 "IpumUserId", HFILL }},
14391 { &hf_qsig_pumr_homeInfoOnly,
14392 { "homeInfoOnly", "qsig.pumr.homeInfoOnly",
14393 FT_BOOLEAN, BASE_NONE, NULL, 0,
14394 "BOOLEAN", HFILL }},
14395 { &hf_qsig_pumr_userPin_02,
14396 { "userPin", "qsig.pumr.userPin",
14397 FT_UINT32, BASE_DEC, VALS(qsig_pumr_T_userPin_02_vals), 0,
14398 "T_userPin_02", HFILL }},
14399 { &hf_qsig_pumr_PumInterrogRes_item,
14400 { "PumInterrogRes item", "qsig.pumr.PumInterrogRes_item_element",
14401 FT_NONE, BASE_NONE, NULL, 0,
14402 NULL, HFILL }},
14403 { &hf_qsig_pumr_interrogParams,
14404 { "interrogParams", "qsig.pumr.interrogParams_element",
14405 FT_NONE, BASE_NONE, NULL, 0,
14406 "SessionParams", HFILL }},
14407 { &hf_qsig_pumr_durationOfSession,
14408 { "durationOfSession", "qsig.pumr.durationOfSession",
14409 FT_INT32, BASE_DEC, NULL, 0,
14410 "INTEGER", HFILL }},
14411 { &hf_qsig_pumr_numberOfOutgCalls,
14412 { "numberOfOutgCalls", "qsig.pumr.numberOfOutgCalls",
14413 FT_INT32, BASE_DEC, NULL, 0,
14414 "INTEGER", HFILL }},
14416 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
14418 { &hf_qsig_pumch_qsig_pumch_EnquiryArg_PDU,
14419 { "EnquiryArg", "qsig.pumch.EnquiryArg_element",
14420 FT_NONE, BASE_NONE, NULL, 0,
14421 NULL, HFILL }},
14422 { &hf_qsig_pumch_qsig_pumch_EnquiryRes_PDU,
14423 { "EnquiryRes", "qsig.pumch.EnquiryRes",
14424 FT_UINT32, BASE_DEC, VALS(qsig_pumch_EnquiryRes_vals), 0,
14425 NULL, HFILL }},
14426 { &hf_qsig_pumch_qsig_pumch_DivertArg_PDU,
14427 { "DivertArg", "qsig.pumch.DivertArg_element",
14428 FT_NONE, BASE_NONE, NULL, 0,
14429 NULL, HFILL }},
14430 { &hf_qsig_pumch_qsig_pumch_DummyRes_PDU,
14431 { "DummyRes", "qsig.pumch.DummyRes",
14432 FT_UINT32, BASE_DEC, VALS(qsig_pumch_DummyRes_vals), 0,
14433 NULL, HFILL }},
14434 { &hf_qsig_pumch_qsig_pumch_InformArg_PDU,
14435 { "InformArg", "qsig.pumch.InformArg_element",
14436 FT_NONE, BASE_NONE, NULL, 0,
14437 NULL, HFILL }},
14438 { &hf_qsig_pumch_qsig_pumch_PumoArg_PDU,
14439 { "PumoArg", "qsig.pumch.PumoArg_element",
14440 FT_NONE, BASE_NONE, NULL, 0,
14441 NULL, HFILL }},
14442 { &hf_qsig_pumch_qsig_pumch_Extension_PDU,
14443 { "Extension", "qsig.pumch.Extension_element",
14444 FT_NONE, BASE_NONE, NULL, 0,
14445 NULL, HFILL }},
14446 { &hf_qsig_pumch_pisnNumber,
14447 { "pisnNumber", "qsig.pumch.pisnNumber",
14448 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14449 "PartyNumber", HFILL }},
14450 { &hf_qsig_pumch_qSIGInfoElement,
14451 { "qSIGInfoElement", "qsig.pumch.qSIGInfoElement",
14452 FT_BYTES, BASE_NONE, NULL, 0,
14453 "PSS1InformationElement", HFILL }},
14454 { &hf_qsig_pumch_argExtension,
14455 { "argExtension", "qsig.pumch.argExtension",
14456 FT_UINT32, BASE_DEC, VALS(qsig_pumch_PumiExtension_vals), 0,
14457 "PumiExtension", HFILL }},
14458 { &hf_qsig_pumch_hostingAddr,
14459 { "hostingAddr", "qsig.pumch.hostingAddr",
14460 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14461 "PartyNumber", HFILL }},
14462 { &hf_qsig_pumch_callingNumber,
14463 { "callingNumber", "qsig.pumch.callingNumber",
14464 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
14465 "PresentedNumberScreened", HFILL }},
14466 { &hf_qsig_pumch_pumIdentity,
14467 { "pumIdentity", "qsig.pumch.pumIdentity",
14468 FT_UINT32, BASE_DEC, VALS(qsig_pumch_PumIdentity_vals), 0,
14469 NULL, HFILL }},
14470 { &hf_qsig_pumch_callingUserSub,
14471 { "callingUserSub", "qsig.pumch.callingUserSub",
14472 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14473 "PartySubaddress", HFILL }},
14474 { &hf_qsig_pumch_callingUserName,
14475 { "callingUserName", "qsig.pumch.callingUserName",
14476 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14477 "Name", HFILL }},
14478 { &hf_qsig_pumch_pumUserSub,
14479 { "pumUserSub", "qsig.pumch.pumUserSub",
14480 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14481 "PartySubaddress", HFILL }},
14482 { &hf_qsig_pumch_currLocation,
14483 { "currLocation", "qsig.pumch.currLocation_element",
14484 FT_NONE, BASE_NONE, NULL, 0,
14485 NULL, HFILL }},
14486 { &hf_qsig_pumch_cfuActivated,
14487 { "cfuActivated", "qsig.pumch.cfuActivated_element",
14488 FT_NONE, BASE_NONE, NULL, 0,
14489 NULL, HFILL }},
14490 { &hf_qsig_pumch_divToAddress,
14491 { "divToAddress", "qsig.pumch.divToAddress_element",
14492 FT_NONE, BASE_NONE, NULL, 0,
14493 "Address", HFILL }},
14494 { &hf_qsig_pumch_divOptions,
14495 { "divOptions", "qsig.pumch.divOptions",
14496 FT_UINT32, BASE_DEC, VALS(qsig_pumch_SubscriptionOption_vals), 0,
14497 "SubscriptionOption", HFILL }},
14498 { &hf_qsig_pumch_pumName,
14499 { "pumName", "qsig.pumch.pumName",
14500 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14501 "Name", HFILL }},
14502 { &hf_qsig_pumch_null,
14503 { "null", "qsig.pumch.null_element",
14504 FT_NONE, BASE_NONE, NULL, 0,
14505 NULL, HFILL }},
14506 { &hf_qsig_pumch_extension,
14507 { "extension", "qsig.pumch.extension_element",
14508 FT_NONE, BASE_NONE, NULL, 0,
14509 NULL, HFILL }},
14510 { &hf_qsig_pumch_sequOfExtn,
14511 { "sequOfExtn", "qsig.pumch.sequOfExtn",
14512 FT_UINT32, BASE_DEC, NULL, 0,
14513 "SEQUENCE_OF_Extension", HFILL }},
14514 { &hf_qsig_pumch_sequOfExtn_item,
14515 { "Extension", "qsig.pumch.Extension_element",
14516 FT_NONE, BASE_NONE, NULL, 0,
14517 NULL, HFILL }},
14518 { &hf_qsig_pumch_alternativeId,
14519 { "alternativeId", "qsig.pumch.alternativeId",
14520 FT_BYTES, BASE_NONE, NULL, 0,
14521 NULL, HFILL }},
14522 { &hf_qsig_pumch_both,
14523 { "both", "qsig.pumch.both_element",
14524 FT_NONE, BASE_NONE, NULL, 0,
14525 NULL, HFILL }},
14526 { &hf_qsig_pumch_destinationNumber,
14527 { "destinationNumber", "qsig.pumch.destinationNumber",
14528 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14529 "PartyNumber", HFILL }},
14530 { &hf_qsig_pumch_sendingComplete,
14531 { "sendingComplete", "qsig.pumch.sendingComplete_element",
14532 FT_NONE, BASE_NONE, NULL, 0,
14533 NULL, HFILL }},
14534 { &hf_qsig_pumch_pumoaextension,
14535 { "extension", "qsig.pumch.extension",
14536 FT_UINT32, BASE_DEC, VALS(qsig_pumch_T_pumoaextension_vals), 0,
14537 "T_pumoaextension", HFILL }},
14538 { &hf_qsig_pumch_single,
14539 { "single", "qsig.pumch.single_element",
14540 FT_NONE, BASE_NONE, NULL, 0,
14541 "Extension", HFILL }},
14542 { &hf_qsig_pumch_multiple,
14543 { "multiple", "qsig.pumch.multiple",
14544 FT_UINT32, BASE_DEC, NULL, 0,
14545 "SEQUENCE_OF_Extension", HFILL }},
14546 { &hf_qsig_pumch_multiple_item,
14547 { "Extension", "qsig.pumch.Extension_element",
14548 FT_NONE, BASE_NONE, NULL, 0,
14549 NULL, HFILL }},
14551 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
14553 { &hf_qsig_ssct_qsig_ssct_SSCTInitiateArg_PDU,
14554 { "SSCTInitiateArg", "qsig.ssct.SSCTInitiateArg_element",
14555 FT_NONE, BASE_NONE, NULL, 0,
14556 NULL, HFILL }},
14557 { &hf_qsig_ssct_qsig_ssct_DummyRes_PDU,
14558 { "DummyRes", "qsig.ssct.DummyRes",
14559 FT_UINT32, BASE_DEC, VALS(qsig_ssct_DummyRes_vals), 0,
14560 NULL, HFILL }},
14561 { &hf_qsig_ssct_qsig_ssct_SSCTSetupArg_PDU,
14562 { "SSCTSetupArg", "qsig.ssct.SSCTSetupArg_element",
14563 FT_NONE, BASE_NONE, NULL, 0,
14564 NULL, HFILL }},
14565 { &hf_qsig_ssct_qsig_ssct_DummyArg_PDU,
14566 { "DummyArg", "qsig.ssct.DummyArg",
14567 FT_UINT32, BASE_DEC, VALS(qsig_ssct_DummyArg_vals), 0,
14568 NULL, HFILL }},
14569 { &hf_qsig_ssct_qsig_ssct_SSCTDigitInfoArg_PDU,
14570 { "SSCTDigitInfoArg", "qsig.ssct.SSCTDigitInfoArg_element",
14571 FT_NONE, BASE_NONE, NULL, 0,
14572 NULL, HFILL }},
14573 { &hf_qsig_ssct_qsig_ssct_Extension_PDU,
14574 { "Extension", "qsig.ssct.Extension_element",
14575 FT_NONE, BASE_NONE, NULL, 0,
14576 NULL, HFILL }},
14577 { &hf_qsig_ssct_null,
14578 { "null", "qsig.ssct.null_element",
14579 FT_NONE, BASE_NONE, NULL, 0,
14580 NULL, HFILL }},
14581 { &hf_qsig_ssct_single,
14582 { "single", "qsig.ssct.single_element",
14583 FT_NONE, BASE_NONE, NULL, 0,
14584 "Extension", HFILL }},
14585 { &hf_qsig_ssct_multiple,
14586 { "multiple", "qsig.ssct.multiple",
14587 FT_UINT32, BASE_DEC, NULL, 0,
14588 "SEQUENCE_OF_Extension", HFILL }},
14589 { &hf_qsig_ssct_multiple_item,
14590 { "Extension", "qsig.ssct.Extension_element",
14591 FT_NONE, BASE_NONE, NULL, 0,
14592 NULL, HFILL }},
14593 { &hf_qsig_ssct_rerouteingNumber,
14594 { "rerouteingNumber", "qsig.ssct.rerouteingNumber",
14595 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14596 "PartyNumber", HFILL }},
14597 { &hf_qsig_ssct_transferredAddress,
14598 { "transferredAddress", "qsig.ssct.transferredAddress",
14599 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
14600 "PresentedAddressScreened", HFILL }},
14601 { &hf_qsig_ssct_awaitConnect,
14602 { "awaitConnect", "qsig.ssct.awaitConnect",
14603 FT_BOOLEAN, BASE_NONE, NULL, 0,
14604 NULL, HFILL }},
14605 { &hf_qsig_ssct_transferredName,
14606 { "transferredName", "qsig.ssct.transferredName",
14607 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14608 "Name", HFILL }},
14609 { &hf_qsig_ssct_transferringAddress,
14610 { "transferringAddress", "qsig.ssct.transferringAddress",
14611 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressScreened_vals), 0,
14612 "PresentedAddressScreened", HFILL }},
14613 { &hf_qsig_ssct_transferringName,
14614 { "transferringName", "qsig.ssct.transferringName",
14615 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14616 "Name", HFILL }},
14617 { &hf_qsig_ssct_argumentExtensionSSCTI,
14618 { "argumentExtension", "qsig.ssct.argumentExtension",
14619 FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTIargumentExtension_vals), 0,
14620 "SSCTIargumentExtension", HFILL }},
14621 { &hf_qsig_ssct_argumentExtensionSSCTS,
14622 { "argumentExtension", "qsig.ssct.argumentExtension",
14623 FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTSargumentExtension_vals), 0,
14624 "SSCTSargumentExtension", HFILL }},
14625 { &hf_qsig_ssct_reroutingNumber,
14626 { "reroutingNumber", "qsig.ssct.reroutingNumber",
14627 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14628 "PartyNumber", HFILL }},
14629 { &hf_qsig_ssct_sendingComplete,
14630 { "sendingComplete", "qsig.ssct.sendingComplete_element",
14631 FT_NONE, BASE_NONE, NULL, 0,
14632 NULL, HFILL }},
14633 { &hf_qsig_ssct_argumentExtensionSSCTD,
14634 { "argumentExtension", "qsig.ssct.argumentExtension",
14635 FT_UINT32, BASE_DEC, VALS(qsig_ssct_SSCTDargumentExtension_vals), 0,
14636 "SSCTDargumentExtension", HFILL }},
14638 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
14640 { &hf_qsig_wtmlr_qsig_wtmlr_LocUpdArg_PDU,
14641 { "LocUpdArg", "qsig.wtmlr.LocUpdArg_element",
14642 FT_NONE, BASE_NONE, NULL, 0,
14643 NULL, HFILL }},
14644 { &hf_qsig_wtmlr_qsig_wtmlr_DummyRes_PDU,
14645 { "DummyRes", "qsig.wtmlr.DummyRes",
14646 FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_DummyRes_vals), 0,
14647 NULL, HFILL }},
14648 { &hf_qsig_wtmlr_qsig_wtmlr_LocDelArg_PDU,
14649 { "LocDelArg", "qsig.wtmlr.LocDelArg_element",
14650 FT_NONE, BASE_NONE, NULL, 0,
14651 NULL, HFILL }},
14652 { &hf_qsig_wtmlr_qsig_wtmlr_LocDeRegArg_PDU,
14653 { "LocDeRegArg", "qsig.wtmlr.LocDeRegArg_element",
14654 FT_NONE, BASE_NONE, NULL, 0,
14655 NULL, HFILL }},
14656 { &hf_qsig_wtmlr_qsig_wtmlr_PisnEnqArg_PDU,
14657 { "PisnEnqArg", "qsig.wtmlr.PisnEnqArg_element",
14658 FT_NONE, BASE_NONE, NULL, 0,
14659 NULL, HFILL }},
14660 { &hf_qsig_wtmlr_qsig_wtmlr_PisnEnqRes_PDU,
14661 { "PisnEnqRes", "qsig.wtmlr.PisnEnqRes_element",
14662 FT_NONE, BASE_NONE, NULL, 0,
14663 NULL, HFILL }},
14664 { &hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfArg_PDU,
14665 { "GetRRCInfArg", "qsig.wtmlr.GetRRCInfArg_element",
14666 FT_NONE, BASE_NONE, NULL, 0,
14667 NULL, HFILL }},
14668 { &hf_qsig_wtmlr_qsig_wtmlr_GetRRCInfRes_PDU,
14669 { "GetRRCInfRes", "qsig.wtmlr.GetRRCInfRes_element",
14670 FT_NONE, BASE_NONE, NULL, 0,
14671 NULL, HFILL }},
14672 { &hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckArg_PDU,
14673 { "LocInfoCheckArg", "qsig.wtmlr.LocInfoCheckArg_element",
14674 FT_NONE, BASE_NONE, NULL, 0,
14675 NULL, HFILL }},
14676 { &hf_qsig_wtmlr_qsig_wtmlr_LocInfoCheckRes_PDU,
14677 { "LocInfoCheckRes", "qsig.wtmlr.LocInfoCheckRes_element",
14678 FT_NONE, BASE_NONE, NULL, 0,
14679 NULL, HFILL }},
14680 { &hf_qsig_wtmlr_qsig_wtmlr_Extension_PDU,
14681 { "Extension", "qsig.wtmlr.Extension_element",
14682 FT_NONE, BASE_NONE, NULL, 0,
14683 NULL, HFILL }},
14684 { &hf_qsig_wtmlr_wtmUserId,
14685 { "wtmUserId", "qsig.wtmlr.wtmUserId",
14686 FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_WtmUserId_vals), 0,
14687 NULL, HFILL }},
14688 { &hf_qsig_wtmlr_basicService,
14689 { "basicService", "qsig.wtmlr.basicService",
14690 FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
14691 NULL, HFILL }},
14692 { &hf_qsig_wtmlr_visitPINX,
14693 { "visitPINX", "qsig.wtmlr.visitPINX",
14694 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14695 "PartyNumber", HFILL }},
14696 { &hf_qsig_wtmlr_argExtension,
14697 { "argExtension", "qsig.wtmlr.argExtension",
14698 FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_LrExtension_vals), 0,
14699 "LrExtension", HFILL }},
14700 { &hf_qsig_wtmlr_null,
14701 { "null", "qsig.wtmlr.null_element",
14702 FT_NONE, BASE_NONE, NULL, 0,
14703 NULL, HFILL }},
14704 { &hf_qsig_wtmlr_extension,
14705 { "extension", "qsig.wtmlr.extension_element",
14706 FT_NONE, BASE_NONE, NULL, 0,
14707 NULL, HFILL }},
14708 { &hf_qsig_wtmlr_sequOfExtn,
14709 { "sequOfExtn", "qsig.wtmlr.sequOfExtn",
14710 FT_UINT32, BASE_DEC, NULL, 0,
14711 "SEQUENCE_OF_Extension", HFILL }},
14712 { &hf_qsig_wtmlr_sequOfExtn_item,
14713 { "Extension", "qsig.wtmlr.Extension_element",
14714 FT_NONE, BASE_NONE, NULL, 0,
14715 NULL, HFILL }},
14716 { &hf_qsig_wtmlr_alternativeId,
14717 { "alternativeId", "qsig.wtmlr.alternativeId",
14718 FT_BYTES, BASE_NONE, NULL, 0,
14719 NULL, HFILL }},
14720 { &hf_qsig_wtmlr_resExtension,
14721 { "resExtension", "qsig.wtmlr.resExtension",
14722 FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_LrExtension_vals), 0,
14723 "LrExtension", HFILL }},
14724 { &hf_qsig_wtmlr_rrClass,
14725 { "rrClass", "qsig.wtmlr.rrClass",
14726 FT_UINT32, BASE_DEC, NULL, 0,
14727 NULL, HFILL }},
14728 { &hf_qsig_wtmlr_checkResult,
14729 { "checkResult", "qsig.wtmlr.checkResult",
14730 FT_UINT32, BASE_DEC, VALS(qsig_wtmlr_CheckResult_vals), 0,
14731 NULL, HFILL }},
14732 { &hf_qsig_wtmlr_pisnNumber,
14733 { "pisnNumber", "qsig.wtmlr.pisnNumber",
14734 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14735 "PartyNumber", HFILL }},
14737 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
14739 { &hf_qsig_wtmch_qsig_wtmch_EnquiryArg_PDU,
14740 { "EnquiryArg", "qsig.wtmch.EnquiryArg_element",
14741 FT_NONE, BASE_NONE, NULL, 0,
14742 NULL, HFILL }},
14743 { &hf_qsig_wtmch_qsig_wtmch_EnquiryRes_PDU,
14744 { "EnquiryRes", "qsig.wtmch.EnquiryRes",
14745 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_EnquiryRes_vals), 0,
14746 NULL, HFILL }},
14747 { &hf_qsig_wtmch_qsig_wtmch_DivertArg_PDU,
14748 { "DivertArg", "qsig.wtmch.DivertArg_element",
14749 FT_NONE, BASE_NONE, NULL, 0,
14750 NULL, HFILL }},
14751 { &hf_qsig_wtmch_qsig_wtmch_DummyRes_PDU,
14752 { "DummyRes", "qsig.wtmch.DummyRes",
14753 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_DummyRes_vals), 0,
14754 NULL, HFILL }},
14755 { &hf_qsig_wtmch_qsig_wtmch_InformArg_PDU,
14756 { "InformArg", "qsig.wtmch.InformArg_element",
14757 FT_NONE, BASE_NONE, NULL, 0,
14758 NULL, HFILL }},
14759 { &hf_qsig_wtmch_qsig_wtmch_WtmoArg_PDU,
14760 { "WtmoArg", "qsig.wtmch.WtmoArg_element",
14761 FT_NONE, BASE_NONE, NULL, 0,
14762 NULL, HFILL }},
14763 { &hf_qsig_wtmch_qsig_wtmch_Extension_PDU,
14764 { "Extension", "qsig.wtmch.Extension_element",
14765 FT_NONE, BASE_NONE, NULL, 0,
14766 NULL, HFILL }},
14767 { &hf_qsig_wtmch_pisnNumber,
14768 { "pisnNumber", "qsig.wtmch.pisnNumber",
14769 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14770 "PartyNumber", HFILL }},
14771 { &hf_qsig_wtmch_qSIGInfoElement,
14772 { "qSIGInfoElement", "qsig.wtmch.qSIGInfoElement",
14773 FT_BYTES, BASE_NONE, NULL, 0,
14774 "PSS1InformationElement", HFILL }},
14775 { &hf_qsig_wtmch_argExtension,
14776 { "argExtension", "qsig.wtmch.argExtension",
14777 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_WtmiExtension_vals), 0,
14778 "WtmiExtension", HFILL }},
14779 { &hf_qsig_wtmch_visitPINX,
14780 { "visitPINX", "qsig.wtmch.visitPINX",
14781 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14782 "PartyNumber", HFILL }},
14783 { &hf_qsig_wtmch_callingNumber,
14784 { "callingNumber", "qsig.wtmch.callingNumber",
14785 FT_UINT32, BASE_DEC, VALS(qsig_PresentedNumberScreened_vals), 0,
14786 "PresentedNumberScreened", HFILL }},
14787 { &hf_qsig_wtmch_wtmIdentity,
14788 { "wtmIdentity", "qsig.wtmch.wtmIdentity",
14789 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_WtmIdentity_vals), 0,
14790 NULL, HFILL }},
14791 { &hf_qsig_wtmch_callingUserSub,
14792 { "callingUserSub", "qsig.wtmch.callingUserSub",
14793 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14794 "PartySubaddress", HFILL }},
14795 { &hf_qsig_wtmch_callingName,
14796 { "callingName", "qsig.wtmch.callingName",
14797 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14798 "Name", HFILL }},
14799 { &hf_qsig_wtmch_wtmUserSub,
14800 { "wtmUserSub", "qsig.wtmch.wtmUserSub",
14801 FT_UINT32, BASE_DEC, VALS(qsig_PartySubaddress_vals), 0,
14802 "PartySubaddress", HFILL }},
14803 { &hf_qsig_wtmch_currLocation,
14804 { "currLocation", "qsig.wtmch.currLocation_element",
14805 FT_NONE, BASE_NONE, NULL, 0,
14806 NULL, HFILL }},
14807 { &hf_qsig_wtmch_cfuActivated,
14808 { "cfuActivated", "qsig.wtmch.cfuActivated_element",
14809 FT_NONE, BASE_NONE, NULL, 0,
14810 NULL, HFILL }},
14811 { &hf_qsig_wtmch_divToAddress,
14812 { "divToAddress", "qsig.wtmch.divToAddress_element",
14813 FT_NONE, BASE_NONE, NULL, 0,
14814 "Address", HFILL }},
14815 { &hf_qsig_wtmch_divOptions,
14816 { "divOptions", "qsig.wtmch.divOptions",
14817 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_SubscriptionOption_vals), 0,
14818 "SubscriptionOption", HFILL }},
14819 { &hf_qsig_wtmch_wtmName,
14820 { "wtmName", "qsig.wtmch.wtmName",
14821 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
14822 "Name", HFILL }},
14823 { &hf_qsig_wtmch_null,
14824 { "null", "qsig.wtmch.null_element",
14825 FT_NONE, BASE_NONE, NULL, 0,
14826 NULL, HFILL }},
14827 { &hf_qsig_wtmch_extension,
14828 { "extension", "qsig.wtmch.extension_element",
14829 FT_NONE, BASE_NONE, NULL, 0,
14830 NULL, HFILL }},
14831 { &hf_qsig_wtmch_sequOfExtn,
14832 { "sequOfExtn", "qsig.wtmch.sequOfExtn",
14833 FT_UINT32, BASE_DEC, NULL, 0,
14834 "SEQUENCE_OF_Extension", HFILL }},
14835 { &hf_qsig_wtmch_sequOfExtn_item,
14836 { "Extension", "qsig.wtmch.Extension_element",
14837 FT_NONE, BASE_NONE, NULL, 0,
14838 NULL, HFILL }},
14839 { &hf_qsig_wtmch_alternativeId,
14840 { "alternativeId", "qsig.wtmch.alternativeId",
14841 FT_BYTES, BASE_NONE, NULL, 0,
14842 NULL, HFILL }},
14843 { &hf_qsig_wtmch_both,
14844 { "both", "qsig.wtmch.both_element",
14845 FT_NONE, BASE_NONE, NULL, 0,
14846 NULL, HFILL }},
14847 { &hf_qsig_wtmch_destinationNumber,
14848 { "destinationNumber", "qsig.wtmch.destinationNumber",
14849 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14850 "PartyNumber", HFILL }},
14851 { &hf_qsig_wtmch_sendingComplete,
14852 { "sendingComplete", "qsig.wtmch.sendingComplete_element",
14853 FT_NONE, BASE_NONE, NULL, 0,
14854 NULL, HFILL }},
14855 { &hf_qsig_wtmch_wtmoaextension,
14856 { "extension", "qsig.wtmch.extension",
14857 FT_UINT32, BASE_DEC, VALS(qsig_wtmch_T_wtmoaextension_vals), 0,
14858 "T_wtmoaextension", HFILL }},
14859 { &hf_qsig_wtmch_single,
14860 { "single", "qsig.wtmch.single_element",
14861 FT_NONE, BASE_NONE, NULL, 0,
14862 "Extension", HFILL }},
14863 { &hf_qsig_wtmch_multiple,
14864 { "multiple", "qsig.wtmch.multiple",
14865 FT_UINT32, BASE_DEC, NULL, 0,
14866 "SEQUENCE_OF_Extension", HFILL }},
14867 { &hf_qsig_wtmch_multiple_item,
14868 { "Extension", "qsig.wtmch.Extension_element",
14869 FT_NONE, BASE_NONE, NULL, 0,
14870 NULL, HFILL }},
14872 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
14874 { &hf_qsig_wtmau_qsig_wtmau_AuthWtmArg_PDU,
14875 { "AuthWtmArg", "qsig.wtmau.AuthWtmArg_element",
14876 FT_NONE, BASE_NONE, NULL, 0,
14877 NULL, HFILL }},
14878 { &hf_qsig_wtmau_qsig_wtmau_AuthWtmRes_PDU,
14879 { "AuthWtmRes", "qsig.wtmau.AuthWtmRes_element",
14880 FT_NONE, BASE_NONE, NULL, 0,
14881 NULL, HFILL }},
14882 { &hf_qsig_wtmau_qsig_wtmau_WtatParamArg_PDU,
14883 { "WtatParamArg", "qsig.wtmau.WtatParamArg_element",
14884 FT_NONE, BASE_NONE, NULL, 0,
14885 NULL, HFILL }},
14886 { &hf_qsig_wtmau_qsig_wtmau_WtatParamRes_PDU,
14887 { "WtatParamRes", "qsig.wtmau.WtatParamRes_element",
14888 FT_NONE, BASE_NONE, NULL, 0,
14889 NULL, HFILL }},
14890 { &hf_qsig_wtmau_qsig_wtmau_WtanParamArg_PDU,
14891 { "WtanParamArg", "qsig.wtmau.WtanParamArg_element",
14892 FT_NONE, BASE_NONE, NULL, 0,
14893 NULL, HFILL }},
14894 { &hf_qsig_wtmau_qsig_wtmau_WtanParamRes_PDU,
14895 { "WtanParamRes", "qsig.wtmau.WtanParamRes_element",
14896 FT_NONE, BASE_NONE, NULL, 0,
14897 NULL, HFILL }},
14898 { &hf_qsig_wtmau_qsig_wtmau_ARG_transferAuthParam_PDU,
14899 { "ARG-transferAuthParam", "qsig.wtmau.ARG_transferAuthParam_element",
14900 FT_NONE, BASE_NONE, NULL, 0,
14901 NULL, HFILL }},
14902 { &hf_qsig_wtmau_qsig_wtmau_Extension_PDU,
14903 { "Extension", "qsig.wtmau.Extension_element",
14904 FT_NONE, BASE_NONE, NULL, 0,
14905 NULL, HFILL }},
14906 { &hf_qsig_wtmau_wtmUserId,
14907 { "wtmUserId", "qsig.wtmau.wtmUserId",
14908 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_WtmUserId_vals), 0,
14909 NULL, HFILL }},
14910 { &hf_qsig_wtmau_calcWtatInfo,
14911 { "calcWtatInfo", "qsig.wtmau.calcWtatInfo",
14912 FT_UINT32, BASE_DEC, NULL, 0,
14913 NULL, HFILL }},
14914 { &hf_qsig_wtmau_dummyExtension,
14915 { "dummyExtension", "qsig.wtmau.dummyExtension",
14916 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_DummyExtension_vals), 0,
14917 NULL, HFILL }},
14918 { &hf_qsig_wtmau_autWtmResValue,
14919 { "autWtmResValue", "qsig.wtmau.autWtmResValue",
14920 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_T_autWtmResValue_vals), 0,
14921 NULL, HFILL }},
14922 { &hf_qsig_wtmau_canCompute,
14923 { "canCompute", "qsig.wtmau.canCompute_element",
14924 FT_NONE, BASE_NONE, NULL, 0,
14925 NULL, HFILL }},
14926 { &hf_qsig_wtmau_authChallenge,
14927 { "authChallenge", "qsig.wtmau.authChallenge",
14928 FT_BYTES, BASE_NONE, NULL, 0,
14929 NULL, HFILL }},
14930 { &hf_qsig_wtmau_wtatParamInfo,
14931 { "wtatParamInfo", "qsig.wtmau.wtatParamInfo_element",
14932 FT_NONE, BASE_NONE, NULL, 0,
14933 NULL, HFILL }},
14934 { &hf_qsig_wtmau_authAlgorithm,
14935 { "authAlgorithm", "qsig.wtmau.authAlgorithm_element",
14936 FT_NONE, BASE_NONE, NULL, 0,
14937 NULL, HFILL }},
14938 { &hf_qsig_wtmau_pisnNumber,
14939 { "pisnNumber", "qsig.wtmau.pisnNumber",
14940 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
14941 "PartyNumber", HFILL }},
14942 { &hf_qsig_wtmau_alternativeId,
14943 { "alternativeId", "qsig.wtmau.alternativeId",
14944 FT_BYTES, BASE_NONE, NULL, 0,
14945 NULL, HFILL }},
14946 { &hf_qsig_wtmau_wtanParamInfo,
14947 { "wtanParamInfo", "qsig.wtmau.wtanParamInfo",
14948 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_WtanParamInfo_vals), 0,
14949 NULL, HFILL }},
14950 { &hf_qsig_wtmau_wtatParamInfoChoice,
14951 { "wtatParamInfoChoice", "qsig.wtmau.wtatParamInfoChoice",
14952 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_T_wtatParamInfoChoice_vals), 0,
14953 NULL, HFILL }},
14954 { &hf_qsig_wtmau_authSessionKeyInfo,
14955 { "authSessionKeyInfo", "qsig.wtmau.authSessionKeyInfo_element",
14956 FT_NONE, BASE_NONE, NULL, 0,
14957 NULL, HFILL }},
14958 { &hf_qsig_wtmau_authKey,
14959 { "authKey", "qsig.wtmau.authKey",
14960 FT_BYTES, BASE_NONE, NULL, 0,
14961 NULL, HFILL }},
14962 { &hf_qsig_wtmau_challLen,
14963 { "challLen", "qsig.wtmau.challLen",
14964 FT_UINT32, BASE_DEC, NULL, 0,
14965 "INTEGER_1_8", HFILL }},
14966 { &hf_qsig_wtmau_calcWtanInfo,
14967 { "calcWtanInfo", "qsig.wtmau.calcWtanInfo_element",
14968 FT_NONE, BASE_NONE, NULL, 0,
14969 NULL, HFILL }},
14970 { &hf_qsig_wtmau_authSessionKey,
14971 { "authSessionKey", "qsig.wtmau.authSessionKey",
14972 FT_BYTES, BASE_NONE, NULL, 0,
14973 NULL, HFILL }},
14974 { &hf_qsig_wtmau_calculationParam,
14975 { "calculationParam", "qsig.wtmau.calculationParam",
14976 FT_BYTES, BASE_NONE, NULL, 0,
14977 NULL, HFILL }},
14978 { &hf_qsig_wtmau_CalcWtatInfo_item,
14979 { "CalcWtatInfoUnit", "qsig.wtmau.CalcWtatInfoUnit_element",
14980 FT_NONE, BASE_NONE, NULL, 0,
14981 NULL, HFILL }},
14982 { &hf_qsig_wtmau_authResponse,
14983 { "authResponse", "qsig.wtmau.authResponse",
14984 FT_BYTES, BASE_NONE, NULL, 0,
14985 NULL, HFILL }},
14986 { &hf_qsig_wtmau_derivedCipherKey,
14987 { "derivedCipherKey", "qsig.wtmau.derivedCipherKey",
14988 FT_BYTES, BASE_NONE, NULL, 0,
14989 NULL, HFILL }},
14990 { &hf_qsig_wtmau_extension,
14991 { "extension", "qsig.wtmau.extension_element",
14992 FT_NONE, BASE_NONE, NULL, 0,
14993 NULL, HFILL }},
14994 { &hf_qsig_wtmau_sequOfExtn,
14995 { "sequOfExtn", "qsig.wtmau.sequOfExtn",
14996 FT_UINT32, BASE_DEC, NULL, 0,
14997 "SEQUENCE_OF_Extension", HFILL }},
14998 { &hf_qsig_wtmau_sequOfExtn_item,
14999 { "Extension", "qsig.wtmau.Extension_element",
15000 FT_NONE, BASE_NONE, NULL, 0,
15001 NULL, HFILL }},
15002 { &hf_qsig_wtmau_authAlg,
15003 { "authAlg", "qsig.wtmau.authAlg",
15004 FT_UINT32, BASE_DEC, VALS(qsig_wtmau_DefinedIDs_vals), 0,
15005 "DefinedIDs", HFILL }},
15006 { &hf_qsig_wtmau_param,
15007 { "param", "qsig.wtmau.param_element",
15008 FT_NONE, BASE_NONE, NULL, 0,
15009 NULL, HFILL }},
15011 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
15013 { &hf_qsig_sd_qsig_sd_DisplayArg_PDU,
15014 { "DisplayArg", "qsig.sd.DisplayArg_element",
15015 FT_NONE, BASE_NONE, NULL, 0,
15016 NULL, HFILL }},
15017 { &hf_qsig_sd_qsig_sd_KeypadArg_PDU,
15018 { "KeypadArg", "qsig.sd.KeypadArg_element",
15019 FT_NONE, BASE_NONE, NULL, 0,
15020 NULL, HFILL }},
15021 { &hf_qsig_sd_qsig_sd_Extension_PDU,
15022 { "Extension", "qsig.sd.Extension_element",
15023 FT_NONE, BASE_NONE, NULL, 0,
15024 NULL, HFILL }},
15025 { &hf_qsig_sd_displayString,
15026 { "displayString", "qsig.sd.displayString",
15027 FT_UINT32, BASE_DEC, VALS(qsig_sd_DisplayString_vals), 0,
15028 NULL, HFILL }},
15029 { &hf_qsig_sd_sdextension,
15030 { "extension", "qsig.sd.extension",
15031 FT_UINT32, BASE_DEC, VALS(qsig_sd_SDExtension_vals), 0,
15032 "SDExtension", HFILL }},
15033 { &hf_qsig_sd_displayStringNormal,
15034 { "displayStringNormal", "qsig.sd.displayStringNormal",
15035 FT_BYTES, BASE_NONE, NULL, 0,
15036 "BMPStringNormal", HFILL }},
15037 { &hf_qsig_sd_displayStringExtended,
15038 { "displayStringExtended", "qsig.sd.displayStringExtended",
15039 FT_BYTES, BASE_NONE, NULL, 0,
15040 "BMPStringExtended", HFILL }},
15041 { &hf_qsig_sd_keypadString,
15042 { "keypadString", "qsig.sd.keypadString",
15043 FT_BYTES, BASE_NONE, NULL, 0,
15044 "BMPStringNormal", HFILL }},
15045 { &hf_qsig_sd_extension,
15046 { "extension", "qsig.sd.extension_element",
15047 FT_NONE, BASE_NONE, NULL, 0,
15048 NULL, HFILL }},
15049 { &hf_qsig_sd_multipleExtension,
15050 { "multipleExtension", "qsig.sd.multipleExtension",
15051 FT_UINT32, BASE_DEC, NULL, 0,
15052 "SEQUENCE_OF_Extension", HFILL }},
15053 { &hf_qsig_sd_multipleExtension_item,
15054 { "Extension", "qsig.sd.Extension_element",
15055 FT_NONE, BASE_NONE, NULL, 0,
15056 NULL, HFILL }},
15058 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
15060 { &hf_qsig_cidl_qsig_cidl_CallIdentificationAssignArg_PDU,
15061 { "CallIdentificationAssignArg", "qsig.cidl.CallIdentificationAssignArg_element",
15062 FT_NONE, BASE_NONE, NULL, 0,
15063 NULL, HFILL }},
15064 { &hf_qsig_cidl_qsig_cidl_CallIdentificationUpdateArg_PDU,
15065 { "CallIdentificationUpdateArg", "qsig.cidl.CallIdentificationUpdateArg_element",
15066 FT_NONE, BASE_NONE, NULL, 0,
15067 NULL, HFILL }},
15068 { &hf_qsig_cidl_globalCallID,
15069 { "globalCallID", "qsig.cidl.globalCallID_element",
15070 FT_NONE, BASE_NONE, NULL, 0,
15071 "CallIdentificationData", HFILL }},
15072 { &hf_qsig_cidl_threadID,
15073 { "threadID", "qsig.cidl.threadID_element",
15074 FT_NONE, BASE_NONE, NULL, 0,
15075 "CallIdentificationData", HFILL }},
15076 { &hf_qsig_cidl_legID,
15077 { "legID", "qsig.cidl.legID_element",
15078 FT_NONE, BASE_NONE, NULL, 0,
15079 "CallIdentificationData", HFILL }},
15080 { &hf_qsig_cidl_extensiont,
15081 { "extension", "qsig.cidl.extension",
15082 FT_UINT32, BASE_DEC, VALS(qsig_cidl_ExtensionType_vals), 0,
15083 "ExtensionType", HFILL }},
15084 { &hf_qsig_cidl_switchingSubDomainName,
15085 { "switchingSubDomainName", "qsig.cidl.switchingSubDomainName",
15086 FT_STRING, BASE_NONE, NULL, 0,
15087 NULL, HFILL }},
15088 { &hf_qsig_cidl_linkageID,
15089 { "linkageID", "qsig.cidl.linkageID",
15090 FT_UINT32, BASE_DEC, VALS(qsig_cidl_T_linkageID_vals), 0,
15091 NULL, HFILL }},
15092 { &hf_qsig_cidl_subDomainID,
15093 { "subDomainID", "qsig.cidl.subDomainID",
15094 FT_BYTES, BASE_NONE, NULL, 0,
15095 NULL, HFILL }},
15096 { &hf_qsig_cidl_globallyUniqueID,
15097 { "globallyUniqueID", "qsig.cidl.globallyUniqueID",
15098 FT_BYTES, BASE_NONE, NULL, 0,
15099 NULL, HFILL }},
15100 { &hf_qsig_cidl_timeStamp,
15101 { "timeStamp", "qsig.cidl.timeStamp",
15102 FT_STRING, BASE_NONE, NULL, 0,
15103 NULL, HFILL }},
15104 { &hf_qsig_cidl_extension,
15105 { "extension", "qsig.cidl.extension_element",
15106 FT_NONE, BASE_NONE, NULL, 0,
15107 NULL, HFILL }},
15108 { &hf_qsig_cidl_sequenceOfExt,
15109 { "sequenceOfExt", "qsig.cidl.sequenceOfExt",
15110 FT_UINT32, BASE_DEC, NULL, 0,
15111 "SEQUENCE_OF_Extension", HFILL }},
15112 { &hf_qsig_cidl_sequenceOfExt_item,
15113 { "Extension", "qsig.cidl.Extension_element",
15114 FT_NONE, BASE_NONE, NULL, 0,
15115 NULL, HFILL }},
15117 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
15119 { &hf_qsig_sms_qsig_sms_SmsSubmitArg_PDU,
15120 { "SmsSubmitArg", "qsig.sms.SmsSubmitArg_element",
15121 FT_NONE, BASE_NONE, NULL, 0,
15122 NULL, HFILL }},
15123 { &hf_qsig_sms_qsig_sms_SmsSubmitRes_PDU,
15124 { "SmsSubmitRes", "qsig.sms.SmsSubmitRes_element",
15125 FT_NONE, BASE_NONE, NULL, 0,
15126 NULL, HFILL }},
15127 { &hf_qsig_sms_qsig_sms_SmsDeliverArg_PDU,
15128 { "SmsDeliverArg", "qsig.sms.SmsDeliverArg_element",
15129 FT_NONE, BASE_NONE, NULL, 0,
15130 NULL, HFILL }},
15131 { &hf_qsig_sms_qsig_sms_SmsDeliverRes_PDU,
15132 { "SmsDeliverRes", "qsig.sms.SmsDeliverRes_element",
15133 FT_NONE, BASE_NONE, NULL, 0,
15134 NULL, HFILL }},
15135 { &hf_qsig_sms_qsig_sms_SmsStatusReportArg_PDU,
15136 { "SmsStatusReportArg", "qsig.sms.SmsStatusReportArg_element",
15137 FT_NONE, BASE_NONE, NULL, 0,
15138 NULL, HFILL }},
15139 { &hf_qsig_sms_qsig_sms_SmsStatusReportRes_PDU,
15140 { "SmsStatusReportRes", "qsig.sms.SmsStatusReportRes_element",
15141 FT_NONE, BASE_NONE, NULL, 0,
15142 NULL, HFILL }},
15143 { &hf_qsig_sms_qsig_sms_SmsCommandArg_PDU,
15144 { "SmsCommandArg", "qsig.sms.SmsCommandArg_element",
15145 FT_NONE, BASE_NONE, NULL, 0,
15146 NULL, HFILL }},
15147 { &hf_qsig_sms_qsig_sms_SmsCommandRes_PDU,
15148 { "SmsCommandRes", "qsig.sms.SmsCommandRes_element",
15149 FT_NONE, BASE_NONE, NULL, 0,
15150 NULL, HFILL }},
15151 { &hf_qsig_sms_qsig_sms_ScAlertArg_PDU,
15152 { "ScAlertArg", "qsig.sms.ScAlertArg_element",
15153 FT_NONE, BASE_NONE, NULL, 0,
15154 NULL, HFILL }},
15155 { &hf_qsig_sms_qsig_sms_DummyRes_PDU,
15156 { "DummyRes", "qsig.sms.DummyRes",
15157 FT_UINT32, BASE_DEC, VALS(qsig_sms_DummyRes_vals), 0,
15158 NULL, HFILL }},
15159 { &hf_qsig_sms_qsig_sms_PAR_smsDeliverError_PDU,
15160 { "PAR-smsDeliverError", "qsig.sms.PAR_smsDeliverError_element",
15161 FT_NONE, BASE_NONE, NULL, 0,
15162 NULL, HFILL }},
15163 { &hf_qsig_sms_qsig_sms_PAR_smsSubmitError_PDU,
15164 { "PAR-smsSubmitError", "qsig.sms.PAR_smsSubmitError_element",
15165 FT_NONE, BASE_NONE, NULL, 0,
15166 NULL, HFILL }},
15167 { &hf_qsig_sms_qsig_sms_PAR_smsStatusReportError_PDU,
15168 { "PAR-smsStatusReportError", "qsig.sms.PAR_smsStatusReportError_element",
15169 FT_NONE, BASE_NONE, NULL, 0,
15170 NULL, HFILL }},
15171 { &hf_qsig_sms_qsig_sms_PAR_smsCommandError_PDU,
15172 { "PAR-smsCommandError", "qsig.sms.PAR_smsCommandError_element",
15173 FT_NONE, BASE_NONE, NULL, 0,
15174 NULL, HFILL }},
15175 { &hf_qsig_sms_qsig_sms_SmsExtension_PDU,
15176 { "SmsExtension", "qsig.sms.SmsExtension",
15177 FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsExtension_vals), 0,
15178 NULL, HFILL }},
15179 { &hf_qsig_sms_destinationAddress,
15180 { "destinationAddress", "qsig.sms.destinationAddress",
15181 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15182 "PartyNumber", HFILL }},
15183 { &hf_qsig_sms_originatingAddress,
15184 { "originatingAddress", "qsig.sms.originatingAddress",
15185 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15186 "PartyNumber", HFILL }},
15187 { &hf_qsig_sms_messageReference,
15188 { "messageReference", "qsig.sms.messageReference",
15189 FT_UINT32, BASE_DEC, NULL, 0,
15190 NULL, HFILL }},
15191 { &hf_qsig_sms_smSubmitParameter,
15192 { "smSubmitParameter", "qsig.sms.smSubmitParameter_element",
15193 FT_NONE, BASE_NONE, NULL, 0,
15194 NULL, HFILL }},
15195 { &hf_qsig_sms_userData,
15196 { "userData", "qsig.sms.userData_element",
15197 FT_NONE, BASE_NONE, NULL, 0,
15198 NULL, HFILL }},
15199 { &hf_qsig_sms_smsExtension,
15200 { "smsExtension", "qsig.sms.smsExtension",
15201 FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsExtension_vals), 0,
15202 NULL, HFILL }},
15203 { &hf_qsig_sms_serviceCentreTimeStamp,
15204 { "serviceCentreTimeStamp", "qsig.sms.serviceCentreTimeStamp",
15205 FT_STRING, BASE_NONE, NULL, 0,
15206 NULL, HFILL }},
15207 { &hf_qsig_sms_protocolIdentifier,
15208 { "protocolIdentifier", "qsig.sms.protocolIdentifier",
15209 FT_UINT32, BASE_DEC, NULL, 0,
15210 NULL, HFILL }},
15211 { &hf_qsig_sms_originatingName,
15212 { "originatingName", "qsig.sms.originatingName",
15213 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15214 "Name", HFILL }},
15215 { &hf_qsig_sms_smDeliverParameter,
15216 { "smDeliverParameter", "qsig.sms.smDeliverParameter_element",
15217 FT_NONE, BASE_NONE, NULL, 0,
15218 NULL, HFILL }},
15219 { &hf_qsig_sms_smsDeliverResponseChoice,
15220 { "smsDeliverResponseChoice", "qsig.sms.smsDeliverResponseChoice",
15221 FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsDeliverResChoice_vals), 0,
15222 "SmsDeliverResChoice", HFILL }},
15223 { &hf_qsig_sms_dischargeTime,
15224 { "dischargeTime", "qsig.sms.dischargeTime",
15225 FT_STRING, BASE_NONE, NULL, 0,
15226 NULL, HFILL }},
15227 { &hf_qsig_sms_recipientAddress,
15228 { "recipientAddress", "qsig.sms.recipientAddress",
15229 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15230 "PartyNumber", HFILL }},
15231 { &hf_qsig_sms_recipientName,
15232 { "recipientName", "qsig.sms.recipientName",
15233 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15234 "Name", HFILL }},
15235 { &hf_qsig_sms_status,
15236 { "status", "qsig.sms.status",
15237 FT_UINT32, BASE_DEC, NULL, 0,
15238 NULL, HFILL }},
15239 { &hf_qsig_sms_priority,
15240 { "priority", "qsig.sms.priority",
15241 FT_BOOLEAN, BASE_NONE, NULL, 0,
15242 "BOOLEAN", HFILL }},
15243 { &hf_qsig_sms_moreMessagesToSend,
15244 { "moreMessagesToSend", "qsig.sms.moreMessagesToSend",
15245 FT_BOOLEAN, BASE_NONE, NULL, 0,
15246 "BOOLEAN", HFILL }},
15247 { &hf_qsig_sms_statusReportQualifier,
15248 { "statusReportQualifier", "qsig.sms.statusReportQualifier",
15249 FT_BOOLEAN, BASE_NONE, NULL, 0,
15250 "BOOLEAN", HFILL }},
15251 { &hf_qsig_sms_smsStatusReportResponseChoice,
15252 { "smsStatusReportResponseChoice", "qsig.sms.smsStatusReportResponseChoice",
15253 FT_UINT32, BASE_DEC, VALS(qsig_sms_SmsStatusReportResponseChoice_vals), 0,
15254 NULL, HFILL }},
15255 { &hf_qsig_sms_messageNumber,
15256 { "messageNumber", "qsig.sms.messageNumber",
15257 FT_UINT32, BASE_DEC, NULL, 0,
15258 "MessageReference", HFILL }},
15259 { &hf_qsig_sms_commandType,
15260 { "commandType", "qsig.sms.commandType",
15261 FT_UINT32, BASE_DEC, VALS(qsig_sms_CommandType_vals), 0,
15262 NULL, HFILL }},
15263 { &hf_qsig_sms_commandData,
15264 { "commandData", "qsig.sms.commandData",
15265 FT_BYTES, BASE_NONE, NULL, 0,
15266 NULL, HFILL }},
15267 { &hf_qsig_sms_statusReportRequest,
15268 { "statusReportRequest", "qsig.sms.statusReportRequest",
15269 FT_BOOLEAN, BASE_NONE, NULL, 0,
15270 "BOOLEAN", HFILL }},
15271 { &hf_qsig_sms_null,
15272 { "null", "qsig.sms.null_element",
15273 FT_NONE, BASE_NONE, NULL, 0,
15274 NULL, HFILL }},
15275 { &hf_qsig_sms_validityPeriod,
15276 { "validityPeriod", "qsig.sms.validityPeriod",
15277 FT_UINT32, BASE_DEC, VALS(qsig_sms_ValidityPeriod_vals), 0,
15278 NULL, HFILL }},
15279 { &hf_qsig_sms_replyPath,
15280 { "replyPath", "qsig.sms.replyPath",
15281 FT_BOOLEAN, BASE_NONE, NULL, 0,
15282 "BOOLEAN", HFILL }},
15283 { &hf_qsig_sms_rejectDuplicates,
15284 { "rejectDuplicates", "qsig.sms.rejectDuplicates",
15285 FT_BOOLEAN, BASE_NONE, NULL, 0,
15286 "BOOLEAN", HFILL }},
15287 { &hf_qsig_sms_statusReportIndication,
15288 { "statusReportIndication", "qsig.sms.statusReportIndication",
15289 FT_BOOLEAN, BASE_NONE, NULL, 0,
15290 "BOOLEAN", HFILL }},
15291 { &hf_qsig_sms_resChoiceSeq,
15292 { "resChoiceSeq", "qsig.sms.resChoiceSeq_element",
15293 FT_NONE, BASE_NONE, NULL, 0,
15294 NULL, HFILL }},
15295 { &hf_qsig_sms_single,
15296 { "single", "qsig.sms.single_element",
15297 FT_NONE, BASE_NONE, NULL, 0,
15298 "Extension", HFILL }},
15299 { &hf_qsig_sms_multiple,
15300 { "multiple", "qsig.sms.multiple",
15301 FT_UINT32, BASE_DEC, NULL, 0,
15302 "SEQUENCE_OF_Extension", HFILL }},
15303 { &hf_qsig_sms_multiple_item,
15304 { "Extension", "qsig.sms.Extension_element",
15305 FT_NONE, BASE_NONE, NULL, 0,
15306 NULL, HFILL }},
15307 { &hf_qsig_sms_validityPeriodRel,
15308 { "validityPeriodRel", "qsig.sms.validityPeriodRel",
15309 FT_UINT32, BASE_DEC, NULL, 0,
15310 NULL, HFILL }},
15311 { &hf_qsig_sms_validityPeriodAbs,
15312 { "validityPeriodAbs", "qsig.sms.validityPeriodAbs",
15313 FT_STRING, BASE_NONE, NULL, 0,
15314 NULL, HFILL }},
15315 { &hf_qsig_sms_validityPeriodEnh,
15316 { "validityPeriodEnh", "qsig.sms.validityPeriodEnh_element",
15317 FT_NONE, BASE_NONE, NULL, 0,
15318 NULL, HFILL }},
15319 { &hf_qsig_sms_singleShotSM,
15320 { "singleShotSM", "qsig.sms.singleShotSM",
15321 FT_BOOLEAN, BASE_NONE, NULL, 0,
15322 "BOOLEAN", HFILL }},
15323 { &hf_qsig_sms_enhancedVP,
15324 { "enhancedVP", "qsig.sms.enhancedVP",
15325 FT_UINT32, BASE_DEC, VALS(qsig_sms_EnhancedVP_vals), 0,
15326 NULL, HFILL }},
15327 { &hf_qsig_sms_validityPeriodSec,
15328 { "validityPeriodSec", "qsig.sms.validityPeriodSec",
15329 FT_UINT32, BASE_DEC, NULL, 0,
15330 "INTEGER_0_255", HFILL }},
15331 { &hf_qsig_sms_validityPeriodSemi,
15332 { "validityPeriodSemi", "qsig.sms.validityPeriodSemi",
15333 FT_BYTES, BASE_NONE, NULL, 0,
15334 NULL, HFILL }},
15335 { &hf_qsig_sms_userDataHeader,
15336 { "userDataHeader", "qsig.sms.userDataHeader",
15337 FT_UINT32, BASE_DEC, NULL, 0,
15338 NULL, HFILL }},
15339 { &hf_qsig_sms_class,
15340 { "class", "qsig.sms.class",
15341 FT_UINT32, BASE_DEC, NULL, 0,
15342 "INTEGER_0_3", HFILL }},
15343 { &hf_qsig_sms_compressed,
15344 { "compressed", "qsig.sms.compressed",
15345 FT_BOOLEAN, BASE_NONE, NULL, 0,
15346 "BOOLEAN", HFILL }},
15347 { &hf_qsig_sms_shortMessageText,
15348 { "shortMessageText", "qsig.sms.shortMessageText_element",
15349 FT_NONE, BASE_NONE, NULL, 0,
15350 NULL, HFILL }},
15351 { &hf_qsig_sms_shortMessageTextType,
15352 { "shortMessageTextType", "qsig.sms.shortMessageTextType",
15353 FT_UINT32, BASE_DEC, VALS(qsig_sms_ShortMessageTextType_vals), 0,
15354 NULL, HFILL }},
15355 { &hf_qsig_sms_shortMessageTextData,
15356 { "shortMessageTextData", "qsig.sms.shortMessageTextData",
15357 FT_BYTES, BASE_NONE, NULL, 0,
15358 NULL, HFILL }},
15359 { &hf_qsig_sms_UserDataHeader_item,
15360 { "UserDataHeaderChoice", "qsig.sms.UserDataHeaderChoice",
15361 FT_UINT32, BASE_DEC, VALS(qsig_sms_UserDataHeaderChoice_vals), 0,
15362 NULL, HFILL }},
15363 { &hf_qsig_sms_smscControlParameterHeader,
15364 { "smscControlParameterHeader", "qsig.sms.smscControlParameterHeader",
15365 FT_BYTES, BASE_NONE, NULL, 0,
15366 NULL, HFILL }},
15367 { &hf_qsig_sms_concatenated8BitSMHeader,
15368 { "concatenated8BitSMHeader", "qsig.sms.concatenated8BitSMHeader_element",
15369 FT_NONE, BASE_NONE, NULL, 0,
15370 NULL, HFILL }},
15371 { &hf_qsig_sms_concatenated16BitSMHeader,
15372 { "concatenated16BitSMHeader", "qsig.sms.concatenated16BitSMHeader_element",
15373 FT_NONE, BASE_NONE, NULL, 0,
15374 NULL, HFILL }},
15375 { &hf_qsig_sms_applicationPort8BitHeader,
15376 { "applicationPort8BitHeader", "qsig.sms.applicationPort8BitHeader_element",
15377 FT_NONE, BASE_NONE, NULL, 0,
15378 NULL, HFILL }},
15379 { &hf_qsig_sms_applicationPort16BitHeader,
15380 { "applicationPort16BitHeader", "qsig.sms.applicationPort16BitHeader_element",
15381 FT_NONE, BASE_NONE, NULL, 0,
15382 NULL, HFILL }},
15383 { &hf_qsig_sms_dataHeaderSourceIndicator,
15384 { "dataHeaderSourceIndicator", "qsig.sms.dataHeaderSourceIndicator",
15385 FT_UINT32, BASE_DEC, VALS(qsig_sms_DataHeaderSourceIndicator_vals), 0,
15386 NULL, HFILL }},
15387 { &hf_qsig_sms_wirelessControlHeader,
15388 { "wirelessControlHeader", "qsig.sms.wirelessControlHeader",
15389 FT_BYTES, BASE_NONE, NULL, 0,
15390 NULL, HFILL }},
15391 { &hf_qsig_sms_genericUserValue,
15392 { "genericUserValue", "qsig.sms.genericUserValue_element",
15393 FT_NONE, BASE_NONE, NULL, 0,
15394 NULL, HFILL }},
15395 { &hf_qsig_sms_concatenated8BitSMReferenceNumber,
15396 { "concatenated8BitSMReferenceNumber", "qsig.sms.concatenated8BitSMReferenceNumber",
15397 FT_UINT32, BASE_DEC, NULL, 0,
15398 "INTEGER_0_255", HFILL }},
15399 { &hf_qsig_sms_maximumNumberOf8BitSMInConcatenatedSM,
15400 { "maximumNumberOf8BitSMInConcatenatedSM", "qsig.sms.maximumNumberOf8BitSMInConcatenatedSM",
15401 FT_UINT32, BASE_DEC, NULL, 0,
15402 "INTEGER_0_255", HFILL }},
15403 { &hf_qsig_sms_sequenceNumberOf8BitSM,
15404 { "sequenceNumberOf8BitSM", "qsig.sms.sequenceNumberOf8BitSM",
15405 FT_UINT32, BASE_DEC, NULL, 0,
15406 "INTEGER_0_255", HFILL }},
15407 { &hf_qsig_sms_concatenated16BitSMReferenceNumber,
15408 { "concatenated16BitSMReferenceNumber", "qsig.sms.concatenated16BitSMReferenceNumber",
15409 FT_UINT32, BASE_DEC, NULL, 0,
15410 "INTEGER_0_65536", HFILL }},
15411 { &hf_qsig_sms_maximumNumberOf16BitSMInConcatenatedSM,
15412 { "maximumNumberOf16BitSMInConcatenatedSM", "qsig.sms.maximumNumberOf16BitSMInConcatenatedSM",
15413 FT_UINT32, BASE_DEC, NULL, 0,
15414 "INTEGER_0_255", HFILL }},
15415 { &hf_qsig_sms_sequenceNumberOf16BitSM,
15416 { "sequenceNumberOf16BitSM", "qsig.sms.sequenceNumberOf16BitSM",
15417 FT_UINT32, BASE_DEC, NULL, 0,
15418 "INTEGER_0_255", HFILL }},
15419 { &hf_qsig_sms_destination8BitPort,
15420 { "destination8BitPort", "qsig.sms.destination8BitPort",
15421 FT_UINT32, BASE_DEC, NULL, 0,
15422 "INTEGER_0_255", HFILL }},
15423 { &hf_qsig_sms_originator8BitPort,
15424 { "originator8BitPort", "qsig.sms.originator8BitPort",
15425 FT_UINT32, BASE_DEC, NULL, 0,
15426 "INTEGER_0_255", HFILL }},
15427 { &hf_qsig_sms_destination16BitPort,
15428 { "destination16BitPort", "qsig.sms.destination16BitPort",
15429 FT_UINT32, BASE_DEC, NULL, 0,
15430 "INTEGER_0_65536", HFILL }},
15431 { &hf_qsig_sms_originator16BitPort,
15432 { "originator16BitPort", "qsig.sms.originator16BitPort",
15433 FT_UINT32, BASE_DEC, NULL, 0,
15434 "INTEGER_0_65536", HFILL }},
15435 { &hf_qsig_sms_parameterValue,
15436 { "parameterValue", "qsig.sms.parameterValue",
15437 FT_UINT32, BASE_DEC, NULL, 0,
15438 "INTEGER_0_255", HFILL }},
15439 { &hf_qsig_sms_genericUserData,
15440 { "genericUserData", "qsig.sms.genericUserData",
15441 FT_BYTES, BASE_NONE, NULL, 0,
15442 "OCTET_STRING", HFILL }},
15443 { &hf_qsig_sms_failureCause,
15444 { "failureCause", "qsig.sms.failureCause",
15445 FT_UINT32, BASE_DEC, NULL, 0,
15446 NULL, HFILL }},
15447 { &hf_qsig_sms_scAddressSaved,
15448 { "scAddressSaved", "qsig.sms.scAddressSaved",
15449 FT_BOOLEAN, BASE_NONE, NULL, 0,
15450 "BOOLEAN", HFILL }},
15451 { &hf_qsig_sms_SmscControlParameterHeader_sRforTransactionCompleted,
15452 { "sRforTransactionCompleted", "qsig.sms.sRforTransactionCompleted",
15453 FT_BOOLEAN, 8, NULL, 0x80,
15454 NULL, HFILL }},
15455 { &hf_qsig_sms_SmscControlParameterHeader_sRforPermanentError,
15456 { "sRforPermanentError", "qsig.sms.sRforPermanentError",
15457 FT_BOOLEAN, 8, NULL, 0x40,
15458 NULL, HFILL }},
15459 { &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCnotTrying,
15460 { "sRforTempErrorSCnotTrying", "qsig.sms.sRforTempErrorSCnotTrying",
15461 FT_BOOLEAN, 8, NULL, 0x20,
15462 NULL, HFILL }},
15463 { &hf_qsig_sms_SmscControlParameterHeader_sRforTempErrorSCstillTrying,
15464 { "sRforTempErrorSCstillTrying", "qsig.sms.sRforTempErrorSCstillTrying",
15465 FT_BOOLEAN, 8, NULL, 0x10,
15466 NULL, HFILL }},
15467 { &hf_qsig_sms_SmscControlParameterHeader_cancelSRRforConcatenatedSM,
15468 { "cancelSRRforConcatenatedSM", "qsig.sms.cancelSRRforConcatenatedSM",
15469 FT_BOOLEAN, 8, NULL, 0x02,
15470 NULL, HFILL }},
15471 { &hf_qsig_sms_SmscControlParameterHeader_includeOrigUDHintoSR,
15472 { "includeOrigUDHintoSR", "qsig.sms.includeOrigUDHintoSR",
15473 FT_BOOLEAN, 8, NULL, 0x01,
15474 NULL, HFILL }},
15476 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
15478 { &hf_qsig_mcr_qsig_mcr_MCRequestArg_PDU,
15479 { "MCRequestArg", "qsig.mcr.MCRequestArg_element",
15480 FT_NONE, BASE_NONE, NULL, 0,
15481 NULL, HFILL }},
15482 { &hf_qsig_mcr_qsig_mcr_MCRequestResult_PDU,
15483 { "MCRequestResult", "qsig.mcr.MCRequestResult_element",
15484 FT_NONE, BASE_NONE, NULL, 0,
15485 NULL, HFILL }},
15486 { &hf_qsig_mcr_qsig_mcr_MCInformArg_PDU,
15487 { "MCInformArg", "qsig.mcr.MCInformArg_element",
15488 FT_NONE, BASE_NONE, NULL, 0,
15489 NULL, HFILL }},
15490 { &hf_qsig_mcr_qsig_mcr_MCAlertingArg_PDU,
15491 { "MCAlertingArg", "qsig.mcr.MCAlertingArg_element",
15492 FT_NONE, BASE_NONE, NULL, 0,
15493 NULL, HFILL }},
15494 { &hf_qsig_mcr_qsig_mcr_Extension_PDU,
15495 { "Extension", "qsig.mcr.Extension_element",
15496 FT_NONE, BASE_NONE, NULL, 0,
15497 NULL, HFILL }},
15498 { &hf_qsig_mcr_callType,
15499 { "callType", "qsig.mcr.callType",
15500 FT_UINT32, BASE_DEC, VALS(qsig_mcr_CallType_vals), 0,
15501 NULL, HFILL }},
15502 { &hf_qsig_mcr_retainOrigCall,
15503 { "retainOrigCall", "qsig.mcr.retainOrigCall",
15504 FT_BOOLEAN, BASE_NONE, NULL, 0,
15505 "BOOLEAN", HFILL }},
15506 { &hf_qsig_mcr_destinationAddress,
15507 { "destinationAddress", "qsig.mcr.destinationAddress",
15508 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15509 "PresentedAddressUnscreened", HFILL }},
15510 { &hf_qsig_mcr_requestingAddress,
15511 { "requestingAddress", "qsig.mcr.requestingAddress",
15512 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15513 "PresentedAddressUnscreened", HFILL }},
15514 { &hf_qsig_mcr_cooperatingAddress,
15515 { "cooperatingAddress", "qsig.mcr.cooperatingAddress",
15516 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15517 "PresentedAddressUnscreened", HFILL }},
15518 { &hf_qsig_mcr_correlation,
15519 { "correlation", "qsig.mcr.correlation_element",
15520 FT_NONE, BASE_NONE, NULL, 0,
15521 NULL, HFILL }},
15522 { &hf_qsig_mcr_extensions,
15523 { "extensions", "qsig.mcr.extensions",
15524 FT_UINT32, BASE_DEC, VALS(qsig_mcr_MCRExtensions_vals), 0,
15525 "MCRExtensions", HFILL }},
15526 { &hf_qsig_mcr_basicService,
15527 { "basicService", "qsig.mcr.basicService",
15528 FT_UINT32, BASE_DEC, VALS(qsig_cf_BasicService_vals), 0,
15529 NULL, HFILL }},
15530 { &hf_qsig_mcr_cisc,
15531 { "cisc", "qsig.mcr.cisc_element",
15532 FT_NONE, BASE_NONE, NULL, 0,
15533 NULL, HFILL }},
15534 { &hf_qsig_mcr_correlationData,
15535 { "correlationData", "qsig.mcr.correlationData",
15536 FT_STRING, BASE_NONE, NULL, 0,
15537 "CallIdentity", HFILL }},
15538 { &hf_qsig_mcr_correlationReason,
15539 { "correlationReason", "qsig.mcr.correlationReason",
15540 FT_UINT32, BASE_DEC, VALS(qsig_mcr_CorrelationReason_vals), 0,
15541 NULL, HFILL }},
15542 { &hf_qsig_mcr_none,
15543 { "none", "qsig.mcr.none_element",
15544 FT_NONE, BASE_NONE, NULL, 0,
15545 NULL, HFILL }},
15546 { &hf_qsig_mcr_single,
15547 { "single", "qsig.mcr.single_element",
15548 FT_NONE, BASE_NONE, NULL, 0,
15549 "Extension", HFILL }},
15550 { &hf_qsig_mcr_multiple,
15551 { "multiple", "qsig.mcr.multiple",
15552 FT_UINT32, BASE_DEC, NULL, 0,
15553 "SEQUENCE_OF_Extension", HFILL }},
15554 { &hf_qsig_mcr_multiple_item,
15555 { "Extension", "qsig.mcr.Extension_element",
15556 FT_NONE, BASE_NONE, NULL, 0,
15557 NULL, HFILL }},
15559 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
15561 { &hf_qsig_mcm_qsig_mcm_MCMNewMsgArg_PDU,
15562 { "MCMNewMsgArg", "qsig.mcm.MCMNewMsgArg_element",
15563 FT_NONE, BASE_NONE, NULL, 0,
15564 NULL, HFILL }},
15565 { &hf_qsig_mcm_qsig_mcm_MCMDummyRes_PDU,
15566 { "MCMDummyRes", "qsig.mcm.MCMDummyRes",
15567 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMExtensions_vals), 0,
15568 NULL, HFILL }},
15569 { &hf_qsig_mcm_qsig_mcm_MCMNoNewMsgArg_PDU,
15570 { "MCMNoNewMsgArg", "qsig.mcm.MCMNoNewMsgArg_element",
15571 FT_NONE, BASE_NONE, NULL, 0,
15572 NULL, HFILL }},
15573 { &hf_qsig_mcm_qsig_mcm_MCMUpdateArg_PDU,
15574 { "MCMUpdateArg", "qsig.mcm.MCMUpdateArg_element",
15575 FT_NONE, BASE_NONE, NULL, 0,
15576 NULL, HFILL }},
15577 { &hf_qsig_mcm_qsig_mcm_MCMUpdateReqArg_PDU,
15578 { "MCMUpdateReqArg", "qsig.mcm.MCMUpdateReqArg_element",
15579 FT_NONE, BASE_NONE, NULL, 0,
15580 NULL, HFILL }},
15581 { &hf_qsig_mcm_qsig_mcm_MCMUpdateReqRes_PDU,
15582 { "MCMUpdateReqRes", "qsig.mcm.MCMUpdateReqRes",
15583 FT_UINT32, BASE_DEC, NULL, 0,
15584 NULL, HFILL }},
15585 { &hf_qsig_mcm_qsig_mcm_MCMServiceArg_PDU,
15586 { "MCMServiceArg", "qsig.mcm.MCMServiceArg_element",
15587 FT_NONE, BASE_NONE, NULL, 0,
15588 NULL, HFILL }},
15589 { &hf_qsig_mcm_qsig_mcm_MCMInterrogateArg_PDU,
15590 { "MCMInterrogateArg", "qsig.mcm.MCMInterrogateArg_element",
15591 FT_NONE, BASE_NONE, NULL, 0,
15592 NULL, HFILL }},
15593 { &hf_qsig_mcm_qsig_mcm_MCMInterrogateRes_PDU,
15594 { "MCMInterrogateRes", "qsig.mcm.MCMInterrogateRes_element",
15595 FT_NONE, BASE_NONE, NULL, 0,
15596 NULL, HFILL }},
15597 { &hf_qsig_mcm_qsig_mcm_MCMailboxFullArg_PDU,
15598 { "MCMailboxFullArg", "qsig.mcm.MCMailboxFullArg_element",
15599 FT_NONE, BASE_NONE, NULL, 0,
15600 NULL, HFILL }},
15601 { &hf_qsig_mcm_qsig_mcm_Extension_PDU,
15602 { "Extension", "qsig.mcm.Extension_element",
15603 FT_NONE, BASE_NONE, NULL, 0,
15604 NULL, HFILL }},
15605 { &hf_qsig_mcm_partyInfo,
15606 { "partyInfo", "qsig.mcm.partyInfo_element",
15607 FT_NONE, BASE_NONE, NULL, 0,
15608 NULL, HFILL }},
15609 { &hf_qsig_mcm_mailboxFullFor,
15610 { "mailboxFullFor", "qsig.mcm.mailboxFullFor",
15611 FT_UINT32, BASE_DEC, NULL, 0,
15612 NULL, HFILL }},
15613 { &hf_qsig_mcm_extensions,
15614 { "extensions", "qsig.mcm.extensions",
15615 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMExtensions_vals), 0,
15616 "MCMExtensions", HFILL }},
15617 { &hf_qsig_mcm_MailboxFullFor_item,
15618 { "MailboxFullPar", "qsig.mcm.MailboxFullPar_element",
15619 FT_NONE, BASE_NONE, NULL, 0,
15620 NULL, HFILL }},
15621 { &hf_qsig_mcm_messageType,
15622 { "messageType", "qsig.mcm.messageType",
15623 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15624 NULL, HFILL }},
15625 { &hf_qsig_mcm_capacityReached,
15626 { "capacityReached", "qsig.mcm.capacityReached",
15627 FT_UINT32, BASE_DEC, NULL, 0,
15628 "INTEGER_0_100", HFILL }},
15629 { &hf_qsig_mcm_mCMChange,
15630 { "mCMChange", "qsig.mcm.mCMChange",
15631 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMChange_vals), 0,
15632 NULL, HFILL }},
15633 { &hf_qsig_mcm_activateMCM,
15634 { "activateMCM", "qsig.mcm.activateMCM",
15635 FT_UINT32, BASE_DEC, NULL, 0,
15636 "SEQUENCE_OF_MCMServiceInfo", HFILL }},
15637 { &hf_qsig_mcm_activateMCM_item,
15638 { "MCMServiceInfo", "qsig.mcm.MCMServiceInfo_element",
15639 FT_NONE, BASE_NONE, NULL, 0,
15640 NULL, HFILL }},
15641 { &hf_qsig_mcm_deactivateMCM,
15642 { "deactivateMCM", "qsig.mcm.deactivateMCM",
15643 FT_UINT32, BASE_DEC, NULL, 0,
15644 "SEQUENCE_OF_MessageType", HFILL }},
15645 { &hf_qsig_mcm_deactivateMCM_item,
15646 { "MessageType", "qsig.mcm.MessageType",
15647 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15648 NULL, HFILL }},
15649 { &hf_qsig_mcm_setToDefaultValues,
15650 { "setToDefaultValues", "qsig.mcm.setToDefaultValues_element",
15651 FT_NONE, BASE_NONE, NULL, 0,
15652 NULL, HFILL }},
15653 { &hf_qsig_mcm_mCMModeNew,
15654 { "mCMModeNew", "qsig.mcm.mCMModeNew",
15655 FT_INT32, BASE_DEC, VALS(qsig_mcm_MCMMode_vals), 0,
15656 "MCMMode", HFILL }},
15657 { &hf_qsig_mcm_mCMModeRetrieved,
15658 { "mCMModeRetrieved", "qsig.mcm.mCMModeRetrieved",
15659 FT_INT32, BASE_DEC, VALS(qsig_mcm_MCMMode_vals), 0,
15660 "MCMMode", HFILL }},
15661 { &hf_qsig_mcm_interrogateInfo,
15662 { "interrogateInfo", "qsig.mcm.interrogateInfo",
15663 FT_UINT32, BASE_DEC, NULL, 0,
15664 "SEQUENCE_OF_MessageType", HFILL }},
15665 { &hf_qsig_mcm_interrogateInfo_item,
15666 { "MessageType", "qsig.mcm.MessageType",
15667 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15668 NULL, HFILL }},
15669 { &hf_qsig_mcm_interrogateResult,
15670 { "interrogateResult", "qsig.mcm.interrogateResult",
15671 FT_UINT32, BASE_DEC, NULL, 0,
15672 "SEQUENCE_OF_MCMServiceInfo", HFILL }},
15673 { &hf_qsig_mcm_interrogateResult_item,
15674 { "MCMServiceInfo", "qsig.mcm.MCMServiceInfo_element",
15675 FT_NONE, BASE_NONE, NULL, 0,
15676 NULL, HFILL }},
15677 { &hf_qsig_mcm_servedUserNr,
15678 { "servedUserNr", "qsig.mcm.servedUserNr",
15679 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15680 "PartyNumber", HFILL }},
15681 { &hf_qsig_mcm_specificMessageType,
15682 { "specificMessageType", "qsig.mcm.specificMessageType",
15683 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15684 "MessageType", HFILL }},
15685 { &hf_qsig_mcm_msgCentreId,
15686 { "msgCentreId", "qsig.mcm.msgCentreId",
15687 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15688 NULL, HFILL }},
15689 { &hf_qsig_mcm_nrOfMessages,
15690 { "nrOfMessages", "qsig.mcm.nrOfMessages",
15691 FT_UINT32, BASE_DEC, NULL, 0,
15692 NULL, HFILL }},
15693 { &hf_qsig_mcm_originatingNr,
15694 { "originatingNr", "qsig.mcm.originatingNr",
15695 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15696 "PartyNumber", HFILL }},
15697 { &hf_qsig_mcm_timestamp,
15698 { "timestamp", "qsig.mcm.timestamp",
15699 FT_STRING, BASE_NONE, NULL, 0,
15700 NULL, HFILL }},
15701 { &hf_qsig_mcm_priority,
15702 { "priority", "qsig.mcm.priority",
15703 FT_UINT32, BASE_DEC, NULL, 0,
15704 "INTEGER_0_9", HFILL }},
15705 { &hf_qsig_mcm_argumentExtMCMNew,
15706 { "argumentExt", "qsig.mcm.argumentExt",
15707 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMNewArgumentExt_vals), 0,
15708 "MCMNewArgumentExt", HFILL }},
15709 { &hf_qsig_mcm_extension,
15710 { "extension", "qsig.mcm.extension_element",
15711 FT_NONE, BASE_NONE, NULL, 0,
15712 NULL, HFILL }},
15713 { &hf_qsig_mcm_multipleExtension,
15714 { "multipleExtension", "qsig.mcm.multipleExtension",
15715 FT_UINT32, BASE_DEC, NULL, 0,
15716 "SEQUENCE_OF_Extension", HFILL }},
15717 { &hf_qsig_mcm_multipleExtension_item,
15718 { "Extension", "qsig.mcm.Extension_element",
15719 FT_NONE, BASE_NONE, NULL, 0,
15720 NULL, HFILL }},
15721 { &hf_qsig_mcm_argumentExtMCMNoNew,
15722 { "argumentExt", "qsig.mcm.argumentExt",
15723 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMNoNewArgumentExt_vals), 0,
15724 "MCMNoNewArgumentExt", HFILL }},
15725 { &hf_qsig_mcm_updateInfo,
15726 { "updateInfo", "qsig.mcm.updateInfo",
15727 FT_UINT32, BASE_DEC, VALS(qsig_mcm_UpdateInfo_vals), 0,
15728 NULL, HFILL }},
15729 { &hf_qsig_mcm_moreInfoFollows,
15730 { "moreInfoFollows", "qsig.mcm.moreInfoFollows",
15731 FT_BOOLEAN, BASE_NONE, NULL, 0,
15732 "BOOLEAN", HFILL }},
15733 { &hf_qsig_mcm_argumentExtMCMUpdArg,
15734 { "argumentExt", "qsig.mcm.argumentExt",
15735 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMUpdArgArgumentExt_vals), 0,
15736 "MCMUpdArgArgumentExt", HFILL }},
15737 { &hf_qsig_mcm_MCMUpdateReqRes_item,
15738 { "MCMUpdateReqResElt", "qsig.mcm.MCMUpdateReqResElt_element",
15739 FT_NONE, BASE_NONE, NULL, 0,
15740 NULL, HFILL }},
15741 { &hf_qsig_mcm_argumentExtMCMUpdRes,
15742 { "argumentExt", "qsig.mcm.argumentExt",
15743 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MCMUpdResArgumentExt_vals), 0,
15744 "MCMUpdResArgumentExt", HFILL }},
15745 { &hf_qsig_mcm_messageCentreID,
15746 { "messageCentreID", "qsig.mcm.messageCentreID",
15747 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15748 "MsgCentreId", HFILL }},
15749 { &hf_qsig_mcm_newMsgInfoOnly,
15750 { "newMsgInfoOnly", "qsig.mcm.newMsgInfoOnly",
15751 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15752 "MessageInfo", HFILL }},
15753 { &hf_qsig_mcm_retrievedMsgInfoOnly,
15754 { "retrievedMsgInfoOnly", "qsig.mcm.retrievedMsgInfoOnly",
15755 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15756 "MessageInfo", HFILL }},
15757 { &hf_qsig_mcm_allMsgInfo,
15758 { "allMsgInfo", "qsig.mcm.allMsgInfo_element",
15759 FT_NONE, BASE_NONE, NULL, 0,
15760 NULL, HFILL }},
15761 { &hf_qsig_mcm_newMsgInfo,
15762 { "newMsgInfo", "qsig.mcm.newMsgInfo",
15763 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15764 "MessageInfo", HFILL }},
15765 { &hf_qsig_mcm_retrievedMsgInfo,
15766 { "retrievedMsgInfo", "qsig.mcm.retrievedMsgInfo",
15767 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageInfo_vals), 0,
15768 "MessageInfo", HFILL }},
15769 { &hf_qsig_mcm_completeInfo,
15770 { "completeInfo", "qsig.mcm.completeInfo",
15771 FT_UINT32, BASE_DEC, NULL, 0,
15772 NULL, HFILL }},
15773 { &hf_qsig_mcm_compressedInfo,
15774 { "compressedInfo", "qsig.mcm.compressedInfo_element",
15775 FT_NONE, BASE_NONE, NULL, 0,
15776 NULL, HFILL }},
15777 { &hf_qsig_mcm_noMsgsOfMsgType,
15778 { "noMsgsOfMsgType", "qsig.mcm.noMsgsOfMsgType_element",
15779 FT_NONE, BASE_NONE, NULL, 0,
15780 NULL, HFILL }},
15781 { &hf_qsig_mcm_CompleteInfo_item,
15782 { "AddressHeader", "qsig.mcm.AddressHeader_element",
15783 FT_NONE, BASE_NONE, NULL, 0,
15784 NULL, HFILL }},
15785 { &hf_qsig_mcm_originatorNr,
15786 { "originatorNr", "qsig.mcm.originatorNr",
15787 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15788 "PartyNumber", HFILL }},
15789 { &hf_qsig_mcm_timeStamp,
15790 { "timeStamp", "qsig.mcm.timeStamp",
15791 FT_STRING, BASE_NONE, NULL, 0,
15792 NULL, HFILL }},
15793 { &hf_qsig_mcm_ahpriority,
15794 { "priority", "qsig.mcm.priority",
15795 FT_UINT32, BASE_DEC, NULL, 0,
15796 NULL, HFILL }},
15797 { &hf_qsig_mcm_lastTimeStamp,
15798 { "lastTimeStamp", "qsig.mcm.lastTimeStamp",
15799 FT_STRING, BASE_NONE, NULL, 0,
15800 "TimeStamp", HFILL }},
15801 { &hf_qsig_mcm_highestPriority,
15802 { "highestPriority", "qsig.mcm.highestPriority",
15803 FT_UINT32, BASE_DEC, NULL, 0,
15804 "Priority", HFILL }},
15805 { &hf_qsig_mcm_integer,
15806 { "integer", "qsig.mcm.integer",
15807 FT_UINT32, BASE_DEC, NULL, 0,
15808 "INTEGER_0_65535", HFILL }},
15809 { &hf_qsig_mcm_partyNumber,
15810 { "partyNumber", "qsig.mcm.partyNumber",
15811 FT_UINT32, BASE_DEC, VALS(qsig_PartyNumber_vals), 0,
15812 NULL, HFILL }},
15813 { &hf_qsig_mcm_numericString,
15814 { "numericString", "qsig.mcm.numericString",
15815 FT_STRING, BASE_NONE, NULL, 0,
15816 "NumericString_SIZE_1_10", HFILL }},
15817 { &hf_qsig_mcm_none,
15818 { "none", "qsig.mcm.none_element",
15819 FT_NONE, BASE_NONE, NULL, 0,
15820 NULL, HFILL }},
15822 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
15824 { &hf_qsig_mid_qsig_mid_MIDMailboxAuthArg_PDU,
15825 { "MIDMailboxAuthArg", "qsig.mid.MIDMailboxAuthArg_element",
15826 FT_NONE, BASE_NONE, NULL, 0,
15827 NULL, HFILL }},
15828 { &hf_qsig_mid_qsig_mid_MIDDummyRes_PDU,
15829 { "MIDDummyRes", "qsig.mid.MIDDummyRes",
15830 FT_UINT32, BASE_DEC, VALS(qsig_mid_MIDExtensions_vals), 0,
15831 NULL, HFILL }},
15832 { &hf_qsig_mid_qsig_mid_MIDMailboxIDArg_PDU,
15833 { "MIDMailboxIDArg", "qsig.mid.MIDMailboxIDArg_element",
15834 FT_NONE, BASE_NONE, NULL, 0,
15835 NULL, HFILL }},
15836 { &hf_qsig_mid_qsig_mid_Extension_PDU,
15837 { "Extension", "qsig.mid.Extension_element",
15838 FT_NONE, BASE_NONE, NULL, 0,
15839 NULL, HFILL }},
15840 { &hf_qsig_mid_partyInfo,
15841 { "partyInfo", "qsig.mid.partyInfo_element",
15842 FT_NONE, BASE_NONE, NULL, 0,
15843 NULL, HFILL }},
15844 { &hf_qsig_mid_servedUserName,
15845 { "servedUserName", "qsig.mid.servedUserName",
15846 FT_UINT32, BASE_DEC, VALS(qsig_na_Name_vals), 0,
15847 "Name", HFILL }},
15848 { &hf_qsig_mid_mailBox,
15849 { "mailBox", "qsig.mid.mailBox",
15850 FT_UINT32, BASE_DEC, VALS(qsig_mid_String_vals), 0,
15851 "String", HFILL }},
15852 { &hf_qsig_mid_password,
15853 { "password", "qsig.mid.password",
15854 FT_UINT32, BASE_DEC, VALS(qsig_mid_String_vals), 0,
15855 "String", HFILL }},
15856 { &hf_qsig_mid_extensions,
15857 { "extensions", "qsig.mid.extensions",
15858 FT_UINT32, BASE_DEC, VALS(qsig_mid_MIDExtensions_vals), 0,
15859 "MIDExtensions", HFILL }},
15860 { &hf_qsig_mid_servedUserNr,
15861 { "servedUserNr", "qsig.mid.servedUserNr",
15862 FT_UINT32, BASE_DEC, VALS(qsig_PresentedAddressUnscreened_vals), 0,
15863 "PresentedAddressUnscreened", HFILL }},
15864 { &hf_qsig_mid_messageType,
15865 { "messageType", "qsig.mid.messageType",
15866 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MessageType_vals), 0,
15867 NULL, HFILL }},
15868 { &hf_qsig_mid_messageCentreID,
15869 { "messageCentreID", "qsig.mid.messageCentreID",
15870 FT_UINT32, BASE_DEC, VALS(qsig_mcm_MsgCentreId_vals), 0,
15871 "MsgCentreId", HFILL }},
15872 { &hf_qsig_mid_stringBmp,
15873 { "stringBmp", "qsig.mid.stringBmp",
15874 FT_STRING, BASE_NONE, NULL, 0,
15875 "BMPString", HFILL }},
15876 { &hf_qsig_mid_stringUtf8,
15877 { "stringUtf8", "qsig.mid.stringUtf8",
15878 FT_STRING, BASE_NONE, NULL, 0,
15879 "UTF8String", HFILL }},
15880 { &hf_qsig_mid_none,
15881 { "none", "qsig.mid.none_element",
15882 FT_NONE, BASE_NONE, NULL, 0,
15883 NULL, HFILL }},
15884 { &hf_qsig_mid_extension,
15885 { "extension", "qsig.mid.extension_element",
15886 FT_NONE, BASE_NONE, NULL, 0,
15887 NULL, HFILL }},
15888 { &hf_qsig_mid_multipleExtension,
15889 { "multipleExtension", "qsig.mid.multipleExtension",
15890 FT_UINT32, BASE_DEC, NULL, 0,
15891 "SEQUENCE_OF_Extension", HFILL }},
15892 { &hf_qsig_mid_multipleExtension_item,
15893 { "Extension", "qsig.mid.Extension_element",
15894 FT_NONE, BASE_NONE, NULL, 0,
15895 NULL, HFILL }},
15897 /*--- End of included file: packet-qsig-hfarr.c ---*/
15898 #line 653 "../../asn1/qsig/packet-qsig-template.c"
15901 /* List of subtrees */
15902 static gint *ett[] = {
15903 &ett_qsig,
15904 &ett_qsig_ie,
15905 &ett_qsig_unknown_extension,
15907 /*--- Included file: packet-qsig-ettarr.c ---*/
15908 #line 1 "../../asn1/qsig/packet-qsig-ettarr.c"
15910 /* --- Modules Manufacturer-specific-service-extension-class-asn1-97 PSS1-generic-parameters-definition-asn1-97 Addressing-Data-Elements-asn1-97 --- --- --- */
15912 &ett_qsig_Extension,
15913 &ett_qsig_PresentedAddressScreened,
15914 &ett_qsig_PresentedAddressUnscreened,
15915 &ett_qsig_PresentedNumberScreened,
15916 &ett_qsig_PresentedNumberUnscreened,
15917 &ett_qsig_AddressScreened,
15918 &ett_qsig_NumberScreened,
15919 &ett_qsig_Address,
15920 &ett_qsig_PartyNumber,
15921 &ett_qsig_PublicPartyNumber,
15922 &ett_qsig_PrivatePartyNumber,
15923 &ett_qsig_PartySubaddress,
15924 &ett_qsig_UserSpecifiedSubaddress,
15926 /* --- Module Name-Operations-asn1-97 --- --- --- */
15928 &ett_qsig_na_NameArg,
15929 &ett_qsig_na_T_nameSequence,
15930 &ett_qsig_na_NameExtension,
15931 &ett_qsig_na_SEQUENCE_OF_Extension,
15932 &ett_qsig_na_Name,
15933 &ett_qsig_na_NamePresentationAllowed,
15934 &ett_qsig_na_NamePresentationRestricted,
15935 &ett_qsig_na_NameSet,
15937 /* --- Module Call-Diversion-Operations-asn1-97 --- --- --- */
15939 &ett_qsig_cf_ARG_activateDiversionQ,
15940 &ett_qsig_cf_ADExtension,
15941 &ett_qsig_cf_SEQUENCE_OF_Extension,
15942 &ett_qsig_cf_RES_activateDiversionQ,
15943 &ett_qsig_cf_ARG_deactivateDiversionQ,
15944 &ett_qsig_cf_DDExtension,
15945 &ett_qsig_cf_RES_deactivateDiversionQ,
15946 &ett_qsig_cf_ARG_interrogateDiversionQ,
15947 &ett_qsig_cf_IDExtension,
15948 &ett_qsig_cf_ARG_checkRestriction,
15949 &ett_qsig_cf_CHRExtension,
15950 &ett_qsig_cf_RES_checkRestriction,
15951 &ett_qsig_cf_ARG_callRerouteing,
15952 &ett_qsig_cf_CRRExtension,
15953 &ett_qsig_cf_RES_callRerouteing,
15954 &ett_qsig_cf_ARG_divertingLegInformation1,
15955 &ett_qsig_cf_DLI1Extension,
15956 &ett_qsig_cf_ARG_divertingLegInformation2,
15957 &ett_qsig_cf_DLI2Extension,
15958 &ett_qsig_cf_ARG_divertingLegInformation3,
15959 &ett_qsig_cf_DLI3Extension,
15960 &ett_qsig_cf_ARG_cfnrDivertedLegFailed,
15961 &ett_qsig_cf_IntResultList,
15962 &ett_qsig_cf_IntResult,
15963 &ett_qsig_cf_IRExtension,
15965 /* --- Module Path-Replacement-Operations-asn1-97 --- --- --- */
15967 &ett_qsig_pr_PRProposeArg,
15968 &ett_qsig_pr_PRPExtension,
15969 &ett_qsig_pr_SEQUENCE_OF_Extension,
15970 &ett_qsig_pr_PRSetupArg,
15971 &ett_qsig_pr_PRSExtension,
15972 &ett_qsig_pr_PRRetainArg,
15973 &ett_qsig_pr_PRRExtension,
15974 &ett_qsig_pr_DummyResult,
15975 &ett_qsig_pr_DummyArg,
15977 /* --- Module Call-Transfer-Operations-asn1-97 --- --- --- */
15979 &ett_qsig_ct_DummyArg,
15980 &ett_qsig_ct_SEQUENCE_OF_Extension,
15981 &ett_qsig_ct_DummyRes,
15982 &ett_qsig_ct_CTIdentifyRes,
15983 &ett_qsig_ct_T_resultExtension,
15984 &ett_qsig_ct_CTInitiateArg,
15985 &ett_qsig_ct_CTIargumentExtension,
15986 &ett_qsig_ct_CTSetupArg,
15987 &ett_qsig_ct_CTSargumentExtension,
15988 &ett_qsig_ct_CTActiveArg,
15989 &ett_qsig_ct_CTAargumentExtension,
15990 &ett_qsig_ct_CTCompleteArg,
15991 &ett_qsig_ct_CTCargumentExtension,
15992 &ett_qsig_ct_CTUpdateArg,
15993 &ett_qsig_ct_CTUargumentExtension,
15994 &ett_qsig_ct_SubaddressTransferArg,
15995 &ett_qsig_ct_STargumentExtension,
15997 /* --- Module SS-CC-Operations-asn1-97 --- --- --- */
15999 &ett_qsig_cc_CcRequestArg,
16000 &ett_qsig_cc_CcRequestRes,
16001 &ett_qsig_cc_CcOptionalArg,
16002 &ett_qsig_cc_T_fullArg,
16003 &ett_qsig_cc_CcExtension,
16004 &ett_qsig_cc_SEQUENCE_OF_Extension,
16006 /* --- Module Call-Offer-Operations-asn1-97 --- --- --- */
16008 &ett_qsig_co_PathRetainArg,
16009 &ett_qsig_co_T_extendedServiceList,
16010 &ett_qsig_co_ServiceAvailableArg,
16011 &ett_qsig_co_T_extendedServiceList_01,
16012 &ett_qsig_co_ServiceList,
16013 &ett_qsig_co_DummyArg,
16014 &ett_qsig_co_SEQUENCE_OF_Extension,
16015 &ett_qsig_co_DummyRes,
16017 /* --- Module Do-Not-Disturb-Operations-asn1-97 --- --- --- */
16019 &ett_qsig_dnd_DummyArg,
16020 &ett_qsig_dnd_SEQUENCE_OF_Extension,
16021 &ett_qsig_dnd_DummyRes,
16022 &ett_qsig_dnd_DNDActivateArg,
16023 &ett_qsig_dnd_DNDAargumentExtension,
16024 &ett_qsig_dnd_DNDActivateRes,
16025 &ett_qsig_dnd_T_status,
16026 &ett_qsig_dnd_T_status_item,
16027 &ett_qsig_dnd_T_resultExtension,
16028 &ett_qsig_dnd_DNDDeactivateArg,
16029 &ett_qsig_dnd_DNDDargumentExtension,
16030 &ett_qsig_dnd_DNDInterrogateArg,
16031 &ett_qsig_dnd_DNDIargumentExtension,
16032 &ett_qsig_dnd_DNDInterrogateRes,
16033 &ett_qsig_dnd_T_status_01,
16034 &ett_qsig_dnd_T_status_item_01,
16035 &ett_qsig_dnd_T_resultExtension_01,
16036 &ett_qsig_dnd_DNDOverrideArg,
16037 &ett_qsig_dnd_DNDOargumentExtension,
16038 &ett_qsig_dnd_PathRetainArg,
16039 &ett_qsig_dnd_T_extendedServiceList,
16040 &ett_qsig_dnd_ServiceAvailableArg,
16041 &ett_qsig_dnd_T_extendedServiceList_01,
16042 &ett_qsig_dnd_ServiceList,
16044 /* --- Module Call-Intrusion-Operations-asn1-97 --- --- --- */
16046 &ett_qsig_ci_PathRetainArg,
16047 &ett_qsig_ci_T_extendedServiceList,
16048 &ett_qsig_ci_ServiceAvailableArg,
16049 &ett_qsig_ci_T_extendedServiceList_01,
16050 &ett_qsig_ci_ServiceList,
16051 &ett_qsig_ci_DummyArg,
16052 &ett_qsig_ci_SEQUENCE_OF_Extension,
16053 &ett_qsig_ci_DummyRes,
16054 &ett_qsig_ci_CIRequestArg,
16055 &ett_qsig_ci_T_argumentExtension,
16056 &ett_qsig_ci_CIRequestRes,
16057 &ett_qsig_ci_T_resultExtension,
16058 &ett_qsig_ci_CIGetCIPLRes,
16059 &ett_qsig_ci_T_resultExtension_01,
16061 /* --- Module SS-AOC-Operations-asn1-97 --- --- --- */
16063 &ett_qsig_aoc_AocRateArg,
16064 &ett_qsig_aoc_T_aocRate,
16065 &ett_qsig_aoc_T_rateArgExtension,
16066 &ett_qsig_aoc_SEQUENCE_OF_Extension,
16067 &ett_qsig_aoc_AocInterimArg,
16068 &ett_qsig_aoc_T_interimCharge,
16069 &ett_qsig_aoc_T_specificCurrency,
16070 &ett_qsig_aoc_T_interimArgExtension,
16071 &ett_qsig_aoc_AocFinalArg,
16072 &ett_qsig_aoc_T_finalCharge,
16073 &ett_qsig_aoc_T_specificCurrency_01,
16074 &ett_qsig_aoc_T_finalArgExtension,
16075 &ett_qsig_aoc_AOCSCurrencyInfoList,
16076 &ett_qsig_aoc_AOCSCurrencyInfo,
16077 &ett_qsig_aoc_T_rateType,
16078 &ett_qsig_aoc_DurationCurrency,
16079 &ett_qsig_aoc_FlatRateCurrency,
16080 &ett_qsig_aoc_VolumeRateCurrency,
16081 &ett_qsig_aoc_RecordedCurrency,
16082 &ett_qsig_aoc_Amount,
16083 &ett_qsig_aoc_Time,
16084 &ett_qsig_aoc_ChargingAssociation,
16085 &ett_qsig_aoc_ChargeRequestArg,
16086 &ett_qsig_aoc_SEQUENCE_SIZE_0_7_OF_AdviceModeCombination,
16087 &ett_qsig_aoc_T_chargeReqArgExtension,
16088 &ett_qsig_aoc_ChargeRequestRes,
16089 &ett_qsig_aoc_T_chargeReqResExtension,
16090 &ett_qsig_aoc_DummyArg,
16091 &ett_qsig_aoc_AocCompleteArg,
16092 &ett_qsig_aoc_T_completeArgExtension,
16093 &ett_qsig_aoc_AocCompleteRes,
16094 &ett_qsig_aoc_T_completeResExtension,
16095 &ett_qsig_aoc_AocDivChargeReqArg,
16096 &ett_qsig_aoc_T_aocDivChargeReqArgExt,
16098 /* --- Module Recall-Operations-asn1-97 --- --- --- */
16100 &ett_qsig_re_ReAlertingArg,
16101 &ett_qsig_re_T_argumentExtension,
16102 &ett_qsig_re_SEQUENCE_OF_Extension,
16103 &ett_qsig_re_ReAnswerArg,
16104 &ett_qsig_re_T_argumentExtension_01,
16106 /* --- Module Synchronization-Operations-asn1-97 --- --- --- */
16108 &ett_qsig_sync_SynchronizationReqArg,
16109 &ett_qsig_sync_SynchronizationReqRes,
16110 &ett_qsig_sync_SynchronizationInfoArg,
16111 &ett_qsig_sync_ArgExtension,
16112 &ett_qsig_sync_SEQUENCE_OF_Extension,
16114 /* --- Module Call-Interception-Operations-asn1-97 --- --- --- */
16116 &ett_qsig_cint_CintInformation1Arg,
16117 &ett_qsig_cint_CintInformation2Arg,
16118 &ett_qsig_cint_CintCondArg,
16119 &ett_qsig_cint_CintExtension,
16120 &ett_qsig_cint_SEQUENCE_OF_Extension,
16122 /* --- Module Common-Information-Operations-asn1-97 --- --- --- */
16124 &ett_qsig_cmn_CmnArg,
16125 &ett_qsig_cmn_T_extension,
16126 &ett_qsig_cmn_SEQUENCE_OF_Extension,
16127 &ett_qsig_cmn_DummyArg,
16128 &ett_qsig_cmn_FeatureIdList,
16129 &ett_qsig_cmn_EquipmentId,
16131 /* --- Module Call-Interruption-Operations-asn1-97 --- --- --- */
16133 &ett_qsig_cpi_CPIRequestArg,
16134 &ett_qsig_cpi_T_argumentExtension,
16135 &ett_qsig_cpi_SEQUENCE_OF_Extension,
16136 &ett_qsig_cpi_CPIPRequestArg,
16137 &ett_qsig_cpi_T_argumentExtension_01,
16139 /* --- Module PUM-Registration-Operations-asn1-97 --- --- --- */
16141 &ett_qsig_pumr_PumRegistrArg,
16142 &ett_qsig_pumr_RpumUserId,
16143 &ett_qsig_pumr_T_userPin,
16144 &ett_qsig_pumr_PumRegistrRes,
16145 &ett_qsig_pumr_DummyRes,
16146 &ett_qsig_pumr_SEQUENCE_OF_Extension,
16147 &ett_qsig_pumr_PumDelRegArg,
16148 &ett_qsig_pumr_XpumUserId,
16149 &ett_qsig_pumr_PumDe_regArg,
16150 &ett_qsig_pumr_DpumUserId,
16151 &ett_qsig_pumr_T_userPin_01,
16152 &ett_qsig_pumr_PumInterrogArg,
16153 &ett_qsig_pumr_IpumUserId,
16154 &ett_qsig_pumr_T_userPin_02,
16155 &ett_qsig_pumr_PumInterrogRes,
16156 &ett_qsig_pumr_PumInterrogRes_item,
16157 &ett_qsig_pumr_SessionParams,
16158 &ett_qsig_pumr_PumrExtension,
16160 /* --- Module Private-User-Mobility-Call-Handling-Operations-asn1-97 --- --- --- */
16162 &ett_qsig_pumch_EnquiryArg,
16163 &ett_qsig_pumch_DivertArg,
16164 &ett_qsig_pumch_InformArg,
16165 &ett_qsig_pumch_EnquiryRes,
16166 &ett_qsig_pumch_CurrLocation,
16167 &ett_qsig_pumch_CfuActivated,
16168 &ett_qsig_pumch_DummyRes,
16169 &ett_qsig_pumch_SEQUENCE_OF_Extension,
16170 &ett_qsig_pumch_PumiExtension,
16171 &ett_qsig_pumch_PumIdentity,
16172 &ett_qsig_pumch_T_both,
16173 &ett_qsig_pumch_PumoArg,
16174 &ett_qsig_pumch_T_pumoaextension,
16176 /* --- Module Single-Step-Call-Transfer-Operations-asn1-97 --- --- --- */
16178 &ett_qsig_ssct_DummyArg,
16179 &ett_qsig_ssct_SEQUENCE_OF_Extension,
16180 &ett_qsig_ssct_DummyRes,
16181 &ett_qsig_ssct_SSCTInitiateArg,
16182 &ett_qsig_ssct_SSCTIargumentExtension,
16183 &ett_qsig_ssct_SSCTSetupArg,
16184 &ett_qsig_ssct_SSCTSargumentExtension,
16185 &ett_qsig_ssct_SSCTDigitInfoArg,
16186 &ett_qsig_ssct_SSCTDargumentExtension,
16188 /* --- Module WTM-Location-Registration-Operations-asn1-97 --- --- --- */
16190 &ett_qsig_wtmlr_LocUpdArg,
16191 &ett_qsig_wtmlr_DummyRes,
16192 &ett_qsig_wtmlr_SEQUENCE_OF_Extension,
16193 &ett_qsig_wtmlr_LocDelArg,
16194 &ett_qsig_wtmlr_LocDeRegArg,
16195 &ett_qsig_wtmlr_PisnEnqArg,
16196 &ett_qsig_wtmlr_PisnEnqRes,
16197 &ett_qsig_wtmlr_GetRRCInfArg,
16198 &ett_qsig_wtmlr_GetRRCInfRes,
16199 &ett_qsig_wtmlr_LocInfoCheckArg,
16200 &ett_qsig_wtmlr_LocInfoCheckRes,
16201 &ett_qsig_wtmlr_WtmUserId,
16202 &ett_qsig_wtmlr_LrExtension,
16204 /* --- Module Wireless-Terminal-Call-Handling-Operations-asn1-97 --- --- --- */
16206 &ett_qsig_wtmch_EnquiryArg,
16207 &ett_qsig_wtmch_DivertArg,
16208 &ett_qsig_wtmch_InformArg,
16209 &ett_qsig_wtmch_EnquiryRes,
16210 &ett_qsig_wtmch_CurrLocation,
16211 &ett_qsig_wtmch_CfuActivated,
16212 &ett_qsig_wtmch_DummyRes,
16213 &ett_qsig_wtmch_SEQUENCE_OF_Extension,
16214 &ett_qsig_wtmch_WtmiExtension,
16215 &ett_qsig_wtmch_WtmIdentity,
16216 &ett_qsig_wtmch_T_both,
16217 &ett_qsig_wtmch_WtmoArg,
16218 &ett_qsig_wtmch_T_wtmoaextension,
16220 /* --- Module WTM-Authentication-Operations-asn1-97 --- --- --- */
16222 &ett_qsig_wtmau_AuthWtmArg,
16223 &ett_qsig_wtmau_AuthWtmRes,
16224 &ett_qsig_wtmau_WtatParamArg,
16225 &ett_qsig_wtmau_WtatParamRes,
16226 &ett_qsig_wtmau_WtanParamArg,
16227 &ett_qsig_wtmau_WtmUserId,
16228 &ett_qsig_wtmau_WtanParamRes,
16229 &ett_qsig_wtmau_ARG_transferAuthParam,
16230 &ett_qsig_wtmau_WtatParamInfo,
16231 &ett_qsig_wtmau_T_wtatParamInfoChoice,
16232 &ett_qsig_wtmau_WtanParamInfo,
16233 &ett_qsig_wtmau_AuthSessionKeyInfo,
16234 &ett_qsig_wtmau_CalcWtatInfo,
16235 &ett_qsig_wtmau_CalcWtatInfoUnit,
16236 &ett_qsig_wtmau_CalcWtanInfo,
16237 &ett_qsig_wtmau_DummyExtension,
16238 &ett_qsig_wtmau_SEQUENCE_OF_Extension,
16239 &ett_qsig_wtmau_AuthAlgorithm,
16241 /* --- Module SS-SD-Operations-asn1-97 --- --- --- */
16243 &ett_qsig_sd_DisplayArg,
16244 &ett_qsig_sd_DisplayString,
16245 &ett_qsig_sd_KeypadArg,
16246 &ett_qsig_sd_SDExtension,
16247 &ett_qsig_sd_SEQUENCE_OF_Extension,
16249 /* --- Module Call-Identification-and-Call-Linkage-Operations-asn1-97 --- --- --- */
16251 &ett_qsig_cidl_CallIdentificationAssignArg,
16252 &ett_qsig_cidl_CallIdentificationUpdateArg,
16253 &ett_qsig_cidl_CallIdentificationData,
16254 &ett_qsig_cidl_T_linkageID,
16255 &ett_qsig_cidl_ExtensionType,
16256 &ett_qsig_cidl_SEQUENCE_OF_Extension,
16258 /* --- Module Short-Message-Service-Operations-asn1-97 --- --- --- */
16260 &ett_qsig_sms_SmsSubmitArg,
16261 &ett_qsig_sms_SmsSubmitRes,
16262 &ett_qsig_sms_SmsDeliverArg,
16263 &ett_qsig_sms_SmsDeliverRes,
16264 &ett_qsig_sms_SmsStatusReportArg,
16265 &ett_qsig_sms_SmsStatusReportRes,
16266 &ett_qsig_sms_SmsCommandArg,
16267 &ett_qsig_sms_SmsCommandRes,
16268 &ett_qsig_sms_ScAlertArg,
16269 &ett_qsig_sms_DummyRes,
16270 &ett_qsig_sms_SmSubmitParameter,
16271 &ett_qsig_sms_SmDeliverParameter,
16272 &ett_qsig_sms_SmsDeliverResChoice,
16273 &ett_qsig_sms_ResChoiceSeq,
16274 &ett_qsig_sms_SmsStatusReportResponseChoice,
16275 &ett_qsig_sms_SmsExtension,
16276 &ett_qsig_sms_SEQUENCE_OF_Extension,
16277 &ett_qsig_sms_ValidityPeriod,
16278 &ett_qsig_sms_ValidityPeriodEnh,
16279 &ett_qsig_sms_EnhancedVP,
16280 &ett_qsig_sms_UserData,
16281 &ett_qsig_sms_ShortMessageText,
16282 &ett_qsig_sms_UserDataHeader,
16283 &ett_qsig_sms_UserDataHeaderChoice,
16284 &ett_qsig_sms_SmscControlParameterHeader,
16285 &ett_qsig_sms_Concatenated8BitSMHeader,
16286 &ett_qsig_sms_Concatenated16BitSMHeader,
16287 &ett_qsig_sms_ApplicationPort8BitHeader,
16288 &ett_qsig_sms_ApplicationPort16BitHeader,
16289 &ett_qsig_sms_GenericUserValue,
16290 &ett_qsig_sms_PAR_smsDeliverError,
16291 &ett_qsig_sms_PAR_smsSubmitError,
16292 &ett_qsig_sms_PAR_smsStatusReportError,
16293 &ett_qsig_sms_PAR_smsCommandError,
16295 /* --- Module SS-MCR-Operations-asn97 --- --- --- */
16297 &ett_qsig_mcr_MCRequestArg,
16298 &ett_qsig_mcr_MCRequestResult,
16299 &ett_qsig_mcr_MCInformArg,
16300 &ett_qsig_mcr_MCAlertingArg,
16301 &ett_qsig_mcr_CallType,
16302 &ett_qsig_mcr_Correlation,
16303 &ett_qsig_mcr_MCRExtensions,
16304 &ett_qsig_mcr_SEQUENCE_OF_Extension,
16306 /* --- Module SS-MCM-Operations-asn1-97 --- --- --- */
16308 &ett_qsig_mcm_MCMailboxFullArg,
16309 &ett_qsig_mcm_MailboxFullFor,
16310 &ett_qsig_mcm_MailboxFullPar,
16311 &ett_qsig_mcm_MCMServiceArg,
16312 &ett_qsig_mcm_MCMChange,
16313 &ett_qsig_mcm_SEQUENCE_OF_MCMServiceInfo,
16314 &ett_qsig_mcm_SEQUENCE_OF_MessageType,
16315 &ett_qsig_mcm_MCMServiceInfo,
16316 &ett_qsig_mcm_MCMInterrogateArg,
16317 &ett_qsig_mcm_MCMInterrogateRes,
16318 &ett_qsig_mcm_MCMNewMsgArg,
16319 &ett_qsig_mcm_MCMNewArgumentExt,
16320 &ett_qsig_mcm_SEQUENCE_OF_Extension,
16321 &ett_qsig_mcm_MCMNoNewMsgArg,
16322 &ett_qsig_mcm_MCMNoNewArgumentExt,
16323 &ett_qsig_mcm_MCMUpdateArg,
16324 &ett_qsig_mcm_MCMUpdateReqArg,
16325 &ett_qsig_mcm_MCMUpdArgArgumentExt,
16326 &ett_qsig_mcm_MCMUpdateReqRes,
16327 &ett_qsig_mcm_MCMUpdateReqResElt,
16328 &ett_qsig_mcm_MCMUpdResArgumentExt,
16329 &ett_qsig_mcm_PartyInfo,
16330 &ett_qsig_mcm_UpdateInfo,
16331 &ett_qsig_mcm_AllMsgInfo,
16332 &ett_qsig_mcm_MessageInfo,
16333 &ett_qsig_mcm_CompleteInfo,
16334 &ett_qsig_mcm_AddressHeader,
16335 &ett_qsig_mcm_CompressedInfo,
16336 &ett_qsig_mcm_MsgCentreId,
16337 &ett_qsig_mcm_MCMExtensions,
16339 /* --- Module SS-MID-Operations-asn1-97 --- --- --- */
16341 &ett_qsig_mid_MIDMailboxAuthArg,
16342 &ett_qsig_mid_MIDMailboxIDArg,
16343 &ett_qsig_mid_PartyInfo,
16344 &ett_qsig_mid_String,
16345 &ett_qsig_mid_MIDExtensions,
16346 &ett_qsig_mid_SEQUENCE_OF_Extension,
16348 /*--- End of included file: packet-qsig-ettarr.c ---*/
16349 #line 661 "../../asn1/qsig/packet-qsig-template.c"
16350 &ett_cnq_PSS1InformationElement,
16353 /* Register protocol and dissector */
16354 proto_qsig = proto_register_protocol(PNAME, PSNAME, PFNAME);
16356 /* Register fields and subtrees */
16357 proto_register_field_array(proto_qsig, hf, array_length(hf));
16358 proto_register_subtree_array(ett, array_length(ett));
16360 /* Register dissector tables */
16361 extension_dissector_table = register_dissector_table("qsig.ext", "QSIG Extension", FT_STRING, BASE_NONE);
16363 qsig_init_tables();
16367 /*--- proto_reg_handoff_qsig ------------------------------------------------*/
16368 void proto_reg_handoff_qsig(void) {
16369 int i;
16370 gint key;
16371 const gchar *oid;
16372 dissector_handle_t q931_handle;
16373 dissector_handle_t qsig_arg_handle;
16374 dissector_handle_t qsig_res_handle;
16375 dissector_handle_t qsig_err_handle;
16376 dissector_handle_t qsig_ie_handle;
16378 q931_handle = find_dissector("q931");
16379 q931_ie_handle = find_dissector("q931.ie");
16381 qsig_arg_handle = new_create_dissector_handle(dissect_qsig_arg, proto_qsig);
16382 qsig_res_handle = new_create_dissector_handle(dissect_qsig_res, proto_qsig);
16383 for (i=0; i<(int)array_length(qsig_op_tab); i++) {
16384 dissector_add_uint("q932.ros.local.arg", qsig_op_tab[i].opcode, qsig_arg_handle);
16385 dissector_add_uint("q932.ros.local.res", qsig_op_tab[i].opcode, qsig_res_handle);
16386 key = qsig_op_tab[i].opcode;
16387 oid = (const gchar *)g_hash_table_lookup(qsig_opcode2oid_hashtable, &key);
16388 if (oid) {
16389 dissector_add_string("q932.ros.global.arg", oid, qsig_arg_handle);
16390 dissector_add_string("q932.ros.global.res", oid, qsig_res_handle);
16393 qsig_err_handle = new_create_dissector_handle(dissect_qsig_err, proto_qsig);
16394 for (i=0; i<(int)array_length(qsig_err_tab); i++) {
16395 dissector_add_uint("q932.ros.local.err", qsig_err_tab[i].errcode, qsig_err_handle);
16398 qsig_ie_handle = create_dissector_handle(dissect_qsig_ie_cs4, proto_qsig);
16399 /* QSIG-TC - Transit counter */
16400 dissector_add_uint("q931.ie", CS4 | QSIG_IE_TRANSIT_COUNTER, qsig_ie_handle);
16402 qsig_ie_handle = create_dissector_handle(dissect_qsig_ie_cs5, proto_qsig);
16403 /* SSIG-BC - Party category */
16404 dissector_add_uint("q931.ie", CS5 | QSIG_IE_PARTY_CATEGORY, qsig_ie_handle);
16406 /* RFC 3204, 3.2 QSIG Media Type */
16407 dissector_add_string("media_type", "application/qsig", q931_handle);
16411 /*---------------------------------------------------------------------------*/