MSWSP: fix dissect_mswsp_smb()
[wireshark-wip.git] / epan / dissectors / packet-h450.c
blob01cb501f50c8783e0875301f595966f48af7ca99
1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
3 /* packet-h450.c */
4 /* ../../tools/asn2wrs.py -c ./h450.cnf -s ./packet-h450-template -D . -O ../../epan/dissectors H4501-Supplementary-ServiceAPDU-Structure.asn Addressing-Data-Elements.asn H225-generic-parameters-definition.asn Manufacturer-specific-service-extension-definition.asn H4501-General-Error-List.asn Call-Transfer-Operations.asn Call-Diversion-Operations.asn Call-Hold-Operations.asn Call-Park-Pickup-Operations.asn Call-Waiting-Operations.asn Message-Waiting-Indication-Operations.asn Name-Operations.asn Call-Completion-Operations.asn Call-Offer-Operations.asn Call-Intrusion-Operations.asn Common-Information-Operations.asn */
6 /* Input file: packet-h450-template.c */
8 #line 1 "../../asn1/h450/packet-h450-template.c"
9 /* packet-h450.c
10 * Routines for h450 packet dissection
11 * Based on the previous h450 dissector by:
12 * 2003 Graeme Reid (graeme.reid@norwoodsystems.com)
13 * Copyright 2005, Anders Broman <anders.broman@ericsson.com>
15 * $Id$
17 * Wireshark - Network traffic analyzer
18 * By Gerald Combs <gerald@wireshark.org>
19 * Copyright 1998 Gerald Combs
21 * This program is free software; you can redistribute it and/or
22 * modify it under the terms of the GNU General Public License
23 * as published by the Free Software Foundation; either version 2
24 * of the License, or (at your option) any later version.
26 * This program is distributed in the hope that it will be useful,
27 * but WITHOUT ANY WARRANTY; without even the implied warranty of
28 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29 * GNU General Public License for more details.
31 * You should have received a copy of the GNU General Public License
32 * along with this program; if not, write to the Free Software
33 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
35 * Credit to Tomas Kukosa for developing the asn2wrs compiler.
39 #include "config.h"
41 #include <glib.h>
42 #include <epan/packet.h>
44 #include <epan/asn1.h>
46 #include "packet-per.h"
47 #include "packet-h225.h"
49 #include "packet-h450-ros.h"
51 #define PNAME "H.450 Supplementary Services"
52 #define PSNAME "H.450"
53 #define PFNAME "h450"
55 /* Initialize the protocol and registered fields */
56 static int proto_h450 = -1;
57 static int hf_h450_operation = -1;
58 static int hf_h450_error = -1;
60 /*--- Included file: packet-h450-hf.c ---*/
61 #line 1 "../../asn1/h450/packet-h450-hf.c"
63 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
65 static int hf_h450_h450_H4501SupplementaryService_PDU = -1; /* H4501SupplementaryService */
66 static int hf_h450_networkFacilityExtension = -1; /* NetworkFacilityExtension */
67 static int hf_h450_interpretationApdu = -1; /* InterpretationApdu */
68 static int hf_h450_serviceApdu = -1; /* ServiceApdus */
69 static int hf_h450_sourceEntity = -1; /* EntityType */
70 static int hf_h450_sourceEntityAddress = -1; /* AddressInformation */
71 static int hf_h450_destinationEntity = -1; /* EntityType */
72 static int hf_h450_destinationEntityAddress = -1; /* AddressInformation */
73 static int hf_h450_endpoint = -1; /* NULL */
74 static int hf_h450_anyEntity = -1; /* NULL */
75 static int hf_h450_discardAnyUnrecognizedInvokePdu = -1; /* NULL */
76 static int hf_h450_clearCallIfAnyInvokePduNotRecognized = -1; /* NULL */
77 static int hf_h450_rejectAnyUnrecognizedInvokePdu = -1; /* NULL */
78 static int hf_h450_rosApdus = -1; /* T_rosApdus */
79 static int hf_h450_rosApdus_item = -1; /* T_rosApdus_item */
80 static int hf_h450_destinationAddress = -1; /* SEQUENCE_OF_AliasAddress */
81 static int hf_h450_destinationAddress_item = -1; /* AliasAddress */
82 static int hf_h450_remoteExtensionAddress = -1; /* AliasAddress */
83 static int hf_h450_destinationAddressPresentationIndicator = -1; /* PresentationIndicator */
84 static int hf_h450_destinationAddressScreeningIndicator = -1; /* ScreeningIndicator */
85 static int hf_h450_remoteExtensionAddressPresentationIndicator = -1; /* PresentationIndicator */
86 static int hf_h450_remoteExtensionAddressScreeningIndicator = -1; /* ScreeningIndicator */
87 static int hf_h450_userSpecifiedSubaddress = -1; /* UserSpecifiedSubaddress */
88 static int hf_h450_nsapSubaddress = -1; /* NSAPSubaddress */
89 static int hf_h450_subaddressInformation = -1; /* SubaddressInformation */
90 static int hf_h450_oddCountIndicator = -1; /* BOOLEAN */
91 static int hf_h450_extensionId = -1; /* OBJECT_IDENTIFIER */
92 static int hf_h450_extensionArgument = -1; /* T_extensionArgument */
94 /* --- Module Call-Transfer-Operations --- --- --- */
96 static int hf_h450_2_h450_2_DummyArg_PDU = -1; /* DummyArg */
97 static int hf_h450_2_h450_2_CTIdentifyRes_PDU = -1; /* CTIdentifyRes */
98 static int hf_h450_2_h450_2_CTInitiateArg_PDU = -1; /* CTInitiateArg */
99 static int hf_h450_2_h450_2_DummyRes_PDU = -1; /* DummyRes */
100 static int hf_h450_2_h450_2_CTSetupArg_PDU = -1; /* CTSetupArg */
101 static int hf_h450_2_h450_2_CTUpdateArg_PDU = -1; /* CTUpdateArg */
102 static int hf_h450_2_h450_2_SubaddressTransferArg_PDU = -1; /* SubaddressTransferArg */
103 static int hf_h450_2_h450_2_CTCompleteArg_PDU = -1; /* CTCompleteArg */
104 static int hf_h450_2_h450_2_CTActiveArg_PDU = -1; /* CTActiveArg */
105 static int hf_h450_2_h450_2_PAR_unspecified_PDU = -1; /* PAR_unspecified */
106 static int hf_h450_2_extensionSeq = -1; /* ExtensionSeq */
107 static int hf_h450_2_nonStandardData = -1; /* NonStandardParameter */
108 static int hf_h450_2_callIdentity = -1; /* CallIdentity */
109 static int hf_h450_2_reroutingNumber = -1; /* EndpointAddress */
110 static int hf_h450_2_cTInitiateArg_argumentExtension = -1; /* T_cTInitiateArg_argumentExtension */
111 static int hf_h450_2_transferringNumber = -1; /* EndpointAddress */
112 static int hf_h450_2_cTSetupArg_argumentExtension = -1; /* T_cTSetupArg_argumentExtension */
113 static int hf_h450_2_resultExtension = -1; /* T_resultExtension */
114 static int hf_h450_2_redirectionNumber = -1; /* EndpointAddress */
115 static int hf_h450_2_redirectionInfo = -1; /* BMPString_SIZE_1_128 */
116 static int hf_h450_2_basicCallInfoElements = -1; /* H225InformationElement */
117 static int hf_h450_2_cTUpdateArg_argumentExtension = -1; /* T_cTUpdateArg_argumentExtension */
118 static int hf_h450_2_redirectionSubaddress = -1; /* PartySubaddress */
119 static int hf_h450_2_subaddressTransferArg_argumentExtension = -1; /* T_subaddressTransferArg_argumentExtension */
120 static int hf_h450_2_endDesignation = -1; /* EndDesignation */
121 static int hf_h450_2_callStatus = -1; /* CallStatus */
122 static int hf_h450_2_cTCompleteArg_argumentExtension = -1; /* T_cTCompleteArg_argumentExtension */
123 static int hf_h450_2_connectedAddress = -1; /* EndpointAddress */
124 static int hf_h450_2_connectedInfo = -1; /* BMPString_SIZE_1_128 */
125 static int hf_h450_2_cTActiveArg_argumentExtension = -1; /* T_cTActiveArg_argumentExtension */
126 static int hf_h450_2_ExtensionSeq_item = -1; /* Extension */
127 static int hf_h450_2_unspecified_extension = -1; /* Extension */
128 static int hf_h450_2_nonStandard = -1; /* NonStandardParameter */
130 /* --- Module Call-Diversion-Operations --- --- --- */
132 static int hf_h450_3_h450_3_ARG_activateDiversionQ_PDU = -1; /* ARG_activateDiversionQ */
133 static int hf_h450_3_h450_3_RES_activateDiversionQ_PDU = -1; /* RES_activateDiversionQ */
134 static int hf_h450_3_h450_3_ARG_deactivateDiversionQ_PDU = -1; /* ARG_deactivateDiversionQ */
135 static int hf_h450_3_h450_3_RES_deactivateDiversionQ_PDU = -1; /* RES_deactivateDiversionQ */
136 static int hf_h450_3_h450_3_ARG_interrogateDiversionQ_PDU = -1; /* ARG_interrogateDiversionQ */
137 static int hf_h450_3_h450_3_IntResultList_PDU = -1; /* IntResultList */
138 static int hf_h450_3_h450_3_ARG_checkRestriction_PDU = -1; /* ARG_checkRestriction */
139 static int hf_h450_3_h450_3_RES_checkRestriction_PDU = -1; /* RES_checkRestriction */
140 static int hf_h450_3_h450_3_ARG_callRerouting_PDU = -1; /* ARG_callRerouting */
141 static int hf_h450_3_h450_3_RES_callRerouting_PDU = -1; /* RES_callRerouting */
142 static int hf_h450_3_h450_3_ARG_divertingLegInformation1_PDU = -1; /* ARG_divertingLegInformation1 */
143 static int hf_h450_3_h450_3_ARG_divertingLegInformation2_PDU = -1; /* ARG_divertingLegInformation2 */
144 static int hf_h450_3_h450_3_ARG_divertingLegInformation3_PDU = -1; /* ARG_divertingLegInformation3 */
145 static int hf_h450_3_h450_3_ARG_divertingLegInformation4_PDU = -1; /* ARG_divertingLegInformation4 */
146 static int hf_h450_3_h450_3_ARG_cfnrDivertedLegFailed_PDU = -1; /* ARG_cfnrDivertedLegFailed */
147 static int hf_h450_3_h450_3_PAR_unspecified_PDU = -1; /* PAR_unspecified */
148 static int hf_h450_3_procedure = -1; /* Procedure */
149 static int hf_h450_3_basicService = -1; /* BasicService */
150 static int hf_h450_3_divertedToAddress = -1; /* EndpointAddress */
151 static int hf_h450_3_servedUserNr = -1; /* EndpointAddress */
152 static int hf_h450_3_activatingUserNr = -1; /* EndpointAddress */
153 static int hf_h450_3_activateDiversionQArg_extension = -1; /* ActivateDiversionQArg_extension */
154 static int hf_h450_3_extensionSeq = -1; /* ExtensionSeq */
155 static int hf_h450_3_nonStandardData = -1; /* NonStandardParameter */
156 static int hf_h450_3_deactivatingUserNr = -1; /* EndpointAddress */
157 static int hf_h450_3_deactivateDiversionQArg_extension = -1; /* DeactivateDiversionQArg_extension */
158 static int hf_h450_3_interrogatingUserNr = -1; /* EndpointAddress */
159 static int hf_h450_3_interrogateDiversionQ_extension = -1; /* InterrogateDiversionQ_extension */
160 static int hf_h450_3_divertedToNr = -1; /* EndpointAddress */
161 static int hf_h450_3_checkRestrictionArg_extension = -1; /* CheckRestrictionArg_extension */
162 static int hf_h450_3_reroutingReason = -1; /* DiversionReason */
163 static int hf_h450_3_originalReroutingReason = -1; /* DiversionReason */
164 static int hf_h450_3_calledAddress = -1; /* EndpointAddress */
165 static int hf_h450_3_diversionCounter = -1; /* INTEGER_1_15 */
166 static int hf_h450_3_h225InfoElement = -1; /* H225InformationElement */
167 static int hf_h450_3_lastReroutingNr = -1; /* EndpointAddress */
168 static int hf_h450_3_subscriptionOption = -1; /* SubscriptionOption */
169 static int hf_h450_3_callingPartySubaddress = -1; /* PartySubaddress */
170 static int hf_h450_3_callingNumber = -1; /* EndpointAddress */
171 static int hf_h450_3_callingInfo = -1; /* BMPString_SIZE_1_128 */
172 static int hf_h450_3_originalCalledNr = -1; /* EndpointAddress */
173 static int hf_h450_3_redirectingInfo = -1; /* BMPString_SIZE_1_128 */
174 static int hf_h450_3_originalCalledInfo = -1; /* BMPString_SIZE_1_128 */
175 static int hf_h450_3_callReroutingArg_extension = -1; /* CallReroutingArg_extension */
176 static int hf_h450_3_diversionReason = -1; /* DiversionReason */
177 static int hf_h450_3_nominatedNr = -1; /* EndpointAddress */
178 static int hf_h450_3_nominatedInfo = -1; /* BMPString_SIZE_1_128 */
179 static int hf_h450_3_redirectingNr = -1; /* EndpointAddress */
180 static int hf_h450_3_divertingLegInformation1Arg_extension = -1; /* DivertingLegInformation1Arg_extension */
181 static int hf_h450_3_originalDiversionReason = -1; /* DiversionReason */
182 static int hf_h450_3_divertingNr = -1; /* EndpointAddress */
183 static int hf_h450_3_divertingLegInformation2Arg_extension = -1; /* DivertingLegInformation2Arg_extension */
184 static int hf_h450_3_presentationAllowedIndicator = -1; /* PresentationAllowedIndicator */
185 static int hf_h450_3_redirectionNr = -1; /* EndpointAddress */
186 static int hf_h450_3_redirectionInfo = -1; /* BMPString_SIZE_1_128 */
187 static int hf_h450_3_divertingLegInformation3Arg_extension = -1; /* DivertingLegInformation3Arg_extension */
188 static int hf_h450_3_callingNr = -1; /* EndpointAddress */
189 static int hf_h450_3_divertingLegInformation4Arg_extension = -1; /* DivertingLegInformation4Arg_extension */
190 static int hf_h450_3_IntResultList_item = -1; /* IntResult */
191 static int hf_h450_3_remoteEnabled = -1; /* BOOLEAN */
192 static int hf_h450_3_intResult_extension = -1; /* IntResult_extension */
193 static int hf_h450_3_unspecified_extension = -1; /* Extension */
194 static int hf_h450_3_nonStandard = -1; /* NonStandardParameter */
195 static int hf_h450_3_ExtensionSeq_item = -1; /* Extension */
197 /* --- Module Call-Hold-Operations --- --- --- */
199 static int hf_h450_4_h450_4_HoldNotificArg_PDU = -1; /* HoldNotificArg */
200 static int hf_h450_4_h450_4_RetrieveNotificArg_PDU = -1; /* RetrieveNotificArg */
201 static int hf_h450_4_h450_4_RemoteHoldArg_PDU = -1; /* RemoteHoldArg */
202 static int hf_h450_4_h450_4_RemoteHoldRes_PDU = -1; /* RemoteHoldRes */
203 static int hf_h450_4_h450_4_RemoteRetrieveArg_PDU = -1; /* RemoteRetrieveArg */
204 static int hf_h450_4_h450_4_RemoteRetrieveRes_PDU = -1; /* RemoteRetrieveRes */
205 static int hf_h450_4_h450_4_PAR_undefined_PDU = -1; /* PAR_undefined */
206 static int hf_h450_4_holdNotificArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
207 static int hf_h450_4_holdNotificArg_extensionArg_item = -1; /* MixedExtension */
208 static int hf_h450_4_retrieveNotificArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
209 static int hf_h450_4_retrieveNotificArg_extensionArg_item = -1; /* MixedExtension */
210 static int hf_h450_4_remoteHoldArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
211 static int hf_h450_4_remoteHoldArg_extensionArg_item = -1; /* MixedExtension */
212 static int hf_h450_4_extensionRes = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
213 static int hf_h450_4_extensionRes_item = -1; /* MixedExtension */
214 static int hf_h450_4_remoteRetrieveArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
215 static int hf_h450_4_remoteRetrieveArg_extensionArg_item = -1; /* MixedExtension */
216 static int hf_h450_4_mixedExtension_extension = -1; /* Extension */
217 static int hf_h450_4_nonStandardData = -1; /* NonStandardParameter */
218 static int hf_h450_4_PAR_undefined_item = -1; /* MixedExtension */
220 /* --- Module Call-Park-Pickup-Operations --- --- --- */
222 static int hf_h450_5_h450_5_CpRequestArg_PDU = -1; /* CpRequestArg */
223 static int hf_h450_5_h450_5_CpRequestRes_PDU = -1; /* CpRequestRes */
224 static int hf_h450_5_h450_5_CpSetupArg_PDU = -1; /* CpSetupArg */
225 static int hf_h450_5_h450_5_CpSetupRes_PDU = -1; /* CpSetupRes */
226 static int hf_h450_5_h450_5_GroupIndicationOnArg_PDU = -1; /* GroupIndicationOnArg */
227 static int hf_h450_5_h450_5_GroupIndicationOnRes_PDU = -1; /* GroupIndicationOnRes */
228 static int hf_h450_5_h450_5_GroupIndicationOffArg_PDU = -1; /* GroupIndicationOffArg */
229 static int hf_h450_5_h450_5_GroupIndicationOffRes_PDU = -1; /* GroupIndicationOffRes */
230 static int hf_h450_5_h450_5_PickrequArg_PDU = -1; /* PickrequArg */
231 static int hf_h450_5_h450_5_PickrequRes_PDU = -1; /* PickrequRes */
232 static int hf_h450_5_h450_5_PickupArg_PDU = -1; /* PickupArg */
233 static int hf_h450_5_h450_5_PickupRes_PDU = -1; /* PickupRes */
234 static int hf_h450_5_h450_5_PickExeArg_PDU = -1; /* PickExeArg */
235 static int hf_h450_5_h450_5_PickExeRes_PDU = -1; /* PickExeRes */
236 static int hf_h450_5_h450_5_CpNotifyArg_PDU = -1; /* CpNotifyArg */
237 static int hf_h450_5_h450_5_CpickupNotifyArg_PDU = -1; /* CpickupNotifyArg */
238 static int hf_h450_5_h450_5_PAR_undefined_PDU = -1; /* PAR_undefined */
239 static int hf_h450_5_parkingNumber = -1; /* EndpointAddress */
240 static int hf_h450_5_parkedNumber = -1; /* EndpointAddress */
241 static int hf_h450_5_parkedToNumber = -1; /* EndpointAddress */
242 static int hf_h450_5_parkedToPosition = -1; /* ParkedToPosition */
243 static int hf_h450_5_cpRequestArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
244 static int hf_h450_5_cpRequestArg_extensionArg_item = -1; /* MixedExtension */
245 static int hf_h450_5_parkCondition = -1; /* ParkCondition */
246 static int hf_h450_5_extensionRes = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
247 static int hf_h450_5_extensionRes_item = -1; /* MixedExtension */
248 static int hf_h450_5_cpSetupArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
249 static int hf_h450_5_cpSetupArg_extensionArg_item = -1; /* MixedExtension */
250 static int hf_h450_5_callPickupId = -1; /* CallIdentifier */
251 static int hf_h450_5_groupMemberUserNr = -1; /* EndpointAddress */
252 static int hf_h450_5_retrieveCallType = -1; /* CallType */
253 static int hf_h450_5_partyToRetrieve = -1; /* EndpointAddress */
254 static int hf_h450_5_retrieveAddress = -1; /* EndpointAddress */
255 static int hf_h450_5_parkPosition = -1; /* ParkedToPosition */
256 static int hf_h450_5_groupIndicationOnArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
257 static int hf_h450_5_groupIndicationOnArg_extensionArg_item = -1; /* MixedExtension */
258 static int hf_h450_5_groupIndicationOffArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
259 static int hf_h450_5_groupIndicationOffArg_extensionArg_item = -1; /* MixedExtension */
260 static int hf_h450_5_picking_upNumber = -1; /* EndpointAddress */
261 static int hf_h450_5_pickrequArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
262 static int hf_h450_5_pickrequArg_extensionArg_item = -1; /* MixedExtension */
263 static int hf_h450_5_pickupArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
264 static int hf_h450_5_pickupArg_extensionArg_item = -1; /* MixedExtension */
265 static int hf_h450_5_pickExeArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
266 static int hf_h450_5_pickExeArg_extensionArg_item = -1; /* MixedExtension */
267 static int hf_h450_5_cpNotifyArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
268 static int hf_h450_5_cpNotifyArg_extensionArg_item = -1; /* MixedExtension */
269 static int hf_h450_5_cpickupNotifyArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
270 static int hf_h450_5_cpickupNotifyArg_extensionArg_item = -1; /* MixedExtension */
271 static int hf_h450_5_PAR_undefined_item = -1; /* MixedExtension */
273 /* --- Module Call-Waiting-Operations --- --- --- */
275 static int hf_h450_6_h450_6_CallWaitingArg_PDU = -1; /* CallWaitingArg */
276 static int hf_h450_6_nbOfAddWaitingCalls = -1; /* INTEGER_0_255 */
277 static int hf_h450_6_callWaitingArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
278 static int hf_h450_6_callWaitingArg_extensionArg_item = -1; /* MixedExtension */
280 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
282 static int hf_h450_7_h450_7_MWIActivateArg_PDU = -1; /* MWIActivateArg */
283 static int hf_h450_7_h450_7_DummyRes_PDU = -1; /* DummyRes */
284 static int hf_h450_7_h450_7_MWIDeactivateArg_PDU = -1; /* MWIDeactivateArg */
285 static int hf_h450_7_h450_7_MWIInterrogateArg_PDU = -1; /* MWIInterrogateArg */
286 static int hf_h450_7_h450_7_MWIInterrogateRes_PDU = -1; /* MWIInterrogateRes */
287 static int hf_h450_7_h450_7_PAR_undefined_PDU = -1; /* PAR_undefined */
288 static int hf_h450_7_servedUserNr = -1; /* EndpointAddress */
289 static int hf_h450_7_basicService = -1; /* BasicService */
290 static int hf_h450_7_msgCentreId = -1; /* MsgCentreId */
291 static int hf_h450_7_nbOfMessages = -1; /* NbOfMessages */
292 static int hf_h450_7_originatingNr = -1; /* EndpointAddress */
293 static int hf_h450_7_timestamp = -1; /* TimeStamp */
294 static int hf_h450_7_priority = -1; /* INTEGER_0_9 */
295 static int hf_h450_7_mWIActivateArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
296 static int hf_h450_7_mWIActivateArg_extensionArg_item = -1; /* MixedExtension */
297 static int hf_h450_7_DummyRes_item = -1; /* MixedExtension */
298 static int hf_h450_7_callbackReq = -1; /* BOOLEAN */
299 static int hf_h450_7_mWIDeactivateArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
300 static int hf_h450_7_mWIDeactivateArg_extensionArg_item = -1; /* MixedExtension */
301 static int hf_h450_7_mWIInterrogateArg_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
302 static int hf_h450_7_mWIInterrogateArg_extensionArg_item = -1; /* MixedExtension */
303 static int hf_h450_7_MWIInterrogateRes_item = -1; /* MWIInterrogateResElt */
304 static int hf_h450_7_mWIInterrogateResElt_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
305 static int hf_h450_7_mWIInterrogateResElt_extensionArg_item = -1; /* MixedExtension */
306 static int hf_h450_7_integer = -1; /* INTEGER_0_65535 */
307 static int hf_h450_7_partyNumber = -1; /* EndpointAddress */
308 static int hf_h450_7_numericString = -1; /* NumericString_SIZE_1_10 */
309 static int hf_h450_7_PAR_undefined_item = -1; /* MixedExtension */
311 /* --- Module Name-Operations --- --- --- */
313 static int hf_h450_8_h450_8_ARG_callingName_PDU = -1; /* ARG_callingName */
314 static int hf_h450_8_h450_8_ARG_alertingName_PDU = -1; /* ARG_alertingName */
315 static int hf_h450_8_h450_8_ARG_connectedName_PDU = -1; /* ARG_connectedName */
316 static int hf_h450_8_h450_8_ARG_busyName_PDU = -1; /* ARG_busyName */
317 static int hf_h450_8_name = -1; /* Name */
318 static int hf_h450_8_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
319 static int hf_h450_8_extensionArg_item = -1; /* MixedExtension */
320 static int hf_h450_8_namePresentationAllowed = -1; /* NamePresentationAllowed */
321 static int hf_h450_8_namePresentationRestricted = -1; /* NamePresentationRestricted */
322 static int hf_h450_8_nameNotAvailable = -1; /* NULL */
323 static int hf_h450_8_simpleName = -1; /* SimpleName */
324 static int hf_h450_8_extendedName = -1; /* ExtendedName */
325 static int hf_h450_8_restrictedNull = -1; /* NULL */
327 /* --- Module Call-Completion-Operations --- --- --- */
329 static int hf_h450_9_h450_9_CcRequestArg_PDU = -1; /* CcRequestArg */
330 static int hf_h450_9_h450_9_CcRequestRes_PDU = -1; /* CcRequestRes */
331 static int hf_h450_9_h450_9_CcArg_PDU = -1; /* CcArg */
332 static int hf_h450_9_h450_9_CcShortArg_PDU = -1; /* CcShortArg */
333 static int hf_h450_9_numberA = -1; /* EndpointAddress */
334 static int hf_h450_9_numberB = -1; /* EndpointAddress */
335 static int hf_h450_9_ccIdentifier = -1; /* CallIdentifier */
336 static int hf_h450_9_service = -1; /* BasicService */
337 static int hf_h450_9_can_retain_service = -1; /* BOOLEAN */
338 static int hf_h450_9_retain_sig_connection = -1; /* BOOLEAN */
339 static int hf_h450_9_ccRequestArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
340 static int hf_h450_9_ccRequestArg_extension_item = -1; /* MixedExtension */
341 static int hf_h450_9_retain_service = -1; /* BOOLEAN */
342 static int hf_h450_9_ccRequestRes_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
343 static int hf_h450_9_ccRequestRes_extension_item = -1; /* MixedExtension */
344 static int hf_h450_9_shortArg = -1; /* CcShortArg */
345 static int hf_h450_9_longArg = -1; /* CcLongArg */
346 static int hf_h450_9_ccShortArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
347 static int hf_h450_9_ccShortArg_extension_item = -1; /* MixedExtension */
348 static int hf_h450_9_ccLongArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
349 static int hf_h450_9_ccLongArg_extension_item = -1; /* MixedExtension */
351 /* --- Module Call-Offer-Operations --- --- --- */
353 static int hf_h450_10_h450_10_CoReqOptArg_PDU = -1; /* CoReqOptArg */
354 static int hf_h450_10_h450_10_RUAlertOptArg_PDU = -1; /* RUAlertOptArg */
355 static int hf_h450_10_h450_10_CfbOvrOptArg_PDU = -1; /* CfbOvrOptArg */
356 static int hf_h450_10_coReqOptArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
357 static int hf_h450_10_coReqOptArg_extension_item = -1; /* MixedExtension */
358 static int hf_h450_10_rUAlertOptArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
359 static int hf_h450_10_rUAlertOptArg_extension_item = -1; /* MixedExtension */
360 static int hf_h450_10_cfbOvrOptArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
361 static int hf_h450_10_cfbOvrOptArg_extension_item = -1; /* MixedExtension */
363 /* --- Module Call-Intrusion-Operations --- --- --- */
365 static int hf_h450_11_h450_11_CIRequestArg_PDU = -1; /* CIRequestArg */
366 static int hf_h450_11_h450_11_CIRequestRes_PDU = -1; /* CIRequestRes */
367 static int hf_h450_11_h450_11_CIGetCIPLOptArg_PDU = -1; /* CIGetCIPLOptArg */
368 static int hf_h450_11_h450_11_CIGetCIPLRes_PDU = -1; /* CIGetCIPLRes */
369 static int hf_h450_11_h450_11_CIIsOptArg_PDU = -1; /* CIIsOptArg */
370 static int hf_h450_11_h450_11_CIIsOptRes_PDU = -1; /* CIIsOptRes */
371 static int hf_h450_11_h450_11_CIFrcRelArg_PDU = -1; /* CIFrcRelArg */
372 static int hf_h450_11_h450_11_CIFrcRelOptRes_PDU = -1; /* CIFrcRelOptRes */
373 static int hf_h450_11_h450_11_CIWobOptArg_PDU = -1; /* CIWobOptArg */
374 static int hf_h450_11_h450_11_CIWobOptRes_PDU = -1; /* CIWobOptRes */
375 static int hf_h450_11_h450_11_CISilentArg_PDU = -1; /* CISilentArg */
376 static int hf_h450_11_h450_11_CISilentOptRes_PDU = -1; /* CISilentOptRes */
377 static int hf_h450_11_h450_11_CINotificationArg_PDU = -1; /* CINotificationArg */
378 static int hf_h450_11_ciCapabilityLevel = -1; /* CICapabilityLevel */
379 static int hf_h450_11_cIRequestArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
380 static int hf_h450_11_cIRequestArg_argumentExtension_item = -1; /* MixedExtension */
381 static int hf_h450_11_ciStatusInformation = -1; /* CIStatusInformation */
382 static int hf_h450_11_cIRequestRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
383 static int hf_h450_11_cIRequestRes_resultExtension_item = -1; /* MixedExtension */
384 static int hf_h450_11_cIGetCIPLOptArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
385 static int hf_h450_11_cIGetCIPLOptArg_argumentExtension_item = -1; /* MixedExtension */
386 static int hf_h450_11_ciProtectionLevel = -1; /* CIProtectionLevel */
387 static int hf_h450_11_silentMonitoringPermitted = -1; /* NULL */
388 static int hf_h450_11_cIGetCIPLRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
389 static int hf_h450_11_cIGetCIPLRes_resultExtension_item = -1; /* MixedExtension */
390 static int hf_h450_11_cIIsOptArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
391 static int hf_h450_11_cIIsOptArg_argumentExtension_item = -1; /* MixedExtension */
392 static int hf_h450_11_cIIsOptRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
393 static int hf_h450_11_cIIsOptRes_resultExtension_item = -1; /* MixedExtension */
394 static int hf_h450_11_cIFrcRelArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
395 static int hf_h450_11_cIFrcRelArg_argumentExtension_item = -1; /* MixedExtension */
396 static int hf_h450_11_cIFrcRelOptRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
397 static int hf_h450_11_cIFrcRelOptRes_resultExtension_item = -1; /* MixedExtension */
398 static int hf_h450_11_cIWobOptArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
399 static int hf_h450_11_cIWobOptArg_argumentExtension_item = -1; /* MixedExtension */
400 static int hf_h450_11_cIWobOptRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
401 static int hf_h450_11_cIWobOptRes_resultExtension_item = -1; /* MixedExtension */
402 static int hf_h450_11_specificCall = -1; /* CallIdentifier */
403 static int hf_h450_11_cISilentArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
404 static int hf_h450_11_cISilentArg_argumentExtension_item = -1; /* MixedExtension */
405 static int hf_h450_11_cISilentOptRes_resultExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
406 static int hf_h450_11_cISilentOptRes_resultExtension_item = -1; /* MixedExtension */
407 static int hf_h450_11_cINotificationArg_argumentExtension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
408 static int hf_h450_11_cINotificationArg_argumentExtension_item = -1; /* MixedExtension */
409 static int hf_h450_11_callIntrusionImpending = -1; /* NULL */
410 static int hf_h450_11_callIntruded = -1; /* NULL */
411 static int hf_h450_11_callIsolated = -1; /* NULL */
412 static int hf_h450_11_callForceReleased = -1; /* NULL */
413 static int hf_h450_11_callIntrusionComplete = -1; /* NULL */
414 static int hf_h450_11_callIntrusionEnd = -1; /* NULL */
416 /* --- Module Common-Information-Operations --- --- --- */
418 static int hf_h450_12_h450_12_DummyArg_PDU = -1; /* DummyArg */
419 static int hf_h450_12_h450_12_CmnArg_PDU = -1; /* CmnArg */
420 static int hf_h450_12_featureList = -1; /* FeatureList */
421 static int hf_h450_12_featureValues = -1; /* FeatureValues */
422 static int hf_h450_12_featureControl = -1; /* FeatureControl */
423 static int hf_h450_12_cmnArg_extension = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
424 static int hf_h450_12_cmnArg_extension_item = -1; /* MixedExtension */
425 static int hf_h450_12_extensionArg = -1; /* SEQUENCE_SIZE_0_255_OF_MixedExtension */
426 static int hf_h450_12_extensionArg_item = -1; /* MixedExtension */
427 static int hf_h450_12_ssCFreRoutingSupported = -1; /* NULL */
428 static int hf_h450_12_ssCTreRoutingSupported = -1; /* NULL */
429 static int hf_h450_12_ssCCBSPossible = -1; /* NULL */
430 static int hf_h450_12_ssCCNRPossible = -1; /* NULL */
431 static int hf_h450_12_ssCOSupported = -1; /* NULL */
432 static int hf_h450_12_ssCIForcedReleaseSupported = -1; /* NULL */
433 static int hf_h450_12_ssCIIsolationSupported = -1; /* NULL */
434 static int hf_h450_12_ssCIWaitOnBusySupported = -1; /* NULL */
435 static int hf_h450_12_ssCISilentMonitoringSupported = -1; /* NULL */
436 static int hf_h450_12_ssCIConferenceSupported = -1; /* NULL */
437 static int hf_h450_12_ssCHFarHoldSupported = -1; /* NULL */
438 static int hf_h450_12_ssMWICallbackSupported = -1; /* NULL */
439 static int hf_h450_12_ssCPCallParkSupported = -1; /* NULL */
440 static int hf_h450_12_partyCategory = -1; /* PartyCategory */
441 static int hf_h450_12_ssCIprotectionLevel = -1; /* SSCIProtectionLevel */
442 static int hf_h450_12_ssCHDoNotHold = -1; /* NULL */
443 static int hf_h450_12_ssCTDoNotTransfer = -1; /* NULL */
444 static int hf_h450_12_ssMWICallbackCall = -1; /* NULL */
445 static int hf_h450_12_ssCISilentMonitorPermitted = -1; /* NULL */
447 /*--- End of included file: packet-h450-hf.c ---*/
448 #line 52 "../../asn1/h450/packet-h450-template.c"
450 /* Initialize the subtree pointers */
452 /*--- Included file: packet-h450-ett.c ---*/
453 #line 1 "../../asn1/h450/packet-h450-ett.c"
455 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
457 static gint ett_h450_H4501SupplementaryService = -1;
458 static gint ett_h450_NetworkFacilityExtension = -1;
459 static gint ett_h450_EntityType = -1;
460 static gint ett_h450_InterpretationApdu = -1;
461 static gint ett_h450_ServiceApdus = -1;
462 static gint ett_h450_T_rosApdus = -1;
463 static gint ett_h450_EndpointAddress = -1;
464 static gint ett_h450_SEQUENCE_OF_AliasAddress = -1;
465 static gint ett_h450_PartySubaddress = -1;
466 static gint ett_h450_UserSpecifiedSubaddress = -1;
467 static gint ett_h450_Extension = -1;
469 /* --- Module Call-Transfer-Operations --- --- --- */
471 static gint ett_h450_2_DummyArg = -1;
472 static gint ett_h450_2_DummyRes = -1;
473 static gint ett_h450_2_CTInitiateArg = -1;
474 static gint ett_h450_2_T_cTInitiateArg_argumentExtension = -1;
475 static gint ett_h450_2_CTSetupArg = -1;
476 static gint ett_h450_2_T_cTSetupArg_argumentExtension = -1;
477 static gint ett_h450_2_CTIdentifyRes = -1;
478 static gint ett_h450_2_T_resultExtension = -1;
479 static gint ett_h450_2_CTUpdateArg = -1;
480 static gint ett_h450_2_T_cTUpdateArg_argumentExtension = -1;
481 static gint ett_h450_2_SubaddressTransferArg = -1;
482 static gint ett_h450_2_T_subaddressTransferArg_argumentExtension = -1;
483 static gint ett_h450_2_CTCompleteArg = -1;
484 static gint ett_h450_2_T_cTCompleteArg_argumentExtension = -1;
485 static gint ett_h450_2_CTActiveArg = -1;
486 static gint ett_h450_2_T_cTActiveArg_argumentExtension = -1;
487 static gint ett_h450_2_ExtensionSeq = -1;
488 static gint ett_h450_2_PAR_unspecified = -1;
490 /* --- Module Call-Diversion-Operations --- --- --- */
492 static gint ett_h450_3_ARG_activateDiversionQ = -1;
493 static gint ett_h450_3_ActivateDiversionQArg_extension = -1;
494 static gint ett_h450_3_RES_activateDiversionQ = -1;
495 static gint ett_h450_3_ARG_deactivateDiversionQ = -1;
496 static gint ett_h450_3_DeactivateDiversionQArg_extension = -1;
497 static gint ett_h450_3_RES_deactivateDiversionQ = -1;
498 static gint ett_h450_3_ARG_interrogateDiversionQ = -1;
499 static gint ett_h450_3_InterrogateDiversionQ_extension = -1;
500 static gint ett_h450_3_ARG_checkRestriction = -1;
501 static gint ett_h450_3_CheckRestrictionArg_extension = -1;
502 static gint ett_h450_3_RES_checkRestriction = -1;
503 static gint ett_h450_3_ARG_callRerouting = -1;
504 static gint ett_h450_3_CallReroutingArg_extension = -1;
505 static gint ett_h450_3_RES_callRerouting = -1;
506 static gint ett_h450_3_ARG_divertingLegInformation1 = -1;
507 static gint ett_h450_3_DivertingLegInformation1Arg_extension = -1;
508 static gint ett_h450_3_ARG_divertingLegInformation2 = -1;
509 static gint ett_h450_3_DivertingLegInformation2Arg_extension = -1;
510 static gint ett_h450_3_ARG_divertingLegInformation3 = -1;
511 static gint ett_h450_3_DivertingLegInformation3Arg_extension = -1;
512 static gint ett_h450_3_ARG_divertingLegInformation4 = -1;
513 static gint ett_h450_3_DivertingLegInformation4Arg_extension = -1;
514 static gint ett_h450_3_ARG_cfnrDivertedLegFailed = -1;
515 static gint ett_h450_3_IntResultList = -1;
516 static gint ett_h450_3_IntResult = -1;
517 static gint ett_h450_3_IntResult_extension = -1;
518 static gint ett_h450_3_PAR_unspecified = -1;
519 static gint ett_h450_3_ExtensionSeq = -1;
521 /* --- Module Call-Hold-Operations --- --- --- */
523 static gint ett_h450_4_HoldNotificArg = -1;
524 static gint ett_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
525 static gint ett_h450_4_RetrieveNotificArg = -1;
526 static gint ett_h450_4_RemoteHoldArg = -1;
527 static gint ett_h450_4_RemoteHoldRes = -1;
528 static gint ett_h450_4_RemoteRetrieveArg = -1;
529 static gint ett_h450_4_RemoteRetrieveRes = -1;
530 static gint ett_h450_4_MixedExtension = -1;
531 static gint ett_h450_4_PAR_undefined = -1;
533 /* --- Module Call-Park-Pickup-Operations --- --- --- */
535 static gint ett_h450_5_CpRequestArg = -1;
536 static gint ett_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
537 static gint ett_h450_5_CpRequestRes = -1;
538 static gint ett_h450_5_CpSetupArg = -1;
539 static gint ett_h450_5_CpSetupRes = -1;
540 static gint ett_h450_5_GroupIndicationOnArg = -1;
541 static gint ett_h450_5_GroupIndicationOnRes = -1;
542 static gint ett_h450_5_GroupIndicationOffArg = -1;
543 static gint ett_h450_5_GroupIndicationOffRes = -1;
544 static gint ett_h450_5_PickrequArg = -1;
545 static gint ett_h450_5_PickrequRes = -1;
546 static gint ett_h450_5_PickupArg = -1;
547 static gint ett_h450_5_PickupRes = -1;
548 static gint ett_h450_5_PickExeArg = -1;
549 static gint ett_h450_5_PickExeRes = -1;
550 static gint ett_h450_5_CpNotifyArg = -1;
551 static gint ett_h450_5_CpickupNotifyArg = -1;
552 static gint ett_h450_5_PAR_undefined = -1;
554 /* --- Module Call-Waiting-Operations --- --- --- */
556 static gint ett_h450_6_CallWaitingArg = -1;
557 static gint ett_h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
559 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
561 static gint ett_h450_7_MWIActivateArg = -1;
562 static gint ett_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
563 static gint ett_h450_7_DummyRes = -1;
564 static gint ett_h450_7_MWIDeactivateArg = -1;
565 static gint ett_h450_7_MWIInterrogateArg = -1;
566 static gint ett_h450_7_MWIInterrogateRes = -1;
567 static gint ett_h450_7_MWIInterrogateResElt = -1;
568 static gint ett_h450_7_MsgCentreId = -1;
569 static gint ett_h450_7_PAR_undefined = -1;
571 /* --- Module Name-Operations --- --- --- */
573 static gint ett_h450_8_ARG_callingName = -1;
574 static gint ett_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
575 static gint ett_h450_8_ARG_alertingName = -1;
576 static gint ett_h450_8_ARG_connectedName = -1;
577 static gint ett_h450_8_ARG_busyName = -1;
578 static gint ett_h450_8_Name = -1;
579 static gint ett_h450_8_NamePresentationAllowed = -1;
580 static gint ett_h450_8_NamePresentationRestricted = -1;
582 /* --- Module Call-Completion-Operations --- --- --- */
584 static gint ett_h450_9_CcRequestArg = -1;
585 static gint ett_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
586 static gint ett_h450_9_CcRequestRes = -1;
587 static gint ett_h450_9_CcArg = -1;
588 static gint ett_h450_9_CcShortArg = -1;
589 static gint ett_h450_9_CcLongArg = -1;
591 /* --- Module Call-Offer-Operations --- --- --- */
593 static gint ett_h450_10_CoReqOptArg = -1;
594 static gint ett_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
595 static gint ett_h450_10_RUAlertOptArg = -1;
596 static gint ett_h450_10_CfbOvrOptArg = -1;
598 /* --- Module Call-Intrusion-Operations --- --- --- */
600 static gint ett_h450_11_CIRequestArg = -1;
601 static gint ett_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
602 static gint ett_h450_11_CIRequestRes = -1;
603 static gint ett_h450_11_CIGetCIPLOptArg = -1;
604 static gint ett_h450_11_CIGetCIPLRes = -1;
605 static gint ett_h450_11_CIIsOptArg = -1;
606 static gint ett_h450_11_CIIsOptRes = -1;
607 static gint ett_h450_11_CIFrcRelArg = -1;
608 static gint ett_h450_11_CIFrcRelOptRes = -1;
609 static gint ett_h450_11_CIWobOptArg = -1;
610 static gint ett_h450_11_CIWobOptRes = -1;
611 static gint ett_h450_11_CISilentArg = -1;
612 static gint ett_h450_11_CISilentOptRes = -1;
613 static gint ett_h450_11_CINotificationArg = -1;
614 static gint ett_h450_11_CIStatusInformation = -1;
616 /* --- Module Common-Information-Operations --- --- --- */
618 static gint ett_h450_12_CmnArg = -1;
619 static gint ett_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension = -1;
620 static gint ett_h450_12_DummyArg = -1;
621 static gint ett_h450_12_FeatureList = -1;
622 static gint ett_h450_12_FeatureValues = -1;
623 static gint ett_h450_12_FeatureControl = -1;
625 /*--- End of included file: packet-h450-ett.c ---*/
626 #line 55 "../../asn1/h450/packet-h450-template.c"
628 static const value_string h450_str_operation[] = {
630 /*--- Included file: packet-h450-table10.c ---*/
631 #line 1 "../../asn1/h450/packet-h450-table10.c"
633 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
635 /* Unknown or empty loop list OPERATION */
637 /* --- Module Call-Transfer-Operations --- --- --- */
639 { 7, "callTransferIdentify" },
640 { 8, "callTransferAbandon" },
641 { 9, "callTransferInitiate" },
642 { 10, "callTransferSetup" },
643 { 13, "callTransferUpdate" },
644 { 14, "subaddressTransfer" },
645 { 12, "callTransferComplete" },
646 { 11, "callTransferActive" },
648 /* --- Module Call-Diversion-Operations --- --- --- */
650 { 15, "activateDiversionQ" },
651 { 16, "deactivateDiversionQ" },
652 { 17, "interrogateDiversionQ" },
653 { 18, "checkRestriction" },
654 { 19, "callRerouting" },
655 { 20, "divertingLegInformation1" },
656 { 21, "divertingLegInformation2" },
657 { 22, "divertingLegInformation3" },
658 { 100, "divertingLegInformation4" },
659 { 23, "cfnrDivertedLegFailed" },
661 /* --- Module Call-Hold-Operations --- --- --- */
663 { 101, "holdNotific" },
664 { 102, "retrieveNotific" },
665 { 103, "remoteHold" },
666 { 104, "remoteRetrieve" },
668 /* --- Module Call-Park-Pickup-Operations --- --- --- */
670 { 106, "cpRequest" },
671 { 107, "cpSetup" },
672 { 108, "groupIndicationOn" },
673 { 109, "groupIndicationOff" },
674 { 110, "pickrequ" },
675 { 111, "pickup" },
676 { 112, "pickExe" },
677 { 113, "cpNotify" },
678 { 114, "cpickupNotify" },
680 /* --- Module Call-Waiting-Operations --- --- --- */
682 { 105, "callWaiting" },
684 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
686 { 80, "mwiActivate" },
687 { 81, "mwiDeactivate" },
688 { 82, "mwiInterrogate" },
690 /* --- Module Name-Operations --- --- --- */
692 { 0, "callingName" },
693 { 1, "alertingName" },
694 { 2, "connectedName" },
695 { 3, "busyName" },
697 /* --- Module Call-Completion-Operations --- --- --- */
699 { 40, "ccbsRequest" },
700 { 27, "ccnrRequest" },
701 { 28, "ccCancel" },
702 { 29, "ccExecPossible" },
703 { 31, "ccRingout" },
704 { 32, "ccSuspend" },
705 { 33, "ccResume" },
707 /* --- Module Call-Offer-Operations --- --- --- */
709 { 34, "callOfferRequest" },
710 { 115, "remoteUserAlerting" },
711 { 49, "cfbOverride" },
713 /* --- Module Call-Intrusion-Operations --- --- --- */
715 { 43, "callIntrusionRequest" },
716 { 44, "callIntrusionGetCIPL" },
717 { 45, "callIntrusionIsolate" },
718 { 46, "callIntrusionForcedRelease" },
719 { 47, "callIntrusionWOBRequest" },
720 { 116, "callIntrusionSilentMonitor" },
721 { 117, "callIntrusionNotification" },
723 /* --- Module Common-Information-Operations --- --- --- */
725 { 84, "cmnRequest" },
726 { 85, "cmnInform" },
728 /*--- End of included file: packet-h450-table10.c ---*/
729 #line 58 "../../asn1/h450/packet-h450-template.c"
730 { 0, NULL}
733 static const value_string h450_str_error[] = {
735 /*--- Included file: packet-h450-table20.c ---*/
736 #line 1 "../../asn1/h450/packet-h450-table20.c"
738 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
740 { 0, "userNotSubscribed" },
741 { 1, "rejectedByNetwork" },
742 { 2, "rejectedByUser" },
743 { 3, "notAvailable" },
744 { 5, "insufficientInformation" },
745 { 6, "invalidServedUserNumber" },
746 { 7, "invalidCallState" },
747 { 8, "basicServiceNotProvided" },
748 { 9, "notIncomingCall" },
749 { 10, "supplementaryServiceInteractionNotAllowed" },
750 { 11, "resourceUnavailable" },
751 { 25, "callFailure" },
752 { 43, "proceduralError" },
754 /* --- Module Call-Transfer-Operations --- --- --- */
756 { 1008, "unspecified" },
757 { 1004, "invalidReroutingNumber" },
758 { 1005, "unrecognizedCallIdentity" },
759 { 1006, "establishmentFailure" },
761 /* --- Module Call-Diversion-Operations --- --- --- */
763 { 12, "invalidDivertedNumber" },
764 { 14, "specialServiceNumber" },
765 { 15, "diversionToServedUserNumber" },
766 { 24, "numberOfDiversionsExceeded" },
767 { 1000, "temporarilyUnavailable" },
768 { 1007, "notAuthorized" },
769 { 1008, "unspecified" },
771 /* --- Module Call-Hold-Operations --- --- --- */
773 { 2002, "undefined" },
775 /* --- Module Call-Park-Pickup-Operations --- --- --- */
777 { 2000, "callPickupIdInvalid" },
778 { 2001, "callAlreadyPickedUp" },
779 { 2002, "undefined" },
781 /* --- Module Call-Waiting-Operations --- --- --- */
783 /* Unknown or empty loop list ERROR */
785 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
787 { 2002, "undefined" },
788 { 1018, "invalidMsgCentreId" },
789 { 31, "notActivated" },
791 /* --- Module Name-Operations --- --- --- */
793 /* Unknown or empty loop list ERROR */
795 /* --- Module Call-Completion-Operations --- --- --- */
797 { 1010, "shortTermRejection" },
798 { 1011, "longTermRejection" },
799 { 1012, "remoteUserBusyAgain" },
800 { 1013, "failureToMatch" },
802 /* --- Module Call-Offer-Operations --- --- --- */
804 /* Unknown or empty loop list ERROR */
806 /* --- Module Call-Intrusion-Operations --- --- --- */
808 { 1009, "notBusy" },
809 { 1000, "temporarilyUnavailable" },
810 { 1007, "notAuthorized" },
812 /* --- Module Common-Information-Operations --- --- --- */
814 /* Unknown or empty loop list ERROR */
816 /*--- End of included file: packet-h450-table20.c ---*/
817 #line 63 "../../asn1/h450/packet-h450-template.c"
818 { 0, NULL}
821 /* ROSE context */
822 static rose_ctx_t h450_rose_ctx;
824 /* Global variables */
827 /*--- Included file: packet-h450-fn.c ---*/
828 #line 1 "../../asn1/h450/packet-h450-fn.c"
830 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
834 static int
835 dissect_h450_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
836 offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
838 return offset;
842 static const value_string h450_EntityType_vals[] = {
843 { 0, "endpoint" },
844 { 1, "anyEntity" },
845 { 0, NULL }
848 static const per_choice_t h450_EntityType_choice[] = {
849 { 0, &hf_h450_endpoint , ASN1_EXTENSION_ROOT , dissect_h450_NULL },
850 { 1, &hf_h450_anyEntity , ASN1_EXTENSION_ROOT , dissect_h450_NULL },
851 { 0, NULL, 0, NULL }
854 static int
855 dissect_h450_EntityType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
856 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
857 ett_h450_EntityType, h450_EntityType_choice,
858 NULL);
860 return offset;
865 static int
866 dissect_h450_AddressInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
867 offset = dissect_h225_AliasAddress(tvb, offset, actx, tree, hf_index);
869 return offset;
873 static const per_sequence_t h450_NetworkFacilityExtension_sequence[] = {
874 { &hf_h450_sourceEntity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EntityType },
875 { &hf_h450_sourceEntityAddress, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_AddressInformation },
876 { &hf_h450_destinationEntity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EntityType },
877 { &hf_h450_destinationEntityAddress, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_AddressInformation },
878 { NULL, 0, 0, NULL }
881 static int
882 dissect_h450_NetworkFacilityExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
883 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
884 ett_h450_NetworkFacilityExtension, h450_NetworkFacilityExtension_sequence);
886 return offset;
890 static const value_string h450_InterpretationApdu_vals[] = {
891 { 0, "discardAnyUnrecognizedInvokePdu" },
892 { 1, "clearCallIfAnyInvokePduNotRecognized" },
893 { 2, "rejectAnyUnrecognizedInvokePdu" },
894 { 0, NULL }
897 static const per_choice_t h450_InterpretationApdu_choice[] = {
898 { 0, &hf_h450_discardAnyUnrecognizedInvokePdu, ASN1_EXTENSION_ROOT , dissect_h450_NULL },
899 { 1, &hf_h450_clearCallIfAnyInvokePduNotRecognized, ASN1_EXTENSION_ROOT , dissect_h450_NULL },
900 { 2, &hf_h450_rejectAnyUnrecognizedInvokePdu, ASN1_EXTENSION_ROOT , dissect_h450_NULL },
901 { 0, NULL, 0, NULL }
904 static int
905 dissect_h450_InterpretationApdu(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
906 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
907 ett_h450_InterpretationApdu, h450_InterpretationApdu_choice,
908 NULL);
910 return offset;
915 static int
916 dissect_h450_T_rosApdus_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
917 #line 62 "../../asn1/h450/h450.cnf"
918 h450_rose_ctx.apdu_depth = 1;
919 actx->rose_ctx = &h450_rose_ctx;
921 offset = dissect_h450_ros_ROS(tvb, offset, actx, tree, hf_index);
923 return offset;
927 static const per_sequence_t h450_T_rosApdus_sequence_of[1] = {
928 { &hf_h450_rosApdus_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_T_rosApdus_item },
931 static int
932 dissect_h450_T_rosApdus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
933 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
934 ett_h450_T_rosApdus, h450_T_rosApdus_sequence_of,
935 1, NO_BOUND, FALSE);
937 return offset;
941 static const value_string h450_ServiceApdus_vals[] = {
942 { 0, "rosApdus" },
943 { 0, NULL }
946 static const per_choice_t h450_ServiceApdus_choice[] = {
947 { 0, &hf_h450_rosApdus , ASN1_EXTENSION_ROOT , dissect_h450_T_rosApdus },
948 { 0, NULL, 0, NULL }
951 static int
952 dissect_h450_ServiceApdus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
953 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
954 ett_h450_ServiceApdus, h450_ServiceApdus_choice,
955 NULL);
957 return offset;
961 static const per_sequence_t h450_H4501SupplementaryService_sequence[] = {
962 { &hf_h450_networkFacilityExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_NetworkFacilityExtension },
963 { &hf_h450_interpretationApdu, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_InterpretationApdu },
964 { &hf_h450_serviceApdu , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_ServiceApdus },
965 { NULL, 0, 0, NULL }
968 static int
969 dissect_h450_H4501SupplementaryService(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
970 #line 55 "../../asn1/h450/h450.cnf"
971 proto_item *hidden_item;
973 hidden_item = proto_tree_add_item(tree, proto_h450, tvb, offset, -1, ENC_NA);
974 PROTO_ITEM_SET_HIDDEN(hidden_item);
976 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
977 ett_h450_H4501SupplementaryService, h450_H4501SupplementaryService_sequence);
979 return offset;
983 static const per_sequence_t h450_SEQUENCE_OF_AliasAddress_sequence_of[1] = {
984 { &hf_h450_destinationAddress_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h225_AliasAddress },
987 static int
988 dissect_h450_SEQUENCE_OF_AliasAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
989 offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
990 ett_h450_SEQUENCE_OF_AliasAddress, h450_SEQUENCE_OF_AliasAddress_sequence_of);
992 return offset;
996 static const per_sequence_t h450_EndpointAddress_sequence[] = {
997 { &hf_h450_destinationAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_SEQUENCE_OF_AliasAddress },
998 { &hf_h450_remoteExtensionAddress, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_AliasAddress },
999 { &hf_h450_destinationAddressPresentationIndicator, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_h225_PresentationIndicator },
1000 { &hf_h450_destinationAddressScreeningIndicator, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_h225_ScreeningIndicator },
1001 { &hf_h450_remoteExtensionAddressPresentationIndicator, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_h225_PresentationIndicator },
1002 { &hf_h450_remoteExtensionAddressScreeningIndicator, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_h225_ScreeningIndicator },
1003 { NULL, 0, 0, NULL }
1006 static int
1007 dissect_h450_EndpointAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1008 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1009 ett_h450_EndpointAddress, h450_EndpointAddress_sequence);
1011 return offset;
1016 static int
1017 dissect_h450_SubaddressInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1018 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1019 1, 20, FALSE, NULL);
1021 return offset;
1026 static int
1027 dissect_h450_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1028 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
1030 return offset;
1034 static const per_sequence_t h450_UserSpecifiedSubaddress_sequence[] = {
1035 { &hf_h450_subaddressInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_SubaddressInformation },
1036 { &hf_h450_oddCountIndicator, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_BOOLEAN },
1037 { NULL, 0, 0, NULL }
1040 static int
1041 dissect_h450_UserSpecifiedSubaddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1042 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1043 ett_h450_UserSpecifiedSubaddress, h450_UserSpecifiedSubaddress_sequence);
1045 return offset;
1050 static int
1051 dissect_h450_NSAPSubaddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1052 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1053 1, 20, FALSE, NULL);
1055 return offset;
1059 static const value_string h450_PartySubaddress_vals[] = {
1060 { 0, "userSpecifiedSubaddress" },
1061 { 1, "nsapSubaddress" },
1062 { 0, NULL }
1065 static const per_choice_t h450_PartySubaddress_choice[] = {
1066 { 0, &hf_h450_userSpecifiedSubaddress, ASN1_EXTENSION_ROOT , dissect_h450_UserSpecifiedSubaddress },
1067 { 1, &hf_h450_nsapSubaddress , ASN1_EXTENSION_ROOT , dissect_h450_NSAPSubaddress },
1068 { 0, NULL, 0, NULL }
1071 static int
1072 dissect_h450_PartySubaddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1073 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1074 ett_h450_PartySubaddress, h450_PartySubaddress_choice,
1075 NULL);
1077 return offset;
1082 static int
1083 dissect_h450_PresentationAllowedIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1084 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
1086 return offset;
1091 static int
1092 dissect_h450_H225InformationElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1093 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1094 NO_BOUND, NO_BOUND, FALSE, NULL);
1096 return offset;
1101 static int
1102 dissect_h450_OBJECT_IDENTIFIER(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1103 offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL);
1105 return offset;
1110 static int
1111 dissect_h450_T_extensionArgument(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1112 offset = dissect_per_open_type(tvb, offset, actx, tree, hf_index, NULL);
1114 return offset;
1118 static const per_sequence_t h450_Extension_sequence[] = {
1119 { &hf_h450_extensionId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_OBJECT_IDENTIFIER },
1120 { &hf_h450_extensionArgument, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_T_extensionArgument },
1121 { NULL, 0, 0, NULL }
1124 static int
1125 dissect_h450_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1126 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1127 ett_h450_Extension, h450_Extension_sequence);
1129 return offset;
1132 /*--- PDUs ---*/
1134 static int dissect_h450_H4501SupplementaryService_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1135 int offset = 0;
1136 asn1_ctx_t asn1_ctx;
1137 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1138 offset = dissect_h450_H4501SupplementaryService(tvb, offset, &asn1_ctx, tree, hf_h450_h450_H4501SupplementaryService_PDU);
1139 offset += 7; offset >>= 3;
1140 return offset;
1144 /* --- Module Call-Transfer-Operations --- --- --- */
1147 static const per_sequence_t h450_2_ExtensionSeq_sequence_of[1] = {
1148 { &hf_h450_2_ExtensionSeq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_Extension },
1151 static int
1152 dissect_h450_2_ExtensionSeq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1153 offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
1154 ett_h450_2_ExtensionSeq, h450_2_ExtensionSeq_sequence_of);
1156 return offset;
1160 static const value_string h450_2_DummyArg_vals[] = {
1161 { 0, "extensionSeq" },
1162 { 1, "nonStandardData" },
1163 { 0, NULL }
1166 static const per_choice_t h450_2_DummyArg_choice[] = {
1167 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1168 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1169 { 0, NULL, 0, NULL }
1172 static int
1173 dissect_h450_2_DummyArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1174 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1175 ett_h450_2_DummyArg, h450_2_DummyArg_choice,
1176 NULL);
1178 return offset;
1182 static const value_string h450_2_DummyRes_vals[] = {
1183 { 0, "extensionSeq" },
1184 { 1, "nonStandardData" },
1185 { 0, NULL }
1188 static const per_choice_t h450_2_DummyRes_choice[] = {
1189 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1190 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1191 { 0, NULL, 0, NULL }
1194 static int
1195 dissect_h450_2_DummyRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1196 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1197 ett_h450_2_DummyRes, h450_2_DummyRes_choice,
1198 NULL);
1200 return offset;
1205 static int
1206 dissect_h450_2_CallIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1207 offset = dissect_per_NumericString(tvb, offset, actx, tree, hf_index,
1208 0, 4, FALSE);
1210 return offset;
1214 static const value_string h450_2_T_cTInitiateArg_argumentExtension_vals[] = {
1215 { 0, "extensionSeq" },
1216 { 1, "nonStandardData" },
1217 { 0, NULL }
1220 static const per_choice_t h450_2_T_cTInitiateArg_argumentExtension_choice[] = {
1221 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1222 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1223 { 0, NULL, 0, NULL }
1226 static int
1227 dissect_h450_2_T_cTInitiateArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1228 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1229 ett_h450_2_T_cTInitiateArg_argumentExtension, h450_2_T_cTInitiateArg_argumentExtension_choice,
1230 NULL);
1232 return offset;
1236 static const per_sequence_t h450_2_CTInitiateArg_sequence[] = {
1237 { &hf_h450_2_callIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_2_CallIdentity },
1238 { &hf_h450_2_reroutingNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1239 { &hf_h450_2_cTInitiateArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_cTInitiateArg_argumentExtension },
1240 { NULL, 0, 0, NULL }
1243 static int
1244 dissect_h450_2_CTInitiateArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1245 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1246 ett_h450_2_CTInitiateArg, h450_2_CTInitiateArg_sequence);
1248 return offset;
1252 static const value_string h450_2_T_cTSetupArg_argumentExtension_vals[] = {
1253 { 0, "extensionSeq" },
1254 { 1, "nonStandardData" },
1255 { 0, NULL }
1258 static const per_choice_t h450_2_T_cTSetupArg_argumentExtension_choice[] = {
1259 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1260 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1261 { 0, NULL, 0, NULL }
1264 static int
1265 dissect_h450_2_T_cTSetupArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1266 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1267 ett_h450_2_T_cTSetupArg_argumentExtension, h450_2_T_cTSetupArg_argumentExtension_choice,
1268 NULL);
1270 return offset;
1274 static const per_sequence_t h450_2_CTSetupArg_sequence[] = {
1275 { &hf_h450_2_callIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_2_CallIdentity },
1276 { &hf_h450_2_transferringNumber, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
1277 { &hf_h450_2_cTSetupArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_cTSetupArg_argumentExtension },
1278 { NULL, 0, 0, NULL }
1281 static int
1282 dissect_h450_2_CTSetupArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1283 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1284 ett_h450_2_CTSetupArg, h450_2_CTSetupArg_sequence);
1286 return offset;
1290 static const value_string h450_2_T_resultExtension_vals[] = {
1291 { 0, "extensionSeq" },
1292 { 1, "nonStandardData" },
1293 { 0, NULL }
1296 static const per_choice_t h450_2_T_resultExtension_choice[] = {
1297 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1298 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1299 { 0, NULL, 0, NULL }
1302 static int
1303 dissect_h450_2_T_resultExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1304 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1305 ett_h450_2_T_resultExtension, h450_2_T_resultExtension_choice,
1306 NULL);
1308 return offset;
1312 static const per_sequence_t h450_2_CTIdentifyRes_sequence[] = {
1313 { &hf_h450_2_callIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_2_CallIdentity },
1314 { &hf_h450_2_reroutingNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1315 { &hf_h450_2_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_resultExtension },
1316 { NULL, 0, 0, NULL }
1319 static int
1320 dissect_h450_2_CTIdentifyRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1321 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1322 ett_h450_2_CTIdentifyRes, h450_2_CTIdentifyRes_sequence);
1324 return offset;
1329 static int
1330 dissect_h450_2_BMPString_SIZE_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1331 offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
1332 1, 128, FALSE);
1334 return offset;
1338 static const value_string h450_2_T_cTUpdateArg_argumentExtension_vals[] = {
1339 { 0, "extensionSeq" },
1340 { 1, "nonStandardData" },
1341 { 0, NULL }
1344 static const per_choice_t h450_2_T_cTUpdateArg_argumentExtension_choice[] = {
1345 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1346 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1347 { 0, NULL, 0, NULL }
1350 static int
1351 dissect_h450_2_T_cTUpdateArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1352 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1353 ett_h450_2_T_cTUpdateArg_argumentExtension, h450_2_T_cTUpdateArg_argumentExtension_choice,
1354 NULL);
1356 return offset;
1360 static const per_sequence_t h450_2_CTUpdateArg_sequence[] = {
1361 { &hf_h450_2_redirectionNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1362 { &hf_h450_2_redirectionInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_BMPString_SIZE_1_128 },
1363 { &hf_h450_2_basicCallInfoElements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_H225InformationElement },
1364 { &hf_h450_2_cTUpdateArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_cTUpdateArg_argumentExtension },
1365 { NULL, 0, 0, NULL }
1368 static int
1369 dissect_h450_2_CTUpdateArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1370 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1371 ett_h450_2_CTUpdateArg, h450_2_CTUpdateArg_sequence);
1373 return offset;
1377 static const value_string h450_2_T_subaddressTransferArg_argumentExtension_vals[] = {
1378 { 0, "extensionSeq" },
1379 { 1, "nonStandardData" },
1380 { 0, NULL }
1383 static const per_choice_t h450_2_T_subaddressTransferArg_argumentExtension_choice[] = {
1384 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1385 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1386 { 0, NULL, 0, NULL }
1389 static int
1390 dissect_h450_2_T_subaddressTransferArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1391 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1392 ett_h450_2_T_subaddressTransferArg_argumentExtension, h450_2_T_subaddressTransferArg_argumentExtension_choice,
1393 NULL);
1395 return offset;
1399 static const per_sequence_t h450_2_SubaddressTransferArg_sequence[] = {
1400 { &hf_h450_2_redirectionSubaddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_PartySubaddress },
1401 { &hf_h450_2_subaddressTransferArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_subaddressTransferArg_argumentExtension },
1402 { NULL, 0, 0, NULL }
1405 static int
1406 dissect_h450_2_SubaddressTransferArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1407 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1408 ett_h450_2_SubaddressTransferArg, h450_2_SubaddressTransferArg_sequence);
1410 return offset;
1414 static const value_string h450_2_EndDesignation_vals[] = {
1415 { 0, "primaryEnd" },
1416 { 1, "secondaryEnd" },
1417 { 0, NULL }
1421 static int
1422 dissect_h450_2_EndDesignation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1423 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1424 2, NULL, TRUE, 0, NULL);
1426 return offset;
1430 static const value_string h450_2_CallStatus_vals[] = {
1431 { 0, "answered" },
1432 { 1, "alerting" },
1433 { 0, NULL }
1437 static int
1438 dissect_h450_2_CallStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1439 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1440 2, NULL, TRUE, 0, NULL);
1442 return offset;
1446 static const value_string h450_2_T_cTCompleteArg_argumentExtension_vals[] = {
1447 { 0, "extensionSeq" },
1448 { 1, "nonStandardData" },
1449 { 0, NULL }
1452 static const per_choice_t h450_2_T_cTCompleteArg_argumentExtension_choice[] = {
1453 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1454 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1455 { 0, NULL, 0, NULL }
1458 static int
1459 dissect_h450_2_T_cTCompleteArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1460 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1461 ett_h450_2_T_cTCompleteArg_argumentExtension, h450_2_T_cTCompleteArg_argumentExtension_choice,
1462 NULL);
1464 return offset;
1468 static const per_sequence_t h450_2_CTCompleteArg_sequence[] = {
1469 { &hf_h450_2_endDesignation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_2_EndDesignation },
1470 { &hf_h450_2_redirectionNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1471 { &hf_h450_2_basicCallInfoElements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_H225InformationElement },
1472 { &hf_h450_2_redirectionInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_BMPString_SIZE_1_128 },
1473 { &hf_h450_2_callStatus , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_CallStatus },
1474 { &hf_h450_2_cTCompleteArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_cTCompleteArg_argumentExtension },
1475 { NULL, 0, 0, NULL }
1478 static int
1479 dissect_h450_2_CTCompleteArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1480 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1481 ett_h450_2_CTCompleteArg, h450_2_CTCompleteArg_sequence);
1483 return offset;
1487 static const value_string h450_2_T_cTActiveArg_argumentExtension_vals[] = {
1488 { 0, "extensionSeq" },
1489 { 1, "nonStandardData" },
1490 { 0, NULL }
1493 static const per_choice_t h450_2_T_cTActiveArg_argumentExtension_choice[] = {
1494 { 0, &hf_h450_2_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_2_ExtensionSeq },
1495 { 1, &hf_h450_2_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1496 { 0, NULL, 0, NULL }
1499 static int
1500 dissect_h450_2_T_cTActiveArg_argumentExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1501 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1502 ett_h450_2_T_cTActiveArg_argumentExtension, h450_2_T_cTActiveArg_argumentExtension_choice,
1503 NULL);
1505 return offset;
1509 static const per_sequence_t h450_2_CTActiveArg_sequence[] = {
1510 { &hf_h450_2_connectedAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1511 { &hf_h450_2_basicCallInfoElements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_H225InformationElement },
1512 { &hf_h450_2_connectedInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_BMPString_SIZE_1_128 },
1513 { &hf_h450_2_cTActiveArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_2_T_cTActiveArg_argumentExtension },
1514 { NULL, 0, 0, NULL }
1517 static int
1518 dissect_h450_2_CTActiveArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1519 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1520 ett_h450_2_CTActiveArg, h450_2_CTActiveArg_sequence);
1522 return offset;
1526 static const value_string h450_2_PAR_unspecified_vals[] = {
1527 { 0, "extension" },
1528 { 1, "nonStandard" },
1529 { 0, NULL }
1532 static const per_choice_t h450_2_PAR_unspecified_choice[] = {
1533 { 0, &hf_h450_2_unspecified_extension, ASN1_NO_EXTENSIONS , dissect_h450_Extension },
1534 { 1, &hf_h450_2_nonStandard , ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1535 { 0, NULL, 0, NULL }
1538 static int
1539 dissect_h450_2_PAR_unspecified(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1540 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1541 ett_h450_2_PAR_unspecified, h450_2_PAR_unspecified_choice,
1542 NULL);
1544 return offset;
1547 /*--- PDUs ---*/
1549 static int dissect_h450_2_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1550 int offset = 0;
1551 asn1_ctx_t asn1_ctx;
1552 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1553 offset = dissect_h450_2_DummyArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_DummyArg_PDU);
1554 offset += 7; offset >>= 3;
1555 return offset;
1557 static int dissect_h450_2_CTIdentifyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1558 int offset = 0;
1559 asn1_ctx_t asn1_ctx;
1560 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1561 offset = dissect_h450_2_CTIdentifyRes(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTIdentifyRes_PDU);
1562 offset += 7; offset >>= 3;
1563 return offset;
1565 static int dissect_h450_2_CTInitiateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1566 int offset = 0;
1567 asn1_ctx_t asn1_ctx;
1568 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1569 offset = dissect_h450_2_CTInitiateArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTInitiateArg_PDU);
1570 offset += 7; offset >>= 3;
1571 return offset;
1573 static int dissect_h450_2_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1574 int offset = 0;
1575 asn1_ctx_t asn1_ctx;
1576 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1577 offset = dissect_h450_2_DummyRes(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_DummyRes_PDU);
1578 offset += 7; offset >>= 3;
1579 return offset;
1581 static int dissect_h450_2_CTSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1582 int offset = 0;
1583 asn1_ctx_t asn1_ctx;
1584 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1585 offset = dissect_h450_2_CTSetupArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTSetupArg_PDU);
1586 offset += 7; offset >>= 3;
1587 return offset;
1589 static int dissect_h450_2_CTUpdateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1590 int offset = 0;
1591 asn1_ctx_t asn1_ctx;
1592 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1593 offset = dissect_h450_2_CTUpdateArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTUpdateArg_PDU);
1594 offset += 7; offset >>= 3;
1595 return offset;
1597 static int dissect_h450_2_SubaddressTransferArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1598 int offset = 0;
1599 asn1_ctx_t asn1_ctx;
1600 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1601 offset = dissect_h450_2_SubaddressTransferArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_SubaddressTransferArg_PDU);
1602 offset += 7; offset >>= 3;
1603 return offset;
1605 static int dissect_h450_2_CTCompleteArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1606 int offset = 0;
1607 asn1_ctx_t asn1_ctx;
1608 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1609 offset = dissect_h450_2_CTCompleteArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTCompleteArg_PDU);
1610 offset += 7; offset >>= 3;
1611 return offset;
1613 static int dissect_h450_2_CTActiveArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1614 int offset = 0;
1615 asn1_ctx_t asn1_ctx;
1616 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1617 offset = dissect_h450_2_CTActiveArg(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_CTActiveArg_PDU);
1618 offset += 7; offset >>= 3;
1619 return offset;
1621 static int dissect_h450_2_PAR_unspecified_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
1622 int offset = 0;
1623 asn1_ctx_t asn1_ctx;
1624 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
1625 offset = dissect_h450_2_PAR_unspecified(tvb, offset, &asn1_ctx, tree, hf_h450_2_h450_2_PAR_unspecified_PDU);
1626 offset += 7; offset >>= 3;
1627 return offset;
1631 /* --- Module Call-Diversion-Operations --- --- --- */
1634 static const value_string h450_3_Procedure_vals[] = {
1635 { 0, "cfu" },
1636 { 1, "cfb" },
1637 { 2, "cfnr" },
1638 { 0, NULL }
1642 static int
1643 dissect_h450_3_Procedure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1644 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1645 3, NULL, TRUE, 0, NULL);
1647 return offset;
1651 static const value_string h450_3_BasicService_vals[] = {
1652 { 0, "allServices" },
1653 { 0, NULL }
1657 static int
1658 dissect_h450_3_BasicService(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1659 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1660 1, NULL, TRUE, 0, NULL);
1662 return offset;
1666 static const per_sequence_t h450_3_ExtensionSeq_sequence_of[1] = {
1667 { &hf_h450_3_ExtensionSeq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_Extension },
1670 static int
1671 dissect_h450_3_ExtensionSeq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1672 offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
1673 ett_h450_3_ExtensionSeq, h450_3_ExtensionSeq_sequence_of);
1675 return offset;
1679 static const value_string h450_3_ActivateDiversionQArg_extension_vals[] = {
1680 { 0, "extensionSeq" },
1681 { 1, "nonStandardData" },
1682 { 0, NULL }
1685 static const per_choice_t h450_3_ActivateDiversionQArg_extension_choice[] = {
1686 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1687 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1688 { 0, NULL, 0, NULL }
1691 static int
1692 dissect_h450_3_ActivateDiversionQArg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1693 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1694 ett_h450_3_ActivateDiversionQArg_extension, h450_3_ActivateDiversionQArg_extension_choice,
1695 NULL);
1697 return offset;
1701 static const per_sequence_t h450_3_ARG_activateDiversionQ_sequence[] = {
1702 { &hf_h450_3_procedure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_Procedure },
1703 { &hf_h450_3_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_BasicService },
1704 { &hf_h450_3_divertedToAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1705 { &hf_h450_3_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1706 { &hf_h450_3_activatingUserNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1707 { &hf_h450_3_activateDiversionQArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_ActivateDiversionQArg_extension },
1708 { NULL, 0, 0, NULL }
1711 static int
1712 dissect_h450_3_ARG_activateDiversionQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1713 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1714 ett_h450_3_ARG_activateDiversionQ, h450_3_ARG_activateDiversionQ_sequence);
1716 return offset;
1720 static const value_string h450_3_RES_activateDiversionQ_vals[] = {
1721 { 0, "extensionSeq" },
1722 { 1, "nonStandardData" },
1723 { 0, NULL }
1726 static const per_choice_t h450_3_RES_activateDiversionQ_choice[] = {
1727 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1728 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1729 { 0, NULL, 0, NULL }
1732 static int
1733 dissect_h450_3_RES_activateDiversionQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1734 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1735 ett_h450_3_RES_activateDiversionQ, h450_3_RES_activateDiversionQ_choice,
1736 NULL);
1738 return offset;
1742 static const value_string h450_3_DeactivateDiversionQArg_extension_vals[] = {
1743 { 0, "extensionSeq" },
1744 { 1, "nonStandardData" },
1745 { 0, NULL }
1748 static const per_choice_t h450_3_DeactivateDiversionQArg_extension_choice[] = {
1749 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1750 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1751 { 0, NULL, 0, NULL }
1754 static int
1755 dissect_h450_3_DeactivateDiversionQArg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1756 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1757 ett_h450_3_DeactivateDiversionQArg_extension, h450_3_DeactivateDiversionQArg_extension_choice,
1758 NULL);
1760 return offset;
1764 static const per_sequence_t h450_3_ARG_deactivateDiversionQ_sequence[] = {
1765 { &hf_h450_3_procedure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_Procedure },
1766 { &hf_h450_3_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_BasicService },
1767 { &hf_h450_3_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1768 { &hf_h450_3_deactivatingUserNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1769 { &hf_h450_3_deactivateDiversionQArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DeactivateDiversionQArg_extension },
1770 { NULL, 0, 0, NULL }
1773 static int
1774 dissect_h450_3_ARG_deactivateDiversionQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1775 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1776 ett_h450_3_ARG_deactivateDiversionQ, h450_3_ARG_deactivateDiversionQ_sequence);
1778 return offset;
1782 static const value_string h450_3_RES_deactivateDiversionQ_vals[] = {
1783 { 0, "extensionSeq" },
1784 { 1, "nonStandardData" },
1785 { 0, NULL }
1788 static const per_choice_t h450_3_RES_deactivateDiversionQ_choice[] = {
1789 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1790 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1791 { 0, NULL, 0, NULL }
1794 static int
1795 dissect_h450_3_RES_deactivateDiversionQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1796 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1797 ett_h450_3_RES_deactivateDiversionQ, h450_3_RES_deactivateDiversionQ_choice,
1798 NULL);
1800 return offset;
1804 static const value_string h450_3_InterrogateDiversionQ_extension_vals[] = {
1805 { 0, "extensionSeq" },
1806 { 1, "nonStandardData" },
1807 { 0, NULL }
1810 static const per_choice_t h450_3_InterrogateDiversionQ_extension_choice[] = {
1811 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1812 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1813 { 0, NULL, 0, NULL }
1816 static int
1817 dissect_h450_3_InterrogateDiversionQ_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1818 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1819 ett_h450_3_InterrogateDiversionQ_extension, h450_3_InterrogateDiversionQ_extension_choice,
1820 NULL);
1822 return offset;
1826 static const per_sequence_t h450_3_ARG_interrogateDiversionQ_sequence[] = {
1827 { &hf_h450_3_procedure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_Procedure },
1828 { &hf_h450_3_basicService , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BasicService },
1829 { &hf_h450_3_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1830 { &hf_h450_3_interrogatingUserNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1831 { &hf_h450_3_interrogateDiversionQ_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_InterrogateDiversionQ_extension },
1832 { NULL, 0, 0, NULL }
1835 static int
1836 dissect_h450_3_ARG_interrogateDiversionQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1837 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1838 ett_h450_3_ARG_interrogateDiversionQ, h450_3_ARG_interrogateDiversionQ_sequence);
1840 return offset;
1844 static const value_string h450_3_CheckRestrictionArg_extension_vals[] = {
1845 { 0, "extensionSeq" },
1846 { 1, "nonStandardData" },
1847 { 0, NULL }
1850 static const per_choice_t h450_3_CheckRestrictionArg_extension_choice[] = {
1851 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1852 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1853 { 0, NULL, 0, NULL }
1856 static int
1857 dissect_h450_3_CheckRestrictionArg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1858 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1859 ett_h450_3_CheckRestrictionArg_extension, h450_3_CheckRestrictionArg_extension_choice,
1860 NULL);
1862 return offset;
1866 static const per_sequence_t h450_3_ARG_checkRestriction_sequence[] = {
1867 { &hf_h450_3_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1868 { &hf_h450_3_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_BasicService },
1869 { &hf_h450_3_divertedToNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1870 { &hf_h450_3_checkRestrictionArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_CheckRestrictionArg_extension },
1871 { NULL, 0, 0, NULL }
1874 static int
1875 dissect_h450_3_ARG_checkRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1876 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1877 ett_h450_3_ARG_checkRestriction, h450_3_ARG_checkRestriction_sequence);
1879 return offset;
1883 static const value_string h450_3_RES_checkRestriction_vals[] = {
1884 { 0, "extensionSeq" },
1885 { 1, "nonStandardData" },
1886 { 0, NULL }
1889 static const per_choice_t h450_3_RES_checkRestriction_choice[] = {
1890 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1891 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1892 { 0, NULL, 0, NULL }
1895 static int
1896 dissect_h450_3_RES_checkRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1897 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1898 ett_h450_3_RES_checkRestriction, h450_3_RES_checkRestriction_choice,
1899 NULL);
1901 return offset;
1905 static const value_string h450_3_DiversionReason_vals[] = {
1906 { 0, "unknown" },
1907 { 1, "cfu" },
1908 { 2, "cfb" },
1909 { 3, "cfnr" },
1910 { 0, NULL }
1914 static int
1915 dissect_h450_3_DiversionReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1916 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1917 4, NULL, TRUE, 0, NULL);
1919 return offset;
1924 static int
1925 dissect_h450_3_INTEGER_1_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1926 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1927 1U, 15U, NULL, FALSE);
1929 return offset;
1933 static const value_string h450_3_SubscriptionOption_vals[] = {
1934 { 0, "noNotification" },
1935 { 1, "notificationWithoutDivertedToNr" },
1936 { 2, "notificationWithDivertedToNr" },
1937 { 0, NULL }
1941 static int
1942 dissect_h450_3_SubscriptionOption(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1943 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1944 3, NULL, TRUE, 0, NULL);
1946 return offset;
1951 static int
1952 dissect_h450_3_BMPString_SIZE_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1953 offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
1954 1, 128, FALSE);
1956 return offset;
1960 static const value_string h450_3_CallReroutingArg_extension_vals[] = {
1961 { 0, "extensionSeq" },
1962 { 1, "nonStandardData" },
1963 { 0, NULL }
1966 static const per_choice_t h450_3_CallReroutingArg_extension_choice[] = {
1967 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
1968 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
1969 { 0, NULL, 0, NULL }
1972 static int
1973 dissect_h450_3_CallReroutingArg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1974 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1975 ett_h450_3_CallReroutingArg_extension, h450_3_CallReroutingArg_extension_choice,
1976 NULL);
1978 return offset;
1982 static const per_sequence_t h450_3_ARG_callRerouting_sequence[] = {
1983 { &hf_h450_3_reroutingReason, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_DiversionReason },
1984 { &hf_h450_3_originalReroutingReason, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DiversionReason },
1985 { &hf_h450_3_calledAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1986 { &hf_h450_3_diversionCounter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_INTEGER_1_15 },
1987 { &hf_h450_3_h225InfoElement, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_H225InformationElement },
1988 { &hf_h450_3_lastReroutingNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1989 { &hf_h450_3_subscriptionOption, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_SubscriptionOption },
1990 { &hf_h450_3_callingPartySubaddress, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_PartySubaddress },
1991 { &hf_h450_3_callingNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
1992 { &hf_h450_3_callingInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
1993 { &hf_h450_3_originalCalledNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
1994 { &hf_h450_3_redirectingInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
1995 { &hf_h450_3_originalCalledInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
1996 { &hf_h450_3_callReroutingArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_CallReroutingArg_extension },
1997 { NULL, 0, 0, NULL }
2000 static int
2001 dissect_h450_3_ARG_callRerouting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2002 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2003 ett_h450_3_ARG_callRerouting, h450_3_ARG_callRerouting_sequence);
2005 return offset;
2009 static const value_string h450_3_RES_callRerouting_vals[] = {
2010 { 0, "extensionSeq" },
2011 { 1, "nonStandardData" },
2012 { 0, NULL }
2015 static const per_choice_t h450_3_RES_callRerouting_choice[] = {
2016 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2017 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2018 { 0, NULL, 0, NULL }
2021 static int
2022 dissect_h450_3_RES_callRerouting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2023 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2024 ett_h450_3_RES_callRerouting, h450_3_RES_callRerouting_choice,
2025 NULL);
2027 return offset;
2031 static const value_string h450_3_DivertingLegInformation1Arg_extension_vals[] = {
2032 { 0, "extensionSeq" },
2033 { 1, "nonStandardData" },
2034 { 0, NULL }
2037 static const per_choice_t h450_3_DivertingLegInformation1Arg_extension_choice[] = {
2038 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2039 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2040 { 0, NULL, 0, NULL }
2043 static int
2044 dissect_h450_3_DivertingLegInformation1Arg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2045 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2046 ett_h450_3_DivertingLegInformation1Arg_extension, h450_3_DivertingLegInformation1Arg_extension_choice,
2047 NULL);
2049 return offset;
2053 static const per_sequence_t h450_3_ARG_divertingLegInformation1_sequence[] = {
2054 { &hf_h450_3_diversionReason, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_DiversionReason },
2055 { &hf_h450_3_subscriptionOption, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_SubscriptionOption },
2056 { &hf_h450_3_nominatedNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2057 { &hf_h450_3_nominatedInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2058 { &hf_h450_3_redirectingNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2059 { &hf_h450_3_redirectingInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2060 { &hf_h450_3_divertingLegInformation1Arg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DivertingLegInformation1Arg_extension },
2061 { NULL, 0, 0, NULL }
2064 static int
2065 dissect_h450_3_ARG_divertingLegInformation1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2066 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2067 ett_h450_3_ARG_divertingLegInformation1, h450_3_ARG_divertingLegInformation1_sequence);
2069 return offset;
2073 static const value_string h450_3_DivertingLegInformation2Arg_extension_vals[] = {
2074 { 0, "extensionSeq" },
2075 { 1, "nonStandardData" },
2076 { 0, NULL }
2079 static const per_choice_t h450_3_DivertingLegInformation2Arg_extension_choice[] = {
2080 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2081 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2082 { 0, NULL, 0, NULL }
2085 static int
2086 dissect_h450_3_DivertingLegInformation2Arg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2087 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2088 ett_h450_3_DivertingLegInformation2Arg_extension, h450_3_DivertingLegInformation2Arg_extension_choice,
2089 NULL);
2091 return offset;
2095 static const per_sequence_t h450_3_ARG_divertingLegInformation2_sequence[] = {
2096 { &hf_h450_3_diversionCounter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_INTEGER_1_15 },
2097 { &hf_h450_3_diversionReason, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_DiversionReason },
2098 { &hf_h450_3_originalDiversionReason, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DiversionReason },
2099 { &hf_h450_3_divertingNr , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2100 { &hf_h450_3_originalCalledNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2101 { &hf_h450_3_redirectingInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2102 { &hf_h450_3_originalCalledInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2103 { &hf_h450_3_divertingLegInformation2Arg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DivertingLegInformation2Arg_extension },
2104 { NULL, 0, 0, NULL }
2107 static int
2108 dissect_h450_3_ARG_divertingLegInformation2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2109 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2110 ett_h450_3_ARG_divertingLegInformation2, h450_3_ARG_divertingLegInformation2_sequence);
2112 return offset;
2116 static const value_string h450_3_DivertingLegInformation3Arg_extension_vals[] = {
2117 { 0, "extensionSeq" },
2118 { 1, "nonStandardData" },
2119 { 0, NULL }
2122 static const per_choice_t h450_3_DivertingLegInformation3Arg_extension_choice[] = {
2123 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2124 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2125 { 0, NULL, 0, NULL }
2128 static int
2129 dissect_h450_3_DivertingLegInformation3Arg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2130 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2131 ett_h450_3_DivertingLegInformation3Arg_extension, h450_3_DivertingLegInformation3Arg_extension_choice,
2132 NULL);
2134 return offset;
2138 static const per_sequence_t h450_3_ARG_divertingLegInformation3_sequence[] = {
2139 { &hf_h450_3_presentationAllowedIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_PresentationAllowedIndicator },
2140 { &hf_h450_3_redirectionNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2141 { &hf_h450_3_redirectionInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2142 { &hf_h450_3_divertingLegInformation3Arg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DivertingLegInformation3Arg_extension },
2143 { NULL, 0, 0, NULL }
2146 static int
2147 dissect_h450_3_ARG_divertingLegInformation3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2148 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2149 ett_h450_3_ARG_divertingLegInformation3, h450_3_ARG_divertingLegInformation3_sequence);
2151 return offset;
2155 static const value_string h450_3_DivertingLegInformation4Arg_extension_vals[] = {
2156 { 0, "extensionSeq" },
2157 { 1, "nonStandardData" },
2158 { 0, NULL }
2161 static const per_choice_t h450_3_DivertingLegInformation4Arg_extension_choice[] = {
2162 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2163 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2164 { 0, NULL, 0, NULL }
2167 static int
2168 dissect_h450_3_DivertingLegInformation4Arg_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2169 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2170 ett_h450_3_DivertingLegInformation4Arg_extension, h450_3_DivertingLegInformation4Arg_extension_choice,
2171 NULL);
2173 return offset;
2177 static const per_sequence_t h450_3_ARG_divertingLegInformation4_sequence[] = {
2178 { &hf_h450_3_diversionReason, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_DiversionReason },
2179 { &hf_h450_3_subscriptionOption, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_SubscriptionOption },
2180 { &hf_h450_3_callingNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2181 { &hf_h450_3_callingInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2182 { &hf_h450_3_nominatedNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2183 { &hf_h450_3_nominatedInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BMPString_SIZE_1_128 },
2184 { &hf_h450_3_divertingLegInformation4Arg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_DivertingLegInformation4Arg_extension },
2185 { NULL, 0, 0, NULL }
2188 static int
2189 dissect_h450_3_ARG_divertingLegInformation4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2190 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2191 ett_h450_3_ARG_divertingLegInformation4, h450_3_ARG_divertingLegInformation4_sequence);
2193 return offset;
2197 static const value_string h450_3_ARG_cfnrDivertedLegFailed_vals[] = {
2198 { 0, "extensionSeq" },
2199 { 1, "nonStandardData" },
2200 { 0, NULL }
2203 static const per_choice_t h450_3_ARG_cfnrDivertedLegFailed_choice[] = {
2204 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2205 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2206 { 0, NULL, 0, NULL }
2209 static int
2210 dissect_h450_3_ARG_cfnrDivertedLegFailed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2211 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2212 ett_h450_3_ARG_cfnrDivertedLegFailed, h450_3_ARG_cfnrDivertedLegFailed_choice,
2213 NULL);
2215 return offset;
2220 static int
2221 dissect_h450_3_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2222 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
2224 return offset;
2228 static const value_string h450_3_IntResult_extension_vals[] = {
2229 { 0, "extensionSeq" },
2230 { 1, "nonStandardData" },
2231 { 0, NULL }
2234 static const per_choice_t h450_3_IntResult_extension_choice[] = {
2235 { 0, &hf_h450_3_extensionSeq , ASN1_NO_EXTENSIONS , dissect_h450_3_ExtensionSeq },
2236 { 1, &hf_h450_3_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2237 { 0, NULL, 0, NULL }
2240 static int
2241 dissect_h450_3_IntResult_extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2242 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2243 ett_h450_3_IntResult_extension, h450_3_IntResult_extension_choice,
2244 NULL);
2246 return offset;
2250 static const per_sequence_t h450_3_IntResult_sequence[] = {
2251 { &hf_h450_3_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2252 { &hf_h450_3_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_BasicService },
2253 { &hf_h450_3_procedure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_3_Procedure },
2254 { &hf_h450_3_divertedToAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2255 { &hf_h450_3_remoteEnabled, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_BOOLEAN },
2256 { &hf_h450_3_intResult_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_3_IntResult_extension },
2257 { NULL, 0, 0, NULL }
2260 static int
2261 dissect_h450_3_IntResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2262 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2263 ett_h450_3_IntResult, h450_3_IntResult_sequence);
2265 return offset;
2269 static const per_sequence_t h450_3_IntResultList_set_of[1] = {
2270 { &hf_h450_3_IntResultList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_3_IntResult },
2273 static int
2274 dissect_h450_3_IntResultList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2275 offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
2276 ett_h450_3_IntResultList, h450_3_IntResultList_set_of,
2277 0, 29, FALSE);
2279 return offset;
2283 static const value_string h450_3_PAR_unspecified_vals[] = {
2284 { 0, "extension" },
2285 { 1, "nonStandard" },
2286 { 0, NULL }
2289 static const per_choice_t h450_3_PAR_unspecified_choice[] = {
2290 { 0, &hf_h450_3_unspecified_extension, ASN1_NO_EXTENSIONS , dissect_h450_Extension },
2291 { 1, &hf_h450_3_nonStandard , ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2292 { 0, NULL, 0, NULL }
2295 static int
2296 dissect_h450_3_PAR_unspecified(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2297 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2298 ett_h450_3_PAR_unspecified, h450_3_PAR_unspecified_choice,
2299 NULL);
2301 return offset;
2304 /*--- PDUs ---*/
2306 static int dissect_h450_3_ARG_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2307 int offset = 0;
2308 asn1_ctx_t asn1_ctx;
2309 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2310 offset = dissect_h450_3_ARG_activateDiversionQ(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_activateDiversionQ_PDU);
2311 offset += 7; offset >>= 3;
2312 return offset;
2314 static int dissect_h450_3_RES_activateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2315 int offset = 0;
2316 asn1_ctx_t asn1_ctx;
2317 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2318 offset = dissect_h450_3_RES_activateDiversionQ(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_RES_activateDiversionQ_PDU);
2319 offset += 7; offset >>= 3;
2320 return offset;
2322 static int dissect_h450_3_ARG_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2323 int offset = 0;
2324 asn1_ctx_t asn1_ctx;
2325 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2326 offset = dissect_h450_3_ARG_deactivateDiversionQ(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_deactivateDiversionQ_PDU);
2327 offset += 7; offset >>= 3;
2328 return offset;
2330 static int dissect_h450_3_RES_deactivateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2331 int offset = 0;
2332 asn1_ctx_t asn1_ctx;
2333 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2334 offset = dissect_h450_3_RES_deactivateDiversionQ(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_RES_deactivateDiversionQ_PDU);
2335 offset += 7; offset >>= 3;
2336 return offset;
2338 static int dissect_h450_3_ARG_interrogateDiversionQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2339 int offset = 0;
2340 asn1_ctx_t asn1_ctx;
2341 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2342 offset = dissect_h450_3_ARG_interrogateDiversionQ(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_interrogateDiversionQ_PDU);
2343 offset += 7; offset >>= 3;
2344 return offset;
2346 static int dissect_h450_3_IntResultList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2347 int offset = 0;
2348 asn1_ctx_t asn1_ctx;
2349 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2350 offset = dissect_h450_3_IntResultList(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_IntResultList_PDU);
2351 offset += 7; offset >>= 3;
2352 return offset;
2354 static int dissect_h450_3_ARG_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2355 int offset = 0;
2356 asn1_ctx_t asn1_ctx;
2357 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2358 offset = dissect_h450_3_ARG_checkRestriction(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_checkRestriction_PDU);
2359 offset += 7; offset >>= 3;
2360 return offset;
2362 static int dissect_h450_3_RES_checkRestriction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2363 int offset = 0;
2364 asn1_ctx_t asn1_ctx;
2365 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2366 offset = dissect_h450_3_RES_checkRestriction(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_RES_checkRestriction_PDU);
2367 offset += 7; offset >>= 3;
2368 return offset;
2370 static int dissect_h450_3_ARG_callRerouting_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2371 int offset = 0;
2372 asn1_ctx_t asn1_ctx;
2373 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2374 offset = dissect_h450_3_ARG_callRerouting(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_callRerouting_PDU);
2375 offset += 7; offset >>= 3;
2376 return offset;
2378 static int dissect_h450_3_RES_callRerouting_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2379 int offset = 0;
2380 asn1_ctx_t asn1_ctx;
2381 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2382 offset = dissect_h450_3_RES_callRerouting(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_RES_callRerouting_PDU);
2383 offset += 7; offset >>= 3;
2384 return offset;
2386 static int dissect_h450_3_ARG_divertingLegInformation1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2387 int offset = 0;
2388 asn1_ctx_t asn1_ctx;
2389 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2390 offset = dissect_h450_3_ARG_divertingLegInformation1(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_divertingLegInformation1_PDU);
2391 offset += 7; offset >>= 3;
2392 return offset;
2394 static int dissect_h450_3_ARG_divertingLegInformation2_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2395 int offset = 0;
2396 asn1_ctx_t asn1_ctx;
2397 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2398 offset = dissect_h450_3_ARG_divertingLegInformation2(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_divertingLegInformation2_PDU);
2399 offset += 7; offset >>= 3;
2400 return offset;
2402 static int dissect_h450_3_ARG_divertingLegInformation3_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2403 int offset = 0;
2404 asn1_ctx_t asn1_ctx;
2405 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2406 offset = dissect_h450_3_ARG_divertingLegInformation3(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_divertingLegInformation3_PDU);
2407 offset += 7; offset >>= 3;
2408 return offset;
2410 static int dissect_h450_3_ARG_divertingLegInformation4_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2411 int offset = 0;
2412 asn1_ctx_t asn1_ctx;
2413 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2414 offset = dissect_h450_3_ARG_divertingLegInformation4(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_divertingLegInformation4_PDU);
2415 offset += 7; offset >>= 3;
2416 return offset;
2418 static int dissect_h450_3_ARG_cfnrDivertedLegFailed_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2419 int offset = 0;
2420 asn1_ctx_t asn1_ctx;
2421 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2422 offset = dissect_h450_3_ARG_cfnrDivertedLegFailed(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_ARG_cfnrDivertedLegFailed_PDU);
2423 offset += 7; offset >>= 3;
2424 return offset;
2426 static int dissect_h450_3_PAR_unspecified_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2427 int offset = 0;
2428 asn1_ctx_t asn1_ctx;
2429 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2430 offset = dissect_h450_3_PAR_unspecified(tvb, offset, &asn1_ctx, tree, hf_h450_3_h450_3_PAR_unspecified_PDU);
2431 offset += 7; offset >>= 3;
2432 return offset;
2436 /* --- Module Call-Hold-Operations --- --- --- */
2439 static const value_string h450_4_MixedExtension_vals[] = {
2440 { 0, "extension" },
2441 { 1, "nonStandardData" },
2442 { 0, NULL }
2445 static const per_choice_t h450_4_MixedExtension_choice[] = {
2446 { 0, &hf_h450_4_mixedExtension_extension, ASN1_NO_EXTENSIONS , dissect_h450_Extension },
2447 { 1, &hf_h450_4_nonStandardData, ASN1_NO_EXTENSIONS , dissect_h225_NonStandardParameter },
2448 { 0, NULL, 0, NULL }
2451 static int
2452 dissect_h450_4_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2453 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2454 ett_h450_4_MixedExtension, h450_4_MixedExtension_choice,
2455 NULL);
2457 return offset;
2461 static const per_sequence_t h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
2462 { &hf_h450_4_holdNotificArg_extensionArg_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
2465 static int
2466 dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2467 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2468 ett_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
2469 0, 255, FALSE);
2471 return offset;
2475 static const per_sequence_t h450_4_HoldNotificArg_sequence[] = {
2476 { &hf_h450_4_holdNotificArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2477 { NULL, 0, 0, NULL }
2480 static int
2481 dissect_h450_4_HoldNotificArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2482 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2483 ett_h450_4_HoldNotificArg, h450_4_HoldNotificArg_sequence);
2485 return offset;
2489 static const per_sequence_t h450_4_RetrieveNotificArg_sequence[] = {
2490 { &hf_h450_4_retrieveNotificArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2491 { NULL, 0, 0, NULL }
2494 static int
2495 dissect_h450_4_RetrieveNotificArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2496 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2497 ett_h450_4_RetrieveNotificArg, h450_4_RetrieveNotificArg_sequence);
2499 return offset;
2503 static const per_sequence_t h450_4_RemoteHoldArg_sequence[] = {
2504 { &hf_h450_4_remoteHoldArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2505 { NULL, 0, 0, NULL }
2508 static int
2509 dissect_h450_4_RemoteHoldArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2510 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2511 ett_h450_4_RemoteHoldArg, h450_4_RemoteHoldArg_sequence);
2513 return offset;
2517 static const per_sequence_t h450_4_RemoteHoldRes_sequence[] = {
2518 { &hf_h450_4_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2519 { NULL, 0, 0, NULL }
2522 static int
2523 dissect_h450_4_RemoteHoldRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2524 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2525 ett_h450_4_RemoteHoldRes, h450_4_RemoteHoldRes_sequence);
2527 return offset;
2531 static const per_sequence_t h450_4_RemoteRetrieveArg_sequence[] = {
2532 { &hf_h450_4_remoteRetrieveArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2533 { NULL, 0, 0, NULL }
2536 static int
2537 dissect_h450_4_RemoteRetrieveArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2538 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2539 ett_h450_4_RemoteRetrieveArg, h450_4_RemoteRetrieveArg_sequence);
2541 return offset;
2545 static const per_sequence_t h450_4_RemoteRetrieveRes_sequence[] = {
2546 { &hf_h450_4_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2547 { NULL, 0, 0, NULL }
2550 static int
2551 dissect_h450_4_RemoteRetrieveRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2552 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2553 ett_h450_4_RemoteRetrieveRes, h450_4_RemoteRetrieveRes_sequence);
2555 return offset;
2559 static const per_sequence_t h450_4_PAR_undefined_sequence_of[1] = {
2560 { &hf_h450_4_PAR_undefined_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
2563 static int
2564 dissect_h450_4_PAR_undefined(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2565 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2566 ett_h450_4_PAR_undefined, h450_4_PAR_undefined_sequence_of,
2567 0, 255, FALSE);
2569 return offset;
2572 /*--- PDUs ---*/
2574 static int dissect_h450_4_HoldNotificArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2575 int offset = 0;
2576 asn1_ctx_t asn1_ctx;
2577 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2578 offset = dissect_h450_4_HoldNotificArg(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_HoldNotificArg_PDU);
2579 offset += 7; offset >>= 3;
2580 return offset;
2582 static int dissect_h450_4_RetrieveNotificArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2583 int offset = 0;
2584 asn1_ctx_t asn1_ctx;
2585 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2586 offset = dissect_h450_4_RetrieveNotificArg(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_RetrieveNotificArg_PDU);
2587 offset += 7; offset >>= 3;
2588 return offset;
2590 static int dissect_h450_4_RemoteHoldArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2591 int offset = 0;
2592 asn1_ctx_t asn1_ctx;
2593 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2594 offset = dissect_h450_4_RemoteHoldArg(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_RemoteHoldArg_PDU);
2595 offset += 7; offset >>= 3;
2596 return offset;
2598 static int dissect_h450_4_RemoteHoldRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2599 int offset = 0;
2600 asn1_ctx_t asn1_ctx;
2601 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2602 offset = dissect_h450_4_RemoteHoldRes(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_RemoteHoldRes_PDU);
2603 offset += 7; offset >>= 3;
2604 return offset;
2606 static int dissect_h450_4_RemoteRetrieveArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2607 int offset = 0;
2608 asn1_ctx_t asn1_ctx;
2609 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2610 offset = dissect_h450_4_RemoteRetrieveArg(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_RemoteRetrieveArg_PDU);
2611 offset += 7; offset >>= 3;
2612 return offset;
2614 static int dissect_h450_4_RemoteRetrieveRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2615 int offset = 0;
2616 asn1_ctx_t asn1_ctx;
2617 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2618 offset = dissect_h450_4_RemoteRetrieveRes(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_RemoteRetrieveRes_PDU);
2619 offset += 7; offset >>= 3;
2620 return offset;
2622 static int dissect_h450_4_PAR_undefined_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2623 int offset = 0;
2624 asn1_ctx_t asn1_ctx;
2625 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2626 offset = dissect_h450_4_PAR_undefined(tvb, offset, &asn1_ctx, tree, hf_h450_4_h450_4_PAR_undefined_PDU);
2627 offset += 7; offset >>= 3;
2628 return offset;
2632 /* --- Module Call-Park-Pickup-Operations --- --- --- */
2636 static int
2637 dissect_h450_5_ParkedToPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2638 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2639 0U, 65535U, NULL, FALSE);
2641 return offset;
2645 static const per_sequence_t h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
2646 { &hf_h450_5_cpRequestArg_extensionArg_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
2649 static int
2650 dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2651 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2652 ett_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
2653 0, 255, FALSE);
2655 return offset;
2659 static const per_sequence_t h450_5_CpRequestArg_sequence[] = {
2660 { &hf_h450_5_parkingNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2661 { &hf_h450_5_parkedNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2662 { &hf_h450_5_parkedToNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2663 { &hf_h450_5_parkedToPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2664 { &hf_h450_5_cpRequestArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2665 { NULL, 0, 0, NULL }
2668 static int
2669 dissect_h450_5_CpRequestArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2670 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2671 ett_h450_5_CpRequestArg, h450_5_CpRequestArg_sequence);
2673 return offset;
2677 static const value_string h450_5_ParkCondition_vals[] = {
2678 { 0, "unspecified" },
2679 { 1, "parkedToUserIdle" },
2680 { 2, "parkedToUserBusy" },
2681 { 3, "parkedToGroup" },
2682 { 0, NULL }
2686 static int
2687 dissect_h450_5_ParkCondition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2688 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
2689 4, NULL, TRUE, 0, NULL);
2691 return offset;
2695 static const per_sequence_t h450_5_CpRequestRes_sequence[] = {
2696 { &hf_h450_5_parkedToNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2697 { &hf_h450_5_parkedToPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2698 { &hf_h450_5_parkCondition, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_5_ParkCondition },
2699 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2700 { NULL, 0, 0, NULL }
2703 static int
2704 dissect_h450_5_CpRequestRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2705 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2706 ett_h450_5_CpRequestRes, h450_5_CpRequestRes_sequence);
2708 return offset;
2712 static const per_sequence_t h450_5_CpSetupArg_sequence[] = {
2713 { &hf_h450_5_parkingNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2714 { &hf_h450_5_parkedNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2715 { &hf_h450_5_parkedToNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2716 { &hf_h450_5_parkedToPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2717 { &hf_h450_5_cpSetupArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2718 { NULL, 0, 0, NULL }
2721 static int
2722 dissect_h450_5_CpSetupArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2723 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2724 ett_h450_5_CpSetupArg, h450_5_CpSetupArg_sequence);
2726 return offset;
2730 static const per_sequence_t h450_5_CpSetupRes_sequence[] = {
2731 { &hf_h450_5_parkedToNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2732 { &hf_h450_5_parkedToPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2733 { &hf_h450_5_parkCondition, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_5_ParkCondition },
2734 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2735 { NULL, 0, 0, NULL }
2738 static int
2739 dissect_h450_5_CpSetupRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2740 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2741 ett_h450_5_CpSetupRes, h450_5_CpSetupRes_sequence);
2743 return offset;
2747 static const value_string h450_5_CallType_vals[] = {
2748 { 0, "parkedCall" },
2749 { 1, "alertingCall" },
2750 { 0, NULL }
2754 static int
2755 dissect_h450_5_CallType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2756 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
2757 2, NULL, TRUE, 0, NULL);
2759 return offset;
2763 static const per_sequence_t h450_5_GroupIndicationOnArg_sequence[] = {
2764 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h225_CallIdentifier },
2765 { &hf_h450_5_groupMemberUserNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2766 { &hf_h450_5_retrieveCallType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_5_CallType },
2767 { &hf_h450_5_partyToRetrieve, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2768 { &hf_h450_5_retrieveAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2769 { &hf_h450_5_parkPosition , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2770 { &hf_h450_5_groupIndicationOnArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2771 { NULL, 0, 0, NULL }
2774 static int
2775 dissect_h450_5_GroupIndicationOnArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2776 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2777 ett_h450_5_GroupIndicationOnArg, h450_5_GroupIndicationOnArg_sequence);
2779 return offset;
2783 static const per_sequence_t h450_5_GroupIndicationOnRes_sequence[] = {
2784 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2785 { NULL, 0, 0, NULL }
2788 static int
2789 dissect_h450_5_GroupIndicationOnRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2790 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2791 ett_h450_5_GroupIndicationOnRes, h450_5_GroupIndicationOnRes_sequence);
2793 return offset;
2797 static const per_sequence_t h450_5_GroupIndicationOffArg_sequence[] = {
2798 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h225_CallIdentifier },
2799 { &hf_h450_5_groupMemberUserNr, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2800 { &hf_h450_5_groupIndicationOffArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2801 { NULL, 0, 0, NULL }
2804 static int
2805 dissect_h450_5_GroupIndicationOffArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2806 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2807 ett_h450_5_GroupIndicationOffArg, h450_5_GroupIndicationOffArg_sequence);
2809 return offset;
2813 static const per_sequence_t h450_5_GroupIndicationOffRes_sequence[] = {
2814 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2815 { NULL, 0, 0, NULL }
2818 static int
2819 dissect_h450_5_GroupIndicationOffRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2820 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2821 ett_h450_5_GroupIndicationOffRes, h450_5_GroupIndicationOffRes_sequence);
2823 return offset;
2827 static const per_sequence_t h450_5_PickrequArg_sequence[] = {
2828 { &hf_h450_5_picking_upNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2829 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_CallIdentifier },
2830 { &hf_h450_5_partyToRetrieve, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2831 { &hf_h450_5_retrieveAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2832 { &hf_h450_5_parkPosition , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_ParkedToPosition },
2833 { &hf_h450_5_pickrequArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2834 { NULL, 0, 0, NULL }
2837 static int
2838 dissect_h450_5_PickrequArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2839 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2840 ett_h450_5_PickrequArg, h450_5_PickrequArg_sequence);
2842 return offset;
2846 static const per_sequence_t h450_5_PickrequRes_sequence[] = {
2847 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h225_CallIdentifier },
2848 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2849 { NULL, 0, 0, NULL }
2852 static int
2853 dissect_h450_5_PickrequRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2854 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2855 ett_h450_5_PickrequRes, h450_5_PickrequRes_sequence);
2857 return offset;
2861 static const per_sequence_t h450_5_PickupArg_sequence[] = {
2862 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h225_CallIdentifier },
2863 { &hf_h450_5_picking_upNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2864 { &hf_h450_5_pickupArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2865 { NULL, 0, 0, NULL }
2868 static int
2869 dissect_h450_5_PickupArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2870 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2871 ett_h450_5_PickupArg, h450_5_PickupArg_sequence);
2873 return offset;
2877 static const per_sequence_t h450_5_PickupRes_sequence[] = {
2878 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2879 { NULL, 0, 0, NULL }
2882 static int
2883 dissect_h450_5_PickupRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2884 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2885 ett_h450_5_PickupRes, h450_5_PickupRes_sequence);
2887 return offset;
2891 static const per_sequence_t h450_5_PickExeArg_sequence[] = {
2892 { &hf_h450_5_callPickupId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h225_CallIdentifier },
2893 { &hf_h450_5_picking_upNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2894 { &hf_h450_5_partyToRetrieve, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
2895 { &hf_h450_5_pickExeArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2896 { NULL, 0, 0, NULL }
2899 static int
2900 dissect_h450_5_PickExeArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2901 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2902 ett_h450_5_PickExeArg, h450_5_PickExeArg_sequence);
2904 return offset;
2908 static const per_sequence_t h450_5_PickExeRes_sequence[] = {
2909 { &hf_h450_5_extensionRes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2910 { NULL, 0, 0, NULL }
2913 static int
2914 dissect_h450_5_PickExeRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2915 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2916 ett_h450_5_PickExeRes, h450_5_PickExeRes_sequence);
2918 return offset;
2922 static const per_sequence_t h450_5_CpNotifyArg_sequence[] = {
2923 { &hf_h450_5_parkingNumber, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2924 { &hf_h450_5_cpNotifyArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2925 { NULL, 0, 0, NULL }
2928 static int
2929 dissect_h450_5_CpNotifyArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2930 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2931 ett_h450_5_CpNotifyArg, h450_5_CpNotifyArg_sequence);
2933 return offset;
2937 static const per_sequence_t h450_5_CpickupNotifyArg_sequence[] = {
2938 { &hf_h450_5_picking_upNumber, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
2939 { &hf_h450_5_cpickupNotifyArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension },
2940 { NULL, 0, 0, NULL }
2943 static int
2944 dissect_h450_5_CpickupNotifyArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2945 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2946 ett_h450_5_CpickupNotifyArg, h450_5_CpickupNotifyArg_sequence);
2948 return offset;
2952 static const per_sequence_t h450_5_PAR_undefined_sequence_of[1] = {
2953 { &hf_h450_5_PAR_undefined_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
2956 static int
2957 dissect_h450_5_PAR_undefined(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2958 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2959 ett_h450_5_PAR_undefined, h450_5_PAR_undefined_sequence_of,
2960 0, 255, FALSE);
2962 return offset;
2965 /*--- PDUs ---*/
2967 static int dissect_h450_5_CpRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2968 int offset = 0;
2969 asn1_ctx_t asn1_ctx;
2970 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2971 offset = dissect_h450_5_CpRequestArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpRequestArg_PDU);
2972 offset += 7; offset >>= 3;
2973 return offset;
2975 static int dissect_h450_5_CpRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2976 int offset = 0;
2977 asn1_ctx_t asn1_ctx;
2978 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2979 offset = dissect_h450_5_CpRequestRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpRequestRes_PDU);
2980 offset += 7; offset >>= 3;
2981 return offset;
2983 static int dissect_h450_5_CpSetupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2984 int offset = 0;
2985 asn1_ctx_t asn1_ctx;
2986 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2987 offset = dissect_h450_5_CpSetupArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpSetupArg_PDU);
2988 offset += 7; offset >>= 3;
2989 return offset;
2991 static int dissect_h450_5_CpSetupRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
2992 int offset = 0;
2993 asn1_ctx_t asn1_ctx;
2994 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
2995 offset = dissect_h450_5_CpSetupRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpSetupRes_PDU);
2996 offset += 7; offset >>= 3;
2997 return offset;
2999 static int dissect_h450_5_GroupIndicationOnArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3000 int offset = 0;
3001 asn1_ctx_t asn1_ctx;
3002 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3003 offset = dissect_h450_5_GroupIndicationOnArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_GroupIndicationOnArg_PDU);
3004 offset += 7; offset >>= 3;
3005 return offset;
3007 static int dissect_h450_5_GroupIndicationOnRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3008 int offset = 0;
3009 asn1_ctx_t asn1_ctx;
3010 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3011 offset = dissect_h450_5_GroupIndicationOnRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_GroupIndicationOnRes_PDU);
3012 offset += 7; offset >>= 3;
3013 return offset;
3015 static int dissect_h450_5_GroupIndicationOffArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3016 int offset = 0;
3017 asn1_ctx_t asn1_ctx;
3018 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3019 offset = dissect_h450_5_GroupIndicationOffArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_GroupIndicationOffArg_PDU);
3020 offset += 7; offset >>= 3;
3021 return offset;
3023 static int dissect_h450_5_GroupIndicationOffRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3024 int offset = 0;
3025 asn1_ctx_t asn1_ctx;
3026 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3027 offset = dissect_h450_5_GroupIndicationOffRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_GroupIndicationOffRes_PDU);
3028 offset += 7; offset >>= 3;
3029 return offset;
3031 static int dissect_h450_5_PickrequArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3032 int offset = 0;
3033 asn1_ctx_t asn1_ctx;
3034 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3035 offset = dissect_h450_5_PickrequArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickrequArg_PDU);
3036 offset += 7; offset >>= 3;
3037 return offset;
3039 static int dissect_h450_5_PickrequRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3040 int offset = 0;
3041 asn1_ctx_t asn1_ctx;
3042 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3043 offset = dissect_h450_5_PickrequRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickrequRes_PDU);
3044 offset += 7; offset >>= 3;
3045 return offset;
3047 static int dissect_h450_5_PickupArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3048 int offset = 0;
3049 asn1_ctx_t asn1_ctx;
3050 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3051 offset = dissect_h450_5_PickupArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickupArg_PDU);
3052 offset += 7; offset >>= 3;
3053 return offset;
3055 static int dissect_h450_5_PickupRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3056 int offset = 0;
3057 asn1_ctx_t asn1_ctx;
3058 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3059 offset = dissect_h450_5_PickupRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickupRes_PDU);
3060 offset += 7; offset >>= 3;
3061 return offset;
3063 static int dissect_h450_5_PickExeArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3064 int offset = 0;
3065 asn1_ctx_t asn1_ctx;
3066 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3067 offset = dissect_h450_5_PickExeArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickExeArg_PDU);
3068 offset += 7; offset >>= 3;
3069 return offset;
3071 static int dissect_h450_5_PickExeRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3072 int offset = 0;
3073 asn1_ctx_t asn1_ctx;
3074 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3075 offset = dissect_h450_5_PickExeRes(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PickExeRes_PDU);
3076 offset += 7; offset >>= 3;
3077 return offset;
3079 static int dissect_h450_5_CpNotifyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3080 int offset = 0;
3081 asn1_ctx_t asn1_ctx;
3082 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3083 offset = dissect_h450_5_CpNotifyArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpNotifyArg_PDU);
3084 offset += 7; offset >>= 3;
3085 return offset;
3087 static int dissect_h450_5_CpickupNotifyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3088 int offset = 0;
3089 asn1_ctx_t asn1_ctx;
3090 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3091 offset = dissect_h450_5_CpickupNotifyArg(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_CpickupNotifyArg_PDU);
3092 offset += 7; offset >>= 3;
3093 return offset;
3095 static int dissect_h450_5_PAR_undefined_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3096 int offset = 0;
3097 asn1_ctx_t asn1_ctx;
3098 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3099 offset = dissect_h450_5_PAR_undefined(tvb, offset, &asn1_ctx, tree, hf_h450_5_h450_5_PAR_undefined_PDU);
3100 offset += 7; offset >>= 3;
3101 return offset;
3105 /* --- Module Call-Waiting-Operations --- --- --- */
3109 static int
3110 dissect_h450_6_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3111 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3112 0U, 255U, NULL, FALSE);
3114 return offset;
3118 static const per_sequence_t h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3119 { &hf_h450_6_callWaitingArg_extensionArg_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3122 static int
3123 dissect_h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3124 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3125 ett_h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3126 0, 255, FALSE);
3128 return offset;
3132 static const per_sequence_t h450_6_CallWaitingArg_sequence[] = {
3133 { &hf_h450_6_nbOfAddWaitingCalls, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_6_INTEGER_0_255 },
3134 { &hf_h450_6_callWaitingArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3135 { NULL, 0, 0, NULL }
3138 static int
3139 dissect_h450_6_CallWaitingArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3140 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3141 ett_h450_6_CallWaitingArg, h450_6_CallWaitingArg_sequence);
3143 return offset;
3146 /*--- PDUs ---*/
3148 static int dissect_h450_6_CallWaitingArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3149 int offset = 0;
3150 asn1_ctx_t asn1_ctx;
3151 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3152 offset = dissect_h450_6_CallWaitingArg(tvb, offset, &asn1_ctx, tree, hf_h450_6_h450_6_CallWaitingArg_PDU);
3153 offset += 7; offset >>= 3;
3154 return offset;
3158 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
3161 static const value_string h450_7_BasicService_vals[] = {
3162 { 0, "allServices" },
3163 { 1, "speech" },
3164 { 2, "unrestrictedDigitalInformation" },
3165 { 3, "audio3100Hz" },
3166 { 32, "telephony" },
3167 { 33, "teletex" },
3168 { 34, "telefaxGroup4Class1" },
3169 { 35, "videotexSyntaxBased" },
3170 { 36, "videotelephony" },
3171 { 37, "telefaxGroup2-3" },
3172 { 38, "reservedNotUsed1" },
3173 { 39, "reservedNotUsed2" },
3174 { 40, "reservedNotUsed3" },
3175 { 41, "reservedNotUsed4" },
3176 { 42, "reservedNotUsed5" },
3177 { 51, "email" },
3178 { 52, "video" },
3179 { 53, "fileTransfer" },
3180 { 54, "shortMessageService" },
3181 { 55, "speechAndVideo" },
3182 { 56, "speechAndFax" },
3183 { 57, "speechAndEmail" },
3184 { 58, "videoAndFax" },
3185 { 59, "videoAndEmail" },
3186 { 60, "faxAndEmail" },
3187 { 61, "speechVideoAndFax" },
3188 { 62, "speechVideoAndEmail" },
3189 { 63, "speechFaxAndEmail" },
3190 { 64, "videoFaxAndEmail" },
3191 { 65, "speechVideoFaxAndEmail" },
3192 { 66, "multimediaUnknown" },
3193 { 67, "serviceUnknown" },
3194 { 68, "futureReserve1" },
3195 { 69, "futureReserve2" },
3196 { 70, "futureReserve3" },
3197 { 71, "futureReserve4" },
3198 { 72, "futureReserve5" },
3199 { 73, "futureReserve6" },
3200 { 74, "futureReserve7" },
3201 { 75, "futureReserve8" },
3202 { 0, NULL }
3205 static guint32 h450_7_BasicService_value_map[40+0] = {0, 1, 2, 3, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75};
3207 static int
3208 dissect_h450_7_BasicService(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3209 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
3210 40, NULL, FALSE, 0, h450_7_BasicService_value_map);
3212 return offset;
3217 static int
3218 dissect_h450_7_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3219 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3220 0U, 65535U, NULL, FALSE);
3222 return offset;
3227 static int
3228 dissect_h450_7_NumericString_SIZE_1_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3229 offset = dissect_per_NumericString(tvb, offset, actx, tree, hf_index,
3230 1, 10, FALSE);
3232 return offset;
3236 static const value_string h450_7_MsgCentreId_vals[] = {
3237 { 0, "integer" },
3238 { 1, "partyNumber" },
3239 { 2, "numericString" },
3240 { 0, NULL }
3243 static const per_choice_t h450_7_MsgCentreId_choice[] = {
3244 { 0, &hf_h450_7_integer , ASN1_NO_EXTENSIONS , dissect_h450_7_INTEGER_0_65535 },
3245 { 1, &hf_h450_7_partyNumber , ASN1_NO_EXTENSIONS , dissect_h450_EndpointAddress },
3246 { 2, &hf_h450_7_numericString, ASN1_NO_EXTENSIONS , dissect_h450_7_NumericString_SIZE_1_10 },
3247 { 0, NULL, 0, NULL }
3250 static int
3251 dissect_h450_7_MsgCentreId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3252 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3253 ett_h450_7_MsgCentreId, h450_7_MsgCentreId_choice,
3254 NULL);
3256 return offset;
3261 static int
3262 dissect_h450_7_NbOfMessages(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3263 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3264 0U, 65535U, NULL, FALSE);
3266 return offset;
3271 static int
3272 dissect_h450_7_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3273 offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index,
3274 12, 19, FALSE);
3276 return offset;
3281 static int
3282 dissect_h450_7_INTEGER_0_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3283 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3284 0U, 9U, NULL, FALSE);
3286 return offset;
3290 static const per_sequence_t h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3291 { &hf_h450_7_mWIActivateArg_extensionArg_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3294 static int
3295 dissect_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3296 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3297 ett_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3298 0, 255, FALSE);
3300 return offset;
3304 static const per_sequence_t h450_7_MWIActivateArg_sequence[] = {
3305 { &hf_h450_7_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
3306 { &hf_h450_7_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_7_BasicService },
3307 { &hf_h450_7_msgCentreId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_MsgCentreId },
3308 { &hf_h450_7_nbOfMessages , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_NbOfMessages },
3309 { &hf_h450_7_originatingNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
3310 { &hf_h450_7_timestamp , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_TimeStamp },
3311 { &hf_h450_7_priority , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_INTEGER_0_9 },
3312 { &hf_h450_7_mWIActivateArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3313 { NULL, 0, 0, NULL }
3316 static int
3317 dissect_h450_7_MWIActivateArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3318 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3319 ett_h450_7_MWIActivateArg, h450_7_MWIActivateArg_sequence);
3321 return offset;
3325 static const per_sequence_t h450_7_DummyRes_sequence_of[1] = {
3326 { &hf_h450_7_DummyRes_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3329 static int
3330 dissect_h450_7_DummyRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3331 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3332 ett_h450_7_DummyRes, h450_7_DummyRes_sequence_of,
3333 0, 255, FALSE);
3335 return offset;
3340 static int
3341 dissect_h450_7_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3342 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
3344 return offset;
3348 static const per_sequence_t h450_7_MWIDeactivateArg_sequence[] = {
3349 { &hf_h450_7_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
3350 { &hf_h450_7_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_7_BasicService },
3351 { &hf_h450_7_msgCentreId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_MsgCentreId },
3352 { &hf_h450_7_callbackReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_BOOLEAN },
3353 { &hf_h450_7_mWIDeactivateArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3354 { NULL, 0, 0, NULL }
3357 static int
3358 dissect_h450_7_MWIDeactivateArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3359 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3360 ett_h450_7_MWIDeactivateArg, h450_7_MWIDeactivateArg_sequence);
3362 return offset;
3366 static const per_sequence_t h450_7_MWIInterrogateArg_sequence[] = {
3367 { &hf_h450_7_servedUserNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
3368 { &hf_h450_7_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_7_BasicService },
3369 { &hf_h450_7_msgCentreId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_MsgCentreId },
3370 { &hf_h450_7_callbackReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_BOOLEAN },
3371 { &hf_h450_7_mWIInterrogateArg_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3372 { NULL, 0, 0, NULL }
3375 static int
3376 dissect_h450_7_MWIInterrogateArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3377 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3378 ett_h450_7_MWIInterrogateArg, h450_7_MWIInterrogateArg_sequence);
3380 return offset;
3384 static const per_sequence_t h450_7_MWIInterrogateResElt_sequence[] = {
3385 { &hf_h450_7_basicService , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_7_BasicService },
3386 { &hf_h450_7_msgCentreId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_MsgCentreId },
3387 { &hf_h450_7_nbOfMessages , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_NbOfMessages },
3388 { &hf_h450_7_originatingNr, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
3389 { &hf_h450_7_timestamp , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_TimeStamp },
3390 { &hf_h450_7_priority , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_INTEGER_0_9 },
3391 { &hf_h450_7_mWIInterrogateResElt_extensionArg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3392 { NULL, 0, 0, NULL }
3395 static int
3396 dissect_h450_7_MWIInterrogateResElt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3397 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3398 ett_h450_7_MWIInterrogateResElt, h450_7_MWIInterrogateResElt_sequence);
3400 return offset;
3404 static const per_sequence_t h450_7_MWIInterrogateRes_sequence_of[1] = {
3405 { &hf_h450_7_MWIInterrogateRes_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_7_MWIInterrogateResElt },
3408 static int
3409 dissect_h450_7_MWIInterrogateRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3410 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3411 ett_h450_7_MWIInterrogateRes, h450_7_MWIInterrogateRes_sequence_of,
3412 1, 64, FALSE);
3414 return offset;
3418 static const per_sequence_t h450_7_PAR_undefined_sequence_of[1] = {
3419 { &hf_h450_7_PAR_undefined_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3422 static int
3423 dissect_h450_7_PAR_undefined(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3424 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3425 ett_h450_7_PAR_undefined, h450_7_PAR_undefined_sequence_of,
3426 0, 255, FALSE);
3428 return offset;
3431 /*--- PDUs ---*/
3433 static int dissect_h450_7_MWIActivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3434 int offset = 0;
3435 asn1_ctx_t asn1_ctx;
3436 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3437 offset = dissect_h450_7_MWIActivateArg(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_MWIActivateArg_PDU);
3438 offset += 7; offset >>= 3;
3439 return offset;
3441 static int dissect_h450_7_DummyRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3442 int offset = 0;
3443 asn1_ctx_t asn1_ctx;
3444 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3445 offset = dissect_h450_7_DummyRes(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_DummyRes_PDU);
3446 offset += 7; offset >>= 3;
3447 return offset;
3449 static int dissect_h450_7_MWIDeactivateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3450 int offset = 0;
3451 asn1_ctx_t asn1_ctx;
3452 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3453 offset = dissect_h450_7_MWIDeactivateArg(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_MWIDeactivateArg_PDU);
3454 offset += 7; offset >>= 3;
3455 return offset;
3457 static int dissect_h450_7_MWIInterrogateArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3458 int offset = 0;
3459 asn1_ctx_t asn1_ctx;
3460 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3461 offset = dissect_h450_7_MWIInterrogateArg(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_MWIInterrogateArg_PDU);
3462 offset += 7; offset >>= 3;
3463 return offset;
3465 static int dissect_h450_7_MWIInterrogateRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3466 int offset = 0;
3467 asn1_ctx_t asn1_ctx;
3468 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3469 offset = dissect_h450_7_MWIInterrogateRes(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_MWIInterrogateRes_PDU);
3470 offset += 7; offset >>= 3;
3471 return offset;
3473 static int dissect_h450_7_PAR_undefined_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3474 int offset = 0;
3475 asn1_ctx_t asn1_ctx;
3476 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3477 offset = dissect_h450_7_PAR_undefined(tvb, offset, &asn1_ctx, tree, hf_h450_7_h450_7_PAR_undefined_PDU);
3478 offset += 7; offset >>= 3;
3479 return offset;
3483 /* --- Module Name-Operations --- --- --- */
3487 static int
3488 dissect_h450_8_SimpleName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3489 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3490 1, 50, FALSE, NULL);
3492 return offset;
3497 static int
3498 dissect_h450_8_ExtendedName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3499 offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
3500 1, 256, FALSE);
3502 return offset;
3506 static const value_string h450_8_NamePresentationAllowed_vals[] = {
3507 { 0, "simpleName" },
3508 { 1, "extendedName" },
3509 { 0, NULL }
3512 static const per_choice_t h450_8_NamePresentationAllowed_choice[] = {
3513 { 0, &hf_h450_8_simpleName , ASN1_EXTENSION_ROOT , dissect_h450_8_SimpleName },
3514 { 1, &hf_h450_8_extendedName , ASN1_EXTENSION_ROOT , dissect_h450_8_ExtendedName },
3515 { 0, NULL, 0, NULL }
3518 static int
3519 dissect_h450_8_NamePresentationAllowed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3520 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3521 ett_h450_8_NamePresentationAllowed, h450_8_NamePresentationAllowed_choice,
3522 NULL);
3524 return offset;
3529 static int
3530 dissect_h450_8_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3531 offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
3533 return offset;
3537 static const value_string h450_8_NamePresentationRestricted_vals[] = {
3538 { 0, "simpleName" },
3539 { 1, "extendedName" },
3540 { 2, "restrictedNull" },
3541 { 0, NULL }
3544 static const per_choice_t h450_8_NamePresentationRestricted_choice[] = {
3545 { 0, &hf_h450_8_simpleName , ASN1_EXTENSION_ROOT , dissect_h450_8_SimpleName },
3546 { 1, &hf_h450_8_extendedName , ASN1_EXTENSION_ROOT , dissect_h450_8_ExtendedName },
3547 { 2, &hf_h450_8_restrictedNull, ASN1_EXTENSION_ROOT , dissect_h450_8_NULL },
3548 { 0, NULL, 0, NULL }
3551 static int
3552 dissect_h450_8_NamePresentationRestricted(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3553 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3554 ett_h450_8_NamePresentationRestricted, h450_8_NamePresentationRestricted_choice,
3555 NULL);
3557 return offset;
3561 static const value_string h450_8_Name_vals[] = {
3562 { 0, "namePresentationAllowed" },
3563 { 1, "namePresentationRestricted" },
3564 { 2, "nameNotAvailable" },
3565 { 0, NULL }
3568 static const per_choice_t h450_8_Name_choice[] = {
3569 { 0, &hf_h450_8_namePresentationAllowed, ASN1_EXTENSION_ROOT , dissect_h450_8_NamePresentationAllowed },
3570 { 1, &hf_h450_8_namePresentationRestricted, ASN1_EXTENSION_ROOT , dissect_h450_8_NamePresentationRestricted },
3571 { 2, &hf_h450_8_nameNotAvailable, ASN1_EXTENSION_ROOT , dissect_h450_8_NULL },
3572 { 0, NULL, 0, NULL }
3575 static int
3576 dissect_h450_8_Name(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3577 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3578 ett_h450_8_Name, h450_8_Name_choice,
3579 NULL);
3581 return offset;
3585 static const per_sequence_t h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3586 { &hf_h450_8_extensionArg_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3589 static int
3590 dissect_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3591 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3592 ett_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3593 0, 255, FALSE);
3595 return offset;
3599 static const per_sequence_t h450_8_ARG_callingName_sequence[] = {
3600 { &hf_h450_8_name , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_8_Name },
3601 { &hf_h450_8_extensionArg , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3602 { NULL, 0, 0, NULL }
3605 static int
3606 dissect_h450_8_ARG_callingName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3607 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3608 ett_h450_8_ARG_callingName, h450_8_ARG_callingName_sequence);
3610 return offset;
3614 static const per_sequence_t h450_8_ARG_alertingName_sequence[] = {
3615 { &hf_h450_8_name , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_8_Name },
3616 { &hf_h450_8_extensionArg , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3617 { NULL, 0, 0, NULL }
3620 static int
3621 dissect_h450_8_ARG_alertingName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3622 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3623 ett_h450_8_ARG_alertingName, h450_8_ARG_alertingName_sequence);
3625 return offset;
3629 static const per_sequence_t h450_8_ARG_connectedName_sequence[] = {
3630 { &hf_h450_8_name , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_8_Name },
3631 { &hf_h450_8_extensionArg , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3632 { NULL, 0, 0, NULL }
3635 static int
3636 dissect_h450_8_ARG_connectedName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3637 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3638 ett_h450_8_ARG_connectedName, h450_8_ARG_connectedName_sequence);
3640 return offset;
3644 static const per_sequence_t h450_8_ARG_busyName_sequence[] = {
3645 { &hf_h450_8_name , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_8_Name },
3646 { &hf_h450_8_extensionArg , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3647 { NULL, 0, 0, NULL }
3650 static int
3651 dissect_h450_8_ARG_busyName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3652 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3653 ett_h450_8_ARG_busyName, h450_8_ARG_busyName_sequence);
3655 return offset;
3658 /*--- PDUs ---*/
3660 static int dissect_h450_8_ARG_callingName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3661 int offset = 0;
3662 asn1_ctx_t asn1_ctx;
3663 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3664 offset = dissect_h450_8_ARG_callingName(tvb, offset, &asn1_ctx, tree, hf_h450_8_h450_8_ARG_callingName_PDU);
3665 offset += 7; offset >>= 3;
3666 return offset;
3668 static int dissect_h450_8_ARG_alertingName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3669 int offset = 0;
3670 asn1_ctx_t asn1_ctx;
3671 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3672 offset = dissect_h450_8_ARG_alertingName(tvb, offset, &asn1_ctx, tree, hf_h450_8_h450_8_ARG_alertingName_PDU);
3673 offset += 7; offset >>= 3;
3674 return offset;
3676 static int dissect_h450_8_ARG_connectedName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3677 int offset = 0;
3678 asn1_ctx_t asn1_ctx;
3679 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3680 offset = dissect_h450_8_ARG_connectedName(tvb, offset, &asn1_ctx, tree, hf_h450_8_h450_8_ARG_connectedName_PDU);
3681 offset += 7; offset >>= 3;
3682 return offset;
3684 static int dissect_h450_8_ARG_busyName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3685 int offset = 0;
3686 asn1_ctx_t asn1_ctx;
3687 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3688 offset = dissect_h450_8_ARG_busyName(tvb, offset, &asn1_ctx, tree, hf_h450_8_h450_8_ARG_busyName_PDU);
3689 offset += 7; offset >>= 3;
3690 return offset;
3694 /* --- Module Call-Completion-Operations --- --- --- */
3698 static int
3699 dissect_h450_9_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3700 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
3702 return offset;
3706 static const per_sequence_t h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3707 { &hf_h450_9_ccRequestArg_extension_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3710 static int
3711 dissect_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3712 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3713 ett_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3714 0, 255, FALSE);
3716 return offset;
3720 static const per_sequence_t h450_9_CcRequestArg_sequence[] = {
3721 { &hf_h450_9_numberA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
3722 { &hf_h450_9_numberB , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_EndpointAddress },
3723 { &hf_h450_9_ccIdentifier , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_CallIdentifier },
3724 { &hf_h450_9_service , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_7_BasicService },
3725 { &hf_h450_9_can_retain_service, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_9_BOOLEAN },
3726 { &hf_h450_9_retain_sig_connection, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_9_BOOLEAN },
3727 { &hf_h450_9_ccRequestArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3728 { NULL, 0, 0, NULL }
3731 static int
3732 dissect_h450_9_CcRequestArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3733 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3734 ett_h450_9_CcRequestArg, h450_9_CcRequestArg_sequence);
3736 return offset;
3740 static const per_sequence_t h450_9_CcRequestRes_sequence[] = {
3741 { &hf_h450_9_retain_service, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_9_BOOLEAN },
3742 { &hf_h450_9_ccRequestRes_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3743 { NULL, 0, 0, NULL }
3746 static int
3747 dissect_h450_9_CcRequestRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3748 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3749 ett_h450_9_CcRequestRes, h450_9_CcRequestRes_sequence);
3751 return offset;
3755 static const per_sequence_t h450_9_CcShortArg_sequence[] = {
3756 { &hf_h450_9_ccIdentifier , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_CallIdentifier },
3757 { &hf_h450_9_ccShortArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3758 { NULL, 0, 0, NULL }
3761 static int
3762 dissect_h450_9_CcShortArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3763 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3764 ett_h450_9_CcShortArg, h450_9_CcShortArg_sequence);
3766 return offset;
3770 static const per_sequence_t h450_9_CcLongArg_sequence[] = {
3771 { &hf_h450_9_numberA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
3772 { &hf_h450_9_numberB , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_EndpointAddress },
3773 { &hf_h450_9_ccIdentifier , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_CallIdentifier },
3774 { &hf_h450_9_service , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_7_BasicService },
3775 { &hf_h450_9_ccLongArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3776 { NULL, 0, 0, NULL }
3779 static int
3780 dissect_h450_9_CcLongArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3781 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3782 ett_h450_9_CcLongArg, h450_9_CcLongArg_sequence);
3784 return offset;
3788 static const value_string h450_9_CcArg_vals[] = {
3789 { 0, "shortArg" },
3790 { 1, "longArg" },
3791 { 0, NULL }
3794 static const per_choice_t h450_9_CcArg_choice[] = {
3795 { 0, &hf_h450_9_shortArg , ASN1_EXTENSION_ROOT , dissect_h450_9_CcShortArg },
3796 { 1, &hf_h450_9_longArg , ASN1_EXTENSION_ROOT , dissect_h450_9_CcLongArg },
3797 { 0, NULL, 0, NULL }
3800 static int
3801 dissect_h450_9_CcArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3802 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3803 ett_h450_9_CcArg, h450_9_CcArg_choice,
3804 NULL);
3806 return offset;
3809 /*--- PDUs ---*/
3811 static int dissect_h450_9_CcRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3812 int offset = 0;
3813 asn1_ctx_t asn1_ctx;
3814 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3815 offset = dissect_h450_9_CcRequestArg(tvb, offset, &asn1_ctx, tree, hf_h450_9_h450_9_CcRequestArg_PDU);
3816 offset += 7; offset >>= 3;
3817 return offset;
3819 static int dissect_h450_9_CcRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3820 int offset = 0;
3821 asn1_ctx_t asn1_ctx;
3822 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3823 offset = dissect_h450_9_CcRequestRes(tvb, offset, &asn1_ctx, tree, hf_h450_9_h450_9_CcRequestRes_PDU);
3824 offset += 7; offset >>= 3;
3825 return offset;
3827 static int dissect_h450_9_CcArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3828 int offset = 0;
3829 asn1_ctx_t asn1_ctx;
3830 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3831 offset = dissect_h450_9_CcArg(tvb, offset, &asn1_ctx, tree, hf_h450_9_h450_9_CcArg_PDU);
3832 offset += 7; offset >>= 3;
3833 return offset;
3835 static int dissect_h450_9_CcShortArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3836 int offset = 0;
3837 asn1_ctx_t asn1_ctx;
3838 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3839 offset = dissect_h450_9_CcShortArg(tvb, offset, &asn1_ctx, tree, hf_h450_9_h450_9_CcShortArg_PDU);
3840 offset += 7; offset >>= 3;
3841 return offset;
3845 /* --- Module Call-Offer-Operations --- --- --- */
3848 static const per_sequence_t h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3849 { &hf_h450_10_coReqOptArg_extension_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3852 static int
3853 dissect_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3854 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3855 ett_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3856 0, 255, FALSE);
3858 return offset;
3862 static const per_sequence_t h450_10_CoReqOptArg_sequence[] = {
3863 { &hf_h450_10_coReqOptArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3864 { NULL, 0, 0, NULL }
3867 static int
3868 dissect_h450_10_CoReqOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3869 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3870 ett_h450_10_CoReqOptArg, h450_10_CoReqOptArg_sequence);
3872 return offset;
3876 static const per_sequence_t h450_10_RUAlertOptArg_sequence[] = {
3877 { &hf_h450_10_rUAlertOptArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3878 { NULL, 0, 0, NULL }
3881 static int
3882 dissect_h450_10_RUAlertOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3883 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3884 ett_h450_10_RUAlertOptArg, h450_10_RUAlertOptArg_sequence);
3886 return offset;
3890 static const per_sequence_t h450_10_CfbOvrOptArg_sequence[] = {
3891 { &hf_h450_10_cfbOvrOptArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3892 { NULL, 0, 0, NULL }
3895 static int
3896 dissect_h450_10_CfbOvrOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3897 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3898 ett_h450_10_CfbOvrOptArg, h450_10_CfbOvrOptArg_sequence);
3900 return offset;
3903 /*--- PDUs ---*/
3905 static int dissect_h450_10_CoReqOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3906 int offset = 0;
3907 asn1_ctx_t asn1_ctx;
3908 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3909 offset = dissect_h450_10_CoReqOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_10_h450_10_CoReqOptArg_PDU);
3910 offset += 7; offset >>= 3;
3911 return offset;
3913 static int dissect_h450_10_RUAlertOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3914 int offset = 0;
3915 asn1_ctx_t asn1_ctx;
3916 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3917 offset = dissect_h450_10_RUAlertOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_10_h450_10_RUAlertOptArg_PDU);
3918 offset += 7; offset >>= 3;
3919 return offset;
3921 static int dissect_h450_10_CfbOvrOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
3922 int offset = 0;
3923 asn1_ctx_t asn1_ctx;
3924 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
3925 offset = dissect_h450_10_CfbOvrOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_10_h450_10_CfbOvrOptArg_PDU);
3926 offset += 7; offset >>= 3;
3927 return offset;
3931 /* --- Module Call-Intrusion-Operations --- --- --- */
3934 static const value_string h450_11_CICapabilityLevel_vals[] = {
3935 { 1, "intrusionLowCap" },
3936 { 2, "intrusionMediumCap" },
3937 { 3, "intrusionHighCap" },
3938 { 0, NULL }
3942 static int
3943 dissect_h450_11_CICapabilityLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3944 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3945 1U, 3U, NULL, FALSE);
3947 return offset;
3951 static const per_sequence_t h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
3952 { &hf_h450_11_cIRequestArg_argumentExtension_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
3955 static int
3956 dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3957 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3958 ett_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
3959 0, 255, FALSE);
3961 return offset;
3965 static const per_sequence_t h450_11_CIRequestArg_sequence[] = {
3966 { &hf_h450_11_ciCapabilityLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CICapabilityLevel },
3967 { &hf_h450_11_cIRequestArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
3968 { NULL, 0, 0, NULL }
3971 static int
3972 dissect_h450_11_CIRequestArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3973 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3974 ett_h450_11_CIRequestArg, h450_11_CIRequestArg_sequence);
3976 return offset;
3981 static int
3982 dissect_h450_11_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3983 offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
3985 return offset;
3989 static const value_string h450_11_CIStatusInformation_vals[] = {
3990 { 0, "callIntrusionImpending" },
3991 { 1, "callIntruded" },
3992 { 2, "callIsolated" },
3993 { 3, "callForceReleased" },
3994 { 4, "callIntrusionComplete" },
3995 { 5, "callIntrusionEnd" },
3996 { 0, NULL }
3999 static const per_choice_t h450_11_CIStatusInformation_choice[] = {
4000 { 0, &hf_h450_11_callIntrusionImpending, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4001 { 1, &hf_h450_11_callIntruded, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4002 { 2, &hf_h450_11_callIsolated, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4003 { 3, &hf_h450_11_callForceReleased, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4004 { 4, &hf_h450_11_callIntrusionComplete, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4005 { 5, &hf_h450_11_callIntrusionEnd, ASN1_EXTENSION_ROOT , dissect_h450_11_NULL },
4006 { 0, NULL, 0, NULL }
4009 static int
4010 dissect_h450_11_CIStatusInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4011 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4012 ett_h450_11_CIStatusInformation, h450_11_CIStatusInformation_choice,
4013 NULL);
4015 return offset;
4019 static const per_sequence_t h450_11_CIRequestRes_sequence[] = {
4020 { &hf_h450_11_ciStatusInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CIStatusInformation },
4021 { &hf_h450_11_cIRequestRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4022 { NULL, 0, 0, NULL }
4025 static int
4026 dissect_h450_11_CIRequestRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4027 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4028 ett_h450_11_CIRequestRes, h450_11_CIRequestRes_sequence);
4030 return offset;
4034 static const per_sequence_t h450_11_CIGetCIPLOptArg_sequence[] = {
4035 { &hf_h450_11_cIGetCIPLOptArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4036 { NULL, 0, 0, NULL }
4039 static int
4040 dissect_h450_11_CIGetCIPLOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4041 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4042 ett_h450_11_CIGetCIPLOptArg, h450_11_CIGetCIPLOptArg_sequence);
4044 return offset;
4048 static const value_string h450_11_CIProtectionLevel_vals[] = {
4049 { 0, "lowProtection" },
4050 { 1, "mediumProtection" },
4051 { 2, "highProtection" },
4052 { 3, "fullProtection" },
4053 { 0, NULL }
4057 static int
4058 dissect_h450_11_CIProtectionLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4059 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4060 0U, 3U, NULL, FALSE);
4062 return offset;
4066 static const per_sequence_t h450_11_CIGetCIPLRes_sequence[] = {
4067 { &hf_h450_11_ciProtectionLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CIProtectionLevel },
4068 { &hf_h450_11_silentMonitoringPermitted, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_NULL },
4069 { &hf_h450_11_cIGetCIPLRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4070 { NULL, 0, 0, NULL }
4073 static int
4074 dissect_h450_11_CIGetCIPLRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4075 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4076 ett_h450_11_CIGetCIPLRes, h450_11_CIGetCIPLRes_sequence);
4078 return offset;
4082 static const per_sequence_t h450_11_CIIsOptArg_sequence[] = {
4083 { &hf_h450_11_cIIsOptArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4084 { NULL, 0, 0, NULL }
4087 static int
4088 dissect_h450_11_CIIsOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4089 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4090 ett_h450_11_CIIsOptArg, h450_11_CIIsOptArg_sequence);
4092 return offset;
4096 static const per_sequence_t h450_11_CIIsOptRes_sequence[] = {
4097 { &hf_h450_11_cIIsOptRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4098 { NULL, 0, 0, NULL }
4101 static int
4102 dissect_h450_11_CIIsOptRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4103 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4104 ett_h450_11_CIIsOptRes, h450_11_CIIsOptRes_sequence);
4106 return offset;
4110 static const per_sequence_t h450_11_CIFrcRelArg_sequence[] = {
4111 { &hf_h450_11_ciCapabilityLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CICapabilityLevel },
4112 { &hf_h450_11_cIFrcRelArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4113 { NULL, 0, 0, NULL }
4116 static int
4117 dissect_h450_11_CIFrcRelArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4118 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4119 ett_h450_11_CIFrcRelArg, h450_11_CIFrcRelArg_sequence);
4121 return offset;
4125 static const per_sequence_t h450_11_CIFrcRelOptRes_sequence[] = {
4126 { &hf_h450_11_cIFrcRelOptRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4127 { NULL, 0, 0, NULL }
4130 static int
4131 dissect_h450_11_CIFrcRelOptRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4132 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4133 ett_h450_11_CIFrcRelOptRes, h450_11_CIFrcRelOptRes_sequence);
4135 return offset;
4139 static const per_sequence_t h450_11_CIWobOptArg_sequence[] = {
4140 { &hf_h450_11_cIWobOptArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4141 { NULL, 0, 0, NULL }
4144 static int
4145 dissect_h450_11_CIWobOptArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4146 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4147 ett_h450_11_CIWobOptArg, h450_11_CIWobOptArg_sequence);
4149 return offset;
4153 static const per_sequence_t h450_11_CIWobOptRes_sequence[] = {
4154 { &hf_h450_11_cIWobOptRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4155 { NULL, 0, 0, NULL }
4158 static int
4159 dissect_h450_11_CIWobOptRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4160 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4161 ett_h450_11_CIWobOptRes, h450_11_CIWobOptRes_sequence);
4163 return offset;
4167 static const per_sequence_t h450_11_CISilentArg_sequence[] = {
4168 { &hf_h450_11_ciCapabilityLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CICapabilityLevel },
4169 { &hf_h450_11_specificCall, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h225_CallIdentifier },
4170 { &hf_h450_11_cISilentArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4171 { NULL, 0, 0, NULL }
4174 static int
4175 dissect_h450_11_CISilentArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4176 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4177 ett_h450_11_CISilentArg, h450_11_CISilentArg_sequence);
4179 return offset;
4183 static const per_sequence_t h450_11_CISilentOptRes_sequence[] = {
4184 { &hf_h450_11_cISilentOptRes_resultExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4185 { NULL, 0, 0, NULL }
4188 static int
4189 dissect_h450_11_CISilentOptRes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4190 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4191 ett_h450_11_CISilentOptRes, h450_11_CISilentOptRes_sequence);
4193 return offset;
4197 static const per_sequence_t h450_11_CINotificationArg_sequence[] = {
4198 { &hf_h450_11_ciStatusInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h450_11_CIStatusInformation },
4199 { &hf_h450_11_cINotificationArg_argumentExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4200 { NULL, 0, 0, NULL }
4203 static int
4204 dissect_h450_11_CINotificationArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4205 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4206 ett_h450_11_CINotificationArg, h450_11_CINotificationArg_sequence);
4208 return offset;
4211 /*--- PDUs ---*/
4213 static int dissect_h450_11_CIRequestArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4214 int offset = 0;
4215 asn1_ctx_t asn1_ctx;
4216 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4217 offset = dissect_h450_11_CIRequestArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIRequestArg_PDU);
4218 offset += 7; offset >>= 3;
4219 return offset;
4221 static int dissect_h450_11_CIRequestRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4222 int offset = 0;
4223 asn1_ctx_t asn1_ctx;
4224 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4225 offset = dissect_h450_11_CIRequestRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIRequestRes_PDU);
4226 offset += 7; offset >>= 3;
4227 return offset;
4229 static int dissect_h450_11_CIGetCIPLOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4230 int offset = 0;
4231 asn1_ctx_t asn1_ctx;
4232 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4233 offset = dissect_h450_11_CIGetCIPLOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIGetCIPLOptArg_PDU);
4234 offset += 7; offset >>= 3;
4235 return offset;
4237 static int dissect_h450_11_CIGetCIPLRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4238 int offset = 0;
4239 asn1_ctx_t asn1_ctx;
4240 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4241 offset = dissect_h450_11_CIGetCIPLRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIGetCIPLRes_PDU);
4242 offset += 7; offset >>= 3;
4243 return offset;
4245 static int dissect_h450_11_CIIsOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4246 int offset = 0;
4247 asn1_ctx_t asn1_ctx;
4248 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4249 offset = dissect_h450_11_CIIsOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIIsOptArg_PDU);
4250 offset += 7; offset >>= 3;
4251 return offset;
4253 static int dissect_h450_11_CIIsOptRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4254 int offset = 0;
4255 asn1_ctx_t asn1_ctx;
4256 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4257 offset = dissect_h450_11_CIIsOptRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIIsOptRes_PDU);
4258 offset += 7; offset >>= 3;
4259 return offset;
4261 static int dissect_h450_11_CIFrcRelArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4262 int offset = 0;
4263 asn1_ctx_t asn1_ctx;
4264 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4265 offset = dissect_h450_11_CIFrcRelArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIFrcRelArg_PDU);
4266 offset += 7; offset >>= 3;
4267 return offset;
4269 static int dissect_h450_11_CIFrcRelOptRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4270 int offset = 0;
4271 asn1_ctx_t asn1_ctx;
4272 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4273 offset = dissect_h450_11_CIFrcRelOptRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIFrcRelOptRes_PDU);
4274 offset += 7; offset >>= 3;
4275 return offset;
4277 static int dissect_h450_11_CIWobOptArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4278 int offset = 0;
4279 asn1_ctx_t asn1_ctx;
4280 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4281 offset = dissect_h450_11_CIWobOptArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIWobOptArg_PDU);
4282 offset += 7; offset >>= 3;
4283 return offset;
4285 static int dissect_h450_11_CIWobOptRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4286 int offset = 0;
4287 asn1_ctx_t asn1_ctx;
4288 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4289 offset = dissect_h450_11_CIWobOptRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CIWobOptRes_PDU);
4290 offset += 7; offset >>= 3;
4291 return offset;
4293 static int dissect_h450_11_CISilentArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4294 int offset = 0;
4295 asn1_ctx_t asn1_ctx;
4296 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4297 offset = dissect_h450_11_CISilentArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CISilentArg_PDU);
4298 offset += 7; offset >>= 3;
4299 return offset;
4301 static int dissect_h450_11_CISilentOptRes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4302 int offset = 0;
4303 asn1_ctx_t asn1_ctx;
4304 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4305 offset = dissect_h450_11_CISilentOptRes(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CISilentOptRes_PDU);
4306 offset += 7; offset >>= 3;
4307 return offset;
4309 static int dissect_h450_11_CINotificationArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4310 int offset = 0;
4311 asn1_ctx_t asn1_ctx;
4312 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4313 offset = dissect_h450_11_CINotificationArg(tvb, offset, &asn1_ctx, tree, hf_h450_11_h450_11_CINotificationArg_PDU);
4314 offset += 7; offset >>= 3;
4315 return offset;
4319 /* --- Module Common-Information-Operations --- --- --- */
4323 static int
4324 dissect_h450_12_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4325 offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
4327 return offset;
4331 static const per_sequence_t h450_12_FeatureList_sequence[] = {
4332 { &hf_h450_12_ssCFreRoutingSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4333 { &hf_h450_12_ssCTreRoutingSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4334 { &hf_h450_12_ssCCBSPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4335 { &hf_h450_12_ssCCNRPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4336 { &hf_h450_12_ssCOSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4337 { &hf_h450_12_ssCIForcedReleaseSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4338 { &hf_h450_12_ssCIIsolationSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4339 { &hf_h450_12_ssCIWaitOnBusySupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4340 { &hf_h450_12_ssCISilentMonitoringSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4341 { &hf_h450_12_ssCIConferenceSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4342 { &hf_h450_12_ssCHFarHoldSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4343 { &hf_h450_12_ssMWICallbackSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4344 { &hf_h450_12_ssCPCallParkSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4345 { NULL, 0, 0, NULL }
4348 static int
4349 dissect_h450_12_FeatureList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4350 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4351 ett_h450_12_FeatureList, h450_12_FeatureList_sequence);
4353 return offset;
4357 static const value_string h450_12_PartyCategory_vals[] = {
4358 { 0, "unknown" },
4359 { 1, "extension" },
4360 { 2, "attendant" },
4361 { 3, "emergExt" },
4362 { 0, NULL }
4366 static int
4367 dissect_h450_12_PartyCategory(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4368 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
4369 4, NULL, TRUE, 0, NULL);
4371 return offset;
4376 static int
4377 dissect_h450_12_SSCIProtectionLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4378 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4379 0U, 3U, NULL, FALSE);
4381 return offset;
4385 static const per_sequence_t h450_12_FeatureValues_sequence[] = {
4386 { &hf_h450_12_partyCategory, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_PartyCategory },
4387 { &hf_h450_12_ssCIprotectionLevel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_SSCIProtectionLevel },
4388 { NULL, 0, 0, NULL }
4391 static int
4392 dissect_h450_12_FeatureValues(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4393 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4394 ett_h450_12_FeatureValues, h450_12_FeatureValues_sequence);
4396 return offset;
4400 static const per_sequence_t h450_12_FeatureControl_sequence[] = {
4401 { &hf_h450_12_ssCHDoNotHold, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4402 { &hf_h450_12_ssCTDoNotTransfer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4403 { &hf_h450_12_ssMWICallbackCall, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4404 { &hf_h450_12_ssCISilentMonitorPermitted, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_NULL },
4405 { NULL, 0, 0, NULL }
4408 static int
4409 dissect_h450_12_FeatureControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4410 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4411 ett_h450_12_FeatureControl, h450_12_FeatureControl_sequence);
4413 return offset;
4417 static const per_sequence_t h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of[1] = {
4418 { &hf_h450_12_cmnArg_extension_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_h450_4_MixedExtension },
4421 static int
4422 dissect_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4423 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4424 ett_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension, h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension_sequence_of,
4425 0, 255, FALSE);
4427 return offset;
4431 static const per_sequence_t h450_12_CmnArg_sequence[] = {
4432 { &hf_h450_12_featureList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_FeatureList },
4433 { &hf_h450_12_featureValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_FeatureValues },
4434 { &hf_h450_12_featureControl, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_FeatureControl },
4435 { &hf_h450_12_cmnArg_extension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4436 { NULL, 0, 0, NULL }
4439 static int
4440 dissect_h450_12_CmnArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4441 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4442 ett_h450_12_CmnArg, h450_12_CmnArg_sequence);
4444 return offset;
4448 static const per_sequence_t h450_12_DummyArg_sequence[] = {
4449 { &hf_h450_12_extensionArg, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension },
4450 { NULL, 0, 0, NULL }
4453 static int
4454 dissect_h450_12_DummyArg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4455 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4456 ett_h450_12_DummyArg, h450_12_DummyArg_sequence);
4458 return offset;
4461 /*--- PDUs ---*/
4463 static int dissect_h450_12_DummyArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4464 int offset = 0;
4465 asn1_ctx_t asn1_ctx;
4466 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4467 offset = dissect_h450_12_DummyArg(tvb, offset, &asn1_ctx, tree, hf_h450_12_h450_12_DummyArg_PDU);
4468 offset += 7; offset >>= 3;
4469 return offset;
4471 static int dissect_h450_12_CmnArg_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4472 int offset = 0;
4473 asn1_ctx_t asn1_ctx;
4474 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
4475 offset = dissect_h450_12_CmnArg(tvb, offset, &asn1_ctx, tree, hf_h450_12_h450_12_CmnArg_PDU);
4476 offset += 7; offset >>= 3;
4477 return offset;
4481 /*--- End of included file: packet-h450-fn.c ---*/
4482 #line 72 "../../asn1/h450/packet-h450-template.c"
4484 typedef struct _h450_op_t {
4485 gint32 opcode;
4486 new_dissector_t arg_pdu;
4487 new_dissector_t res_pdu;
4488 } h450_op_t;
4490 static const h450_op_t h450_op_tab[] = {
4492 /*--- Included file: packet-h450-table11.c ---*/
4493 #line 1 "../../asn1/h450/packet-h450-table11.c"
4495 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
4497 /* Unknown or empty loop list OPERATION */
4499 /* --- Module Call-Transfer-Operations --- --- --- */
4501 /* callTransferIdentify */ { 7, dissect_h450_2_DummyArg_PDU, dissect_h450_2_CTIdentifyRes_PDU },
4502 /* callTransferAbandon */ { 8, dissect_h450_2_DummyArg_PDU, NULL },
4503 /* callTransferInitiate */ { 9, dissect_h450_2_CTInitiateArg_PDU, dissect_h450_2_DummyRes_PDU },
4504 /* callTransferSetup */ { 10, dissect_h450_2_CTSetupArg_PDU, dissect_h450_2_DummyRes_PDU },
4505 /* callTransferUpdate */ { 13, dissect_h450_2_CTUpdateArg_PDU, NULL },
4506 /* subaddressTransfer */ { 14, dissect_h450_2_SubaddressTransferArg_PDU, NULL },
4507 /* callTransferComplete */ { 12, dissect_h450_2_CTCompleteArg_PDU, NULL },
4508 /* callTransferActive */ { 11, dissect_h450_2_CTActiveArg_PDU, NULL },
4510 /* --- Module Call-Diversion-Operations --- --- --- */
4512 /* activateDiversionQ */ { 15, dissect_h450_3_ARG_activateDiversionQ_PDU, dissect_h450_3_RES_activateDiversionQ_PDU },
4513 /* deactivateDiversionQ */ { 16, dissect_h450_3_ARG_deactivateDiversionQ_PDU, dissect_h450_3_RES_deactivateDiversionQ_PDU },
4514 /* interrogateDiversionQ */ { 17, dissect_h450_3_ARG_interrogateDiversionQ_PDU, dissect_h450_3_IntResultList_PDU },
4515 /* checkRestriction */ { 18, dissect_h450_3_ARG_checkRestriction_PDU, dissect_h450_3_RES_checkRestriction_PDU },
4516 /* callRerouting */ { 19, dissect_h450_3_ARG_callRerouting_PDU, dissect_h450_3_RES_callRerouting_PDU },
4517 /* divertingLegInformation1 */ { 20, dissect_h450_3_ARG_divertingLegInformation1_PDU, NULL },
4518 /* divertingLegInformation2 */ { 21, dissect_h450_3_ARG_divertingLegInformation2_PDU, NULL },
4519 /* divertingLegInformation3 */ { 22, dissect_h450_3_ARG_divertingLegInformation3_PDU, NULL },
4520 /* divertingLegInformation4 */ { 100, dissect_h450_3_ARG_divertingLegInformation4_PDU, NULL },
4521 /* cfnrDivertedLegFailed */ { 23, dissect_h450_3_ARG_cfnrDivertedLegFailed_PDU, NULL },
4523 /* --- Module Call-Hold-Operations --- --- --- */
4525 /* holdNotific */ { 101, dissect_h450_4_HoldNotificArg_PDU, NULL },
4526 /* retrieveNotific */ { 102, dissect_h450_4_RetrieveNotificArg_PDU, NULL },
4527 /* remoteHold */ { 103, dissect_h450_4_RemoteHoldArg_PDU, dissect_h450_4_RemoteHoldRes_PDU },
4528 /* remoteRetrieve */ { 104, dissect_h450_4_RemoteRetrieveArg_PDU, dissect_h450_4_RemoteRetrieveRes_PDU },
4530 /* --- Module Call-Park-Pickup-Operations --- --- --- */
4532 /* cpRequest */ { 106, dissect_h450_5_CpRequestArg_PDU, dissect_h450_5_CpRequestRes_PDU },
4533 /* cpSetup */ { 107, dissect_h450_5_CpSetupArg_PDU, dissect_h450_5_CpSetupRes_PDU },
4534 /* groupIndicationOn */ { 108, dissect_h450_5_GroupIndicationOnArg_PDU, dissect_h450_5_GroupIndicationOnRes_PDU },
4535 /* groupIndicationOff */ { 109, dissect_h450_5_GroupIndicationOffArg_PDU, dissect_h450_5_GroupIndicationOffRes_PDU },
4536 /* pickrequ */ { 110, dissect_h450_5_PickrequArg_PDU, dissect_h450_5_PickrequRes_PDU },
4537 /* pickup */ { 111, dissect_h450_5_PickupArg_PDU, dissect_h450_5_PickupRes_PDU },
4538 /* pickExe */ { 112, dissect_h450_5_PickExeArg_PDU, dissect_h450_5_PickExeRes_PDU },
4539 /* cpNotify */ { 113, dissect_h450_5_CpNotifyArg_PDU, NULL },
4540 /* cpickupNotify */ { 114, dissect_h450_5_CpickupNotifyArg_PDU, NULL },
4542 /* --- Module Call-Waiting-Operations --- --- --- */
4544 /* callWaiting */ { 105, dissect_h450_6_CallWaitingArg_PDU, NULL },
4546 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
4548 /* mwiActivate */ { 80, dissect_h450_7_MWIActivateArg_PDU, dissect_h450_7_DummyRes_PDU },
4549 /* mwiDeactivate */ { 81, dissect_h450_7_MWIDeactivateArg_PDU, dissect_h450_7_DummyRes_PDU },
4550 /* mwiInterrogate */ { 82, dissect_h450_7_MWIInterrogateArg_PDU, dissect_h450_7_MWIInterrogateRes_PDU },
4552 /* --- Module Name-Operations --- --- --- */
4554 /* callingName */ { 0, dissect_h450_8_ARG_callingName_PDU, NULL },
4555 /* alertingName */ { 1, dissect_h450_8_ARG_alertingName_PDU, NULL },
4556 /* connectedName */ { 2, dissect_h450_8_ARG_connectedName_PDU, NULL },
4557 /* busyName */ { 3, dissect_h450_8_ARG_busyName_PDU, NULL },
4559 /* --- Module Call-Completion-Operations --- --- --- */
4561 /* ccbsRequest */ { 40, dissect_h450_9_CcRequestArg_PDU, dissect_h450_9_CcRequestRes_PDU },
4562 /* ccnrRequest */ { 27, dissect_h450_9_CcRequestArg_PDU, dissect_h450_9_CcRequestRes_PDU },
4563 /* ccCancel */ { 28, dissect_h450_9_CcArg_PDU, NULL },
4564 /* ccExecPossible */ { 29, dissect_h450_9_CcArg_PDU, NULL },
4565 /* ccRingout */ { 31, dissect_h450_9_CcShortArg_PDU, NULL },
4566 /* ccSuspend */ { 32, dissect_h450_9_CcShortArg_PDU, NULL },
4567 /* ccResume */ { 33, dissect_h450_9_CcArg_PDU, NULL },
4569 /* --- Module Call-Offer-Operations --- --- --- */
4571 /* callOfferRequest */ { 34, dissect_h450_10_CoReqOptArg_PDU, NULL },
4572 /* remoteUserAlerting */ { 115, dissect_h450_10_RUAlertOptArg_PDU, NULL },
4573 /* cfbOverride */ { 49, dissect_h450_10_CfbOvrOptArg_PDU, NULL },
4575 /* --- Module Call-Intrusion-Operations --- --- --- */
4577 /* callIntrusionRequest */ { 43, dissect_h450_11_CIRequestArg_PDU, dissect_h450_11_CIRequestRes_PDU },
4578 /* callIntrusionGetCIPL */ { 44, dissect_h450_11_CIGetCIPLOptArg_PDU, dissect_h450_11_CIGetCIPLRes_PDU },
4579 /* callIntrusionIsolate */ { 45, dissect_h450_11_CIIsOptArg_PDU, dissect_h450_11_CIIsOptRes_PDU },
4580 /* callIntrusionForcedRelease */ { 46, dissect_h450_11_CIFrcRelArg_PDU, dissect_h450_11_CIFrcRelOptRes_PDU },
4581 /* callIntrusionWOBRequest */ { 47, dissect_h450_11_CIWobOptArg_PDU, dissect_h450_11_CIWobOptRes_PDU },
4582 /* callIntrusionSilentMonitor */ { 116, dissect_h450_11_CISilentArg_PDU, dissect_h450_11_CISilentOptRes_PDU },
4583 /* callIntrusionNotification */ { 117, dissect_h450_11_CINotificationArg_PDU, NULL },
4585 /* --- Module Common-Information-Operations --- --- --- */
4587 /* cmnRequest */ { 84, dissect_h450_12_DummyArg_PDU, dissect_h450_12_CmnArg_PDU },
4588 /* cmnInform */ { 85, dissect_h450_12_CmnArg_PDU, NULL },
4590 /*--- End of included file: packet-h450-table11.c ---*/
4591 #line 81 "../../asn1/h450/packet-h450-template.c"
4594 typedef struct _h450_err_t {
4595 gint32 errcode;
4596 new_dissector_t err_pdu;
4597 } h450_err_t;
4599 static const h450_err_t h450_err_tab[] = {
4601 /*--- Included file: packet-h450-table21.c ---*/
4602 #line 1 "../../asn1/h450/packet-h450-table21.c"
4604 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
4606 /* userNotSubscribed */ { 0, NULL },
4607 /* rejectedByNetwork */ { 1, NULL },
4608 /* rejectedByUser */ { 2, NULL },
4609 /* notAvailable */ { 3, NULL },
4610 /* insufficientInformation */ { 5, NULL },
4611 /* invalidServedUserNumber */ { 6, NULL },
4612 /* invalidCallState */ { 7, NULL },
4613 /* basicServiceNotProvided */ { 8, NULL },
4614 /* notIncomingCall */ { 9, NULL },
4615 /* supplementaryServiceInteractionNotAllowed */ { 10, NULL },
4616 /* resourceUnavailable */ { 11, NULL },
4617 /* callFailure */ { 25, NULL },
4618 /* proceduralError */ { 43, NULL },
4620 /* --- Module Call-Transfer-Operations --- --- --- */
4622 /* unspecified */ { 1008, dissect_h450_2_PAR_unspecified_PDU },
4623 /* invalidReroutingNumber */ { 1004, NULL },
4624 /* unrecognizedCallIdentity */ { 1005, NULL },
4625 /* establishmentFailure */ { 1006, NULL },
4627 /* --- Module Call-Diversion-Operations --- --- --- */
4629 /* invalidDivertedNumber */ { 12, NULL },
4630 /* specialServiceNumber */ { 14, NULL },
4631 /* diversionToServedUserNumber */ { 15, NULL },
4632 /* numberOfDiversionsExceeded */ { 24, NULL },
4633 /* temporarilyUnavailable */ { 1000, NULL },
4634 /* notAuthorized */ { 1007, NULL },
4635 /* unspecified */ { 1008, dissect_h450_3_PAR_unspecified_PDU },
4637 /* --- Module Call-Hold-Operations --- --- --- */
4639 /* undefined */ { 2002, dissect_h450_4_PAR_undefined_PDU },
4641 /* --- Module Call-Park-Pickup-Operations --- --- --- */
4643 /* callPickupIdInvalid */ { 2000, NULL },
4644 /* callAlreadyPickedUp */ { 2001, NULL },
4645 /* undefined */ { 2002, dissect_h450_5_PAR_undefined_PDU },
4647 /* --- Module Call-Waiting-Operations --- --- --- */
4649 /* Unknown or empty loop list ERROR */
4651 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
4653 /* undefined */ { 2002, dissect_h450_7_PAR_undefined_PDU },
4654 /* invalidMsgCentreId */ { 1018, NULL },
4655 /* notActivated */ { 31, NULL },
4657 /* --- Module Name-Operations --- --- --- */
4659 /* Unknown or empty loop list ERROR */
4661 /* --- Module Call-Completion-Operations --- --- --- */
4663 /* shortTermRejection */ { 1010, NULL },
4664 /* longTermRejection */ { 1011, NULL },
4665 /* remoteUserBusyAgain */ { 1012, NULL },
4666 /* failureToMatch */ { 1013, NULL },
4668 /* --- Module Call-Offer-Operations --- --- --- */
4670 /* Unknown or empty loop list ERROR */
4672 /* --- Module Call-Intrusion-Operations --- --- --- */
4674 /* notBusy */ { 1009, NULL },
4675 /* temporarilyUnavailable */ { 1000, NULL },
4676 /* notAuthorized */ { 1007, NULL },
4678 /* --- Module Common-Information-Operations --- --- --- */
4680 /* Unknown or empty loop list ERROR */
4682 /*--- End of included file: packet-h450-table21.c ---*/
4683 #line 90 "../../asn1/h450/packet-h450-template.c"
4686 static const h450_op_t *get_op(gint32 opcode) {
4687 int i;
4689 /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
4690 for (i = array_length(h450_op_tab) - 1; i >= 0; i--)
4691 if (h450_op_tab[i].opcode == opcode)
4692 return &h450_op_tab[i];
4693 return NULL;
4696 static const h450_err_t *get_err(gint32 errcode) {
4697 int i;
4699 /* search from the end to get the last occurrence if the operation is redefined in some newer specification */
4700 for (i = array_length(h450_err_tab) - 1; i >= 0; i--)
4701 if (h450_err_tab[i].errcode == errcode)
4702 return &h450_err_tab[i];
4703 return NULL;
4706 /*--- dissect_h450_arg ------------------------------------------------------*/
4707 static int
4708 dissect_h450_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
4709 proto_item *hidden_item;
4710 int offset;
4711 rose_ctx_t *rctx = get_rose_ctx(data);
4712 gint32 opcode;
4713 const h450_op_t *op_ptr;
4714 const gchar *p;
4716 offset = 0;
4718 DISSECTOR_ASSERT(rctx);
4719 if (rctx->d.pdu != 1) /* invoke */
4720 return offset;
4721 if (rctx->d.code != 0) /* local */
4722 return offset;
4723 opcode = rctx->d.code_local;
4724 op_ptr = get_op(opcode);
4725 if (!op_ptr)
4726 return offset;
4728 hidden_item = proto_tree_add_uint(tree, hf_h450_operation, tvb, 0, 0, opcode);
4729 PROTO_ITEM_SET_HIDDEN(hidden_item);
4730 p = try_val_to_str(opcode, VALS(h450_str_operation));
4731 if (p) {
4732 proto_item_append_text(rctx->d.code_item, " - %s", p);
4733 if (rctx->apdu_depth >= 0)
4734 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
4737 if (op_ptr->arg_pdu && (tvb_length_remaining(tvb, offset) > 0))
4738 offset = op_ptr->arg_pdu(tvb, pinfo, tree, NULL);
4739 else
4740 if (tvb_length_remaining(tvb, offset) > 0) {
4741 proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED ARGUMENT TYPE (H.450)");
4742 offset += tvb_length_remaining(tvb, offset);
4745 return offset;
4748 /*--- dissect_h450_res ------------------------------------------------------*/
4749 static int
4750 dissect_h450_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
4751 proto_item *hidden_item;
4752 int offset;
4753 rose_ctx_t *rctx = get_rose_ctx(data);
4754 gint32 opcode;
4755 const h450_op_t *op_ptr;
4756 const gchar *p;
4758 offset = 0;
4760 DISSECTOR_ASSERT(rctx);
4761 if (rctx->d.pdu != 2) /* returnResult */
4762 return offset;
4763 if (rctx->d.code != 0) /* local */
4764 return offset;
4765 opcode = rctx->d.code_local;
4766 op_ptr = get_op(opcode);
4767 if (!op_ptr)
4768 return offset;
4770 hidden_item = proto_tree_add_uint(tree, hf_h450_operation, tvb, 0, 0, opcode);
4771 PROTO_ITEM_SET_HIDDEN(hidden_item);
4772 p = try_val_to_str(opcode, VALS(h450_str_operation));
4773 if (p) {
4774 proto_item_append_text(rctx->d.code_item, " - %s", p);
4775 if (rctx->apdu_depth >= 0)
4776 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
4779 if (op_ptr->res_pdu && (tvb_length_remaining(tvb, offset) > 0))
4780 offset = op_ptr->res_pdu(tvb, pinfo, tree, NULL);
4781 else
4782 if (tvb_length_remaining(tvb, offset) > 0) {
4783 proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED RESULT TYPE (H.450)");
4784 offset += tvb_length_remaining(tvb, offset);
4787 return offset;
4790 /*--- dissect_h450_err ------------------------------------------------------*/
4791 static int
4792 dissect_h450_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) {
4793 proto_item *hidden_item;
4794 int offset;
4795 rose_ctx_t *rctx = get_rose_ctx(data);
4796 gint32 errcode;
4797 const h450_err_t *err_ptr;
4798 const gchar *p;
4800 offset = 0;
4802 DISSECTOR_ASSERT(rctx);
4803 if (rctx->d.pdu != 3) /* returnError */
4804 return offset;
4805 if (rctx->d.code != 0) /* local */
4806 return offset;
4807 errcode = rctx->d.code_local;
4808 err_ptr = get_err(errcode);
4809 if (!err_ptr)
4810 return offset;
4812 hidden_item = proto_tree_add_uint(tree, hf_h450_error, tvb, 0, 0, errcode);
4813 PROTO_ITEM_SET_HIDDEN(hidden_item);
4814 p = try_val_to_str(errcode, VALS(h450_str_error));
4815 if (p) {
4816 proto_item_append_text(rctx->d.code_item, " - %s", p);
4817 if (rctx->apdu_depth >= 0)
4818 proto_item_append_text(proto_item_get_parent_nth(proto_tree_get_parent(tree), rctx->apdu_depth), " %s", p);
4821 if (err_ptr->err_pdu && (tvb_length_remaining(tvb, offset) > 0))
4822 offset = err_ptr->err_pdu(tvb, pinfo, tree, NULL);
4823 else
4824 if (tvb_length_remaining(tvb, offset) > 0) {
4825 proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED ERROR TYPE (H.450)");
4826 offset += tvb_length_remaining(tvb, offset);
4829 return offset;
4832 /*--- proto_register_h450 -------------------------------------------*/
4833 void proto_register_h450(void) {
4835 /* List of fields */
4836 static hf_register_info hf[] = {
4837 { &hf_h450_operation, { "Operation", "h450.operation",
4838 FT_UINT8, BASE_DEC, VALS(h450_str_operation), 0x0,
4839 NULL, HFILL }},
4840 { &hf_h450_error, { "Error", "h450.error",
4841 FT_UINT8, BASE_DEC, VALS(h450_str_error), 0x0,
4842 NULL, HFILL }},
4844 /*--- Included file: packet-h450-hfarr.c ---*/
4845 #line 1 "../../asn1/h450/packet-h450-hfarr.c"
4847 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
4849 { &hf_h450_h450_H4501SupplementaryService_PDU,
4850 { "H4501SupplementaryService", "h450.H4501SupplementaryService_element",
4851 FT_NONE, BASE_NONE, NULL, 0,
4852 NULL, HFILL }},
4853 { &hf_h450_networkFacilityExtension,
4854 { "networkFacilityExtension", "h450.networkFacilityExtension_element",
4855 FT_NONE, BASE_NONE, NULL, 0,
4856 NULL, HFILL }},
4857 { &hf_h450_interpretationApdu,
4858 { "interpretationApdu", "h450.interpretationApdu",
4859 FT_UINT32, BASE_DEC, VALS(h450_InterpretationApdu_vals), 0,
4860 NULL, HFILL }},
4861 { &hf_h450_serviceApdu,
4862 { "serviceApdu", "h450.serviceApdu",
4863 FT_UINT32, BASE_DEC, VALS(h450_ServiceApdus_vals), 0,
4864 "ServiceApdus", HFILL }},
4865 { &hf_h450_sourceEntity,
4866 { "sourceEntity", "h450.sourceEntity",
4867 FT_UINT32, BASE_DEC, VALS(h450_EntityType_vals), 0,
4868 "EntityType", HFILL }},
4869 { &hf_h450_sourceEntityAddress,
4870 { "sourceEntityAddress", "h450.sourceEntityAddress",
4871 FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
4872 "AddressInformation", HFILL }},
4873 { &hf_h450_destinationEntity,
4874 { "destinationEntity", "h450.destinationEntity",
4875 FT_UINT32, BASE_DEC, VALS(h450_EntityType_vals), 0,
4876 "EntityType", HFILL }},
4877 { &hf_h450_destinationEntityAddress,
4878 { "destinationEntityAddress", "h450.destinationEntityAddress",
4879 FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
4880 "AddressInformation", HFILL }},
4881 { &hf_h450_endpoint,
4882 { "endpoint", "h450.endpoint_element",
4883 FT_NONE, BASE_NONE, NULL, 0,
4884 NULL, HFILL }},
4885 { &hf_h450_anyEntity,
4886 { "anyEntity", "h450.anyEntity_element",
4887 FT_NONE, BASE_NONE, NULL, 0,
4888 NULL, HFILL }},
4889 { &hf_h450_discardAnyUnrecognizedInvokePdu,
4890 { "discardAnyUnrecognizedInvokePdu", "h450.discardAnyUnrecognizedInvokePdu_element",
4891 FT_NONE, BASE_NONE, NULL, 0,
4892 NULL, HFILL }},
4893 { &hf_h450_clearCallIfAnyInvokePduNotRecognized,
4894 { "clearCallIfAnyInvokePduNotRecognized", "h450.clearCallIfAnyInvokePduNotRecognized_element",
4895 FT_NONE, BASE_NONE, NULL, 0,
4896 NULL, HFILL }},
4897 { &hf_h450_rejectAnyUnrecognizedInvokePdu,
4898 { "rejectAnyUnrecognizedInvokePdu", "h450.rejectAnyUnrecognizedInvokePdu_element",
4899 FT_NONE, BASE_NONE, NULL, 0,
4900 NULL, HFILL }},
4901 { &hf_h450_rosApdus,
4902 { "rosApdus", "h450.rosApdus",
4903 FT_UINT32, BASE_DEC, NULL, 0,
4904 NULL, HFILL }},
4905 { &hf_h450_rosApdus_item,
4906 { "rosApdus item", "h450.rosApdus_item",
4907 FT_UINT32, BASE_DEC, VALS(h450_ros_ROS_vals), 0,
4908 NULL, HFILL }},
4909 { &hf_h450_destinationAddress,
4910 { "destinationAddress", "h450.destinationAddress",
4911 FT_UINT32, BASE_DEC, NULL, 0,
4912 "SEQUENCE_OF_AliasAddress", HFILL }},
4913 { &hf_h450_destinationAddress_item,
4914 { "AliasAddress", "h450.AliasAddress",
4915 FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
4916 NULL, HFILL }},
4917 { &hf_h450_remoteExtensionAddress,
4918 { "remoteExtensionAddress", "h450.remoteExtensionAddress",
4919 FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
4920 "AliasAddress", HFILL }},
4921 { &hf_h450_destinationAddressPresentationIndicator,
4922 { "destinationAddressPresentationIndicator", "h450.destinationAddressPresentationIndicator",
4923 FT_UINT32, BASE_DEC, VALS(h225_PresentationIndicator_vals), 0,
4924 "PresentationIndicator", HFILL }},
4925 { &hf_h450_destinationAddressScreeningIndicator,
4926 { "destinationAddressScreeningIndicator", "h450.destinationAddressScreeningIndicator",
4927 FT_UINT32, BASE_DEC, VALS(h225_ScreeningIndicator_vals), 0,
4928 "ScreeningIndicator", HFILL }},
4929 { &hf_h450_remoteExtensionAddressPresentationIndicator,
4930 { "remoteExtensionAddressPresentationIndicator", "h450.remoteExtensionAddressPresentationIndicator",
4931 FT_UINT32, BASE_DEC, VALS(h225_PresentationIndicator_vals), 0,
4932 "PresentationIndicator", HFILL }},
4933 { &hf_h450_remoteExtensionAddressScreeningIndicator,
4934 { "remoteExtensionAddressScreeningIndicator", "h450.remoteExtensionAddressScreeningIndicator",
4935 FT_UINT32, BASE_DEC, VALS(h225_ScreeningIndicator_vals), 0,
4936 "ScreeningIndicator", HFILL }},
4937 { &hf_h450_userSpecifiedSubaddress,
4938 { "userSpecifiedSubaddress", "h450.userSpecifiedSubaddress_element",
4939 FT_NONE, BASE_NONE, NULL, 0,
4940 NULL, HFILL }},
4941 { &hf_h450_nsapSubaddress,
4942 { "nsapSubaddress", "h450.nsapSubaddress",
4943 FT_BYTES, BASE_NONE, NULL, 0,
4944 NULL, HFILL }},
4945 { &hf_h450_subaddressInformation,
4946 { "subaddressInformation", "h450.subaddressInformation",
4947 FT_BYTES, BASE_NONE, NULL, 0,
4948 NULL, HFILL }},
4949 { &hf_h450_oddCountIndicator,
4950 { "oddCountIndicator", "h450.oddCountIndicator",
4951 FT_BOOLEAN, BASE_NONE, NULL, 0,
4952 "BOOLEAN", HFILL }},
4953 { &hf_h450_extensionId,
4954 { "extensionId", "h450.extensionId",
4955 FT_OID, BASE_NONE, NULL, 0,
4956 "OBJECT_IDENTIFIER", HFILL }},
4957 { &hf_h450_extensionArgument,
4958 { "extensionArgument", "h450.extensionArgument_element",
4959 FT_NONE, BASE_NONE, NULL, 0,
4960 NULL, HFILL }},
4962 /* --- Module Call-Transfer-Operations --- --- --- */
4964 { &hf_h450_2_h450_2_DummyArg_PDU,
4965 { "DummyArg", "h450.2.DummyArg",
4966 FT_UINT32, BASE_DEC, VALS(h450_2_DummyArg_vals), 0,
4967 NULL, HFILL }},
4968 { &hf_h450_2_h450_2_CTIdentifyRes_PDU,
4969 { "CTIdentifyRes", "h450.2.CTIdentifyRes_element",
4970 FT_NONE, BASE_NONE, NULL, 0,
4971 NULL, HFILL }},
4972 { &hf_h450_2_h450_2_CTInitiateArg_PDU,
4973 { "CTInitiateArg", "h450.2.CTInitiateArg_element",
4974 FT_NONE, BASE_NONE, NULL, 0,
4975 NULL, HFILL }},
4976 { &hf_h450_2_h450_2_DummyRes_PDU,
4977 { "DummyRes", "h450.2.DummyRes",
4978 FT_UINT32, BASE_DEC, VALS(h450_2_DummyRes_vals), 0,
4979 NULL, HFILL }},
4980 { &hf_h450_2_h450_2_CTSetupArg_PDU,
4981 { "CTSetupArg", "h450.2.CTSetupArg_element",
4982 FT_NONE, BASE_NONE, NULL, 0,
4983 NULL, HFILL }},
4984 { &hf_h450_2_h450_2_CTUpdateArg_PDU,
4985 { "CTUpdateArg", "h450.2.CTUpdateArg_element",
4986 FT_NONE, BASE_NONE, NULL, 0,
4987 NULL, HFILL }},
4988 { &hf_h450_2_h450_2_SubaddressTransferArg_PDU,
4989 { "SubaddressTransferArg", "h450.2.SubaddressTransferArg_element",
4990 FT_NONE, BASE_NONE, NULL, 0,
4991 NULL, HFILL }},
4992 { &hf_h450_2_h450_2_CTCompleteArg_PDU,
4993 { "CTCompleteArg", "h450.2.CTCompleteArg_element",
4994 FT_NONE, BASE_NONE, NULL, 0,
4995 NULL, HFILL }},
4996 { &hf_h450_2_h450_2_CTActiveArg_PDU,
4997 { "CTActiveArg", "h450.2.CTActiveArg_element",
4998 FT_NONE, BASE_NONE, NULL, 0,
4999 NULL, HFILL }},
5000 { &hf_h450_2_h450_2_PAR_unspecified_PDU,
5001 { "PAR-unspecified", "h450.2.PAR_unspecified",
5002 FT_UINT32, BASE_DEC, VALS(h450_2_PAR_unspecified_vals), 0,
5003 NULL, HFILL }},
5004 { &hf_h450_2_extensionSeq,
5005 { "extensionSeq", "h450.2.extensionSeq",
5006 FT_UINT32, BASE_DEC, NULL, 0,
5007 NULL, HFILL }},
5008 { &hf_h450_2_nonStandardData,
5009 { "nonStandardData", "h450.2.nonStandardData_element",
5010 FT_NONE, BASE_NONE, NULL, 0,
5011 "NonStandardParameter", HFILL }},
5012 { &hf_h450_2_callIdentity,
5013 { "callIdentity", "h450.2.callIdentity",
5014 FT_STRING, BASE_NONE, NULL, 0,
5015 NULL, HFILL }},
5016 { &hf_h450_2_reroutingNumber,
5017 { "reroutingNumber", "h450.2.reroutingNumber_element",
5018 FT_NONE, BASE_NONE, NULL, 0,
5019 "EndpointAddress", HFILL }},
5020 { &hf_h450_2_cTInitiateArg_argumentExtension,
5021 { "argumentExtension", "h450.2.argumentExtension",
5022 FT_UINT32, BASE_DEC, VALS(h450_2_T_cTInitiateArg_argumentExtension_vals), 0,
5023 "T_cTInitiateArg_argumentExtension", HFILL }},
5024 { &hf_h450_2_transferringNumber,
5025 { "transferringNumber", "h450.2.transferringNumber_element",
5026 FT_NONE, BASE_NONE, NULL, 0,
5027 "EndpointAddress", HFILL }},
5028 { &hf_h450_2_cTSetupArg_argumentExtension,
5029 { "argumentExtension", "h450.2.argumentExtension",
5030 FT_UINT32, BASE_DEC, VALS(h450_2_T_cTSetupArg_argumentExtension_vals), 0,
5031 "T_cTSetupArg_argumentExtension", HFILL }},
5032 { &hf_h450_2_resultExtension,
5033 { "resultExtension", "h450.2.resultExtension",
5034 FT_UINT32, BASE_DEC, VALS(h450_2_T_resultExtension_vals), 0,
5035 NULL, HFILL }},
5036 { &hf_h450_2_redirectionNumber,
5037 { "redirectionNumber", "h450.2.redirectionNumber_element",
5038 FT_NONE, BASE_NONE, NULL, 0,
5039 "EndpointAddress", HFILL }},
5040 { &hf_h450_2_redirectionInfo,
5041 { "redirectionInfo", "h450.2.redirectionInfo",
5042 FT_STRING, BASE_NONE, NULL, 0,
5043 "BMPString_SIZE_1_128", HFILL }},
5044 { &hf_h450_2_basicCallInfoElements,
5045 { "basicCallInfoElements", "h450.2.basicCallInfoElements",
5046 FT_BYTES, BASE_NONE, NULL, 0,
5047 "H225InformationElement", HFILL }},
5048 { &hf_h450_2_cTUpdateArg_argumentExtension,
5049 { "argumentExtension", "h450.2.argumentExtension",
5050 FT_UINT32, BASE_DEC, VALS(h450_2_T_cTUpdateArg_argumentExtension_vals), 0,
5051 "T_cTUpdateArg_argumentExtension", HFILL }},
5052 { &hf_h450_2_redirectionSubaddress,
5053 { "redirectionSubaddress", "h450.2.redirectionSubaddress",
5054 FT_UINT32, BASE_DEC, VALS(h450_PartySubaddress_vals), 0,
5055 "PartySubaddress", HFILL }},
5056 { &hf_h450_2_subaddressTransferArg_argumentExtension,
5057 { "argumentExtension", "h450.2.argumentExtension",
5058 FT_UINT32, BASE_DEC, VALS(h450_2_T_subaddressTransferArg_argumentExtension_vals), 0,
5059 "T_subaddressTransferArg_argumentExtension", HFILL }},
5060 { &hf_h450_2_endDesignation,
5061 { "endDesignation", "h450.2.endDesignation",
5062 FT_UINT32, BASE_DEC, VALS(h450_2_EndDesignation_vals), 0,
5063 NULL, HFILL }},
5064 { &hf_h450_2_callStatus,
5065 { "callStatus", "h450.2.callStatus",
5066 FT_UINT32, BASE_DEC, VALS(h450_2_CallStatus_vals), 0,
5067 NULL, HFILL }},
5068 { &hf_h450_2_cTCompleteArg_argumentExtension,
5069 { "argumentExtension", "h450.2.argumentExtension",
5070 FT_UINT32, BASE_DEC, VALS(h450_2_T_cTCompleteArg_argumentExtension_vals), 0,
5071 "T_cTCompleteArg_argumentExtension", HFILL }},
5072 { &hf_h450_2_connectedAddress,
5073 { "connectedAddress", "h450.2.connectedAddress_element",
5074 FT_NONE, BASE_NONE, NULL, 0,
5075 "EndpointAddress", HFILL }},
5076 { &hf_h450_2_connectedInfo,
5077 { "connectedInfo", "h450.2.connectedInfo",
5078 FT_STRING, BASE_NONE, NULL, 0,
5079 "BMPString_SIZE_1_128", HFILL }},
5080 { &hf_h450_2_cTActiveArg_argumentExtension,
5081 { "argumentExtension", "h450.2.argumentExtension",
5082 FT_UINT32, BASE_DEC, VALS(h450_2_T_cTActiveArg_argumentExtension_vals), 0,
5083 "T_cTActiveArg_argumentExtension", HFILL }},
5084 { &hf_h450_2_ExtensionSeq_item,
5085 { "Extension", "h450.2.Extension_element",
5086 FT_NONE, BASE_NONE, NULL, 0,
5087 NULL, HFILL }},
5088 { &hf_h450_2_unspecified_extension,
5089 { "extension", "h450.2.extension_element",
5090 FT_NONE, BASE_NONE, NULL, 0,
5091 NULL, HFILL }},
5092 { &hf_h450_2_nonStandard,
5093 { "nonStandard", "h450.2.nonStandard_element",
5094 FT_NONE, BASE_NONE, NULL, 0,
5095 "NonStandardParameter", HFILL }},
5097 /* --- Module Call-Diversion-Operations --- --- --- */
5099 { &hf_h450_3_h450_3_ARG_activateDiversionQ_PDU,
5100 { "ARG-activateDiversionQ", "h450.3.ARG_activateDiversionQ_element",
5101 FT_NONE, BASE_NONE, NULL, 0,
5102 NULL, HFILL }},
5103 { &hf_h450_3_h450_3_RES_activateDiversionQ_PDU,
5104 { "RES-activateDiversionQ", "h450.3.RES_activateDiversionQ",
5105 FT_UINT32, BASE_DEC, VALS(h450_3_RES_activateDiversionQ_vals), 0,
5106 NULL, HFILL }},
5107 { &hf_h450_3_h450_3_ARG_deactivateDiversionQ_PDU,
5108 { "ARG-deactivateDiversionQ", "h450.3.ARG_deactivateDiversionQ_element",
5109 FT_NONE, BASE_NONE, NULL, 0,
5110 NULL, HFILL }},
5111 { &hf_h450_3_h450_3_RES_deactivateDiversionQ_PDU,
5112 { "RES-deactivateDiversionQ", "h450.3.RES_deactivateDiversionQ",
5113 FT_UINT32, BASE_DEC, VALS(h450_3_RES_deactivateDiversionQ_vals), 0,
5114 NULL, HFILL }},
5115 { &hf_h450_3_h450_3_ARG_interrogateDiversionQ_PDU,
5116 { "ARG-interrogateDiversionQ", "h450.3.ARG_interrogateDiversionQ_element",
5117 FT_NONE, BASE_NONE, NULL, 0,
5118 NULL, HFILL }},
5119 { &hf_h450_3_h450_3_IntResultList_PDU,
5120 { "IntResultList", "h450.3.IntResultList",
5121 FT_UINT32, BASE_DEC, NULL, 0,
5122 NULL, HFILL }},
5123 { &hf_h450_3_h450_3_ARG_checkRestriction_PDU,
5124 { "ARG-checkRestriction", "h450.3.ARG_checkRestriction_element",
5125 FT_NONE, BASE_NONE, NULL, 0,
5126 NULL, HFILL }},
5127 { &hf_h450_3_h450_3_RES_checkRestriction_PDU,
5128 { "RES-checkRestriction", "h450.3.RES_checkRestriction",
5129 FT_UINT32, BASE_DEC, VALS(h450_3_RES_checkRestriction_vals), 0,
5130 NULL, HFILL }},
5131 { &hf_h450_3_h450_3_ARG_callRerouting_PDU,
5132 { "ARG-callRerouting", "h450.3.ARG_callRerouting_element",
5133 FT_NONE, BASE_NONE, NULL, 0,
5134 NULL, HFILL }},
5135 { &hf_h450_3_h450_3_RES_callRerouting_PDU,
5136 { "RES-callRerouting", "h450.3.RES_callRerouting",
5137 FT_UINT32, BASE_DEC, VALS(h450_3_RES_callRerouting_vals), 0,
5138 NULL, HFILL }},
5139 { &hf_h450_3_h450_3_ARG_divertingLegInformation1_PDU,
5140 { "ARG-divertingLegInformation1", "h450.3.ARG_divertingLegInformation1_element",
5141 FT_NONE, BASE_NONE, NULL, 0,
5142 NULL, HFILL }},
5143 { &hf_h450_3_h450_3_ARG_divertingLegInformation2_PDU,
5144 { "ARG-divertingLegInformation2", "h450.3.ARG_divertingLegInformation2_element",
5145 FT_NONE, BASE_NONE, NULL, 0,
5146 NULL, HFILL }},
5147 { &hf_h450_3_h450_3_ARG_divertingLegInformation3_PDU,
5148 { "ARG-divertingLegInformation3", "h450.3.ARG_divertingLegInformation3_element",
5149 FT_NONE, BASE_NONE, NULL, 0,
5150 NULL, HFILL }},
5151 { &hf_h450_3_h450_3_ARG_divertingLegInformation4_PDU,
5152 { "ARG-divertingLegInformation4", "h450.3.ARG_divertingLegInformation4_element",
5153 FT_NONE, BASE_NONE, NULL, 0,
5154 NULL, HFILL }},
5155 { &hf_h450_3_h450_3_ARG_cfnrDivertedLegFailed_PDU,
5156 { "ARG-cfnrDivertedLegFailed", "h450.3.ARG_cfnrDivertedLegFailed",
5157 FT_UINT32, BASE_DEC, VALS(h450_3_ARG_cfnrDivertedLegFailed_vals), 0,
5158 NULL, HFILL }},
5159 { &hf_h450_3_h450_3_PAR_unspecified_PDU,
5160 { "PAR-unspecified", "h450.3.PAR_unspecified",
5161 FT_UINT32, BASE_DEC, VALS(h450_3_PAR_unspecified_vals), 0,
5162 NULL, HFILL }},
5163 { &hf_h450_3_procedure,
5164 { "procedure", "h450.3.procedure",
5165 FT_UINT32, BASE_DEC, VALS(h450_3_Procedure_vals), 0,
5166 NULL, HFILL }},
5167 { &hf_h450_3_basicService,
5168 { "basicService", "h450.3.basicService",
5169 FT_UINT32, BASE_DEC, VALS(h450_3_BasicService_vals), 0,
5170 NULL, HFILL }},
5171 { &hf_h450_3_divertedToAddress,
5172 { "divertedToAddress", "h450.3.divertedToAddress_element",
5173 FT_NONE, BASE_NONE, NULL, 0,
5174 "EndpointAddress", HFILL }},
5175 { &hf_h450_3_servedUserNr,
5176 { "servedUserNr", "h450.3.servedUserNr_element",
5177 FT_NONE, BASE_NONE, NULL, 0,
5178 "EndpointAddress", HFILL }},
5179 { &hf_h450_3_activatingUserNr,
5180 { "activatingUserNr", "h450.3.activatingUserNr_element",
5181 FT_NONE, BASE_NONE, NULL, 0,
5182 "EndpointAddress", HFILL }},
5183 { &hf_h450_3_activateDiversionQArg_extension,
5184 { "extension", "h450.3.extension",
5185 FT_UINT32, BASE_DEC, VALS(h450_3_ActivateDiversionQArg_extension_vals), 0,
5186 "ActivateDiversionQArg_extension", HFILL }},
5187 { &hf_h450_3_extensionSeq,
5188 { "extensionSeq", "h450.3.extensionSeq",
5189 FT_UINT32, BASE_DEC, NULL, 0,
5190 NULL, HFILL }},
5191 { &hf_h450_3_nonStandardData,
5192 { "nonStandardData", "h450.3.nonStandardData_element",
5193 FT_NONE, BASE_NONE, NULL, 0,
5194 "NonStandardParameter", HFILL }},
5195 { &hf_h450_3_deactivatingUserNr,
5196 { "deactivatingUserNr", "h450.3.deactivatingUserNr_element",
5197 FT_NONE, BASE_NONE, NULL, 0,
5198 "EndpointAddress", HFILL }},
5199 { &hf_h450_3_deactivateDiversionQArg_extension,
5200 { "extension", "h450.3.extension",
5201 FT_UINT32, BASE_DEC, VALS(h450_3_DeactivateDiversionQArg_extension_vals), 0,
5202 "DeactivateDiversionQArg_extension", HFILL }},
5203 { &hf_h450_3_interrogatingUserNr,
5204 { "interrogatingUserNr", "h450.3.interrogatingUserNr_element",
5205 FT_NONE, BASE_NONE, NULL, 0,
5206 "EndpointAddress", HFILL }},
5207 { &hf_h450_3_interrogateDiversionQ_extension,
5208 { "extension", "h450.3.extension",
5209 FT_UINT32, BASE_DEC, VALS(h450_3_InterrogateDiversionQ_extension_vals), 0,
5210 "InterrogateDiversionQ_extension", HFILL }},
5211 { &hf_h450_3_divertedToNr,
5212 { "divertedToNr", "h450.3.divertedToNr_element",
5213 FT_NONE, BASE_NONE, NULL, 0,
5214 "EndpointAddress", HFILL }},
5215 { &hf_h450_3_checkRestrictionArg_extension,
5216 { "extension", "h450.3.extension",
5217 FT_UINT32, BASE_DEC, VALS(h450_3_CheckRestrictionArg_extension_vals), 0,
5218 "CheckRestrictionArg_extension", HFILL }},
5219 { &hf_h450_3_reroutingReason,
5220 { "reroutingReason", "h450.3.reroutingReason",
5221 FT_UINT32, BASE_DEC, VALS(h450_3_DiversionReason_vals), 0,
5222 "DiversionReason", HFILL }},
5223 { &hf_h450_3_originalReroutingReason,
5224 { "originalReroutingReason", "h450.3.originalReroutingReason",
5225 FT_UINT32, BASE_DEC, VALS(h450_3_DiversionReason_vals), 0,
5226 "DiversionReason", HFILL }},
5227 { &hf_h450_3_calledAddress,
5228 { "calledAddress", "h450.3.calledAddress_element",
5229 FT_NONE, BASE_NONE, NULL, 0,
5230 "EndpointAddress", HFILL }},
5231 { &hf_h450_3_diversionCounter,
5232 { "diversionCounter", "h450.3.diversionCounter",
5233 FT_UINT32, BASE_DEC, NULL, 0,
5234 "INTEGER_1_15", HFILL }},
5235 { &hf_h450_3_h225InfoElement,
5236 { "h225InfoElement", "h450.3.h225InfoElement",
5237 FT_BYTES, BASE_NONE, NULL, 0,
5238 "H225InformationElement", HFILL }},
5239 { &hf_h450_3_lastReroutingNr,
5240 { "lastReroutingNr", "h450.3.lastReroutingNr_element",
5241 FT_NONE, BASE_NONE, NULL, 0,
5242 "EndpointAddress", HFILL }},
5243 { &hf_h450_3_subscriptionOption,
5244 { "subscriptionOption", "h450.3.subscriptionOption",
5245 FT_UINT32, BASE_DEC, VALS(h450_3_SubscriptionOption_vals), 0,
5246 NULL, HFILL }},
5247 { &hf_h450_3_callingPartySubaddress,
5248 { "callingPartySubaddress", "h450.3.callingPartySubaddress",
5249 FT_UINT32, BASE_DEC, VALS(h450_PartySubaddress_vals), 0,
5250 "PartySubaddress", HFILL }},
5251 { &hf_h450_3_callingNumber,
5252 { "callingNumber", "h450.3.callingNumber_element",
5253 FT_NONE, BASE_NONE, NULL, 0,
5254 "EndpointAddress", HFILL }},
5255 { &hf_h450_3_callingInfo,
5256 { "callingInfo", "h450.3.callingInfo",
5257 FT_STRING, BASE_NONE, NULL, 0,
5258 "BMPString_SIZE_1_128", HFILL }},
5259 { &hf_h450_3_originalCalledNr,
5260 { "originalCalledNr", "h450.3.originalCalledNr_element",
5261 FT_NONE, BASE_NONE, NULL, 0,
5262 "EndpointAddress", HFILL }},
5263 { &hf_h450_3_redirectingInfo,
5264 { "redirectingInfo", "h450.3.redirectingInfo",
5265 FT_STRING, BASE_NONE, NULL, 0,
5266 "BMPString_SIZE_1_128", HFILL }},
5267 { &hf_h450_3_originalCalledInfo,
5268 { "originalCalledInfo", "h450.3.originalCalledInfo",
5269 FT_STRING, BASE_NONE, NULL, 0,
5270 "BMPString_SIZE_1_128", HFILL }},
5271 { &hf_h450_3_callReroutingArg_extension,
5272 { "extension", "h450.3.extension",
5273 FT_UINT32, BASE_DEC, VALS(h450_3_CallReroutingArg_extension_vals), 0,
5274 "CallReroutingArg_extension", HFILL }},
5275 { &hf_h450_3_diversionReason,
5276 { "diversionReason", "h450.3.diversionReason",
5277 FT_UINT32, BASE_DEC, VALS(h450_3_DiversionReason_vals), 0,
5278 NULL, HFILL }},
5279 { &hf_h450_3_nominatedNr,
5280 { "nominatedNr", "h450.3.nominatedNr_element",
5281 FT_NONE, BASE_NONE, NULL, 0,
5282 "EndpointAddress", HFILL }},
5283 { &hf_h450_3_nominatedInfo,
5284 { "nominatedInfo", "h450.3.nominatedInfo",
5285 FT_STRING, BASE_NONE, NULL, 0,
5286 "BMPString_SIZE_1_128", HFILL }},
5287 { &hf_h450_3_redirectingNr,
5288 { "redirectingNr", "h450.3.redirectingNr_element",
5289 FT_NONE, BASE_NONE, NULL, 0,
5290 "EndpointAddress", HFILL }},
5291 { &hf_h450_3_divertingLegInformation1Arg_extension,
5292 { "extension", "h450.3.extension",
5293 FT_UINT32, BASE_DEC, VALS(h450_3_DivertingLegInformation1Arg_extension_vals), 0,
5294 "DivertingLegInformation1Arg_extension", HFILL }},
5295 { &hf_h450_3_originalDiversionReason,
5296 { "originalDiversionReason", "h450.3.originalDiversionReason",
5297 FT_UINT32, BASE_DEC, VALS(h450_3_DiversionReason_vals), 0,
5298 "DiversionReason", HFILL }},
5299 { &hf_h450_3_divertingNr,
5300 { "divertingNr", "h450.3.divertingNr_element",
5301 FT_NONE, BASE_NONE, NULL, 0,
5302 "EndpointAddress", HFILL }},
5303 { &hf_h450_3_divertingLegInformation2Arg_extension,
5304 { "extension", "h450.3.extension",
5305 FT_UINT32, BASE_DEC, VALS(h450_3_DivertingLegInformation2Arg_extension_vals), 0,
5306 "DivertingLegInformation2Arg_extension", HFILL }},
5307 { &hf_h450_3_presentationAllowedIndicator,
5308 { "presentationAllowedIndicator", "h450.3.presentationAllowedIndicator",
5309 FT_BOOLEAN, BASE_NONE, NULL, 0,
5310 NULL, HFILL }},
5311 { &hf_h450_3_redirectionNr,
5312 { "redirectionNr", "h450.3.redirectionNr_element",
5313 FT_NONE, BASE_NONE, NULL, 0,
5314 "EndpointAddress", HFILL }},
5315 { &hf_h450_3_redirectionInfo,
5316 { "redirectionInfo", "h450.3.redirectionInfo",
5317 FT_STRING, BASE_NONE, NULL, 0,
5318 "BMPString_SIZE_1_128", HFILL }},
5319 { &hf_h450_3_divertingLegInformation3Arg_extension,
5320 { "extension", "h450.3.extension",
5321 FT_UINT32, BASE_DEC, VALS(h450_3_DivertingLegInformation3Arg_extension_vals), 0,
5322 "DivertingLegInformation3Arg_extension", HFILL }},
5323 { &hf_h450_3_callingNr,
5324 { "callingNr", "h450.3.callingNr_element",
5325 FT_NONE, BASE_NONE, NULL, 0,
5326 "EndpointAddress", HFILL }},
5327 { &hf_h450_3_divertingLegInformation4Arg_extension,
5328 { "extension", "h450.3.extension",
5329 FT_UINT32, BASE_DEC, VALS(h450_3_DivertingLegInformation4Arg_extension_vals), 0,
5330 "DivertingLegInformation4Arg_extension", HFILL }},
5331 { &hf_h450_3_IntResultList_item,
5332 { "IntResult", "h450.3.IntResult_element",
5333 FT_NONE, BASE_NONE, NULL, 0,
5334 NULL, HFILL }},
5335 { &hf_h450_3_remoteEnabled,
5336 { "remoteEnabled", "h450.3.remoteEnabled",
5337 FT_BOOLEAN, BASE_NONE, NULL, 0,
5338 "BOOLEAN", HFILL }},
5339 { &hf_h450_3_intResult_extension,
5340 { "extension", "h450.3.extension",
5341 FT_UINT32, BASE_DEC, VALS(h450_3_IntResult_extension_vals), 0,
5342 "IntResult_extension", HFILL }},
5343 { &hf_h450_3_unspecified_extension,
5344 { "extension", "h450.3.extension_element",
5345 FT_NONE, BASE_NONE, NULL, 0,
5346 NULL, HFILL }},
5347 { &hf_h450_3_nonStandard,
5348 { "nonStandard", "h450.3.nonStandard_element",
5349 FT_NONE, BASE_NONE, NULL, 0,
5350 "NonStandardParameter", HFILL }},
5351 { &hf_h450_3_ExtensionSeq_item,
5352 { "Extension", "h450.3.Extension_element",
5353 FT_NONE, BASE_NONE, NULL, 0,
5354 NULL, HFILL }},
5356 /* --- Module Call-Hold-Operations --- --- --- */
5358 { &hf_h450_4_h450_4_HoldNotificArg_PDU,
5359 { "HoldNotificArg", "h450.4.HoldNotificArg_element",
5360 FT_NONE, BASE_NONE, NULL, 0,
5361 NULL, HFILL }},
5362 { &hf_h450_4_h450_4_RetrieveNotificArg_PDU,
5363 { "RetrieveNotificArg", "h450.4.RetrieveNotificArg_element",
5364 FT_NONE, BASE_NONE, NULL, 0,
5365 NULL, HFILL }},
5366 { &hf_h450_4_h450_4_RemoteHoldArg_PDU,
5367 { "RemoteHoldArg", "h450.4.RemoteHoldArg_element",
5368 FT_NONE, BASE_NONE, NULL, 0,
5369 NULL, HFILL }},
5370 { &hf_h450_4_h450_4_RemoteHoldRes_PDU,
5371 { "RemoteHoldRes", "h450.4.RemoteHoldRes_element",
5372 FT_NONE, BASE_NONE, NULL, 0,
5373 NULL, HFILL }},
5374 { &hf_h450_4_h450_4_RemoteRetrieveArg_PDU,
5375 { "RemoteRetrieveArg", "h450.4.RemoteRetrieveArg_element",
5376 FT_NONE, BASE_NONE, NULL, 0,
5377 NULL, HFILL }},
5378 { &hf_h450_4_h450_4_RemoteRetrieveRes_PDU,
5379 { "RemoteRetrieveRes", "h450.4.RemoteRetrieveRes_element",
5380 FT_NONE, BASE_NONE, NULL, 0,
5381 NULL, HFILL }},
5382 { &hf_h450_4_h450_4_PAR_undefined_PDU,
5383 { "PAR-undefined", "h450.4.PAR_undefined",
5384 FT_UINT32, BASE_DEC, NULL, 0,
5385 NULL, HFILL }},
5386 { &hf_h450_4_holdNotificArg_extensionArg,
5387 { "extensionArg", "h450.4.extensionArg",
5388 FT_UINT32, BASE_DEC, NULL, 0,
5389 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5390 { &hf_h450_4_holdNotificArg_extensionArg_item,
5391 { "MixedExtension", "h450.4.MixedExtension",
5392 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5393 NULL, HFILL }},
5394 { &hf_h450_4_retrieveNotificArg_extensionArg,
5395 { "extensionArg", "h450.4.extensionArg",
5396 FT_UINT32, BASE_DEC, NULL, 0,
5397 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5398 { &hf_h450_4_retrieveNotificArg_extensionArg_item,
5399 { "MixedExtension", "h450.4.MixedExtension",
5400 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5401 NULL, HFILL }},
5402 { &hf_h450_4_remoteHoldArg_extensionArg,
5403 { "extensionArg", "h450.4.extensionArg",
5404 FT_UINT32, BASE_DEC, NULL, 0,
5405 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5406 { &hf_h450_4_remoteHoldArg_extensionArg_item,
5407 { "MixedExtension", "h450.4.MixedExtension",
5408 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5409 NULL, HFILL }},
5410 { &hf_h450_4_extensionRes,
5411 { "extensionRes", "h450.4.extensionRes",
5412 FT_UINT32, BASE_DEC, NULL, 0,
5413 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5414 { &hf_h450_4_extensionRes_item,
5415 { "MixedExtension", "h450.4.MixedExtension",
5416 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5417 NULL, HFILL }},
5418 { &hf_h450_4_remoteRetrieveArg_extensionArg,
5419 { "extensionArg", "h450.4.extensionArg",
5420 FT_UINT32, BASE_DEC, NULL, 0,
5421 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5422 { &hf_h450_4_remoteRetrieveArg_extensionArg_item,
5423 { "MixedExtension", "h450.4.MixedExtension",
5424 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5425 NULL, HFILL }},
5426 { &hf_h450_4_mixedExtension_extension,
5427 { "extension", "h450.4.extension_element",
5428 FT_NONE, BASE_NONE, NULL, 0,
5429 NULL, HFILL }},
5430 { &hf_h450_4_nonStandardData,
5431 { "nonStandardData", "h450.4.nonStandardData_element",
5432 FT_NONE, BASE_NONE, NULL, 0,
5433 "NonStandardParameter", HFILL }},
5434 { &hf_h450_4_PAR_undefined_item,
5435 { "MixedExtension", "h450.4.MixedExtension",
5436 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5437 NULL, HFILL }},
5439 /* --- Module Call-Park-Pickup-Operations --- --- --- */
5441 { &hf_h450_5_h450_5_CpRequestArg_PDU,
5442 { "CpRequestArg", "h450.5.CpRequestArg_element",
5443 FT_NONE, BASE_NONE, NULL, 0,
5444 NULL, HFILL }},
5445 { &hf_h450_5_h450_5_CpRequestRes_PDU,
5446 { "CpRequestRes", "h450.5.CpRequestRes_element",
5447 FT_NONE, BASE_NONE, NULL, 0,
5448 NULL, HFILL }},
5449 { &hf_h450_5_h450_5_CpSetupArg_PDU,
5450 { "CpSetupArg", "h450.5.CpSetupArg_element",
5451 FT_NONE, BASE_NONE, NULL, 0,
5452 NULL, HFILL }},
5453 { &hf_h450_5_h450_5_CpSetupRes_PDU,
5454 { "CpSetupRes", "h450.5.CpSetupRes_element",
5455 FT_NONE, BASE_NONE, NULL, 0,
5456 NULL, HFILL }},
5457 { &hf_h450_5_h450_5_GroupIndicationOnArg_PDU,
5458 { "GroupIndicationOnArg", "h450.5.GroupIndicationOnArg_element",
5459 FT_NONE, BASE_NONE, NULL, 0,
5460 NULL, HFILL }},
5461 { &hf_h450_5_h450_5_GroupIndicationOnRes_PDU,
5462 { "GroupIndicationOnRes", "h450.5.GroupIndicationOnRes_element",
5463 FT_NONE, BASE_NONE, NULL, 0,
5464 NULL, HFILL }},
5465 { &hf_h450_5_h450_5_GroupIndicationOffArg_PDU,
5466 { "GroupIndicationOffArg", "h450.5.GroupIndicationOffArg_element",
5467 FT_NONE, BASE_NONE, NULL, 0,
5468 NULL, HFILL }},
5469 { &hf_h450_5_h450_5_GroupIndicationOffRes_PDU,
5470 { "GroupIndicationOffRes", "h450.5.GroupIndicationOffRes_element",
5471 FT_NONE, BASE_NONE, NULL, 0,
5472 NULL, HFILL }},
5473 { &hf_h450_5_h450_5_PickrequArg_PDU,
5474 { "PickrequArg", "h450.5.PickrequArg_element",
5475 FT_NONE, BASE_NONE, NULL, 0,
5476 NULL, HFILL }},
5477 { &hf_h450_5_h450_5_PickrequRes_PDU,
5478 { "PickrequRes", "h450.5.PickrequRes_element",
5479 FT_NONE, BASE_NONE, NULL, 0,
5480 NULL, HFILL }},
5481 { &hf_h450_5_h450_5_PickupArg_PDU,
5482 { "PickupArg", "h450.5.PickupArg_element",
5483 FT_NONE, BASE_NONE, NULL, 0,
5484 NULL, HFILL }},
5485 { &hf_h450_5_h450_5_PickupRes_PDU,
5486 { "PickupRes", "h450.5.PickupRes_element",
5487 FT_NONE, BASE_NONE, NULL, 0,
5488 NULL, HFILL }},
5489 { &hf_h450_5_h450_5_PickExeArg_PDU,
5490 { "PickExeArg", "h450.5.PickExeArg_element",
5491 FT_NONE, BASE_NONE, NULL, 0,
5492 NULL, HFILL }},
5493 { &hf_h450_5_h450_5_PickExeRes_PDU,
5494 { "PickExeRes", "h450.5.PickExeRes_element",
5495 FT_NONE, BASE_NONE, NULL, 0,
5496 NULL, HFILL }},
5497 { &hf_h450_5_h450_5_CpNotifyArg_PDU,
5498 { "CpNotifyArg", "h450.5.CpNotifyArg_element",
5499 FT_NONE, BASE_NONE, NULL, 0,
5500 NULL, HFILL }},
5501 { &hf_h450_5_h450_5_CpickupNotifyArg_PDU,
5502 { "CpickupNotifyArg", "h450.5.CpickupNotifyArg_element",
5503 FT_NONE, BASE_NONE, NULL, 0,
5504 NULL, HFILL }},
5505 { &hf_h450_5_h450_5_PAR_undefined_PDU,
5506 { "PAR-undefined", "h450.5.PAR_undefined",
5507 FT_UINT32, BASE_DEC, NULL, 0,
5508 NULL, HFILL }},
5509 { &hf_h450_5_parkingNumber,
5510 { "parkingNumber", "h450.5.parkingNumber_element",
5511 FT_NONE, BASE_NONE, NULL, 0,
5512 "EndpointAddress", HFILL }},
5513 { &hf_h450_5_parkedNumber,
5514 { "parkedNumber", "h450.5.parkedNumber_element",
5515 FT_NONE, BASE_NONE, NULL, 0,
5516 "EndpointAddress", HFILL }},
5517 { &hf_h450_5_parkedToNumber,
5518 { "parkedToNumber", "h450.5.parkedToNumber_element",
5519 FT_NONE, BASE_NONE, NULL, 0,
5520 "EndpointAddress", HFILL }},
5521 { &hf_h450_5_parkedToPosition,
5522 { "parkedToPosition", "h450.5.parkedToPosition",
5523 FT_UINT32, BASE_DEC, NULL, 0,
5524 NULL, HFILL }},
5525 { &hf_h450_5_cpRequestArg_extensionArg,
5526 { "extensionArg", "h450.5.extensionArg",
5527 FT_UINT32, BASE_DEC, NULL, 0,
5528 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5529 { &hf_h450_5_cpRequestArg_extensionArg_item,
5530 { "MixedExtension", "h450.5.MixedExtension",
5531 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5532 NULL, HFILL }},
5533 { &hf_h450_5_parkCondition,
5534 { "parkCondition", "h450.5.parkCondition",
5535 FT_UINT32, BASE_DEC, VALS(h450_5_ParkCondition_vals), 0,
5536 NULL, HFILL }},
5537 { &hf_h450_5_extensionRes,
5538 { "extensionRes", "h450.5.extensionRes",
5539 FT_UINT32, BASE_DEC, NULL, 0,
5540 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5541 { &hf_h450_5_extensionRes_item,
5542 { "MixedExtension", "h450.5.MixedExtension",
5543 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5544 NULL, HFILL }},
5545 { &hf_h450_5_cpSetupArg_extensionArg,
5546 { "extensionArg", "h450.5.extensionArg",
5547 FT_UINT32, BASE_DEC, NULL, 0,
5548 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5549 { &hf_h450_5_cpSetupArg_extensionArg_item,
5550 { "MixedExtension", "h450.5.MixedExtension",
5551 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5552 NULL, HFILL }},
5553 { &hf_h450_5_callPickupId,
5554 { "callPickupId", "h450.5.callPickupId_element",
5555 FT_NONE, BASE_NONE, NULL, 0,
5556 "CallIdentifier", HFILL }},
5557 { &hf_h450_5_groupMemberUserNr,
5558 { "groupMemberUserNr", "h450.5.groupMemberUserNr_element",
5559 FT_NONE, BASE_NONE, NULL, 0,
5560 "EndpointAddress", HFILL }},
5561 { &hf_h450_5_retrieveCallType,
5562 { "retrieveCallType", "h450.5.retrieveCallType",
5563 FT_UINT32, BASE_DEC, VALS(h450_5_CallType_vals), 0,
5564 "CallType", HFILL }},
5565 { &hf_h450_5_partyToRetrieve,
5566 { "partyToRetrieve", "h450.5.partyToRetrieve_element",
5567 FT_NONE, BASE_NONE, NULL, 0,
5568 "EndpointAddress", HFILL }},
5569 { &hf_h450_5_retrieveAddress,
5570 { "retrieveAddress", "h450.5.retrieveAddress_element",
5571 FT_NONE, BASE_NONE, NULL, 0,
5572 "EndpointAddress", HFILL }},
5573 { &hf_h450_5_parkPosition,
5574 { "parkPosition", "h450.5.parkPosition",
5575 FT_UINT32, BASE_DEC, NULL, 0,
5576 "ParkedToPosition", HFILL }},
5577 { &hf_h450_5_groupIndicationOnArg_extensionArg,
5578 { "extensionArg", "h450.5.extensionArg",
5579 FT_UINT32, BASE_DEC, NULL, 0,
5580 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5581 { &hf_h450_5_groupIndicationOnArg_extensionArg_item,
5582 { "MixedExtension", "h450.5.MixedExtension",
5583 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5584 NULL, HFILL }},
5585 { &hf_h450_5_groupIndicationOffArg_extensionArg,
5586 { "extensionArg", "h450.5.extensionArg",
5587 FT_UINT32, BASE_DEC, NULL, 0,
5588 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5589 { &hf_h450_5_groupIndicationOffArg_extensionArg_item,
5590 { "MixedExtension", "h450.5.MixedExtension",
5591 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5592 NULL, HFILL }},
5593 { &hf_h450_5_picking_upNumber,
5594 { "picking-upNumber", "h450.5.picking_upNumber_element",
5595 FT_NONE, BASE_NONE, NULL, 0,
5596 "EndpointAddress", HFILL }},
5597 { &hf_h450_5_pickrequArg_extensionArg,
5598 { "extensionArg", "h450.5.extensionArg",
5599 FT_UINT32, BASE_DEC, NULL, 0,
5600 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5601 { &hf_h450_5_pickrequArg_extensionArg_item,
5602 { "MixedExtension", "h450.5.MixedExtension",
5603 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5604 NULL, HFILL }},
5605 { &hf_h450_5_pickupArg_extensionArg,
5606 { "extensionArg", "h450.5.extensionArg",
5607 FT_UINT32, BASE_DEC, NULL, 0,
5608 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5609 { &hf_h450_5_pickupArg_extensionArg_item,
5610 { "MixedExtension", "h450.5.MixedExtension",
5611 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5612 NULL, HFILL }},
5613 { &hf_h450_5_pickExeArg_extensionArg,
5614 { "extensionArg", "h450.5.extensionArg",
5615 FT_UINT32, BASE_DEC, NULL, 0,
5616 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5617 { &hf_h450_5_pickExeArg_extensionArg_item,
5618 { "MixedExtension", "h450.5.MixedExtension",
5619 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5620 NULL, HFILL }},
5621 { &hf_h450_5_cpNotifyArg_extensionArg,
5622 { "extensionArg", "h450.5.extensionArg",
5623 FT_UINT32, BASE_DEC, NULL, 0,
5624 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5625 { &hf_h450_5_cpNotifyArg_extensionArg_item,
5626 { "MixedExtension", "h450.5.MixedExtension",
5627 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5628 NULL, HFILL }},
5629 { &hf_h450_5_cpickupNotifyArg_extensionArg,
5630 { "extensionArg", "h450.5.extensionArg",
5631 FT_UINT32, BASE_DEC, NULL, 0,
5632 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5633 { &hf_h450_5_cpickupNotifyArg_extensionArg_item,
5634 { "MixedExtension", "h450.5.MixedExtension",
5635 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5636 NULL, HFILL }},
5637 { &hf_h450_5_PAR_undefined_item,
5638 { "MixedExtension", "h450.5.MixedExtension",
5639 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5640 NULL, HFILL }},
5642 /* --- Module Call-Waiting-Operations --- --- --- */
5644 { &hf_h450_6_h450_6_CallWaitingArg_PDU,
5645 { "CallWaitingArg", "h450.6.CallWaitingArg_element",
5646 FT_NONE, BASE_NONE, NULL, 0,
5647 NULL, HFILL }},
5648 { &hf_h450_6_nbOfAddWaitingCalls,
5649 { "nbOfAddWaitingCalls", "h450.6.nbOfAddWaitingCalls",
5650 FT_UINT32, BASE_DEC, NULL, 0,
5651 "INTEGER_0_255", HFILL }},
5652 { &hf_h450_6_callWaitingArg_extensionArg,
5653 { "extensionArg", "h450.6.extensionArg",
5654 FT_UINT32, BASE_DEC, NULL, 0,
5655 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5656 { &hf_h450_6_callWaitingArg_extensionArg_item,
5657 { "MixedExtension", "h450.6.MixedExtension",
5658 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5659 NULL, HFILL }},
5661 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
5663 { &hf_h450_7_h450_7_MWIActivateArg_PDU,
5664 { "MWIActivateArg", "h450.7.MWIActivateArg_element",
5665 FT_NONE, BASE_NONE, NULL, 0,
5666 NULL, HFILL }},
5667 { &hf_h450_7_h450_7_DummyRes_PDU,
5668 { "DummyRes", "h450.7.DummyRes",
5669 FT_UINT32, BASE_DEC, NULL, 0,
5670 NULL, HFILL }},
5671 { &hf_h450_7_h450_7_MWIDeactivateArg_PDU,
5672 { "MWIDeactivateArg", "h450.7.MWIDeactivateArg_element",
5673 FT_NONE, BASE_NONE, NULL, 0,
5674 NULL, HFILL }},
5675 { &hf_h450_7_h450_7_MWIInterrogateArg_PDU,
5676 { "MWIInterrogateArg", "h450.7.MWIInterrogateArg_element",
5677 FT_NONE, BASE_NONE, NULL, 0,
5678 NULL, HFILL }},
5679 { &hf_h450_7_h450_7_MWIInterrogateRes_PDU,
5680 { "MWIInterrogateRes", "h450.7.MWIInterrogateRes",
5681 FT_UINT32, BASE_DEC, NULL, 0,
5682 NULL, HFILL }},
5683 { &hf_h450_7_h450_7_PAR_undefined_PDU,
5684 { "PAR-undefined", "h450.7.PAR_undefined",
5685 FT_UINT32, BASE_DEC, NULL, 0,
5686 NULL, HFILL }},
5687 { &hf_h450_7_servedUserNr,
5688 { "servedUserNr", "h450.7.servedUserNr_element",
5689 FT_NONE, BASE_NONE, NULL, 0,
5690 "EndpointAddress", HFILL }},
5691 { &hf_h450_7_basicService,
5692 { "basicService", "h450.7.basicService",
5693 FT_UINT32, BASE_DEC, VALS(h450_7_BasicService_vals), 0,
5694 NULL, HFILL }},
5695 { &hf_h450_7_msgCentreId,
5696 { "msgCentreId", "h450.7.msgCentreId",
5697 FT_UINT32, BASE_DEC, VALS(h450_7_MsgCentreId_vals), 0,
5698 NULL, HFILL }},
5699 { &hf_h450_7_nbOfMessages,
5700 { "nbOfMessages", "h450.7.nbOfMessages",
5701 FT_UINT32, BASE_DEC, NULL, 0,
5702 NULL, HFILL }},
5703 { &hf_h450_7_originatingNr,
5704 { "originatingNr", "h450.7.originatingNr_element",
5705 FT_NONE, BASE_NONE, NULL, 0,
5706 "EndpointAddress", HFILL }},
5707 { &hf_h450_7_timestamp,
5708 { "timestamp", "h450.7.timestamp",
5709 FT_STRING, BASE_NONE, NULL, 0,
5710 NULL, HFILL }},
5711 { &hf_h450_7_priority,
5712 { "priority", "h450.7.priority",
5713 FT_UINT32, BASE_DEC, NULL, 0,
5714 "INTEGER_0_9", HFILL }},
5715 { &hf_h450_7_mWIActivateArg_extensionArg,
5716 { "extensionArg", "h450.7.extensionArg",
5717 FT_UINT32, BASE_DEC, NULL, 0,
5718 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5719 { &hf_h450_7_mWIActivateArg_extensionArg_item,
5720 { "MixedExtension", "h450.7.MixedExtension",
5721 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5722 NULL, HFILL }},
5723 { &hf_h450_7_DummyRes_item,
5724 { "MixedExtension", "h450.7.MixedExtension",
5725 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5726 NULL, HFILL }},
5727 { &hf_h450_7_callbackReq,
5728 { "callbackReq", "h450.7.callbackReq",
5729 FT_BOOLEAN, BASE_NONE, NULL, 0,
5730 "BOOLEAN", HFILL }},
5731 { &hf_h450_7_mWIDeactivateArg_extensionArg,
5732 { "extensionArg", "h450.7.extensionArg",
5733 FT_UINT32, BASE_DEC, NULL, 0,
5734 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5735 { &hf_h450_7_mWIDeactivateArg_extensionArg_item,
5736 { "MixedExtension", "h450.7.MixedExtension",
5737 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5738 NULL, HFILL }},
5739 { &hf_h450_7_mWIInterrogateArg_extensionArg,
5740 { "extensionArg", "h450.7.extensionArg",
5741 FT_UINT32, BASE_DEC, NULL, 0,
5742 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5743 { &hf_h450_7_mWIInterrogateArg_extensionArg_item,
5744 { "MixedExtension", "h450.7.MixedExtension",
5745 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5746 NULL, HFILL }},
5747 { &hf_h450_7_MWIInterrogateRes_item,
5748 { "MWIInterrogateResElt", "h450.7.MWIInterrogateResElt_element",
5749 FT_NONE, BASE_NONE, NULL, 0,
5750 NULL, HFILL }},
5751 { &hf_h450_7_mWIInterrogateResElt_extensionArg,
5752 { "extensionArg", "h450.7.extensionArg",
5753 FT_UINT32, BASE_DEC, NULL, 0,
5754 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5755 { &hf_h450_7_mWIInterrogateResElt_extensionArg_item,
5756 { "MixedExtension", "h450.7.MixedExtension",
5757 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5758 NULL, HFILL }},
5759 { &hf_h450_7_integer,
5760 { "integer", "h450.7.integer",
5761 FT_UINT32, BASE_DEC, NULL, 0,
5762 "INTEGER_0_65535", HFILL }},
5763 { &hf_h450_7_partyNumber,
5764 { "partyNumber", "h450.7.partyNumber_element",
5765 FT_NONE, BASE_NONE, NULL, 0,
5766 "EndpointAddress", HFILL }},
5767 { &hf_h450_7_numericString,
5768 { "numericString", "h450.7.numericString",
5769 FT_STRING, BASE_NONE, NULL, 0,
5770 "NumericString_SIZE_1_10", HFILL }},
5771 { &hf_h450_7_PAR_undefined_item,
5772 { "MixedExtension", "h450.7.MixedExtension",
5773 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5774 NULL, HFILL }},
5776 /* --- Module Name-Operations --- --- --- */
5778 { &hf_h450_8_h450_8_ARG_callingName_PDU,
5779 { "ARG-callingName", "h450.8.ARG_callingName_element",
5780 FT_NONE, BASE_NONE, NULL, 0,
5781 NULL, HFILL }},
5782 { &hf_h450_8_h450_8_ARG_alertingName_PDU,
5783 { "ARG-alertingName", "h450.8.ARG_alertingName_element",
5784 FT_NONE, BASE_NONE, NULL, 0,
5785 NULL, HFILL }},
5786 { &hf_h450_8_h450_8_ARG_connectedName_PDU,
5787 { "ARG-connectedName", "h450.8.ARG_connectedName_element",
5788 FT_NONE, BASE_NONE, NULL, 0,
5789 NULL, HFILL }},
5790 { &hf_h450_8_h450_8_ARG_busyName_PDU,
5791 { "ARG-busyName", "h450.8.ARG_busyName_element",
5792 FT_NONE, BASE_NONE, NULL, 0,
5793 NULL, HFILL }},
5794 { &hf_h450_8_name,
5795 { "name", "h450.8.name",
5796 FT_UINT32, BASE_DEC, VALS(h450_8_Name_vals), 0,
5797 NULL, HFILL }},
5798 { &hf_h450_8_extensionArg,
5799 { "extensionArg", "h450.8.extensionArg",
5800 FT_UINT32, BASE_DEC, NULL, 0,
5801 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5802 { &hf_h450_8_extensionArg_item,
5803 { "MixedExtension", "h450.8.MixedExtension",
5804 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5805 NULL, HFILL }},
5806 { &hf_h450_8_namePresentationAllowed,
5807 { "namePresentationAllowed", "h450.8.namePresentationAllowed",
5808 FT_UINT32, BASE_DEC, VALS(h450_8_NamePresentationAllowed_vals), 0,
5809 NULL, HFILL }},
5810 { &hf_h450_8_namePresentationRestricted,
5811 { "namePresentationRestricted", "h450.8.namePresentationRestricted",
5812 FT_UINT32, BASE_DEC, VALS(h450_8_NamePresentationRestricted_vals), 0,
5813 NULL, HFILL }},
5814 { &hf_h450_8_nameNotAvailable,
5815 { "nameNotAvailable", "h450.8.nameNotAvailable_element",
5816 FT_NONE, BASE_NONE, NULL, 0,
5817 NULL, HFILL }},
5818 { &hf_h450_8_simpleName,
5819 { "simpleName", "h450.8.simpleName",
5820 FT_BYTES, BASE_NONE, NULL, 0,
5821 NULL, HFILL }},
5822 { &hf_h450_8_extendedName,
5823 { "extendedName", "h450.8.extendedName",
5824 FT_STRING, BASE_NONE, NULL, 0,
5825 NULL, HFILL }},
5826 { &hf_h450_8_restrictedNull,
5827 { "restrictedNull", "h450.8.restrictedNull_element",
5828 FT_NONE, BASE_NONE, NULL, 0,
5829 NULL, HFILL }},
5831 /* --- Module Call-Completion-Operations --- --- --- */
5833 { &hf_h450_9_h450_9_CcRequestArg_PDU,
5834 { "CcRequestArg", "h450.9.CcRequestArg_element",
5835 FT_NONE, BASE_NONE, NULL, 0,
5836 NULL, HFILL }},
5837 { &hf_h450_9_h450_9_CcRequestRes_PDU,
5838 { "CcRequestRes", "h450.9.CcRequestRes_element",
5839 FT_NONE, BASE_NONE, NULL, 0,
5840 NULL, HFILL }},
5841 { &hf_h450_9_h450_9_CcArg_PDU,
5842 { "CcArg", "h450.9.CcArg",
5843 FT_UINT32, BASE_DEC, VALS(h450_9_CcArg_vals), 0,
5844 NULL, HFILL }},
5845 { &hf_h450_9_h450_9_CcShortArg_PDU,
5846 { "CcShortArg", "h450.9.CcShortArg_element",
5847 FT_NONE, BASE_NONE, NULL, 0,
5848 NULL, HFILL }},
5849 { &hf_h450_9_numberA,
5850 { "numberA", "h450.9.numberA_element",
5851 FT_NONE, BASE_NONE, NULL, 0,
5852 "EndpointAddress", HFILL }},
5853 { &hf_h450_9_numberB,
5854 { "numberB", "h450.9.numberB_element",
5855 FT_NONE, BASE_NONE, NULL, 0,
5856 "EndpointAddress", HFILL }},
5857 { &hf_h450_9_ccIdentifier,
5858 { "ccIdentifier", "h450.9.ccIdentifier_element",
5859 FT_NONE, BASE_NONE, NULL, 0,
5860 "CallIdentifier", HFILL }},
5861 { &hf_h450_9_service,
5862 { "service", "h450.9.service",
5863 FT_UINT32, BASE_DEC, VALS(h450_7_BasicService_vals), 0,
5864 "BasicService", HFILL }},
5865 { &hf_h450_9_can_retain_service,
5866 { "can-retain-service", "h450.9.can_retain_service",
5867 FT_BOOLEAN, BASE_NONE, NULL, 0,
5868 "BOOLEAN", HFILL }},
5869 { &hf_h450_9_retain_sig_connection,
5870 { "retain-sig-connection", "h450.9.retain_sig_connection",
5871 FT_BOOLEAN, BASE_NONE, NULL, 0,
5872 "BOOLEAN", HFILL }},
5873 { &hf_h450_9_ccRequestArg_extension,
5874 { "extension", "h450.9.extension",
5875 FT_UINT32, BASE_DEC, NULL, 0,
5876 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5877 { &hf_h450_9_ccRequestArg_extension_item,
5878 { "MixedExtension", "h450.9.MixedExtension",
5879 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5880 NULL, HFILL }},
5881 { &hf_h450_9_retain_service,
5882 { "retain-service", "h450.9.retain_service",
5883 FT_BOOLEAN, BASE_NONE, NULL, 0,
5884 "BOOLEAN", HFILL }},
5885 { &hf_h450_9_ccRequestRes_extension,
5886 { "extension", "h450.9.extension",
5887 FT_UINT32, BASE_DEC, NULL, 0,
5888 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5889 { &hf_h450_9_ccRequestRes_extension_item,
5890 { "MixedExtension", "h450.9.MixedExtension",
5891 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5892 NULL, HFILL }},
5893 { &hf_h450_9_shortArg,
5894 { "shortArg", "h450.9.shortArg_element",
5895 FT_NONE, BASE_NONE, NULL, 0,
5896 "CcShortArg", HFILL }},
5897 { &hf_h450_9_longArg,
5898 { "longArg", "h450.9.longArg_element",
5899 FT_NONE, BASE_NONE, NULL, 0,
5900 "CcLongArg", HFILL }},
5901 { &hf_h450_9_ccShortArg_extension,
5902 { "extension", "h450.9.extension",
5903 FT_UINT32, BASE_DEC, NULL, 0,
5904 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5905 { &hf_h450_9_ccShortArg_extension_item,
5906 { "MixedExtension", "h450.9.MixedExtension",
5907 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5908 NULL, HFILL }},
5909 { &hf_h450_9_ccLongArg_extension,
5910 { "extension", "h450.9.extension",
5911 FT_UINT32, BASE_DEC, NULL, 0,
5912 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5913 { &hf_h450_9_ccLongArg_extension_item,
5914 { "MixedExtension", "h450.9.MixedExtension",
5915 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5916 NULL, HFILL }},
5918 /* --- Module Call-Offer-Operations --- --- --- */
5920 { &hf_h450_10_h450_10_CoReqOptArg_PDU,
5921 { "CoReqOptArg", "h450.10.CoReqOptArg_element",
5922 FT_NONE, BASE_NONE, NULL, 0,
5923 NULL, HFILL }},
5924 { &hf_h450_10_h450_10_RUAlertOptArg_PDU,
5925 { "RUAlertOptArg", "h450.10.RUAlertOptArg_element",
5926 FT_NONE, BASE_NONE, NULL, 0,
5927 NULL, HFILL }},
5928 { &hf_h450_10_h450_10_CfbOvrOptArg_PDU,
5929 { "CfbOvrOptArg", "h450.10.CfbOvrOptArg_element",
5930 FT_NONE, BASE_NONE, NULL, 0,
5931 NULL, HFILL }},
5932 { &hf_h450_10_coReqOptArg_extension,
5933 { "extension", "h450.10.extension",
5934 FT_UINT32, BASE_DEC, NULL, 0,
5935 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5936 { &hf_h450_10_coReqOptArg_extension_item,
5937 { "MixedExtension", "h450.10.MixedExtension",
5938 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5939 NULL, HFILL }},
5940 { &hf_h450_10_rUAlertOptArg_extension,
5941 { "extension", "h450.10.extension",
5942 FT_UINT32, BASE_DEC, NULL, 0,
5943 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5944 { &hf_h450_10_rUAlertOptArg_extension_item,
5945 { "MixedExtension", "h450.10.MixedExtension",
5946 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5947 NULL, HFILL }},
5948 { &hf_h450_10_cfbOvrOptArg_extension,
5949 { "extension", "h450.10.extension",
5950 FT_UINT32, BASE_DEC, NULL, 0,
5951 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
5952 { &hf_h450_10_cfbOvrOptArg_extension_item,
5953 { "MixedExtension", "h450.10.MixedExtension",
5954 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
5955 NULL, HFILL }},
5957 /* --- Module Call-Intrusion-Operations --- --- --- */
5959 { &hf_h450_11_h450_11_CIRequestArg_PDU,
5960 { "CIRequestArg", "h450.11.CIRequestArg_element",
5961 FT_NONE, BASE_NONE, NULL, 0,
5962 NULL, HFILL }},
5963 { &hf_h450_11_h450_11_CIRequestRes_PDU,
5964 { "CIRequestRes", "h450.11.CIRequestRes_element",
5965 FT_NONE, BASE_NONE, NULL, 0,
5966 NULL, HFILL }},
5967 { &hf_h450_11_h450_11_CIGetCIPLOptArg_PDU,
5968 { "CIGetCIPLOptArg", "h450.11.CIGetCIPLOptArg_element",
5969 FT_NONE, BASE_NONE, NULL, 0,
5970 NULL, HFILL }},
5971 { &hf_h450_11_h450_11_CIGetCIPLRes_PDU,
5972 { "CIGetCIPLRes", "h450.11.CIGetCIPLRes_element",
5973 FT_NONE, BASE_NONE, NULL, 0,
5974 NULL, HFILL }},
5975 { &hf_h450_11_h450_11_CIIsOptArg_PDU,
5976 { "CIIsOptArg", "h450.11.CIIsOptArg_element",
5977 FT_NONE, BASE_NONE, NULL, 0,
5978 NULL, HFILL }},
5979 { &hf_h450_11_h450_11_CIIsOptRes_PDU,
5980 { "CIIsOptRes", "h450.11.CIIsOptRes_element",
5981 FT_NONE, BASE_NONE, NULL, 0,
5982 NULL, HFILL }},
5983 { &hf_h450_11_h450_11_CIFrcRelArg_PDU,
5984 { "CIFrcRelArg", "h450.11.CIFrcRelArg_element",
5985 FT_NONE, BASE_NONE, NULL, 0,
5986 NULL, HFILL }},
5987 { &hf_h450_11_h450_11_CIFrcRelOptRes_PDU,
5988 { "CIFrcRelOptRes", "h450.11.CIFrcRelOptRes_element",
5989 FT_NONE, BASE_NONE, NULL, 0,
5990 NULL, HFILL }},
5991 { &hf_h450_11_h450_11_CIWobOptArg_PDU,
5992 { "CIWobOptArg", "h450.11.CIWobOptArg_element",
5993 FT_NONE, BASE_NONE, NULL, 0,
5994 NULL, HFILL }},
5995 { &hf_h450_11_h450_11_CIWobOptRes_PDU,
5996 { "CIWobOptRes", "h450.11.CIWobOptRes_element",
5997 FT_NONE, BASE_NONE, NULL, 0,
5998 NULL, HFILL }},
5999 { &hf_h450_11_h450_11_CISilentArg_PDU,
6000 { "CISilentArg", "h450.11.CISilentArg_element",
6001 FT_NONE, BASE_NONE, NULL, 0,
6002 NULL, HFILL }},
6003 { &hf_h450_11_h450_11_CISilentOptRes_PDU,
6004 { "CISilentOptRes", "h450.11.CISilentOptRes_element",
6005 FT_NONE, BASE_NONE, NULL, 0,
6006 NULL, HFILL }},
6007 { &hf_h450_11_h450_11_CINotificationArg_PDU,
6008 { "CINotificationArg", "h450.11.CINotificationArg_element",
6009 FT_NONE, BASE_NONE, NULL, 0,
6010 NULL, HFILL }},
6011 { &hf_h450_11_ciCapabilityLevel,
6012 { "ciCapabilityLevel", "h450.11.ciCapabilityLevel",
6013 FT_UINT32, BASE_DEC, VALS(h450_11_CICapabilityLevel_vals), 0,
6014 NULL, HFILL }},
6015 { &hf_h450_11_cIRequestArg_argumentExtension,
6016 { "argumentExtension", "h450.11.argumentExtension",
6017 FT_UINT32, BASE_DEC, NULL, 0,
6018 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6019 { &hf_h450_11_cIRequestArg_argumentExtension_item,
6020 { "MixedExtension", "h450.11.MixedExtension",
6021 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6022 NULL, HFILL }},
6023 { &hf_h450_11_ciStatusInformation,
6024 { "ciStatusInformation", "h450.11.ciStatusInformation",
6025 FT_UINT32, BASE_DEC, VALS(h450_11_CIStatusInformation_vals), 0,
6026 NULL, HFILL }},
6027 { &hf_h450_11_cIRequestRes_resultExtension,
6028 { "resultExtension", "h450.11.resultExtension",
6029 FT_UINT32, BASE_DEC, NULL, 0,
6030 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6031 { &hf_h450_11_cIRequestRes_resultExtension_item,
6032 { "MixedExtension", "h450.11.MixedExtension",
6033 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6034 NULL, HFILL }},
6035 { &hf_h450_11_cIGetCIPLOptArg_argumentExtension,
6036 { "argumentExtension", "h450.11.argumentExtension",
6037 FT_UINT32, BASE_DEC, NULL, 0,
6038 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6039 { &hf_h450_11_cIGetCIPLOptArg_argumentExtension_item,
6040 { "MixedExtension", "h450.11.MixedExtension",
6041 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6042 NULL, HFILL }},
6043 { &hf_h450_11_ciProtectionLevel,
6044 { "ciProtectionLevel", "h450.11.ciProtectionLevel",
6045 FT_UINT32, BASE_DEC, VALS(h450_11_CIProtectionLevel_vals), 0,
6046 NULL, HFILL }},
6047 { &hf_h450_11_silentMonitoringPermitted,
6048 { "silentMonitoringPermitted", "h450.11.silentMonitoringPermitted_element",
6049 FT_NONE, BASE_NONE, NULL, 0,
6050 NULL, HFILL }},
6051 { &hf_h450_11_cIGetCIPLRes_resultExtension,
6052 { "resultExtension", "h450.11.resultExtension",
6053 FT_UINT32, BASE_DEC, NULL, 0,
6054 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6055 { &hf_h450_11_cIGetCIPLRes_resultExtension_item,
6056 { "MixedExtension", "h450.11.MixedExtension",
6057 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6058 NULL, HFILL }},
6059 { &hf_h450_11_cIIsOptArg_argumentExtension,
6060 { "argumentExtension", "h450.11.argumentExtension",
6061 FT_UINT32, BASE_DEC, NULL, 0,
6062 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6063 { &hf_h450_11_cIIsOptArg_argumentExtension_item,
6064 { "MixedExtension", "h450.11.MixedExtension",
6065 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6066 NULL, HFILL }},
6067 { &hf_h450_11_cIIsOptRes_resultExtension,
6068 { "resultExtension", "h450.11.resultExtension",
6069 FT_UINT32, BASE_DEC, NULL, 0,
6070 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6071 { &hf_h450_11_cIIsOptRes_resultExtension_item,
6072 { "MixedExtension", "h450.11.MixedExtension",
6073 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6074 NULL, HFILL }},
6075 { &hf_h450_11_cIFrcRelArg_argumentExtension,
6076 { "argumentExtension", "h450.11.argumentExtension",
6077 FT_UINT32, BASE_DEC, NULL, 0,
6078 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6079 { &hf_h450_11_cIFrcRelArg_argumentExtension_item,
6080 { "MixedExtension", "h450.11.MixedExtension",
6081 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6082 NULL, HFILL }},
6083 { &hf_h450_11_cIFrcRelOptRes_resultExtension,
6084 { "resultExtension", "h450.11.resultExtension",
6085 FT_UINT32, BASE_DEC, NULL, 0,
6086 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6087 { &hf_h450_11_cIFrcRelOptRes_resultExtension_item,
6088 { "MixedExtension", "h450.11.MixedExtension",
6089 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6090 NULL, HFILL }},
6091 { &hf_h450_11_cIWobOptArg_argumentExtension,
6092 { "argumentExtension", "h450.11.argumentExtension",
6093 FT_UINT32, BASE_DEC, NULL, 0,
6094 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6095 { &hf_h450_11_cIWobOptArg_argumentExtension_item,
6096 { "MixedExtension", "h450.11.MixedExtension",
6097 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6098 NULL, HFILL }},
6099 { &hf_h450_11_cIWobOptRes_resultExtension,
6100 { "resultExtension", "h450.11.resultExtension",
6101 FT_UINT32, BASE_DEC, NULL, 0,
6102 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6103 { &hf_h450_11_cIWobOptRes_resultExtension_item,
6104 { "MixedExtension", "h450.11.MixedExtension",
6105 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6106 NULL, HFILL }},
6107 { &hf_h450_11_specificCall,
6108 { "specificCall", "h450.11.specificCall_element",
6109 FT_NONE, BASE_NONE, NULL, 0,
6110 "CallIdentifier", HFILL }},
6111 { &hf_h450_11_cISilentArg_argumentExtension,
6112 { "argumentExtension", "h450.11.argumentExtension",
6113 FT_UINT32, BASE_DEC, NULL, 0,
6114 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6115 { &hf_h450_11_cISilentArg_argumentExtension_item,
6116 { "MixedExtension", "h450.11.MixedExtension",
6117 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6118 NULL, HFILL }},
6119 { &hf_h450_11_cISilentOptRes_resultExtension,
6120 { "resultExtension", "h450.11.resultExtension",
6121 FT_UINT32, BASE_DEC, NULL, 0,
6122 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6123 { &hf_h450_11_cISilentOptRes_resultExtension_item,
6124 { "MixedExtension", "h450.11.MixedExtension",
6125 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6126 NULL, HFILL }},
6127 { &hf_h450_11_cINotificationArg_argumentExtension,
6128 { "argumentExtension", "h450.11.argumentExtension",
6129 FT_UINT32, BASE_DEC, NULL, 0,
6130 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6131 { &hf_h450_11_cINotificationArg_argumentExtension_item,
6132 { "MixedExtension", "h450.11.MixedExtension",
6133 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6134 NULL, HFILL }},
6135 { &hf_h450_11_callIntrusionImpending,
6136 { "callIntrusionImpending", "h450.11.callIntrusionImpending_element",
6137 FT_NONE, BASE_NONE, NULL, 0,
6138 NULL, HFILL }},
6139 { &hf_h450_11_callIntruded,
6140 { "callIntruded", "h450.11.callIntruded_element",
6141 FT_NONE, BASE_NONE, NULL, 0,
6142 NULL, HFILL }},
6143 { &hf_h450_11_callIsolated,
6144 { "callIsolated", "h450.11.callIsolated_element",
6145 FT_NONE, BASE_NONE, NULL, 0,
6146 NULL, HFILL }},
6147 { &hf_h450_11_callForceReleased,
6148 { "callForceReleased", "h450.11.callForceReleased_element",
6149 FT_NONE, BASE_NONE, NULL, 0,
6150 NULL, HFILL }},
6151 { &hf_h450_11_callIntrusionComplete,
6152 { "callIntrusionComplete", "h450.11.callIntrusionComplete_element",
6153 FT_NONE, BASE_NONE, NULL, 0,
6154 NULL, HFILL }},
6155 { &hf_h450_11_callIntrusionEnd,
6156 { "callIntrusionEnd", "h450.11.callIntrusionEnd_element",
6157 FT_NONE, BASE_NONE, NULL, 0,
6158 NULL, HFILL }},
6160 /* --- Module Common-Information-Operations --- --- --- */
6162 { &hf_h450_12_h450_12_DummyArg_PDU,
6163 { "DummyArg", "h450.12.DummyArg_element",
6164 FT_NONE, BASE_NONE, NULL, 0,
6165 NULL, HFILL }},
6166 { &hf_h450_12_h450_12_CmnArg_PDU,
6167 { "CmnArg", "h450.12.CmnArg_element",
6168 FT_NONE, BASE_NONE, NULL, 0,
6169 NULL, HFILL }},
6170 { &hf_h450_12_featureList,
6171 { "featureList", "h450.12.featureList_element",
6172 FT_NONE, BASE_NONE, NULL, 0,
6173 NULL, HFILL }},
6174 { &hf_h450_12_featureValues,
6175 { "featureValues", "h450.12.featureValues_element",
6176 FT_NONE, BASE_NONE, NULL, 0,
6177 NULL, HFILL }},
6178 { &hf_h450_12_featureControl,
6179 { "featureControl", "h450.12.featureControl_element",
6180 FT_NONE, BASE_NONE, NULL, 0,
6181 NULL, HFILL }},
6182 { &hf_h450_12_cmnArg_extension,
6183 { "extension", "h450.12.extension",
6184 FT_UINT32, BASE_DEC, NULL, 0,
6185 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6186 { &hf_h450_12_cmnArg_extension_item,
6187 { "MixedExtension", "h450.12.MixedExtension",
6188 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6189 NULL, HFILL }},
6190 { &hf_h450_12_extensionArg,
6191 { "extensionArg", "h450.12.extensionArg",
6192 FT_UINT32, BASE_DEC, NULL, 0,
6193 "SEQUENCE_SIZE_0_255_OF_MixedExtension", HFILL }},
6194 { &hf_h450_12_extensionArg_item,
6195 { "MixedExtension", "h450.12.MixedExtension",
6196 FT_UINT32, BASE_DEC, VALS(h450_4_MixedExtension_vals), 0,
6197 NULL, HFILL }},
6198 { &hf_h450_12_ssCFreRoutingSupported,
6199 { "ssCFreRoutingSupported", "h450.12.ssCFreRoutingSupported_element",
6200 FT_NONE, BASE_NONE, NULL, 0,
6201 NULL, HFILL }},
6202 { &hf_h450_12_ssCTreRoutingSupported,
6203 { "ssCTreRoutingSupported", "h450.12.ssCTreRoutingSupported_element",
6204 FT_NONE, BASE_NONE, NULL, 0,
6205 NULL, HFILL }},
6206 { &hf_h450_12_ssCCBSPossible,
6207 { "ssCCBSPossible", "h450.12.ssCCBSPossible_element",
6208 FT_NONE, BASE_NONE, NULL, 0,
6209 NULL, HFILL }},
6210 { &hf_h450_12_ssCCNRPossible,
6211 { "ssCCNRPossible", "h450.12.ssCCNRPossible_element",
6212 FT_NONE, BASE_NONE, NULL, 0,
6213 NULL, HFILL }},
6214 { &hf_h450_12_ssCOSupported,
6215 { "ssCOSupported", "h450.12.ssCOSupported_element",
6216 FT_NONE, BASE_NONE, NULL, 0,
6217 NULL, HFILL }},
6218 { &hf_h450_12_ssCIForcedReleaseSupported,
6219 { "ssCIForcedReleaseSupported", "h450.12.ssCIForcedReleaseSupported_element",
6220 FT_NONE, BASE_NONE, NULL, 0,
6221 NULL, HFILL }},
6222 { &hf_h450_12_ssCIIsolationSupported,
6223 { "ssCIIsolationSupported", "h450.12.ssCIIsolationSupported_element",
6224 FT_NONE, BASE_NONE, NULL, 0,
6225 NULL, HFILL }},
6226 { &hf_h450_12_ssCIWaitOnBusySupported,
6227 { "ssCIWaitOnBusySupported", "h450.12.ssCIWaitOnBusySupported_element",
6228 FT_NONE, BASE_NONE, NULL, 0,
6229 NULL, HFILL }},
6230 { &hf_h450_12_ssCISilentMonitoringSupported,
6231 { "ssCISilentMonitoringSupported", "h450.12.ssCISilentMonitoringSupported_element",
6232 FT_NONE, BASE_NONE, NULL, 0,
6233 NULL, HFILL }},
6234 { &hf_h450_12_ssCIConferenceSupported,
6235 { "ssCIConferenceSupported", "h450.12.ssCIConferenceSupported_element",
6236 FT_NONE, BASE_NONE, NULL, 0,
6237 NULL, HFILL }},
6238 { &hf_h450_12_ssCHFarHoldSupported,
6239 { "ssCHFarHoldSupported", "h450.12.ssCHFarHoldSupported_element",
6240 FT_NONE, BASE_NONE, NULL, 0,
6241 NULL, HFILL }},
6242 { &hf_h450_12_ssMWICallbackSupported,
6243 { "ssMWICallbackSupported", "h450.12.ssMWICallbackSupported_element",
6244 FT_NONE, BASE_NONE, NULL, 0,
6245 NULL, HFILL }},
6246 { &hf_h450_12_ssCPCallParkSupported,
6247 { "ssCPCallParkSupported", "h450.12.ssCPCallParkSupported_element",
6248 FT_NONE, BASE_NONE, NULL, 0,
6249 NULL, HFILL }},
6250 { &hf_h450_12_partyCategory,
6251 { "partyCategory", "h450.12.partyCategory",
6252 FT_UINT32, BASE_DEC, VALS(h450_12_PartyCategory_vals), 0,
6253 NULL, HFILL }},
6254 { &hf_h450_12_ssCIprotectionLevel,
6255 { "ssCIprotectionLevel", "h450.12.ssCIprotectionLevel",
6256 FT_UINT32, BASE_DEC, NULL, 0,
6257 NULL, HFILL }},
6258 { &hf_h450_12_ssCHDoNotHold,
6259 { "ssCHDoNotHold", "h450.12.ssCHDoNotHold_element",
6260 FT_NONE, BASE_NONE, NULL, 0,
6261 NULL, HFILL }},
6262 { &hf_h450_12_ssCTDoNotTransfer,
6263 { "ssCTDoNotTransfer", "h450.12.ssCTDoNotTransfer_element",
6264 FT_NONE, BASE_NONE, NULL, 0,
6265 NULL, HFILL }},
6266 { &hf_h450_12_ssMWICallbackCall,
6267 { "ssMWICallbackCall", "h450.12.ssMWICallbackCall_element",
6268 FT_NONE, BASE_NONE, NULL, 0,
6269 NULL, HFILL }},
6270 { &hf_h450_12_ssCISilentMonitorPermitted,
6271 { "ssCISilentMonitorPermitted", "h450.12.ssCISilentMonitorPermitted_element",
6272 FT_NONE, BASE_NONE, NULL, 0,
6273 NULL, HFILL }},
6275 /*--- End of included file: packet-h450-hfarr.c ---*/
6276 #line 250 "../../asn1/h450/packet-h450-template.c"
6279 /* List of subtrees */
6280 static gint *ett[] = {
6282 /*--- Included file: packet-h450-ettarr.c ---*/
6283 #line 1 "../../asn1/h450/packet-h450-ettarr.c"
6285 /* --- Modules H4501-Supplementary-ServiceAPDU-Structure Addressing-Data-Elements H225-generic-parameters-definition Manufacturer-specific-service-extension-definition H4501-General-Error-List --- --- --- */
6287 &ett_h450_H4501SupplementaryService,
6288 &ett_h450_NetworkFacilityExtension,
6289 &ett_h450_EntityType,
6290 &ett_h450_InterpretationApdu,
6291 &ett_h450_ServiceApdus,
6292 &ett_h450_T_rosApdus,
6293 &ett_h450_EndpointAddress,
6294 &ett_h450_SEQUENCE_OF_AliasAddress,
6295 &ett_h450_PartySubaddress,
6296 &ett_h450_UserSpecifiedSubaddress,
6297 &ett_h450_Extension,
6299 /* --- Module Call-Transfer-Operations --- --- --- */
6301 &ett_h450_2_DummyArg,
6302 &ett_h450_2_DummyRes,
6303 &ett_h450_2_CTInitiateArg,
6304 &ett_h450_2_T_cTInitiateArg_argumentExtension,
6305 &ett_h450_2_CTSetupArg,
6306 &ett_h450_2_T_cTSetupArg_argumentExtension,
6307 &ett_h450_2_CTIdentifyRes,
6308 &ett_h450_2_T_resultExtension,
6309 &ett_h450_2_CTUpdateArg,
6310 &ett_h450_2_T_cTUpdateArg_argumentExtension,
6311 &ett_h450_2_SubaddressTransferArg,
6312 &ett_h450_2_T_subaddressTransferArg_argumentExtension,
6313 &ett_h450_2_CTCompleteArg,
6314 &ett_h450_2_T_cTCompleteArg_argumentExtension,
6315 &ett_h450_2_CTActiveArg,
6316 &ett_h450_2_T_cTActiveArg_argumentExtension,
6317 &ett_h450_2_ExtensionSeq,
6318 &ett_h450_2_PAR_unspecified,
6320 /* --- Module Call-Diversion-Operations --- --- --- */
6322 &ett_h450_3_ARG_activateDiversionQ,
6323 &ett_h450_3_ActivateDiversionQArg_extension,
6324 &ett_h450_3_RES_activateDiversionQ,
6325 &ett_h450_3_ARG_deactivateDiversionQ,
6326 &ett_h450_3_DeactivateDiversionQArg_extension,
6327 &ett_h450_3_RES_deactivateDiversionQ,
6328 &ett_h450_3_ARG_interrogateDiversionQ,
6329 &ett_h450_3_InterrogateDiversionQ_extension,
6330 &ett_h450_3_ARG_checkRestriction,
6331 &ett_h450_3_CheckRestrictionArg_extension,
6332 &ett_h450_3_RES_checkRestriction,
6333 &ett_h450_3_ARG_callRerouting,
6334 &ett_h450_3_CallReroutingArg_extension,
6335 &ett_h450_3_RES_callRerouting,
6336 &ett_h450_3_ARG_divertingLegInformation1,
6337 &ett_h450_3_DivertingLegInformation1Arg_extension,
6338 &ett_h450_3_ARG_divertingLegInformation2,
6339 &ett_h450_3_DivertingLegInformation2Arg_extension,
6340 &ett_h450_3_ARG_divertingLegInformation3,
6341 &ett_h450_3_DivertingLegInformation3Arg_extension,
6342 &ett_h450_3_ARG_divertingLegInformation4,
6343 &ett_h450_3_DivertingLegInformation4Arg_extension,
6344 &ett_h450_3_ARG_cfnrDivertedLegFailed,
6345 &ett_h450_3_IntResultList,
6346 &ett_h450_3_IntResult,
6347 &ett_h450_3_IntResult_extension,
6348 &ett_h450_3_PAR_unspecified,
6349 &ett_h450_3_ExtensionSeq,
6351 /* --- Module Call-Hold-Operations --- --- --- */
6353 &ett_h450_4_HoldNotificArg,
6354 &ett_h450_4_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6355 &ett_h450_4_RetrieveNotificArg,
6356 &ett_h450_4_RemoteHoldArg,
6357 &ett_h450_4_RemoteHoldRes,
6358 &ett_h450_4_RemoteRetrieveArg,
6359 &ett_h450_4_RemoteRetrieveRes,
6360 &ett_h450_4_MixedExtension,
6361 &ett_h450_4_PAR_undefined,
6363 /* --- Module Call-Park-Pickup-Operations --- --- --- */
6365 &ett_h450_5_CpRequestArg,
6366 &ett_h450_5_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6367 &ett_h450_5_CpRequestRes,
6368 &ett_h450_5_CpSetupArg,
6369 &ett_h450_5_CpSetupRes,
6370 &ett_h450_5_GroupIndicationOnArg,
6371 &ett_h450_5_GroupIndicationOnRes,
6372 &ett_h450_5_GroupIndicationOffArg,
6373 &ett_h450_5_GroupIndicationOffRes,
6374 &ett_h450_5_PickrequArg,
6375 &ett_h450_5_PickrequRes,
6376 &ett_h450_5_PickupArg,
6377 &ett_h450_5_PickupRes,
6378 &ett_h450_5_PickExeArg,
6379 &ett_h450_5_PickExeRes,
6380 &ett_h450_5_CpNotifyArg,
6381 &ett_h450_5_CpickupNotifyArg,
6382 &ett_h450_5_PAR_undefined,
6384 /* --- Module Call-Waiting-Operations --- --- --- */
6386 &ett_h450_6_CallWaitingArg,
6387 &ett_h450_6_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6389 /* --- Module Message-Waiting-Indication-Operations --- --- --- */
6391 &ett_h450_7_MWIActivateArg,
6392 &ett_h450_7_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6393 &ett_h450_7_DummyRes,
6394 &ett_h450_7_MWIDeactivateArg,
6395 &ett_h450_7_MWIInterrogateArg,
6396 &ett_h450_7_MWIInterrogateRes,
6397 &ett_h450_7_MWIInterrogateResElt,
6398 &ett_h450_7_MsgCentreId,
6399 &ett_h450_7_PAR_undefined,
6401 /* --- Module Name-Operations --- --- --- */
6403 &ett_h450_8_ARG_callingName,
6404 &ett_h450_8_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6405 &ett_h450_8_ARG_alertingName,
6406 &ett_h450_8_ARG_connectedName,
6407 &ett_h450_8_ARG_busyName,
6408 &ett_h450_8_Name,
6409 &ett_h450_8_NamePresentationAllowed,
6410 &ett_h450_8_NamePresentationRestricted,
6412 /* --- Module Call-Completion-Operations --- --- --- */
6414 &ett_h450_9_CcRequestArg,
6415 &ett_h450_9_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6416 &ett_h450_9_CcRequestRes,
6417 &ett_h450_9_CcArg,
6418 &ett_h450_9_CcShortArg,
6419 &ett_h450_9_CcLongArg,
6421 /* --- Module Call-Offer-Operations --- --- --- */
6423 &ett_h450_10_CoReqOptArg,
6424 &ett_h450_10_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6425 &ett_h450_10_RUAlertOptArg,
6426 &ett_h450_10_CfbOvrOptArg,
6428 /* --- Module Call-Intrusion-Operations --- --- --- */
6430 &ett_h450_11_CIRequestArg,
6431 &ett_h450_11_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6432 &ett_h450_11_CIRequestRes,
6433 &ett_h450_11_CIGetCIPLOptArg,
6434 &ett_h450_11_CIGetCIPLRes,
6435 &ett_h450_11_CIIsOptArg,
6436 &ett_h450_11_CIIsOptRes,
6437 &ett_h450_11_CIFrcRelArg,
6438 &ett_h450_11_CIFrcRelOptRes,
6439 &ett_h450_11_CIWobOptArg,
6440 &ett_h450_11_CIWobOptRes,
6441 &ett_h450_11_CISilentArg,
6442 &ett_h450_11_CISilentOptRes,
6443 &ett_h450_11_CINotificationArg,
6444 &ett_h450_11_CIStatusInformation,
6446 /* --- Module Common-Information-Operations --- --- --- */
6448 &ett_h450_12_CmnArg,
6449 &ett_h450_12_SEQUENCE_SIZE_0_255_OF_MixedExtension,
6450 &ett_h450_12_DummyArg,
6451 &ett_h450_12_FeatureList,
6452 &ett_h450_12_FeatureValues,
6453 &ett_h450_12_FeatureControl,
6455 /*--- End of included file: packet-h450-ettarr.c ---*/
6456 #line 255 "../../asn1/h450/packet-h450-template.c"
6460 /* Register protocol */
6461 proto_h450 = proto_register_protocol(PNAME, PSNAME, PFNAME);
6462 new_register_dissector("h4501", dissect_h450_H4501SupplementaryService_PDU, proto_h450);
6463 /* Register fields and subtrees */
6464 proto_register_field_array(proto_h450, hf, array_length(hf));
6465 proto_register_subtree_array(ett, array_length(ett));
6467 rose_ctx_init(&h450_rose_ctx);
6469 /* Register dissector tables */
6470 h450_rose_ctx.arg_global_dissector_table = register_dissector_table("h450.ros.global.arg", "H.450 Operation Argument (global opcode)", FT_STRING, BASE_NONE);
6471 h450_rose_ctx.res_global_dissector_table = register_dissector_table("h450.ros.global.res", "H.450 Operation Result (global opcode)", FT_STRING, BASE_NONE);
6472 h450_rose_ctx.arg_local_dissector_table = register_dissector_table("h450.ros.local.arg", "H.450 Operation Argument (local opcode)", FT_UINT32, BASE_HEX);
6473 h450_rose_ctx.res_local_dissector_table = register_dissector_table("h450.ros.local.res", "H.450 Operation Result (local opcode)", FT_UINT32, BASE_HEX);
6474 h450_rose_ctx.err_global_dissector_table = register_dissector_table("h450.ros.global.err", "H.450 Error (global opcode)", FT_STRING, BASE_NONE);
6475 h450_rose_ctx.err_local_dissector_table = register_dissector_table("h450.ros.local.err", "H.450 Error (local opcode)", FT_UINT32, BASE_HEX);
6480 /*--- proto_reg_handoff_h450 ---------------------------------------*/
6481 void
6482 proto_reg_handoff_h450(void)
6484 int i;
6485 dissector_handle_t h450_arg_handle;
6486 dissector_handle_t h450_res_handle;
6487 dissector_handle_t h450_err_handle;
6489 h450_arg_handle = new_create_dissector_handle(dissect_h450_arg, proto_h450);
6490 h450_res_handle = new_create_dissector_handle(dissect_h450_res, proto_h450);
6491 for (i=0; i<(int)array_length(h450_op_tab); i++) {
6492 dissector_add_uint("h450.ros.local.arg", h450_op_tab[i].opcode, h450_arg_handle);
6493 dissector_add_uint("h450.ros.local.res", h450_op_tab[i].opcode, h450_res_handle);
6495 h450_err_handle = new_create_dissector_handle(dissect_h450_err, proto_h450);
6496 for (i=0; i<(int)array_length(h450_err_tab); i++) {
6497 dissector_add_uint("h450.ros.local.err", h450_err_tab[i].errcode, h450_err_handle);