change the signature that asn2wrs generates for functions to marm all parameters...
[obnox/wireshark/wip.git] / epan / dissectors / packet-mms.c
1 /* Do not modify this file.                                                   */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
3 /* ./packet-mms.c                                                             */
4 /* ../../tools/asn2wrs.py -b -e -p mms -c mms.cnf -s packet-mms-template mms.asn */
5
6 /* Input file: packet-mms-template.c */
7
8 #line 1 "packet-mms-template.c"
9 /* packet-mms_asn1.c
10  *
11  * Ronnie Sahlberg 2005
12  *
13  * $Id$
14  *
15  * Wireshark - Network traffic analyzer
16  * By Gerald Combs <gerald@wireshark.org>
17  * Copyright 1998 Gerald Combs
18  *
19  * This program is free software; you can redistribute it and/or
20  * modify it under the terms of the GNU General Public License
21  * as published by the Free Software Foundation; either version 2
22  * of the License, or (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with this program; if not, write to the Free Software
31  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32  */
33
34 #ifdef HAVE_CONFIG_H
35 # include "config.h"
36 #endif
37
38 #include <glib.h>
39 #include <epan/packet.h>
40 #include <epan/conversation.h>
41
42 #include <stdio.h>
43 #include <string.h>
44
45 #include "packet-ber.h"
46 #include "packet-acse.h"
47 #include "packet-mms.h"
48
49 #define PNAME  "MMS"
50 #define PSNAME "MMS"
51 #define PFNAME "mms"
52
53 /* Initialize the protocol and registered fields */
54 int proto_mms = -1;
55
56
57 /*--- Included file: packet-mms-hf.c ---*/
58 #line 1 "packet-mms-hf.c"
59 static int hf_mms_confirmed_RequestPDU = -1;      /* Confirmed_RequestPDU */
60 static int hf_mms_confirmed_ResponsePDU = -1;     /* Confirmed_ResponsePDU */
61 static int hf_mms_confirmed_ErrorPDU = -1;        /* Confirmed_ErrorPDU */
62 static int hf_mms_unconfirmed_PDU = -1;           /* Unconfirmed_PDU */
63 static int hf_mms_rejectPDU = -1;                 /* RejectPDU */
64 static int hf_mms_cancel_RequestPDU = -1;         /* Cancel_RequestPDU */
65 static int hf_mms_cancel_ResponsePDU = -1;        /* Cancel_ResponsePDU */
66 static int hf_mms_cancel_ErrorPDU = -1;           /* Cancel_ErrorPDU */
67 static int hf_mms_initiate_RequestPDU = -1;       /* Initiate_RequestPDU */
68 static int hf_mms_initiate_ResponsePDU = -1;      /* Initiate_ResponsePDU */
69 static int hf_mms_initiate_ErrorPDU = -1;         /* Initiate_ErrorPDU */
70 static int hf_mms_conclude_RequestPDU = -1;       /* Conclude_RequestPDU */
71 static int hf_mms_conclude_ResponsePDU = -1;      /* Conclude_ResponsePDU */
72 static int hf_mms_conclude_ErrorPDU = -1;         /* Conclude_ErrorPDU */
73 static int hf_mms_invokeID = -1;                  /* Unsigned32 */
74 static int hf_mms_listOfModifier = -1;            /* SEQUENCE_OF_Modifier */
75 static int hf_mms_listOfModifier_item = -1;       /* Modifier */
76 static int hf_mms_confirmedServiceRequest = -1;   /* ConfirmedServiceRequest */
77 static int hf_mms_cs_request_detail = -1;         /* CS_Request_Detail */
78 static int hf_mms_unconfirmedService = -1;        /* UnconfirmedService */
79 static int hf_mms_confirmedServiceResponse = -1;  /* ConfirmedServiceResponse */
80 static int hf_mms_modifierPosition = -1;          /* Unsigned32 */
81 static int hf_mms_serviceError = -1;              /* ServiceError */
82 static int hf_mms_informationReport = -1;         /* InformationReport */
83 static int hf_mms_unsolicitedStatus = -1;         /* UnsolicitedStatus */
84 static int hf_mms_eventNotification = -1;         /* EventNotification */
85 static int hf_mms_attach_To_Event_Condition = -1;  /* AttachToEventCondition */
86 static int hf_mms_attach_To_Semaphore = -1;       /* AttachToSemaphore */
87 static int hf_mms_status = -1;                    /* Status_Request */
88 static int hf_mms_getNameList = -1;               /* GetNameList_Request */
89 static int hf_mms_identify = -1;                  /* Identify_Request */
90 static int hf_mms_rename = -1;                    /* Rename_Request */
91 static int hf_mms_read = -1;                      /* Read_Request */
92 static int hf_mms_write = -1;                     /* Write_Request */
93 static int hf_mms_getVariableAccessAttributes = -1;  /* GetVariableAccessAttributes_Request */
94 static int hf_mms_defineNamedVariable = -1;       /* DefineNamedVariable_Request */
95 static int hf_mms_defineScatteredAccess = -1;     /* DefineScatteredAccess_Request */
96 static int hf_mms_getScatteredAccessAttributes = -1;  /* GetScatteredAccessAttributes_Request */
97 static int hf_mms_deleteVariableAccess = -1;      /* DeleteVariableAccess_Request */
98 static int hf_mms_defineNamedVariableList = -1;   /* DefineNamedVariableList_Request */
99 static int hf_mms_getNamedVariableListAttributes = -1;  /* GetNamedVariableListAttributes_Request */
100 static int hf_mms_deleteNamedVariableList = -1;   /* DeleteNamedVariableList_Request */
101 static int hf_mms_defineNamedType = -1;           /* DefineNamedType_Request */
102 static int hf_mms_getNamedTypeAttributes = -1;    /* GetNamedTypeAttributes_Request */
103 static int hf_mms_deleteNamedType = -1;           /* DeleteNamedType_Request */
104 static int hf_mms_input = -1;                     /* Input_Request */
105 static int hf_mms_output = -1;                    /* Output_Request */
106 static int hf_mms_takeControl = -1;               /* TakeControl_Request */
107 static int hf_mms_relinquishControl = -1;         /* RelinquishControl_Request */
108 static int hf_mms_defineSemaphore = -1;           /* DefineSemaphore_Request */
109 static int hf_mms_deleteSemaphore = -1;           /* DeleteSemaphore_Request */
110 static int hf_mms_reportSemaphoreStatus = -1;     /* ReportSemaphoreStatus_Request */
111 static int hf_mms_reportPoolSemaphoreStatus = -1;  /* ReportPoolSemaphoreStatus_Request */
112 static int hf_mms_reportSemaphoreEntryStatus = -1;  /* ReportSemaphoreEntryStatus_Request */
113 static int hf_mms_initiateDownloadSequence = -1;  /* InitiateDownloadSequence_Request */
114 static int hf_mms_downloadSegment = -1;           /* DownloadSegment_Request */
115 static int hf_mms_terminateDownloadSequence = -1;  /* TerminateDownloadSequence_Request */
116 static int hf_mms_initiateUploadSequence = -1;    /* InitiateUploadSequence_Request */
117 static int hf_mms_uploadSegment = -1;             /* UploadSegment_Request */
118 static int hf_mms_terminateUploadSequence = -1;   /* TerminateUploadSequence_Request */
119 static int hf_mms_requestDomainDownload = -1;     /* RequestDomainDownload_Request */
120 static int hf_mms_requestDomainUpload = -1;       /* RequestDomainUpload_Request */
121 static int hf_mms_loadDomainContent = -1;         /* LoadDomainContent_Request */
122 static int hf_mms_storeDomainContent = -1;        /* StoreDomainContent_Request */
123 static int hf_mms_deleteDomain = -1;              /* DeleteDomain_Request */
124 static int hf_mms_getDomainAttributes = -1;       /* GetDomainAttributes_Request */
125 static int hf_mms_createProgramInvocation = -1;   /* CreateProgramInvocation_Request */
126 static int hf_mms_deleteProgramInvocation = -1;   /* DeleteProgramInvocation_Request */
127 static int hf_mms_start = -1;                     /* Start_Request */
128 static int hf_mms_stop = -1;                      /* Stop_Request */
129 static int hf_mms_resume = -1;                    /* Resume_Request */
130 static int hf_mms_reset = -1;                     /* Reset_Request */
131 static int hf_mms_kill = -1;                      /* Kill_Request */
132 static int hf_mms_getProgramInvocationAttributes = -1;  /* GetProgramInvocationAttributes_Request */
133 static int hf_mms_obtainFile = -1;                /* ObtainFile_Request */
134 static int hf_mms_defineEventCondition = -1;      /* DefineEventCondition_Request */
135 static int hf_mms_deleteEventCondition = -1;      /* DeleteEventCondition_Request */
136 static int hf_mms_getEventConditionAttributes = -1;  /* GetEventConditionAttributes_Request */
137 static int hf_mms_reportEventConditionStatus = -1;  /* ReportEventConditionStatus_Request */
138 static int hf_mms_alterEventConditionMonitoring = -1;  /* AlterEventConditionMonitoring_Request */
139 static int hf_mms_triggerEvent = -1;              /* TriggerEvent_Request */
140 static int hf_mms_defineEventAction = -1;         /* DefineEventAction_Request */
141 static int hf_mms_deleteEventAction = -1;         /* DeleteEventAction_Request */
142 static int hf_mms_getEventActionAttributes = -1;  /* GetEventActionAttributes_Request */
143 static int hf_mms_reportEventActionStatus = -1;   /* ReportEventActionStatus_Request */
144 static int hf_mms_defineEventEnrollment = -1;     /* DefineEventEnrollment_Request */
145 static int hf_mms_deleteEventEnrollment = -1;     /* DeleteEventEnrollment_Request */
146 static int hf_mms_alterEventEnrollment = -1;      /* AlterEventEnrollment_Request */
147 static int hf_mms_reportEventEnrollmentStatus = -1;  /* ReportEventEnrollmentStatus_Request */
148 static int hf_mms_getEventEnrollmentAttributes = -1;  /* GetEventEnrollmentAttributes_Request */
149 static int hf_mms_acknowledgeEventNotification = -1;  /* AcknowledgeEventNotification_Request */
150 static int hf_mms_getAlarmSummary = -1;           /* GetAlarmSummary_Request */
151 static int hf_mms_getAlarmEnrollmentSummary = -1;  /* GetAlarmEnrollmentSummary_Request */
152 static int hf_mms_readJournal = -1;               /* ReadJournal_Request */
153 static int hf_mms_writeJournal = -1;              /* WriteJournal_Request */
154 static int hf_mms_initializeJournal = -1;         /* InitializeJournal_Request */
155 static int hf_mms_reportJournalStatus = -1;       /* ReportJournalStatus_Request */
156 static int hf_mms_createJournal = -1;             /* CreateJournal_Request */
157 static int hf_mms_deleteJournal = -1;             /* DeleteJournal_Request */
158 static int hf_mms_getCapabilityList = -1;         /* GetCapabilityList_Request */
159 static int hf_mms_fileOpen = -1;                  /* FileOpen_Request */
160 static int hf_mms_fileRead = -1;                  /* FileRead_Request */
161 static int hf_mms_fileClose = -1;                 /* FileClose_Request */
162 static int hf_mms_fileRename = -1;                /* FileRename_Request */
163 static int hf_mms_fileDelete = -1;                /* FileDelete_Request */
164 static int hf_mms_fileDirectory = -1;             /* FileDirectory_Request */
165 static int hf_mms_foo = -1;                       /* INTEGER */
166 static int hf_mms_status1 = -1;                   /* Status_Response */
167 static int hf_mms_getNameList1 = -1;              /* GetNameList_Response */
168 static int hf_mms_identify1 = -1;                 /* Identify_Response */
169 static int hf_mms_rename1 = -1;                   /* Rename_Response */
170 static int hf_mms_read1 = -1;                     /* Read_Response */
171 static int hf_mms_write1 = -1;                    /* Write_Response */
172 static int hf_mms_getVariableAccessAttributes1 = -1;  /* GetVariableAccessAttributes_Response */
173 static int hf_mms_defineNamedVariable1 = -1;      /* DefineNamedVariable_Response */
174 static int hf_mms_defineScatteredAccess1 = -1;    /* DefineScatteredAccess_Response */
175 static int hf_mms_getScatteredAccessAttributes1 = -1;  /* GetScatteredAccessAttributes_Response */
176 static int hf_mms_deleteVariableAccess1 = -1;     /* DeleteVariableAccess_Response */
177 static int hf_mms_defineNamedVariableList1 = -1;  /* DefineNamedVariableList_Response */
178 static int hf_mms_getNamedVariableListAttributes1 = -1;  /* GetNamedVariableListAttributes_Response */
179 static int hf_mms_deleteNamedVariableList1 = -1;  /* DeleteNamedVariableList_Response */
180 static int hf_mms_defineNamedType1 = -1;          /* DefineNamedType_Response */
181 static int hf_mms_getNamedTypeAttributes1 = -1;   /* GetNamedTypeAttributes_Response */
182 static int hf_mms_deleteNamedType1 = -1;          /* DeleteNamedType_Response */
183 static int hf_mms_input1 = -1;                    /* Input_Response */
184 static int hf_mms_output1 = -1;                   /* Output_Response */
185 static int hf_mms_takeControl1 = -1;              /* TakeControl_Response */
186 static int hf_mms_relinquishControl1 = -1;        /* RelinquishControl_Response */
187 static int hf_mms_defineSemaphore1 = -1;          /* DefineSemaphore_Response */
188 static int hf_mms_deleteSemaphore1 = -1;          /* DeleteSemaphore_Response */
189 static int hf_mms_reportSemaphoreStatus1 = -1;    /* ReportSemaphoreStatus_Response */
190 static int hf_mms_reportPoolSemaphoreStatus1 = -1;  /* ReportPoolSemaphoreStatus_Response */
191 static int hf_mms_reportSemaphoreEntryStatus1 = -1;  /* ReportSemaphoreEntryStatus_Response */
192 static int hf_mms_initiateDownloadSequence1 = -1;  /* InitiateDownloadSequence_Response */
193 static int hf_mms_downloadSegment1 = -1;          /* DownloadSegment_Response */
194 static int hf_mms_terminateDownloadSequence1 = -1;  /* TerminateDownloadSequence_Response */
195 static int hf_mms_initiateUploadSequence1 = -1;   /* InitiateUploadSequence_Response */
196 static int hf_mms_uploadSegment1 = -1;            /* UploadSegment_Response */
197 static int hf_mms_terminateUploadSequence1 = -1;  /* TerminateUploadSequence_Response */
198 static int hf_mms_requestDomainDownLoad = -1;     /* RequestDomainDownload_Response */
199 static int hf_mms_requestDomainUpload1 = -1;      /* RequestDomainUpload_Response */
200 static int hf_mms_loadDomainContent1 = -1;        /* LoadDomainContent_Response */
201 static int hf_mms_storeDomainContent1 = -1;       /* StoreDomainContent_Response */
202 static int hf_mms_deleteDomain1 = -1;             /* DeleteDomain_Response */
203 static int hf_mms_getDomainAttributes1 = -1;      /* GetDomainAttributes_Response */
204 static int hf_mms_createProgramInvocation1 = -1;  /* CreateProgramInvocation_Response */
205 static int hf_mms_deleteProgramInvocation1 = -1;  /* DeleteProgramInvocation_Response */
206 static int hf_mms_start1 = -1;                    /* Start_Response */
207 static int hf_mms_stop1 = -1;                     /* Stop_Response */
208 static int hf_mms_resume1 = -1;                   /* Resume_Response */
209 static int hf_mms_reset1 = -1;                    /* Reset_Response */
210 static int hf_mms_kill1 = -1;                     /* Kill_Response */
211 static int hf_mms_getProgramInvocationAttributes1 = -1;  /* GetProgramInvocationAttributes_Response */
212 static int hf_mms_obtainFile1 = -1;               /* ObtainFile_Response */
213 static int hf_mms_fileOpen1 = -1;                 /* FileOpen_Response */
214 static int hf_mms_defineEventCondition1 = -1;     /* DefineEventCondition_Response */
215 static int hf_mms_deleteEventCondition1 = -1;     /* DeleteEventCondition_Response */
216 static int hf_mms_getEventConditionAttributes1 = -1;  /* GetEventConditionAttributes_Response */
217 static int hf_mms_reportEventConditionStatus1 = -1;  /* ReportEventConditionStatus_Response */
218 static int hf_mms_alterEventConditionMonitoring1 = -1;  /* AlterEventConditionMonitoring_Response */
219 static int hf_mms_triggerEvent1 = -1;             /* TriggerEvent_Response */
220 static int hf_mms_defineEventAction1 = -1;        /* DefineEventAction_Response */
221 static int hf_mms_deleteEventAction1 = -1;        /* DeleteEventAction_Response */
222 static int hf_mms_getEventActionAttributes1 = -1;  /* GetEventActionAttributes_Response */
223 static int hf_mms_reportActionStatus = -1;        /* ReportEventActionStatus_Response */
224 static int hf_mms_defineEventEnrollment1 = -1;    /* DefineEventEnrollment_Response */
225 static int hf_mms_deleteEventEnrollment1 = -1;    /* DeleteEventEnrollment_Response */
226 static int hf_mms_alterEventEnrollment1 = -1;     /* AlterEventEnrollment_Response */
227 static int hf_mms_reportEventEnrollmentStatus1 = -1;  /* ReportEventEnrollmentStatus_Response */
228 static int hf_mms_getEventEnrollmentAttributes1 = -1;  /* GetEventEnrollmentAttributes_Response */
229 static int hf_mms_acknowledgeEventNotification1 = -1;  /* AcknowledgeEventNotification_Response */
230 static int hf_mms_getAlarmSummary1 = -1;          /* GetAlarmSummary_Response */
231 static int hf_mms_getAlarmEnrollmentSummary1 = -1;  /* GetAlarmEnrollmentSummary_Response */
232 static int hf_mms_readJournal1 = -1;              /* ReadJournal_Response */
233 static int hf_mms_writeJournal1 = -1;             /* WriteJournal_Response */
234 static int hf_mms_initializeJournal1 = -1;        /* InitializeJournal_Response */
235 static int hf_mms_reportJournalStatus1 = -1;      /* ReportJournalStatus_Response */
236 static int hf_mms_createJournal1 = -1;            /* CreateJournal_Response */
237 static int hf_mms_deleteJournal1 = -1;            /* DeleteJournal_Response */
238 static int hf_mms_getCapabilityList1 = -1;        /* GetCapabilityList_Response */
239 static int hf_mms_fileRead1 = -1;                 /* FileRead_Response */
240 static int hf_mms_fileClose1 = -1;                /* FileClose_Response */
241 static int hf_mms_fileRename1 = -1;               /* FileRename_Response */
242 static int hf_mms_fileDelete1 = -1;               /* FileDelete_Response */
243 static int hf_mms_fileDirectory1 = -1;            /* FileDirectory_Response */
244 static int hf_mms_FileName_item = -1;             /* GraphicString */
245 static int hf_mms_vmd_specific = -1;              /* Identifier */
246 static int hf_mms_domain_specific = -1;           /* T_domain_specific */
247 static int hf_mms_domainId = -1;                  /* Identifier */
248 static int hf_mms_itemId = -1;                    /* Identifier */
249 static int hf_mms_aa_specific = -1;               /* Identifier */
250 static int hf_mms_ap_title = -1;                  /* T_ap_title */
251 static int hf_mms_ap_invocation_id = -1;          /* T_ap_invocation_id */
252 static int hf_mms_ae_qualifier = -1;              /* T_ae_qualifier */
253 static int hf_mms_ae_invocation_id = -1;          /* T_ae_invocation_id */
254 static int hf_mms_localDetailCalling = -1;        /* Integer32 */
255 static int hf_mms_proposedMaxServOutstandingCalling = -1;  /* Integer16 */
256 static int hf_mms_proposedMaxServOutstandingCalled = -1;  /* Integer16 */
257 static int hf_mms_proposedDataStructureNestingLevel = -1;  /* Integer8 */
258 static int hf_mms_mmsInitRequestDetail = -1;      /* InitRequestDetail */
259 static int hf_mms_proposedVersionNumber = -1;     /* Integer16 */
260 static int hf_mms_proposedParameterCBB = -1;      /* ParameterSupportOptions */
261 static int hf_mms_servicesSupportedCalling = -1;  /* ServiceSupportOptions */
262 static int hf_mms_localDetailCalled = -1;         /* Integer32 */
263 static int hf_mms_negociatedMaxServOutstandingCalling = -1;  /* Integer16 */
264 static int hf_mms_negociatedMaxServOutstandingCalled = -1;  /* Integer16 */
265 static int hf_mms_negociatedDataStructureNestingLevel = -1;  /* Integer8 */
266 static int hf_mms_mmsInitResponseDetail = -1;     /* InitResponseDetail */
267 static int hf_mms_negociatedVersionNumber = -1;   /* Integer16 */
268 static int hf_mms_negociatedParameterCBB = -1;    /* ParameterSupportOptions */
269 static int hf_mms_servicesSupportedCalled = -1;   /* ServiceSupportOptions */
270 static int hf_mms_originalInvokeID = -1;          /* Unsigned32 */
271 static int hf_mms_errorClass = -1;                /* T_errorClass */
272 static int hf_mms_vmd_state = -1;                 /* T_vmd_state */
273 static int hf_mms_application_reference = -1;     /* T_application_reference */
274 static int hf_mms_definition = -1;                /* T_definition */
275 static int hf_mms_resource = -1;                  /* T_resource */
276 static int hf_mms_service = -1;                   /* T_service */
277 static int hf_mms_service_preempt = -1;           /* T_service_preempt */
278 static int hf_mms_time_resolution = -1;           /* T_time_resolution */
279 static int hf_mms_access = -1;                    /* T_access */
280 static int hf_mms_initiate = -1;                  /* T_initiate */
281 static int hf_mms_conclude = -1;                  /* T_conclude */
282 static int hf_mms_cancel = -1;                    /* T_cancel */
283 static int hf_mms_file = -1;                      /* T_file */
284 static int hf_mms_others = -1;                    /* INTEGER */
285 static int hf_mms_additionalCode = -1;            /* INTEGER */
286 static int hf_mms_additionalDescription = -1;     /* VisibleString */
287 static int hf_mms_serviceSpecificInformation = -1;  /* T_serviceSpecificInformation */
288 static int hf_mms_obtainFile2 = -1;               /* ObtainFile_Error */
289 static int hf_mms_start2 = -1;                    /* Start_Error */
290 static int hf_mms_stop2 = -1;                     /* Stop_Error */
291 static int hf_mms_resume2 = -1;                   /* Resume_Error */
292 static int hf_mms_reset2 = -1;                    /* Reset_Error */
293 static int hf_mms_deleteVariableAccess2 = -1;     /* DeleteVariableAccess_Error */
294 static int hf_mms_deleteNamedVariableList2 = -1;  /* DeleteNamedVariableList_Error */
295 static int hf_mms_deleteNamedType2 = -1;          /* DeleteNamedType_Error */
296 static int hf_mms_defineEventEnrollment_Error = -1;  /* DefineEventEnrollment_Error */
297 static int hf_mms_fileRename2 = -1;               /* FileRename_Error */
298 static int hf_mms_rejectReason = -1;              /* T_rejectReason */
299 static int hf_mms_confirmed_requestPDU = -1;      /* T_confirmed_requestPDU */
300 static int hf_mms_confirmed_responsePDU = -1;     /* T_confirmed_responsePDU */
301 static int hf_mms_confirmed_errorPDU = -1;        /* T_confirmed_errorPDU */
302 static int hf_mms_unconfirmedPDU = -1;            /* T_unconfirmedPDU */
303 static int hf_mms_pdu_error = -1;                 /* T_pdu_error */
304 static int hf_mms_cancel_requestPDU = -1;         /* T_cancel_requestPDU */
305 static int hf_mms_cancel_responsePDU = -1;        /* T_cancel_responsePDU */
306 static int hf_mms_cancel_errorPDU = -1;           /* T_cancel_errorPDU */
307 static int hf_mms_conclude_requestPDU = -1;       /* T_conclude_requestPDU */
308 static int hf_mms_conclude_responsePDU = -1;      /* T_conclude_responsePDU */
309 static int hf_mms_conclude_errorPDU = -1;         /* T_conclude_errorPDU */
310 static int hf_mms_vmdLogicalStatus = -1;          /* T_vmdLogicalStatus */
311 static int hf_mms_vmdPhysicalStatus = -1;         /* T_vmdPhysicalStatus */
312 static int hf_mms_localDetail = -1;               /* BIT_STRING_SIZE_0_128 */
313 static int hf_mms_extendedObjectClass = -1;       /* T_extendedObjectClass */
314 static int hf_mms_objectClass = -1;               /* T_objectClass */
315 static int hf_mms_objectScope = -1;               /* T_objectScope */
316 static int hf_mms_vmdSpecific = -1;               /* NULL */
317 static int hf_mms_domainSpecific = -1;            /* Identifier */
318 static int hf_mms_aaSpecific = -1;                /* NULL */
319 static int hf_mms_continueAfter = -1;             /* Identifier */
320 static int hf_mms_listOfIdentifier = -1;          /* SEQUENCE_OF_Identifier */
321 static int hf_mms_listOfIdentifier_item = -1;     /* Identifier */
322 static int hf_mms_moreFollows = -1;               /* BOOLEAN */
323 static int hf_mms_vendorName = -1;                /* VisibleString */
324 static int hf_mms_modelName = -1;                 /* VisibleString */
325 static int hf_mms_revision = -1;                  /* VisibleString */
326 static int hf_mms_listOfAbstractSyntaxes = -1;    /* T_listOfAbstractSyntaxes */
327 static int hf_mms_listOfAbstractSyntaxes_item = -1;  /* OBJECT_IDENTIFIER */
328 static int hf_mms_extendedObjectClass1 = -1;      /* T_extendedObjectClass1 */
329 static int hf_mms_objectClass1 = -1;              /* T_objectClass1 */
330 static int hf_mms_currentName = -1;               /* ObjectName */
331 static int hf_mms_newIdentifier = -1;             /* Identifier */
332 static int hf_mms_continueAfter1 = -1;            /* VisibleString */
333 static int hf_mms_listOfCapabilities = -1;        /* T_listOfCapabilities */
334 static int hf_mms_listOfCapabilities_item = -1;   /* VisibleString */
335 static int hf_mms_domainName = -1;                /* Identifier */
336 static int hf_mms_listOfCapabilities1 = -1;       /* T_listOfCapabilities1 */
337 static int hf_mms_sharable = -1;                  /* BOOLEAN */
338 static int hf_mms_loadData = -1;                  /* T_loadData */
339 static int hf_mms_non_coded = -1;                 /* OCTET_STRING */
340 static int hf_mms_coded = -1;                     /* EXTERNAL */
341 static int hf_mms_discard = -1;                   /* ServiceError */
342 static int hf_mms_ulsmID = -1;                    /* Integer32 */
343 static int hf_mms_listOfCapabilities2 = -1;       /* T_listOfCapabilities2 */
344 static int hf_mms_loadData1 = -1;                 /* T_loadData1 */
345 static int hf_mms_listOfCapabilities3 = -1;       /* T_listOfCapabilities3 */
346 static int hf_mms_fileName = -1;                  /* FileName */
347 static int hf_mms_listOfCapabilities4 = -1;       /* T_listOfCapabilities4 */
348 static int hf_mms_thirdParty = -1;                /* ApplicationReference */
349 static int hf_mms_filenName = -1;                 /* FileName */
350 static int hf_mms_listOfCapabilities5 = -1;       /* T_listOfCapabilities5 */
351 static int hf_mms_state = -1;                     /* DomainState */
352 static int hf_mms_mmsDeletable = -1;              /* BOOLEAN */
353 static int hf_mms_listOfProgramInvocations = -1;  /* SEQUENCE_OF_Identifier */
354 static int hf_mms_listOfProgramInvocations_item = -1;  /* Identifier */
355 static int hf_mms_uploadInProgress = -1;          /* Integer8 */
356 static int hf_mms_programInvocationName = -1;     /* Identifier */
357 static int hf_mms_listOfDomainName = -1;          /* SEQUENCE_OF_Identifier */
358 static int hf_mms_listOfDomainName_item = -1;     /* Identifier */
359 static int hf_mms_reusable = -1;                  /* BOOLEAN */
360 static int hf_mms_monitorType = -1;               /* BOOLEAN */
361 static int hf_mms_executionArgument = -1;         /* T_executionArgument */
362 static int hf_mms_simpleString = -1;              /* VisibleString */
363 static int hf_mms_encodedString = -1;             /* EXTERNAL */
364 static int hf_mms_executionArgument1 = -1;        /* T_executionArgument1 */
365 static int hf_mms_state1 = -1;                    /* ProgramInvocationState */
366 static int hf_mms_listOfDomainNames = -1;         /* SEQUENCE_OF_Identifier */
367 static int hf_mms_listOfDomainNames_item = -1;    /* Identifier */
368 static int hf_mms_monitor = -1;                   /* BOOLEAN */
369 static int hf_mms_startArgument = -1;             /* VisibleString */
370 static int hf_mms_executionArgument2 = -1;        /* T_executionArgument2 */
371 static int hf_mms_typeName = -1;                  /* ObjectName */
372 static int hf_mms_array = -1;                     /* T_array */
373 static int hf_mms_packed = -1;                    /* BOOLEAN */
374 static int hf_mms_numberOfElements = -1;          /* Unsigned32 */
375 static int hf_mms_elementType = -1;               /* TypeSpecification */
376 static int hf_mms_structure = -1;                 /* T_structure */
377 static int hf_mms_components = -1;                /* T_components */
378 static int hf_mms_components_item = -1;           /* T_components_item */
379 static int hf_mms_componentName = -1;             /* Identifier */
380 static int hf_mms_componentType = -1;             /* TypeSpecification */
381 static int hf_mms_boolean = -1;                   /* NULL */
382 static int hf_mms_bit_string = -1;                /* Integer32 */
383 static int hf_mms_integer = -1;                   /* Unsigned8 */
384 static int hf_mms_unsigned = -1;                  /* Unsigned8 */
385 static int hf_mms_octet_string = -1;              /* Integer32 */
386 static int hf_mms_visible_string = -1;            /* Integer32 */
387 static int hf_mms_generalized_time = -1;          /* NULL */
388 static int hf_mms_binary_time = -1;               /* BOOLEAN */
389 static int hf_mms_bcd = -1;                       /* Unsigned8 */
390 static int hf_mms_objId = -1;                     /* NULL */
391 static int hf_mms_AlternateAccess_item = -1;      /* AlternateAccess_item */
392 static int hf_mms_unnamed = -1;                   /* AlternateAccessSelection */
393 static int hf_mms_named = -1;                     /* T_named */
394 static int hf_mms_accesst = -1;                   /* AlternateAccessSelection */
395 static int hf_mms_selectAccess = -1;              /* T_selectAccess */
396 static int hf_mms_component = -1;                 /* Identifier */
397 static int hf_mms_index = -1;                     /* Unsigned32 */
398 static int hf_mms_indexRange = -1;                /* T_indexRange */
399 static int hf_mms_lowIndex = -1;                  /* Unsigned32 */
400 static int hf_mms_allElements = -1;               /* NULL */
401 static int hf_mms_specificationWithResult = -1;   /* BOOLEAN */
402 static int hf_mms_variableAccessSpecificatn = -1;  /* VariableAccessSpecification */
403 static int hf_mms_listOfAccessResult = -1;        /* SEQUENCE_OF_AccessResult */
404 static int hf_mms_listOfAccessResult_item = -1;   /* AccessResult */
405 static int hf_mms_listOfData = -1;                /* SEQUENCE_OF_Data */
406 static int hf_mms_listOfData_item = -1;           /* Data */
407 static int hf_mms_Write_Response_item = -1;       /* Write_Response_item */
408 static int hf_mms_failure = -1;                   /* DataAccessError */
409 static int hf_mms_success = -1;                   /* NULL */
410 static int hf_mms_variableAccessSpecification = -1;  /* VariableAccessSpecification */
411 static int hf_mms_name = -1;                      /* ObjectName */
412 static int hf_mms_address = -1;                   /* Address */
413 static int hf_mms_typeSpecification = -1;         /* TypeSpecification */
414 static int hf_mms_variableName = -1;              /* ObjectName */
415 static int hf_mms_scatteredAccessName = -1;       /* ObjectName */
416 static int hf_mms_scatteredAccessDescription = -1;  /* ScatteredAccessDescription */
417 static int hf_mms_scopeOfDelete = -1;             /* T_scopeOfDelete */
418 static int hf_mms_listOfName = -1;                /* SEQUENCE_OF_ObjectName */
419 static int hf_mms_listOfName_item = -1;           /* ObjectName */
420 static int hf_mms_numberMatched = -1;             /* Unsigned32 */
421 static int hf_mms_numberDeleted = -1;             /* Unsigned32 */
422 static int hf_mms_variableListName = -1;          /* ObjectName */
423 static int hf_mms_listOfVariable = -1;            /* T_listOfVariable */
424 static int hf_mms_listOfVariable_item = -1;       /* T_listOfVariable_item */
425 static int hf_mms_variableSpecification = -1;     /* VariableSpecification */
426 static int hf_mms_alternateAccess = -1;           /* AlternateAccess */
427 static int hf_mms_listOfVariable1 = -1;           /* T_listOfVariable1 */
428 static int hf_mms_listOfVariable_item1 = -1;      /* T_listOfVariable_item1 */
429 static int hf_mms_scopeOfDelete1 = -1;            /* T_scopeOfDelete1 */
430 static int hf_mms_listOfVariableListName = -1;    /* SEQUENCE_OF_ObjectName */
431 static int hf_mms_listOfVariableListName_item = -1;  /* ObjectName */
432 static int hf_mms_scopeOfDelete2 = -1;            /* T_scopeOfDelete2 */
433 static int hf_mms_listOfTypeName = -1;            /* SEQUENCE_OF_ObjectName */
434 static int hf_mms_listOfTypeName_item = -1;       /* ObjectName */
435 static int hf_mms_success1 = -1;                  /* Data */
436 static int hf_mms_array1 = -1;                    /* SEQUENCE_OF_Data */
437 static int hf_mms_array_item = -1;                /* Data */
438 static int hf_mms_structure1 = -1;                /* SEQUENCE_OF_Data */
439 static int hf_mms_structure_item = -1;            /* Data */
440 static int hf_mms_boolean1 = -1;                  /* BOOLEAN */
441 static int hf_mms_bit_string1 = -1;               /* BIT_STRING */
442 static int hf_mms_integer1 = -1;                  /* INTEGER */
443 static int hf_mms_unsigned1 = -1;                 /* INTEGER */
444 static int hf_mms_floating_point = -1;            /* FloatingPoint */
445 static int hf_mms_octet_string1 = -1;             /* OCTET_STRING */
446 static int hf_mms_visible_string1 = -1;           /* VisibleString */
447 static int hf_mms_binary_time1 = -1;              /* TimeOfDay */
448 static int hf_mms_bcd1 = -1;                      /* INTEGER */
449 static int hf_mms_booleanArray = -1;              /* BIT_STRING */
450 static int hf_mms_listOfVariable2 = -1;           /* T_listOfVariable2 */
451 static int hf_mms_listOfVariable_item2 = -1;      /* T_listOfVariable_item2 */
452 static int hf_mms_ScatteredAccessDescription_item = -1;  /* ScatteredAccessDescription_item */
453 static int hf_mms_variableDescription = -1;       /* T_variableDescription */
454 static int hf_mms_invalidated = -1;               /* NULL */
455 static int hf_mms_numericAddress = -1;            /* Unsigned32 */
456 static int hf_mms_symbolicAddress = -1;           /* VisibleString */
457 static int hf_mms_unconstrainedAddress = -1;      /* OCTET_STRING */
458 static int hf_mms_semaphoreName = -1;             /* ObjectName */
459 static int hf_mms_namedToken = -1;                /* Identifier */
460 static int hf_mms_priority = -1;                  /* Priority */
461 static int hf_mms_acceptableDelay = -1;           /* Unsigned32 */
462 static int hf_mms_controlTimeOut = -1;            /* Unsigned32 */
463 static int hf_mms_abortOnTimeOut = -1;            /* BOOLEAN */
464 static int hf_mms_relinquishIfConnectionLost = -1;  /* BOOLEAN */
465 static int hf_mms_applicationToPreempt = -1;      /* ApplicationReference */
466 static int hf_mms_noResult = -1;                  /* NULL */
467 static int hf_mms_numbersOfTokens = -1;           /* Unsigned16 */
468 static int hf_mms_class = -1;                     /* T_class */
469 static int hf_mms_numberOfTokens = -1;            /* Unsigned16 */
470 static int hf_mms_numberOfOwnedTokens = -1;       /* Unsigned16 */
471 static int hf_mms_numberOfHungTokens = -1;        /* Unsigned16 */
472 static int hf_mms_nameToStartAfter = -1;          /* Identifier */
473 static int hf_mms_listOfNamedTokens = -1;         /* T_listOfNamedTokens */
474 static int hf_mms_listOfNamedTokens_item = -1;    /* T_listOfNamedTokens_item */
475 static int hf_mms_freeNamedToken = -1;            /* Identifier */
476 static int hf_mms_ownedNamedToken = -1;           /* Identifier */
477 static int hf_mms_hungNamedToken = -1;            /* Identifier */
478 static int hf_mms_state2 = -1;                    /* T_state */
479 static int hf_mms_entryIdToStartAfter = -1;       /* OCTET_STRING */
480 static int hf_mms_listOfSemaphoreEntry = -1;      /* SEQUENCE_OF_SemaphoreEntry */
481 static int hf_mms_listOfSemaphoreEntry_item = -1;  /* SemaphoreEntry */
482 static int hf_mms_entryId = -1;                   /* OCTET_STRING */
483 static int hf_mms_entryClass = -1;                /* T_entryClass */
484 static int hf_mms_applicationReference = -1;      /* ApplicationReference */
485 static int hf_mms_remainingTimeOut = -1;          /* Unsigned32 */
486 static int hf_mms_operatorStationName = -1;       /* Identifier */
487 static int hf_mms_echo = -1;                      /* BOOLEAN */
488 static int hf_mms_listOfPromptData = -1;          /* T_listOfPromptData */
489 static int hf_mms_listOfPromptData_item = -1;     /* VisibleString */
490 static int hf_mms_inputTimeOut = -1;              /* Unsigned32 */
491 static int hf_mms_listOfOutputData = -1;          /* T_listOfOutputData */
492 static int hf_mms_listOfOutputData_item = -1;     /* VisibleString */
493 static int hf_mms_eventConditionName = -1;        /* ObjectName */
494 static int hf_mms_class1 = -1;                    /* EC_Class */
495 static int hf_mms_prio_rity = -1;                 /* Priority */
496 static int hf_mms_severity = -1;                  /* Unsigned8 */
497 static int hf_mms_alarmSummaryReports = -1;       /* BOOLEAN */
498 static int hf_mms_monitoredVariable = -1;         /* VariableSpecification */
499 static int hf_mms_evaluationInterval = -1;        /* Unsigned32 */
500 static int hf_mms_specific = -1;                  /* SEQUENCE_OF_ObjectName */
501 static int hf_mms_specific_item = -1;             /* ObjectName */
502 static int hf_mms_aa_specific1 = -1;              /* NULL */
503 static int hf_mms_domain = -1;                    /* Identifier */
504 static int hf_mms_vmd = -1;                       /* NULL */
505 static int hf_mms_monitoredVariable1 = -1;        /* T_monitoredVariable */
506 static int hf_mms_variableReference = -1;         /* VariableSpecification */
507 static int hf_mms_undefined = -1;                 /* NULL */
508 static int hf_mms_currentState = -1;              /* EC_State */
509 static int hf_mms_numberOfEventEnrollments = -1;  /* Unsigned32 */
510 static int hf_mms_enabled = -1;                   /* BOOLEAN */
511 static int hf_mms_timeOfLastTransitionToActive = -1;  /* EventTime */
512 static int hf_mms_timeOfLastTransitionToIdle = -1;  /* EventTime */
513 static int hf_mms_eventActionName = -1;           /* ObjectName */
514 static int hf_mms_eventEnrollmentName = -1;       /* ObjectName */
515 static int hf_mms_eventConditionTransition = -1;  /* Transitions */
516 static int hf_mms_alarmAcknowledgementRule = -1;  /* AlarmAckRule */
517 static int hf_mms_clientApplication = -1;         /* ApplicationReference */
518 static int hf_mms_ec = -1;                        /* ObjectName */
519 static int hf_mms_ea = -1;                        /* ObjectName */
520 static int hf_mms_scopeOfRequest = -1;            /* T_scopeOfRequest */
521 static int hf_mms_eventEnrollmentNames = -1;      /* SEQUENCE_OF_ObjectName */
522 static int hf_mms_eventEnrollmentNames_item = -1;  /* ObjectName */
523 static int hf_mms_continueAfter2 = -1;            /* ObjectName */
524 static int hf_mms_eventConditionName1 = -1;       /* T_eventConditionName */
525 static int hf_mms_eventCondition = -1;            /* ObjectName */
526 static int hf_mms_eventActionName1 = -1;          /* T_eventActionName */
527 static int hf_mms_eventAction = -1;               /* ObjectName */
528 static int hf_mms_enrollmentClass = -1;           /* EE_Class */
529 static int hf_mms_duration = -1;                  /* EE_Duration */
530 static int hf_mms_remainingAcceptableDelay = -1;  /* Unsigned32 */
531 static int hf_mms_listOfEventEnrollment = -1;     /* SEQUENCE_OF_EventEnrollment */
532 static int hf_mms_listOfEventEnrollment_item = -1;  /* EventEnrollment */
533 static int hf_mms_eventConditionTransitions = -1;  /* Transitions */
534 static int hf_mms_notificationLost = -1;          /* BOOLEAN */
535 static int hf_mms_alarmAcknowledgmentRule = -1;   /* AlarmAckRule */
536 static int hf_mms_currentState1 = -1;             /* EE_State */
537 static int hf_mms_currentState2 = -1;             /* T_currentState */
538 static int hf_mms_state3 = -1;                    /* EE_State */
539 static int hf_mms_transitionTime = -1;            /* EventTime */
540 static int hf_mms_acknowledgedState = -1;         /* EC_State */
541 static int hf_mms_timeOfAcknowledgedTransition = -1;  /* EventTime */
542 static int hf_mms_enrollmentsOnly = -1;           /* BOOLEAN */
543 static int hf_mms_activeAlarmsOnly = -1;          /* BOOLEAN */
544 static int hf_mms_acknowledgmentFilter = -1;      /* T_acknowledgmentFilter */
545 static int hf_mms_severityFilter = -1;            /* T_severityFilter */
546 static int hf_mms_mostSevere = -1;                /* Unsigned8 */
547 static int hf_mms_leastSevere = -1;               /* Unsigned8 */
548 static int hf_mms_listOfAlarmSummary = -1;        /* SEQUENCE_OF_AlarmSummary */
549 static int hf_mms_listOfAlarmSummary_item = -1;   /* AlarmSummary */
550 static int hf_mms_unacknowledgedState = -1;       /* T_unacknowledgedState */
551 static int hf_mms_acknowledgmentFilter1 = -1;     /* T_acknowledgmentFilter1 */
552 static int hf_mms_severityFilter1 = -1;           /* T_severityFilter1 */
553 static int hf_mms_listOfAlarmEnrollmentSummary = -1;  /* SEQUENCE_OF_AlarmEnrollmentSummary */
554 static int hf_mms_listOfAlarmEnrollmentSummary_item = -1;  /* AlarmEnrollmentSummary */
555 static int hf_mms_enrollementState = -1;          /* EE_State */
556 static int hf_mms_timeActiveAcknowledged = -1;    /* EventTime */
557 static int hf_mms_timeIdleAcknowledged = -1;      /* EventTime */
558 static int hf_mms_eventConditionName2 = -1;       /* T_eventConditionName1 */
559 static int hf_mms_actionResult = -1;              /* T_actionResult */
560 static int hf_mms_eventActioName = -1;            /* ObjectName */
561 static int hf_mms_eventActionResult = -1;         /* T_eventActionResult */
562 static int hf_mms_success2 = -1;                  /* ConfirmedServiceResponse */
563 static int hf_mms_failure1 = -1;                  /* ServiceError */
564 static int hf_mms_causingTransitions = -1;        /* Transitions */
565 static int hf_mms_timeOfDayT = -1;                /* TimeOfDay */
566 static int hf_mms_timeSequenceIdentifier = -1;    /* Unsigned32 */
567 static int hf_mms_journalName = -1;               /* ObjectName */
568 static int hf_mms_rangeStartSpecification = -1;   /* T_rangeStartSpecification */
569 static int hf_mms_startingTime = -1;              /* TimeOfDay */
570 static int hf_mms_startingEntry = -1;             /* OCTET_STRING */
571 static int hf_mms_rangeStopSpecification = -1;    /* T_rangeStopSpecification */
572 static int hf_mms_endingTime = -1;                /* TimeOfDay */
573 static int hf_mms_numberOfEntries = -1;           /* Integer32 */
574 static int hf_mms_listOfVariables = -1;           /* T_listOfVariables */
575 static int hf_mms_listOfVariables_item = -1;      /* VisibleString */
576 static int hf_mms_entryToStartAfter = -1;         /* T_entryToStartAfter */
577 static int hf_mms_timeSpecification = -1;         /* TimeOfDay */
578 static int hf_mms_entrySpecification = -1;        /* OCTET_STRING */
579 static int hf_mms_listOfJournalEntry = -1;        /* SEQUENCE_OF_JournalEntry */
580 static int hf_mms_listOfJournalEntry_item = -1;   /* JournalEntry */
581 static int hf_mms_entryIdentifier = -1;           /* OCTET_STRING */
582 static int hf_mms_originatingApplication = -1;    /* ApplicationReference */
583 static int hf_mms_entryContent = -1;              /* EntryContent */
584 static int hf_mms_listOfJournalEntry1 = -1;       /* SEQUENCE_OF_EntryContent */
585 static int hf_mms_listOfJournalEntry_item1 = -1;  /* EntryContent */
586 static int hf_mms_limitSpecification = -1;        /* T_limitSpecification */
587 static int hf_mms_limitingTime = -1;              /* TimeOfDay */
588 static int hf_mms_limitingEntry = -1;             /* OCTET_STRING */
589 static int hf_mms_currentEntries = -1;            /* Unsigned32 */
590 static int hf_mms_occurenceTime = -1;             /* TimeOfDay */
591 static int hf_mms_additionalDetail = -1;          /* JOU_Additional_Detail */
592 static int hf_mms_entryForm = -1;                 /* T_entryForm */
593 static int hf_mms_data = -1;                      /* T_data */
594 static int hf_mms_event = -1;                     /* T_event */
595 static int hf_mms_listOfVariables1 = -1;          /* T_listOfVariables1 */
596 static int hf_mms_listOfVariables_item1 = -1;     /* T_listOfVariables_item */
597 static int hf_mms_variableTag = -1;               /* VisibleString */
598 static int hf_mms_valueSpecification = -1;        /* Data */
599 static int hf_mms_annotation = -1;                /* VisibleString */
600 static int hf_mms_sourceFileServer = -1;          /* ApplicationReference */
601 static int hf_mms_sourceFile = -1;                /* FileName */
602 static int hf_mms_destinationFile = -1;           /* FileName */
603 static int hf_mms_initialPosition = -1;           /* Unsigned32 */
604 static int hf_mms_frsmID = -1;                    /* Integer32 */
605 static int hf_mms_fileAttributes = -1;            /* FileAttributes */
606 static int hf_mms_fileData = -1;                  /* OCTET_STRING */
607 static int hf_mms_currentFileName = -1;           /* FileName */
608 static int hf_mms_newFileName = -1;               /* FileName */
609 static int hf_mms_fileSpecification = -1;         /* FileName */
610 static int hf_mms_continueAfter3 = -1;            /* FileName */
611 static int hf_mms_listOfDirectoryEntry = -1;      /* SEQUENCE_OF_DirectoryEntry */
612 static int hf_mms_listOfDirectoryEntry_item = -1;  /* DirectoryEntry */
613 static int hf_mms_filename = -1;                  /* FileName */
614 static int hf_mms_sizeOfFile = -1;                /* Unsigned32 */
615 static int hf_mms_lastModified = -1;              /* GeneralizedTime */
616 /* named bits */
617 static int hf_mms_ParameterSupportOptions_str1 = -1;
618 static int hf_mms_ParameterSupportOptions_str2 = -1;
619 static int hf_mms_ParameterSupportOptions_vnam = -1;
620 static int hf_mms_ParameterSupportOptions_valt = -1;
621 static int hf_mms_ParameterSupportOptions_vadr = -1;
622 static int hf_mms_ParameterSupportOptions_vsca = -1;
623 static int hf_mms_ParameterSupportOptions_tpy = -1;
624 static int hf_mms_ParameterSupportOptions_vlis = -1;
625 static int hf_mms_ParameterSupportOptions_real = -1;
626 static int hf_mms_ParameterSupportOptions_cei = -1;
627 static int hf_mms_ServiceSupportOptions_status = -1;
628 static int hf_mms_ServiceSupportOptions_getNameList = -1;
629 static int hf_mms_ServiceSupportOptions_identify = -1;
630 static int hf_mms_ServiceSupportOptions_rename = -1;
631 static int hf_mms_ServiceSupportOptions_read = -1;
632 static int hf_mms_ServiceSupportOptions_write = -1;
633 static int hf_mms_ServiceSupportOptions_getVariableAccessAttributes = -1;
634 static int hf_mms_ServiceSupportOptions_defineNamedVariable = -1;
635 static int hf_mms_ServiceSupportOptions_defineScatteredAccess = -1;
636 static int hf_mms_ServiceSupportOptions_getScatteredAccessAttributes = -1;
637 static int hf_mms_ServiceSupportOptions_deleteVariableAccess = -1;
638 static int hf_mms_ServiceSupportOptions_defineNamedVariableList = -1;
639 static int hf_mms_ServiceSupportOptions_getNamedVariableListAttributes = -1;
640 static int hf_mms_ServiceSupportOptions_deleteNamedVariableList = -1;
641 static int hf_mms_ServiceSupportOptions_defineNamedType = -1;
642 static int hf_mms_ServiceSupportOptions_getNamedTypeAttributes = -1;
643 static int hf_mms_ServiceSupportOptions_deleteNamedType = -1;
644 static int hf_mms_ServiceSupportOptions_input = -1;
645 static int hf_mms_ServiceSupportOptions_output = -1;
646 static int hf_mms_ServiceSupportOptions_takeControl = -1;
647 static int hf_mms_ServiceSupportOptions_relinquishControl = -1;
648 static int hf_mms_ServiceSupportOptions_defineSemaphore = -1;
649 static int hf_mms_ServiceSupportOptions_deleteSemaphore = -1;
650 static int hf_mms_ServiceSupportOptions_reportSemaphoreStatus = -1;
651 static int hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus = -1;
652 static int hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus = -1;
653 static int hf_mms_ServiceSupportOptions_initiateDownloadSequence = -1;
654 static int hf_mms_ServiceSupportOptions_downloadSegment = -1;
655 static int hf_mms_ServiceSupportOptions_terminateDownloadSequence = -1;
656 static int hf_mms_ServiceSupportOptions_initiateUploadSequence = -1;
657 static int hf_mms_ServiceSupportOptions_uploadSegment = -1;
658 static int hf_mms_ServiceSupportOptions_terminateUploadSequence = -1;
659 static int hf_mms_ServiceSupportOptions_requestDomainDownload = -1;
660 static int hf_mms_ServiceSupportOptions_requestDomainUpload = -1;
661 static int hf_mms_ServiceSupportOptions_loadDomainContent = -1;
662 static int hf_mms_ServiceSupportOptions_storeDomainContent = -1;
663 static int hf_mms_ServiceSupportOptions_deleteDomain = -1;
664 static int hf_mms_ServiceSupportOptions_getDomainAttributes = -1;
665 static int hf_mms_ServiceSupportOptions_createProgramInvocation = -1;
666 static int hf_mms_ServiceSupportOptions_deleteProgramInvocation = -1;
667 static int hf_mms_ServiceSupportOptions_start = -1;
668 static int hf_mms_ServiceSupportOptions_stop = -1;
669 static int hf_mms_ServiceSupportOptions_resume = -1;
670 static int hf_mms_ServiceSupportOptions_reset = -1;
671 static int hf_mms_ServiceSupportOptions_kill = -1;
672 static int hf_mms_ServiceSupportOptions_getProgramInvocationAttributes = -1;
673 static int hf_mms_ServiceSupportOptions_obtainFile = -1;
674 static int hf_mms_ServiceSupportOptions_defineEventCondition = -1;
675 static int hf_mms_ServiceSupportOptions_deleteEventCondition = -1;
676 static int hf_mms_ServiceSupportOptions_getEventConditionAttributes = -1;
677 static int hf_mms_ServiceSupportOptions_reportEventConditionStatus = -1;
678 static int hf_mms_ServiceSupportOptions_alterEventConditionMonitoring = -1;
679 static int hf_mms_ServiceSupportOptions_triggerEvent = -1;
680 static int hf_mms_ServiceSupportOptions_defineEventAction = -1;
681 static int hf_mms_ServiceSupportOptions_deleteEventAction = -1;
682 static int hf_mms_ServiceSupportOptions_getEventActionAttributes = -1;
683 static int hf_mms_ServiceSupportOptions_reportActionStatus = -1;
684 static int hf_mms_ServiceSupportOptions_defineEventEnrollment = -1;
685 static int hf_mms_ServiceSupportOptions_deleteEventEnrollment = -1;
686 static int hf_mms_ServiceSupportOptions_alterEventEnrollment = -1;
687 static int hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus = -1;
688 static int hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes = -1;
689 static int hf_mms_ServiceSupportOptions_acknowledgeEventNotification = -1;
690 static int hf_mms_ServiceSupportOptions_getAlarmSummary = -1;
691 static int hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary = -1;
692 static int hf_mms_ServiceSupportOptions_readJournal = -1;
693 static int hf_mms_ServiceSupportOptions_writeJournal = -1;
694 static int hf_mms_ServiceSupportOptions_initializeJournal = -1;
695 static int hf_mms_ServiceSupportOptions_reportJournalStatus = -1;
696 static int hf_mms_ServiceSupportOptions_createJournal = -1;
697 static int hf_mms_ServiceSupportOptions_deleteJournal = -1;
698 static int hf_mms_ServiceSupportOptions_getCapabilityList = -1;
699 static int hf_mms_ServiceSupportOptions_fileOpen = -1;
700 static int hf_mms_ServiceSupportOptions_fileRead = -1;
701 static int hf_mms_ServiceSupportOptions_fileClose = -1;
702 static int hf_mms_ServiceSupportOptions_fileRename = -1;
703 static int hf_mms_ServiceSupportOptions_fileDelete = -1;
704 static int hf_mms_ServiceSupportOptions_fileDirectory = -1;
705 static int hf_mms_ServiceSupportOptions_unsolicitedStatus = -1;
706 static int hf_mms_ServiceSupportOptions_informationReport = -1;
707 static int hf_mms_ServiceSupportOptions_eventNotification = -1;
708 static int hf_mms_ServiceSupportOptions_attachToEventCondition = -1;
709 static int hf_mms_ServiceSupportOptions_attachToSemaphore = -1;
710 static int hf_mms_ServiceSupportOptions_conclude = -1;
711 static int hf_mms_ServiceSupportOptions_cancel = -1;
712 static int hf_mms_Transitions_idle_to_disabled = -1;
713 static int hf_mms_Transitions_active_to_disabled = -1;
714 static int hf_mms_Transitions_disabled_to_idle = -1;
715 static int hf_mms_Transitions_active_to_idle = -1;
716 static int hf_mms_Transitions_disabled_to_active = -1;
717 static int hf_mms_Transitions_idle_to_active = -1;
718 static int hf_mms_Transitions_any_to_deleted = -1;
719
720 /*--- End of included file: packet-mms-hf.c ---*/
721 #line 49 "packet-mms-template.c"
722
723 /* Initialize the subtree pointers */
724 static gint ett_mms = -1;
725
726 /*--- Included file: packet-mms-ett.c ---*/
727 #line 1 "packet-mms-ett.c"
728 static gint ett_mms_MMSpdu = -1;
729 static gint ett_mms_Confirmed_RequestPDU = -1;
730 static gint ett_mms_SEQUENCE_OF_Modifier = -1;
731 static gint ett_mms_Unconfirmed_PDU = -1;
732 static gint ett_mms_Confirmed_ResponsePDU = -1;
733 static gint ett_mms_Confirmed_ErrorPDU = -1;
734 static gint ett_mms_UnconfirmedService = -1;
735 static gint ett_mms_Modifier = -1;
736 static gint ett_mms_ConfirmedServiceRequest = -1;
737 static gint ett_mms_CS_Request_Detail = -1;
738 static gint ett_mms_ConfirmedServiceResponse = -1;
739 static gint ett_mms_FileName = -1;
740 static gint ett_mms_ObjectName = -1;
741 static gint ett_mms_T_domain_specific = -1;
742 static gint ett_mms_ApplicationReference = -1;
743 static gint ett_mms_Initiate_RequestPDU = -1;
744 static gint ett_mms_InitRequestDetail = -1;
745 static gint ett_mms_Initiate_ResponsePDU = -1;
746 static gint ett_mms_InitResponseDetail = -1;
747 static gint ett_mms_ParameterSupportOptions = -1;
748 static gint ett_mms_ServiceSupportOptions = -1;
749 static gint ett_mms_Cancel_ErrorPDU = -1;
750 static gint ett_mms_ServiceError = -1;
751 static gint ett_mms_T_errorClass = -1;
752 static gint ett_mms_T_serviceSpecificInformation = -1;
753 static gint ett_mms_RejectPDU = -1;
754 static gint ett_mms_T_rejectReason = -1;
755 static gint ett_mms_Status_Response = -1;
756 static gint ett_mms_GetNameList_Request = -1;
757 static gint ett_mms_T_extendedObjectClass = -1;
758 static gint ett_mms_T_objectScope = -1;
759 static gint ett_mms_GetNameList_Response = -1;
760 static gint ett_mms_SEQUENCE_OF_Identifier = -1;
761 static gint ett_mms_Identify_Response = -1;
762 static gint ett_mms_T_listOfAbstractSyntaxes = -1;
763 static gint ett_mms_Rename_Request = -1;
764 static gint ett_mms_T_extendedObjectClass1 = -1;
765 static gint ett_mms_GetCapabilityList_Request = -1;
766 static gint ett_mms_GetCapabilityList_Response = -1;
767 static gint ett_mms_T_listOfCapabilities = -1;
768 static gint ett_mms_InitiateDownloadSequence_Request = -1;
769 static gint ett_mms_T_listOfCapabilities1 = -1;
770 static gint ett_mms_DownloadSegment_Response = -1;
771 static gint ett_mms_T_loadData = -1;
772 static gint ett_mms_TerminateDownloadSequence_Request = -1;
773 static gint ett_mms_InitiateUploadSequence_Response = -1;
774 static gint ett_mms_T_listOfCapabilities2 = -1;
775 static gint ett_mms_UploadSegment_Response = -1;
776 static gint ett_mms_T_loadData1 = -1;
777 static gint ett_mms_RequestDomainDownload_Request = -1;
778 static gint ett_mms_T_listOfCapabilities3 = -1;
779 static gint ett_mms_RequestDomainUpload_Request = -1;
780 static gint ett_mms_LoadDomainContent_Request = -1;
781 static gint ett_mms_T_listOfCapabilities4 = -1;
782 static gint ett_mms_StoreDomainContent_Request = -1;
783 static gint ett_mms_GetDomainAttributes_Response = -1;
784 static gint ett_mms_T_listOfCapabilities5 = -1;
785 static gint ett_mms_CreateProgramInvocation_Request = -1;
786 static gint ett_mms_Start_Request = -1;
787 static gint ett_mms_T_executionArgument = -1;
788 static gint ett_mms_Stop_Request = -1;
789 static gint ett_mms_Resume_Request = -1;
790 static gint ett_mms_T_executionArgument1 = -1;
791 static gint ett_mms_Reset_Request = -1;
792 static gint ett_mms_Kill_Request = -1;
793 static gint ett_mms_GetProgramInvocationAttributes_Response = -1;
794 static gint ett_mms_T_executionArgument2 = -1;
795 static gint ett_mms_TypeSpecification = -1;
796 static gint ett_mms_T_array = -1;
797 static gint ett_mms_T_structure = -1;
798 static gint ett_mms_T_components = -1;
799 static gint ett_mms_T_components_item = -1;
800 static gint ett_mms_AlternateAccess = -1;
801 static gint ett_mms_AlternateAccess_item = -1;
802 static gint ett_mms_T_named = -1;
803 static gint ett_mms_AlternateAccessSelection = -1;
804 static gint ett_mms_T_selectAccess = -1;
805 static gint ett_mms_T_indexRange = -1;
806 static gint ett_mms_Read_Request = -1;
807 static gint ett_mms_Read_Response = -1;
808 static gint ett_mms_SEQUENCE_OF_AccessResult = -1;
809 static gint ett_mms_Write_Request = -1;
810 static gint ett_mms_SEQUENCE_OF_Data = -1;
811 static gint ett_mms_Write_Response = -1;
812 static gint ett_mms_Write_Response_item = -1;
813 static gint ett_mms_InformationReport = -1;
814 static gint ett_mms_GetVariableAccessAttributes_Request = -1;
815 static gint ett_mms_GetVariableAccessAttributes_Response = -1;
816 static gint ett_mms_DefineNamedVariable_Request = -1;
817 static gint ett_mms_DefineScatteredAccess_Request = -1;
818 static gint ett_mms_GetScatteredAccessAttributes_Response = -1;
819 static gint ett_mms_DeleteVariableAccess_Request = -1;
820 static gint ett_mms_SEQUENCE_OF_ObjectName = -1;
821 static gint ett_mms_DeleteVariableAccess_Response = -1;
822 static gint ett_mms_DefineNamedVariableList_Request = -1;
823 static gint ett_mms_T_listOfVariable = -1;
824 static gint ett_mms_T_listOfVariable_item = -1;
825 static gint ett_mms_GetNamedVariableListAttributes_Response = -1;
826 static gint ett_mms_T_listOfVariable1 = -1;
827 static gint ett_mms_T_listOfVariable_item1 = -1;
828 static gint ett_mms_DeleteNamedVariableList_Request = -1;
829 static gint ett_mms_DeleteNamedVariableList_Response = -1;
830 static gint ett_mms_DefineNamedType_Request = -1;
831 static gint ett_mms_GetNamedTypeAttributes_Response = -1;
832 static gint ett_mms_DeleteNamedType_Request = -1;
833 static gint ett_mms_DeleteNamedType_Response = -1;
834 static gint ett_mms_AccessResult = -1;
835 static gint ett_mms_Data = -1;
836 static gint ett_mms_VariableAccessSpecification = -1;
837 static gint ett_mms_T_listOfVariable2 = -1;
838 static gint ett_mms_T_listOfVariable_item2 = -1;
839 static gint ett_mms_ScatteredAccessDescription = -1;
840 static gint ett_mms_ScatteredAccessDescription_item = -1;
841 static gint ett_mms_VariableSpecification = -1;
842 static gint ett_mms_T_variableDescription = -1;
843 static gint ett_mms_Address = -1;
844 static gint ett_mms_TakeControl_Request = -1;
845 static gint ett_mms_TakeControl_Response = -1;
846 static gint ett_mms_RelinquishControl_Request = -1;
847 static gint ett_mms_DefineSemaphore_Request = -1;
848 static gint ett_mms_ReportSemaphoreStatus_Response = -1;
849 static gint ett_mms_ReportPoolSemaphoreStatus_Request = -1;
850 static gint ett_mms_ReportPoolSemaphoreStatus_Response = -1;
851 static gint ett_mms_T_listOfNamedTokens = -1;
852 static gint ett_mms_T_listOfNamedTokens_item = -1;
853 static gint ett_mms_ReportSemaphoreEntryStatus_Request = -1;
854 static gint ett_mms_ReportSemaphoreEntryStatus_Response = -1;
855 static gint ett_mms_SEQUENCE_OF_SemaphoreEntry = -1;
856 static gint ett_mms_AttachToSemaphore = -1;
857 static gint ett_mms_SemaphoreEntry = -1;
858 static gint ett_mms_Input_Request = -1;
859 static gint ett_mms_T_listOfPromptData = -1;
860 static gint ett_mms_Output_Request = -1;
861 static gint ett_mms_T_listOfOutputData = -1;
862 static gint ett_mms_DefineEventCondition_Request = -1;
863 static gint ett_mms_DeleteEventCondition_Request = -1;
864 static gint ett_mms_GetEventConditionAttributes_Response = -1;
865 static gint ett_mms_T_monitoredVariable = -1;
866 static gint ett_mms_ReportEventConditionStatus_Response = -1;
867 static gint ett_mms_AlterEventConditionMonitoring_Request = -1;
868 static gint ett_mms_TriggerEvent_Request = -1;
869 static gint ett_mms_DefineEventAction_Request = -1;
870 static gint ett_mms_DeleteEventAction_Request = -1;
871 static gint ett_mms_GetEventActionAttributes_Response = -1;
872 static gint ett_mms_DefineEventEnrollment_Request = -1;
873 static gint ett_mms_DeleteEventEnrollment_Request = -1;
874 static gint ett_mms_GetEventEnrollmentAttributes_Request = -1;
875 static gint ett_mms_EventEnrollment = -1;
876 static gint ett_mms_T_eventConditionName = -1;
877 static gint ett_mms_T_eventActionName = -1;
878 static gint ett_mms_GetEventEnrollmentAttributes_Response = -1;
879 static gint ett_mms_SEQUENCE_OF_EventEnrollment = -1;
880 static gint ett_mms_ReportEventEnrollmentStatus_Response = -1;
881 static gint ett_mms_AlterEventEnrollment_Request = -1;
882 static gint ett_mms_AlterEventEnrollment_Response = -1;
883 static gint ett_mms_T_currentState = -1;
884 static gint ett_mms_AcknowledgeEventNotification_Request = -1;
885 static gint ett_mms_GetAlarmSummary_Request = -1;
886 static gint ett_mms_T_severityFilter = -1;
887 static gint ett_mms_GetAlarmSummary_Response = -1;
888 static gint ett_mms_SEQUENCE_OF_AlarmSummary = -1;
889 static gint ett_mms_AlarmSummary = -1;
890 static gint ett_mms_GetAlarmEnrollmentSummary_Request = -1;
891 static gint ett_mms_T_severityFilter1 = -1;
892 static gint ett_mms_GetAlarmEnrollmentSummary_Response = -1;
893 static gint ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary = -1;
894 static gint ett_mms_AlarmEnrollmentSummary = -1;
895 static gint ett_mms_EventNotification = -1;
896 static gint ett_mms_T_eventConditionName1 = -1;
897 static gint ett_mms_T_actionResult = -1;
898 static gint ett_mms_T_eventActionResult = -1;
899 static gint ett_mms_AttachToEventCondition = -1;
900 static gint ett_mms_EventTime = -1;
901 static gint ett_mms_Transitions = -1;
902 static gint ett_mms_ReadJournal_Request = -1;
903 static gint ett_mms_T_rangeStartSpecification = -1;
904 static gint ett_mms_T_rangeStopSpecification = -1;
905 static gint ett_mms_T_listOfVariables = -1;
906 static gint ett_mms_T_entryToStartAfter = -1;
907 static gint ett_mms_ReadJournal_Response = -1;
908 static gint ett_mms_SEQUENCE_OF_JournalEntry = -1;
909 static gint ett_mms_JournalEntry = -1;
910 static gint ett_mms_WriteJournal_Request = -1;
911 static gint ett_mms_SEQUENCE_OF_EntryContent = -1;
912 static gint ett_mms_InitializeJournal_Request = -1;
913 static gint ett_mms_T_limitSpecification = -1;
914 static gint ett_mms_ReportJournalStatus_Response = -1;
915 static gint ett_mms_CreateJournal_Request = -1;
916 static gint ett_mms_DeleteJournal_Request = -1;
917 static gint ett_mms_EntryContent = -1;
918 static gint ett_mms_T_entryForm = -1;
919 static gint ett_mms_T_data = -1;
920 static gint ett_mms_T_event = -1;
921 static gint ett_mms_T_listOfVariables1 = -1;
922 static gint ett_mms_T_listOfVariables_item = -1;
923 static gint ett_mms_ObtainFile_Request = -1;
924 static gint ett_mms_FileOpen_Request = -1;
925 static gint ett_mms_FileOpen_Response = -1;
926 static gint ett_mms_FileRead_Response = -1;
927 static gint ett_mms_FileRename_Request = -1;
928 static gint ett_mms_FileDirectory_Request = -1;
929 static gint ett_mms_FileDirectory_Response = -1;
930 static gint ett_mms_SEQUENCE_OF_DirectoryEntry = -1;
931 static gint ett_mms_DirectoryEntry = -1;
932 static gint ett_mms_FileAttributes = -1;
933
934 /*--- End of included file: packet-mms-ett.c ---*/
935 #line 53 "packet-mms-template.c"
936
937
938 /*--- Included file: packet-mms-fn.c ---*/
939 #line 1 "packet-mms-fn.c"
940 /*--- Cyclic dependencies ---*/
941
942 /* TypeSpecification -> TypeSpecification/array -> TypeSpecification */
943 /* TypeSpecification -> TypeSpecification/structure -> TypeSpecification/structure/components -> TypeSpecification/structure/components/_item -> TypeSpecification */
944 static int dissect_mms_TypeSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
945
946 static int dissect_elementType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
947   return dissect_mms_TypeSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_elementType);
948 }
949 static int dissect_componentType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
950   return dissect_mms_TypeSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_componentType);
951 }
952 static int dissect_typeSpecification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
953   return dissect_mms_TypeSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_typeSpecification);
954 }
955
956 /* VariableSpecification -> ScatteredAccessDescription -> ScatteredAccessDescription/_item -> VariableSpecification */
957 static int dissect_mms_VariableSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
958
959 static int dissect_variableSpecification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
960   return dissect_mms_VariableSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_variableSpecification);
961 }
962 static int dissect_monitoredVariable(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
963   return dissect_mms_VariableSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_monitoredVariable);
964 }
965 static int dissect_variableReference(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
966   return dissect_mms_VariableSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_variableReference);
967 }
968
969 /* Data -> Data/array -> Data */
970 static int dissect_mms_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
971
972 static int dissect_listOfData_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
973   return dissect_mms_Data(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfData_item);
974 }
975 static int dissect_success1(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
976   return dissect_mms_Data(FALSE, tvb, offset, pinfo, tree, hf_mms_success1);
977 }
978 static int dissect_array_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
979   return dissect_mms_Data(FALSE, tvb, offset, pinfo, tree, hf_mms_array_item);
980 }
981 static int dissect_structure_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
982   return dissect_mms_Data(FALSE, tvb, offset, pinfo, tree, hf_mms_structure_item);
983 }
984 static int dissect_valueSpecification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
985   return dissect_mms_Data(FALSE, tvb, offset, pinfo, tree, hf_mms_valueSpecification);
986 }
987
988
989 /*--- Fields for imported types ---*/
990
991 static int dissect_coded(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
992   return dissect_acse_EXTERNAL(FALSE, tvb, offset, pinfo, tree, hf_mms_coded);
993 }
994 static int dissect_encodedString(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
995   return dissect_acse_EXTERNAL(FALSE, tvb, offset, pinfo, tree, hf_mms_encodedString);
996 }
997
998
999
1000 static int
1001 dissect_mms_Unsigned32(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1002   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1003                                   NULL);
1004
1005   return offset;
1006 }
1007 static int dissect_invokeID(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1008   return dissect_mms_Unsigned32(FALSE, tvb, offset, pinfo, tree, hf_mms_invokeID);
1009 }
1010 static int dissect_invokeID_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1011   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_invokeID);
1012 }
1013 static int dissect_modifierPosition_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1014   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_modifierPosition);
1015 }
1016 static int dissect_originalInvokeID_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1017   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_originalInvokeID);
1018 }
1019 static int dissect_numberOfElements_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1020   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfElements);
1021 }
1022 static int dissect_index_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1023   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_index);
1024 }
1025 static int dissect_lowIndex_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1026   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_lowIndex);
1027 }
1028 static int dissect_numberMatched_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1029   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_numberMatched);
1030 }
1031 static int dissect_numberDeleted_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1032   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_numberDeleted);
1033 }
1034 static int dissect_numericAddress_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1035   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_numericAddress);
1036 }
1037 static int dissect_acceptableDelay_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1038   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_acceptableDelay);
1039 }
1040 static int dissect_controlTimeOut_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1041   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_controlTimeOut);
1042 }
1043 static int dissect_remainingTimeOut_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1044   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_remainingTimeOut);
1045 }
1046 static int dissect_inputTimeOut_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1047   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_inputTimeOut);
1048 }
1049 static int dissect_evaluationInterval_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1050   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_evaluationInterval);
1051 }
1052 static int dissect_numberOfEventEnrollments_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1053   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfEventEnrollments);
1054 }
1055 static int dissect_remainingAcceptableDelay_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1056   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_remainingAcceptableDelay);
1057 }
1058 static int dissect_timeSequenceIdentifier_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1059   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_timeSequenceIdentifier);
1060 }
1061 static int dissect_currentEntries_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1062   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_currentEntries);
1063 }
1064 static int dissect_initialPosition_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1065   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_initialPosition);
1066 }
1067 static int dissect_sizeOfFile_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1068   return dissect_mms_Unsigned32(TRUE, tvb, offset, pinfo, tree, hf_mms_sizeOfFile);
1069 }
1070
1071
1072
1073 static int
1074 dissect_mms_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1075   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
1076                                             pinfo, tree, tvb, offset, hf_index,
1077                                             NULL);
1078
1079   return offset;
1080 }
1081 static int dissect_vmd_specific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1082   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_vmd_specific);
1083 }
1084 static int dissect_domainId(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1085   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_domainId);
1086 }
1087 static int dissect_itemId(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1088   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_itemId);
1089 }
1090 static int dissect_aa_specific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1091   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_aa_specific);
1092 }
1093 static int dissect_domainSpecific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1094   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_domainSpecific);
1095 }
1096 static int dissect_continueAfter_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1097   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_continueAfter);
1098 }
1099 static int dissect_listOfIdentifier_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1100   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfIdentifier_item);
1101 }
1102 static int dissect_newIdentifier_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1103   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_newIdentifier);
1104 }
1105 static int dissect_domainName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1106   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_domainName);
1107 }
1108 static int dissect_listOfProgramInvocations_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1109   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfProgramInvocations_item);
1110 }
1111 static int dissect_programInvocationName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1112   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_programInvocationName);
1113 }
1114 static int dissect_listOfDomainName_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1115   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfDomainName_item);
1116 }
1117 static int dissect_listOfDomainNames_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1118   return dissect_mms_Identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfDomainNames_item);
1119 }
1120 static int dissect_componentName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1121   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_componentName);
1122 }
1123 static int dissect_component_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1124   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_component);
1125 }
1126 static int dissect_namedToken_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1127   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_namedToken);
1128 }
1129 static int dissect_nameToStartAfter_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1130   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_nameToStartAfter);
1131 }
1132 static int dissect_freeNamedToken_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1133   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_freeNamedToken);
1134 }
1135 static int dissect_ownedNamedToken_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1136   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_ownedNamedToken);
1137 }
1138 static int dissect_hungNamedToken_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1139   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_hungNamedToken);
1140 }
1141 static int dissect_operatorStationName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1142   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_operatorStationName);
1143 }
1144 static int dissect_domain_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1145   return dissect_mms_Identifier(TRUE, tvb, offset, pinfo, tree, hf_mms_domain);
1146 }
1147
1148
1149 static const ber_sequence_t T_domain_specific_sequence[] = {
1150   { BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_domainId },
1151   { BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_itemId },
1152   { 0, 0, 0, NULL }
1153 };
1154
1155 static int
1156 dissect_mms_T_domain_specific(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1157   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1158                                    T_domain_specific_sequence, hf_index, ett_mms_T_domain_specific);
1159
1160   return offset;
1161 }
1162 static int dissect_domain_specific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1163   return dissect_mms_T_domain_specific(TRUE, tvb, offset, pinfo, tree, hf_mms_domain_specific);
1164 }
1165
1166
1167 static const value_string mms_ObjectName_vals[] = {
1168   {   0, "vmd-specific" },
1169   {   1, "domain-specific" },
1170   {   2, "aa-specific" },
1171   { 0, NULL }
1172 };
1173
1174 static const ber_choice_t ObjectName_choice[] = {
1175   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_vmd_specific_impl },
1176   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_domain_specific_impl },
1177   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_aa_specific_impl },
1178   { 0, 0, 0, 0, NULL }
1179 };
1180
1181 static int
1182 dissect_mms_ObjectName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1183   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1184                                  ObjectName_choice, hf_index, ett_mms_ObjectName,
1185                                  NULL);
1186
1187   return offset;
1188 }
1189 static int dissect_currentName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1190   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_currentName);
1191 }
1192 static int dissect_typeName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1193   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_typeName);
1194 }
1195 static int dissect_name(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1196   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_name);
1197 }
1198 static int dissect_variableName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1199   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_variableName);
1200 }
1201 static int dissect_scatteredAccessName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1202   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_scatteredAccessName);
1203 }
1204 static int dissect_listOfName_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1205   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfName_item);
1206 }
1207 static int dissect_variableListName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1208   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_variableListName);
1209 }
1210 static int dissect_listOfVariableListName_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1211   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfVariableListName_item);
1212 }
1213 static int dissect_listOfTypeName_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1214   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfTypeName_item);
1215 }
1216 static int dissect_semaphoreName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1217   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_semaphoreName);
1218 }
1219 static int dissect_eventConditionName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1220   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventConditionName);
1221 }
1222 static int dissect_specific_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1223   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_specific_item);
1224 }
1225 static int dissect_eventActionName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1226   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventActionName);
1227 }
1228 static int dissect_eventEnrollmentName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1229   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventEnrollmentName);
1230 }
1231 static int dissect_ec(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1232   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_ec);
1233 }
1234 static int dissect_ea(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1235   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_ea);
1236 }
1237 static int dissect_eventEnrollmentNames_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1238   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventEnrollmentNames_item);
1239 }
1240 static int dissect_continueAfter2(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1241   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_continueAfter2);
1242 }
1243 static int dissect_eventCondition(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1244   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventCondition);
1245 }
1246 static int dissect_eventAction(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1247   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventAction);
1248 }
1249 static int dissect_eventActioName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1250   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_eventActioName);
1251 }
1252 static int dissect_journalName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1253   return dissect_mms_ObjectName(FALSE, tvb, offset, pinfo, tree, hf_mms_journalName);
1254 }
1255
1256
1257 static const asn_namedbit Transitions_bits[] = {
1258   {  0, &hf_mms_Transitions_idle_to_disabled, -1, -1, "idle-to-disabled", NULL },
1259   {  1, &hf_mms_Transitions_active_to_disabled, -1, -1, "active-to-disabled", NULL },
1260   {  2, &hf_mms_Transitions_disabled_to_idle, -1, -1, "disabled-to-idle", NULL },
1261   {  3, &hf_mms_Transitions_active_to_idle, -1, -1, "active-to-idle", NULL },
1262   {  4, &hf_mms_Transitions_disabled_to_active, -1, -1, "disabled-to-active", NULL },
1263   {  5, &hf_mms_Transitions_idle_to_active, -1, -1, "idle-to-active", NULL },
1264   {  6, &hf_mms_Transitions_any_to_deleted, -1, -1, "any-to-deleted", NULL },
1265   { 0, NULL, 0, 0, NULL, NULL }
1266 };
1267
1268 static int
1269 dissect_mms_Transitions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1270   offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
1271                                     Transitions_bits, hf_index, ett_mms_Transitions,
1272                                     NULL);
1273
1274   return offset;
1275 }
1276 static int dissect_eventConditionTransition_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1277   return dissect_mms_Transitions(TRUE, tvb, offset, pinfo, tree, hf_mms_eventConditionTransition);
1278 }
1279 static int dissect_eventConditionTransitions_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1280   return dissect_mms_Transitions(TRUE, tvb, offset, pinfo, tree, hf_mms_eventConditionTransitions);
1281 }
1282 static int dissect_causingTransitions_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1283   return dissect_mms_Transitions(TRUE, tvb, offset, pinfo, tree, hf_mms_causingTransitions);
1284 }
1285
1286
1287 static const ber_sequence_t AttachToEventCondition_sequence[] = {
1288   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_eventEnrollmentName },
1289   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_eventConditionName },
1290   { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_causingTransitions_impl },
1291   { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acceptableDelay_impl },
1292   { 0, 0, 0, NULL }
1293 };
1294
1295 static int
1296 dissect_mms_AttachToEventCondition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1297   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1298                                    AttachToEventCondition_sequence, hf_index, ett_mms_AttachToEventCondition);
1299
1300   return offset;
1301 }
1302 static int dissect_attach_To_Event_Condition_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1303   return dissect_mms_AttachToEventCondition(TRUE, tvb, offset, pinfo, tree, hf_mms_attach_To_Event_Condition);
1304 }
1305
1306
1307
1308 static int
1309 dissect_mms_Unsigned8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1310   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1311                                   NULL);
1312
1313   return offset;
1314 }
1315 static int dissect_integer_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1316   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_integer);
1317 }
1318 static int dissect_unsigned_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1319   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_unsigned);
1320 }
1321 static int dissect_bcd_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1322   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_bcd);
1323 }
1324 static int dissect_severity_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1325   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_severity);
1326 }
1327 static int dissect_mostSevere_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1328   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_mostSevere);
1329 }
1330 static int dissect_leastSevere_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1331   return dissect_mms_Unsigned8(TRUE, tvb, offset, pinfo, tree, hf_mms_leastSevere);
1332 }
1333
1334
1335
1336 static int
1337 dissect_mms_Priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1338   offset = dissect_mms_Unsigned8(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1339
1340   return offset;
1341 }
1342 static int dissect_priority_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1343   return dissect_mms_Priority(TRUE, tvb, offset, pinfo, tree, hf_mms_priority);
1344 }
1345 static int dissect_prio_rity_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1346   return dissect_mms_Priority(TRUE, tvb, offset, pinfo, tree, hf_mms_prio_rity);
1347 }
1348
1349
1350
1351 static int
1352 dissect_mms_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1353   offset = dissect_ber_boolean(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1354
1355   return offset;
1356 }
1357 static int dissect_moreFollows_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1358   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_moreFollows);
1359 }
1360 static int dissect_sharable_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1361   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_sharable);
1362 }
1363 static int dissect_mmsDeletable_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1364   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_mmsDeletable);
1365 }
1366 static int dissect_reusable_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1367   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_reusable);
1368 }
1369 static int dissect_monitorType_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1370   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_monitorType);
1371 }
1372 static int dissect_monitor_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1373   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_monitor);
1374 }
1375 static int dissect_packed_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1376   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_packed);
1377 }
1378 static int dissect_binary_time_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1379   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_binary_time);
1380 }
1381 static int dissect_specificationWithResult_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1382   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_specificationWithResult);
1383 }
1384 static int dissect_boolean1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1385   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_boolean1);
1386 }
1387 static int dissect_abortOnTimeOut_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1388   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_abortOnTimeOut);
1389 }
1390 static int dissect_relinquishIfConnectionLost_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1391   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_relinquishIfConnectionLost);
1392 }
1393 static int dissect_echo_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1394   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_echo);
1395 }
1396 static int dissect_alarmSummaryReports_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1397   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_alarmSummaryReports);
1398 }
1399 static int dissect_enabled_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1400   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_enabled);
1401 }
1402 static int dissect_notificationLost_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1403   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_notificationLost);
1404 }
1405 static int dissect_enrollmentsOnly_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1406   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_enrollmentsOnly);
1407 }
1408 static int dissect_activeAlarmsOnly_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1409   return dissect_mms_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_mms_activeAlarmsOnly);
1410 }
1411
1412
1413 static const ber_sequence_t AttachToSemaphore_sequence[] = {
1414   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
1415   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_namedToken_impl },
1416   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_priority_impl },
1417   { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acceptableDelay_impl },
1418   { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_controlTimeOut_impl },
1419   { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_abortOnTimeOut_impl },
1420   { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_relinquishIfConnectionLost_impl },
1421   { 0, 0, 0, NULL }
1422 };
1423
1424 static int
1425 dissect_mms_AttachToSemaphore(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1426   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1427                                    AttachToSemaphore_sequence, hf_index, ett_mms_AttachToSemaphore);
1428
1429   return offset;
1430 }
1431 static int dissect_attach_To_Semaphore_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1432   return dissect_mms_AttachToSemaphore(TRUE, tvb, offset, pinfo, tree, hf_mms_attach_To_Semaphore);
1433 }
1434
1435
1436 static const value_string mms_Modifier_vals[] = {
1437   {   0, "attach-To-Event-Condition" },
1438   {   1, "attach-To-Semaphore" },
1439   { 0, NULL }
1440 };
1441
1442 static const ber_choice_t Modifier_choice[] = {
1443   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_attach_To_Event_Condition_impl },
1444   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_attach_To_Semaphore_impl },
1445   { 0, 0, 0, 0, NULL }
1446 };
1447
1448 static int
1449 dissect_mms_Modifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1450   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1451                                  Modifier_choice, hf_index, ett_mms_Modifier,
1452                                  NULL);
1453
1454   return offset;
1455 }
1456 static int dissect_listOfModifier_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1457   return dissect_mms_Modifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfModifier_item);
1458 }
1459
1460
1461 static const ber_sequence_t SEQUENCE_OF_Modifier_sequence_of[1] = {
1462   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_listOfModifier_item },
1463 };
1464
1465 static int
1466 dissect_mms_SEQUENCE_OF_Modifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1467   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1468                                       SEQUENCE_OF_Modifier_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Modifier);
1469
1470   return offset;
1471 }
1472 static int dissect_listOfModifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1473   return dissect_mms_SEQUENCE_OF_Modifier(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfModifier);
1474 }
1475 static int dissect_listOfModifier_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1476   return dissect_mms_SEQUENCE_OF_Modifier(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfModifier);
1477 }
1478
1479
1480
1481 static int
1482 dissect_mms_Status_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1483   offset = dissect_ber_boolean(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1484
1485   return offset;
1486 }
1487 static int dissect_status_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1488   return dissect_mms_Status_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_status);
1489 }
1490
1491
1492 static const value_string mms_T_objectClass_vals[] = {
1493   {   0, "nammedVariable" },
1494   {   1, "scatteredAccess" },
1495   {   2, "namedVariableList" },
1496   {   3, "namedType" },
1497   {   4, "semaphore" },
1498   {   5, "eventCondition" },
1499   {   6, "eventAction" },
1500   {   7, "eventEnrollment" },
1501   {   8, "journal" },
1502   {   9, "domain" },
1503   {  10, "programInvocation" },
1504   {  11, "operatorStation" },
1505   { 0, NULL }
1506 };
1507
1508
1509 static int
1510 dissect_mms_T_objectClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1511   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1512                                   NULL);
1513
1514   return offset;
1515 }
1516 static int dissect_objectClass_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1517   return dissect_mms_T_objectClass(TRUE, tvb, offset, pinfo, tree, hf_mms_objectClass);
1518 }
1519
1520
1521 static const value_string mms_T_extendedObjectClass_vals[] = {
1522   {   0, "objectClass" },
1523   { 0, NULL }
1524 };
1525
1526 static const ber_choice_t T_extendedObjectClass_choice[] = {
1527   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_objectClass_impl },
1528   { 0, 0, 0, 0, NULL }
1529 };
1530
1531 static int
1532 dissect_mms_T_extendedObjectClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1533   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1534                                  T_extendedObjectClass_choice, hf_index, ett_mms_T_extendedObjectClass,
1535                                  NULL);
1536
1537   return offset;
1538 }
1539 static int dissect_extendedObjectClass(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1540   return dissect_mms_T_extendedObjectClass(FALSE, tvb, offset, pinfo, tree, hf_mms_extendedObjectClass);
1541 }
1542
1543
1544
1545 static int
1546 dissect_mms_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1547   offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1548
1549   return offset;
1550 }
1551 static int dissect_vmdSpecific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1552   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_vmdSpecific);
1553 }
1554 static int dissect_aaSpecific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1555   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_aaSpecific);
1556 }
1557 static int dissect_boolean_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1558   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_boolean);
1559 }
1560 static int dissect_generalized_time_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1561   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_generalized_time);
1562 }
1563 static int dissect_objId_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1564   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_objId);
1565 }
1566 static int dissect_allElements_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1567   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_allElements);
1568 }
1569 static int dissect_success_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1570   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_success);
1571 }
1572 static int dissect_invalidated_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1573   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_invalidated);
1574 }
1575 static int dissect_noResult_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1576   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_noResult);
1577 }
1578 static int dissect_aa_specific1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1579   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_aa_specific1);
1580 }
1581 static int dissect_vmd_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1582   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_vmd);
1583 }
1584 static int dissect_undefined_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1585   return dissect_mms_NULL(TRUE, tvb, offset, pinfo, tree, hf_mms_undefined);
1586 }
1587
1588
1589 static const value_string mms_T_objectScope_vals[] = {
1590   {   0, "vmdSpecific" },
1591   {   1, "domainSpecific" },
1592   {   2, "aaSpecific" },
1593   { 0, NULL }
1594 };
1595
1596 static const ber_choice_t T_objectScope_choice[] = {
1597   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_vmdSpecific_impl },
1598   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_domainSpecific_impl },
1599   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_aaSpecific_impl },
1600   { 0, 0, 0, 0, NULL }
1601 };
1602
1603 static int
1604 dissect_mms_T_objectScope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1605   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1606                                  T_objectScope_choice, hf_index, ett_mms_T_objectScope,
1607                                  NULL);
1608
1609   return offset;
1610 }
1611 static int dissect_objectScope(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1612   return dissect_mms_T_objectScope(FALSE, tvb, offset, pinfo, tree, hf_mms_objectScope);
1613 }
1614
1615
1616 static const ber_sequence_t GetNameList_Request_sequence[] = {
1617   { BER_CLASS_CON, 0, 0, dissect_extendedObjectClass },
1618   { BER_CLASS_CON, 1, 0, dissect_objectScope },
1619   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_continueAfter_impl },
1620   { 0, 0, 0, NULL }
1621 };
1622
1623 static int
1624 dissect_mms_GetNameList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1625   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1626                                    GetNameList_Request_sequence, hf_index, ett_mms_GetNameList_Request);
1627
1628   return offset;
1629 }
1630 static int dissect_getNameList_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1631   return dissect_mms_GetNameList_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_getNameList);
1632 }
1633
1634
1635
1636 static int
1637 dissect_mms_Identify_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1638   offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1639
1640   return offset;
1641 }
1642 static int dissect_identify_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1643   return dissect_mms_Identify_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_identify);
1644 }
1645
1646
1647 static const value_string mms_T_objectClass1_vals[] = {
1648   {   0, "namedVariable" },
1649   {   1, "scatteredAccess" },
1650   {   2, "namedVariableList" },
1651   {   3, "namedType" },
1652   {   4, "semaphore" },
1653   {   5, "eventCondition" },
1654   {   6, "eventAction" },
1655   {   7, "eventEnrollment" },
1656   {   8, "journal" },
1657   {   9, "domain" },
1658   {  10, "programInvocation" },
1659   {  11, "operatorStation" },
1660   { 0, NULL }
1661 };
1662
1663
1664 static int
1665 dissect_mms_T_objectClass1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1666   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1667                                   NULL);
1668
1669   return offset;
1670 }
1671 static int dissect_objectClass1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1672   return dissect_mms_T_objectClass1(TRUE, tvb, offset, pinfo, tree, hf_mms_objectClass1);
1673 }
1674
1675
1676 static const value_string mms_T_extendedObjectClass1_vals[] = {
1677   {   0, "objectClass" },
1678   { 0, NULL }
1679 };
1680
1681 static const ber_choice_t T_extendedObjectClass1_choice[] = {
1682   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_objectClass1_impl },
1683   { 0, 0, 0, 0, NULL }
1684 };
1685
1686 static int
1687 dissect_mms_T_extendedObjectClass1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1688   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1689                                  T_extendedObjectClass1_choice, hf_index, ett_mms_T_extendedObjectClass1,
1690                                  NULL);
1691
1692   return offset;
1693 }
1694 static int dissect_extendedObjectClass1(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1695   return dissect_mms_T_extendedObjectClass1(FALSE, tvb, offset, pinfo, tree, hf_mms_extendedObjectClass1);
1696 }
1697
1698
1699 static const ber_sequence_t Rename_Request_sequence[] = {
1700   { BER_CLASS_CON, 0, 0, dissect_extendedObjectClass1 },
1701   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_currentName },
1702   { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_newIdentifier_impl },
1703   { 0, 0, 0, NULL }
1704 };
1705
1706 static int
1707 dissect_mms_Rename_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1708   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1709                                    Rename_Request_sequence, hf_index, ett_mms_Rename_Request);
1710
1711   return offset;
1712 }
1713 static int dissect_rename_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1714   return dissect_mms_Rename_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_rename);
1715 }
1716
1717
1718
1719 static int
1720 dissect_mms_VisibleString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1721   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
1722                                             pinfo, tree, tvb, offset, hf_index,
1723                                             NULL);
1724
1725   return offset;
1726 }
1727 static int dissect_additionalDescription_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1728   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_additionalDescription);
1729 }
1730 static int dissect_vendorName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1731   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_vendorName);
1732 }
1733 static int dissect_modelName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1734   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_modelName);
1735 }
1736 static int dissect_revision_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1737   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_revision);
1738 }
1739 static int dissect_continueAfter1(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1740   return dissect_mms_VisibleString(FALSE, tvb, offset, pinfo, tree, hf_mms_continueAfter1);
1741 }
1742 static int dissect_listOfCapabilities_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1743   return dissect_mms_VisibleString(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfCapabilities_item);
1744 }
1745 static int dissect_simpleString_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1746   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_simpleString);
1747 }
1748 static int dissect_startArgument_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1749   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_startArgument);
1750 }
1751 static int dissect_visible_string1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1752   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_visible_string1);
1753 }
1754 static int dissect_symbolicAddress_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1755   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_symbolicAddress);
1756 }
1757 static int dissect_listOfPromptData_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1758   return dissect_mms_VisibleString(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfPromptData_item);
1759 }
1760 static int dissect_listOfOutputData_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1761   return dissect_mms_VisibleString(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfOutputData_item);
1762 }
1763 static int dissect_listOfVariables_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1764   return dissect_mms_VisibleString(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfVariables_item);
1765 }
1766 static int dissect_variableTag_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1767   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_variableTag);
1768 }
1769 static int dissect_annotation_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1770   return dissect_mms_VisibleString(TRUE, tvb, offset, pinfo, tree, hf_mms_annotation);
1771 }
1772
1773
1774
1775 static int
1776 dissect_mms_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1777   offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1778                                        NULL);
1779
1780   return offset;
1781 }
1782 static int dissect_non_coded_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1783   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_non_coded);
1784 }
1785 static int dissect_octet_string1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1786   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_octet_string1);
1787 }
1788 static int dissect_unconstrainedAddress_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1789   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_unconstrainedAddress);
1790 }
1791 static int dissect_entryIdToStartAfter_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1792   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_entryIdToStartAfter);
1793 }
1794 static int dissect_entryId_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1795   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_entryId);
1796 }
1797 static int dissect_startingEntry_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1798   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_startingEntry);
1799 }
1800 static int dissect_entrySpecification_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1801   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_entrySpecification);
1802 }
1803 static int dissect_entryIdentifier_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1804   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_entryIdentifier);
1805 }
1806 static int dissect_limitingEntry_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1807   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_limitingEntry);
1808 }
1809 static int dissect_fileData_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1810   return dissect_mms_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_fileData);
1811 }
1812
1813
1814 static const value_string mms_Address_vals[] = {
1815   {   0, "numericAddress" },
1816   {   1, "symbolicAddress" },
1817   {   2, "unconstrainedAddress" },
1818   { 0, NULL }
1819 };
1820
1821 static const ber_choice_t Address_choice[] = {
1822   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_numericAddress_impl },
1823   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_symbolicAddress_impl },
1824   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_unconstrainedAddress_impl },
1825   { 0, 0, 0, 0, NULL }
1826 };
1827
1828 static int
1829 dissect_mms_Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1830   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1831                                  Address_choice, hf_index, ett_mms_Address,
1832                                  NULL);
1833
1834   return offset;
1835 }
1836 static int dissect_address(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1837   return dissect_mms_Address(FALSE, tvb, offset, pinfo, tree, hf_mms_address);
1838 }
1839
1840
1841 static const ber_sequence_t T_array_sequence[] = {
1842   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_packed_impl },
1843   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_numberOfElements_impl },
1844   { BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_elementType },
1845   { 0, 0, 0, NULL }
1846 };
1847
1848 static int
1849 dissect_mms_T_array(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1850   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1851                                    T_array_sequence, hf_index, ett_mms_T_array);
1852
1853   return offset;
1854 }
1855 static int dissect_array_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1856   return dissect_mms_T_array(TRUE, tvb, offset, pinfo, tree, hf_mms_array);
1857 }
1858
1859
1860 static const ber_sequence_t T_components_item_sequence[] = {
1861   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_componentName_impl },
1862   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_componentType },
1863   { 0, 0, 0, NULL }
1864 };
1865
1866 static int
1867 dissect_mms_T_components_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1868   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1869                                    T_components_item_sequence, hf_index, ett_mms_T_components_item);
1870
1871   return offset;
1872 }
1873 static int dissect_components_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1874   return dissect_mms_T_components_item(FALSE, tvb, offset, pinfo, tree, hf_mms_components_item);
1875 }
1876
1877
1878 static const ber_sequence_t T_components_sequence_of[1] = {
1879   { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_components_item },
1880 };
1881
1882 static int
1883 dissect_mms_T_components(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1884   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1885                                       T_components_sequence_of, hf_index, ett_mms_T_components);
1886
1887   return offset;
1888 }
1889 static int dissect_components_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1890   return dissect_mms_T_components(TRUE, tvb, offset, pinfo, tree, hf_mms_components);
1891 }
1892
1893
1894 static const ber_sequence_t T_structure_sequence[] = {
1895   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_packed_impl },
1896   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_components_impl },
1897   { 0, 0, 0, NULL }
1898 };
1899
1900 static int
1901 dissect_mms_T_structure(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1902   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1903                                    T_structure_sequence, hf_index, ett_mms_T_structure);
1904
1905   return offset;
1906 }
1907 static int dissect_structure_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1908   return dissect_mms_T_structure(TRUE, tvb, offset, pinfo, tree, hf_mms_structure);
1909 }
1910
1911
1912
1913 static int
1914 dissect_mms_Integer32(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1915   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1916                                   NULL);
1917
1918   return offset;
1919 }
1920 static int dissect_localDetailCalling_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1921   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_localDetailCalling);
1922 }
1923 static int dissect_localDetailCalled_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1924   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_localDetailCalled);
1925 }
1926 static int dissect_ulsmID_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1927   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_ulsmID);
1928 }
1929 static int dissect_bit_string_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1930   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_bit_string);
1931 }
1932 static int dissect_octet_string_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1933   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_octet_string);
1934 }
1935 static int dissect_visible_string_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1936   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_visible_string);
1937 }
1938 static int dissect_numberOfEntries_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1939   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfEntries);
1940 }
1941 static int dissect_frsmID_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1942   return dissect_mms_Integer32(TRUE, tvb, offset, pinfo, tree, hf_mms_frsmID);
1943 }
1944
1945
1946 static const value_string mms_TypeSpecification_vals[] = {
1947   {   0, "typeName" },
1948   {   1, "array" },
1949   {   2, "structure" },
1950   {   3, "boolean" },
1951   {   4, "bit-string" },
1952   {   5, "integer" },
1953   {   6, "unsigned" },
1954   {   9, "octet-string" },
1955   {  10, "visible-string" },
1956   {  11, "generalized-time" },
1957   {  12, "binary-time" },
1958   {  13, "bcd" },
1959   {  15, "objId" },
1960   { 0, NULL }
1961 };
1962
1963 static const ber_choice_t TypeSpecification_choice[] = {
1964   {   0, BER_CLASS_CON, 0, 0, dissect_typeName },
1965   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_array_impl },
1966   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_structure_impl },
1967   {   3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_boolean_impl },
1968   {   4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_bit_string_impl },
1969   {   5, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_integer_impl },
1970   {   6, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_unsigned_impl },
1971   {   9, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_octet_string_impl },
1972   {  10, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_visible_string_impl },
1973   {  11, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_generalized_time_impl },
1974   {  12, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_binary_time_impl },
1975   {  13, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_bcd_impl },
1976   {  15, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_objId_impl },
1977   { 0, 0, 0, 0, NULL }
1978 };
1979
1980 static int
1981 dissect_mms_TypeSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1982   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1983                                  TypeSpecification_choice, hf_index, ett_mms_TypeSpecification,
1984                                  NULL);
1985
1986   return offset;
1987 }
1988
1989
1990 static const ber_sequence_t T_variableDescription_sequence[] = {
1991   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_address },
1992   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_typeSpecification },
1993   { 0, 0, 0, NULL }
1994 };
1995
1996 static int
1997 dissect_mms_T_variableDescription(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1998   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1999                                    T_variableDescription_sequence, hf_index, ett_mms_T_variableDescription);
2000
2001   return offset;
2002 }
2003 static int dissect_variableDescription_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2004   return dissect_mms_T_variableDescription(TRUE, tvb, offset, pinfo, tree, hf_mms_variableDescription);
2005 }
2006
2007
2008 static const ber_sequence_t T_indexRange_sequence[] = {
2009   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_lowIndex_impl },
2010   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_numberOfElements_impl },
2011   { 0, 0, 0, NULL }
2012 };
2013
2014 static int
2015 dissect_mms_T_indexRange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2016   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2017                                    T_indexRange_sequence, hf_index, ett_mms_T_indexRange);
2018
2019   return offset;
2020 }
2021 static int dissect_indexRange_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2022   return dissect_mms_T_indexRange(TRUE, tvb, offset, pinfo, tree, hf_mms_indexRange);
2023 }
2024
2025
2026 static const value_string mms_T_selectAccess_vals[] = {
2027   {   1, "component" },
2028   {   2, "index" },
2029   {   3, "indexRange" },
2030   {   4, "allElements" },
2031   { 0, NULL }
2032 };
2033
2034 static const ber_choice_t T_selectAccess_choice[] = {
2035   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_component_impl },
2036   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_index_impl },
2037   {   3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_indexRange_impl },
2038   {   4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_allElements_impl },
2039   { 0, 0, 0, 0, NULL }
2040 };
2041
2042 static int
2043 dissect_mms_T_selectAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2044   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2045                                  T_selectAccess_choice, hf_index, ett_mms_T_selectAccess,
2046                                  NULL);
2047
2048   return offset;
2049 }
2050 static int dissect_selectAccess(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2051   return dissect_mms_T_selectAccess(FALSE, tvb, offset, pinfo, tree, hf_mms_selectAccess);
2052 }
2053
2054
2055 static const value_string mms_AlternateAccessSelection_vals[] = {
2056   { -1/*choice*/, "selectAccess" },
2057   { 0, NULL }
2058 };
2059
2060 static const ber_choice_t AlternateAccessSelection_choice[] = {
2061   { -1/*choice*/, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_selectAccess },
2062   { 0, 0, 0, 0, NULL }
2063 };
2064
2065 static int
2066 dissect_mms_AlternateAccessSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2067   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2068                                  AlternateAccessSelection_choice, hf_index, ett_mms_AlternateAccessSelection,
2069                                  NULL);
2070
2071   return offset;
2072 }
2073 static int dissect_unnamed(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2074   return dissect_mms_AlternateAccessSelection(FALSE, tvb, offset, pinfo, tree, hf_mms_unnamed);
2075 }
2076 static int dissect_accesst(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2077   return dissect_mms_AlternateAccessSelection(FALSE, tvb, offset, pinfo, tree, hf_mms_accesst);
2078 }
2079
2080
2081 static const ber_sequence_t T_named_sequence[] = {
2082   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_componentName_impl },
2083   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_accesst },
2084   { 0, 0, 0, NULL }
2085 };
2086
2087 static int
2088 dissect_mms_T_named(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2089   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2090                                    T_named_sequence, hf_index, ett_mms_T_named);
2091
2092   return offset;
2093 }
2094 static int dissect_named_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2095   return dissect_mms_T_named(TRUE, tvb, offset, pinfo, tree, hf_mms_named);
2096 }
2097
2098
2099 static const value_string mms_AlternateAccess_item_vals[] = {
2100   {   0, "unnamed" },
2101   {   1, "named" },
2102   { 0, NULL }
2103 };
2104
2105 static const ber_choice_t AlternateAccess_item_choice[] = {
2106   {   0, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_unnamed },
2107   {   1, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_named_impl },
2108   { 0, 0, 0, 0, NULL }
2109 };
2110
2111 static int
2112 dissect_mms_AlternateAccess_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2113   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2114                                  AlternateAccess_item_choice, hf_index, ett_mms_AlternateAccess_item,
2115                                  NULL);
2116
2117   return offset;
2118 }
2119 static int dissect_AlternateAccess_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2120   return dissect_mms_AlternateAccess_item(FALSE, tvb, offset, pinfo, tree, hf_mms_AlternateAccess_item);
2121 }
2122
2123
2124 static const ber_sequence_t AlternateAccess_sequence_of[1] = {
2125   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_AlternateAccess_item },
2126 };
2127
2128 static int
2129 dissect_mms_AlternateAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2130   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2131                                       AlternateAccess_sequence_of, hf_index, ett_mms_AlternateAccess);
2132
2133   return offset;
2134 }
2135 static int dissect_alternateAccess_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2136   return dissect_mms_AlternateAccess(TRUE, tvb, offset, pinfo, tree, hf_mms_alternateAccess);
2137 }
2138
2139
2140 static const ber_sequence_t ScatteredAccessDescription_item_sequence[] = {
2141   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_componentName_impl },
2142   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_variableSpecification },
2143   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alternateAccess_impl },
2144   { 0, 0, 0, NULL }
2145 };
2146
2147 static int
2148 dissect_mms_ScatteredAccessDescription_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2149   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2150                                    ScatteredAccessDescription_item_sequence, hf_index, ett_mms_ScatteredAccessDescription_item);
2151
2152   return offset;
2153 }
2154 static int dissect_ScatteredAccessDescription_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2155   return dissect_mms_ScatteredAccessDescription_item(FALSE, tvb, offset, pinfo, tree, hf_mms_ScatteredAccessDescription_item);
2156 }
2157
2158
2159 static const ber_sequence_t ScatteredAccessDescription_sequence_of[1] = {
2160   { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ScatteredAccessDescription_item },
2161 };
2162
2163 static int
2164 dissect_mms_ScatteredAccessDescription(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2165   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2166                                       ScatteredAccessDescription_sequence_of, hf_index, ett_mms_ScatteredAccessDescription);
2167
2168   return offset;
2169 }
2170 static int dissect_scatteredAccessDescription_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2171   return dissect_mms_ScatteredAccessDescription(TRUE, tvb, offset, pinfo, tree, hf_mms_scatteredAccessDescription);
2172 }
2173
2174
2175 static const value_string mms_VariableSpecification_vals[] = {
2176   {   0, "name" },
2177   {   1, "address" },
2178   {   2, "variableDescription" },
2179   {   3, "scatteredAccessDescription" },
2180   {   4, "invalidated" },
2181   { 0, NULL }
2182 };
2183
2184 static const ber_choice_t VariableSpecification_choice[] = {
2185   {   0, BER_CLASS_CON, 0, 0, dissect_name },
2186   {   1, BER_CLASS_CON, 1, 0, dissect_address },
2187   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_variableDescription_impl },
2188   {   3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_scatteredAccessDescription_impl },
2189   {   4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_invalidated_impl },
2190   { 0, 0, 0, 0, NULL }
2191 };
2192
2193 static int
2194 dissect_mms_VariableSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2195   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2196                                  VariableSpecification_choice, hf_index, ett_mms_VariableSpecification,
2197                                  NULL);
2198
2199   return offset;
2200 }
2201
2202
2203 static const ber_sequence_t T_listOfVariable_item2_sequence[] = {
2204   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableSpecification },
2205   { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alternateAccess_impl },
2206   { 0, 0, 0, NULL }
2207 };
2208
2209 static int
2210 dissect_mms_T_listOfVariable_item2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2211   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2212                                    T_listOfVariable_item2_sequence, hf_index, ett_mms_T_listOfVariable_item2);
2213
2214   return offset;
2215 }
2216 static int dissect_listOfVariable_item2(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2217   return dissect_mms_T_listOfVariable_item2(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfVariable_item2);
2218 }
2219
2220
2221 static const ber_sequence_t T_listOfVariable2_sequence_of[1] = {
2222   { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_listOfVariable_item2 },
2223 };
2224
2225 static int
2226 dissect_mms_T_listOfVariable2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2227   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2228                                       T_listOfVariable2_sequence_of, hf_index, ett_mms_T_listOfVariable2);
2229
2230   return offset;
2231 }
2232 static int dissect_listOfVariable2_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2233   return dissect_mms_T_listOfVariable2(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfVariable2);
2234 }
2235
2236
2237 static const value_string mms_VariableAccessSpecification_vals[] = {
2238   {   0, "listOfVariable" },
2239   {   1, "variableListName" },
2240   { 0, NULL }
2241 };
2242
2243 static const ber_choice_t VariableAccessSpecification_choice[] = {
2244   {   0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_listOfVariable2_impl },
2245   {   1, BER_CLASS_CON, 1, 0, dissect_variableListName },
2246   { 0, 0, 0, 0, NULL }
2247 };
2248
2249 static int
2250 dissect_mms_VariableAccessSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2251   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2252                                  VariableAccessSpecification_choice, hf_index, ett_mms_VariableAccessSpecification,
2253                                  NULL);
2254
2255   return offset;
2256 }
2257 static int dissect_variableAccessSpecificatn(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2258   return dissect_mms_VariableAccessSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_variableAccessSpecificatn);
2259 }
2260 static int dissect_variableAccessSpecification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2261   return dissect_mms_VariableAccessSpecification(FALSE, tvb, offset, pinfo, tree, hf_mms_variableAccessSpecification);
2262 }
2263
2264
2265 static const ber_sequence_t Read_Request_sequence[] = {
2266   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_specificationWithResult_impl },
2267   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_variableAccessSpecificatn },
2268   { 0, 0, 0, NULL }
2269 };
2270
2271 static int
2272 dissect_mms_Read_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2273   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2274                                    Read_Request_sequence, hf_index, ett_mms_Read_Request);
2275
2276   return offset;
2277 }
2278 static int dissect_read_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2279   return dissect_mms_Read_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_read);
2280 }
2281
2282
2283 static const ber_sequence_t SEQUENCE_OF_Data_sequence_of[1] = {
2284   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_listOfData_item },
2285 };
2286
2287 static int
2288 dissect_mms_SEQUENCE_OF_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2289   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2290                                       SEQUENCE_OF_Data_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Data);
2291
2292   return offset;
2293 }
2294 static int dissect_listOfData_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2295   return dissect_mms_SEQUENCE_OF_Data(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfData);
2296 }
2297 static int dissect_array1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2298   return dissect_mms_SEQUENCE_OF_Data(TRUE, tvb, offset, pinfo, tree, hf_mms_array1);
2299 }
2300 static int dissect_structure1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2301   return dissect_mms_SEQUENCE_OF_Data(TRUE, tvb, offset, pinfo, tree, hf_mms_structure1);
2302 }
2303
2304
2305
2306 static int
2307 dissect_mms_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2308   offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
2309                                     NULL, hf_index, -1,
2310                                     NULL);
2311
2312   return offset;
2313 }
2314 static int dissect_bit_string1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2315   return dissect_mms_BIT_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_bit_string1);
2316 }
2317 static int dissect_booleanArray_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2318   return dissect_mms_BIT_STRING(TRUE, tvb, offset, pinfo, tree, hf_mms_booleanArray);
2319 }
2320
2321
2322
2323 static int
2324 dissect_mms_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2325   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2326                                   NULL);
2327
2328   return offset;
2329 }
2330 static int dissect_foo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2331   return dissect_mms_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_mms_foo);
2332 }
2333 static int dissect_others_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2334   return dissect_mms_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_mms_others);
2335 }
2336 static int dissect_additionalCode_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2337   return dissect_mms_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_mms_additionalCode);
2338 }
2339 static int dissect_integer1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2340   return dissect_mms_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_mms_integer1);
2341 }
2342 static int dissect_unsigned1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2343   return dissect_mms_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_mms_unsigned1);
2344 }
2345 static int dissect_bcd1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2346   return dissect_mms_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_mms_bcd1);
2347 }
2348
2349
2350
2351 static int
2352 dissect_mms_FloatingPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2353   offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2354                                        NULL);
2355
2356   return offset;
2357 }
2358 static int dissect_floating_point_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2359   return dissect_mms_FloatingPoint(TRUE, tvb, offset, pinfo, tree, hf_mms_floating_point);
2360 }
2361
2362
2363
2364 static int
2365 dissect_mms_TimeOfDay(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2366   offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2367                                        NULL);
2368
2369   return offset;
2370 }
2371 static int dissect_binary_time1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2372   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_binary_time1);
2373 }
2374 static int dissect_timeOfDayT_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2375   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_timeOfDayT);
2376 }
2377 static int dissect_startingTime_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2378   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_startingTime);
2379 }
2380 static int dissect_endingTime_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2381   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_endingTime);
2382 }
2383 static int dissect_timeSpecification_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2384   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_timeSpecification);
2385 }
2386 static int dissect_limitingTime_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2387   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_limitingTime);
2388 }
2389 static int dissect_occurenceTime_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2390   return dissect_mms_TimeOfDay(TRUE, tvb, offset, pinfo, tree, hf_mms_occurenceTime);
2391 }
2392
2393
2394 static const value_string mms_Data_vals[] = {
2395   {   1, "array" },
2396   {   2, "structure" },
2397   {   3, "boolean" },
2398   {   4, "bit-string" },
2399   {   5, "integer" },
2400   {   6, "unsigned" },
2401   {   7, "floating-point" },
2402   {   9, "octet-string" },
2403   {  10, "visible-string" },
2404   {  12, "binary-time" },
2405   {  13, "bcd" },
2406   {  14, "booleanArray" },
2407   { 0, NULL }
2408 };
2409
2410 static const ber_choice_t Data_choice[] = {
2411   {   1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_array1_impl },
2412   {   2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_structure1_impl },
2413   {   3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_boolean1_impl },
2414   {   4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_bit_string1_impl },
2415   {   5, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_integer1_impl },
2416   {   6, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_unsigned1_impl },
2417   {   7, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_floating_point_impl },
2418   {   9, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_octet_string1_impl },
2419   {  10, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_visible_string1_impl },
2420   {  12, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_binary_time1_impl },
2421   {  13, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_bcd1_impl },
2422   {  14, BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_booleanArray_impl },
2423   { 0, 0, 0, 0, NULL }
2424 };
2425
2426 static int
2427 dissect_mms_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2428   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2429                                  Data_choice, hf_index, ett_mms_Data,
2430                                  NULL);
2431
2432   return offset;
2433 }
2434
2435
2436 static const ber_sequence_t Write_Request_sequence[] = {
2437   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableAccessSpecificatn },
2438   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_listOfData_impl },
2439   { 0, 0, 0, NULL }
2440 };
2441
2442 static int
2443 dissect_mms_Write_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2444   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2445                                    Write_Request_sequence, hf_index, ett_mms_Write_Request);
2446
2447   return offset;
2448 }
2449 static int dissect_write_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2450   return dissect_mms_Write_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_write);
2451 }
2452
2453
2454 static const value_string mms_GetVariableAccessAttributes_Request_vals[] = {
2455   {   0, "name" },
2456   {   1, "address" },
2457   { 0, NULL }
2458 };
2459
2460 static const ber_choice_t GetVariableAccessAttributes_Request_choice[] = {
2461   {   0, BER_CLASS_CON, 0, 0, dissect_name },
2462   {   1, BER_CLASS_CON, 1, 0, dissect_address },
2463   { 0, 0, 0, 0, NULL }
2464 };
2465
2466 static int
2467 dissect_mms_GetVariableAccessAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2468   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2469                                  GetVariableAccessAttributes_Request_choice, hf_index, ett_mms_GetVariableAccessAttributes_Request,
2470                                  NULL);
2471
2472   return offset;
2473 }
2474 static int dissect_getVariableAccessAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2475   return dissect_mms_GetVariableAccessAttributes_Request(FALSE, tvb, offset, pinfo, tree, hf_mms_getVariableAccessAttributes);
2476 }
2477
2478
2479 static const ber_sequence_t DefineNamedVariable_Request_sequence[] = {
2480   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_variableName },
2481   { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_address },
2482   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_typeSpecification },
2483   { 0, 0, 0, NULL }
2484 };
2485
2486 static int
2487 dissect_mms_DefineNamedVariable_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2488   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2489                                    DefineNamedVariable_Request_sequence, hf_index, ett_mms_DefineNamedVariable_Request);
2490
2491   return offset;
2492 }
2493 static int dissect_defineNamedVariable_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2494   return dissect_mms_DefineNamedVariable_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_defineNamedVariable);
2495 }
2496
2497
2498 static const ber_sequence_t DefineScatteredAccess_Request_sequence[] = {
2499   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_scatteredAccessName },
2500   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_scatteredAccessDescription_impl },
2501   { 0, 0, 0, NULL }
2502 };
2503
2504 static int
2505 dissect_mms_DefineScatteredAccess_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2506   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2507                                    DefineScatteredAccess_Request_sequence, hf_index, ett_mms_DefineScatteredAccess_Request);
2508
2509   return offset;
2510 }
2511 static int dissect_defineScatteredAccess_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2512   return dissect_mms_DefineScatteredAccess_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_defineScatteredAccess);
2513 }
2514
2515
2516
2517 static int
2518 dissect_mms_GetScatteredAccessAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2519   offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2520
2521   return offset;
2522 }
2523 static int dissect_getScatteredAccessAttributes_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2524   return dissect_mms_GetScatteredAccessAttributes_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_getScatteredAccessAttributes);
2525 }
2526
2527
2528 static const value_string mms_T_scopeOfDelete_vals[] = {
2529   {   0, "specific" },
2530   {   1, "aa-specific" },
2531   {   2, "domain" },
2532   {   3, "vmd" },
2533   { 0, NULL }
2534 };
2535
2536
2537 static int
2538 dissect_mms_T_scopeOfDelete(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2539   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2540                                   NULL);
2541
2542   return offset;
2543 }
2544 static int dissect_scopeOfDelete_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2545   return dissect_mms_T_scopeOfDelete(TRUE, tvb, offset, pinfo, tree, hf_mms_scopeOfDelete);
2546 }
2547
2548
2549 static const ber_sequence_t SEQUENCE_OF_ObjectName_sequence_of[1] = {
2550   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_listOfName_item },
2551 };
2552
2553 static int
2554 dissect_mms_SEQUENCE_OF_ObjectName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2555   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2556                                       SEQUENCE_OF_ObjectName_sequence_of, hf_index, ett_mms_SEQUENCE_OF_ObjectName);
2557
2558   return offset;
2559 }
2560 static int dissect_listOfName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2561   return dissect_mms_SEQUENCE_OF_ObjectName(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfName);
2562 }
2563 static int dissect_listOfVariableListName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2564   return dissect_mms_SEQUENCE_OF_ObjectName(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfVariableListName);
2565 }
2566 static int dissect_listOfTypeName_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2567   return dissect_mms_SEQUENCE_OF_ObjectName(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfTypeName);
2568 }
2569 static int dissect_specific_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2570   return dissect_mms_SEQUENCE_OF_ObjectName(TRUE, tvb, offset, pinfo, tree, hf_mms_specific);
2571 }
2572 static int dissect_eventEnrollmentNames_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2573   return dissect_mms_SEQUENCE_OF_ObjectName(TRUE, tvb, offset, pinfo, tree, hf_mms_eventEnrollmentNames);
2574 }
2575
2576
2577 static const ber_sequence_t DeleteVariableAccess_Request_sequence[] = {
2578   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scopeOfDelete_impl },
2579   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_listOfName_impl },
2580   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_domainName_impl },
2581   { 0, 0, 0, NULL }
2582 };
2583
2584 static int
2585 dissect_mms_DeleteVariableAccess_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2586   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2587                                    DeleteVariableAccess_Request_sequence, hf_index, ett_mms_DeleteVariableAccess_Request);
2588
2589   return offset;
2590 }
2591 static int dissect_deleteVariableAccess_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2592   return dissect_mms_DeleteVariableAccess_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_deleteVariableAccess);
2593 }
2594
2595
2596 static const ber_sequence_t T_listOfVariable_item_sequence[] = {
2597   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableSpecification },
2598   { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alternateAccess_impl },
2599   { 0, 0, 0, NULL }
2600 };
2601
2602 static int
2603 dissect_mms_T_listOfVariable_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2604   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2605                                    T_listOfVariable_item_sequence, hf_index, ett_mms_T_listOfVariable_item);
2606
2607   return offset;
2608 }
2609 static int dissect_listOfVariable_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2610   return dissect_mms_T_listOfVariable_item(FALSE, tvb, offset, pinfo, tree, hf_mms_listOfVariable_item);
2611 }
2612
2613
2614 static const ber_sequence_t T_listOfVariable_sequence_of[1] = {
2615   { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_listOfVariable_item },
2616 };
2617
2618 static int
2619 dissect_mms_T_listOfVariable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2620   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2621                                       T_listOfVariable_sequence_of, hf_index, ett_mms_T_listOfVariable);
2622
2623   return offset;
2624 }
2625 static int dissect_listOfVariable_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2626   return dissect_mms_T_listOfVariable(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfVariable);
2627 }
2628
2629
2630 static const ber_sequence_t DefineNamedVariableList_Request_sequence[] = {
2631   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableListName },
2632   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_listOfVariable_impl },
2633   { 0, 0, 0, NULL }
2634 };
2635
2636 static int
2637 dissect_mms_DefineNamedVariableList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2638   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2639                                    DefineNamedVariableList_Request_sequence, hf_index, ett_mms_DefineNamedVariableList_Request);
2640
2641   return offset;
2642 }
2643 static int dissect_defineNamedVariableList_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2644   return dissect_mms_DefineNamedVariableList_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_defineNamedVariableList);
2645 }
2646
2647
2648
2649 static int
2650 dissect_mms_GetNamedVariableListAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2651   offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2652
2653   return offset;
2654 }
2655 static int dissect_getNamedVariableListAttributes_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2656   return dissect_mms_GetNamedVariableListAttributes_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_getNamedVariableListAttributes);
2657 }
2658
2659
2660 static const value_string mms_T_scopeOfDelete1_vals[] = {
2661   {   0, "specific" },
2662   {   1, "aa-specific" },
2663   {   2, "domain" },
2664   {   3, "vmd" },
2665   { 0, NULL }
2666 };
2667
2668
2669 static int
2670 dissect_mms_T_scopeOfDelete1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2671   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2672                                   NULL);
2673
2674   return offset;
2675 }
2676 static int dissect_scopeOfDelete1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2677   return dissect_mms_T_scopeOfDelete1(TRUE, tvb, offset, pinfo, tree, hf_mms_scopeOfDelete1);
2678 }
2679
2680
2681 static const ber_sequence_t DeleteNamedVariableList_Request_sequence[] = {
2682   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scopeOfDelete1_impl },
2683   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_listOfVariableListName_impl },
2684   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_domainName_impl },
2685   { 0, 0, 0, NULL }
2686 };
2687
2688 static int
2689 dissect_mms_DeleteNamedVariableList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2690   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2691                                    DeleteNamedVariableList_Request_sequence, hf_index, ett_mms_DeleteNamedVariableList_Request);
2692
2693   return offset;
2694 }
2695 static int dissect_deleteNamedVariableList_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2696   return dissect_mms_DeleteNamedVariableList_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_deleteNamedVariableList);
2697 }
2698
2699
2700 static const ber_sequence_t DefineNamedType_Request_sequence[] = {
2701   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_typeName },
2702   { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_typeSpecification },
2703   { 0, 0, 0, NULL }
2704 };
2705
2706 static int
2707 dissect_mms_DefineNamedType_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2708   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2709                                    DefineNamedType_Request_sequence, hf_index, ett_mms_DefineNamedType_Request);
2710
2711   return offset;
2712 }
2713 static int dissect_defineNamedType_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2714   return dissect_mms_DefineNamedType_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_defineNamedType);
2715 }
2716
2717
2718
2719 static int
2720 dissect_mms_GetNamedTypeAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2721   offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2722
2723   return offset;
2724 }
2725 static int dissect_getNamedTypeAttributes_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2726   return dissect_mms_GetNamedTypeAttributes_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_getNamedTypeAttributes);
2727 }
2728
2729
2730 static const value_string mms_T_scopeOfDelete2_vals[] = {
2731   {   0, "specific" },
2732   {   1, "aa-specific" },
2733   {   2, "domain" },
2734   {   3, "vmd" },
2735   { 0, NULL }
2736 };
2737
2738
2739 static int
2740 dissect_mms_T_scopeOfDelete2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2741   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2742                                   NULL);
2743
2744   return offset;
2745 }
2746 static int dissect_scopeOfDelete2_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2747   return dissect_mms_T_scopeOfDelete2(TRUE, tvb, offset, pinfo, tree, hf_mms_scopeOfDelete2);
2748 }
2749
2750
2751 static const ber_sequence_t DeleteNamedType_Request_sequence[] = {
2752   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scopeOfDelete2_impl },
2753   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_listOfTypeName_impl },
2754   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_domainName_impl },
2755   { 0, 0, 0, NULL }
2756 };
2757
2758 static int
2759 dissect_mms_DeleteNamedType_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2760   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2761                                    DeleteNamedType_Request_sequence, hf_index, ett_mms_DeleteNamedType_Request);
2762
2763   return offset;
2764 }
2765 static int dissect_deleteNamedType_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2766   return dissect_mms_DeleteNamedType_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_deleteNamedType);
2767 }
2768
2769
2770 static const ber_sequence_t T_listOfPromptData_sequence_of[1] = {
2771   { BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_listOfPromptData_item },
2772 };
2773
2774 static int
2775 dissect_mms_T_listOfPromptData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2776   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2777                                       T_listOfPromptData_sequence_of, hf_index, ett_mms_T_listOfPromptData);
2778
2779   return offset;
2780 }
2781 static int dissect_listOfPromptData_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2782   return dissect_mms_T_listOfPromptData(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfPromptData);
2783 }
2784
2785
2786 static const ber_sequence_t Input_Request_sequence[] = {
2787   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_operatorStationName_impl },
2788   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_echo_impl },
2789   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_listOfPromptData_impl },
2790   { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_inputTimeOut_impl },
2791   { 0, 0, 0, NULL }
2792 };
2793
2794 static int
2795 dissect_mms_Input_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2796   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2797                                    Input_Request_sequence, hf_index, ett_mms_Input_Request);
2798
2799   return offset;
2800 }
2801 static int dissect_input_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2802   return dissect_mms_Input_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_input);
2803 }
2804
2805
2806 static const ber_sequence_t T_listOfOutputData_sequence_of[1] = {
2807   { BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_listOfOutputData_item },
2808 };
2809
2810 static int
2811 dissect_mms_T_listOfOutputData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2812   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2813                                       T_listOfOutputData_sequence_of, hf_index, ett_mms_T_listOfOutputData);
2814
2815   return offset;
2816 }
2817 static int dissect_listOfOutputData_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2818   return dissect_mms_T_listOfOutputData(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfOutputData);
2819 }
2820
2821
2822 static const ber_sequence_t Output_Request_sequence[] = {
2823   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_operatorStationName_impl },
2824   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_listOfOutputData_impl },
2825   { 0, 0, 0, NULL }
2826 };
2827
2828 static int
2829 dissect_mms_Output_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2830   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2831                                    Output_Request_sequence, hf_index, ett_mms_Output_Request);
2832
2833   return offset;
2834 }
2835 static int dissect_output_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2836   return dissect_mms_Output_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_output);
2837 }
2838
2839
2840
2841 static int
2842 dissect_mms_T_ap_title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2843 #line 23 "mms.cnf"
2844   offset=dissect_acse_AP_title(FALSE, tvb, offset, pinfo, tree, hf_mms_ap_title);
2845
2846
2847
2848   return offset;
2849 }
2850 static int dissect_ap_title(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2851   return dissect_mms_T_ap_title(FALSE, tvb, offset, pinfo, tree, hf_mms_ap_title);
2852 }
2853
2854
2855
2856 static int
2857 dissect_mms_T_ap_invocation_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2858 #line 26 "mms.cnf"
2859   offset=dissect_acse_AP_invocation_identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_ap_invocation_id);
2860
2861
2862
2863   return offset;
2864 }
2865 static int dissect_ap_invocation_id(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2866   return dissect_mms_T_ap_invocation_id(FALSE, tvb, offset, pinfo, tree, hf_mms_ap_invocation_id);
2867 }
2868
2869
2870
2871 static int
2872 dissect_mms_T_ae_qualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2873 #line 29 "mms.cnf"
2874   offset=dissect_acse_AE_qualifier(FALSE, tvb, offset, pinfo, tree, hf_mms_ae_qualifier);
2875
2876
2877
2878   return offset;
2879 }
2880 static int dissect_ae_qualifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2881   return dissect_mms_T_ae_qualifier(FALSE, tvb, offset, pinfo, tree, hf_mms_ae_qualifier);
2882 }
2883
2884
2885
2886 static int
2887 dissect_mms_T_ae_invocation_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2888 #line 32 "mms.cnf"
2889   offset=dissect_acse_AE_invocation_identifier(FALSE, tvb, offset, pinfo, tree, hf_mms_ae_invocation_id);
2890
2891
2892
2893   return offset;
2894 }
2895 static int dissect_ae_invocation_id(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2896   return dissect_mms_T_ae_invocation_id(FALSE, tvb, offset, pinfo, tree, hf_mms_ae_invocation_id);
2897 }
2898
2899
2900 static const ber_sequence_t ApplicationReference_sequence[] = {
2901   { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_ap_title },
2902   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_ap_invocation_id },
2903   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_ae_qualifier },
2904   { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_ae_invocation_id },
2905   { 0, 0, 0, NULL }
2906 };
2907
2908 static int
2909 dissect_mms_ApplicationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2910   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2911                                    ApplicationReference_sequence, hf_index, ett_mms_ApplicationReference);
2912
2913   return offset;
2914 }
2915 static int dissect_thirdParty_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2916   return dissect_mms_ApplicationReference(TRUE, tvb, offset, pinfo, tree, hf_mms_thirdParty);
2917 }
2918 static int dissect_applicationToPreempt_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2919   return dissect_mms_ApplicationReference(TRUE, tvb, offset, pinfo, tree, hf_mms_applicationToPreempt);
2920 }
2921 static int dissect_applicationReference(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2922   return dissect_mms_ApplicationReference(FALSE, tvb, offset, pinfo, tree, hf_mms_applicationReference);
2923 }
2924 static int dissect_clientApplication(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2925   return dissect_mms_ApplicationReference(FALSE, tvb, offset, pinfo, tree, hf_mms_clientApplication);
2926 }
2927 static int dissect_originatingApplication(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2928   return dissect_mms_ApplicationReference(FALSE, tvb, offset, pinfo, tree, hf_mms_originatingApplication);
2929 }
2930 static int dissect_sourceFileServer_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2931   return dissect_mms_ApplicationReference(TRUE, tvb, offset, pinfo, tree, hf_mms_sourceFileServer);
2932 }
2933
2934
2935 static const ber_sequence_t TakeControl_Request_sequence[] = {
2936   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
2937   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_namedToken_impl },
2938   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_priority_impl },
2939   { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acceptableDelay_impl },
2940   { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_controlTimeOut_impl },
2941   { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_abortOnTimeOut_impl },
2942   { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_relinquishIfConnectionLost_impl },
2943   { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_applicationToPreempt_impl },
2944   { 0, 0, 0, NULL }
2945 };
2946
2947 static int
2948 dissect_mms_TakeControl_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2949   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2950                                    TakeControl_Request_sequence, hf_index, ett_mms_TakeControl_Request);
2951
2952   return offset;
2953 }
2954 static int dissect_takeControl_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2955   return dissect_mms_TakeControl_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_takeControl);
2956 }
2957
2958
2959 static const ber_sequence_t RelinquishControl_Request_sequence[] = {
2960   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
2961   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_namedToken_impl },
2962   { 0, 0, 0, NULL }
2963 };
2964
2965 static int
2966 dissect_mms_RelinquishControl_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2967   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2968                                    RelinquishControl_Request_sequence, hf_index, ett_mms_RelinquishControl_Request);
2969
2970   return offset;
2971 }
2972 static int dissect_relinquishControl_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2973   return dissect_mms_RelinquishControl_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_relinquishControl);
2974 }
2975
2976
2977
2978 static int
2979 dissect_mms_Unsigned16(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2980   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2981                                   NULL);
2982
2983   return offset;
2984 }
2985 static int dissect_numbersOfTokens_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2986   return dissect_mms_Unsigned16(TRUE, tvb, offset, pinfo, tree, hf_mms_numbersOfTokens);
2987 }
2988 static int dissect_numberOfTokens_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2989   return dissect_mms_Unsigned16(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfTokens);
2990 }
2991 static int dissect_numberOfOwnedTokens_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2992   return dissect_mms_Unsigned16(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfOwnedTokens);
2993 }
2994 static int dissect_numberOfHungTokens_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2995   return dissect_mms_Unsigned16(TRUE, tvb, offset, pinfo, tree, hf_mms_numberOfHungTokens);
2996 }
2997
2998
2999 static const ber_sequence_t DefineSemaphore_Request_sequence[] = {
3000   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
3001   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_numbersOfTokens_impl },
3002   { 0, 0, 0, NULL }
3003 };
3004
3005 static int
3006 dissect_mms_DefineSemaphore_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3007   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3008                                    DefineSemaphore_Request_sequence, hf_index, ett_mms_DefineSemaphore_Request);
3009
3010   return offset;
3011 }
3012 static int dissect_defineSemaphore_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3013   return dissect_mms_DefineSemaphore_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_defineSemaphore);
3014 }
3015
3016
3017
3018 static int
3019 dissect_mms_DeleteSemaphore_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3020   offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3021
3022   return offset;
3023 }
3024 static int dissect_deleteSemaphore_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3025   return dissect_mms_DeleteSemaphore_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_deleteSemaphore);
3026 }
3027
3028
3029
3030 static int
3031 dissect_mms_ReportSemaphoreStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3032   offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3033
3034   return offset;
3035 }
3036 static int dissect_reportSemaphoreStatus_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3037   return dissect_mms_ReportSemaphoreStatus_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_reportSemaphoreStatus);
3038 }
3039
3040
3041 static const ber_sequence_t ReportPoolSemaphoreStatus_Request_sequence[] = {
3042   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
3043   { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_nameToStartAfter_impl },
3044   { 0, 0, 0, NULL }
3045 };
3046
3047 static int
3048 dissect_mms_ReportPoolSemaphoreStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3049   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3050                                    ReportPoolSemaphoreStatus_Request_sequence, hf_index, ett_mms_ReportPoolSemaphoreStatus_Request);
3051
3052   return offset;
3053 }
3054 static int dissect_reportPoolSemaphoreStatus_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3055   return dissect_mms_ReportPoolSemaphoreStatus_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_reportPoolSemaphoreStatus);
3056 }
3057
3058
3059 static const value_string mms_T_state_vals[] = {
3060   {   0, "queued" },
3061   {   1, "owner" },
3062   {   2, "hung" },
3063   { 0, NULL }
3064 };
3065
3066
3067 static int
3068 dissect_mms_T_state(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3069   offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3070                                   NULL);
3071
3072   return offset;
3073 }
3074 static int dissect_state2_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3075   return dissect_mms_T_state(TRUE, tvb, offset, pinfo, tree, hf_mms_state2);
3076 }
3077
3078
3079 static const ber_sequence_t ReportSemaphoreEntryStatus_Request_sequence[] = {
3080   { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_semaphoreName },
3081   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_state2_impl },
3082   { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_entryIdToStartAfter_impl },
3083   { 0, 0, 0, NULL }
3084 };
3085
3086 static int
3087 dissect_mms_ReportSemaphoreEntryStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3088   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3089                                    ReportSemaphoreEntryStatus_Request_sequence, hf_index, ett_mms_ReportSemaphoreEntryStatus_Request);
3090
3091   return offset;
3092 }
3093 static int dissect_reportSemaphoreEntryStatus_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3094   return dissect_mms_ReportSemaphoreEntryStatus_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_reportSemaphoreEntryStatus);
3095 }
3096
3097
3098 static const ber_sequence_t T_listOfCapabilities1_sequence_of[1] = {
3099   { BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_listOfCapabilities_item },
3100 };
3101
3102 static int
3103 dissect_mms_T_listOfCapabilities1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3104   offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
3105                                       T_listOfCapabilities1_sequence_of, hf_index, ett_mms_T_listOfCapabilities1);
3106
3107   return offset;
3108 }
3109 static int dissect_listOfCapabilities1_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3110   return dissect_mms_T_listOfCapabilities1(TRUE, tvb, offset, pinfo, tree, hf_mms_listOfCapabilities1);
3111 }
3112
3113
3114 static const ber_sequence_t InitiateDownloadSequence_Request_sequence[] = {
3115   { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_domainName_impl },
3116   { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_listOfCapabilities1_impl },
3117   { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_sharable_impl },
3118   { 0, 0, 0, NULL }
3119 };
3120
3121 static int
3122 dissect_mms_InitiateDownloadSequence_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3123   offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3124                                    InitiateDownloadSequence_Request_sequence, hf_index, ett_mms_InitiateDownloadSequence_Request);
3125
3126   return offset;
3127 }
3128 static int dissect_initiateDownloadSequence_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3129   return dissect_mms_InitiateDownloadSequence_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_initiateDownloadSequence);
3130 }
3131
3132
3133
3134 static int
3135 dissect_mms_DownloadSegment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3136   offset = dissect_mms_Identifier(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3137
3138   return offset;
3139 }
3140 static int dissect_downloadSegment_impl(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3141   return dissect_mms_DownloadSegment_Request(TRUE, tvb, offset, pinfo, tree, hf_mms_downloadSegment);
3142 }
3143
3144
3145 static const value_string mms_T_vmd_state_vals[] = {
3146   {   0, "other" },
3147   {   1, "vmd-state-conflict" },
3148   {   2, "vmd-operational-problem" },
3149   {   3, "domain-transfer-problem" },
3150   {   4, "state-machine-id-invalid" },
3151   { 0, NULL }