1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
3 /* packet-mms.c */
4 /* asn2wrs.py -b -p mms -c ./mms.cnf -s ./packet-mms-template -D . -O ../.. mms.asn */
5
6 /* Input file: packet-mms-template.c */
7
8 #line 1 "./asn1/mms/packet-mms-template.c"
9 /* packet-mms_asn1.c
10 *
11 * Ronnie Sahlberg 2005
12 *
13 * Wireshark - Network traffic analyzer
14 * By Gerald Combs <gerald@wireshark.org>
15 * Copyright 1998 Gerald Combs
16 *
17 * SPDX-License-Identifier: GPL-2.0-or-later
18 */
19
20 #include "config.h"
21
22 #include <epan/packet.h>
23 #include <epan/prefs.h>
24 #include <epan/asn1.h>
25 #include <epan/expert.h>
26 #include <epan/proto_data.h>
27
28 #include "packet-ber.h"
29 #include "packet-acse.h"
30 #include "packet-mms.h"
31
32 #define PNAME "MMS"
33 #define PSNAME "MMS"
34 #define PFNAME "mms"
35
36 void proto_register_mms(void);
37 void proto_reg_handoff_mms(void);
38
39 /* Initialize the protocol and registered fields */
40 static int proto_mms = -1;
41
42
43 /*--- Included file: packet-mms-hf.c ---*/
44 #line 1 "./asn1/mms/packet-mms-hf.c"
45 static int hf_mms_confirmed_RequestPDU = -1; /* Confirmed_RequestPDU */
46 static int hf_mms_confirmed_ResponsePDU = -1; /* Confirmed_ResponsePDU */
47 static int hf_mms_confirmed_ErrorPDU = -1; /* Confirmed_ErrorPDU */
48 static int hf_mms_unconfirmed_PDU = -1; /* Unconfirmed_PDU */
49 static int hf_mms_rejectPDU = -1; /* RejectPDU */
50 static int hf_mms_cancel_RequestPDU = -1; /* Cancel_RequestPDU */
51 static int hf_mms_cancel_ResponsePDU = -1; /* Cancel_ResponsePDU */
52 static int hf_mms_cancel_ErrorPDU = -1; /* Cancel_ErrorPDU */
53 static int hf_mms_initiate_RequestPDU = -1; /* Initiate_RequestPDU */
54 static int hf_mms_initiate_ResponsePDU = -1; /* Initiate_ResponsePDU */
55 static int hf_mms_initiate_ErrorPDU = -1; /* Initiate_ErrorPDU */
56 static int hf_mms_conclude_RequestPDU = -1; /* Conclude_RequestPDU */
57 static int hf_mms_conclude_ResponsePDU = -1; /* Conclude_ResponsePDU */
58 static int hf_mms_conclude_ErrorPDU = -1; /* Conclude_ErrorPDU */
59 static int hf_mms_invokeID = -1; /* Unsigned32 */
60 static int hf_mms_listOfModifier = -1; /* SEQUENCE_OF_Modifier */
61 static int hf_mms_listOfModifier_item = -1; /* Modifier */
62 static int hf_mms_confirmedServiceRequest = -1; /* ConfirmedServiceRequest */
63 static int hf_mms_cs_request_detail = -1; /* CS_Request_Detail */
64 static int hf_mms_unconfirmedService = -1; /* UnconfirmedService */
65 static int hf_mms_confirmedServiceResponse = -1; /* ConfirmedServiceResponse */
66 static int hf_mms_modifierPosition = -1; /* Unsigned32 */
67 static int hf_mms_serviceError = -1; /* ServiceError */
68 static int hf_mms_informationReport = -1; /* InformationReport */
69 static int hf_mms_unsolicitedStatus = -1; /* UnsolicitedStatus */
70 static int hf_mms_eventNotification = -1; /* EventNotification */
71 static int hf_mms_attach_To_Event_Condition = -1; /* AttachToEventCondition */
72 static int hf_mms_attach_To_Semaphore = -1; /* AttachToSemaphore */
73 static int hf_mms_status = -1; /* Status_Request */
74 static int hf_mms_getNameList = -1; /* GetNameList_Request */
75 static int hf_mms_identify = -1; /* Identify_Request */
76 static int hf_mms_rename = -1; /* Rename_Request */
77 static int hf_mms_read = -1; /* Read_Request */
78 static int hf_mms_write = -1; /* Write_Request */
79 static int hf_mms_getVariableAccessAttributes = -1; /* GetVariableAccessAttributes_Request */
80 static int hf_mms_defineNamedVariable = -1; /* DefineNamedVariable_Request */
81 static int hf_mms_defineScatteredAccess = -1; /* DefineScatteredAccess_Request */
82 static int hf_mms_getScatteredAccessAttributes = -1; /* GetScatteredAccessAttributes_Request */
83 static int hf_mms_deleteVariableAccess = -1; /* DeleteVariableAccess_Request */
84 static int hf_mms_defineNamedVariableList = -1; /* DefineNamedVariableList_Request */
85 static int hf_mms_getNamedVariableListAttributes = -1; /* GetNamedVariableListAttributes_Request */
86 static int hf_mms_deleteNamedVariableList = -1; /* DeleteNamedVariableList_Request */
87 static int hf_mms_defineNamedType = -1; /* DefineNamedType_Request */
88 static int hf_mms_getNamedTypeAttributes = -1; /* GetNamedTypeAttributes_Request */
89 static int hf_mms_deleteNamedType = -1; /* DeleteNamedType_Request */
90 static int hf_mms_input = -1; /* Input_Request */
91 static int hf_mms_output = -1; /* Output_Request */
92 static int hf_mms_takeControl = -1; /* TakeControl_Request */
93 static int hf_mms_relinquishControl = -1; /* RelinquishControl_Request */
94 static int hf_mms_defineSemaphore = -1; /* DefineSemaphore_Request */
95 static int hf_mms_deleteSemaphore = -1; /* DeleteSemaphore_Request */
96 static int hf_mms_reportSemaphoreStatus = -1; /* ReportSemaphoreStatus_Request */
97 static int hf_mms_reportPoolSemaphoreStatus = -1; /* ReportPoolSemaphoreStatus_Request */
98 static int hf_mms_reportSemaphoreEntryStatus = -1; /* ReportSemaphoreEntryStatus_Request */
99 static int hf_mms_initiateDownloadSequence = -1; /* InitiateDownloadSequence_Request */
100 static int hf_mms_downloadSegment = -1; /* DownloadSegment_Request */
101 static int hf_mms_terminateDownloadSequence = -1; /* TerminateDownloadSequence_Request */
102 static int hf_mms_initiateUploadSequence = -1; /* InitiateUploadSequence_Request */
103 static int hf_mms_uploadSegment = -1; /* UploadSegment_Request */
104 static int hf_mms_terminateUploadSequence = -1; /* TerminateUploadSequence_Request */
105 static int hf_mms_requestDomainDownload = -1; /* RequestDomainDownload_Request */
106 static int hf_mms_requestDomainUpload = -1; /* RequestDomainUpload_Request */
107 static int hf_mms_loadDomainContent = -1; /* LoadDomainContent_Request */
108 static int hf_mms_storeDomainContent = -1; /* StoreDomainContent_Request */
109 static int hf_mms_deleteDomain = -1; /* DeleteDomain_Request */
110 static int hf_mms_getDomainAttributes = -1; /* GetDomainAttributes_Request */
111 static int hf_mms_createProgramInvocation = -1; /* CreateProgramInvocation_Request */
112 static int hf_mms_deleteProgramInvocation = -1; /* DeleteProgramInvocation_Request */
113 static int hf_mms_start = -1; /* Start_Request */
114 static int hf_mms_stop = -1; /* Stop_Request */
115 static int hf_mms_resume = -1; /* Resume_Request */
116 static int hf_mms_reset = -1; /* Reset_Request */
117 static int hf_mms_kill = -1; /* Kill_Request */
118 static int hf_mms_getProgramInvocationAttributes = -1; /* GetProgramInvocationAttributes_Request */
119 static int hf_mms_obtainFile = -1; /* ObtainFile_Request */
120 static int hf_mms_defineEventCondition = -1; /* DefineEventCondition_Request */
121 static int hf_mms_confirmedServiceRequest_deleteEventCondition = -1; /* DeleteEventCondition_Request */
122 static int hf_mms_getEventConditionAttributes = -1; /* GetEventConditionAttributes_Request */
123 static int hf_mms_reportEventConditionStatus = -1; /* ReportEventConditionStatus_Request */
124 static int hf_mms_alterEventConditionMonitoring = -1; /* AlterEventConditionMonitoring_Request */
125 static int hf_mms_triggerEvent = -1; /* TriggerEvent_Request */
126 static int hf_mms_defineEventAction = -1; /* DefineEventAction_Request */
127 static int hf_mms_confirmedServiceRequest_deleteEventAction = -1; /* DeleteEventAction_Request */
128 static int hf_mms_getEventActionAttributes = -1; /* GetEventActionAttributes_Request */
129 static int hf_mms_reportEventActionStatus = -1; /* ReportEventActionStatus_Request */
130 static int hf_mms_defineEventEnrollment = -1; /* DefineEventEnrollment_Request */
131 static int hf_mms_confirmedServiceRequest_deleteEventEnrollment = -1; /* DeleteEventEnrollment_Request */
132 static int hf_mms_alterEventEnrollment = -1; /* AlterEventEnrollment_Request */
133 static int hf_mms_reportEventEnrollmentStatus = -1; /* ReportEventEnrollmentStatus_Request */
134 static int hf_mms_getEventEnrollmentAttributes = -1; /* GetEventEnrollmentAttributes_Request */
135 static int hf_mms_acknowledgeEventNotification = -1; /* AcknowledgeEventNotification_Request */
136 static int hf_mms_getAlarmSummary = -1; /* GetAlarmSummary_Request */
137 static int hf_mms_getAlarmEnrollmentSummary = -1; /* GetAlarmEnrollmentSummary_Request */
138 static int hf_mms_readJournal = -1; /* ReadJournal_Request */
139 static int hf_mms_writeJournal = -1; /* WriteJournal_Request */
140 static int hf_mms_initializeJournal = -1; /* InitializeJournal_Request */
141 static int hf_mms_reportJournalStatus = -1; /* ReportJournalStatus_Request */
142 static int hf_mms_createJournal = -1; /* CreateJournal_Request */
143 static int hf_mms_deleteJournal = -1; /* DeleteJournal_Request */
144 static int hf_mms_getCapabilityList = -1; /* GetCapabilityList_Request */
145 static int hf_mms_fileOpen = -1; /* FileOpen_Request */
146 static int hf_mms_fileRead = -1; /* FileRead_Request */
147 static int hf_mms_fileClose = -1; /* FileClose_Request */
148 static int hf_mms_fileRename = -1; /* FileRename_Request */
149 static int hf_mms_fileDelete = -1; /* FileDelete_Request */
150 static int hf_mms_fileDirectory = -1; /* FileDirectory_Request */
151 static int hf_mms_foo = -1; /* INTEGER */
152 static int hf_mms_status_01 = -1; /* Status_Response */
153 static int hf_mms_getNameList_01 = -1; /* GetNameList_Response */
154 static int hf_mms_identify_01 = -1; /* Identify_Response */
155 static int hf_mms_rename_01 = -1; /* Rename_Response */
156 static int hf_mms_read_01 = -1; /* Read_Response */
157 static int hf_mms_write_01 = -1; /* Write_Response */
158 static int hf_mms_getVariableAccessAttributes_01 = -1; /* GetVariableAccessAttributes_Response */
159 static int hf_mms_defineNamedVariable_01 = -1; /* DefineNamedVariable_Response */
160 static int hf_mms_defineScatteredAccess_01 = -1; /* DefineScatteredAccess_Response */
161 static int hf_mms_getScatteredAccessAttributes_01 = -1; /* GetScatteredAccessAttributes_Response */
162 static int hf_mms_deleteVariableAccess_01 = -1; /* DeleteVariableAccess_Response */
163 static int hf_mms_defineNamedVariableList_01 = -1; /* DefineNamedVariableList_Response */
164 static int hf_mms_getNamedVariableListAttributes_01 = -1; /* GetNamedVariableListAttributes_Response */
165 static int hf_mms_deleteNamedVariableList_01 = -1; /* DeleteNamedVariableList_Response */
166 static int hf_mms_defineNamedType_01 = -1; /* DefineNamedType_Response */
167 static int hf_mms_getNamedTypeAttributes_01 = -1; /* GetNamedTypeAttributes_Response */
168 static int hf_mms_deleteNamedType_01 = -1; /* DeleteNamedType_Response */
169 static int hf_mms_input_01 = -1; /* Input_Response */
170 static int hf_mms_output_01 = -1; /* Output_Response */
171 static int hf_mms_takeControl_01 = -1; /* TakeControl_Response */
172 static int hf_mms_relinquishControl_01 = -1; /* RelinquishControl_Response */
173 static int hf_mms_defineSemaphore_01 = -1; /* DefineSemaphore_Response */
174 static int hf_mms_deleteSemaphore_01 = -1; /* DeleteSemaphore_Response */
175 static int hf_mms_reportSemaphoreStatus_01 = -1; /* ReportSemaphoreStatus_Response */
176 static int hf_mms_reportPoolSemaphoreStatus_01 = -1; /* ReportPoolSemaphoreStatus_Response */
177 static int hf_mms_reportSemaphoreEntryStatus_01 = -1; /* ReportSemaphoreEntryStatus_Response */
178 static int hf_mms_initiateDownloadSequence_01 = -1; /* InitiateDownloadSequence_Response */
179 static int hf_mms_downloadSegment_01 = -1; /* DownloadSegment_Response */
180 static int hf_mms_terminateDownloadSequence_01 = -1; /* TerminateDownloadSequence_Response */
181 static int hf_mms_initiateUploadSequence_01 = -1; /* InitiateUploadSequence_Response */
182 static int hf_mms_uploadSegment_01 = -1; /* UploadSegment_Response */
183 static int hf_mms_terminateUploadSequence_01 = -1; /* TerminateUploadSequence_Response */
184 static int hf_mms_requestDomainDownLoad = -1; /* RequestDomainDownload_Response */
185 static int hf_mms_requestDomainUpload_01 = -1; /* RequestDomainUpload_Response */
186 static int hf_mms_loadDomainContent_01 = -1; /* LoadDomainContent_Response */
187 static int hf_mms_storeDomainContent_01 = -1; /* StoreDomainContent_Response */
188 static int hf_mms_deleteDomain_01 = -1; /* DeleteDomain_Response */
189 static int hf_mms_getDomainAttributes_01 = -1; /* GetDomainAttributes_Response */
190 static int hf_mms_createProgramInvocation_01 = -1; /* CreateProgramInvocation_Response */
191 static int hf_mms_deleteProgramInvocation_01 = -1; /* DeleteProgramInvocation_Response */
192 static int hf_mms_start_01 = -1; /* Start_Response */
193 static int hf_mms_stop_01 = -1; /* Stop_Response */
194 static int hf_mms_resume_01 = -1; /* Resume_Response */
195 static int hf_mms_reset_01 = -1; /* Reset_Response */
196 static int hf_mms_kill_01 = -1; /* Kill_Response */
197 static int hf_mms_getProgramInvocationAttributes_01 = -1; /* GetProgramInvocationAttributes_Response */
198 static int hf_mms_obtainFile_01 = -1; /* ObtainFile_Response */
199 static int hf_mms_fileOpen_01 = -1; /* FileOpen_Response */
200 static int hf_mms_defineEventCondition_01 = -1; /* DefineEventCondition_Response */
201 static int hf_mms_confirmedServiceResponse_deleteEventCondition = -1; /* DeleteEventCondition_Response */
202 static int hf_mms_getEventConditionAttributes_01 = -1; /* GetEventConditionAttributes_Response */
203 static int hf_mms_reportEventConditionStatus_01 = -1; /* ReportEventConditionStatus_Response */
204 static int hf_mms_alterEventConditionMonitoring_01 = -1; /* AlterEventConditionMonitoring_Response */
205 static int hf_mms_triggerEvent_01 = -1; /* TriggerEvent_Response */
206 static int hf_mms_defineEventAction_01 = -1; /* DefineEventAction_Response */
207 static int hf_mms_deleteEventAction = -1; /* DeleteEventAction_Response */
208 static int hf_mms_getEventActionAttributes_01 = -1; /* GetEventActionAttributes_Response */
209 static int hf_mms_reportActionStatus = -1; /* ReportEventActionStatus_Response */
210 static int hf_mms_defineEventEnrollment_01 = -1; /* DefineEventEnrollment_Response */
211 static int hf_mms_confirmedServiceResponse_deleteEventEnrollment = -1; /* DeleteEventEnrollment_Response */
212 static int hf_mms_alterEventEnrollment_01 = -1; /* AlterEventEnrollment_Response */
213 static int hf_mms_reportEventEnrollmentStatus_01 = -1; /* ReportEventEnrollmentStatus_Response */
214 static int hf_mms_getEventEnrollmentAttributes_01 = -1; /* GetEventEnrollmentAttributes_Response */
215 static int hf_mms_acknowledgeEventNotification_01 = -1; /* AcknowledgeEventNotification_Response */
216 static int hf_mms_getAlarmSummary_01 = -1; /* GetAlarmSummary_Response */
217 static int hf_mms_getAlarmEnrollmentSummary_01 = -1; /* GetAlarmEnrollmentSummary_Response */
218 static int hf_mms_readJournal_01 = -1; /* ReadJournal_Response */
219 static int hf_mms_writeJournal_01 = -1; /* WriteJournal_Response */
220 static int hf_mms_initializeJournal_01 = -1; /* InitializeJournal_Response */
221 static int hf_mms_reportJournalStatus_01 = -1; /* ReportJournalStatus_Response */
222 static int hf_mms_createJournal_01 = -1; /* CreateJournal_Response */
223 static int hf_mms_deleteJournal_01 = -1; /* DeleteJournal_Response */
224 static int hf_mms_getCapabilityList_01 = -1; /* GetCapabilityList_Response */
225 static int hf_mms_fileRead_01 = -1; /* FileRead_Response */
226 static int hf_mms_fileClose_01 = -1; /* FileClose_Response */
227 static int hf_mms_fileRename_01 = -1; /* FileRename_Response */
228 static int hf_mms_fileDelete_01 = -1; /* FileDelete_Response */
229 static int hf_mms_fileDirectory_01 = -1; /* FileDirectory_Response */
230 static int hf_mms_FileName_item = -1; /* GraphicString */
231 static int hf_mms_vmd_specific = -1; /* Identifier */
232 static int hf_mms_domain_specific = -1; /* T_domain_specific */
233 static int hf_mms_domainId = -1; /* Identifier */
234 static int hf_mms_itemId = -1; /* Identifier */
235 static int hf_mms_aa_specific = -1; /* Identifier */
236 static int hf_mms_ap_title = -1; /* T_ap_title */
237 static int hf_mms_ap_invocation_id = -1; /* T_ap_invocation_id */
238 static int hf_mms_ae_qualifier = -1; /* T_ae_qualifier */
239 static int hf_mms_ae_invocation_id = -1; /* T_ae_invocation_id */
240 static int hf_mms_localDetailCalling = -1; /* Integer32 */
241 static int hf_mms_proposedMaxServOutstandingCalling = -1; /* Integer16 */
242 static int hf_mms_proposedMaxServOutstandingCalled = -1; /* Integer16 */
243 static int hf_mms_proposedDataStructureNestingLevel = -1; /* Integer8 */
244 static int hf_mms_mmsInitRequestDetail = -1; /* InitRequestDetail */
245 static int hf_mms_proposedVersionNumber = -1; /* Integer16 */
246 static int hf_mms_proposedParameterCBB = -1; /* ParameterSupportOptions */
247 static int hf_mms_servicesSupportedCalling = -1; /* ServiceSupportOptions */
248 static int hf_mms_localDetailCalled = -1; /* Integer32 */
249 static int hf_mms_negociatedMaxServOutstandingCalling = -1; /* Integer16 */
250 static int hf_mms_negociatedMaxServOutstandingCalled = -1; /* Integer16 */
251 static int hf_mms_negociatedDataStructureNestingLevel = -1; /* Integer8 */
252 static int hf_mms_mmsInitResponseDetail = -1; /* InitResponseDetail */
253 static int hf_mms_negociatedVersionNumber = -1; /* Integer16 */
254 static int hf_mms_negociatedParameterCBB = -1; /* ParameterSupportOptions */
255 static int hf_mms_servicesSupportedCalled = -1; /* ServiceSupportOptions */
256 static int hf_mms_originalInvokeID = -1; /* Unsigned32 */
257 static int hf_mms_errorClass = -1; /* T_errorClass */
258 static int hf_mms_vmd_state = -1; /* T_vmd_state */
259 static int hf_mms_application_reference = -1; /* T_application_reference */
260 static int hf_mms_definition = -1; /* T_definition */
261 static int hf_mms_resource = -1; /* T_resource */
262 static int hf_mms_service = -1; /* T_service */
263 static int hf_mms_service_preempt = -1; /* T_service_preempt */
264 static int hf_mms_time_resolution = -1; /* T_time_resolution */
265 static int hf_mms_access = -1; /* T_access */
266 static int hf_mms_initiate = -1; /* T_initiate */
267 static int hf_mms_conclude = -1; /* T_conclude */
268 static int hf_mms_cancel = -1; /* T_cancel */
269 static int hf_mms_file = -1; /* T_file */
270 static int hf_mms_others = -1; /* INTEGER */
271 static int hf_mms_additionalCode = -1; /* INTEGER */
272 static int hf_mms_additionalDescription = -1; /* VisibleString */
273 static int hf_mms_serviceSpecificInformation = -1; /* T_serviceSpecificInformation */
274 static int hf_mms_obtainFile_02 = -1; /* ObtainFile_Error */
275 static int hf_mms_start_02 = -1; /* Start_Error */
276 static int hf_mms_stop_02 = -1; /* Stop_Error */
277 static int hf_mms_resume_02 = -1; /* Resume_Error */
278 static int hf_mms_reset_02 = -1; /* Reset_Error */
279 static int hf_mms_deleteVariableAccess_02 = -1; /* DeleteVariableAccess_Error */
280 static int hf_mms_deleteNamedVariableList_02 = -1; /* DeleteNamedVariableList_Error */
281 static int hf_mms_deleteNamedType_02 = -1; /* DeleteNamedType_Error */
282 static int hf_mms_defineEventEnrollment_Error = -1; /* DefineEventEnrollment_Error */
283 static int hf_mms_fileRename_02 = -1; /* FileRename_Error */
284 static int hf_mms_additionalService = -1; /* AdditionalService_Error */
285 static int hf_mms_changeAccessControl = -1; /* ChangeAccessControl_Error */
286 static int hf_mms_defineEcl = -1; /* DefineEventConditionList_Error */
287 static int hf_mms_addECLReference = -1; /* AddEventConditionListReference_Error */
288 static int hf_mms_removeECLReference = -1; /* RemoveEventConditionListReference_Error */
289 static int hf_mms_initiateUC = -1; /* InitiateUnitControl_Error */
290 static int hf_mms_startUC = -1; /* StartUnitControl_Error */
291 static int hf_mms_stopUC = -1; /* StopUnitControl_Error */
292 static int hf_mms_deleteUC = -1; /* DeleteUnitControl_Error */
293 static int hf_mms_loadUCFromFile = -1; /* LoadUnitControlFromFile_Error */
294 static int hf_mms_eventCondition = -1; /* ObjectName */
295 static int hf_mms_eventConditionList = -1; /* ObjectName */
296 static int hf_mms_domain = -1; /* Identifier */
297 static int hf_mms_programInvocation = -1; /* Identifier */
298 static int hf_mms_programInvocationName = -1; /* Identifier */
299 static int hf_mms_programInvocationState = -1; /* ProgramInvocationState */
300 static int hf_mms_none = -1; /* NULL */
301 static int hf_mms_rejectReason = -1; /* T_rejectReason */
302 static int hf_mms_confirmed_requestPDU = -1; /* T_confirmed_requestPDU */
303 static int hf_mms_confirmed_responsePDU = -1; /* T_confirmed_responsePDU */
304 static int hf_mms_confirmed_errorPDU = -1; /* T_confirmed_errorPDU */
305 static int hf_mms_unconfirmedPDU = -1; /* T_unconfirmedPDU */
306 static int hf_mms_pdu_error = -1; /* T_pdu_error */
307 static int hf_mms_cancel_requestPDU = -1; /* T_cancel_requestPDU */
308 static int hf_mms_cancel_responsePDU = -1; /* T_cancel_responsePDU */
309 static int hf_mms_cancel_errorPDU = -1; /* T_cancel_errorPDU */
310 static int hf_mms_conclude_requestPDU = -1; /* T_conclude_requestPDU */
311 static int hf_mms_conclude_responsePDU = -1; /* T_conclude_responsePDU */
312 static int hf_mms_conclude_errorPDU = -1; /* T_conclude_errorPDU */
313 static int hf_mms_vmdLogicalStatus = -1; /* T_vmdLogicalStatus */
314 static int hf_mms_vmdPhysicalStatus = -1; /* T_vmdPhysicalStatus */
315 static int hf_mms_localDetail = -1; /* BIT_STRING_SIZE_0_128 */
316 static int hf_mms_extendedObjectClass = -1; /* T_extendedObjectClass */
317 static int hf_mms_objectClass = -1; /* T_objectClass */
318 static int hf_mms_objectScope = -1; /* T_objectScope */
319 static int hf_mms_vmdSpecific = -1; /* NULL */
320 static int hf_mms_domainSpecific = -1; /* Identifier */
321 static int hf_mms_aaSpecific = -1; /* NULL */
322 static int hf_mms_getNameList_Request_continueAfter = -1; /* Identifier */
323 static int hf_mms_listOfIdentifier = -1; /* SEQUENCE_OF_Identifier */
324 static int hf_mms_listOfIdentifier_item = -1; /* Identifier */
325 static int hf_mms_moreFollows = -1; /* BOOLEAN */
326 static int hf_mms_vendorName = -1; /* VisibleString */
327 static int hf_mms_modelName = -1; /* VisibleString */
328 static int hf_mms_revision = -1; /* VisibleString */
329 static int hf_mms_listOfAbstractSyntaxes = -1; /* T_listOfAbstractSyntaxes */
330 static int hf_mms_listOfAbstractSyntaxes_item = -1; /* OBJECT_IDENTIFIER */
331 static int hf_mms_extendedObjectClass_01 = -1; /* T_extendedObjectClass_01 */
332 static int hf_mms_objectClass_01 = -1; /* T_objectClass_01 */
333 static int hf_mms_currentName = -1; /* ObjectName */
334 static int hf_mms_newIdentifier = -1; /* Identifier */
335 static int hf_mms_getCapabilityList_Request_continueAfter = -1; /* VisibleString */
336 static int hf_mms_listOfCapabilities = -1; /* T_listOfCapabilities */
337 static int hf_mms_listOfCapabilities_item = -1; /* VisibleString */
338 static int hf_mms_domainName = -1; /* Identifier */
339 static int hf_mms_listOfCapabilities_01 = -1; /* T_listOfCapabilities_01 */
340 static int hf_mms_sharable = -1; /* BOOLEAN */
341 static int hf_mms_loadData = -1; /* T_loadData */
342 static int hf_mms_non_coded = -1; /* OCTET_STRING */
343 static int hf_mms_coded = -1; /* EXTERNALt */
344 static int hf_mms_discard = -1; /* ServiceError */
345 static int hf_mms_ulsmID = -1; /* Integer32 */
346 static int hf_mms_listOfCapabilities_02 = -1; /* T_listOfCapabilities_02 */
347 static int hf_mms_loadData_01 = -1; /* T_loadData_01 */
348 static int hf_mms_listOfCapabilities_03 = -1; /* T_listOfCapabilities_03 */
349 static int hf_mms_fileName = -1; /* FileName */
350 static int hf_mms_listOfCapabilities_04 = -1; /* T_listOfCapabilities_04 */
351 static int hf_mms_thirdParty = -1; /* ApplicationReference */
352 static int hf_mms_filenName = -1; /* FileName */
353 static int hf_mms_listOfCapabilities_05 = -1; /* T_listOfCapabilities_05 */
354 static int hf_mms_getDomainAttributes_Response_state = -1; /* DomainState */
355 static int hf_mms_mmsDeletable = -1; /* BOOLEAN */
356 static int hf_mms_listOfProgramInvocations = -1; /* SEQUENCE_OF_Identifier */
357 static int hf_mms_listOfProgramInvocations_item = -1; /* Identifier */
358 static int hf_mms_uploadInProgress = -1; /* Integer8 */
359 static int hf_mms_listOfDomainName = -1; /* SEQUENCE_OF_Identifier */
360 static int hf_mms_listOfDomainName_item = -1; /* Identifier */
361 static int hf_mms_reusable = -1; /* BOOLEAN */
362 static int hf_mms_monitorType = -1; /* BOOLEAN */
363 static int hf_mms_executionArgument = -1; /* T_executionArgument */
364 static int hf_mms_simpleString = -1; /* VisibleString */
365 static int hf_mms_encodedString = -1; /* EXTERNALt */
366 static int hf_mms_executionArgument_01 = -1; /* T_executionArgument_01 */
367 static int hf_mms_getProgramInvocationAttributes_Response_state = -1; /* ProgramInvocationState */
368 static int hf_mms_listOfDomainNames = -1; /* SEQUENCE_OF_Identifier */
369 static int hf_mms_listOfDomainNames_item = -1; /* Identifier */
370 static int hf_mms_monitor = -1; /* BOOLEAN */
371 static int hf_mms_startArgument = -1; /* VisibleString */
372 static int hf_mms_executionArgument_02 = -1; /* T_executionArgument_02 */
373 static int hf_mms_typeName = -1; /* ObjectName */
374 static int hf_mms_array = -1; /* T_array */
375 static int hf_mms_packed = -1; /* BOOLEAN */
376 static int hf_mms_numberOfElements = -1; /* Unsigned32 */
377 static int hf_mms_elementType = -1; /* TypeSpecification */
378 static int hf_mms_structure = -1; /* T_structure */
379 static int hf_mms_components = -1; /* T_components */
380 static int hf_mms_components_item = -1; /* T_components_item */
381 static int hf_mms_componentName = -1; /* Identifier */
382 static int hf_mms_componentType = -1; /* TypeSpecification */
383 static int hf_mms_boolean = -1; /* NULL */
384 static int hf_mms_typeSpecification_bit_string = -1; /* Integer32 */
385 static int hf_mms_integer = -1; /* Unsigned8 */
386 static int hf_mms_unsigned = -1; /* Unsigned8 */
387 static int hf_mms_typeSpecification_octet_string = -1; /* Integer32 */
388 static int hf_mms_typeSpecification_visible_string = -1; /* Integer32 */
389 static int hf_mms_generalized_time = -1; /* NULL */
390 static int hf_mms_typeSpecification_binary_time = -1; /* BOOLEAN */
391 static int hf_mms_bcd = -1; /* Unsigned8 */
392 static int hf_mms_objId = -1; /* NULL */
393 static int hf_mms_AlternateAccess_item = -1; /* AlternateAccess_item */
394 static int hf_mms_unnamed = -1; /* AlternateAccessSelection */
395 static int hf_mms_named = -1; /* T_named */
396 static int hf_mms_accesst = -1; /* AlternateAccessSelection */
397 static int hf_mms_selectAlternateAccess = -1; /* T_selectAlternateAccess */
398 static int hf_mms_accessSelection = -1; /* T_accessSelection */
399 static int hf_mms_component = -1; /* Identifier */
400 static int hf_mms_index = -1; /* Unsigned32 */
401 static int hf_mms_indexRange = -1; /* T_indexRange */
402 static int hf_mms_lowIndex = -1; /* Unsigned32 */
403 static int hf_mms_allElements = -1; /* NULL */
404 static int hf_mms_alternateAccess = -1; /* AlternateAccess */
405 static int hf_mms_selectAccess = -1; /* T_selectAccess */
406 static int hf_mms_indexRange_01 = -1; /* T_indexRange_01 */
407 static int hf_mms_nmberOfElements = -1; /* Unsigned32 */
408 static int hf_mms_specificationWithResult = -1; /* BOOLEAN */
409 static int hf_mms_variableAccessSpecificatn = -1; /* VariableAccessSpecification */
410 static int hf_mms_listOfAccessResult = -1; /* SEQUENCE_OF_AccessResult */
411 static int hf_mms_listOfAccessResult_item = -1; /* AccessResult */
412 static int hf_mms_listOfData = -1; /* SEQUENCE_OF_Data */
413 static int hf_mms_listOfData_item = -1; /* Data */
414 static int hf_mms_Write_Response_item = -1; /* Write_Response_item */
415 static int hf_mms_failure = -1; /* DataAccessError */
416 static int hf_mms_success = -1; /* NULL */
417 static int hf_mms_variableAccessSpecification = -1; /* VariableAccessSpecification */
418 static int hf_mms_name = -1; /* ObjectName */
419 static int hf_mms_address = -1; /* Address */
420 static int hf_mms_typeSpecification = -1; /* TypeSpecification */
421 static int hf_mms_variableName = -1; /* ObjectName */
422 static int hf_mms_scatteredAccessName = -1; /* ObjectName */
423 static int hf_mms_scatteredAccessDescription = -1; /* ScatteredAccessDescription */
424 static int hf_mms_scopeOfDelete = -1; /* T_scopeOfDelete */
425 static int hf_mms_listOfName = -1; /* SEQUENCE_OF_ObjectName */
426 static int hf_mms_listOfName_item = -1; /* ObjectName */
427 static int hf_mms_numberMatched = -1; /* Unsigned32 */
428 static int hf_mms_numberDeleted = -1; /* Unsigned32 */
429 static int hf_mms_variableListName = -1; /* ObjectName */
430 static int hf_mms_listOfVariable = -1; /* T_listOfVariable */
431 static int hf_mms_listOfVariable_item = -1; /* T_listOfVariable_item */
432 static int hf_mms_variableSpecification = -1; /* VariableSpecification */
433 static int hf_mms_listOfVariable_01 = -1; /* T_listOfVariable_01 */
434 static int hf_mms_listOfVariable_item_01 = -1; /* T_listOfVariable_item_01 */
435 static int hf_mms_scopeOfDelete_01 = -1; /* T_scopeOfDelete_01 */
436 static int hf_mms_listOfVariableListName = -1; /* SEQUENCE_OF_ObjectName */
437 static int hf_mms_listOfVariableListName_item = -1; /* ObjectName */
438 static int hf_mms_scopeOfDelete_02 = -1; /* T_scopeOfDelete_02 */
439 static int hf_mms_listOfTypeName = -1; /* SEQUENCE_OF_ObjectName */
440 static int hf_mms_listOfTypeName_item = -1; /* ObjectName */
441 static int hf_mms_success_01 = -1; /* Data */
442 static int hf_mms_array_01 = -1; /* SEQUENCE_OF_Data */
443 static int hf_mms_array_item = -1; /* Data */
444 static int hf_mms_structure_01 = -1; /* SEQUENCE_OF_Data */
445 static int hf_mms_structure_item = -1; /* Data */
446 static int hf_mms_boolean_01 = -1; /* BOOLEAN */
447 static int hf_mms_data_bit_string = -1; /* BIT_STRING */
448 static int hf_mms_integer_01 = -1; /* INTEGER */
449 static int hf_mms_unsigned_01 = -1; /* INTEGER */
450 static int hf_mms_floating_point = -1; /* FloatingPoint */
451 static int hf_mms_data_octet_string = -1; /* OCTET_STRING */
452 static int hf_mms_data_visible_string = -1; /* VisibleString */
453 static int hf_mms_data_binary_time = -1; /* TimeOfDay */
454 static int hf_mms_bcd_01 = -1; /* INTEGER */
455 static int hf_mms_booleanArray = -1; /* BIT_STRING */
456 static int hf_mms_objId_01 = -1; /* OBJECT_IDENTIFIER */
457 static int hf_mms_mMSString = -1; /* MMSString */
458 static int hf_mms_utc_time = -1; /* UtcTime */
459 static int hf_mms_listOfVariable_02 = -1; /* T_listOfVariable_02 */
460 static int hf_mms_listOfVariable_item_02 = -1; /* T_listOfVariable_item_02 */
461 static int hf_mms_ScatteredAccessDescription_item = -1; /* ScatteredAccessDescription_item */
462 static int hf_mms_variableDescription = -1; /* T_variableDescription */
463 static int hf_mms_invalidated = -1; /* NULL */
464 static int hf_mms_numericAddress = -1; /* Unsigned32 */
465 static int hf_mms_symbolicAddress = -1; /* VisibleString */
466 static int hf_mms_unconstrainedAddress = -1; /* OCTET_STRING */
467 static int hf_mms_semaphoreName = -1; /* ObjectName */
468 static int hf_mms_namedToken = -1; /* Identifier */
469 static int hf_mms_priority = -1; /* Priority */
470 static int hf_mms_acceptableDelay = -1; /* Unsigned32 */
471 static int hf_mms_controlTimeOut = -1; /* Unsigned32 */
472 static int hf_mms_abortOnTimeOut = -1; /* BOOLEAN */
473 static int hf_mms_relinquishIfConnectionLost = -1; /* BOOLEAN */
474 static int hf_mms_applicationToPreempt = -1; /* ApplicationReference */
475 static int hf_mms_noResult = -1; /* NULL */
476 static int hf_mms_numbersOfTokens = -1; /* Unsigned16 */
477 static int hf_mms_class = -1; /* T_class */
478 static int hf_mms_numberOfTokens = -1; /* Unsigned16 */
479 static int hf_mms_numberOfOwnedTokens = -1; /* Unsigned16 */
480 static int hf_mms_numberOfHungTokens = -1; /* Unsigned16 */
481 static int hf_mms_nameToStartAfter = -1; /* Identifier */
482 static int hf_mms_listOfNamedTokens = -1; /* T_listOfNamedTokens */
483 static int hf_mms_listOfNamedTokens_item = -1; /* T_listOfNamedTokens_item */
484 static int hf_mms_freeNamedToken = -1; /* Identifier */
485 static int hf_mms_ownedNamedToken = -1; /* Identifier */
486 static int hf_mms_hungNamedToken = -1; /* Identifier */
487 static int hf_mms_reportSemaphoreEntryStatus_Request_state = -1; /* T_reportSemaphoreEntryStatus_Request_state */
488 static int hf_mms_entryIdToStartAfter = -1; /* OCTET_STRING */
489 static int hf_mms_listOfSemaphoreEntry = -1; /* SEQUENCE_OF_SemaphoreEntry */
490 static int hf_mms_listOfSemaphoreEntry_item = -1; /* SemaphoreEntry */
491 static int hf_mms_entryId = -1; /* OCTET_STRING */
492 static int hf_mms_entryClass = -1; /* T_entryClass */
493 static int hf_mms_applicationReference = -1; /* ApplicationReference */
494 static int hf_mms_remainingTimeOut = -1; /* Unsigned32 */
495 static int hf_mms_operatorStationName = -1; /* Identifier */
496 static int hf_mms_echo = -1; /* BOOLEAN */
497 static int hf_mms_listOfPromptData = -1; /* T_listOfPromptData */
498 static int hf_mms_listOfPromptData_item = -1; /* VisibleString */
499 static int hf_mms_inputTimeOut = -1; /* Unsigned32 */
500 static int hf_mms_listOfOutputData = -1; /* T_listOfOutputData */
501 static int hf_mms_listOfOutputData_item = -1; /* VisibleString */
502 static int hf_mms_eventConditionName = -1; /* ObjectName */
503 static int hf_mms_class_01 = -1; /* EC_Class */
504 static int hf_mms_prio_rity = -1; /* Priority */
505 static int hf_mms_severity = -1; /* Unsigned8 */
506 static int hf_mms_alarmSummaryReports = -1; /* BOOLEAN */
507 static int hf_mms_monitoredVariable = -1; /* VariableSpecification */
508 static int hf_mms_evaluationInterval = -1; /* Unsigned32 */
509 static int hf_mms_specific = -1; /* SEQUENCE_OF_ObjectName */
510 static int hf_mms_specific_item = -1; /* ObjectName */
511 static int hf_mms_aa_specific_01 = -1; /* NULL */
512 static int hf_mms_vmd = -1; /* NULL */
513 static int hf_mms_monitoredVariable_01 = -1; /* T_monitoredVariable */
514 static int hf_mms_variableReference = -1; /* VariableSpecification */
515 static int hf_mms_undefined = -1; /* NULL */
516 static int hf_mms_currentState = -1; /* EC_State */
517 static int hf_mms_numberOfEventEnrollments = -1; /* Unsigned32 */
518 static int hf_mms_enabled = -1; /* BOOLEAN */
519 static int hf_mms_timeOfLastTransitionToActive = -1; /* EventTime */
520 static int hf_mms_timeOfLastTransitionToIdle = -1; /* EventTime */
521 static int hf_mms_eventActionName = -1; /* ObjectName */
522 static int hf_mms_eventEnrollmentName = -1; /* ObjectName */
523 static int hf_mms_eventConditionTransition = -1; /* Transitions */
524 static int hf_mms_alarmAcknowledgementRule = -1; /* AlarmAckRule */
525 static int hf_mms_clientApplication = -1; /* ApplicationReference */
526 static int hf_mms_ec = -1; /* ObjectName */
527 static int hf_mms_ea = -1; /* ObjectName */
528 static int hf_mms_scopeOfRequest = -1; /* T_scopeOfRequest */
529 static int hf_mms_eventEnrollmentNames = -1; /* SEQUENCE_OF_ObjectName */
530 static int hf_mms_eventEnrollmentNames_item = -1; /* ObjectName */
531 static int hf_mms_getEventEnrollmentAttributes_Request_continueAfter = -1; /* ObjectName */
532 static int hf_mms_eventConditionName_01 = -1; /* T_eventConditionName */
533 static int hf_mms_eventActionName_01 = -1; /* T_eventActionName */
534 static int hf_mms_eventAction = -1; /* ObjectName */
535 static int hf_mms_enrollmentClass = -1; /* EE_Class */
536 static int hf_mms_duration = -1; /* EE_Duration */
537 static int hf_mms_remainingAcceptableDelay = -1; /* Unsigned32 */
538 static int hf_mms_listOfEventEnrollment = -1; /* SEQUENCE_OF_EventEnrollment */
539 static int hf_mms_listOfEventEnrollment_item = -1; /* EventEnrollment */
540 static int hf_mms_eventConditionTransitions = -1; /* Transitions */
541 static int hf_mms_notificationLost = -1; /* BOOLEAN */
542 static int hf_mms_alarmAcknowledgmentRule = -1; /* AlarmAckRule */
543 static int hf_mms_currentState_01 = -1; /* EE_State */
544 static int hf_mms_currentState_02 = -1; /* T_currentState */
545 static int hf_mms_alterEventEnrollment_Response_currentState_state = -1; /* EE_State */
546 static int hf_mms_transitionTime = -1; /* EventTime */
547 static int hf_mms_acknowledgedState = -1; /* EC_State */
548 static int hf_mms_timeOfAcknowledgedTransition = -1; /* EventTime */
549 static int hf_mms_enrollmentsOnly = -1; /* BOOLEAN */
550 static int hf_mms_activeAlarmsOnly = -1; /* BOOLEAN */
551 static int hf_mms_acknowledgmentFilter = -1; /* T_acknowledgmentFilter */
552 static int hf_mms_severityFilter = -1; /* T_severityFilter */
553 static int hf_mms_mostSevere = -1; /* Unsigned8 */
554 static int hf_mms_leastSevere = -1; /* Unsigned8 */
555 static int hf_mms_continueAfter = -1; /* ObjectName */
556 static int hf_mms_listOfAlarmSummary = -1; /* SEQUENCE_OF_AlarmSummary */
557 static int hf_mms_listOfAlarmSummary_item = -1; /* AlarmSummary */
558 static int hf_mms_unacknowledgedState = -1; /* T_unacknowledgedState */
559 static int hf_mms_acknowledgmentFilter_01 = -1; /* T_acknowledgmentFilter_01 */
560 static int hf_mms_severityFilter_01 = -1; /* T_severityFilter_01 */
561 static int hf_mms_getAlarmEnrollmentSummary_Request_continueAfter = -1; /* ObjectName */
562 static int hf_mms_listOfAlarmEnrollmentSummary = -1; /* SEQUENCE_OF_AlarmEnrollmentSummary */
563 static int hf_mms_listOfAlarmEnrollmentSummary_item = -1; /* AlarmEnrollmentSummary */
564 static int hf_mms_enrollementState = -1; /* EE_State */
565 static int hf_mms_timeActiveAcknowledged = -1; /* EventTime */
566 static int hf_mms_timeIdleAcknowledged = -1; /* EventTime */
567 static int hf_mms_eventConditionName_02 = -1; /* T_eventConditionName_01 */
568 static int hf_mms_actionResult = -1; /* T_actionResult */
569 static int hf_mms_eventActioName = -1; /* ObjectName */
570 static int hf_mms_eventActionResult = -1; /* T_eventActionResult */
571 static int hf_mms_success_02 = -1; /* ConfirmedServiceResponse */
572 static int hf_mms_failure_01 = -1; /* ServiceError */
573 static int hf_mms_causingTransitions = -1; /* Transitions */
574 static int hf_mms_timeOfDayT = -1; /* TimeOfDay */
575 static int hf_mms_timeSequenceIdentifier = -1; /* Unsigned32 */
576 static int hf_mms_journalName = -1; /* ObjectName */
577 static int hf_mms_rangeStartSpecification = -1; /* T_rangeStartSpecification */
578 static int hf_mms_startingTime = -1; /* TimeOfDay */
579 static int hf_mms_startingEntry = -1; /* OCTET_STRING */
580 static int hf_mms_rangeStopSpecification = -1; /* T_rangeStopSpecification */
581 static int hf_mms_endingTime = -1; /* TimeOfDay */
582 static int hf_mms_numberOfEntries = -1; /* Integer32 */
583 static int hf_mms_listOfVariables = -1; /* T_listOfVariables */
584 static int hf_mms_listOfVariables_item = -1; /* VisibleString */
585 static int hf_mms_entryToStartAfter = -1; /* T_entryToStartAfter */
586 static int hf_mms_timeSpecification = -1; /* TimeOfDay */
587 static int hf_mms_entrySpecification = -1; /* OCTET_STRING */
588 static int hf_mms_listOfJournalEntry = -1; /* SEQUENCE_OF_JournalEntry */
589 static int hf_mms_listOfJournalEntry_item = -1; /* JournalEntry */
590 static int hf_mms_entryIdentifier = -1; /* OCTET_STRING */
591 static int hf_mms_originatingApplication = -1; /* ApplicationReference */
592 static int hf_mms_entryContent = -1; /* EntryContent */
593 static int hf_mms_listOfJournalEntry_01 = -1; /* SEQUENCE_OF_EntryContent */
594 static int hf_mms_listOfJournalEntry_item_01 = -1; /* EntryContent */
595 static int hf_mms_limitSpecification = -1; /* T_limitSpecification */
596 static int hf_mms_limitingTime = -1; /* TimeOfDay */
597 static int hf_mms_limitingEntry = -1; /* OCTET_STRING */
598 static int hf_mms_currentEntries = -1; /* Unsigned32 */
599 static int hf_mms_occurenceTime = -1; /* TimeOfDay */
600 static int hf_mms_additionalDetail = -1; /* JOU_Additional_Detail */
601 static int hf_mms_entryForm = -1; /* T_entryForm */
602 static int hf_mms_data = -1; /* T_data */
603 static int hf_mms_event = -1; /* T_event */
604 static int hf_mms_listOfVariables_01 = -1; /* T_listOfVariables_01 */
605 static int hf_mms_listOfVariables_item_01 = -1; /* T_listOfVariables_item */
606 static int hf_mms_variableTag = -1; /* VisibleString */
607 static int hf_mms_valueSpecification = -1; /* Data */
608 static int hf_mms_annotation = -1; /* VisibleString */
609 static int hf_mms_sourceFileServer = -1; /* ApplicationReference */
610 static int hf_mms_sourceFile = -1; /* FileName */
611 static int hf_mms_destinationFile = -1; /* FileName */
612 static int hf_mms_initialPosition = -1; /* Unsigned32 */
613 static int hf_mms_frsmID = -1; /* Integer32 */
614 static int hf_mms_fileAttributes = -1; /* FileAttributes */
615 static int hf_mms_fileData = -1; /* OCTET_STRING */
616 static int hf_mms_currentFileName = -1; /* FileName */
617 static int hf_mms_newFileName = -1; /* FileName */
618 static int hf_mms_fileSpecification = -1; /* FileName */
619 static int hf_mms_fileDirectory_Request_continueAfter = -1; /* FileName */
620 static int hf_mms_listOfDirectoryEntry = -1; /* SEQUENCE_OF_DirectoryEntry */
621 static int hf_mms_listOfDirectoryEntry_item = -1; /* DirectoryEntry */
622 static int hf_mms_filename = -1; /* FileName */
623 static int hf_mms_sizeOfFile = -1; /* Unsigned32 */
624 static int hf_mms_lastModified = -1; /* GeneralizedTime */
625 /* named bits */
626 static int hf_mms_ParameterSupportOptions_str1 = -1;
627 static int hf_mms_ParameterSupportOptions_str2 = -1;
628 static int hf_mms_ParameterSupportOptions_vnam = -1;
629 static int hf_mms_ParameterSupportOptions_valt = -1;
630 static int hf_mms_ParameterSupportOptions_vadr = -1;
631 static int hf_mms_ParameterSupportOptions_vsca = -1;
632 static int hf_mms_ParameterSupportOptions_tpy = -1;
633 static int hf_mms_ParameterSupportOptions_vlis = -1;
634 static int hf_mms_ParameterSupportOptions_real = -1;
635 static int hf_mms_ParameterSupportOptions_spare_bit9 = -1;
636 static int hf_mms_ParameterSupportOptions_cei = -1;
637 static int hf_mms_ServiceSupportOptions_status = -1;
638 static int hf_mms_ServiceSupportOptions_getNameList = -1;
639 static int hf_mms_ServiceSupportOptions_identify = -1;
640 static int hf_mms_ServiceSupportOptions_rename = -1;
641 static int hf_mms_ServiceSupportOptions_read = -1;
642 static int hf_mms_ServiceSupportOptions_write = -1;
643 static int hf_mms_ServiceSupportOptions_getVariableAccessAttributes = -1;
644 static int hf_mms_ServiceSupportOptions_defineNamedVariable = -1;
645 static int hf_mms_ServiceSupportOptions_defineScatteredAccess = -1;
646 static int hf_mms_ServiceSupportOptions_getScatteredAccessAttributes = -1;
647 static int hf_mms_ServiceSupportOptions_deleteVariableAccess = -1;
648 static int hf_mms_ServiceSupportOptions_defineNamedVariableList = -1;
649 static int hf_mms_ServiceSupportOptions_getNamedVariableListAttributes = -1;
650 static int hf_mms_ServiceSupportOptions_deleteNamedVariableList = -1;
651 static int hf_mms_ServiceSupportOptions_defineNamedType = -1;
652 static int hf_mms_ServiceSupportOptions_getNamedTypeAttributes = -1;
653 static int hf_mms_ServiceSupportOptions_deleteNamedType = -1;
654 static int hf_mms_ServiceSupportOptions_input = -1;
655 static int hf_mms_ServiceSupportOptions_output = -1;
656 static int hf_mms_ServiceSupportOptions_takeControl = -1;
657 static int hf_mms_ServiceSupportOptions_relinquishControl = -1;
658 static int hf_mms_ServiceSupportOptions_defineSemaphore = -1;
659 static int hf_mms_ServiceSupportOptions_deleteSemaphore = -1;
660 static int hf_mms_ServiceSupportOptions_reportSemaphoreStatus = -1;
661 static int hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus = -1;
662 static int hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus = -1;
663 static int hf_mms_ServiceSupportOptions_initiateDownloadSequence = -1;
664 static int hf_mms_ServiceSupportOptions_downloadSegment = -1;
665 static int hf_mms_ServiceSupportOptions_terminateDownloadSequence = -1;
666 static int hf_mms_ServiceSupportOptions_initiateUploadSequence = -1;
667 static int hf_mms_ServiceSupportOptions_uploadSegment = -1;
668 static int hf_mms_ServiceSupportOptions_terminateUploadSequence = -1;
669 static int hf_mms_ServiceSupportOptions_requestDomainDownload = -1;
670 static int hf_mms_ServiceSupportOptions_requestDomainUpload = -1;
671 static int hf_mms_ServiceSupportOptions_loadDomainContent = -1;
672 static int hf_mms_ServiceSupportOptions_storeDomainContent = -1;
673 static int hf_mms_ServiceSupportOptions_deleteDomain = -1;
674 static int hf_mms_ServiceSupportOptions_getDomainAttributes = -1;
675 static int hf_mms_ServiceSupportOptions_createProgramInvocation = -1;
676 static int hf_mms_ServiceSupportOptions_deleteProgramInvocation = -1;
677 static int hf_mms_ServiceSupportOptions_start = -1;
678 static int hf_mms_ServiceSupportOptions_stop = -1;
679 static int hf_mms_ServiceSupportOptions_resume = -1;
680 static int hf_mms_ServiceSupportOptions_reset = -1;
681 static int hf_mms_ServiceSupportOptions_kill = -1;
682 static int hf_mms_ServiceSupportOptions_getProgramInvocationAttributes = -1;
683 static int hf_mms_ServiceSupportOptions_obtainFile = -1;
684 static int hf_mms_ServiceSupportOptions_defineEventCondition = -1;
685 static int hf_mms_ServiceSupportOptions_deleteEventCondition = -1;
686 static int hf_mms_ServiceSupportOptions_getEventConditionAttributes = -1;
687 static int hf_mms_ServiceSupportOptions_reportEventConditionStatus = -1;
688 static int hf_mms_ServiceSupportOptions_alterEventConditionMonitoring = -1;
689 static int hf_mms_ServiceSupportOptions_triggerEvent = -1;
690 static int hf_mms_ServiceSupportOptions_defineEventAction = -1;
691 static int hf_mms_ServiceSupportOptions_deleteEventAction = -1;
692 static int hf_mms_ServiceSupportOptions_getEventActionAttributes = -1;
693 static int hf_mms_ServiceSupportOptions_reportActionStatus = -1;
694 static int hf_mms_ServiceSupportOptions_defineEventEnrollment = -1;
695 static int hf_mms_ServiceSupportOptions_deleteEventEnrollment = -1;
696 static int hf_mms_ServiceSupportOptions_alterEventEnrollment = -1;
697 static int hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus = -1;
698 static int hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes = -1;
699 static int hf_mms_ServiceSupportOptions_acknowledgeEventNotification = -1;
700 static int hf_mms_ServiceSupportOptions_getAlarmSummary = -1;
701 static int hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary = -1;
702 static int hf_mms_ServiceSupportOptions_readJournal = -1;
703 static int hf_mms_ServiceSupportOptions_writeJournal = -1;
704 static int hf_mms_ServiceSupportOptions_initializeJournal = -1;
705 static int hf_mms_ServiceSupportOptions_reportJournalStatus = -1;
706 static int hf_mms_ServiceSupportOptions_createJournal = -1;
707 static int hf_mms_ServiceSupportOptions_deleteJournal = -1;
708 static int hf_mms_ServiceSupportOptions_getCapabilityList = -1;
709 static int hf_mms_ServiceSupportOptions_fileOpen = -1;
710 static int hf_mms_ServiceSupportOptions_fileRead = -1;
711 static int hf_mms_ServiceSupportOptions_fileClose = -1;
712 static int hf_mms_ServiceSupportOptions_fileRename = -1;
713 static int hf_mms_ServiceSupportOptions_fileDelete = -1;
714 static int hf_mms_ServiceSupportOptions_fileDirectory = -1;
715 static int hf_mms_ServiceSupportOptions_unsolicitedStatus = -1;
716 static int hf_mms_ServiceSupportOptions_informationReport = -1;
717 static int hf_mms_ServiceSupportOptions_eventNotification = -1;
718 static int hf_mms_ServiceSupportOptions_attachToEventCondition = -1;
719 static int hf_mms_ServiceSupportOptions_attachToSemaphore = -1;
720 static int hf_mms_ServiceSupportOptions_conclude = -1;
721 static int hf_mms_ServiceSupportOptions_cancel = -1;
722 static int hf_mms_Transitions_idle_to_disabled = -1;
723 static int hf_mms_Transitions_active_to_disabled = -1;
724 static int hf_mms_Transitions_disabled_to_idle = -1;
725 static int hf_mms_Transitions_active_to_idle = -1;
726 static int hf_mms_Transitions_disabled_to_active = -1;
727 static int hf_mms_Transitions_idle_to_active = -1;
728 static int hf_mms_Transitions_any_to_deleted = -1;
729
730 /*--- End of included file: packet-mms-hf.c ---*/
731 #line 35 "./asn1/mms/packet-mms-template.c"
732
733 /* Initialize the subtree pointers */
734 static gint ett_mms = -1;
735
736 /*--- Included file: packet-mms-ett.c ---*/
737 #line 1 "./asn1/mms/packet-mms-ett.c"
738 static gint ett_mms_MMSpdu = -1;
739 static gint ett_mms_Confirmed_RequestPDU = -1;
740 static gint ett_mms_SEQUENCE_OF_Modifier = -1;
741 static gint ett_mms_Unconfirmed_PDU = -1;
742 static gint ett_mms_Confirmed_ResponsePDU = -1;
743 static gint ett_mms_Confirmed_ErrorPDU = -1;
744 static gint ett_mms_UnconfirmedService = -1;
745 static gint ett_mms_Modifier = -1;
746 static gint ett_mms_ConfirmedServiceRequest = -1;
747 static gint ett_mms_CS_Request_Detail = -1;
748 static gint ett_mms_ConfirmedServiceResponse = -1;
749 static gint ett_mms_FileName = -1;
750 static gint ett_mms_ObjectName = -1;
751 static gint ett_mms_T_domain_specific = -1;
752 static gint ett_mms_ApplicationReference = -1;
753 static gint ett_mms_Initiate_RequestPDU = -1;
754 static gint ett_mms_InitRequestDetail = -1;
755 static gint ett_mms_Initiate_ResponsePDU = -1;
756 static gint ett_mms_InitResponseDetail = -1;
757 static gint ett_mms_ParameterSupportOptions = -1;
758 static gint ett_mms_ServiceSupportOptions = -1;
759 static gint ett_mms_Cancel_ErrorPDU = -1;
760 static gint ett_mms_ServiceError = -1;
761 static gint ett_mms_T_errorClass = -1;
762 static gint ett_mms_T_serviceSpecificInformation = -1;
763 static gint ett_mms_AdditionalService_Error = -1;
764 static gint ett_mms_RemoveEventConditionListReference_Error = -1;
765 static gint ett_mms_InitiateUnitControl_Error = -1;
766 static gint ett_mms_StartUnitControl_Error = -1;
767 static gint ett_mms_StopUnitControl_Error = -1;
768 static gint ett_mms_DeleteUnitControl_Error = -1;
769 static gint ett_mms_LoadUnitControlFromFile_Error = -1;
770 static gint ett_mms_RejectPDU = -1;
771 static gint ett_mms_T_rejectReason = -1;
772 static gint ett_mms_Status_Response = -1;
773 static gint ett_mms_GetNameList_Request = -1;
774 static gint ett_mms_T_extendedObjectClass = -1;
775 static gint ett_mms_T_objectScope = -1;
776 static gint ett_mms_GetNameList_Response = -1;
777 static gint ett_mms_SEQUENCE_OF_Identifier = -1;
778 static gint ett_mms_Identify_Response = -1;
779 static gint ett_mms_T_listOfAbstractSyntaxes = -1;
780 static gint ett_mms_Rename_Request = -1;
781 static gint ett_mms_T_extendedObjectClass_01 = -1;
782 static gint ett_mms_GetCapabilityList_Request = -1;
783 static gint ett_mms_GetCapabilityList_Response = -1;
784 static gint ett_mms_T_listOfCapabilities = -1;
785 static gint ett_mms_InitiateDownloadSequence_Request = -1;
786 static gint ett_mms_T_listOfCapabilities_01 = -1;
787 static gint ett_mms_DownloadSegment_Response = -1;
788 static gint ett_mms_T_loadData = -1;
789 static gint ett_mms_TerminateDownloadSequence_Request = -1;
790 static gint ett_mms_InitiateUploadSequence_Response = -1;
791 static gint ett_mms_T_listOfCapabilities_02 = -1;
792 static gint ett_mms_UploadSegment_Response = -1;
793 static gint ett_mms_T_loadData_01 = -1;
794 static gint ett_mms_RequestDomainDownload_Request = -1;
795 static gint ett_mms_T_listOfCapabilities_03 = -1;
796 static gint ett_mms_RequestDomainUpload_Request = -1;
797 static gint ett_mms_LoadDomainContent_Request = -1;
798 static gint ett_mms_T_listOfCapabilities_04 = -1;
799 static gint ett_mms_StoreDomainContent_Request = -1;
800 static gint ett_mms_GetDomainAttributes_Response = -1;
801 static gint ett_mms_T_listOfCapabilities_05 = -1;
802 static gint ett_mms_CreateProgramInvocation_Request = -1;
803 static gint ett_mms_Start_Request = -1;
804 static gint ett_mms_T_executionArgument = -1;
805 static gint ett_mms_Stop_Request = -1;
806 static gint ett_mms_Resume_Request = -1;
807 static gint ett_mms_T_executionArgument_01 = -1;
808 static gint ett_mms_Reset_Request = -1;
809 static gint ett_mms_Kill_Request = -1;
810 static gint ett_mms_GetProgramInvocationAttributes_Response = -1;
811 static gint ett_mms_T_executionArgument_02 = -1;
812 static gint ett_mms_TypeSpecification = -1;
813 static gint ett_mms_T_array = -1;
814 static gint ett_mms_T_structure = -1;
815 static gint ett_mms_T_components = -1;
816 static gint ett_mms_T_components_item = -1;
817 static gint ett_mms_AlternateAccess = -1;
818 static gint ett_mms_AlternateAccess_item = -1;
819 static gint ett_mms_T_named = -1;
820 static gint ett_mms_AlternateAccessSelection = -1;
821 static gint ett_mms_T_selectAlternateAccess = -1;
822 static gint ett_mms_T_accessSelection = -1;
823 static gint ett_mms_T_indexRange = -1;
824 static gint ett_mms_T_selectAccess = -1;
825 static gint ett_mms_T_indexRange_01 = -1;
826 static gint ett_mms_Read_Request = -1;
827 static gint ett_mms_Read_Response = -1;
828 static gint ett_mms_SEQUENCE_OF_AccessResult = -1;
829 static gint ett_mms_Write_Request = -1;
830 static gint ett_mms_SEQUENCE_OF_Data = -1;
831 static gint ett_mms_Write_Response = -1;
832 static gint ett_mms_Write_Response_item = -1;
833 static gint ett_mms_InformationReport = -1;
834 static gint ett_mms_GetVariableAccessAttributes_Request = -1;
835 static gint ett_mms_GetVariableAccessAttributes_Response = -1;
836 static gint ett_mms_DefineNamedVariable_Request = -1;
837 static gint ett_mms_DefineScatteredAccess_Request = -1;
838 static gint ett_mms_GetScatteredAccessAttributes_Response = -1;
839 static gint ett_mms_DeleteVariableAccess_Request = -1;
840 static gint ett_mms_SEQUENCE_OF_ObjectName = -1;
841 static gint ett_mms_DeleteVariableAccess_Response = -1;
842 static gint ett_mms_DefineNamedVariableList_Request = -1;
843 static gint ett_mms_T_listOfVariable = -1;
844 static gint ett_mms_T_listOfVariable_item = -1;
845 static gint ett_mms_GetNamedVariableListAttributes_Response = -1;
846 static gint ett_mms_T_listOfVariable_01 = -1;
847 static gint ett_mms_T_listOfVariable_item_01 = -1;
848 static gint ett_mms_DeleteNamedVariableList_Request = -1;
849 static gint ett_mms_DeleteNamedVariableList_Response = -1;
850 static gint ett_mms_DefineNamedType_Request = -1;
851 static gint ett_mms_GetNamedTypeAttributes_Response = -1;
852 static gint ett_mms_DeleteNamedType_Request = -1;
853 static gint ett_mms_DeleteNamedType_Response = -1;
854 static gint ett_mms_AccessResult = -1;
855 static gint ett_mms_Data = -1;
856 static gint ett_mms_VariableAccessSpecification = -1;
857 static gint ett_mms_T_listOfVariable_02 = -1;
858 static gint ett_mms_T_listOfVariable_item_02 = -1;
859 static gint ett_mms_ScatteredAccessDescription = -1;
860 static gint ett_mms_ScatteredAccessDescription_item = -1;
861 static gint ett_mms_VariableSpecification = -1;
862 static gint ett_mms_T_variableDescription = -1;
863 static gint ett_mms_Address = -1;
864 static gint ett_mms_TakeControl_Request = -1;
865 static gint ett_mms_TakeControl_Response = -1;
866 static gint ett_mms_RelinquishControl_Request = -1;
867 static gint ett_mms_DefineSemaphore_Request = -1;
868 static gint ett_mms_ReportSemaphoreStatus_Response = -1;
869 static gint ett_mms_ReportPoolSemaphoreStatus_Request = -1;
870 static gint ett_mms_ReportPoolSemaphoreStatus_Response = -1;
871 static gint ett_mms_T_listOfNamedTokens = -1;
872 static gint ett_mms_T_listOfNamedTokens_item = -1;
873 static gint ett_mms_ReportSemaphoreEntryStatus_Request = -1;
874 static gint ett_mms_ReportSemaphoreEntryStatus_Response = -1;
875 static gint ett_mms_SEQUENCE_OF_SemaphoreEntry = -1;
876 static gint ett_mms_AttachToSemaphore = -1;
877 static gint ett_mms_SemaphoreEntry = -1;
878 static gint ett_mms_Input_Request = -1;
879 static gint ett_mms_T_listOfPromptData = -1;
880 static gint ett_mms_Output_Request = -1;
881 static gint ett_mms_T_listOfOutputData = -1;
882 static gint ett_mms_DefineEventCondition_Request = -1;
883 static gint ett_mms_DeleteEventCondition_Request = -1;
884 static gint ett_mms_GetEventConditionAttributes_Response = -1;
885 static gint ett_mms_T_monitoredVariable = -1;
886 static gint ett_mms_ReportEventConditionStatus_Response = -1;
887 static gint ett_mms_AlterEventConditionMonitoring_Request = -1;
888 static gint ett_mms_TriggerEvent_Request = -1;
889 static gint ett_mms_DefineEventAction_Request = -1;
890 static gint ett_mms_DeleteEventAction_Request = -1;
891 static gint ett_mms_GetEventActionAttributes_Response = -1;
892 static gint ett_mms_DefineEventEnrollment_Request = -1;
893 static gint ett_mms_DeleteEventEnrollment_Request = -1;
894 static gint ett_mms_GetEventEnrollmentAttributes_Request = -1;
895 static gint ett_mms_EventEnrollment = -1;
896 static gint ett_mms_T_eventConditionName = -1;
897 static gint ett_mms_T_eventActionName = -1;
898 static gint ett_mms_GetEventEnrollmentAttributes_Response = -1;
899 static gint ett_mms_SEQUENCE_OF_EventEnrollment = -1;
900 static gint ett_mms_ReportEventEnrollmentStatus_Response = -1;
901 static gint ett_mms_AlterEventEnrollment_Request = -1;
902 static gint ett_mms_AlterEventEnrollment_Response = -1;
903 static gint ett_mms_T_currentState = -1;
904 static gint ett_mms_AcknowledgeEventNotification_Request = -1;
905 static gint ett_mms_GetAlarmSummary_Request = -1;
906 static gint ett_mms_T_severityFilter = -1;
907 static gint ett_mms_GetAlarmSummary_Response = -1;
908 static gint ett_mms_SEQUENCE_OF_AlarmSummary = -1;
909 static gint ett_mms_AlarmSummary = -1;
910 static gint ett_mms_GetAlarmEnrollmentSummary_Request = -1;
911 static gint ett_mms_T_severityFilter_01 = -1;
912 static gint ett_mms_GetAlarmEnrollmentSummary_Response = -1;
913 static gint ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary = -1;
914 static gint ett_mms_AlarmEnrollmentSummary = -1;
915 static gint ett_mms_EventNotification = -1;
916 static gint ett_mms_T_eventConditionName_01 = -1;
917 static gint ett_mms_T_actionResult = -1;
918 static gint ett_mms_T_eventActionResult = -1;
919 static gint ett_mms_AttachToEventCondition = -1;
920 static gint ett_mms_EventTime = -1;
921 static gint ett_mms_Transitions = -1;
922 static gint ett_mms_ReadJournal_Request = -1;
923 static gint ett_mms_T_rangeStartSpecification = -1;
924 static gint ett_mms_T_rangeStopSpecification = -1;
925 static gint ett_mms_T_listOfVariables = -1;
926 static gint ett_mms_T_entryToStartAfter = -1;
927 static gint ett_mms_ReadJournal_Response = -1;
928 static gint ett_mms_SEQUENCE_OF_JournalEntry = -1;
929 static gint ett_mms_JournalEntry = -1;
930 static gint ett_mms_WriteJournal_Request = -1;
931 static gint ett_mms_SEQUENCE_OF_EntryContent = -1;
932 static gint ett_mms_InitializeJournal_Request = -1;
933 static gint ett_mms_T_limitSpecification = -1;
934 static gint ett_mms_ReportJournalStatus_Response = -1;
935 static gint ett_mms_CreateJournal_Request = -1;
936 static gint ett_mms_DeleteJournal_Request = -1;
937 static gint ett_mms_EntryContent = -1;
938 static gint ett_mms_T_entryForm = -1;
939 static gint ett_mms_T_data = -1;
940 static gint ett_mms_T_event = -1;
941 static gint ett_mms_T_listOfVariables_01 = -1;
942 static gint ett_mms_T_listOfVariables_item = -1;
943 static gint ett_mms_ObtainFile_Request = -1;
944 static gint ett_mms_FileOpen_Request = -1;
945 static gint ett_mms_FileOpen_Response = -1;
946 static gint ett_mms_FileRead_Response = -1;
947 static gint ett_mms_FileRename_Request = -1;
948 static gint ett_mms_FileDirectory_Request = -1;
949 static gint ett_mms_FileDirectory_Response = -1;
950 static gint ett_mms_SEQUENCE_OF_DirectoryEntry = -1;
951 static gint ett_mms_DirectoryEntry = -1;
952 static gint ett_mms_FileAttributes = -1;
953
954 /*--- End of included file: packet-mms-ett.c ---*/
955 #line 39 "./asn1/mms/packet-mms-template.c"
956
957 static expert_field ei_mms_mal_timeofday_encoding = EI_INIT;
958 static expert_field ei_mms_mal_utctime_encoding = EI_INIT;
959 static expert_field ei_mms_zero_pdu = EI_INIT;
960
961 /*****************************************************************************/
962 /* Packet private data */
963 /* For this dissector, all access to actx->private_data should be made */
964 /* through this API, which ensures that they will not overwrite each other!! */
965 /*****************************************************************************/
966
967 #define BUFFER_SIZE_PRE 10
968 #define BUFFER_SIZE_MORE 1024
969
970 typedef struct mms_private_data_t
971 {
972 char preCinfo[BUFFER_SIZE_PRE];
973 char moreCinfo[BUFFER_SIZE_MORE];
974 } mms_private_data_t;
975
976
977 /* Helper function to get or create the private data struct */
978 static
mms_get_private_data(asn1_ctx_t * actx)979 mms_private_data_t* mms_get_private_data(asn1_ctx_t *actx)
980 {
981 packet_info *pinfo = actx->pinfo;
982 mms_private_data_t *private_data = (mms_private_data_t *)p_get_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num);
983 if(private_data != NULL )
984 return private_data;
985 else {
986 private_data = wmem_new0(pinfo->pool, mms_private_data_t);
987 p_add_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num, private_data);
988 return private_data;
989 }
990 }
991
992 /* Helper function to test presence of private data struct */
993 static gboolean
mms_has_private_data(asn1_ctx_t * actx)994 mms_has_private_data(asn1_ctx_t *actx)
995 {
996 packet_info *pinfo = actx->pinfo;
997 return (p_get_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num) != NULL);
998 }
999
1000 static void
private_data_add_preCinfo(asn1_ctx_t * actx,guint32 val)1001 private_data_add_preCinfo(asn1_ctx_t *actx, guint32 val)
1002 {
1003 mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
1004 g_snprintf(private_data->preCinfo, BUFFER_SIZE_PRE, "%02d ", val);
1005 }
1006
1007 static char*
private_data_get_preCinfo(asn1_ctx_t * actx)1008 private_data_get_preCinfo(asn1_ctx_t *actx)
1009 {
1010 mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
1011 return private_data->preCinfo;
1012 }
1013
1014 static void
private_data_add_moreCinfo_id(asn1_ctx_t * actx,tvbuff_t * tvb)1015 private_data_add_moreCinfo_id(asn1_ctx_t *actx, tvbuff_t *tvb)
1016 {
1017 mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
1018 (void) g_strlcat(private_data->moreCinfo, " ", BUFFER_SIZE_MORE);
1019 (void) g_strlcat(private_data->moreCinfo, tvb_get_string_enc(actx->pinfo->pool,
1020 tvb, 2, tvb_get_guint8(tvb, 1), ENC_STRING), BUFFER_SIZE_MORE);
1021 }
1022
1023 static void
private_data_add_moreCinfo_float(asn1_ctx_t * actx,tvbuff_t * tvb)1024 private_data_add_moreCinfo_float(asn1_ctx_t *actx, tvbuff_t *tvb)
1025 {
1026 mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
1027 g_snprintf(private_data->moreCinfo, BUFFER_SIZE_MORE,
1028 " %f", tvb_get_ieee_float(tvb, 1, ENC_BIG_ENDIAN));
1029 }
1030
1031 static char*
private_data_get_moreCinfo(asn1_ctx_t * actx)1032 private_data_get_moreCinfo(asn1_ctx_t *actx)
1033 {
1034 mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
1035 return private_data->moreCinfo;
1036 }
1037
1038 /*****************************************************************************/
1039
1040
1041
1042 /*--- Included file: packet-mms-fn.c ---*/
1043 #line 1 "./asn1/mms/packet-mms-fn.c"
1044 /*--- Cyclic dependencies ---*/
1045
1046 /* TypeSpecification -> TypeSpecification/array -> TypeSpecification */
1047 /* TypeSpecification -> TypeSpecification/structure -> TypeSpecification/structure/components -> TypeSpecification/structure/components/_item -> TypeSpecification */
1048 static int dissect_mms_TypeSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
1049
1050 /* VariableSpecification -> ScatteredAccessDescription -> ScatteredAccessDescription/_item -> VariableSpecification */
1051 static int dissect_mms_VariableSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
1052
1053 /* AlternateAccess -> AlternateAccess/_item -> AlternateAccessSelection -> AlternateAccessSelection/selectAlternateAccess -> AlternateAccess */
1054 static int dissect_mms_AlternateAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
1055
1056 /* Data -> Data/array -> Data */
1057 static int dissect_mms_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
1058
1059
1060
1061
1062 static int
dissect_mms_Unsigned32(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1063 dissect_mms_Unsigned32(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1064 #line 189 "./asn1/mms/mms.cnf"
1065 guint32 val;
1066 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1067 &val);
1068
1069 if (hf_index == hf_mms_invokeID)
1070 private_data_add_preCinfo(actx, val);
1071
1072
1073
1074 return offset;
1075 }
1076
1077
1078
1079 static int
dissect_mms_Identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1080 dissect_mms_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1081 #line 199 "./asn1/mms/mms.cnf"
1082 int offset_id = offset;
1083 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
1084 actx, tree, tvb, offset, hf_index,
1085 NULL);
1086
1087 if ((hf_index == hf_mms_domainId) || (hf_index == hf_mms_itemId)) {
1088 if (tvb_get_guint8(tvb, offset_id) == 0x1a)
1089 private_data_add_moreCinfo_id(actx,tvb);
1090 }
1091
1092 return offset;
1093 }
1094
1095
1096 static const ber_sequence_t T_domain_specific_sequence[] = {
1097 { &hf_mms_domainId , BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_Identifier },
1098 { &hf_mms_itemId , BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_Identifier },
1099 { NULL, 0, 0, 0, NULL }
1100 };
1101
1102 static int
dissect_mms_T_domain_specific(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1103 dissect_mms_T_domain_specific(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1104 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1105 T_domain_specific_sequence, hf_index, ett_mms_T_domain_specific);
1106
1107 return offset;
1108 }
1109
1110
1111 static const value_string mms_ObjectName_vals[] = {
1112 { 0, "vmd-specific" },
1113 { 1, "domain-specific" },
1114 { 2, "aa-specific" },
1115 { 0, NULL }
1116 };
1117
1118 static const ber_choice_t ObjectName_choice[] = {
1119 { 0, &hf_mms_vmd_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1120 { 1, &hf_mms_domain_specific , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_domain_specific },
1121 { 2, &hf_mms_aa_specific , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1122 { 0, NULL, 0, 0, 0, NULL }
1123 };
1124
1125 static int
dissect_mms_ObjectName(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1126 dissect_mms_ObjectName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1127 offset = dissect_ber_choice(actx, tree, tvb, offset,
1128 ObjectName_choice, hf_index, ett_mms_ObjectName,
1129 NULL);
1130
1131 return offset;
1132 }
1133
1134
1135 static int * const Transitions_bits[] = {
1136 &hf_mms_Transitions_idle_to_disabled,
1137 &hf_mms_Transitions_active_to_disabled,
1138 &hf_mms_Transitions_disabled_to_idle,
1139 &hf_mms_Transitions_active_to_idle,
1140 &hf_mms_Transitions_disabled_to_active,
1141 &hf_mms_Transitions_idle_to_active,
1142 &hf_mms_Transitions_any_to_deleted,
1143 NULL
1144 };
1145
1146 static int
dissect_mms_Transitions(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1147 dissect_mms_Transitions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1148 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1149 Transitions_bits, 7, hf_index, ett_mms_Transitions,
1150 NULL);
1151
1152 return offset;
1153 }
1154
1155
1156 static const ber_sequence_t AttachToEventCondition_sequence[] = {
1157 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
1158 { &hf_mms_eventConditionName, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
1159 { &hf_mms_causingTransitions, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Transitions },
1160 { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1161 { NULL, 0, 0, 0, NULL }
1162 };
1163
1164 static int
dissect_mms_AttachToEventCondition(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1165 dissect_mms_AttachToEventCondition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1166 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1167 AttachToEventCondition_sequence, hf_index, ett_mms_AttachToEventCondition);
1168
1169 return offset;
1170 }
1171
1172
1173
1174 static int
dissect_mms_Unsigned8(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1175 dissect_mms_Unsigned8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1176 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1177 NULL);
1178
1179 return offset;
1180 }
1181
1182
1183
1184 static int
dissect_mms_Priority(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1185 dissect_mms_Priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1186 offset = dissect_mms_Unsigned8(implicit_tag, tvb, offset, actx, tree, hf_index);
1187
1188 return offset;
1189 }
1190
1191
1192
1193 static int
dissect_mms_BOOLEAN(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1194 dissect_mms_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1195 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
1196
1197 return offset;
1198 }
1199
1200
1201 static const ber_sequence_t AttachToSemaphore_sequence[] = {
1202 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
1203 { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1204 { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
1205 { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1206 { &hf_mms_controlTimeOut , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1207 { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1208 { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1209 { NULL, 0, 0, 0, NULL }
1210 };
1211
1212 static int
dissect_mms_AttachToSemaphore(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1213 dissect_mms_AttachToSemaphore(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1214 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1215 AttachToSemaphore_sequence, hf_index, ett_mms_AttachToSemaphore);
1216
1217 return offset;
1218 }
1219
1220
1221 static const value_string mms_Modifier_vals[] = {
1222 { 0, "attach-To-Event-Condition" },
1223 { 1, "attach-To-Semaphore" },
1224 { 0, NULL }
1225 };
1226
1227 static const ber_choice_t Modifier_choice[] = {
1228 { 0, &hf_mms_attach_To_Event_Condition, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_AttachToEventCondition },
1229 { 1, &hf_mms_attach_To_Semaphore, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_AttachToSemaphore },
1230 { 0, NULL, 0, 0, 0, NULL }
1231 };
1232
1233 static int
dissect_mms_Modifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1234 dissect_mms_Modifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1235 offset = dissect_ber_choice(actx, tree, tvb, offset,
1236 Modifier_choice, hf_index, ett_mms_Modifier,
1237 NULL);
1238
1239 return offset;
1240 }
1241
1242
1243 static const ber_sequence_t SEQUENCE_OF_Modifier_sequence_of[1] = {
1244 { &hf_mms_listOfModifier_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Modifier },
1245 };
1246
1247 static int
dissect_mms_SEQUENCE_OF_Modifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1248 dissect_mms_SEQUENCE_OF_Modifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1249 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1250 SEQUENCE_OF_Modifier_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Modifier);
1251
1252 return offset;
1253 }
1254
1255
1256
1257 static int
dissect_mms_Status_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1258 dissect_mms_Status_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1259 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
1260
1261 return offset;
1262 }
1263
1264
1265 static const value_string mms_T_objectClass_vals[] = {
1266 { 0, "nammedVariable" },
1267 { 1, "scatteredAccess" },
1268 { 2, "namedVariableList" },
1269 { 3, "namedType" },
1270 { 4, "semaphore" },
1271 { 5, "eventCondition" },
1272 { 6, "eventAction" },
1273 { 7, "eventEnrollment" },
1274 { 8, "journal" },
1275 { 9, "domain" },
1276 { 10, "programInvocation" },
1277 { 11, "operatorStation" },
1278 { 0, NULL }
1279 };
1280
1281
1282 static int
dissect_mms_T_objectClass(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1283 dissect_mms_T_objectClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1284 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1285 NULL);
1286
1287 return offset;
1288 }
1289
1290
1291 static const value_string mms_T_extendedObjectClass_vals[] = {
1292 { 0, "objectClass" },
1293 { 0, NULL }
1294 };
1295
1296 static const ber_choice_t T_extendedObjectClass_choice[] = {
1297 { 0, &hf_mms_objectClass , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_objectClass },
1298 { 0, NULL, 0, 0, 0, NULL }
1299 };
1300
1301 static int
dissect_mms_T_extendedObjectClass(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1302 dissect_mms_T_extendedObjectClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1303 offset = dissect_ber_choice(actx, tree, tvb, offset,
1304 T_extendedObjectClass_choice, hf_index, ett_mms_T_extendedObjectClass,
1305 NULL);
1306
1307 return offset;
1308 }
1309
1310
1311
1312 static int
dissect_mms_NULL(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1313 dissect_mms_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1314 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
1315
1316 return offset;
1317 }
1318
1319
1320 static const value_string mms_T_objectScope_vals[] = {
1321 { 0, "vmdSpecific" },
1322 { 1, "domainSpecific" },
1323 { 2, "aaSpecific" },
1324 { 0, NULL }
1325 };
1326
1327 static const ber_choice_t T_objectScope_choice[] = {
1328 { 0, &hf_mms_vmdSpecific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1329 { 1, &hf_mms_domainSpecific , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1330 { 2, &hf_mms_aaSpecific , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1331 { 0, NULL, 0, 0, 0, NULL }
1332 };
1333
1334 static int
dissect_mms_T_objectScope(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1335 dissect_mms_T_objectScope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1336 offset = dissect_ber_choice(actx, tree, tvb, offset,
1337 T_objectScope_choice, hf_index, ett_mms_T_objectScope,
1338 NULL);
1339
1340 return offset;
1341 }
1342
1343
1344 static const ber_sequence_t GetNameList_Request_sequence[] = {
1345 { &hf_mms_extendedObjectClass, BER_CLASS_CON, 0, 0, dissect_mms_T_extendedObjectClass },
1346 { &hf_mms_objectScope , BER_CLASS_CON, 1, 0, dissect_mms_T_objectScope },
1347 { &hf_mms_getNameList_Request_continueAfter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1348 { NULL, 0, 0, 0, NULL }
1349 };
1350
1351 static int
dissect_mms_GetNameList_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1352 dissect_mms_GetNameList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1353 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1354 GetNameList_Request_sequence, hf_index, ett_mms_GetNameList_Request);
1355
1356 return offset;
1357 }
1358
1359
1360
1361 static int
dissect_mms_Identify_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1362 dissect_mms_Identify_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1363 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
1364
1365 return offset;
1366 }
1367
1368
1369 static const value_string mms_T_objectClass_01_vals[] = {
1370 { 0, "namedVariable" },
1371 { 1, "scatteredAccess" },
1372 { 2, "namedVariableList" },
1373 { 3, "namedType" },
1374 { 4, "semaphore" },
1375 { 5, "eventCondition" },
1376 { 6, "eventAction" },
1377 { 7, "eventEnrollment" },
1378 { 8, "journal" },
1379 { 9, "domain" },
1380 { 10, "programInvocation" },
1381 { 11, "operatorStation" },
1382 { 0, NULL }
1383 };
1384
1385
1386 static int
dissect_mms_T_objectClass_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1387 dissect_mms_T_objectClass_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1388 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1389 NULL);
1390
1391 return offset;
1392 }
1393
1394
1395 static const value_string mms_T_extendedObjectClass_01_vals[] = {
1396 { 0, "objectClass" },
1397 { 0, NULL }
1398 };
1399
1400 static const ber_choice_t T_extendedObjectClass_01_choice[] = {
1401 { 0, &hf_mms_objectClass_01 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_objectClass_01 },
1402 { 0, NULL, 0, 0, 0, NULL }
1403 };
1404
1405 static int
dissect_mms_T_extendedObjectClass_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1406 dissect_mms_T_extendedObjectClass_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1407 offset = dissect_ber_choice(actx, tree, tvb, offset,
1408 T_extendedObjectClass_01_choice, hf_index, ett_mms_T_extendedObjectClass_01,
1409 NULL);
1410
1411 return offset;
1412 }
1413
1414
1415 static const ber_sequence_t Rename_Request_sequence[] = {
1416 { &hf_mms_extendedObjectClass_01, BER_CLASS_CON, 0, 0, dissect_mms_T_extendedObjectClass_01 },
1417 { &hf_mms_currentName , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
1418 { &hf_mms_newIdentifier , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1419 { NULL, 0, 0, 0, NULL }
1420 };
1421
1422 static int
dissect_mms_Rename_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1423 dissect_mms_Rename_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1424 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1425 Rename_Request_sequence, hf_index, ett_mms_Rename_Request);
1426
1427 return offset;
1428 }
1429
1430
1431
1432 static int
dissect_mms_VisibleString(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1433 dissect_mms_VisibleString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1434 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
1435 actx, tree, tvb, offset, hf_index,
1436 NULL);
1437
1438 return offset;
1439 }
1440
1441
1442
1443 static int
dissect_mms_OCTET_STRING(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1444 dissect_mms_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1445 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1446 NULL);
1447
1448 return offset;
1449 }
1450
1451
1452 static const value_string mms_Address_vals[] = {
1453 { 0, "numericAddress" },
1454 { 1, "symbolicAddress" },
1455 { 2, "unconstrainedAddress" },
1456 { 0, NULL }
1457 };
1458
1459 static const ber_choice_t Address_choice[] = {
1460 { 0, &hf_mms_numericAddress , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1461 { 1, &hf_mms_symbolicAddress , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
1462 { 2, &hf_mms_unconstrainedAddress, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
1463 { 0, NULL, 0, 0, 0, NULL }
1464 };
1465
1466 static int
dissect_mms_Address(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1467 dissect_mms_Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1468 offset = dissect_ber_choice(actx, tree, tvb, offset,
1469 Address_choice, hf_index, ett_mms_Address,
1470 NULL);
1471
1472 return offset;
1473 }
1474
1475
1476 static const ber_sequence_t T_array_sequence[] = {
1477 { &hf_mms_packed , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1478 { &hf_mms_numberOfElements, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1479 { &hf_mms_elementType , BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
1480 { NULL, 0, 0, 0, NULL }
1481 };
1482
1483 static int
dissect_mms_T_array(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1484 dissect_mms_T_array(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1485 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1486 T_array_sequence, hf_index, ett_mms_T_array);
1487
1488 return offset;
1489 }
1490
1491
1492 static const ber_sequence_t T_components_item_sequence[] = {
1493 { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1494 { &hf_mms_componentType , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
1495 { NULL, 0, 0, 0, NULL }
1496 };
1497
1498 static int
dissect_mms_T_components_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1499 dissect_mms_T_components_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1500 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1501 T_components_item_sequence, hf_index, ett_mms_T_components_item);
1502
1503 return offset;
1504 }
1505
1506
1507 static const ber_sequence_t T_components_sequence_of[1] = {
1508 { &hf_mms_components_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_components_item },
1509 };
1510
1511 static int
dissect_mms_T_components(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1512 dissect_mms_T_components(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1513 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1514 T_components_sequence_of, hf_index, ett_mms_T_components);
1515
1516 return offset;
1517 }
1518
1519
1520 static const ber_sequence_t T_structure_sequence[] = {
1521 { &hf_mms_packed , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1522 { &hf_mms_components , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_components },
1523 { NULL, 0, 0, 0, NULL }
1524 };
1525
1526 static int
dissect_mms_T_structure(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1527 dissect_mms_T_structure(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1528 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1529 T_structure_sequence, hf_index, ett_mms_T_structure);
1530
1531 return offset;
1532 }
1533
1534
1535
1536 static int
dissect_mms_Integer32(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1537 dissect_mms_Integer32(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1538 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1539 NULL);
1540
1541 return offset;
1542 }
1543
1544
1545 static const value_string mms_TypeSpecification_vals[] = {
1546 { 0, "typeName" },
1547 { 1, "array" },
1548 { 2, "structure" },
1549 { 3, "boolean" },
1550 { 4, "bit-string" },
1551 { 5, "integer" },
1552 { 6, "unsigned" },
1553 { 9, "octet-string" },
1554 { 10, "visible-string" },
1555 { 11, "generalized-time" },
1556 { 12, "binary-time" },
1557 { 13, "bcd" },
1558 { 15, "objId" },
1559 { 0, NULL }
1560 };
1561
1562 static const ber_choice_t TypeSpecification_choice[] = {
1563 { 0, &hf_mms_typeName , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
1564 { 1, &hf_mms_array , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_array },
1565 { 2, &hf_mms_structure , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_structure },
1566 { 3, &hf_mms_boolean , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1567 { 4, &hf_mms_typeSpecification_bit_string, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
1568 { 5, &hf_mms_integer , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
1569 { 6, &hf_mms_unsigned , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
1570 { 9, &hf_mms_typeSpecification_octet_string, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
1571 { 10, &hf_mms_typeSpecification_visible_string, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
1572 { 11, &hf_mms_generalized_time, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1573 { 12, &hf_mms_typeSpecification_binary_time, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1574 { 13, &hf_mms_bcd , BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
1575 { 15, &hf_mms_objId , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1576 { 0, NULL, 0, 0, 0, NULL }
1577 };
1578
1579 static int
dissect_mms_TypeSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1580 dissect_mms_TypeSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1581 offset = dissect_ber_choice(actx, tree, tvb, offset,
1582 TypeSpecification_choice, hf_index, ett_mms_TypeSpecification,
1583 NULL);
1584
1585 return offset;
1586 }
1587
1588
1589 static const ber_sequence_t T_variableDescription_sequence[] = {
1590 { &hf_mms_address , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Address },
1591 { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
1592 { NULL, 0, 0, 0, NULL }
1593 };
1594
1595 static int
dissect_mms_T_variableDescription(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1596 dissect_mms_T_variableDescription(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1597 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1598 T_variableDescription_sequence, hf_index, ett_mms_T_variableDescription);
1599
1600 return offset;
1601 }
1602
1603
1604 static const ber_sequence_t T_indexRange_sequence[] = {
1605 { &hf_mms_lowIndex , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1606 { &hf_mms_numberOfElements, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1607 { NULL, 0, 0, 0, NULL }
1608 };
1609
1610 static int
dissect_mms_T_indexRange(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1611 dissect_mms_T_indexRange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1612 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1613 T_indexRange_sequence, hf_index, ett_mms_T_indexRange);
1614
1615 return offset;
1616 }
1617
1618
1619 static const value_string mms_T_accessSelection_vals[] = {
1620 { 0, "component" },
1621 { 1, "index" },
1622 { 2, "indexRange" },
1623 { 3, "allElements" },
1624 { 0, NULL }
1625 };
1626
1627 static const ber_choice_t T_accessSelection_choice[] = {
1628 { 0, &hf_mms_component , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1629 { 1, &hf_mms_index , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1630 { 2, &hf_mms_indexRange , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_indexRange },
1631 { 3, &hf_mms_allElements , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1632 { 0, NULL, 0, 0, 0, NULL }
1633 };
1634
1635 static int
dissect_mms_T_accessSelection(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1636 dissect_mms_T_accessSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1637 offset = dissect_ber_choice(actx, tree, tvb, offset,
1638 T_accessSelection_choice, hf_index, ett_mms_T_accessSelection,
1639 NULL);
1640
1641 return offset;
1642 }
1643
1644
1645 static const ber_sequence_t T_selectAlternateAccess_sequence[] = {
1646 { &hf_mms_accessSelection , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_accessSelection },
1647 { &hf_mms_alternateAccess , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlternateAccess },
1648 { NULL, 0, 0, 0, NULL }
1649 };
1650
1651 static int
dissect_mms_T_selectAlternateAccess(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1652 dissect_mms_T_selectAlternateAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1653 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1654 T_selectAlternateAccess_sequence, hf_index, ett_mms_T_selectAlternateAccess);
1655
1656 return offset;
1657 }
1658
1659
1660 static const ber_sequence_t T_indexRange_01_sequence[] = {
1661 { &hf_mms_lowIndex , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1662 { &hf_mms_nmberOfElements , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1663 { NULL, 0, 0, 0, NULL }
1664 };
1665
1666 static int
dissect_mms_T_indexRange_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1667 dissect_mms_T_indexRange_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1668 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1669 T_indexRange_01_sequence, hf_index, ett_mms_T_indexRange_01);
1670
1671 return offset;
1672 }
1673
1674
1675 static const value_string mms_T_selectAccess_vals[] = {
1676 { 1, "component" },
1677 { 2, "index" },
1678 { 3, "indexRange" },
1679 { 4, "allElements" },
1680 { 0, NULL }
1681 };
1682
1683 static const ber_choice_t T_selectAccess_choice[] = {
1684 { 1, &hf_mms_component , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1685 { 2, &hf_mms_index , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
1686 { 3, &hf_mms_indexRange_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_indexRange_01 },
1687 { 4, &hf_mms_allElements , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1688 { 0, NULL, 0, 0, 0, NULL }
1689 };
1690
1691 static int
dissect_mms_T_selectAccess(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1692 dissect_mms_T_selectAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1693 offset = dissect_ber_choice(actx, tree, tvb, offset,
1694 T_selectAccess_choice, hf_index, ett_mms_T_selectAccess,
1695 NULL);
1696
1697 return offset;
1698 }
1699
1700
1701 static const value_string mms_AlternateAccessSelection_vals[] = {
1702 { 0, "selectAlternateAccess" },
1703 { 1, "selectAccess" },
1704 { 0, NULL }
1705 };
1706
1707 static const ber_choice_t AlternateAccessSelection_choice[] = {
1708 { 0, &hf_mms_selectAlternateAccess, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_selectAlternateAccess },
1709 { 1, &hf_mms_selectAccess , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_T_selectAccess },
1710 { 0, NULL, 0, 0, 0, NULL }
1711 };
1712
1713 static int
dissect_mms_AlternateAccessSelection(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1714 dissect_mms_AlternateAccessSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1715 offset = dissect_ber_choice(actx, tree, tvb, offset,
1716 AlternateAccessSelection_choice, hf_index, ett_mms_AlternateAccessSelection,
1717 NULL);
1718
1719 return offset;
1720 }
1721
1722
1723 static const ber_sequence_t T_named_sequence[] = {
1724 { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1725 { &hf_mms_accesst , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AlternateAccessSelection },
1726 { NULL, 0, 0, 0, NULL }
1727 };
1728
1729 static int
dissect_mms_T_named(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1730 dissect_mms_T_named(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1731 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1732 T_named_sequence, hf_index, ett_mms_T_named);
1733
1734 return offset;
1735 }
1736
1737
1738 static const value_string mms_AlternateAccess_item_vals[] = {
1739 { 0, "unnamed" },
1740 { 1, "named" },
1741 { 0, NULL }
1742 };
1743
1744 static const ber_choice_t AlternateAccess_item_choice[] = {
1745 { 0, &hf_mms_unnamed , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_AlternateAccessSelection },
1746 { 1, &hf_mms_named , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_named },
1747 { 0, NULL, 0, 0, 0, NULL }
1748 };
1749
1750 static int
dissect_mms_AlternateAccess_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1751 dissect_mms_AlternateAccess_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1752 offset = dissect_ber_choice(actx, tree, tvb, offset,
1753 AlternateAccess_item_choice, hf_index, ett_mms_AlternateAccess_item,
1754 NULL);
1755
1756 return offset;
1757 }
1758
1759
1760 static const ber_sequence_t AlternateAccess_sequence_of[1] = {
1761 { &hf_mms_AlternateAccess_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AlternateAccess_item },
1762 };
1763
1764 static int
dissect_mms_AlternateAccess(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1765 dissect_mms_AlternateAccess(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1766 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1767 AlternateAccess_sequence_of, hf_index, ett_mms_AlternateAccess);
1768
1769 return offset;
1770 }
1771
1772
1773 static const ber_sequence_t ScatteredAccessDescription_item_sequence[] = {
1774 { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
1775 { &hf_mms_variableSpecification, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification },
1776 { &hf_mms_alternateAccess , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess },
1777 { NULL, 0, 0, 0, NULL }
1778 };
1779
1780 static int
dissect_mms_ScatteredAccessDescription_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1781 dissect_mms_ScatteredAccessDescription_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1782 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1783 ScatteredAccessDescription_item_sequence, hf_index, ett_mms_ScatteredAccessDescription_item);
1784
1785 return offset;
1786 }
1787
1788
1789 static const ber_sequence_t ScatteredAccessDescription_sequence_of[1] = {
1790 { &hf_mms_ScatteredAccessDescription_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_ScatteredAccessDescription_item },
1791 };
1792
1793 static int
dissect_mms_ScatteredAccessDescription(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1794 dissect_mms_ScatteredAccessDescription(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1795 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1796 ScatteredAccessDescription_sequence_of, hf_index, ett_mms_ScatteredAccessDescription);
1797
1798 return offset;
1799 }
1800
1801
1802 static const value_string mms_VariableSpecification_vals[] = {
1803 { 0, "name" },
1804 { 1, "address" },
1805 { 2, "variableDescription" },
1806 { 3, "scatteredAccessDescription" },
1807 { 4, "invalidated" },
1808 { 0, NULL }
1809 };
1810
1811 static const ber_choice_t VariableSpecification_choice[] = {
1812 { 0, &hf_mms_name , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
1813 { 1, &hf_mms_address , BER_CLASS_CON, 1, 0, dissect_mms_Address },
1814 { 2, &hf_mms_variableDescription, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_variableDescription },
1815 { 3, &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription },
1816 { 4, &hf_mms_invalidated , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
1817 { 0, NULL, 0, 0, 0, NULL }
1818 };
1819
1820 static int
dissect_mms_VariableSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1821 dissect_mms_VariableSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1822 offset = dissect_ber_choice(actx, tree, tvb, offset,
1823 VariableSpecification_choice, hf_index, ett_mms_VariableSpecification,
1824 NULL);
1825
1826 return offset;
1827 }
1828
1829
1830 static const ber_sequence_t T_listOfVariable_item_02_sequence[] = {
1831 { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification },
1832 { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess },
1833 { NULL, 0, 0, 0, NULL }
1834 };
1835
1836 static int
dissect_mms_T_listOfVariable_item_02(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1837 dissect_mms_T_listOfVariable_item_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1838 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1839 T_listOfVariable_item_02_sequence, hf_index, ett_mms_T_listOfVariable_item_02);
1840
1841 return offset;
1842 }
1843
1844
1845 static const ber_sequence_t T_listOfVariable_02_sequence_of[1] = {
1846 { &hf_mms_listOfVariable_item_02, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item_02 },
1847 };
1848
1849 static int
dissect_mms_T_listOfVariable_02(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1850 dissect_mms_T_listOfVariable_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1851 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1852 T_listOfVariable_02_sequence_of, hf_index, ett_mms_T_listOfVariable_02);
1853
1854 return offset;
1855 }
1856
1857
1858 static const value_string mms_VariableAccessSpecification_vals[] = {
1859 { 0, "listOfVariable" },
1860 { 1, "variableListName" },
1861 { 0, NULL }
1862 };
1863
1864 static const ber_choice_t VariableAccessSpecification_choice[] = {
1865 { 0, &hf_mms_listOfVariable_02, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable_02 },
1866 { 1, &hf_mms_variableListName, BER_CLASS_CON, 1, 0, dissect_mms_ObjectName },
1867 { 0, NULL, 0, 0, 0, NULL }
1868 };
1869
1870 static int
dissect_mms_VariableAccessSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1871 dissect_mms_VariableAccessSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1872 offset = dissect_ber_choice(actx, tree, tvb, offset,
1873 VariableAccessSpecification_choice, hf_index, ett_mms_VariableAccessSpecification,
1874 NULL);
1875
1876 return offset;
1877 }
1878
1879
1880 static const ber_sequence_t Read_Request_sequence[] = {
1881 { &hf_mms_specificationWithResult, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
1882 { &hf_mms_variableAccessSpecificatn, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification },
1883 { NULL, 0, 0, 0, NULL }
1884 };
1885
1886 static int
dissect_mms_Read_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1887 dissect_mms_Read_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1888 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1889 Read_Request_sequence, hf_index, ett_mms_Read_Request);
1890
1891 return offset;
1892 }
1893
1894
1895 static const ber_sequence_t SEQUENCE_OF_Data_sequence_of[1] = {
1896 { &hf_mms_listOfData_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Data },
1897 };
1898
1899 static int
dissect_mms_SEQUENCE_OF_Data(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1900 dissect_mms_SEQUENCE_OF_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1901 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1902 SEQUENCE_OF_Data_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Data);
1903
1904 return offset;
1905 }
1906
1907
1908
1909 static int
dissect_mms_BIT_STRING(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1910 dissect_mms_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1911 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1912 NULL, 0, hf_index, -1,
1913 NULL);
1914
1915 return offset;
1916 }
1917
1918
1919
1920 static int
dissect_mms_INTEGER(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1921 dissect_mms_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1922 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1923 NULL);
1924
1925 return offset;
1926 }
1927
1928
1929
1930 static int
dissect_mms_FloatingPoint(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1931 dissect_mms_FloatingPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1932 #line 195 "./asn1/mms/mms.cnf"
1933 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1934 NULL);
1935
1936 private_data_add_moreCinfo_float(actx, tvb);
1937
1938
1939
1940 return offset;
1941 }
1942
1943
1944
1945 static int
dissect_mms_TimeOfDay(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1946 dissect_mms_TimeOfDay(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1947 #line 100 "./asn1/mms/mms.cnf"
1948
1949 guint32 len;
1950 guint32 milliseconds;
1951 guint16 days;
1952 gchar * ptime;
1953 nstime_t ts;
1954
1955 len = tvb_reported_length_remaining(tvb, offset);
1956
1957 if(len == 4)
1958 {
1959 milliseconds = tvb_get_ntohl(tvb, offset);
1960 ptime = signed_time_msecs_to_str(actx->pinfo->pool, milliseconds);
1961
1962 if(hf_index >= 0)
1963 {
1964 proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
1965 }
1966 return offset;
1967 }
1968
1969 if(len == 6)
1970 {
1971 milliseconds = tvb_get_ntohl(tvb, offset);
1972 days = tvb_get_ntohs(tvb, offset+4);
1973
1974 /* 5113 days between 01-01-1970 and 01-01-1984 */
1975 /* 86400 seconds in one day */
1976
1977 ts.secs = (days + 5113) * 86400 + milliseconds / 1000;
1978 ts.nsecs = (milliseconds % 1000) * 1000000U;
1979
1980 ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
1981 if(hf_index >= 0)
1982 {
1983 proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
1984 }
1985
1986 return offset;
1987 }
1988
1989 proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_timeofday_encoding,
1990 tvb, offset, len, "BER Error: malformed TimeOfDay encoding, length must be 4 or 6 bytes");
1991 if(hf_index >= 0)
1992 {
1993 proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
1994 }
1995 return offset;
1996
1997
1998
1999
2000 return offset;
2001 }
2002
2003
2004
2005 static int
dissect_mms_OBJECT_IDENTIFIER(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2006 dissect_mms_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2007 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2008
2009 return offset;
2010 }
2011
2012
2013
2014 static int
dissect_mms_MMSString(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2015 dissect_mms_MMSString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2016 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String,
2017 actx, tree, tvb, offset, hf_index,
2018 NULL);
2019
2020 return offset;
2021 }
2022
2023
2024
2025 static int
dissect_mms_UtcTime(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2026 dissect_mms_UtcTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2027 #line 151 "./asn1/mms/mms.cnf"
2028
2029 guint32 len;
2030 guint32 seconds;
2031 guint32 fraction;
2032 guint32 nanoseconds;
2033 nstime_t ts;
2034 gchar * ptime;
2035
2036 len = tvb_reported_length_remaining(tvb, offset);
2037
2038 if(len != 8)
2039 {
2040 proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_utctime_encoding,
2041 tvb, offset, len, "BER Error: malformed IEC61850 UTCTime encoding, length must be 8 bytes");
2042 if(hf_index >= 0)
2043 {
2044 proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
2045 }
2046 return offset;
2047 }
2048
2049 seconds = tvb_get_ntohl(tvb, offset);
2050 fraction = tvb_get_ntoh24(tvb, offset+4) * 0x100; /* Only 3 bytes are recommended */
2051 nanoseconds = (guint32)( ((guint64)fraction * G_GUINT64_CONSTANT(1000000000)) / G_GUINT64_CONSTANT(0x100000000) ) ;
2052
2053 ts.secs = seconds;
2054 ts.nsecs = nanoseconds;
2055
2056 ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
2057
2058 if(hf_index >= 0)
2059 {
2060 proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
2061 }
2062
2063 return offset;
2064
2065
2066
2067 return offset;
2068 }
2069
2070
2071 static const value_string mms_Data_vals[] = {
2072 { 1, "array" },
2073 { 2, "structure" },
2074 { 3, "boolean" },
2075 { 4, "bit-string" },
2076 { 5, "integer" },
2077 { 6, "unsigned" },
2078 { 7, "floating-point" },
2079 { 9, "octet-string" },
2080 { 10, "visible-string" },
2081 { 12, "binary-time" },
2082 { 13, "bcd" },
2083 { 14, "booleanArray" },
2084 { 15, "objId" },
2085 { 16, "mMSString" },
2086 { 17, "utc-time" },
2087 { 0, NULL }
2088 };
2089
2090 static const ber_choice_t Data_choice[] = {
2091 { 1, &hf_mms_array_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Data },
2092 { 2, &hf_mms_structure_01 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Data },
2093 { 3, &hf_mms_boolean_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
2094 { 4, &hf_mms_data_bit_string , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_BIT_STRING },
2095 { 5, &hf_mms_integer_01 , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER },
2096 { 6, &hf_mms_unsigned_01 , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER },
2097 { 7, &hf_mms_floating_point , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_FloatingPoint },
2098 { 9, &hf_mms_data_octet_string, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
2099 { 10, &hf_mms_data_visible_string, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
2100 { 12, &hf_mms_data_binary_time, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
2101 { 13, &hf_mms_bcd_01 , BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER },
2102 { 14, &hf_mms_booleanArray , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_BIT_STRING },
2103 { 15, &hf_mms_objId_01 , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_OBJECT_IDENTIFIER },
2104 { 16, &hf_mms_mMSString , BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_MMSString },
2105 { 17, &hf_mms_utc_time , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_UtcTime },
2106 { 0, NULL, 0, 0, 0, NULL }
2107 };
2108
2109 static int
dissect_mms_Data(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2110 dissect_mms_Data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2111 offset = dissect_ber_choice(actx, tree, tvb, offset,
2112 Data_choice, hf_index, ett_mms_Data,
2113 NULL);
2114
2115 return offset;
2116 }
2117
2118
2119 static const ber_sequence_t Write_Request_sequence[] = {
2120 { &hf_mms_variableAccessSpecificatn, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification },
2121 { &hf_mms_listOfData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Data },
2122 { NULL, 0, 0, 0, NULL }
2123 };
2124
2125 static int
dissect_mms_Write_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2126 dissect_mms_Write_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2127 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2128 Write_Request_sequence, hf_index, ett_mms_Write_Request);
2129
2130 return offset;
2131 }
2132
2133
2134 static const value_string mms_GetVariableAccessAttributes_Request_vals[] = {
2135 { 0, "name" },
2136 { 1, "address" },
2137 { 0, NULL }
2138 };
2139
2140 static const ber_choice_t GetVariableAccessAttributes_Request_choice[] = {
2141 { 0, &hf_mms_name , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
2142 { 1, &hf_mms_address , BER_CLASS_CON, 1, 0, dissect_mms_Address },
2143 { 0, NULL, 0, 0, 0, NULL }
2144 };
2145
2146 static int
dissect_mms_GetVariableAccessAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2147 dissect_mms_GetVariableAccessAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2148 offset = dissect_ber_choice(actx, tree, tvb, offset,
2149 GetVariableAccessAttributes_Request_choice, hf_index, ett_mms_GetVariableAccessAttributes_Request,
2150 NULL);
2151
2152 return offset;
2153 }
2154
2155
2156 static const ber_sequence_t DefineNamedVariable_Request_sequence[] = {
2157 { &hf_mms_variableName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2158 { &hf_mms_address , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_Address },
2159 { &hf_mms_typeSpecification, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
2160 { NULL, 0, 0, 0, NULL }
2161 };
2162
2163 static int
dissect_mms_DefineNamedVariable_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2164 dissect_mms_DefineNamedVariable_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2165 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2166 DefineNamedVariable_Request_sequence, hf_index, ett_mms_DefineNamedVariable_Request);
2167
2168 return offset;
2169 }
2170
2171
2172 static const ber_sequence_t DefineScatteredAccess_Request_sequence[] = {
2173 { &hf_mms_scatteredAccessName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2174 { &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription },
2175 { NULL, 0, 0, 0, NULL }
2176 };
2177
2178 static int
dissect_mms_DefineScatteredAccess_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2179 dissect_mms_DefineScatteredAccess_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2180 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2181 DefineScatteredAccess_Request_sequence, hf_index, ett_mms_DefineScatteredAccess_Request);
2182
2183 return offset;
2184 }
2185
2186
2187
2188 static int
dissect_mms_GetScatteredAccessAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2189 dissect_mms_GetScatteredAccessAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2190 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
2191
2192 return offset;
2193 }
2194
2195
2196 static const value_string mms_T_scopeOfDelete_vals[] = {
2197 { 0, "specific" },
2198 { 1, "aa-specific" },
2199 { 2, "domain" },
2200 { 3, "vmd" },
2201 { 0, NULL }
2202 };
2203
2204
2205 static int
dissect_mms_T_scopeOfDelete(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2206 dissect_mms_T_scopeOfDelete(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2207 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2208 NULL);
2209
2210 return offset;
2211 }
2212
2213
2214 static const ber_sequence_t SEQUENCE_OF_ObjectName_sequence_of[1] = {
2215 { &hf_mms_listOfName_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2216 };
2217
2218 static int
dissect_mms_SEQUENCE_OF_ObjectName(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2219 dissect_mms_SEQUENCE_OF_ObjectName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2220 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2221 SEQUENCE_OF_ObjectName_sequence_of, hf_index, ett_mms_SEQUENCE_OF_ObjectName);
2222
2223 return offset;
2224 }
2225
2226
2227 static const ber_sequence_t DeleteVariableAccess_Request_sequence[] = {
2228 { &hf_mms_scopeOfDelete , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete },
2229 { &hf_mms_listOfName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
2230 { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2231 { NULL, 0, 0, 0, NULL }
2232 };
2233
2234 static int
dissect_mms_DeleteVariableAccess_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2235 dissect_mms_DeleteVariableAccess_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2236 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2237 DeleteVariableAccess_Request_sequence, hf_index, ett_mms_DeleteVariableAccess_Request);
2238
2239 return offset;
2240 }
2241
2242
2243 static const ber_sequence_t T_listOfVariable_item_sequence[] = {
2244 { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification },
2245 { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess },
2246 { NULL, 0, 0, 0, NULL }
2247 };
2248
2249 static int
dissect_mms_T_listOfVariable_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2250 dissect_mms_T_listOfVariable_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2251 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2252 T_listOfVariable_item_sequence, hf_index, ett_mms_T_listOfVariable_item);
2253
2254 return offset;
2255 }
2256
2257
2258 static const ber_sequence_t T_listOfVariable_sequence_of[1] = {
2259 { &hf_mms_listOfVariable_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item },
2260 };
2261
2262 static int
dissect_mms_T_listOfVariable(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2263 dissect_mms_T_listOfVariable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2264 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2265 T_listOfVariable_sequence_of, hf_index, ett_mms_T_listOfVariable);
2266
2267 return offset;
2268 }
2269
2270
2271 static const ber_sequence_t DefineNamedVariableList_Request_sequence[] = {
2272 { &hf_mms_variableListName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2273 { &hf_mms_listOfVariable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable },
2274 { NULL, 0, 0, 0, NULL }
2275 };
2276
2277 static int
dissect_mms_DefineNamedVariableList_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2278 dissect_mms_DefineNamedVariableList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2279 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2280 DefineNamedVariableList_Request_sequence, hf_index, ett_mms_DefineNamedVariableList_Request);
2281
2282 return offset;
2283 }
2284
2285
2286
2287 static int
dissect_mms_GetNamedVariableListAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2288 dissect_mms_GetNamedVariableListAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2289 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
2290
2291 return offset;
2292 }
2293
2294
2295 static const value_string mms_T_scopeOfDelete_01_vals[] = {
2296 { 0, "specific" },
2297 { 1, "aa-specific" },
2298 { 2, "domain" },
2299 { 3, "vmd" },
2300 { 0, NULL }
2301 };
2302
2303
2304 static int
dissect_mms_T_scopeOfDelete_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2305 dissect_mms_T_scopeOfDelete_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2306 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2307 NULL);
2308
2309 return offset;
2310 }
2311
2312
2313 static const ber_sequence_t DeleteNamedVariableList_Request_sequence[] = {
2314 { &hf_mms_scopeOfDelete_01, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete_01 },
2315 { &hf_mms_listOfVariableListName, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
2316 { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2317 { NULL, 0, 0, 0, NULL }
2318 };
2319
2320 static int
dissect_mms_DeleteNamedVariableList_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2321 dissect_mms_DeleteNamedVariableList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2322 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2323 DeleteNamedVariableList_Request_sequence, hf_index, ett_mms_DeleteNamedVariableList_Request);
2324
2325 return offset;
2326 }
2327
2328
2329 static const ber_sequence_t DefineNamedType_Request_sequence[] = {
2330 { &hf_mms_typeName , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2331 { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
2332 { NULL, 0, 0, 0, NULL }
2333 };
2334
2335 static int
dissect_mms_DefineNamedType_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2336 dissect_mms_DefineNamedType_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2337 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2338 DefineNamedType_Request_sequence, hf_index, ett_mms_DefineNamedType_Request);
2339
2340 return offset;
2341 }
2342
2343
2344
2345 static int
dissect_mms_GetNamedTypeAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2346 dissect_mms_GetNamedTypeAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2347 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
2348
2349 return offset;
2350 }
2351
2352
2353 static const value_string mms_T_scopeOfDelete_02_vals[] = {
2354 { 0, "specific" },
2355 { 1, "aa-specific" },
2356 { 2, "domain" },
2357 { 3, "vmd" },
2358 { 0, NULL }
2359 };
2360
2361
2362 static int
dissect_mms_T_scopeOfDelete_02(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2363 dissect_mms_T_scopeOfDelete_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2364 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2365 NULL);
2366
2367 return offset;
2368 }
2369
2370
2371 static const ber_sequence_t DeleteNamedType_Request_sequence[] = {
2372 { &hf_mms_scopeOfDelete_02, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete_02 },
2373 { &hf_mms_listOfTypeName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
2374 { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2375 { NULL, 0, 0, 0, NULL }
2376 };
2377
2378 static int
dissect_mms_DeleteNamedType_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2379 dissect_mms_DeleteNamedType_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2380 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2381 DeleteNamedType_Request_sequence, hf_index, ett_mms_DeleteNamedType_Request);
2382
2383 return offset;
2384 }
2385
2386
2387 static const ber_sequence_t T_listOfPromptData_sequence_of[1] = {
2388 { &hf_mms_listOfPromptData_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
2389 };
2390
2391 static int
dissect_mms_T_listOfPromptData(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2392 dissect_mms_T_listOfPromptData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2393 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2394 T_listOfPromptData_sequence_of, hf_index, ett_mms_T_listOfPromptData);
2395
2396 return offset;
2397 }
2398
2399
2400 static const ber_sequence_t Input_Request_sequence[] = {
2401 { &hf_mms_operatorStationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2402 { &hf_mms_echo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
2403 { &hf_mms_listOfPromptData, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfPromptData },
2404 { &hf_mms_inputTimeOut , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
2405 { NULL, 0, 0, 0, NULL }
2406 };
2407
2408 static int
dissect_mms_Input_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2409 dissect_mms_Input_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2410 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2411 Input_Request_sequence, hf_index, ett_mms_Input_Request);
2412
2413 return offset;
2414 }
2415
2416
2417 static const ber_sequence_t T_listOfOutputData_sequence_of[1] = {
2418 { &hf_mms_listOfOutputData_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
2419 };
2420
2421 static int
dissect_mms_T_listOfOutputData(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2422 dissect_mms_T_listOfOutputData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2423 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2424 T_listOfOutputData_sequence_of, hf_index, ett_mms_T_listOfOutputData);
2425
2426 return offset;
2427 }
2428
2429
2430 static const ber_sequence_t Output_Request_sequence[] = {
2431 { &hf_mms_operatorStationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2432 { &hf_mms_listOfOutputData, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfOutputData },
2433 { NULL, 0, 0, 0, NULL }
2434 };
2435
2436 static int
dissect_mms_Output_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2437 dissect_mms_Output_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2438 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2439 Output_Request_sequence, hf_index, ett_mms_Output_Request);
2440
2441 return offset;
2442 }
2443
2444
2445
2446 static int
dissect_mms_T_ap_title(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2447 dissect_mms_T_ap_title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2448 #line 74 "./asn1/mms/mms.cnf"
2449 offset=dissect_acse_AP_title(FALSE, tvb, offset, actx, tree, hf_mms_ap_title);
2450
2451
2452
2453 return offset;
2454 }
2455
2456
2457
2458 static int
dissect_mms_T_ap_invocation_id(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2459 dissect_mms_T_ap_invocation_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2460 #line 77 "./asn1/mms/mms.cnf"
2461 offset=dissect_acse_AP_invocation_identifier(FALSE, tvb, offset, actx, tree, hf_mms_ap_invocation_id);
2462
2463
2464
2465 return offset;
2466 }
2467
2468
2469
2470 static int
dissect_mms_T_ae_qualifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2471 dissect_mms_T_ae_qualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2472 #line 80 "./asn1/mms/mms.cnf"
2473 offset=dissect_acse_AE_qualifier(FALSE, tvb, offset, actx, tree, hf_mms_ae_qualifier);
2474
2475
2476
2477 return offset;
2478 }
2479
2480
2481
2482 static int
dissect_mms_T_ae_invocation_id(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2483 dissect_mms_T_ae_invocation_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2484 #line 83 "./asn1/mms/mms.cnf"
2485 offset=dissect_acse_AE_invocation_identifier(FALSE, tvb, offset, actx, tree, hf_mms_ae_invocation_id);
2486
2487
2488
2489 return offset;
2490 }
2491
2492
2493 static const ber_sequence_t ApplicationReference_sequence[] = {
2494 { &hf_mms_ap_title , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_mms_T_ap_title },
2495 { &hf_mms_ap_invocation_id, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_T_ap_invocation_id },
2496 { &hf_mms_ae_qualifier , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_ae_qualifier },
2497 { &hf_mms_ae_invocation_id, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_T_ae_invocation_id },
2498 { NULL, 0, 0, 0, NULL }
2499 };
2500
2501 static int
dissect_mms_ApplicationReference(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2502 dissect_mms_ApplicationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2503 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2504 ApplicationReference_sequence, hf_index, ett_mms_ApplicationReference);
2505
2506 return offset;
2507 }
2508
2509
2510 static const ber_sequence_t TakeControl_Request_sequence[] = {
2511 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2512 { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2513 { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
2514 { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
2515 { &hf_mms_controlTimeOut , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
2516 { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
2517 { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
2518 { &hf_mms_applicationToPreempt, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference },
2519 { NULL, 0, 0, 0, NULL }
2520 };
2521
2522 static int
dissect_mms_TakeControl_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2523 dissect_mms_TakeControl_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2524 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2525 TakeControl_Request_sequence, hf_index, ett_mms_TakeControl_Request);
2526
2527 return offset;
2528 }
2529
2530
2531 static const ber_sequence_t RelinquishControl_Request_sequence[] = {
2532 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2533 { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2534 { NULL, 0, 0, 0, NULL }
2535 };
2536
2537 static int
dissect_mms_RelinquishControl_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2538 dissect_mms_RelinquishControl_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2539 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2540 RelinquishControl_Request_sequence, hf_index, ett_mms_RelinquishControl_Request);
2541
2542 return offset;
2543 }
2544
2545
2546
2547 static int
dissect_mms_Unsigned16(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2548 dissect_mms_Unsigned16(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2549 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2550 NULL);
2551
2552 return offset;
2553 }
2554
2555
2556 static const ber_sequence_t DefineSemaphore_Request_sequence[] = {
2557 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2558 { &hf_mms_numbersOfTokens , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 },
2559 { NULL, 0, 0, 0, NULL }
2560 };
2561
2562 static int
dissect_mms_DefineSemaphore_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2563 dissect_mms_DefineSemaphore_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2564 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2565 DefineSemaphore_Request_sequence, hf_index, ett_mms_DefineSemaphore_Request);
2566
2567 return offset;
2568 }
2569
2570
2571
2572 static int
dissect_mms_DeleteSemaphore_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2573 dissect_mms_DeleteSemaphore_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2574 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
2575
2576 return offset;
2577 }
2578
2579
2580
2581 static int
dissect_mms_ReportSemaphoreStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2582 dissect_mms_ReportSemaphoreStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2583 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
2584
2585 return offset;
2586 }
2587
2588
2589 static const ber_sequence_t ReportPoolSemaphoreStatus_Request_sequence[] = {
2590 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2591 { &hf_mms_nameToStartAfter, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2592 { NULL, 0, 0, 0, NULL }
2593 };
2594
2595 static int
dissect_mms_ReportPoolSemaphoreStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2596 dissect_mms_ReportPoolSemaphoreStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2597 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2598 ReportPoolSemaphoreStatus_Request_sequence, hf_index, ett_mms_ReportPoolSemaphoreStatus_Request);
2599
2600 return offset;
2601 }
2602
2603
2604 static const value_string mms_T_reportSemaphoreEntryStatus_Request_state_vals[] = {
2605 { 0, "queued" },
2606 { 1, "owner" },
2607 { 2, "hung" },
2608 { 0, NULL }
2609 };
2610
2611
2612 static int
dissect_mms_T_reportSemaphoreEntryStatus_Request_state(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2613 dissect_mms_T_reportSemaphoreEntryStatus_Request_state(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2614 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2615 NULL);
2616
2617 return offset;
2618 }
2619
2620
2621 static const ber_sequence_t ReportSemaphoreEntryStatus_Request_sequence[] = {
2622 { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
2623 { &hf_mms_reportSemaphoreEntryStatus_Request_state, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_reportSemaphoreEntryStatus_Request_state },
2624 { &hf_mms_entryIdToStartAfter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
2625 { NULL, 0, 0, 0, NULL }
2626 };
2627
2628 static int
dissect_mms_ReportSemaphoreEntryStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2629 dissect_mms_ReportSemaphoreEntryStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2630 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2631 ReportSemaphoreEntryStatus_Request_sequence, hf_index, ett_mms_ReportSemaphoreEntryStatus_Request);
2632
2633 return offset;
2634 }
2635
2636
2637 static const ber_sequence_t T_listOfCapabilities_01_sequence_of[1] = {
2638 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
2639 };
2640
2641 static int
dissect_mms_T_listOfCapabilities_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2642 dissect_mms_T_listOfCapabilities_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2643 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2644 T_listOfCapabilities_01_sequence_of, hf_index, ett_mms_T_listOfCapabilities_01);
2645
2646 return offset;
2647 }
2648
2649
2650 static const ber_sequence_t InitiateDownloadSequence_Request_sequence[] = {
2651 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
2652 { &hf_mms_listOfCapabilities_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_01 },
2653 { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
2654 { NULL, 0, 0, 0, NULL }
2655 };
2656
2657 static int
dissect_mms_InitiateDownloadSequence_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2658 dissect_mms_InitiateDownloadSequence_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2659 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2660 InitiateDownloadSequence_Request_sequence, hf_index, ett_mms_InitiateDownloadSequence_Request);
2661
2662 return offset;
2663 }
2664
2665
2666
2667 static int
dissect_mms_DownloadSegment_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2668 dissect_mms_DownloadSegment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2669 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
2670
2671 return offset;
2672 }
2673
2674
2675 static const value_string mms_T_vmd_state_vals[] = {
2676 { 0, "other" },
2677 { 1, "vmd-state-conflict" },
2678 { 2, "vmd-operational-problem" },
2679 { 3, "domain-transfer-problem" },
2680 { 4, "state-machine-id-invalid" },
2681 { 0, NULL }
2682 };
2683
2684
2685 static int
dissect_mms_T_vmd_state(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2686 dissect_mms_T_vmd_state(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2687 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2688 NULL);
2689
2690 return offset;
2691 }
2692
2693
2694 static const value_string mms_T_application_reference_vals[] = {
2695 { 0, "other" },
2696 { 1, "aplication-unreachable" },
2697 { 2, "connection-lost" },
2698 { 3, "application-reference-invalid" },
2699 { 4, "context-unsupported" },
2700 { 0, NULL }
2701 };
2702
2703
2704 static int
dissect_mms_T_application_reference(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2705 dissect_mms_T_application_reference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2706 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2707 NULL);
2708
2709 return offset;
2710 }
2711
2712
2713 static const value_string mms_T_definition_vals[] = {
2714 { 0, "other" },
2715 { 1, "object-undefined" },
2716 { 2, "invalid-address" },
2717 { 3, "type-unsupported" },
2718 { 4, "type-inconsistent" },
2719 { 5, "object-exists" },
2720 { 6, "object-attribute-inconsistent" },
2721 { 0, NULL }
2722 };
2723
2724
2725 static int
dissect_mms_T_definition(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2726 dissect_mms_T_definition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2727 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2728 NULL);
2729
2730 return offset;
2731 }
2732
2733
2734 static const value_string mms_T_resource_vals[] = {
2735 { 0, "other" },
2736 { 1, "memory-unavailable" },
2737 { 2, "processor-resource-unavailable" },
2738 { 3, "mass-storage-unavailable" },
2739 { 4, "capability-unavailable" },
2740 { 5, "capability-unknown" },
2741 { 0, NULL }
2742 };
2743
2744
2745 static int
dissect_mms_T_resource(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2746 dissect_mms_T_resource(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2747 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2748 NULL);
2749
2750 return offset;
2751 }
2752
2753
2754 static const value_string mms_T_service_vals[] = {
2755 { 0, "other" },
2756 { 1, "primitives-out-of-sequence" },
2757 { 2, "object-sate-conflict" },
2758 { 3, "pdu-size" },
2759 { 4, "continuation-invalid" },
2760 { 5, "object-constraint-conflict" },
2761 { 0, NULL }
2762 };
2763
2764
2765 static int
dissect_mms_T_service(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2766 dissect_mms_T_service(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2767 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2768 NULL);
2769
2770 return offset;
2771 }
2772
2773
2774 static const value_string mms_T_service_preempt_vals[] = {
2775 { 0, "other" },
2776 { 1, "timeout" },
2777 { 2, "deadlock" },
2778 { 3, "cancel" },
2779 { 0, NULL }
2780 };
2781
2782
2783 static int
dissect_mms_T_service_preempt(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2784 dissect_mms_T_service_preempt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2785 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2786 NULL);
2787
2788 return offset;
2789 }
2790
2791
2792 static const value_string mms_T_time_resolution_vals[] = {
2793 { 0, "other" },
2794 { 1, "unsupportable-time-resolution" },
2795 { 0, NULL }
2796 };
2797
2798
2799 static int
dissect_mms_T_time_resolution(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2800 dissect_mms_T_time_resolution(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2801 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2802 NULL);
2803
2804 return offset;
2805 }
2806
2807
2808 static const value_string mms_T_access_vals[] = {
2809 { 0, "other" },
2810 { 1, "object-access-unsupported" },
2811 { 2, "object-non-existent" },
2812 { 3, "object-access-denied" },
2813 { 4, "object-invalidated" },
2814 { 0, NULL }
2815 };
2816
2817
2818 static int
dissect_mms_T_access(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2819 dissect_mms_T_access(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2820 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2821 NULL);
2822
2823 return offset;
2824 }
2825
2826
2827 static const value_string mms_T_initiate_vals[] = {
2828 { 0, "other" },
2829 { 1, "version-incompatible" },
2830 { 2, "max-segment-insufficient" },
2831 { 3, "max-services-outstanding-calling-insufficient" },
2832 { 4, "max-services-outstanding-called-insufficient" },
2833 { 5, "service-CBB-insufficient" },
2834 { 6, "parameter-CBB-insufficient" },
2835 { 7, "nesting-level-insufficient" },
2836 { 0, NULL }
2837 };
2838
2839
2840 static int
dissect_mms_T_initiate(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2841 dissect_mms_T_initiate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2842 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2843 NULL);
2844
2845 return offset;
2846 }
2847
2848
2849 static const value_string mms_T_conclude_vals[] = {
2850 { 0, "other" },
2851 { 1, "further-communication-required" },
2852 { 0, NULL }
2853 };
2854
2855
2856 static int
dissect_mms_T_conclude(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2857 dissect_mms_T_conclude(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2858 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2859 NULL);
2860
2861 return offset;
2862 }
2863
2864
2865 static const value_string mms_T_cancel_vals[] = {
2866 { 0, "other" },
2867 { 1, "invoke-id-unknown" },
2868 { 2, "cancel-not-possible" },
2869 { 0, NULL }
2870 };
2871
2872
2873 static int
dissect_mms_T_cancel(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2874 dissect_mms_T_cancel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2875 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2876 NULL);
2877
2878 return offset;
2879 }
2880
2881
2882 static const value_string mms_T_file_vals[] = {
2883 { 0, "other" },
2884 { 1, "filename-ambiguous" },
2885 { 2, "file-busy" },
2886 { 3, "filename-syntax-error" },
2887 { 4, "content-type-invalid" },
2888 { 5, "position-invalid" },
2889 { 6, "file-acces-denied" },
2890 { 7, "file-non-existent" },
2891 { 8, "duplicate-filename" },
2892 { 9, "insufficient-space-in-filestore" },
2893 { 0, NULL }
2894 };
2895
2896
2897 static int
dissect_mms_T_file(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2898 dissect_mms_T_file(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2899 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2900 NULL);
2901
2902 return offset;
2903 }
2904
2905
2906 static const value_string mms_T_errorClass_vals[] = {
2907 { 0, "vmd-state" },
2908 { 1, "application-reference" },
2909 { 2, "definition" },
2910 { 3, "resource" },
2911 { 4, "service" },
2912 { 5, "service-preempt" },
2913 { 6, "time-resolution" },
2914 { 7, "access" },
2915 { 8, "initiate" },
2916 { 9, "conclude" },
2917 { 10, "cancel" },
2918 { 11, "file" },
2919 { 12, "others" },
2920 { 0, NULL }
2921 };
2922
2923 static const ber_choice_t T_errorClass_choice[] = {
2924 { 0, &hf_mms_vmd_state , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_vmd_state },
2925 { 1, &hf_mms_application_reference, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_application_reference },
2926 { 2, &hf_mms_definition , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_definition },
2927 { 3, &hf_mms_resource , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_resource },
2928 { 4, &hf_mms_service , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_T_service },
2929 { 5, &hf_mms_service_preempt , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_service_preempt },
2930 { 6, &hf_mms_time_resolution , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_T_time_resolution },
2931 { 7, &hf_mms_access , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_T_access },
2932 { 8, &hf_mms_initiate , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_T_initiate },
2933 { 9, &hf_mms_conclude , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude },
2934 { 10, &hf_mms_cancel , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel },
2935 { 11, &hf_mms_file , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_T_file },
2936 { 12, &hf_mms_others , BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER },
2937 { 0, NULL, 0, 0, 0, NULL }
2938 };
2939
2940 static int
dissect_mms_T_errorClass(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2941 dissect_mms_T_errorClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2942 offset = dissect_ber_choice(actx, tree, tvb, offset,
2943 T_errorClass_choice, hf_index, ett_mms_T_errorClass,
2944 NULL);
2945
2946 return offset;
2947 }
2948
2949
2950 static const value_string mms_ObtainFile_Error_vals[] = {
2951 { 0, "source-file" },
2952 { 1, "destination-file" },
2953 { 0, NULL }
2954 };
2955
2956
2957 static int
dissect_mms_ObtainFile_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2958 dissect_mms_ObtainFile_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2959 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2960 NULL);
2961
2962 return offset;
2963 }
2964
2965
2966 static const value_string mms_ProgramInvocationState_vals[] = {
2967 { 0, "non-existent" },
2968 { 1, "unrunable" },
2969 { 2, "idle" },
2970 { 3, "running" },
2971 { 4, "stopped" },
2972 { 5, "starting" },
2973 { 6, "stopping" },
2974 { 7, "resuming" },
2975 { 8, "resetting" },
2976 { 0, NULL }
2977 };
2978
2979
2980 static int
dissect_mms_ProgramInvocationState(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2981 dissect_mms_ProgramInvocationState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2982 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2983 NULL);
2984
2985 return offset;
2986 }
2987
2988
2989
2990 static int
dissect_mms_Start_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2991 dissect_mms_Start_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2992 offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index);
2993
2994 return offset;
2995 }
2996
2997
2998
2999 static int
dissect_mms_Stop_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3000 dissect_mms_Stop_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3001 offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index);
3002
3003 return offset;
3004 }
3005
3006
3007
3008 static int
dissect_mms_Resume_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3009 dissect_mms_Resume_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3010 offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index);
3011
3012 return offset;
3013 }
3014
3015
3016
3017 static int
dissect_mms_Reset_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3018 dissect_mms_Reset_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3019 offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index);
3020
3021 return offset;
3022 }
3023
3024
3025
3026 static int
dissect_mms_DeleteVariableAccess_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3027 dissect_mms_DeleteVariableAccess_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3028 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
3029
3030 return offset;
3031 }
3032
3033
3034
3035 static int
dissect_mms_DeleteNamedVariableList_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3036 dissect_mms_DeleteNamedVariableList_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3037 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
3038
3039 return offset;
3040 }
3041
3042
3043
3044 static int
dissect_mms_DeleteNamedType_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3045 dissect_mms_DeleteNamedType_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3046 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
3047
3048 return offset;
3049 }
3050
3051
3052
3053 static int
dissect_mms_DefineEventEnrollment_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3054 dissect_mms_DefineEventEnrollment_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3055 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3056
3057 return offset;
3058 }
3059
3060
3061 static const value_string mms_FileRename_Error_vals[] = {
3062 { 0, "source-file" },
3063 { 1, "destination-file" },
3064 { 0, NULL }
3065 };
3066
3067
3068 static int
dissect_mms_FileRename_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3069 dissect_mms_FileRename_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3070 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3071 NULL);
3072
3073 return offset;
3074 }
3075
3076
3077
3078 static int
dissect_mms_DefineEventConditionList_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3079 dissect_mms_DefineEventConditionList_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3080 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3081
3082 return offset;
3083 }
3084
3085
3086
3087 static int
dissect_mms_AddEventConditionListReference_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3088 dissect_mms_AddEventConditionListReference_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3089 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3090
3091 return offset;
3092 }
3093
3094
3095 static const value_string mms_RemoveEventConditionListReference_Error_vals[] = {
3096 { 0, "eventCondition" },
3097 { 1, "eventConditionList" },
3098 { 0, NULL }
3099 };
3100
3101 static const ber_choice_t RemoveEventConditionListReference_Error_choice[] = {
3102 { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
3103 { 1, &hf_mms_eventConditionList, BER_CLASS_CON, 1, 0, dissect_mms_ObjectName },
3104 { 0, NULL, 0, 0, 0, NULL }
3105 };
3106
3107 static int
dissect_mms_RemoveEventConditionListReference_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3108 dissect_mms_RemoveEventConditionListReference_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3109 offset = dissect_ber_choice(actx, tree, tvb, offset,
3110 RemoveEventConditionListReference_Error_choice, hf_index, ett_mms_RemoveEventConditionListReference_Error,
3111 NULL);
3112
3113 return offset;
3114 }
3115
3116
3117 static const value_string mms_InitiateUnitControl_Error_vals[] = {
3118 { 0, "domain" },
3119 { 1, "programInvocation" },
3120 { 0, NULL }
3121 };
3122
3123 static const ber_choice_t InitiateUnitControl_Error_choice[] = {
3124 { 0, &hf_mms_domain , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3125 { 1, &hf_mms_programInvocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3126 { 0, NULL, 0, 0, 0, NULL }
3127 };
3128
3129 static int
dissect_mms_InitiateUnitControl_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3130 dissect_mms_InitiateUnitControl_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3131 offset = dissect_ber_choice(actx, tree, tvb, offset,
3132 InitiateUnitControl_Error_choice, hf_index, ett_mms_InitiateUnitControl_Error,
3133 NULL);
3134
3135 return offset;
3136 }
3137
3138
3139 static const ber_sequence_t StartUnitControl_Error_sequence[] = {
3140 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3141 { &hf_mms_programInvocationState, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState },
3142 { NULL, 0, 0, 0, NULL }
3143 };
3144
3145 static int
dissect_mms_StartUnitControl_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3146 dissect_mms_StartUnitControl_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3147 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3148 StartUnitControl_Error_sequence, hf_index, ett_mms_StartUnitControl_Error);
3149
3150 return offset;
3151 }
3152
3153
3154 static const ber_sequence_t StopUnitControl_Error_sequence[] = {
3155 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3156 { &hf_mms_programInvocationState, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState },
3157 { NULL, 0, 0, 0, NULL }
3158 };
3159
3160 static int
dissect_mms_StopUnitControl_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3161 dissect_mms_StopUnitControl_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3162 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3163 StopUnitControl_Error_sequence, hf_index, ett_mms_StopUnitControl_Error);
3164
3165 return offset;
3166 }
3167
3168
3169 static const value_string mms_DeleteUnitControl_Error_vals[] = {
3170 { 0, "domain" },
3171 { 1, "programInvocation" },
3172 { 0, NULL }
3173 };
3174
3175 static const ber_choice_t DeleteUnitControl_Error_choice[] = {
3176 { 0, &hf_mms_domain , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3177 { 1, &hf_mms_programInvocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3178 { 0, NULL, 0, 0, 0, NULL }
3179 };
3180
3181 static int
dissect_mms_DeleteUnitControl_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3182 dissect_mms_DeleteUnitControl_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3183 offset = dissect_ber_choice(actx, tree, tvb, offset,
3184 DeleteUnitControl_Error_choice, hf_index, ett_mms_DeleteUnitControl_Error,
3185 NULL);
3186
3187 return offset;
3188 }
3189
3190
3191 static const value_string mms_LoadUnitControlFromFile_Error_vals[] = {
3192 { 0, "none" },
3193 { 1, "domain" },
3194 { 2, "programInvocation" },
3195 { 0, NULL }
3196 };
3197
3198 static const ber_choice_t LoadUnitControlFromFile_Error_choice[] = {
3199 { 0, &hf_mms_none , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
3200 { 1, &hf_mms_domain , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3201 { 2, &hf_mms_programInvocation, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3202 { 0, NULL, 0, 0, 0, NULL }
3203 };
3204
3205 static int
dissect_mms_LoadUnitControlFromFile_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3206 dissect_mms_LoadUnitControlFromFile_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3207 offset = dissect_ber_choice(actx, tree, tvb, offset,
3208 LoadUnitControlFromFile_Error_choice, hf_index, ett_mms_LoadUnitControlFromFile_Error,
3209 NULL);
3210
3211 return offset;
3212 }
3213
3214
3215 static const value_string mms_AdditionalService_Error_vals[] = {
3216 { 0, "defineEcl" },
3217 { 1, "addECLReference" },
3218 { 2, "removeECLReference" },
3219 { 3, "initiateUC" },
3220 { 4, "startUC" },
3221 { 5, "stopUC" },
3222 { 6, "deleteUC" },
3223 { 7, "loadUCFromFile" },
3224 { 0, NULL }
3225 };
3226
3227 static const ber_choice_t AdditionalService_Error_choice[] = {
3228 { 0, &hf_mms_defineEcl , BER_CLASS_CON, 0, 0, dissect_mms_DefineEventConditionList_Error },
3229 { 1, &hf_mms_addECLReference , BER_CLASS_CON, 1, 0, dissect_mms_AddEventConditionListReference_Error },
3230 { 2, &hf_mms_removeECLReference, BER_CLASS_CON, 2, 0, dissect_mms_RemoveEventConditionListReference_Error },
3231 { 3, &hf_mms_initiateUC , BER_CLASS_CON, 3, 0, dissect_mms_InitiateUnitControl_Error },
3232 { 4, &hf_mms_startUC , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_StartUnitControl_Error },
3233 { 5, &hf_mms_stopUC , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_StopUnitControl_Error },
3234 { 6, &hf_mms_deleteUC , BER_CLASS_CON, 6, 0, dissect_mms_DeleteUnitControl_Error },
3235 { 7, &hf_mms_loadUCFromFile , BER_CLASS_CON, 7, 0, dissect_mms_LoadUnitControlFromFile_Error },
3236 { 0, NULL, 0, 0, 0, NULL }
3237 };
3238
3239 static int
dissect_mms_AdditionalService_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3240 dissect_mms_AdditionalService_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3241 offset = dissect_ber_choice(actx, tree, tvb, offset,
3242 AdditionalService_Error_choice, hf_index, ett_mms_AdditionalService_Error,
3243 NULL);
3244
3245 return offset;
3246 }
3247
3248
3249
3250 static int
dissect_mms_ChangeAccessControl_Error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3251 dissect_mms_ChangeAccessControl_Error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3252 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
3253
3254 return offset;
3255 }
3256
3257
3258 static const value_string mms_T_serviceSpecificInformation_vals[] = {
3259 { 0, "obtainFile" },
3260 { 1, "start" },
3261 { 2, "stop" },
3262 { 3, "resume" },
3263 { 4, "reset" },
3264 { 5, "deleteVariableAccess" },
3265 { 6, "deleteNamedVariableList" },
3266 { 7, "deleteNamedType" },
3267 { 8, "defineEventEnrollment-Error" },
3268 { 9, "fileRename" },
3269 { 10, "additionalService" },
3270 { 11, "changeAccessControl" },
3271 { 0, NULL }
3272 };
3273
3274 static const ber_choice_t T_serviceSpecificInformation_choice[] = {
3275 { 0, &hf_mms_obtainFile_02 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Error },
3276 { 1, &hf_mms_start_02 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Start_Error },
3277 { 2, &hf_mms_stop_02 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Error },
3278 { 3, &hf_mms_resume_02 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Error },
3279 { 4, &hf_mms_reset_02 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Error },
3280 { 5, &hf_mms_deleteVariableAccess_02, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Error },
3281 { 6, &hf_mms_deleteNamedVariableList_02, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Error },
3282 { 7, &hf_mms_deleteNamedType_02, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Error },
3283 { 8, &hf_mms_defineEventEnrollment_Error, BER_CLASS_CON, 8, 0, dissect_mms_DefineEventEnrollment_Error },
3284 { 9, &hf_mms_fileRename_02 , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Error },
3285 { 10, &hf_mms_additionalService, BER_CLASS_CON, 10, 0, dissect_mms_AdditionalService_Error },
3286 { 11, &hf_mms_changeAccessControl, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_ChangeAccessControl_Error },
3287 { 0, NULL, 0, 0, 0, NULL }
3288 };
3289
3290 static int
dissect_mms_T_serviceSpecificInformation(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3291 dissect_mms_T_serviceSpecificInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3292 offset = dissect_ber_choice(actx, tree, tvb, offset,
3293 T_serviceSpecificInformation_choice, hf_index, ett_mms_T_serviceSpecificInformation,
3294 NULL);
3295
3296 return offset;
3297 }
3298
3299
3300 static const ber_sequence_t ServiceError_sequence[] = {
3301 { &hf_mms_errorClass , BER_CLASS_CON, 0, 0, dissect_mms_T_errorClass },
3302 { &hf_mms_additionalCode , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_INTEGER },
3303 { &hf_mms_additionalDescription, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
3304 { &hf_mms_serviceSpecificInformation, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_T_serviceSpecificInformation },
3305 { NULL, 0, 0, 0, NULL }
3306 };
3307
3308 static int
dissect_mms_ServiceError(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3309 dissect_mms_ServiceError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3310 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3311 ServiceError_sequence, hf_index, ett_mms_ServiceError);
3312
3313 return offset;
3314 }
3315
3316
3317 static const ber_sequence_t TerminateDownloadSequence_Request_sequence[] = {
3318 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3319 { &hf_mms_discard , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ServiceError },
3320 { NULL, 0, 0, 0, NULL }
3321 };
3322
3323 static int
dissect_mms_TerminateDownloadSequence_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3324 dissect_mms_TerminateDownloadSequence_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3325 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3326 TerminateDownloadSequence_Request_sequence, hf_index, ett_mms_TerminateDownloadSequence_Request);
3327
3328 return offset;
3329 }
3330
3331
3332
3333 static int
dissect_mms_InitiateUploadSequence_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3334 dissect_mms_InitiateUploadSequence_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3335 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
3336
3337 return offset;
3338 }
3339
3340
3341
3342 static int
dissect_mms_UploadSegment_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3343 dissect_mms_UploadSegment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3344 offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index);
3345
3346 return offset;
3347 }
3348
3349
3350
3351 static int
dissect_mms_TerminateUploadSequence_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3352 dissect_mms_TerminateUploadSequence_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3353 offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index);
3354
3355 return offset;
3356 }
3357
3358
3359 static const ber_sequence_t T_listOfCapabilities_03_sequence_of[1] = {
3360 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
3361 };
3362
3363 static int
dissect_mms_T_listOfCapabilities_03(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3364 dissect_mms_T_listOfCapabilities_03(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3365 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3366 T_listOfCapabilities_03_sequence_of, hf_index, ett_mms_T_listOfCapabilities_03);
3367
3368 return offset;
3369 }
3370
3371
3372
3373 static int
dissect_mms_GraphicString(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3374 dissect_mms_GraphicString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3375 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
3376 actx, tree, tvb, offset, hf_index,
3377 NULL);
3378
3379 return offset;
3380 }
3381
3382
3383 static const ber_sequence_t FileName_sequence_of[1] = {
3384 { &hf_mms_FileName_item , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_mms_GraphicString },
3385 };
3386
3387 static int
dissect_mms_FileName(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3388 dissect_mms_FileName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3389 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3390 FileName_sequence_of, hf_index, ett_mms_FileName);
3391
3392 return offset;
3393 }
3394
3395
3396 static const ber_sequence_t RequestDomainDownload_Request_sequence[] = {
3397 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3398 { &hf_mms_listOfCapabilities_03, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_03 },
3399 { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3400 { &hf_mms_fileName , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3401 { NULL, 0, 0, 0, NULL }
3402 };
3403
3404 static int
dissect_mms_RequestDomainDownload_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3405 dissect_mms_RequestDomainDownload_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3406 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3407 RequestDomainDownload_Request_sequence, hf_index, ett_mms_RequestDomainDownload_Request);
3408
3409 return offset;
3410 }
3411
3412
3413 static const ber_sequence_t RequestDomainUpload_Request_sequence[] = {
3414 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3415 { &hf_mms_fileName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3416 { NULL, 0, 0, 0, NULL }
3417 };
3418
3419 static int
dissect_mms_RequestDomainUpload_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3420 dissect_mms_RequestDomainUpload_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3421 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3422 RequestDomainUpload_Request_sequence, hf_index, ett_mms_RequestDomainUpload_Request);
3423
3424 return offset;
3425 }
3426
3427
3428 static const ber_sequence_t T_listOfCapabilities_04_sequence_of[1] = {
3429 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
3430 };
3431
3432 static int
dissect_mms_T_listOfCapabilities_04(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3433 dissect_mms_T_listOfCapabilities_04(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3434 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3435 T_listOfCapabilities_04_sequence_of, hf_index, ett_mms_T_listOfCapabilities_04);
3436
3437 return offset;
3438 }
3439
3440
3441 static const ber_sequence_t LoadDomainContent_Request_sequence[] = {
3442 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3443 { &hf_mms_listOfCapabilities_04, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_04 },
3444 { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3445 { &hf_mms_fileName , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3446 { &hf_mms_thirdParty , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference },
3447 { NULL, 0, 0, 0, NULL }
3448 };
3449
3450 static int
dissect_mms_LoadDomainContent_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3451 dissect_mms_LoadDomainContent_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3452 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3453 LoadDomainContent_Request_sequence, hf_index, ett_mms_LoadDomainContent_Request);
3454
3455 return offset;
3456 }
3457
3458
3459 static const ber_sequence_t StoreDomainContent_Request_sequence[] = {
3460 { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3461 { &hf_mms_filenName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3462 { &hf_mms_thirdParty , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference },
3463 { NULL, 0, 0, 0, NULL }
3464 };
3465
3466 static int
dissect_mms_StoreDomainContent_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3467 dissect_mms_StoreDomainContent_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3468 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3469 StoreDomainContent_Request_sequence, hf_index, ett_mms_StoreDomainContent_Request);
3470
3471 return offset;
3472 }
3473
3474
3475
3476 static int
dissect_mms_DeleteDomain_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3477 dissect_mms_DeleteDomain_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3478 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
3479
3480 return offset;
3481 }
3482
3483
3484
3485 static int
dissect_mms_GetDomainAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3486 dissect_mms_GetDomainAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3487 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
3488
3489 return offset;
3490 }
3491
3492
3493 static const ber_sequence_t SEQUENCE_OF_Identifier_sequence_of[1] = {
3494 { &hf_mms_listOfIdentifier_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_Identifier },
3495 };
3496
3497 static int
dissect_mms_SEQUENCE_OF_Identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3498 dissect_mms_SEQUENCE_OF_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3499 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3500 SEQUENCE_OF_Identifier_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Identifier);
3501
3502 return offset;
3503 }
3504
3505
3506 static const ber_sequence_t CreateProgramInvocation_Request_sequence[] = {
3507 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3508 { &hf_mms_listOfDomainName, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier },
3509 { &hf_mms_reusable , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3510 { &hf_mms_monitorType , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3511 { NULL, 0, 0, 0, NULL }
3512 };
3513
3514 static int
dissect_mms_CreateProgramInvocation_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3515 dissect_mms_CreateProgramInvocation_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3516 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3517 CreateProgramInvocation_Request_sequence, hf_index, ett_mms_CreateProgramInvocation_Request);
3518
3519 return offset;
3520 }
3521
3522
3523
3524 static int
dissect_mms_DeleteProgramInvocation_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3525 dissect_mms_DeleteProgramInvocation_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3526 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
3527
3528 return offset;
3529 }
3530
3531
3532 static const value_string mms_T_executionArgument_vals[] = {
3533 { 0, "simpleString" },
3534 { 1, "encodedString" },
3535 { 0, NULL }
3536 };
3537
3538 static const ber_choice_t T_executionArgument_choice[] = {
3539 { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
3540 { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt },
3541 { 0, NULL, 0, 0, 0, NULL }
3542 };
3543
3544 static int
dissect_mms_T_executionArgument(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3545 dissect_mms_T_executionArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3546 offset = dissect_ber_choice(actx, tree, tvb, offset,
3547 T_executionArgument_choice, hf_index, ett_mms_T_executionArgument,
3548 NULL);
3549
3550 return offset;
3551 }
3552
3553
3554 static const ber_sequence_t Start_Request_sequence[] = {
3555 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3556 { &hf_mms_executionArgument, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument },
3557 { NULL, 0, 0, 0, NULL }
3558 };
3559
3560 static int
dissect_mms_Start_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3561 dissect_mms_Start_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3562 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3563 Start_Request_sequence, hf_index, ett_mms_Start_Request);
3564
3565 return offset;
3566 }
3567
3568
3569 static const ber_sequence_t Stop_Request_sequence[] = {
3570 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3571 { NULL, 0, 0, 0, NULL }
3572 };
3573
3574 static int
dissect_mms_Stop_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3575 dissect_mms_Stop_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3576 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3577 Stop_Request_sequence, hf_index, ett_mms_Stop_Request);
3578
3579 return offset;
3580 }
3581
3582
3583 static const value_string mms_T_executionArgument_01_vals[] = {
3584 { 0, "simpleString" },
3585 { 1, "encodedString" },
3586 { 0, NULL }
3587 };
3588
3589 static const ber_choice_t T_executionArgument_01_choice[] = {
3590 { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
3591 { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt },
3592 { 0, NULL, 0, 0, 0, NULL }
3593 };
3594
3595 static int
dissect_mms_T_executionArgument_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3596 dissect_mms_T_executionArgument_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3597 offset = dissect_ber_choice(actx, tree, tvb, offset,
3598 T_executionArgument_01_choice, hf_index, ett_mms_T_executionArgument_01,
3599 NULL);
3600
3601 return offset;
3602 }
3603
3604
3605 static const ber_sequence_t Resume_Request_sequence[] = {
3606 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3607 { &hf_mms_executionArgument_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument_01 },
3608 { NULL, 0, 0, 0, NULL }
3609 };
3610
3611 static int
dissect_mms_Resume_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3612 dissect_mms_Resume_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3613 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3614 Resume_Request_sequence, hf_index, ett_mms_Resume_Request);
3615
3616 return offset;
3617 }
3618
3619
3620 static const ber_sequence_t Reset_Request_sequence[] = {
3621 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3622 { NULL, 0, 0, 0, NULL }
3623 };
3624
3625 static int
dissect_mms_Reset_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3626 dissect_mms_Reset_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3627 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3628 Reset_Request_sequence, hf_index, ett_mms_Reset_Request);
3629
3630 return offset;
3631 }
3632
3633
3634 static const ber_sequence_t Kill_Request_sequence[] = {
3635 { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3636 { NULL, 0, 0, 0, NULL }
3637 };
3638
3639 static int
dissect_mms_Kill_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3640 dissect_mms_Kill_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3641 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3642 Kill_Request_sequence, hf_index, ett_mms_Kill_Request);
3643
3644 return offset;
3645 }
3646
3647
3648
3649 static int
dissect_mms_GetProgramInvocationAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3650 dissect_mms_GetProgramInvocationAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3651 offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index);
3652
3653 return offset;
3654 }
3655
3656
3657 static const ber_sequence_t ObtainFile_Request_sequence[] = {
3658 { &hf_mms_sourceFileServer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference },
3659 { &hf_mms_sourceFile , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3660 { &hf_mms_destinationFile , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
3661 { NULL, 0, 0, 0, NULL }
3662 };
3663
3664 static int
dissect_mms_ObtainFile_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3665 dissect_mms_ObtainFile_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3666 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3667 ObtainFile_Request_sequence, hf_index, ett_mms_ObtainFile_Request);
3668
3669 return offset;
3670 }
3671
3672
3673 static const value_string mms_EC_Class_vals[] = {
3674 { 0, "network-triggered" },
3675 { 1, "monitored" },
3676 { 0, NULL }
3677 };
3678
3679
3680 static int
dissect_mms_EC_Class(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3681 dissect_mms_EC_Class(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3682 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3683 NULL);
3684
3685 return offset;
3686 }
3687
3688
3689 static const ber_sequence_t DefineEventCondition_Request_sequence[] = {
3690 { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3691 { &hf_mms_class_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_Class },
3692 { &hf_mms_prio_rity , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
3693 { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
3694 { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3695 { &hf_mms_monitoredVariable, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification },
3696 { &hf_mms_evaluationInterval, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
3697 { NULL, 0, 0, 0, NULL }
3698 };
3699
3700 static int
dissect_mms_DefineEventCondition_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3701 dissect_mms_DefineEventCondition_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3702 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3703 DefineEventCondition_Request_sequence, hf_index, ett_mms_DefineEventCondition_Request);
3704
3705 return offset;
3706 }
3707
3708
3709 static const value_string mms_DeleteEventCondition_Request_vals[] = {
3710 { 0, "specific" },
3711 { 1, "aa-specific" },
3712 { 2, "domain" },
3713 { 3, "vmd" },
3714 { 0, NULL }
3715 };
3716
3717 static const ber_choice_t DeleteEventCondition_Request_choice[] = {
3718 { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
3719 { 1, &hf_mms_aa_specific_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
3720 { 2, &hf_mms_domain , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3721 { 3, &hf_mms_vmd , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
3722 { 0, NULL, 0, 0, 0, NULL }
3723 };
3724
3725 static int
dissect_mms_DeleteEventCondition_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3726 dissect_mms_DeleteEventCondition_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3727 offset = dissect_ber_choice(actx, tree, tvb, offset,
3728 DeleteEventCondition_Request_choice, hf_index, ett_mms_DeleteEventCondition_Request,
3729 NULL);
3730
3731 return offset;
3732 }
3733
3734
3735
3736 static int
dissect_mms_GetEventConditionAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3737 dissect_mms_GetEventConditionAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3738 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3739
3740 return offset;
3741 }
3742
3743
3744
3745 static int
dissect_mms_ReportEventConditionStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3746 dissect_mms_ReportEventConditionStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3747 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3748
3749 return offset;
3750 }
3751
3752
3753 static const ber_sequence_t AlterEventConditionMonitoring_Request_sequence[] = {
3754 { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3755 { &hf_mms_enabled , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3756 { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
3757 { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
3758 { &hf_mms_evaluationInterval, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
3759 { NULL, 0, 0, 0, NULL }
3760 };
3761
3762 static int
dissect_mms_AlterEventConditionMonitoring_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3763 dissect_mms_AlterEventConditionMonitoring_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3764 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3765 AlterEventConditionMonitoring_Request_sequence, hf_index, ett_mms_AlterEventConditionMonitoring_Request);
3766
3767 return offset;
3768 }
3769
3770
3771 static const ber_sequence_t TriggerEvent_Request_sequence[] = {
3772 { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3773 { &hf_mms_priority , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
3774 { NULL, 0, 0, 0, NULL }
3775 };
3776
3777 static int
dissect_mms_TriggerEvent_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3778 dissect_mms_TriggerEvent_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3779 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3780 TriggerEvent_Request_sequence, hf_index, ett_mms_TriggerEvent_Request);
3781
3782 return offset;
3783 }
3784
3785
3786 static const ber_sequence_t DefineEventAction_Request_sequence[] = {
3787 { &hf_mms_eventActionName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3788 { &hf_mms_listOfModifier , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Modifier },
3789 { NULL, 0, 0, 0, NULL }
3790 };
3791
3792 static int
dissect_mms_DefineEventAction_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3793 dissect_mms_DefineEventAction_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3794 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3795 DefineEventAction_Request_sequence, hf_index, ett_mms_DefineEventAction_Request);
3796
3797 return offset;
3798 }
3799
3800
3801 static const value_string mms_DeleteEventAction_Request_vals[] = {
3802 { 0, "specific" },
3803 { 1, "aa-specific" },
3804 { 3, "domain" },
3805 { 4, "vmd" },
3806 { 0, NULL }
3807 };
3808
3809 static const ber_choice_t DeleteEventAction_Request_choice[] = {
3810 { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
3811 { 1, &hf_mms_aa_specific_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
3812 { 3, &hf_mms_domain , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
3813 { 4, &hf_mms_vmd , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
3814 { 0, NULL, 0, 0, 0, NULL }
3815 };
3816
3817 static int
dissect_mms_DeleteEventAction_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3818 dissect_mms_DeleteEventAction_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3819 offset = dissect_ber_choice(actx, tree, tvb, offset,
3820 DeleteEventAction_Request_choice, hf_index, ett_mms_DeleteEventAction_Request,
3821 NULL);
3822
3823 return offset;
3824 }
3825
3826
3827
3828 static int
dissect_mms_GetEventActionAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3829 dissect_mms_GetEventActionAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3830 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3831
3832 return offset;
3833 }
3834
3835
3836
3837 static int
dissect_mms_ReportEventActionStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3838 dissect_mms_ReportEventActionStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3839 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3840
3841 return offset;
3842 }
3843
3844
3845 static const value_string mms_AlarmAckRule_vals[] = {
3846 { 0, "none" },
3847 { 1, "simple" },
3848 { 2, "ack-active" },
3849 { 3, "ack-all" },
3850 { 0, NULL }
3851 };
3852
3853
3854 static int
dissect_mms_AlarmAckRule(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3855 dissect_mms_AlarmAckRule(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3856 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3857 NULL);
3858
3859 return offset;
3860 }
3861
3862
3863 static const ber_sequence_t DefineEventEnrollment_Request_sequence[] = {
3864 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3865 { &hf_mms_eventConditionName, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3866 { &hf_mms_eventConditionTransition, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Transitions },
3867 { &hf_mms_alarmAcknowledgementRule, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule },
3868 { &hf_mms_eventActionName , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3869 { &hf_mms_clientApplication, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference },
3870 { NULL, 0, 0, 0, NULL }
3871 };
3872
3873 static int
dissect_mms_DefineEventEnrollment_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3874 dissect_mms_DefineEventEnrollment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3875 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3876 DefineEventEnrollment_Request_sequence, hf_index, ett_mms_DefineEventEnrollment_Request);
3877
3878 return offset;
3879 }
3880
3881
3882 static const value_string mms_DeleteEventEnrollment_Request_vals[] = {
3883 { 0, "specific" },
3884 { 1, "ec" },
3885 { 2, "ea" },
3886 { 0, NULL }
3887 };
3888
3889 static const ber_choice_t DeleteEventEnrollment_Request_choice[] = {
3890 { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
3891 { 1, &hf_mms_ec , BER_CLASS_CON, 1, 0, dissect_mms_ObjectName },
3892 { 2, &hf_mms_ea , BER_CLASS_CON, 2, 0, dissect_mms_ObjectName },
3893 { 0, NULL, 0, 0, 0, NULL }
3894 };
3895
3896 static int
dissect_mms_DeleteEventEnrollment_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3897 dissect_mms_DeleteEventEnrollment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3898 offset = dissect_ber_choice(actx, tree, tvb, offset,
3899 DeleteEventEnrollment_Request_choice, hf_index, ett_mms_DeleteEventEnrollment_Request,
3900 NULL);
3901
3902 return offset;
3903 }
3904
3905
3906 static const ber_sequence_t AlterEventEnrollment_Request_sequence[] = {
3907 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3908 { &hf_mms_eventConditionTransitions, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Transitions },
3909 { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule },
3910 { NULL, 0, 0, 0, NULL }
3911 };
3912
3913 static int
dissect_mms_AlterEventEnrollment_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3914 dissect_mms_AlterEventEnrollment_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3915 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3916 AlterEventEnrollment_Request_sequence, hf_index, ett_mms_AlterEventEnrollment_Request);
3917
3918 return offset;
3919 }
3920
3921
3922
3923 static int
dissect_mms_ReportEventEnrollmentStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3924 dissect_mms_ReportEventEnrollmentStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3925 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
3926
3927 return offset;
3928 }
3929
3930
3931 static const value_string mms_T_scopeOfRequest_vals[] = {
3932 { 0, "specific" },
3933 { 1, "client" },
3934 { 2, "ec" },
3935 { 3, "ea" },
3936 { 0, NULL }
3937 };
3938
3939
3940 static int
dissect_mms_T_scopeOfRequest(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3941 dissect_mms_T_scopeOfRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3942 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3943 NULL);
3944
3945 return offset;
3946 }
3947
3948
3949 static const ber_sequence_t GetEventEnrollmentAttributes_Request_sequence[] = {
3950 { &hf_mms_scopeOfRequest , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfRequest },
3951 { &hf_mms_eventEnrollmentNames, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName },
3952 { &hf_mms_clientApplication, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference },
3953 { &hf_mms_eventConditionName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3954 { &hf_mms_eventActionName , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3955 { &hf_mms_getEventEnrollmentAttributes_Request_continueAfter, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
3956 { NULL, 0, 0, 0, NULL }
3957 };
3958
3959 static int
dissect_mms_GetEventEnrollmentAttributes_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3960 dissect_mms_GetEventEnrollmentAttributes_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3961 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3962 GetEventEnrollmentAttributes_Request_sequence, hf_index, ett_mms_GetEventEnrollmentAttributes_Request);
3963
3964 return offset;
3965 }
3966
3967
3968 static const value_string mms_EC_State_vals[] = {
3969 { 0, "disabled" },
3970 { 1, "idle" },
3971 { 2, "active" },
3972 { 0, NULL }
3973 };
3974
3975
3976 static int
dissect_mms_EC_State(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3977 dissect_mms_EC_State(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3978 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3979 NULL);
3980
3981 return offset;
3982 }
3983
3984
3985 static const value_string mms_EventTime_vals[] = {
3986 { 0, "timeOfDayT" },
3987 { 1, "timeSequenceIdentifier" },
3988 { 0, NULL }
3989 };
3990
3991 static const ber_choice_t EventTime_choice[] = {
3992 { 0, &hf_mms_timeOfDayT , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
3993 { 1, &hf_mms_timeSequenceIdentifier, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
3994 { 0, NULL, 0, 0, 0, NULL }
3995 };
3996
3997 static int
dissect_mms_EventTime(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3998 dissect_mms_EventTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3999 offset = dissect_ber_choice(actx, tree, tvb, offset,
4000 EventTime_choice, hf_index, ett_mms_EventTime,
4001 NULL);
4002
4003 return offset;
4004 }
4005
4006
4007 static const ber_sequence_t AcknowledgeEventNotification_Request_sequence[] = {
4008 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4009 { &hf_mms_acknowledgedState, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
4010 { &hf_mms_timeOfAcknowledgedTransition, BER_CLASS_CON, 3, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
4011 { NULL, 0, 0, 0, NULL }
4012 };
4013
4014 static int
dissect_mms_AcknowledgeEventNotification_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4015 dissect_mms_AcknowledgeEventNotification_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4016 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4017 AcknowledgeEventNotification_Request_sequence, hf_index, ett_mms_AcknowledgeEventNotification_Request);
4018
4019 return offset;
4020 }
4021
4022
4023 static const value_string mms_T_acknowledgmentFilter_vals[] = {
4024 { 0, "not-acked" },
4025 { 1, "acked" },
4026 { 2, "all" },
4027 { 0, NULL }
4028 };
4029
4030
4031 static int
dissect_mms_T_acknowledgmentFilter(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4032 dissect_mms_T_acknowledgmentFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4033 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4034 NULL);
4035
4036 return offset;
4037 }
4038
4039
4040 static const ber_sequence_t T_severityFilter_sequence[] = {
4041 { &hf_mms_mostSevere , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
4042 { &hf_mms_leastSevere , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
4043 { NULL, 0, 0, 0, NULL }
4044 };
4045
4046 static int
dissect_mms_T_severityFilter(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4047 dissect_mms_T_severityFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4048 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4049 T_severityFilter_sequence, hf_index, ett_mms_T_severityFilter);
4050
4051 return offset;
4052 }
4053
4054
4055 static const ber_sequence_t GetAlarmSummary_Request_sequence[] = {
4056 { &hf_mms_enrollmentsOnly , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4057 { &hf_mms_activeAlarmsOnly, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4058 { &hf_mms_acknowledgmentFilter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_acknowledgmentFilter },
4059 { &hf_mms_severityFilter , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_severityFilter },
4060 { &hf_mms_continueAfter , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4061 { NULL, 0, 0, 0, NULL }
4062 };
4063
4064 static int
dissect_mms_GetAlarmSummary_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4065 dissect_mms_GetAlarmSummary_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4066 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4067 GetAlarmSummary_Request_sequence, hf_index, ett_mms_GetAlarmSummary_Request);
4068
4069 return offset;
4070 }
4071
4072
4073 static const value_string mms_T_acknowledgmentFilter_01_vals[] = {
4074 { 0, "not-acked" },
4075 { 1, "acked" },
4076 { 2, "all" },
4077 { 0, NULL }
4078 };
4079
4080
4081 static int
dissect_mms_T_acknowledgmentFilter_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4082 dissect_mms_T_acknowledgmentFilter_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4083 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4084 NULL);
4085
4086 return offset;
4087 }
4088
4089
4090 static const ber_sequence_t T_severityFilter_01_sequence[] = {
4091 { &hf_mms_mostSevere , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
4092 { &hf_mms_leastSevere , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
4093 { NULL, 0, 0, 0, NULL }
4094 };
4095
4096 static int
dissect_mms_T_severityFilter_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4097 dissect_mms_T_severityFilter_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4098 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4099 T_severityFilter_01_sequence, hf_index, ett_mms_T_severityFilter_01);
4100
4101 return offset;
4102 }
4103
4104
4105 static const ber_sequence_t GetAlarmEnrollmentSummary_Request_sequence[] = {
4106 { &hf_mms_enrollmentsOnly , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4107 { &hf_mms_activeAlarmsOnly, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4108 { &hf_mms_acknowledgmentFilter_01, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_acknowledgmentFilter_01 },
4109 { &hf_mms_severityFilter_01, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_severityFilter_01 },
4110 { &hf_mms_getAlarmEnrollmentSummary_Request_continueAfter, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4111 { NULL, 0, 0, 0, NULL }
4112 };
4113
4114 static int
dissect_mms_GetAlarmEnrollmentSummary_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4115 dissect_mms_GetAlarmEnrollmentSummary_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4116 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4117 GetAlarmEnrollmentSummary_Request_sequence, hf_index, ett_mms_GetAlarmEnrollmentSummary_Request);
4118
4119 return offset;
4120 }
4121
4122
4123 static const value_string mms_T_rangeStartSpecification_vals[] = {
4124 { 0, "startingTime" },
4125 { 1, "startingEntry" },
4126 { 0, NULL }
4127 };
4128
4129 static const ber_choice_t T_rangeStartSpecification_choice[] = {
4130 { 0, &hf_mms_startingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
4131 { 1, &hf_mms_startingEntry , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
4132 { 0, NULL, 0, 0, 0, NULL }
4133 };
4134
4135 static int
dissect_mms_T_rangeStartSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4136 dissect_mms_T_rangeStartSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4137 offset = dissect_ber_choice(actx, tree, tvb, offset,
4138 T_rangeStartSpecification_choice, hf_index, ett_mms_T_rangeStartSpecification,
4139 NULL);
4140
4141 return offset;
4142 }
4143
4144
4145 static const value_string mms_T_rangeStopSpecification_vals[] = {
4146 { 0, "endingTime" },
4147 { 1, "numberOfEntries" },
4148 { 0, NULL }
4149 };
4150
4151 static const ber_choice_t T_rangeStopSpecification_choice[] = {
4152 { 0, &hf_mms_endingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
4153 { 1, &hf_mms_numberOfEntries , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
4154 { 0, NULL, 0, 0, 0, NULL }
4155 };
4156
4157 static int
dissect_mms_T_rangeStopSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4158 dissect_mms_T_rangeStopSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4159 offset = dissect_ber_choice(actx, tree, tvb, offset,
4160 T_rangeStopSpecification_choice, hf_index, ett_mms_T_rangeStopSpecification,
4161 NULL);
4162
4163 return offset;
4164 }
4165
4166
4167 static const ber_sequence_t T_listOfVariables_sequence_of[1] = {
4168 { &hf_mms_listOfVariables_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
4169 };
4170
4171 static int
dissect_mms_T_listOfVariables(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4172 dissect_mms_T_listOfVariables(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4173 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4174 T_listOfVariables_sequence_of, hf_index, ett_mms_T_listOfVariables);
4175
4176 return offset;
4177 }
4178
4179
4180 static const ber_sequence_t T_entryToStartAfter_sequence[] = {
4181 { &hf_mms_timeSpecification, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
4182 { &hf_mms_entrySpecification, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
4183 { NULL, 0, 0, 0, NULL }
4184 };
4185
4186 static int
dissect_mms_T_entryToStartAfter(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4187 dissect_mms_T_entryToStartAfter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4188 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4189 T_entryToStartAfter_sequence, hf_index, ett_mms_T_entryToStartAfter);
4190
4191 return offset;
4192 }
4193
4194
4195 static const ber_sequence_t ReadJournal_Request_sequence[] = {
4196 { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4197 { &hf_mms_rangeStartSpecification, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_T_rangeStartSpecification },
4198 { &hf_mms_rangeStopSpecification, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_rangeStopSpecification },
4199 { &hf_mms_listOfVariables , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariables },
4200 { &hf_mms_entryToStartAfter, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_entryToStartAfter },
4201 { NULL, 0, 0, 0, NULL }
4202 };
4203
4204 static int
dissect_mms_ReadJournal_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4205 dissect_mms_ReadJournal_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4206 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4207 ReadJournal_Request_sequence, hf_index, ett_mms_ReadJournal_Request);
4208
4209 return offset;
4210 }
4211
4212
4213
4214 static int
dissect_mms_JOU_Additional_Detail(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4215 dissect_mms_JOU_Additional_Detail(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4216 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4217
4218 return offset;
4219 }
4220
4221
4222 static const ber_sequence_t T_event_sequence[] = {
4223 { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4224 { &hf_mms_currentState , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
4225 { NULL, 0, 0, 0, NULL }
4226 };
4227
4228 static int
dissect_mms_T_event(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4229 dissect_mms_T_event(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4230 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4231 T_event_sequence, hf_index, ett_mms_T_event);
4232
4233 return offset;
4234 }
4235
4236
4237 static const ber_sequence_t T_listOfVariables_item_sequence[] = {
4238 { &hf_mms_variableTag , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
4239 { &hf_mms_valueSpecification, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_Data },
4240 { NULL, 0, 0, 0, NULL }
4241 };
4242
4243 static int
dissect_mms_T_listOfVariables_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4244 dissect_mms_T_listOfVariables_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4245 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4246 T_listOfVariables_item_sequence, hf_index, ett_mms_T_listOfVariables_item);
4247
4248 return offset;
4249 }
4250
4251
4252 static const ber_sequence_t T_listOfVariables_01_sequence_of[1] = {
4253 { &hf_mms_listOfVariables_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariables_item },
4254 };
4255
4256 static int
dissect_mms_T_listOfVariables_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4257 dissect_mms_T_listOfVariables_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4258 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4259 T_listOfVariables_01_sequence_of, hf_index, ett_mms_T_listOfVariables_01);
4260
4261 return offset;
4262 }
4263
4264
4265 static const ber_sequence_t T_data_sequence[] = {
4266 { &hf_mms_event , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_event },
4267 { &hf_mms_listOfVariables_01, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariables_01 },
4268 { NULL, 0, 0, 0, NULL }
4269 };
4270
4271 static int
dissect_mms_T_data(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4272 dissect_mms_T_data(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4273 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4274 T_data_sequence, hf_index, ett_mms_T_data);
4275
4276 return offset;
4277 }
4278
4279
4280 static const value_string mms_T_entryForm_vals[] = {
4281 { 2, "data" },
4282 { 3, "annotation" },
4283 { 0, NULL }
4284 };
4285
4286 static const ber_choice_t T_entryForm_choice[] = {
4287 { 2, &hf_mms_data , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_data },
4288 { 3, &hf_mms_annotation , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
4289 { 0, NULL, 0, 0, 0, NULL }
4290 };
4291
4292 static int
dissect_mms_T_entryForm(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4293 dissect_mms_T_entryForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4294 offset = dissect_ber_choice(actx, tree, tvb, offset,
4295 T_entryForm_choice, hf_index, ett_mms_T_entryForm,
4296 NULL);
4297
4298 return offset;
4299 }
4300
4301
4302 static const ber_sequence_t EntryContent_sequence[] = {
4303 { &hf_mms_occurenceTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
4304 { &hf_mms_additionalDetail, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_JOU_Additional_Detail },
4305 { &hf_mms_entryForm , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_entryForm },
4306 { NULL, 0, 0, 0, NULL }
4307 };
4308
4309 static int
dissect_mms_EntryContent(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4310 dissect_mms_EntryContent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4311 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4312 EntryContent_sequence, hf_index, ett_mms_EntryContent);
4313
4314 return offset;
4315 }
4316
4317
4318 static const ber_sequence_t SEQUENCE_OF_EntryContent_sequence_of[1] = {
4319 { &hf_mms_listOfJournalEntry_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_EntryContent },
4320 };
4321
4322 static int
dissect_mms_SEQUENCE_OF_EntryContent(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4323 dissect_mms_SEQUENCE_OF_EntryContent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4324 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4325 SEQUENCE_OF_EntryContent_sequence_of, hf_index, ett_mms_SEQUENCE_OF_EntryContent);
4326
4327 return offset;
4328 }
4329
4330
4331 static const ber_sequence_t WriteJournal_Request_sequence[] = {
4332 { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4333 { &hf_mms_listOfJournalEntry_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_EntryContent },
4334 { NULL, 0, 0, 0, NULL }
4335 };
4336
4337 static int
dissect_mms_WriteJournal_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4338 dissect_mms_WriteJournal_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4339 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4340 WriteJournal_Request_sequence, hf_index, ett_mms_WriteJournal_Request);
4341
4342 return offset;
4343 }
4344
4345
4346 static const ber_sequence_t T_limitSpecification_sequence[] = {
4347 { &hf_mms_limitingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay },
4348 { &hf_mms_limitingEntry , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
4349 { NULL, 0, 0, 0, NULL }
4350 };
4351
4352 static int
dissect_mms_T_limitSpecification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4353 dissect_mms_T_limitSpecification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4354 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4355 T_limitSpecification_sequence, hf_index, ett_mms_T_limitSpecification);
4356
4357 return offset;
4358 }
4359
4360
4361 static const ber_sequence_t InitializeJournal_Request_sequence[] = {
4362 { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4363 { &hf_mms_limitSpecification, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_limitSpecification },
4364 { NULL, 0, 0, 0, NULL }
4365 };
4366
4367 static int
dissect_mms_InitializeJournal_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4368 dissect_mms_InitializeJournal_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4369 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4370 InitializeJournal_Request_sequence, hf_index, ett_mms_InitializeJournal_Request);
4371
4372 return offset;
4373 }
4374
4375
4376
4377 static int
dissect_mms_ReportJournalStatus_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4378 dissect_mms_ReportJournalStatus_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4379 offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index);
4380
4381 return offset;
4382 }
4383
4384
4385 static const ber_sequence_t CreateJournal_Request_sequence[] = {
4386 { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4387 { NULL, 0, 0, 0, NULL }
4388 };
4389
4390 static int
dissect_mms_CreateJournal_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4391 dissect_mms_CreateJournal_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4392 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4393 CreateJournal_Request_sequence, hf_index, ett_mms_CreateJournal_Request);
4394
4395 return offset;
4396 }
4397
4398
4399 static const ber_sequence_t DeleteJournal_Request_sequence[] = {
4400 { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
4401 { NULL, 0, 0, 0, NULL }
4402 };
4403
4404 static int
dissect_mms_DeleteJournal_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4405 dissect_mms_DeleteJournal_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4406 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4407 DeleteJournal_Request_sequence, hf_index, ett_mms_DeleteJournal_Request);
4408
4409 return offset;
4410 }
4411
4412
4413 static const ber_sequence_t GetCapabilityList_Request_sequence[] = {
4414 { &hf_mms_getCapabilityList_Request_continueAfter, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
4415 { NULL, 0, 0, 0, NULL }
4416 };
4417
4418 static int
dissect_mms_GetCapabilityList_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4419 dissect_mms_GetCapabilityList_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4420 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4421 GetCapabilityList_Request_sequence, hf_index, ett_mms_GetCapabilityList_Request);
4422
4423 return offset;
4424 }
4425
4426
4427 static const ber_sequence_t FileOpen_Request_sequence[] = {
4428 { &hf_mms_fileName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
4429 { &hf_mms_initialPosition , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
4430 { NULL, 0, 0, 0, NULL }
4431 };
4432
4433 static int
dissect_mms_FileOpen_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4434 dissect_mms_FileOpen_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4435 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4436 FileOpen_Request_sequence, hf_index, ett_mms_FileOpen_Request);
4437
4438 return offset;
4439 }
4440
4441
4442
4443 static int
dissect_mms_FileRead_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4444 dissect_mms_FileRead_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4445 offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index);
4446
4447 return offset;
4448 }
4449
4450
4451
4452 static int
dissect_mms_FileClose_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4453 dissect_mms_FileClose_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4454 offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index);
4455
4456 return offset;
4457 }
4458
4459
4460 static const ber_sequence_t FileRename_Request_sequence[] = {
4461 { &hf_mms_currentFileName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
4462 { &hf_mms_newFileName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
4463 { NULL, 0, 0, 0, NULL }
4464 };
4465
4466 static int
dissect_mms_FileRename_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4467 dissect_mms_FileRename_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4468 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4469 FileRename_Request_sequence, hf_index, ett_mms_FileRename_Request);
4470
4471 return offset;
4472 }
4473
4474
4475
4476 static int
dissect_mms_FileDelete_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4477 dissect_mms_FileDelete_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4478 offset = dissect_mms_FileName(implicit_tag, tvb, offset, actx, tree, hf_index);
4479
4480 return offset;
4481 }
4482
4483
4484 static const ber_sequence_t FileDirectory_Request_sequence[] = {
4485 { &hf_mms_fileSpecification, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_FileName },
4486 { &hf_mms_fileDirectory_Request_continueAfter, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_FileName },
4487 { NULL, 0, 0, 0, NULL }
4488 };
4489
4490 static int
dissect_mms_FileDirectory_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4491 dissect_mms_FileDirectory_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4492 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4493 FileDirectory_Request_sequence, hf_index, ett_mms_FileDirectory_Request);
4494
4495 return offset;
4496 }
4497
4498
4499 static const value_string mms_ConfirmedServiceRequest_vals[] = {
4500 { 0, "status" },
4501 { 1, "getNameList" },
4502 { 2, "identify" },
4503 { 3, "rename" },
4504 { 4, "read" },
4505 { 5, "write" },
4506 { 6, "getVariableAccessAttributes" },
4507 { 7, "defineNamedVariable" },
4508 { 8, "defineScatteredAccess" },
4509 { 9, "getScatteredAccessAttributes" },
4510 { 10, "deleteVariableAccess" },
4511 { 11, "defineNamedVariableList" },
4512 { 12, "getNamedVariableListAttributes" },
4513 { 13, "deleteNamedVariableList" },
4514 { 14, "defineNamedType" },
4515 { 15, "getNamedTypeAttributes" },
4516 { 16, "deleteNamedType" },
4517 { 17, "input" },
4518 { 18, "output" },
4519 { 19, "takeControl" },
4520 { 20, "relinquishControl" },
4521 { 21, "defineSemaphore" },
4522 { 22, "deleteSemaphore" },
4523 { 23, "reportSemaphoreStatus" },
4524 { 24, "reportPoolSemaphoreStatus" },
4525 { 25, "reportSemaphoreEntryStatus" },
4526 { 26, "initiateDownloadSequence" },
4527 { 27, "downloadSegment" },
4528 { 28, "terminateDownloadSequence" },
4529 { 29, "initiateUploadSequence" },
4530 { 30, "uploadSegment" },
4531 { 31, "terminateUploadSequence" },
4532 { 32, "requestDomainDownload" },
4533 { 33, "requestDomainUpload" },
4534 { 34, "loadDomainContent" },
4535 { 35, "storeDomainContent" },
4536 { 36, "deleteDomain" },
4537 { 37, "getDomainAttributes" },
4538 { 38, "createProgramInvocation" },
4539 { 39, "deleteProgramInvocation" },
4540 { 40, "start" },
4541 { 41, "stop" },
4542 { 42, "resume" },
4543 { 43, "reset" },
4544 { 44, "kill" },
4545 { 45, "getProgramInvocationAttributes" },
4546 { 46, "obtainFile" },
4547 { 47, "defineEventCondition" },
4548 { 48, "deleteEventCondition" },
4549 { 49, "getEventConditionAttributes" },
4550 { 50, "reportEventConditionStatus" },
4551 { 51, "alterEventConditionMonitoring" },
4552 { 52, "triggerEvent" },
4553 { 53, "defineEventAction" },
4554 { 54, "deleteEventAction" },
4555 { 55, "getEventActionAttributes" },
4556 { 56, "reportEventActionStatus" },
4557 { 57, "defineEventEnrollment" },
4558 { 58, "deleteEventEnrollment" },
4559 { 59, "alterEventEnrollment" },
4560 { 60, "reportEventEnrollmentStatus" },
4561 { 61, "getEventEnrollmentAttributes" },
4562 { 62, "acknowledgeEventNotification" },
4563 { 63, "getAlarmSummary" },
4564 { 64, "getAlarmEnrollmentSummary" },
4565 { 65, "readJournal" },
4566 { 66, "writeJournal" },
4567 { 67, "initializeJournal" },
4568 { 68, "reportJournalStatus" },
4569 { 69, "createJournal" },
4570 { 70, "deleteJournal" },
4571 { 71, "getCapabilityList" },
4572 { 72, "fileOpen" },
4573 { 73, "fileRead" },
4574 { 74, "fileClose" },
4575 { 75, "fileRename" },
4576 { 76, "fileDelete" },
4577 { 77, "fileDirectory" },
4578 { 0, NULL }
4579 };
4580
4581 static const ber_choice_t ConfirmedServiceRequest_choice[] = {
4582 { 0, &hf_mms_status , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Status_Request },
4583 { 1, &hf_mms_getNameList , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_GetNameList_Request },
4584 { 2, &hf_mms_identify , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identify_Request },
4585 { 3, &hf_mms_rename , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Rename_Request },
4586 { 4, &hf_mms_read , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Read_Request },
4587 { 5, &hf_mms_write , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Write_Request },
4588 { 6, &hf_mms_getVariableAccessAttributes, BER_CLASS_CON, 6, 0, dissect_mms_GetVariableAccessAttributes_Request },
4589 { 7, &hf_mms_defineNamedVariable, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariable_Request },
4590 { 8, &hf_mms_defineScatteredAccess, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_DefineScatteredAccess_Request },
4591 { 9, &hf_mms_getScatteredAccessAttributes, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_GetScatteredAccessAttributes_Request },
4592 { 10, &hf_mms_deleteVariableAccess, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Request },
4593 { 11, &hf_mms_defineNamedVariableList, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariableList_Request },
4594 { 12, &hf_mms_getNamedVariableListAttributes, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedVariableListAttributes_Request },
4595 { 13, &hf_mms_deleteNamedVariableList, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Request },
4596 { 14, &hf_mms_defineNamedType , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedType_Request },
4597 { 15, &hf_mms_getNamedTypeAttributes, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedTypeAttributes_Request },
4598 { 16, &hf_mms_deleteNamedType , BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Request },
4599 { 17, &hf_mms_input , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_Input_Request },
4600 { 18, &hf_mms_output , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_mms_Output_Request },
4601 { 19, &hf_mms_takeControl , BER_CLASS_CON, 19, BER_FLAGS_IMPLTAG, dissect_mms_TakeControl_Request },
4602 { 20, &hf_mms_relinquishControl, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_mms_RelinquishControl_Request },
4603 { 21, &hf_mms_defineSemaphore , BER_CLASS_CON, 21, BER_FLAGS_IMPLTAG, dissect_mms_DefineSemaphore_Request },
4604 { 22, &hf_mms_deleteSemaphore , BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_mms_DeleteSemaphore_Request },
4605 { 23, &hf_mms_reportSemaphoreStatus, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreStatus_Request },
4606 { 24, &hf_mms_reportPoolSemaphoreStatus, BER_CLASS_CON, 24, BER_FLAGS_IMPLTAG, dissect_mms_ReportPoolSemaphoreStatus_Request },
4607 { 25, &hf_mms_reportSemaphoreEntryStatus, BER_CLASS_CON, 25, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreEntryStatus_Request },
4608 { 26, &hf_mms_initiateDownloadSequence, BER_CLASS_CON, 26, BER_FLAGS_IMPLTAG, dissect_mms_InitiateDownloadSequence_Request },
4609 { 27, &hf_mms_downloadSegment , BER_CLASS_CON, 27, BER_FLAGS_IMPLTAG, dissect_mms_DownloadSegment_Request },
4610 { 28, &hf_mms_terminateDownloadSequence, BER_CLASS_CON, 28, BER_FLAGS_IMPLTAG, dissect_mms_TerminateDownloadSequence_Request },
4611 { 29, &hf_mms_initiateUploadSequence, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_mms_InitiateUploadSequence_Request },
4612 { 30, &hf_mms_uploadSegment , BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_mms_UploadSegment_Request },
4613 { 31, &hf_mms_terminateUploadSequence, BER_CLASS_CON, 31, BER_FLAGS_IMPLTAG, dissect_mms_TerminateUploadSequence_Request },
4614 { 32, &hf_mms_requestDomainDownload, BER_CLASS_CON, 32, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainDownload_Request },
4615 { 33, &hf_mms_requestDomainUpload, BER_CLASS_CON, 33, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainUpload_Request },
4616 { 34, &hf_mms_loadDomainContent, BER_CLASS_CON, 34, BER_FLAGS_IMPLTAG, dissect_mms_LoadDomainContent_Request },
4617 { 35, &hf_mms_storeDomainContent, BER_CLASS_CON, 35, BER_FLAGS_IMPLTAG, dissect_mms_StoreDomainContent_Request },
4618 { 36, &hf_mms_deleteDomain , BER_CLASS_CON, 36, BER_FLAGS_IMPLTAG, dissect_mms_DeleteDomain_Request },
4619 { 37, &hf_mms_getDomainAttributes, BER_CLASS_CON, 37, BER_FLAGS_IMPLTAG, dissect_mms_GetDomainAttributes_Request },
4620 { 38, &hf_mms_createProgramInvocation, BER_CLASS_CON, 38, BER_FLAGS_IMPLTAG, dissect_mms_CreateProgramInvocation_Request },
4621 { 39, &hf_mms_deleteProgramInvocation, BER_CLASS_CON, 39, BER_FLAGS_IMPLTAG, dissect_mms_DeleteProgramInvocation_Request },
4622 { 40, &hf_mms_start , BER_CLASS_CON, 40, BER_FLAGS_IMPLTAG, dissect_mms_Start_Request },
4623 { 41, &hf_mms_stop , BER_CLASS_CON, 41, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Request },
4624 { 42, &hf_mms_resume , BER_CLASS_CON, 42, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Request },
4625 { 43, &hf_mms_reset , BER_CLASS_CON, 43, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Request },
4626 { 44, &hf_mms_kill , BER_CLASS_CON, 44, BER_FLAGS_IMPLTAG, dissect_mms_Kill_Request },
4627 { 45, &hf_mms_getProgramInvocationAttributes, BER_CLASS_CON, 45, BER_FLAGS_IMPLTAG, dissect_mms_GetProgramInvocationAttributes_Request },
4628 { 46, &hf_mms_obtainFile , BER_CLASS_CON, 46, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Request },
4629 { 47, &hf_mms_defineEventCondition, BER_CLASS_CON, 47, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventCondition_Request },
4630 { 48, &hf_mms_confirmedServiceRequest_deleteEventCondition, BER_CLASS_CON, 48, 0, dissect_mms_DeleteEventCondition_Request },
4631 { 49, &hf_mms_getEventConditionAttributes, BER_CLASS_CON, 49, 0, dissect_mms_GetEventConditionAttributes_Request },
4632 { 50, &hf_mms_reportEventConditionStatus, BER_CLASS_CON, 50, 0, dissect_mms_ReportEventConditionStatus_Request },
4633 { 51, &hf_mms_alterEventConditionMonitoring, BER_CLASS_CON, 51, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventConditionMonitoring_Request },
4634 { 52, &hf_mms_triggerEvent , BER_CLASS_CON, 52, BER_FLAGS_IMPLTAG, dissect_mms_TriggerEvent_Request },
4635 { 53, &hf_mms_defineEventAction, BER_CLASS_CON, 53, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventAction_Request },
4636 { 54, &hf_mms_confirmedServiceRequest_deleteEventAction, BER_CLASS_CON, 54, 0, dissect_mms_DeleteEventAction_Request },
4637 { 55, &hf_mms_getEventActionAttributes, BER_CLASS_CON, 55, 0, dissect_mms_GetEventActionAttributes_Request },
4638 { 56, &hf_mms_reportEventActionStatus, BER_CLASS_CON, 56, 0, dissect_mms_ReportEventActionStatus_Request },
4639 { 57, &hf_mms_defineEventEnrollment, BER_CLASS_CON, 57, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventEnrollment_Request },
4640 { 58, &hf_mms_confirmedServiceRequest_deleteEventEnrollment, BER_CLASS_CON, 58, 0, dissect_mms_DeleteEventEnrollment_Request },
4641 { 59, &hf_mms_alterEventEnrollment, BER_CLASS_CON, 59, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventEnrollment_Request },
4642 { 60, &hf_mms_reportEventEnrollmentStatus, BER_CLASS_CON, 60, 0, dissect_mms_ReportEventEnrollmentStatus_Request },
4643 { 61, &hf_mms_getEventEnrollmentAttributes, BER_CLASS_CON, 61, BER_FLAGS_IMPLTAG, dissect_mms_GetEventEnrollmentAttributes_Request },
4644 { 62, &hf_mms_acknowledgeEventNotification, BER_CLASS_CON, 62, BER_FLAGS_IMPLTAG, dissect_mms_AcknowledgeEventNotification_Request },
4645 { 63, &hf_mms_getAlarmSummary , BER_CLASS_CON, 63, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmSummary_Request },
4646 { 64, &hf_mms_getAlarmEnrollmentSummary, BER_CLASS_CON, 64, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmEnrollmentSummary_Request },
4647 { 65, &hf_mms_readJournal , BER_CLASS_CON, 65, BER_FLAGS_IMPLTAG, dissect_mms_ReadJournal_Request },
4648 { 66, &hf_mms_writeJournal , BER_CLASS_CON, 66, BER_FLAGS_IMPLTAG, dissect_mms_WriteJournal_Request },
4649 { 67, &hf_mms_initializeJournal, BER_CLASS_CON, 67, BER_FLAGS_IMPLTAG, dissect_mms_InitializeJournal_Request },
4650 { 68, &hf_mms_reportJournalStatus, BER_CLASS_CON, 68, BER_FLAGS_IMPLTAG, dissect_mms_ReportJournalStatus_Request },
4651 { 69, &hf_mms_createJournal , BER_CLASS_CON, 69, BER_FLAGS_IMPLTAG, dissect_mms_CreateJournal_Request },
4652 { 70, &hf_mms_deleteJournal , BER_CLASS_CON, 70, BER_FLAGS_IMPLTAG, dissect_mms_DeleteJournal_Request },
4653 { 71, &hf_mms_getCapabilityList, BER_CLASS_CON, 71, BER_FLAGS_IMPLTAG, dissect_mms_GetCapabilityList_Request },
4654 { 72, &hf_mms_fileOpen , BER_CLASS_CON, 72, BER_FLAGS_IMPLTAG, dissect_mms_FileOpen_Request },
4655 { 73, &hf_mms_fileRead , BER_CLASS_CON, 73, BER_FLAGS_IMPLTAG, dissect_mms_FileRead_Request },
4656 { 74, &hf_mms_fileClose , BER_CLASS_CON, 74, BER_FLAGS_IMPLTAG, dissect_mms_FileClose_Request },
4657 { 75, &hf_mms_fileRename , BER_CLASS_CON, 75, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Request },
4658 { 76, &hf_mms_fileDelete , BER_CLASS_CON, 76, BER_FLAGS_IMPLTAG, dissect_mms_FileDelete_Request },
4659 { 77, &hf_mms_fileDirectory , BER_CLASS_CON, 77, BER_FLAGS_IMPLTAG, dissect_mms_FileDirectory_Request },
4660 { 0, NULL, 0, 0, 0, NULL }
4661 };
4662
4663 static int
dissect_mms_ConfirmedServiceRequest(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4664 dissect_mms_ConfirmedServiceRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4665 offset = dissect_ber_choice(actx, tree, tvb, offset,
4666 ConfirmedServiceRequest_choice, hf_index, ett_mms_ConfirmedServiceRequest,
4667 NULL);
4668
4669 return offset;
4670 }
4671
4672
4673 static const value_string mms_CS_Request_Detail_vals[] = {
4674 { 0, "foo" },
4675 { 0, NULL }
4676 };
4677
4678 static const ber_choice_t CS_Request_Detail_choice[] = {
4679 { 0, &hf_mms_foo , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_INTEGER },
4680 { 0, NULL, 0, 0, 0, NULL }
4681 };
4682
4683 static int
dissect_mms_CS_Request_Detail(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4684 dissect_mms_CS_Request_Detail(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4685 offset = dissect_ber_choice(actx, tree, tvb, offset,
4686 CS_Request_Detail_choice, hf_index, ett_mms_CS_Request_Detail,
4687 NULL);
4688
4689 return offset;
4690 }
4691
4692
4693 static const ber_sequence_t Confirmed_RequestPDU_sequence[] = {
4694 { &hf_mms_invokeID , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_Unsigned32 },
4695 { &hf_mms_listOfModifier , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_mms_SEQUENCE_OF_Modifier },
4696 { &hf_mms_confirmedServiceRequest, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ConfirmedServiceRequest },
4697 { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail },
4698 { NULL, 0, 0, 0, NULL }
4699 };
4700
4701 static int
dissect_mms_Confirmed_RequestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4702 dissect_mms_Confirmed_RequestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4703 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4704 Confirmed_RequestPDU_sequence, hf_index, ett_mms_Confirmed_RequestPDU);
4705
4706 return offset;
4707 }
4708
4709
4710 static const value_string mms_T_vmdLogicalStatus_vals[] = {
4711 { 0, "state-changes-allowed" },
4712 { 1, "no-state-changes-allowed" },
4713 { 2, "limited-services-allowed" },
4714 { 3, "support-services-allowed" },
4715 { 0, NULL }
4716 };
4717
4718
4719 static int
dissect_mms_T_vmdLogicalStatus(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4720 dissect_mms_T_vmdLogicalStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4721 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4722 NULL);
4723
4724 return offset;
4725 }
4726
4727
4728 static const value_string mms_T_vmdPhysicalStatus_vals[] = {
4729 { 0, "operational" },
4730 { 1, "partially-operational" },
4731 { 2, "inoperable" },
4732 { 3, "needs-commissioning" },
4733 { 0, NULL }
4734 };
4735
4736
4737 static int
dissect_mms_T_vmdPhysicalStatus(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4738 dissect_mms_T_vmdPhysicalStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4739 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4740 NULL);
4741
4742 return offset;
4743 }
4744
4745
4746
4747 static int
dissect_mms_BIT_STRING_SIZE_0_128(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4748 dissect_mms_BIT_STRING_SIZE_0_128(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4749 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
4750 NULL, 0, hf_index, -1,
4751 NULL);
4752
4753 return offset;
4754 }
4755
4756
4757 static const ber_sequence_t Status_Response_sequence[] = {
4758 { &hf_mms_vmdLogicalStatus, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_vmdLogicalStatus },
4759 { &hf_mms_vmdPhysicalStatus, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_vmdPhysicalStatus },
4760 { &hf_mms_localDetail , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BIT_STRING_SIZE_0_128 },
4761 { NULL, 0, 0, 0, NULL }
4762 };
4763
4764 static int
dissect_mms_Status_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4765 dissect_mms_Status_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4766 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4767 Status_Response_sequence, hf_index, ett_mms_Status_Response);
4768
4769 return offset;
4770 }
4771
4772
4773 static const ber_sequence_t GetNameList_Response_sequence[] = {
4774 { &hf_mms_listOfIdentifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier },
4775 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4776 { NULL, 0, 0, 0, NULL }
4777 };
4778
4779 static int
dissect_mms_GetNameList_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4780 dissect_mms_GetNameList_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4781 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4782 GetNameList_Response_sequence, hf_index, ett_mms_GetNameList_Response);
4783
4784 return offset;
4785 }
4786
4787
4788 static const ber_sequence_t T_listOfAbstractSyntaxes_sequence_of[1] = {
4789 { &hf_mms_listOfAbstractSyntaxes_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_mms_OBJECT_IDENTIFIER },
4790 };
4791
4792 static int
dissect_mms_T_listOfAbstractSyntaxes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4793 dissect_mms_T_listOfAbstractSyntaxes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4794 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4795 T_listOfAbstractSyntaxes_sequence_of, hf_index, ett_mms_T_listOfAbstractSyntaxes);
4796
4797 return offset;
4798 }
4799
4800
4801 static const ber_sequence_t Identify_Response_sequence[] = {
4802 { &hf_mms_vendorName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
4803 { &hf_mms_modelName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
4804 { &hf_mms_revision , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
4805 { &hf_mms_listOfAbstractSyntaxes, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfAbstractSyntaxes },
4806 { NULL, 0, 0, 0, NULL }
4807 };
4808
4809 static int
dissect_mms_Identify_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4810 dissect_mms_Identify_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4811 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4812 Identify_Response_sequence, hf_index, ett_mms_Identify_Response);
4813
4814 return offset;
4815 }
4816
4817
4818
4819 static int
dissect_mms_Rename_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4820 dissect_mms_Rename_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4821 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4822
4823 return offset;
4824 }
4825
4826
4827 static const value_string mms_DataAccessError_vals[] = {
4828 { 0, "object-invalidated" },
4829 { 1, "hardware-fault" },
4830 { 2, "temporarily-unavailable" },
4831 { 3, "object-access-denied" },
4832 { 4, "object-undefined" },
4833 { 5, "invalid-address" },
4834 { 6, "type-unsupported" },
4835 { 7, "type-inconsistent" },
4836 { 8, "object-attribute-inconsistent" },
4837 { 9, "object-access-unsupported" },
4838 { 10, "object-non-existent" },
4839 { 11, "object-value-invalid" },
4840 { 0, NULL }
4841 };
4842
4843
4844 static int
dissect_mms_DataAccessError(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4845 dissect_mms_DataAccessError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4846 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4847 NULL);
4848
4849 return offset;
4850 }
4851
4852
4853 static const value_string mms_AccessResult_vals[] = {
4854 { 0, "failure" },
4855 { 1, "success" },
4856 { 0, NULL }
4857 };
4858
4859 static const ber_choice_t AccessResult_choice[] = {
4860 { 0, &hf_mms_failure , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_DataAccessError },
4861 { 1, &hf_mms_success_01 , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_Data },
4862 { 0, NULL, 0, 0, 0, NULL }
4863 };
4864
4865 static int
dissect_mms_AccessResult(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4866 dissect_mms_AccessResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4867 offset = dissect_ber_choice(actx, tree, tvb, offset,
4868 AccessResult_choice, hf_index, ett_mms_AccessResult,
4869 NULL);
4870
4871 return offset;
4872 }
4873
4874
4875 static const ber_sequence_t SEQUENCE_OF_AccessResult_sequence_of[1] = {
4876 { &hf_mms_listOfAccessResult_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AccessResult },
4877 };
4878
4879 static int
dissect_mms_SEQUENCE_OF_AccessResult(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4880 dissect_mms_SEQUENCE_OF_AccessResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4881 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4882 SEQUENCE_OF_AccessResult_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AccessResult);
4883
4884 return offset;
4885 }
4886
4887
4888 static const ber_sequence_t Read_Response_sequence[] = {
4889 { &hf_mms_variableAccessSpecificatn, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification },
4890 { &hf_mms_listOfAccessResult, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AccessResult },
4891 { NULL, 0, 0, 0, NULL }
4892 };
4893
4894 static int
dissect_mms_Read_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4895 dissect_mms_Read_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4896 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4897 Read_Response_sequence, hf_index, ett_mms_Read_Response);
4898
4899 return offset;
4900 }
4901
4902
4903 static const value_string mms_Write_Response_item_vals[] = {
4904 { 0, "failure" },
4905 { 1, "success" },
4906 { 0, NULL }
4907 };
4908
4909 static const ber_choice_t Write_Response_item_choice[] = {
4910 { 0, &hf_mms_failure , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_DataAccessError },
4911 { 1, &hf_mms_success , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
4912 { 0, NULL, 0, 0, 0, NULL }
4913 };
4914
4915 static int
dissect_mms_Write_Response_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4916 dissect_mms_Write_Response_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4917 offset = dissect_ber_choice(actx, tree, tvb, offset,
4918 Write_Response_item_choice, hf_index, ett_mms_Write_Response_item,
4919 NULL);
4920
4921 return offset;
4922 }
4923
4924
4925 static const ber_sequence_t Write_Response_sequence_of[1] = {
4926 { &hf_mms_Write_Response_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Write_Response_item },
4927 };
4928
4929 static int
dissect_mms_Write_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4930 dissect_mms_Write_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4931 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4932 Write_Response_sequence_of, hf_index, ett_mms_Write_Response);
4933
4934 return offset;
4935 }
4936
4937
4938 static const ber_sequence_t GetVariableAccessAttributes_Response_sequence[] = {
4939 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4940 { &hf_mms_address , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_Address },
4941 { &hf_mms_typeSpecification, BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
4942 { NULL, 0, 0, 0, NULL }
4943 };
4944
4945 static int
dissect_mms_GetVariableAccessAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4946 dissect_mms_GetVariableAccessAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4947 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4948 GetVariableAccessAttributes_Response_sequence, hf_index, ett_mms_GetVariableAccessAttributes_Response);
4949
4950 return offset;
4951 }
4952
4953
4954
4955 static int
dissect_mms_DefineNamedVariable_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4956 dissect_mms_DefineNamedVariable_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4957 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4958
4959 return offset;
4960 }
4961
4962
4963
4964 static int
dissect_mms_DefineScatteredAccess_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4965 dissect_mms_DefineScatteredAccess_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4966 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
4967
4968 return offset;
4969 }
4970
4971
4972 static const ber_sequence_t GetScatteredAccessAttributes_Response_sequence[] = {
4973 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
4974 { &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription },
4975 { NULL, 0, 0, 0, NULL }
4976 };
4977
4978 static int
dissect_mms_GetScatteredAccessAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4979 dissect_mms_GetScatteredAccessAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4980 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4981 GetScatteredAccessAttributes_Response_sequence, hf_index, ett_mms_GetScatteredAccessAttributes_Response);
4982
4983 return offset;
4984 }
4985
4986
4987 static const ber_sequence_t DeleteVariableAccess_Response_sequence[] = {
4988 { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
4989 { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
4990 { NULL, 0, 0, 0, NULL }
4991 };
4992
4993 static int
dissect_mms_DeleteVariableAccess_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4994 dissect_mms_DeleteVariableAccess_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4995 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4996 DeleteVariableAccess_Response_sequence, hf_index, ett_mms_DeleteVariableAccess_Response);
4997
4998 return offset;
4999 }
5000
5001
5002
5003 static int
dissect_mms_DefineNamedVariableList_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5004 dissect_mms_DefineNamedVariableList_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5005 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5006
5007 return offset;
5008 }
5009
5010
5011 static const ber_sequence_t T_listOfVariable_item_01_sequence[] = {
5012 { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification },
5013 { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess },
5014 { NULL, 0, 0, 0, NULL }
5015 };
5016
5017 static int
dissect_mms_T_listOfVariable_item_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5018 dissect_mms_T_listOfVariable_item_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5019 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5020 T_listOfVariable_item_01_sequence, hf_index, ett_mms_T_listOfVariable_item_01);
5021
5022 return offset;
5023 }
5024
5025
5026 static const ber_sequence_t T_listOfVariable_01_sequence_of[1] = {
5027 { &hf_mms_listOfVariable_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item_01 },
5028 };
5029
5030 static int
dissect_mms_T_listOfVariable_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5031 dissect_mms_T_listOfVariable_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5032 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5033 T_listOfVariable_01_sequence_of, hf_index, ett_mms_T_listOfVariable_01);
5034
5035 return offset;
5036 }
5037
5038
5039 static const ber_sequence_t GetNamedVariableListAttributes_Response_sequence[] = {
5040 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5041 { &hf_mms_listOfVariable_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable_01 },
5042 { NULL, 0, 0, 0, NULL }
5043 };
5044
5045 static int
dissect_mms_GetNamedVariableListAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5046 dissect_mms_GetNamedVariableListAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5047 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5048 GetNamedVariableListAttributes_Response_sequence, hf_index, ett_mms_GetNamedVariableListAttributes_Response);
5049
5050 return offset;
5051 }
5052
5053
5054 static const ber_sequence_t DeleteNamedVariableList_Response_sequence[] = {
5055 { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5056 { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5057 { NULL, 0, 0, 0, NULL }
5058 };
5059
5060 static int
dissect_mms_DeleteNamedVariableList_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5061 dissect_mms_DeleteNamedVariableList_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5062 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5063 DeleteNamedVariableList_Response_sequence, hf_index, ett_mms_DeleteNamedVariableList_Response);
5064
5065 return offset;
5066 }
5067
5068
5069
5070 static int
dissect_mms_DefineNamedType_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5071 dissect_mms_DefineNamedType_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5072 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5073
5074 return offset;
5075 }
5076
5077
5078 static const ber_sequence_t GetNamedTypeAttributes_Response_sequence[] = {
5079 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5080 { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification },
5081 { NULL, 0, 0, 0, NULL }
5082 };
5083
5084 static int
dissect_mms_GetNamedTypeAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5085 dissect_mms_GetNamedTypeAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5086 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5087 GetNamedTypeAttributes_Response_sequence, hf_index, ett_mms_GetNamedTypeAttributes_Response);
5088
5089 return offset;
5090 }
5091
5092
5093 static const ber_sequence_t DeleteNamedType_Response_sequence[] = {
5094 { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5095 { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5096 { NULL, 0, 0, 0, NULL }
5097 };
5098
5099 static int
dissect_mms_DeleteNamedType_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5100 dissect_mms_DeleteNamedType_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5101 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5102 DeleteNamedType_Response_sequence, hf_index, ett_mms_DeleteNamedType_Response);
5103
5104 return offset;
5105 }
5106
5107
5108
5109 static int
dissect_mms_Input_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5110 dissect_mms_Input_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5111 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
5112 actx, tree, tvb, offset, hf_index,
5113 NULL);
5114
5115 return offset;
5116 }
5117
5118
5119
5120 static int
dissect_mms_Output_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5121 dissect_mms_Output_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5122 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5123
5124 return offset;
5125 }
5126
5127
5128 static const value_string mms_TakeControl_Response_vals[] = {
5129 { 0, "noResult" },
5130 { 1, "namedToken" },
5131 { 0, NULL }
5132 };
5133
5134 static const ber_choice_t TakeControl_Response_choice[] = {
5135 { 0, &hf_mms_noResult , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
5136 { 1, &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
5137 { 0, NULL, 0, 0, 0, NULL }
5138 };
5139
5140 static int
dissect_mms_TakeControl_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5141 dissect_mms_TakeControl_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5142 offset = dissect_ber_choice(actx, tree, tvb, offset,
5143 TakeControl_Response_choice, hf_index, ett_mms_TakeControl_Response,
5144 NULL);
5145
5146 return offset;
5147 }
5148
5149
5150
5151 static int
dissect_mms_RelinquishControl_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5152 dissect_mms_RelinquishControl_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5153 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5154
5155 return offset;
5156 }
5157
5158
5159
5160 static int
dissect_mms_DefineSemaphore_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5161 dissect_mms_DefineSemaphore_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5162 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5163
5164 return offset;
5165 }
5166
5167
5168
5169 static int
dissect_mms_DeleteSemaphore_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5170 dissect_mms_DeleteSemaphore_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5171 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5172
5173 return offset;
5174 }
5175
5176
5177 static const value_string mms_T_class_vals[] = {
5178 { 0, "token" },
5179 { 1, "pool" },
5180 { 0, NULL }
5181 };
5182
5183
5184 static int
dissect_mms_T_class(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5185 dissect_mms_T_class(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5186 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5187 NULL);
5188
5189 return offset;
5190 }
5191
5192
5193 static const ber_sequence_t ReportSemaphoreStatus_Response_sequence[] = {
5194 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5195 { &hf_mms_class , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_class },
5196 { &hf_mms_numberOfTokens , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 },
5197 { &hf_mms_numberOfOwnedTokens, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 },
5198 { &hf_mms_numberOfHungTokens, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 },
5199 { NULL, 0, 0, 0, NULL }
5200 };
5201
5202 static int
dissect_mms_ReportSemaphoreStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5203 dissect_mms_ReportSemaphoreStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5204 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5205 ReportSemaphoreStatus_Response_sequence, hf_index, ett_mms_ReportSemaphoreStatus_Response);
5206
5207 return offset;
5208 }
5209
5210
5211 static const value_string mms_T_listOfNamedTokens_item_vals[] = {
5212 { 0, "freeNamedToken" },
5213 { 1, "ownedNamedToken" },
5214 { 2, "hungNamedToken" },
5215 { 0, NULL }
5216 };
5217
5218 static const ber_choice_t T_listOfNamedTokens_item_choice[] = {
5219 { 0, &hf_mms_freeNamedToken , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
5220 { 1, &hf_mms_ownedNamedToken , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
5221 { 2, &hf_mms_hungNamedToken , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
5222 { 0, NULL, 0, 0, 0, NULL }
5223 };
5224
5225 static int
dissect_mms_T_listOfNamedTokens_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5226 dissect_mms_T_listOfNamedTokens_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5227 offset = dissect_ber_choice(actx, tree, tvb, offset,
5228 T_listOfNamedTokens_item_choice, hf_index, ett_mms_T_listOfNamedTokens_item,
5229 NULL);
5230
5231 return offset;
5232 }
5233
5234
5235 static const ber_sequence_t T_listOfNamedTokens_sequence_of[1] = {
5236 { &hf_mms_listOfNamedTokens_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_listOfNamedTokens_item },
5237 };
5238
5239 static int
dissect_mms_T_listOfNamedTokens(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5240 dissect_mms_T_listOfNamedTokens(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5241 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5242 T_listOfNamedTokens_sequence_of, hf_index, ett_mms_T_listOfNamedTokens);
5243
5244 return offset;
5245 }
5246
5247
5248 static const ber_sequence_t ReportPoolSemaphoreStatus_Response_sequence[] = {
5249 { &hf_mms_listOfNamedTokens, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfNamedTokens },
5250 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5251 { NULL, 0, 0, 0, NULL }
5252 };
5253
5254 static int
dissect_mms_ReportPoolSemaphoreStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5255 dissect_mms_ReportPoolSemaphoreStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5256 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5257 ReportPoolSemaphoreStatus_Response_sequence, hf_index, ett_mms_ReportPoolSemaphoreStatus_Response);
5258
5259 return offset;
5260 }
5261
5262
5263 static const value_string mms_T_entryClass_vals[] = {
5264 { 0, "simple" },
5265 { 1, "modifier" },
5266 { 0, NULL }
5267 };
5268
5269
5270 static int
dissect_mms_T_entryClass(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5271 dissect_mms_T_entryClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5272 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5273 NULL);
5274
5275 return offset;
5276 }
5277
5278
5279 static const ber_sequence_t SemaphoreEntry_sequence[] = {
5280 { &hf_mms_entryId , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
5281 { &hf_mms_entryClass , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_entryClass },
5282 { &hf_mms_applicationReference, BER_CLASS_CON, 2, 0, dissect_mms_ApplicationReference },
5283 { &hf_mms_namedToken , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier },
5284 { &hf_mms_priority , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
5285 { &hf_mms_remainingTimeOut, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5286 { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5287 { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5288 { NULL, 0, 0, 0, NULL }
5289 };
5290
5291 static int
dissect_mms_SemaphoreEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5292 dissect_mms_SemaphoreEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5293 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5294 SemaphoreEntry_sequence, hf_index, ett_mms_SemaphoreEntry);
5295
5296 return offset;
5297 }
5298
5299
5300 static const ber_sequence_t SEQUENCE_OF_SemaphoreEntry_sequence_of[1] = {
5301 { &hf_mms_listOfSemaphoreEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_SemaphoreEntry },
5302 };
5303
5304 static int
dissect_mms_SEQUENCE_OF_SemaphoreEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5305 dissect_mms_SEQUENCE_OF_SemaphoreEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5306 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5307 SEQUENCE_OF_SemaphoreEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_SemaphoreEntry);
5308
5309 return offset;
5310 }
5311
5312
5313 static const ber_sequence_t ReportSemaphoreEntryStatus_Response_sequence[] = {
5314 { &hf_mms_listOfSemaphoreEntry, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_SemaphoreEntry },
5315 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5316 { NULL, 0, 0, 0, NULL }
5317 };
5318
5319 static int
dissect_mms_ReportSemaphoreEntryStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5320 dissect_mms_ReportSemaphoreEntryStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5321 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5322 ReportSemaphoreEntryStatus_Response_sequence, hf_index, ett_mms_ReportSemaphoreEntryStatus_Response);
5323
5324 return offset;
5325 }
5326
5327
5328
5329 static int
dissect_mms_InitiateDownloadSequence_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5330 dissect_mms_InitiateDownloadSequence_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5331 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5332
5333 return offset;
5334 }
5335
5336
5337 static const value_string mms_T_loadData_vals[] = {
5338 { 0, "non-coded" },
5339 { 1, "coded" },
5340 { 0, NULL }
5341 };
5342
5343 static const ber_choice_t T_loadData_choice[] = {
5344 { 0, &hf_mms_non_coded , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
5345 { 1, &hf_mms_coded , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt },
5346 { 0, NULL, 0, 0, 0, NULL }
5347 };
5348
5349 static int
dissect_mms_T_loadData(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5350 dissect_mms_T_loadData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5351 offset = dissect_ber_choice(actx, tree, tvb, offset,
5352 T_loadData_choice, hf_index, ett_mms_T_loadData,
5353 NULL);
5354
5355 return offset;
5356 }
5357
5358
5359 static const ber_sequence_t DownloadSegment_Response_sequence[] = {
5360 { &hf_mms_loadData , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_loadData },
5361 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5362 { NULL, 0, 0, 0, NULL }
5363 };
5364
5365 static int
dissect_mms_DownloadSegment_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5366 dissect_mms_DownloadSegment_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5367 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5368 DownloadSegment_Response_sequence, hf_index, ett_mms_DownloadSegment_Response);
5369
5370 return offset;
5371 }
5372
5373
5374
5375 static int
dissect_mms_TerminateDownloadSequence_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5376 dissect_mms_TerminateDownloadSequence_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5377 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5378
5379 return offset;
5380 }
5381
5382
5383 static const ber_sequence_t T_listOfCapabilities_02_sequence_of[1] = {
5384 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
5385 };
5386
5387 static int
dissect_mms_T_listOfCapabilities_02(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5388 dissect_mms_T_listOfCapabilities_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5389 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5390 T_listOfCapabilities_02_sequence_of, hf_index, ett_mms_T_listOfCapabilities_02);
5391
5392 return offset;
5393 }
5394
5395
5396 static const ber_sequence_t InitiateUploadSequence_Response_sequence[] = {
5397 { &hf_mms_ulsmID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
5398 { &hf_mms_listOfCapabilities_02, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_02 },
5399 { NULL, 0, 0, 0, NULL }
5400 };
5401
5402 static int
dissect_mms_InitiateUploadSequence_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5403 dissect_mms_InitiateUploadSequence_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5404 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5405 InitiateUploadSequence_Response_sequence, hf_index, ett_mms_InitiateUploadSequence_Response);
5406
5407 return offset;
5408 }
5409
5410
5411 static const value_string mms_T_loadData_01_vals[] = {
5412 { 0, "non-coded" },
5413 { 1, "coded" },
5414 { 0, NULL }
5415 };
5416
5417 static const ber_choice_t T_loadData_01_choice[] = {
5418 { 0, &hf_mms_non_coded , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
5419 { 1, &hf_mms_coded , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt },
5420 { 0, NULL, 0, 0, 0, NULL }
5421 };
5422
5423 static int
dissect_mms_T_loadData_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5424 dissect_mms_T_loadData_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5425 offset = dissect_ber_choice(actx, tree, tvb, offset,
5426 T_loadData_01_choice, hf_index, ett_mms_T_loadData_01,
5427 NULL);
5428
5429 return offset;
5430 }
5431
5432
5433 static const ber_sequence_t UploadSegment_Response_sequence[] = {
5434 { &hf_mms_loadData_01 , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_loadData_01 },
5435 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5436 { NULL, 0, 0, 0, NULL }
5437 };
5438
5439 static int
dissect_mms_UploadSegment_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5440 dissect_mms_UploadSegment_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5441 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5442 UploadSegment_Response_sequence, hf_index, ett_mms_UploadSegment_Response);
5443
5444 return offset;
5445 }
5446
5447
5448
5449 static int
dissect_mms_TerminateUploadSequence_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5450 dissect_mms_TerminateUploadSequence_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5451 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5452
5453 return offset;
5454 }
5455
5456
5457
5458 static int
dissect_mms_RequestDomainDownload_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5459 dissect_mms_RequestDomainDownload_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5460 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5461
5462 return offset;
5463 }
5464
5465
5466
5467 static int
dissect_mms_RequestDomainUpload_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5468 dissect_mms_RequestDomainUpload_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5469 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5470
5471 return offset;
5472 }
5473
5474
5475
5476 static int
dissect_mms_LoadDomainContent_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5477 dissect_mms_LoadDomainContent_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5478 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5479
5480 return offset;
5481 }
5482
5483
5484
5485 static int
dissect_mms_StoreDomainContent_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5486 dissect_mms_StoreDomainContent_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5487 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5488
5489 return offset;
5490 }
5491
5492
5493
5494 static int
dissect_mms_DeleteDomain_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5495 dissect_mms_DeleteDomain_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5496 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5497
5498 return offset;
5499 }
5500
5501
5502 static const ber_sequence_t T_listOfCapabilities_05_sequence_of[1] = {
5503 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
5504 };
5505
5506 static int
dissect_mms_T_listOfCapabilities_05(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5507 dissect_mms_T_listOfCapabilities_05(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5508 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
5509 T_listOfCapabilities_05_sequence_of, hf_index, ett_mms_T_listOfCapabilities_05);
5510
5511 return offset;
5512 }
5513
5514
5515 static const value_string mms_DomainState_vals[] = {
5516 { 0, "non-existent" },
5517 { 1, "loading" },
5518 { 2, "ready" },
5519 { 3, "in-use" },
5520 { 4, "complete" },
5521 { 5, "incomplete" },
5522 { 7, "d1" },
5523 { 8, "d2" },
5524 { 9, "d3" },
5525 { 10, "d4" },
5526 { 11, "d5" },
5527 { 12, "d6" },
5528 { 13, "d7" },
5529 { 14, "d8" },
5530 { 15, "d9" },
5531 { 0, NULL }
5532 };
5533
5534
5535 static int
dissect_mms_DomainState(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5536 dissect_mms_DomainState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5537 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5538 NULL);
5539
5540 return offset;
5541 }
5542
5543
5544
5545 static int
dissect_mms_Integer8(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5546 dissect_mms_Integer8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5547 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5548 NULL);
5549
5550 return offset;
5551 }
5552
5553
5554 static const ber_sequence_t GetDomainAttributes_Response_sequence[] = {
5555 { &hf_mms_listOfCapabilities_05, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_05 },
5556 { &hf_mms_getDomainAttributes_Response_state, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_DomainState },
5557 { &hf_mms_mmsDeletable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5558 { &hf_mms_sharable , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5559 { &hf_mms_listOfProgramInvocations, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier },
5560 { &hf_mms_uploadInProgress, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Integer8 },
5561 { NULL, 0, 0, 0, NULL }
5562 };
5563
5564 static int
dissect_mms_GetDomainAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5565 dissect_mms_GetDomainAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5566 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5567 GetDomainAttributes_Response_sequence, hf_index, ett_mms_GetDomainAttributes_Response);
5568
5569 return offset;
5570 }
5571
5572
5573
5574 static int
dissect_mms_CreateProgramInvocation_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5575 dissect_mms_CreateProgramInvocation_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5576 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5577
5578 return offset;
5579 }
5580
5581
5582
5583 static int
dissect_mms_DeleteProgramInvocation_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5584 dissect_mms_DeleteProgramInvocation_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5585 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5586
5587 return offset;
5588 }
5589
5590
5591
5592 static int
dissect_mms_Start_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5593 dissect_mms_Start_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5594 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5595
5596 return offset;
5597 }
5598
5599
5600
5601 static int
dissect_mms_Stop_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5602 dissect_mms_Stop_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5603 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5604
5605 return offset;
5606 }
5607
5608
5609
5610 static int
dissect_mms_Resume_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5611 dissect_mms_Resume_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5612 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5613
5614 return offset;
5615 }
5616
5617
5618
5619 static int
dissect_mms_Reset_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5620 dissect_mms_Reset_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5621 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5622
5623 return offset;
5624 }
5625
5626
5627
5628 static int
dissect_mms_Kill_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5629 dissect_mms_Kill_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5630 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5631
5632 return offset;
5633 }
5634
5635
5636 static const value_string mms_T_executionArgument_02_vals[] = {
5637 { 0, "simpleString" },
5638 { 1, "encodedString" },
5639 { 0, NULL }
5640 };
5641
5642 static const ber_choice_t T_executionArgument_02_choice[] = {
5643 { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
5644 { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt },
5645 { 0, NULL, 0, 0, 0, NULL }
5646 };
5647
5648 static int
dissect_mms_T_executionArgument_02(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5649 dissect_mms_T_executionArgument_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5650 offset = dissect_ber_choice(actx, tree, tvb, offset,
5651 T_executionArgument_02_choice, hf_index, ett_mms_T_executionArgument_02,
5652 NULL);
5653
5654 return offset;
5655 }
5656
5657
5658 static const ber_sequence_t GetProgramInvocationAttributes_Response_sequence[] = {
5659 { &hf_mms_getProgramInvocationAttributes_Response_state, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState },
5660 { &hf_mms_listOfDomainNames, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier },
5661 { &hf_mms_mmsDeletable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5662 { &hf_mms_reusable , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5663 { &hf_mms_monitor , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5664 { &hf_mms_startArgument , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString },
5665 { &hf_mms_executionArgument_02, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument_02 },
5666 { NULL, 0, 0, 0, NULL }
5667 };
5668
5669 static int
dissect_mms_GetProgramInvocationAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5670 dissect_mms_GetProgramInvocationAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5671 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5672 GetProgramInvocationAttributes_Response_sequence, hf_index, ett_mms_GetProgramInvocationAttributes_Response);
5673
5674 return offset;
5675 }
5676
5677
5678
5679 static int
dissect_mms_ObtainFile_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5680 dissect_mms_ObtainFile_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5681 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5682
5683 return offset;
5684 }
5685
5686
5687
5688 static int
dissect_mms_GeneralizedTime(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5689 dissect_mms_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5690 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
5691
5692 return offset;
5693 }
5694
5695
5696 static const ber_sequence_t FileAttributes_sequence[] = {
5697 { &hf_mms_sizeOfFile , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5698 { &hf_mms_lastModified , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_GeneralizedTime },
5699 { NULL, 0, 0, 0, NULL }
5700 };
5701
5702 static int
dissect_mms_FileAttributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5703 dissect_mms_FileAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5704 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5705 FileAttributes_sequence, hf_index, ett_mms_FileAttributes);
5706
5707 return offset;
5708 }
5709
5710
5711 static const ber_sequence_t FileOpen_Response_sequence[] = {
5712 { &hf_mms_frsmID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
5713 { &hf_mms_fileAttributes , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileAttributes },
5714 { NULL, 0, 0, 0, NULL }
5715 };
5716
5717 static int
dissect_mms_FileOpen_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5718 dissect_mms_FileOpen_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5719 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5720 FileOpen_Response_sequence, hf_index, ett_mms_FileOpen_Response);
5721
5722 return offset;
5723 }
5724
5725
5726
5727 static int
dissect_mms_DefineEventCondition_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5728 dissect_mms_DefineEventCondition_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5729 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5730
5731 return offset;
5732 }
5733
5734
5735
5736 static int
dissect_mms_DeleteEventCondition_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5737 dissect_mms_DeleteEventCondition_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5738 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
5739
5740 return offset;
5741 }
5742
5743
5744 static const value_string mms_T_monitoredVariable_vals[] = {
5745 { 0, "variableReference" },
5746 { 1, "undefined" },
5747 { 0, NULL }
5748 };
5749
5750 static const ber_choice_t T_monitoredVariable_choice[] = {
5751 { 0, &hf_mms_variableReference, BER_CLASS_CON, 0, 0, dissect_mms_VariableSpecification },
5752 { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
5753 { 0, NULL, 0, 0, 0, NULL }
5754 };
5755
5756 static int
dissect_mms_T_monitoredVariable(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5757 dissect_mms_T_monitoredVariable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5758 offset = dissect_ber_choice(actx, tree, tvb, offset,
5759 T_monitoredVariable_choice, hf_index, ett_mms_T_monitoredVariable,
5760 NULL);
5761
5762 return offset;
5763 }
5764
5765
5766 static const ber_sequence_t GetEventConditionAttributes_Response_sequence[] = {
5767 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5768 { &hf_mms_class_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_Class },
5769 { &hf_mms_prio_rity , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority },
5770 { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
5771 { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5772 { &hf_mms_monitoredVariable_01, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_mms_T_monitoredVariable },
5773 { &hf_mms_evaluationInterval, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5774 { NULL, 0, 0, 0, NULL }
5775 };
5776
5777 static int
dissect_mms_GetEventConditionAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5778 dissect_mms_GetEventConditionAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5779 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5780 GetEventConditionAttributes_Response_sequence, hf_index, ett_mms_GetEventConditionAttributes_Response);
5781
5782 return offset;
5783 }
5784
5785
5786 static const ber_sequence_t ReportEventConditionStatus_Response_sequence[] = {
5787 { &hf_mms_currentState , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
5788 { &hf_mms_numberOfEventEnrollments, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
5789 { &hf_mms_enabled , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5790 { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
5791 { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
5792 { NULL, 0, 0, 0, NULL }
5793 };
5794
5795 static int
dissect_mms_ReportEventConditionStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5796 dissect_mms_ReportEventConditionStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5797 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5798 ReportEventConditionStatus_Response_sequence, hf_index, ett_mms_ReportEventConditionStatus_Response);
5799
5800 return offset;
5801 }
5802
5803
5804
5805 static int
dissect_mms_AlterEventConditionMonitoring_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5806 dissect_mms_AlterEventConditionMonitoring_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5807 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5808
5809 return offset;
5810 }
5811
5812
5813
5814 static int
dissect_mms_TriggerEvent_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5815 dissect_mms_TriggerEvent_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5816 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5817
5818 return offset;
5819 }
5820
5821
5822
5823 static int
dissect_mms_DefineEventAction_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5824 dissect_mms_DefineEventAction_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5825 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5826
5827 return offset;
5828 }
5829
5830
5831
5832 static int
dissect_mms_DeleteEventAction_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5833 dissect_mms_DeleteEventAction_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5834 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
5835
5836 return offset;
5837 }
5838
5839
5840 static const ber_sequence_t GetEventActionAttributes_Response_sequence[] = {
5841 { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5842 { &hf_mms_listOfModifier , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Modifier },
5843 { NULL, 0, 0, 0, NULL }
5844 };
5845
5846 static int
dissect_mms_GetEventActionAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5847 dissect_mms_GetEventActionAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5848 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5849 GetEventActionAttributes_Response_sequence, hf_index, ett_mms_GetEventActionAttributes_Response);
5850
5851 return offset;
5852 }
5853
5854
5855
5856 static int
dissect_mms_ReportEventActionStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5857 dissect_mms_ReportEventActionStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5858 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
5859
5860 return offset;
5861 }
5862
5863
5864
5865 static int
dissect_mms_DefineEventEnrollment_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5866 dissect_mms_DefineEventEnrollment_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5867 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
5868
5869 return offset;
5870 }
5871
5872
5873
5874 static int
dissect_mms_DeleteEventEnrollment_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5875 dissect_mms_DeleteEventEnrollment_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5876 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
5877
5878 return offset;
5879 }
5880
5881
5882 static const value_string mms_EE_State_vals[] = {
5883 { 0, "disabled" },
5884 { 1, "idle" },
5885 { 2, "active" },
5886 { 3, "activeNoAckA" },
5887 { 4, "idleNoAckI" },
5888 { 5, "idleNoAckA" },
5889 { 6, "idleAcked" },
5890 { 7, "activeAcked" },
5891 { 0, NULL }
5892 };
5893
5894
5895 static int
dissect_mms_EE_State(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5896 dissect_mms_EE_State(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5897 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5898 NULL);
5899
5900 return offset;
5901 }
5902
5903
5904 static const value_string mms_T_currentState_vals[] = {
5905 { 0, "state" },
5906 { 1, "undefined" },
5907 { 0, NULL }
5908 };
5909
5910 static const ber_choice_t T_currentState_choice[] = {
5911 { 0, &hf_mms_alterEventEnrollment_Response_currentState_state, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_EE_State },
5912 { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
5913 { 0, NULL, 0, 0, 0, NULL }
5914 };
5915
5916 static int
dissect_mms_T_currentState(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5917 dissect_mms_T_currentState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5918 offset = dissect_ber_choice(actx, tree, tvb, offset,
5919 T_currentState_choice, hf_index, ett_mms_T_currentState,
5920 NULL);
5921
5922 return offset;
5923 }
5924
5925
5926 static const ber_sequence_t AlterEventEnrollment_Response_sequence[] = {
5927 { &hf_mms_currentState_02 , BER_CLASS_CON, 0, 0, dissect_mms_T_currentState },
5928 { &hf_mms_transitionTime , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
5929 { NULL, 0, 0, 0, NULL }
5930 };
5931
5932 static int
dissect_mms_AlterEventEnrollment_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5933 dissect_mms_AlterEventEnrollment_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5934 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5935 AlterEventEnrollment_Response_sequence, hf_index, ett_mms_AlterEventEnrollment_Response);
5936
5937 return offset;
5938 }
5939
5940
5941 static const value_string mms_EE_Duration_vals[] = {
5942 { 0, "current" },
5943 { 1, "permanent" },
5944 { 0, NULL }
5945 };
5946
5947
5948 static int
dissect_mms_EE_Duration(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5949 dissect_mms_EE_Duration(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5950 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
5951 NULL);
5952
5953 return offset;
5954 }
5955
5956
5957 static const ber_sequence_t ReportEventEnrollmentStatus_Response_sequence[] = {
5958 { &hf_mms_eventConditionTransitions, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Transitions },
5959 { &hf_mms_notificationLost, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
5960 { &hf_mms_duration , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EE_Duration },
5961 { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule },
5962 { &hf_mms_currentState_01 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_EE_State },
5963 { NULL, 0, 0, 0, NULL }
5964 };
5965
5966 static int
dissect_mms_ReportEventEnrollmentStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5967 dissect_mms_ReportEventEnrollmentStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5968 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
5969 ReportEventEnrollmentStatus_Response_sequence, hf_index, ett_mms_ReportEventEnrollmentStatus_Response);
5970
5971 return offset;
5972 }
5973
5974
5975 static const value_string mms_T_eventConditionName_vals[] = {
5976 { 0, "eventCondition" },
5977 { 1, "undefined" },
5978 { 0, NULL }
5979 };
5980
5981 static const ber_choice_t T_eventConditionName_choice[] = {
5982 { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
5983 { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
5984 { 0, NULL, 0, 0, 0, NULL }
5985 };
5986
5987 static int
dissect_mms_T_eventConditionName(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)5988 dissect_mms_T_eventConditionName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5989 offset = dissect_ber_choice(actx, tree, tvb, offset,
5990 T_eventConditionName_choice, hf_index, ett_mms_T_eventConditionName,
5991 NULL);
5992
5993 return offset;
5994 }
5995
5996
5997 static const value_string mms_T_eventActionName_vals[] = {
5998 { 0, "eventAction" },
5999 { 1, "undefined" },
6000 { 0, NULL }
6001 };
6002
6003 static const ber_choice_t T_eventActionName_choice[] = {
6004 { 0, &hf_mms_eventAction , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
6005 { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
6006 { 0, NULL, 0, 0, 0, NULL }
6007 };
6008
6009 static int
dissect_mms_T_eventActionName(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6010 dissect_mms_T_eventActionName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6011 offset = dissect_ber_choice(actx, tree, tvb, offset,
6012 T_eventActionName_choice, hf_index, ett_mms_T_eventActionName,
6013 NULL);
6014
6015 return offset;
6016 }
6017
6018
6019 static const value_string mms_EE_Class_vals[] = {
6020 { 0, "modifier" },
6021 { 1, "notification" },
6022 { 0, NULL }
6023 };
6024
6025
6026 static int
dissect_mms_EE_Class(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6027 dissect_mms_EE_Class(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6028 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6029 NULL);
6030
6031 return offset;
6032 }
6033
6034
6035 static const ber_sequence_t EventEnrollment_sequence[] = {
6036 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
6037 { &hf_mms_eventConditionName_01, BER_CLASS_CON, 1, 0, dissect_mms_T_eventConditionName },
6038 { &hf_mms_eventActionName_01, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_eventActionName },
6039 { &hf_mms_clientApplication, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference },
6040 { &hf_mms_mmsDeletable , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6041 { &hf_mms_enrollmentClass , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_EE_Class },
6042 { &hf_mms_duration , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EE_Duration },
6043 { &hf_mms_invokeID , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
6044 { &hf_mms_remainingAcceptableDelay, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
6045 { NULL, 0, 0, 0, NULL }
6046 };
6047
6048 static int
dissect_mms_EventEnrollment(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6049 dissect_mms_EventEnrollment(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6050 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6051 EventEnrollment_sequence, hf_index, ett_mms_EventEnrollment);
6052
6053 return offset;
6054 }
6055
6056
6057 static const ber_sequence_t SEQUENCE_OF_EventEnrollment_sequence_of[1] = {
6058 { &hf_mms_listOfEventEnrollment_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_EventEnrollment },
6059 };
6060
6061 static int
dissect_mms_SEQUENCE_OF_EventEnrollment(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6062 dissect_mms_SEQUENCE_OF_EventEnrollment(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6063 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6064 SEQUENCE_OF_EventEnrollment_sequence_of, hf_index, ett_mms_SEQUENCE_OF_EventEnrollment);
6065
6066 return offset;
6067 }
6068
6069
6070 static const ber_sequence_t GetEventEnrollmentAttributes_Response_sequence[] = {
6071 { &hf_mms_listOfEventEnrollment, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_EventEnrollment },
6072 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6073 { NULL, 0, 0, 0, NULL }
6074 };
6075
6076 static int
dissect_mms_GetEventEnrollmentAttributes_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6077 dissect_mms_GetEventEnrollmentAttributes_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6078 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6079 GetEventEnrollmentAttributes_Response_sequence, hf_index, ett_mms_GetEventEnrollmentAttributes_Response);
6080
6081 return offset;
6082 }
6083
6084
6085
6086 static int
dissect_mms_AcknowledgeEventNotification_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6087 dissect_mms_AcknowledgeEventNotification_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6088 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6089
6090 return offset;
6091 }
6092
6093
6094 static const value_string mms_T_unacknowledgedState_vals[] = {
6095 { 0, "none" },
6096 { 1, "active" },
6097 { 2, "idle" },
6098 { 3, "both" },
6099 { 0, NULL }
6100 };
6101
6102
6103 static int
dissect_mms_T_unacknowledgedState(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6104 dissect_mms_T_unacknowledgedState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6105 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6106 NULL);
6107
6108 return offset;
6109 }
6110
6111
6112 static const ber_sequence_t AlarmSummary_sequence[] = {
6113 { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
6114 { &hf_mms_severity , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
6115 { &hf_mms_currentState , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
6116 { &hf_mms_unacknowledgedState, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_unacknowledgedState },
6117 { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6118 { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6119 { NULL, 0, 0, 0, NULL }
6120 };
6121
6122 static int
dissect_mms_AlarmSummary(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6123 dissect_mms_AlarmSummary(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6124 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6125 AlarmSummary_sequence, hf_index, ett_mms_AlarmSummary);
6126
6127 return offset;
6128 }
6129
6130
6131 static const ber_sequence_t SEQUENCE_OF_AlarmSummary_sequence_of[1] = {
6132 { &hf_mms_listOfAlarmSummary_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlarmSummary },
6133 };
6134
6135 static int
dissect_mms_SEQUENCE_OF_AlarmSummary(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6136 dissect_mms_SEQUENCE_OF_AlarmSummary(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6137 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6138 SEQUENCE_OF_AlarmSummary_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AlarmSummary);
6139
6140 return offset;
6141 }
6142
6143
6144 static const ber_sequence_t GetAlarmSummary_Response_sequence[] = {
6145 { &hf_mms_listOfAlarmSummary, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AlarmSummary },
6146 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6147 { NULL, 0, 0, 0, NULL }
6148 };
6149
6150 static int
dissect_mms_GetAlarmSummary_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6151 dissect_mms_GetAlarmSummary_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6152 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6153 GetAlarmSummary_Response_sequence, hf_index, ett_mms_GetAlarmSummary_Response);
6154
6155 return offset;
6156 }
6157
6158
6159 static const ber_sequence_t AlarmEnrollmentSummary_sequence[] = {
6160 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
6161 { &hf_mms_clientApplication, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference },
6162 { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
6163 { &hf_mms_currentState , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
6164 { &hf_mms_notificationLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6165 { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule },
6166 { &hf_mms_enrollementState, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EE_State },
6167 { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6168 { &hf_mms_timeActiveAcknowledged, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6169 { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6170 { &hf_mms_timeIdleAcknowledged, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6171 { NULL, 0, 0, 0, NULL }
6172 };
6173
6174 static int
dissect_mms_AlarmEnrollmentSummary(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6175 dissect_mms_AlarmEnrollmentSummary(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6176 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6177 AlarmEnrollmentSummary_sequence, hf_index, ett_mms_AlarmEnrollmentSummary);
6178
6179 return offset;
6180 }
6181
6182
6183 static const ber_sequence_t SEQUENCE_OF_AlarmEnrollmentSummary_sequence_of[1] = {
6184 { &hf_mms_listOfAlarmEnrollmentSummary_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlarmEnrollmentSummary },
6185 };
6186
6187 static int
dissect_mms_SEQUENCE_OF_AlarmEnrollmentSummary(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6188 dissect_mms_SEQUENCE_OF_AlarmEnrollmentSummary(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6189 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6190 SEQUENCE_OF_AlarmEnrollmentSummary_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary);
6191
6192 return offset;
6193 }
6194
6195
6196 static const ber_sequence_t GetAlarmEnrollmentSummary_Response_sequence[] = {
6197 { &hf_mms_listOfAlarmEnrollmentSummary, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AlarmEnrollmentSummary },
6198 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6199 { NULL, 0, 0, 0, NULL }
6200 };
6201
6202 static int
dissect_mms_GetAlarmEnrollmentSummary_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6203 dissect_mms_GetAlarmEnrollmentSummary_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6204 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6205 GetAlarmEnrollmentSummary_Response_sequence, hf_index, ett_mms_GetAlarmEnrollmentSummary_Response);
6206
6207 return offset;
6208 }
6209
6210
6211 static const ber_sequence_t JournalEntry_sequence[] = {
6212 { &hf_mms_entryIdentifier , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
6213 { &hf_mms_originatingApplication, BER_CLASS_CON, 1, 0, dissect_mms_ApplicationReference },
6214 { &hf_mms_entryContent , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EntryContent },
6215 { NULL, 0, 0, 0, NULL }
6216 };
6217
6218 static int
dissect_mms_JournalEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6219 dissect_mms_JournalEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6220 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6221 JournalEntry_sequence, hf_index, ett_mms_JournalEntry);
6222
6223 return offset;
6224 }
6225
6226
6227 static const ber_sequence_t SEQUENCE_OF_JournalEntry_sequence_of[1] = {
6228 { &hf_mms_listOfJournalEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_JournalEntry },
6229 };
6230
6231 static int
dissect_mms_SEQUENCE_OF_JournalEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6232 dissect_mms_SEQUENCE_OF_JournalEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6233 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6234 SEQUENCE_OF_JournalEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_JournalEntry);
6235
6236 return offset;
6237 }
6238
6239
6240 static const ber_sequence_t ReadJournal_Response_sequence[] = {
6241 { &hf_mms_listOfJournalEntry, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_JournalEntry },
6242 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6243 { NULL, 0, 0, 0, NULL }
6244 };
6245
6246 static int
dissect_mms_ReadJournal_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6247 dissect_mms_ReadJournal_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6248 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6249 ReadJournal_Response_sequence, hf_index, ett_mms_ReadJournal_Response);
6250
6251 return offset;
6252 }
6253
6254
6255
6256 static int
dissect_mms_WriteJournal_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6257 dissect_mms_WriteJournal_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6258 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6259
6260 return offset;
6261 }
6262
6263
6264
6265 static int
dissect_mms_InitializeJournal_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6266 dissect_mms_InitializeJournal_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6267 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
6268
6269 return offset;
6270 }
6271
6272
6273 static const ber_sequence_t ReportJournalStatus_Response_sequence[] = {
6274 { &hf_mms_currentEntries , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
6275 { &hf_mms_mmsDeletable , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6276 { NULL, 0, 0, 0, NULL }
6277 };
6278
6279 static int
dissect_mms_ReportJournalStatus_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6280 dissect_mms_ReportJournalStatus_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6281 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6282 ReportJournalStatus_Response_sequence, hf_index, ett_mms_ReportJournalStatus_Response);
6283
6284 return offset;
6285 }
6286
6287
6288
6289 static int
dissect_mms_CreateJournal_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6290 dissect_mms_CreateJournal_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6291 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6292
6293 return offset;
6294 }
6295
6296
6297
6298 static int
dissect_mms_DeleteJournal_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6299 dissect_mms_DeleteJournal_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6300 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6301
6302 return offset;
6303 }
6304
6305
6306 static const ber_sequence_t T_listOfCapabilities_sequence_of[1] = {
6307 { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString },
6308 };
6309
6310 static int
dissect_mms_T_listOfCapabilities(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6311 dissect_mms_T_listOfCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6312 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6313 T_listOfCapabilities_sequence_of, hf_index, ett_mms_T_listOfCapabilities);
6314
6315 return offset;
6316 }
6317
6318
6319 static const ber_sequence_t GetCapabilityList_Response_sequence[] = {
6320 { &hf_mms_listOfCapabilities, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities },
6321 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6322 { NULL, 0, 0, 0, NULL }
6323 };
6324
6325 static int
dissect_mms_GetCapabilityList_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6326 dissect_mms_GetCapabilityList_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6327 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6328 GetCapabilityList_Response_sequence, hf_index, ett_mms_GetCapabilityList_Response);
6329
6330 return offset;
6331 }
6332
6333
6334 static const ber_sequence_t FileRead_Response_sequence[] = {
6335 { &hf_mms_fileData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING },
6336 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6337 { NULL, 0, 0, 0, NULL }
6338 };
6339
6340 static int
dissect_mms_FileRead_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6341 dissect_mms_FileRead_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6342 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6343 FileRead_Response_sequence, hf_index, ett_mms_FileRead_Response);
6344
6345 return offset;
6346 }
6347
6348
6349
6350 static int
dissect_mms_FileClose_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6351 dissect_mms_FileClose_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6352 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6353
6354 return offset;
6355 }
6356
6357
6358
6359 static int
dissect_mms_FileRename_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6360 dissect_mms_FileRename_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6361 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6362
6363 return offset;
6364 }
6365
6366
6367
6368 static int
dissect_mms_FileDelete_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6369 dissect_mms_FileDelete_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6370 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
6371
6372 return offset;
6373 }
6374
6375
6376 static const ber_sequence_t DirectoryEntry_sequence[] = {
6377 { &hf_mms_filename , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName },
6378 { &hf_mms_fileAttributes , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileAttributes },
6379 { NULL, 0, 0, 0, NULL }
6380 };
6381
6382 static int
dissect_mms_DirectoryEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6383 dissect_mms_DirectoryEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6384 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6385 DirectoryEntry_sequence, hf_index, ett_mms_DirectoryEntry);
6386
6387 return offset;
6388 }
6389
6390
6391 static const ber_sequence_t SEQUENCE_OF_DirectoryEntry_sequence_of[1] = {
6392 { &hf_mms_listOfDirectoryEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_DirectoryEntry },
6393 };
6394
6395 static int
dissect_mms_SEQUENCE_OF_DirectoryEntry(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6396 dissect_mms_SEQUENCE_OF_DirectoryEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6397 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
6398 SEQUENCE_OF_DirectoryEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_DirectoryEntry);
6399
6400 return offset;
6401 }
6402
6403
6404 static const ber_sequence_t FileDirectory_Response_sequence[] = {
6405 { &hf_mms_listOfDirectoryEntry, BER_CLASS_CON, 0, 0, dissect_mms_SEQUENCE_OF_DirectoryEntry },
6406 { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6407 { NULL, 0, 0, 0, NULL }
6408 };
6409
6410 static int
dissect_mms_FileDirectory_Response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6411 dissect_mms_FileDirectory_Response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6412 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6413 FileDirectory_Response_sequence, hf_index, ett_mms_FileDirectory_Response);
6414
6415 return offset;
6416 }
6417
6418
6419 static const value_string mms_ConfirmedServiceResponse_vals[] = {
6420 { 0, "status" },
6421 { 1, "getNameList" },
6422 { 2, "identify" },
6423 { 3, "rename" },
6424 { 4, "read" },
6425 { 5, "write" },
6426 { 6, "getVariableAccessAttributes" },
6427 { 7, "defineNamedVariable" },
6428 { 8, "defineScatteredAccess" },
6429 { 9, "getScatteredAccessAttributes" },
6430 { 10, "deleteVariableAccess" },
6431 { 11, "defineNamedVariableList" },
6432 { 12, "getNamedVariableListAttributes" },
6433 { 13, "deleteNamedVariableList" },
6434 { 14, "defineNamedType" },
6435 { 15, "getNamedTypeAttributes" },
6436 { 16, "deleteNamedType" },
6437 { 17, "input" },
6438 { 18, "output" },
6439 { 19, "takeControl" },
6440 { 20, "relinquishControl" },
6441 { 21, "defineSemaphore" },
6442 { 22, "deleteSemaphore" },
6443 { 23, "reportSemaphoreStatus" },
6444 { 24, "reportPoolSemaphoreStatus" },
6445 { 25, "reportSemaphoreEntryStatus" },
6446 { 26, "initiateDownloadSequence" },
6447 { 27, "downloadSegment" },
6448 { 28, "terminateDownloadSequence" },
6449 { 29, "initiateUploadSequence" },
6450 { 30, "uploadSegment" },
6451 { 31, "terminateUploadSequence" },
6452 { 32, "requestDomainDownLoad" },
6453 { 33, "requestDomainUpload" },
6454 { 34, "loadDomainContent" },
6455 { 35, "storeDomainContent" },
6456 { 36, "deleteDomain" },
6457 { 37, "getDomainAttributes" },
6458 { 38, "createProgramInvocation" },
6459 { 39, "deleteProgramInvocation" },
6460 { 40, "start" },
6461 { 41, "stop" },
6462 { 42, "resume" },
6463 { 43, "reset" },
6464 { 44, "kill" },
6465 { 45, "getProgramInvocationAttributes" },
6466 { 46, "obtainFile" },
6467 { 72, "fileOpen" },
6468 { 47, "defineEventCondition" },
6469 { 48, "deleteEventCondition" },
6470 { 49, "getEventConditionAttributes" },
6471 { 50, "reportEventConditionStatus" },
6472 { 51, "alterEventConditionMonitoring" },
6473 { 52, "triggerEvent" },
6474 { 53, "defineEventAction" },
6475 { 54, "deleteEventAction" },
6476 { 55, "getEventActionAttributes" },
6477 { 56, "reportActionStatus" },
6478 { 57, "defineEventEnrollment" },
6479 { 58, "deleteEventEnrollment" },
6480 { 59, "alterEventEnrollment" },
6481 { 60, "reportEventEnrollmentStatus" },
6482 { 61, "getEventEnrollmentAttributes" },
6483 { 62, "acknowledgeEventNotification" },
6484 { 63, "getAlarmSummary" },
6485 { 64, "getAlarmEnrollmentSummary" },
6486 { 65, "readJournal" },
6487 { 66, "writeJournal" },
6488 { 67, "initializeJournal" },
6489 { 68, "reportJournalStatus" },
6490 { 69, "createJournal" },
6491 { 70, "deleteJournal" },
6492 { 71, "getCapabilityList" },
6493 { 73, "fileRead" },
6494 { 74, "fileClose" },
6495 { 75, "fileRename" },
6496 { 76, "fileDelete" },
6497 { 77, "fileDirectory" },
6498 { 0, NULL }
6499 };
6500
6501 static const ber_choice_t ConfirmedServiceResponse_choice[] = {
6502 { 0, &hf_mms_status_01 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Status_Response },
6503 { 1, &hf_mms_getNameList_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_GetNameList_Response },
6504 { 2, &hf_mms_identify_01 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identify_Response },
6505 { 3, &hf_mms_rename_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Rename_Response },
6506 { 4, &hf_mms_read_01 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Read_Response },
6507 { 5, &hf_mms_write_01 , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Write_Response },
6508 { 6, &hf_mms_getVariableAccessAttributes_01, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_GetVariableAccessAttributes_Response },
6509 { 7, &hf_mms_defineNamedVariable_01, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariable_Response },
6510 { 8, &hf_mms_defineScatteredAccess_01, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_DefineScatteredAccess_Response },
6511 { 9, &hf_mms_getScatteredAccessAttributes_01, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_GetScatteredAccessAttributes_Response },
6512 { 10, &hf_mms_deleteVariableAccess_01, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Response },
6513 { 11, &hf_mms_defineNamedVariableList_01, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariableList_Response },
6514 { 12, &hf_mms_getNamedVariableListAttributes_01, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedVariableListAttributes_Response },
6515 { 13, &hf_mms_deleteNamedVariableList_01, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Response },
6516 { 14, &hf_mms_defineNamedType_01, BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedType_Response },
6517 { 15, &hf_mms_getNamedTypeAttributes_01, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedTypeAttributes_Response },
6518 { 16, &hf_mms_deleteNamedType_01, BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Response },
6519 { 17, &hf_mms_input_01 , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_Input_Response },
6520 { 18, &hf_mms_output_01 , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_mms_Output_Response },
6521 { 19, &hf_mms_takeControl_01 , BER_CLASS_CON, 19, 0, dissect_mms_TakeControl_Response },
6522 { 20, &hf_mms_relinquishControl_01, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_mms_RelinquishControl_Response },
6523 { 21, &hf_mms_defineSemaphore_01, BER_CLASS_CON, 21, BER_FLAGS_IMPLTAG, dissect_mms_DefineSemaphore_Response },
6524 { 22, &hf_mms_deleteSemaphore_01, BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_mms_DeleteSemaphore_Response },
6525 { 23, &hf_mms_reportSemaphoreStatus_01, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreStatus_Response },
6526 { 24, &hf_mms_reportPoolSemaphoreStatus_01, BER_CLASS_CON, 24, BER_FLAGS_IMPLTAG, dissect_mms_ReportPoolSemaphoreStatus_Response },
6527 { 25, &hf_mms_reportSemaphoreEntryStatus_01, BER_CLASS_CON, 25, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreEntryStatus_Response },
6528 { 26, &hf_mms_initiateDownloadSequence_01, BER_CLASS_CON, 26, BER_FLAGS_IMPLTAG, dissect_mms_InitiateDownloadSequence_Response },
6529 { 27, &hf_mms_downloadSegment_01, BER_CLASS_CON, 27, BER_FLAGS_IMPLTAG, dissect_mms_DownloadSegment_Response },
6530 { 28, &hf_mms_terminateDownloadSequence_01, BER_CLASS_CON, 28, BER_FLAGS_IMPLTAG, dissect_mms_TerminateDownloadSequence_Response },
6531 { 29, &hf_mms_initiateUploadSequence_01, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_mms_InitiateUploadSequence_Response },
6532 { 30, &hf_mms_uploadSegment_01, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_mms_UploadSegment_Response },
6533 { 31, &hf_mms_terminateUploadSequence_01, BER_CLASS_CON, 31, BER_FLAGS_IMPLTAG, dissect_mms_TerminateUploadSequence_Response },
6534 { 32, &hf_mms_requestDomainDownLoad, BER_CLASS_CON, 32, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainDownload_Response },
6535 { 33, &hf_mms_requestDomainUpload_01, BER_CLASS_CON, 33, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainUpload_Response },
6536 { 34, &hf_mms_loadDomainContent_01, BER_CLASS_CON, 34, BER_FLAGS_IMPLTAG, dissect_mms_LoadDomainContent_Response },
6537 { 35, &hf_mms_storeDomainContent_01, BER_CLASS_CON, 35, BER_FLAGS_IMPLTAG, dissect_mms_StoreDomainContent_Response },
6538 { 36, &hf_mms_deleteDomain_01 , BER_CLASS_CON, 36, BER_FLAGS_IMPLTAG, dissect_mms_DeleteDomain_Response },
6539 { 37, &hf_mms_getDomainAttributes_01, BER_CLASS_CON, 37, BER_FLAGS_IMPLTAG, dissect_mms_GetDomainAttributes_Response },
6540 { 38, &hf_mms_createProgramInvocation_01, BER_CLASS_CON, 38, BER_FLAGS_IMPLTAG, dissect_mms_CreateProgramInvocation_Response },
6541 { 39, &hf_mms_deleteProgramInvocation_01, BER_CLASS_CON, 39, BER_FLAGS_IMPLTAG, dissect_mms_DeleteProgramInvocation_Response },
6542 { 40, &hf_mms_start_01 , BER_CLASS_CON, 40, BER_FLAGS_IMPLTAG, dissect_mms_Start_Response },
6543 { 41, &hf_mms_stop_01 , BER_CLASS_CON, 41, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Response },
6544 { 42, &hf_mms_resume_01 , BER_CLASS_CON, 42, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Response },
6545 { 43, &hf_mms_reset_01 , BER_CLASS_CON, 43, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Response },
6546 { 44, &hf_mms_kill_01 , BER_CLASS_CON, 44, BER_FLAGS_IMPLTAG, dissect_mms_Kill_Response },
6547 { 45, &hf_mms_getProgramInvocationAttributes_01, BER_CLASS_CON, 45, BER_FLAGS_IMPLTAG, dissect_mms_GetProgramInvocationAttributes_Response },
6548 { 46, &hf_mms_obtainFile_01 , BER_CLASS_CON, 46, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Response },
6549 { 72, &hf_mms_fileOpen_01 , BER_CLASS_CON, 72, BER_FLAGS_IMPLTAG, dissect_mms_FileOpen_Response },
6550 { 47, &hf_mms_defineEventCondition_01, BER_CLASS_CON, 47, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventCondition_Response },
6551 { 48, &hf_mms_confirmedServiceResponse_deleteEventCondition, BER_CLASS_CON, 48, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventCondition_Response },
6552 { 49, &hf_mms_getEventConditionAttributes_01, BER_CLASS_CON, 49, BER_FLAGS_IMPLTAG, dissect_mms_GetEventConditionAttributes_Response },
6553 { 50, &hf_mms_reportEventConditionStatus_01, BER_CLASS_CON, 50, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventConditionStatus_Response },
6554 { 51, &hf_mms_alterEventConditionMonitoring_01, BER_CLASS_CON, 51, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventConditionMonitoring_Response },
6555 { 52, &hf_mms_triggerEvent_01 , BER_CLASS_CON, 52, BER_FLAGS_IMPLTAG, dissect_mms_TriggerEvent_Response },
6556 { 53, &hf_mms_defineEventAction_01, BER_CLASS_CON, 53, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventAction_Response },
6557 { 54, &hf_mms_deleteEventAction, BER_CLASS_CON, 54, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventAction_Response },
6558 { 55, &hf_mms_getEventActionAttributes_01, BER_CLASS_CON, 55, BER_FLAGS_IMPLTAG, dissect_mms_GetEventActionAttributes_Response },
6559 { 56, &hf_mms_reportActionStatus, BER_CLASS_CON, 56, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventActionStatus_Response },
6560 { 57, &hf_mms_defineEventEnrollment_01, BER_CLASS_CON, 57, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventEnrollment_Response },
6561 { 58, &hf_mms_confirmedServiceResponse_deleteEventEnrollment, BER_CLASS_CON, 58, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventEnrollment_Response },
6562 { 59, &hf_mms_alterEventEnrollment_01, BER_CLASS_CON, 59, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventEnrollment_Response },
6563 { 60, &hf_mms_reportEventEnrollmentStatus_01, BER_CLASS_CON, 60, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventEnrollmentStatus_Response },
6564 { 61, &hf_mms_getEventEnrollmentAttributes_01, BER_CLASS_CON, 61, BER_FLAGS_IMPLTAG, dissect_mms_GetEventEnrollmentAttributes_Response },
6565 { 62, &hf_mms_acknowledgeEventNotification_01, BER_CLASS_CON, 62, BER_FLAGS_IMPLTAG, dissect_mms_AcknowledgeEventNotification_Response },
6566 { 63, &hf_mms_getAlarmSummary_01, BER_CLASS_CON, 63, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmSummary_Response },
6567 { 64, &hf_mms_getAlarmEnrollmentSummary_01, BER_CLASS_CON, 64, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmEnrollmentSummary_Response },
6568 { 65, &hf_mms_readJournal_01 , BER_CLASS_CON, 65, BER_FLAGS_IMPLTAG, dissect_mms_ReadJournal_Response },
6569 { 66, &hf_mms_writeJournal_01 , BER_CLASS_CON, 66, BER_FLAGS_IMPLTAG, dissect_mms_WriteJournal_Response },
6570 { 67, &hf_mms_initializeJournal_01, BER_CLASS_CON, 67, BER_FLAGS_IMPLTAG, dissect_mms_InitializeJournal_Response },
6571 { 68, &hf_mms_reportJournalStatus_01, BER_CLASS_CON, 68, BER_FLAGS_IMPLTAG, dissect_mms_ReportJournalStatus_Response },
6572 { 69, &hf_mms_createJournal_01, BER_CLASS_CON, 69, BER_FLAGS_IMPLTAG, dissect_mms_CreateJournal_Response },
6573 { 70, &hf_mms_deleteJournal_01, BER_CLASS_CON, 70, BER_FLAGS_IMPLTAG, dissect_mms_DeleteJournal_Response },
6574 { 71, &hf_mms_getCapabilityList_01, BER_CLASS_CON, 71, BER_FLAGS_IMPLTAG, dissect_mms_GetCapabilityList_Response },
6575 { 73, &hf_mms_fileRead_01 , BER_CLASS_CON, 73, BER_FLAGS_IMPLTAG, dissect_mms_FileRead_Response },
6576 { 74, &hf_mms_fileClose_01 , BER_CLASS_CON, 74, BER_FLAGS_IMPLTAG, dissect_mms_FileClose_Response },
6577 { 75, &hf_mms_fileRename_01 , BER_CLASS_CON, 75, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Response },
6578 { 76, &hf_mms_fileDelete_01 , BER_CLASS_CON, 76, BER_FLAGS_IMPLTAG, dissect_mms_FileDelete_Response },
6579 { 77, &hf_mms_fileDirectory_01, BER_CLASS_CON, 77, BER_FLAGS_IMPLTAG, dissect_mms_FileDirectory_Response },
6580 { 0, NULL, 0, 0, 0, NULL }
6581 };
6582
6583 static int
dissect_mms_ConfirmedServiceResponse(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6584 dissect_mms_ConfirmedServiceResponse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6585 offset = dissect_ber_choice(actx, tree, tvb, offset,
6586 ConfirmedServiceResponse_choice, hf_index, ett_mms_ConfirmedServiceResponse,
6587 NULL);
6588
6589 return offset;
6590 }
6591
6592
6593 static const ber_sequence_t Confirmed_ResponsePDU_sequence[] = {
6594 { &hf_mms_invokeID , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_Unsigned32 },
6595 { &hf_mms_confirmedServiceResponse, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ConfirmedServiceResponse },
6596 { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail },
6597 { NULL, 0, 0, 0, NULL }
6598 };
6599
6600 static int
dissect_mms_Confirmed_ResponsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6601 dissect_mms_Confirmed_ResponsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6602 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6603 Confirmed_ResponsePDU_sequence, hf_index, ett_mms_Confirmed_ResponsePDU);
6604
6605 return offset;
6606 }
6607
6608
6609 static const ber_sequence_t Confirmed_ErrorPDU_sequence[] = {
6610 { &hf_mms_invokeID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
6611 { &hf_mms_modifierPosition, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
6612 { &hf_mms_serviceError , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError },
6613 { NULL, 0, 0, 0, NULL }
6614 };
6615
6616 static int
dissect_mms_Confirmed_ErrorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6617 dissect_mms_Confirmed_ErrorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6618 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6619 Confirmed_ErrorPDU_sequence, hf_index, ett_mms_Confirmed_ErrorPDU);
6620
6621 return offset;
6622 }
6623
6624
6625 static const ber_sequence_t InformationReport_sequence[] = {
6626 { &hf_mms_variableAccessSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification },
6627 { &hf_mms_listOfAccessResult, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AccessResult },
6628 { NULL, 0, 0, 0, NULL }
6629 };
6630
6631 static int
dissect_mms_InformationReport(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6632 dissect_mms_InformationReport(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6633 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6634 InformationReport_sequence, hf_index, ett_mms_InformationReport);
6635
6636 return offset;
6637 }
6638
6639
6640
6641 static int
dissect_mms_UnsolicitedStatus(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6642 dissect_mms_UnsolicitedStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6643 offset = dissect_mms_Status_Response(implicit_tag, tvb, offset, actx, tree, hf_index);
6644
6645 return offset;
6646 }
6647
6648
6649 static const value_string mms_T_eventConditionName_01_vals[] = {
6650 { 0, "eventCondition" },
6651 { 1, "undefined" },
6652 { 0, NULL }
6653 };
6654
6655 static const ber_choice_t T_eventConditionName_01_choice[] = {
6656 { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName },
6657 { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL },
6658 { 0, NULL, 0, 0, 0, NULL }
6659 };
6660
6661 static int
dissect_mms_T_eventConditionName_01(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6662 dissect_mms_T_eventConditionName_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6663 offset = dissect_ber_choice(actx, tree, tvb, offset,
6664 T_eventConditionName_01_choice, hf_index, ett_mms_T_eventConditionName_01,
6665 NULL);
6666
6667 return offset;
6668 }
6669
6670
6671 static const value_string mms_T_eventActionResult_vals[] = {
6672 { 0, "success" },
6673 { 1, "failure" },
6674 { 0, NULL }
6675 };
6676
6677 static const ber_choice_t T_eventActionResult_choice[] = {
6678 { 0, &hf_mms_success_02 , BER_CLASS_CON, 0, 0, dissect_mms_ConfirmedServiceResponse },
6679 { 1, &hf_mms_failure_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError },
6680 { 0, NULL, 0, 0, 0, NULL }
6681 };
6682
6683 static int
dissect_mms_T_eventActionResult(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6684 dissect_mms_T_eventActionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6685 offset = dissect_ber_choice(actx, tree, tvb, offset,
6686 T_eventActionResult_choice, hf_index, ett_mms_T_eventActionResult,
6687 NULL);
6688
6689 return offset;
6690 }
6691
6692
6693 static const ber_sequence_t T_actionResult_sequence[] = {
6694 { &hf_mms_eventActioName , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
6695 { &hf_mms_eventActionResult, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_eventActionResult },
6696 { NULL, 0, 0, 0, NULL }
6697 };
6698
6699 static int
dissect_mms_T_actionResult(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6700 dissect_mms_T_actionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6701 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6702 T_actionResult_sequence, hf_index, ett_mms_T_actionResult);
6703
6704 return offset;
6705 }
6706
6707
6708 static const ber_sequence_t EventNotification_sequence[] = {
6709 { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName },
6710 { &hf_mms_eventConditionName_02, BER_CLASS_CON, 1, 0, dissect_mms_T_eventConditionName_01 },
6711 { &hf_mms_severity , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 },
6712 { &hf_mms_currentState , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EC_State },
6713 { &hf_mms_transitionTime , BER_CLASS_CON, 4, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime },
6714 { &hf_mms_notificationLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN },
6715 { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule },
6716 { &hf_mms_actionResult , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_actionResult },
6717 { NULL, 0, 0, 0, NULL }
6718 };
6719
6720 static int
dissect_mms_EventNotification(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6721 dissect_mms_EventNotification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6722 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6723 EventNotification_sequence, hf_index, ett_mms_EventNotification);
6724
6725 return offset;
6726 }
6727
6728
6729 static const value_string mms_UnconfirmedService_vals[] = {
6730 { 0, "informationReport" },
6731 { 1, "unsolicitedStatus" },
6732 { 2, "eventNotification" },
6733 { 0, NULL }
6734 };
6735
6736 static const ber_choice_t UnconfirmedService_choice[] = {
6737 { 0, &hf_mms_informationReport, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_InformationReport },
6738 { 1, &hf_mms_unsolicitedStatus, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_UnsolicitedStatus },
6739 { 2, &hf_mms_eventNotification, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EventNotification },
6740 { 0, NULL, 0, 0, 0, NULL }
6741 };
6742
6743 static int
dissect_mms_UnconfirmedService(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6744 dissect_mms_UnconfirmedService(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6745 offset = dissect_ber_choice(actx, tree, tvb, offset,
6746 UnconfirmedService_choice, hf_index, ett_mms_UnconfirmedService,
6747 NULL);
6748
6749 return offset;
6750 }
6751
6752
6753 static const ber_sequence_t Unconfirmed_PDU_sequence[] = {
6754 { &hf_mms_unconfirmedService, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_UnconfirmedService },
6755 { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail },
6756 { NULL, 0, 0, 0, NULL }
6757 };
6758
6759 static int
dissect_mms_Unconfirmed_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6760 dissect_mms_Unconfirmed_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6761 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
6762 Unconfirmed_PDU_sequence, hf_index, ett_mms_Unconfirmed_PDU);
6763
6764 return offset;
6765 }
6766
6767
6768 static const value_string mms_T_confirmed_requestPDU_vals[] = {
6769 { 0, "other" },
6770 { 1, "unrecognized-service" },
6771 { 2, "unrecognized-modifier" },
6772 { 3, "invalid-invokeID" },
6773 { 4, "invalid-argument" },
6774 { 5, "invalid-modifier" },
6775 { 6, "max-serv-outstanding-exceeded" },
6776 { 8, "max-recursion-exceeded" },
6777 { 9, "value-out-of-range" },
6778 { 0, NULL }
6779 };
6780
6781
6782 static int
dissect_mms_T_confirmed_requestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6783 dissect_mms_T_confirmed_requestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6784 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6785 NULL);
6786
6787 return offset;
6788 }
6789
6790
6791 static const value_string mms_T_confirmed_responsePDU_vals[] = {
6792 { 0, "other" },
6793 { 1, "unrecognized-service" },
6794 { 2, "invalid-invokeID" },
6795 { 3, "invalid-result" },
6796 { 5, "max-recursion-exceeded" },
6797 { 6, "value-out-of-range" },
6798 { 0, NULL }
6799 };
6800
6801
6802 static int
dissect_mms_T_confirmed_responsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6803 dissect_mms_T_confirmed_responsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6804 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6805 NULL);
6806
6807 return offset;
6808 }
6809
6810
6811 static const value_string mms_T_confirmed_errorPDU_vals[] = {
6812 { 0, "other" },
6813 { 1, "unrecognized-service" },
6814 { 2, "invalid-invokeID" },
6815 { 3, "invalid-serviceError" },
6816 { 4, "value-out-of-range" },
6817 { 0, NULL }
6818 };
6819
6820
6821 static int
dissect_mms_T_confirmed_errorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6822 dissect_mms_T_confirmed_errorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6823 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6824 NULL);
6825
6826 return offset;
6827 }
6828
6829
6830 static const value_string mms_T_unconfirmedPDU_vals[] = {
6831 { 0, "other" },
6832 { 1, "unrecognized-service" },
6833 { 2, "invalid-argument" },
6834 { 3, "max-recursion-exceeded" },
6835 { 4, "value-out-of-range" },
6836 { 0, NULL }
6837 };
6838
6839
6840 static int
dissect_mms_T_unconfirmedPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6841 dissect_mms_T_unconfirmedPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6842 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6843 NULL);
6844
6845 return offset;
6846 }
6847
6848
6849 static const value_string mms_T_pdu_error_vals[] = {
6850 { 0, "unknown-pdu-type" },
6851 { 1, "invalid-pdu" },
6852 { 2, "illegal-acse-mapping" },
6853 { 0, NULL }
6854 };
6855
6856
6857 static int
dissect_mms_T_pdu_error(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6858 dissect_mms_T_pdu_error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6859 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6860 NULL);
6861
6862 return offset;
6863 }
6864
6865
6866 static const value_string mms_T_cancel_requestPDU_vals[] = {
6867 { 0, "other" },
6868 { 1, "invalid-invokeID" },
6869 { 0, NULL }
6870 };
6871
6872
6873 static int
dissect_mms_T_cancel_requestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6874 dissect_mms_T_cancel_requestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6875 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6876 NULL);
6877
6878 return offset;
6879 }
6880
6881
6882 static const value_string mms_T_cancel_responsePDU_vals[] = {
6883 { 0, "other" },
6884 { 1, "invalid-invokeID" },
6885 { 0, NULL }
6886 };
6887
6888
6889 static int
dissect_mms_T_cancel_responsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6890 dissect_mms_T_cancel_responsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6891 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6892 NULL);
6893
6894 return offset;
6895 }
6896
6897
6898 static const value_string mms_T_cancel_errorPDU_vals[] = {
6899 { 0, "other" },
6900 { 1, "invalid-invokeID" },
6901 { 2, "invalid-serviceError" },
6902 { 3, "value-out-of-range" },
6903 { 0, NULL }
6904 };
6905
6906
6907 static int
dissect_mms_T_cancel_errorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6908 dissect_mms_T_cancel_errorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6909 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6910 NULL);
6911
6912 return offset;
6913 }
6914
6915
6916 static const value_string mms_T_conclude_requestPDU_vals[] = {
6917 { 0, "other" },
6918 { 1, "invalid-argument" },
6919 { 0, NULL }
6920 };
6921
6922
6923 static int
dissect_mms_T_conclude_requestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6924 dissect_mms_T_conclude_requestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6925 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6926 NULL);
6927
6928 return offset;
6929 }
6930
6931
6932 static const value_string mms_T_conclude_responsePDU_vals[] = {
6933 { 0, "other" },
6934 { 1, "invalid-result" },
6935 { 0, NULL }
6936 };
6937
6938
6939 static int
dissect_mms_T_conclude_responsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6940 dissect_mms_T_conclude_responsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6941 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6942 NULL);
6943
6944 return offset;
6945 }
6946
6947
6948 static const value_string mms_T_conclude_errorPDU_vals[] = {
6949 { 0, "other" },
6950 { 1, "invalid-serviceError" },
6951 { 2, "value-out-of-range" },
6952 { 0, NULL }
6953 };
6954
6955
6956 static int
dissect_mms_T_conclude_errorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6957 dissect_mms_T_conclude_errorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6958 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
6959 NULL);
6960
6961 return offset;
6962 }
6963
6964
6965 static const value_string mms_T_rejectReason_vals[] = {
6966 { 1, "confirmed-requestPDU" },
6967 { 2, "confirmed-responsePDU" },
6968 { 3, "confirmed-errorPDU" },
6969 { 4, "unconfirmedPDU" },
6970 { 5, "pdu-error" },
6971 { 6, "cancel-requestPDU" },
6972 { 7, "cancel-responsePDU" },
6973 { 8, "cancel-errorPDU" },
6974 { 9, "conclude-requestPDU" },
6975 { 10, "conclude-responsePDU" },
6976 { 11, "conclude-errorPDU" },
6977 { 0, NULL }
6978 };
6979
6980 static const ber_choice_t T_rejectReason_choice[] = {
6981 { 1, &hf_mms_confirmed_requestPDU, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_requestPDU },
6982 { 2, &hf_mms_confirmed_responsePDU, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_responsePDU },
6983 { 3, &hf_mms_confirmed_errorPDU, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_errorPDU },
6984 { 4, &hf_mms_unconfirmedPDU , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_T_unconfirmedPDU },
6985 { 5, &hf_mms_pdu_error , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_pdu_error },
6986 { 6, &hf_mms_cancel_requestPDU, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_requestPDU },
6987 { 7, &hf_mms_cancel_responsePDU, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_responsePDU },
6988 { 8, &hf_mms_cancel_errorPDU , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_errorPDU },
6989 { 9, &hf_mms_conclude_requestPDU, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_requestPDU },
6990 { 10, &hf_mms_conclude_responsePDU, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_responsePDU },
6991 { 11, &hf_mms_conclude_errorPDU, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_errorPDU },
6992 { 0, NULL, 0, 0, 0, NULL }
6993 };
6994
6995 static int
dissect_mms_T_rejectReason(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)6996 dissect_mms_T_rejectReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6997 offset = dissect_ber_choice(actx, tree, tvb, offset,
6998 T_rejectReason_choice, hf_index, ett_mms_T_rejectReason,
6999 NULL);
7000
7001 return offset;
7002 }
7003
7004
7005 static const ber_sequence_t RejectPDU_sequence[] = {
7006 { &hf_mms_originalInvokeID, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
7007 { &hf_mms_rejectReason , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_rejectReason },
7008 { NULL, 0, 0, 0, NULL }
7009 };
7010
7011 static int
dissect_mms_RejectPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7012 dissect_mms_RejectPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7013 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7014 RejectPDU_sequence, hf_index, ett_mms_RejectPDU);
7015
7016 return offset;
7017 }
7018
7019
7020
7021 static int
dissect_mms_Cancel_RequestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7022 dissect_mms_Cancel_RequestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7023 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
7024
7025 return offset;
7026 }
7027
7028
7029
7030 static int
dissect_mms_Cancel_ResponsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7031 dissect_mms_Cancel_ResponsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7032 offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index);
7033
7034 return offset;
7035 }
7036
7037
7038 static const ber_sequence_t Cancel_ErrorPDU_sequence[] = {
7039 { &hf_mms_originalInvokeID, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 },
7040 { &hf_mms_serviceError , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError },
7041 { NULL, 0, 0, 0, NULL }
7042 };
7043
7044 static int
dissect_mms_Cancel_ErrorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7045 dissect_mms_Cancel_ErrorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7046 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7047 Cancel_ErrorPDU_sequence, hf_index, ett_mms_Cancel_ErrorPDU);
7048
7049 return offset;
7050 }
7051
7052
7053
7054 static int
dissect_mms_Integer16(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7055 dissect_mms_Integer16(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7056 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
7057 NULL);
7058
7059 return offset;
7060 }
7061
7062
7063 static int * const ParameterSupportOptions_bits[] = {
7064 &hf_mms_ParameterSupportOptions_str1,
7065 &hf_mms_ParameterSupportOptions_str2,
7066 &hf_mms_ParameterSupportOptions_vnam,
7067 &hf_mms_ParameterSupportOptions_valt,
7068 &hf_mms_ParameterSupportOptions_vadr,
7069 &hf_mms_ParameterSupportOptions_vsca,
7070 &hf_mms_ParameterSupportOptions_tpy,
7071 &hf_mms_ParameterSupportOptions_vlis,
7072 &hf_mms_ParameterSupportOptions_real,
7073 &hf_mms_ParameterSupportOptions_spare_bit9,
7074 &hf_mms_ParameterSupportOptions_cei,
7075 NULL
7076 };
7077
7078 static int
dissect_mms_ParameterSupportOptions(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7079 dissect_mms_ParameterSupportOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7080 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
7081 ParameterSupportOptions_bits, 11, hf_index, ett_mms_ParameterSupportOptions,
7082 NULL);
7083
7084 return offset;
7085 }
7086
7087
7088 static int * const ServiceSupportOptions_bits[] = {
7089 &hf_mms_ServiceSupportOptions_status,
7090 &hf_mms_ServiceSupportOptions_getNameList,
7091 &hf_mms_ServiceSupportOptions_identify,
7092 &hf_mms_ServiceSupportOptions_rename,
7093 &hf_mms_ServiceSupportOptions_read,
7094 &hf_mms_ServiceSupportOptions_write,
7095 &hf_mms_ServiceSupportOptions_getVariableAccessAttributes,
7096 &hf_mms_ServiceSupportOptions_defineNamedVariable,
7097 &hf_mms_ServiceSupportOptions_defineScatteredAccess,
7098 &hf_mms_ServiceSupportOptions_getScatteredAccessAttributes,
7099 &hf_mms_ServiceSupportOptions_deleteVariableAccess,
7100 &hf_mms_ServiceSupportOptions_defineNamedVariableList,
7101 &hf_mms_ServiceSupportOptions_getNamedVariableListAttributes,
7102 &hf_mms_ServiceSupportOptions_deleteNamedVariableList,
7103 &hf_mms_ServiceSupportOptions_defineNamedType,
7104 &hf_mms_ServiceSupportOptions_getNamedTypeAttributes,
7105 &hf_mms_ServiceSupportOptions_deleteNamedType,
7106 &hf_mms_ServiceSupportOptions_input,
7107 &hf_mms_ServiceSupportOptions_output,
7108 &hf_mms_ServiceSupportOptions_takeControl,
7109 &hf_mms_ServiceSupportOptions_relinquishControl,
7110 &hf_mms_ServiceSupportOptions_defineSemaphore,
7111 &hf_mms_ServiceSupportOptions_deleteSemaphore,
7112 &hf_mms_ServiceSupportOptions_reportSemaphoreStatus,
7113 &hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus,
7114 &hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus,
7115 &hf_mms_ServiceSupportOptions_initiateDownloadSequence,
7116 &hf_mms_ServiceSupportOptions_downloadSegment,
7117 &hf_mms_ServiceSupportOptions_terminateDownloadSequence,
7118 &hf_mms_ServiceSupportOptions_initiateUploadSequence,
7119 &hf_mms_ServiceSupportOptions_uploadSegment,
7120 &hf_mms_ServiceSupportOptions_terminateUploadSequence,
7121 &hf_mms_ServiceSupportOptions_requestDomainDownload,
7122 &hf_mms_ServiceSupportOptions_requestDomainUpload,
7123 &hf_mms_ServiceSupportOptions_loadDomainContent,
7124 &hf_mms_ServiceSupportOptions_storeDomainContent,
7125 &hf_mms_ServiceSupportOptions_deleteDomain,
7126 &hf_mms_ServiceSupportOptions_getDomainAttributes,
7127 &hf_mms_ServiceSupportOptions_createProgramInvocation,
7128 &hf_mms_ServiceSupportOptions_deleteProgramInvocation,
7129 &hf_mms_ServiceSupportOptions_start,
7130 &hf_mms_ServiceSupportOptions_stop,
7131 &hf_mms_ServiceSupportOptions_resume,
7132 &hf_mms_ServiceSupportOptions_reset,
7133 &hf_mms_ServiceSupportOptions_kill,
7134 &hf_mms_ServiceSupportOptions_getProgramInvocationAttributes,
7135 &hf_mms_ServiceSupportOptions_obtainFile,
7136 &hf_mms_ServiceSupportOptions_defineEventCondition,
7137 &hf_mms_ServiceSupportOptions_deleteEventCondition,
7138 &hf_mms_ServiceSupportOptions_getEventConditionAttributes,
7139 &hf_mms_ServiceSupportOptions_reportEventConditionStatus,
7140 &hf_mms_ServiceSupportOptions_alterEventConditionMonitoring,
7141 &hf_mms_ServiceSupportOptions_triggerEvent,
7142 &hf_mms_ServiceSupportOptions_defineEventAction,
7143 &hf_mms_ServiceSupportOptions_deleteEventAction,
7144 &hf_mms_ServiceSupportOptions_getEventActionAttributes,
7145 &hf_mms_ServiceSupportOptions_reportActionStatus,
7146 &hf_mms_ServiceSupportOptions_defineEventEnrollment,
7147 &hf_mms_ServiceSupportOptions_deleteEventEnrollment,
7148 &hf_mms_ServiceSupportOptions_alterEventEnrollment,
7149 &hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus,
7150 &hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes,
7151 &hf_mms_ServiceSupportOptions_acknowledgeEventNotification,
7152 &hf_mms_ServiceSupportOptions_getAlarmSummary,
7153 &hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary,
7154 &hf_mms_ServiceSupportOptions_readJournal,
7155 &hf_mms_ServiceSupportOptions_writeJournal,
7156 &hf_mms_ServiceSupportOptions_initializeJournal,
7157 &hf_mms_ServiceSupportOptions_reportJournalStatus,
7158 &hf_mms_ServiceSupportOptions_createJournal,
7159 &hf_mms_ServiceSupportOptions_deleteJournal,
7160 &hf_mms_ServiceSupportOptions_getCapabilityList,
7161 &hf_mms_ServiceSupportOptions_fileOpen,
7162 &hf_mms_ServiceSupportOptions_fileRead,
7163 &hf_mms_ServiceSupportOptions_fileClose,
7164 &hf_mms_ServiceSupportOptions_fileRename,
7165 &hf_mms_ServiceSupportOptions_fileDelete,
7166 &hf_mms_ServiceSupportOptions_fileDirectory,
7167 &hf_mms_ServiceSupportOptions_unsolicitedStatus,
7168 &hf_mms_ServiceSupportOptions_informationReport,
7169 &hf_mms_ServiceSupportOptions_eventNotification,
7170 &hf_mms_ServiceSupportOptions_attachToEventCondition,
7171 &hf_mms_ServiceSupportOptions_attachToSemaphore,
7172 &hf_mms_ServiceSupportOptions_conclude,
7173 &hf_mms_ServiceSupportOptions_cancel,
7174 NULL
7175 };
7176
7177 static int
dissect_mms_ServiceSupportOptions(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7178 dissect_mms_ServiceSupportOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7179 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
7180 ServiceSupportOptions_bits, 85, hf_index, ett_mms_ServiceSupportOptions,
7181 NULL);
7182
7183 return offset;
7184 }
7185
7186
7187 static const ber_sequence_t InitRequestDetail_sequence[] = {
7188 { &hf_mms_proposedVersionNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7189 { &hf_mms_proposedParameterCBB, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ParameterSupportOptions },
7190 { &hf_mms_servicesSupportedCalling, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceSupportOptions },
7191 { NULL, 0, 0, 0, NULL }
7192 };
7193
7194 static int
dissect_mms_InitRequestDetail(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7195 dissect_mms_InitRequestDetail(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7196 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7197 InitRequestDetail_sequence, hf_index, ett_mms_InitRequestDetail);
7198
7199 return offset;
7200 }
7201
7202
7203 static const ber_sequence_t Initiate_RequestPDU_sequence[] = {
7204 { &hf_mms_localDetailCalling, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
7205 { &hf_mms_proposedMaxServOutstandingCalling, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7206 { &hf_mms_proposedMaxServOutstandingCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7207 { &hf_mms_proposedDataStructureNestingLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer8 },
7208 { &hf_mms_mmsInitRequestDetail, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_InitRequestDetail },
7209 { NULL, 0, 0, 0, NULL }
7210 };
7211
7212 static int
dissect_mms_Initiate_RequestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7213 dissect_mms_Initiate_RequestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7214 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7215 Initiate_RequestPDU_sequence, hf_index, ett_mms_Initiate_RequestPDU);
7216
7217 return offset;
7218 }
7219
7220
7221 static const ber_sequence_t InitResponseDetail_sequence[] = {
7222 { &hf_mms_negociatedVersionNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7223 { &hf_mms_negociatedParameterCBB, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ParameterSupportOptions },
7224 { &hf_mms_servicesSupportedCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceSupportOptions },
7225 { NULL, 0, 0, 0, NULL }
7226 };
7227
7228 static int
dissect_mms_InitResponseDetail(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7229 dissect_mms_InitResponseDetail(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7230 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7231 InitResponseDetail_sequence, hf_index, ett_mms_InitResponseDetail);
7232
7233 return offset;
7234 }
7235
7236
7237 static const ber_sequence_t Initiate_ResponsePDU_sequence[] = {
7238 { &hf_mms_localDetailCalled, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer32 },
7239 { &hf_mms_negociatedMaxServOutstandingCalling, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7240 { &hf_mms_negociatedMaxServOutstandingCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 },
7241 { &hf_mms_negociatedDataStructureNestingLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer8 },
7242 { &hf_mms_mmsInitResponseDetail, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_InitResponseDetail },
7243 { NULL, 0, 0, 0, NULL }
7244 };
7245
7246 static int
dissect_mms_Initiate_ResponsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7247 dissect_mms_Initiate_ResponsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7248 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
7249 Initiate_ResponsePDU_sequence, hf_index, ett_mms_Initiate_ResponsePDU);
7250
7251 return offset;
7252 }
7253
7254
7255
7256 static int
dissect_mms_Initiate_ErrorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7257 dissect_mms_Initiate_ErrorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7258 offset = dissect_mms_ServiceError(implicit_tag, tvb, offset, actx, tree, hf_index);
7259
7260 return offset;
7261 }
7262
7263
7264
7265 static int
dissect_mms_Conclude_RequestPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7266 dissect_mms_Conclude_RequestPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7267 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7268
7269 return offset;
7270 }
7271
7272
7273
7274 static int
dissect_mms_Conclude_ResponsePDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7275 dissect_mms_Conclude_ResponsePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7276 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
7277
7278 return offset;
7279 }
7280
7281
7282
7283 static int
dissect_mms_Conclude_ErrorPDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7284 dissect_mms_Conclude_ErrorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7285 offset = dissect_mms_ServiceError(implicit_tag, tvb, offset, actx, tree, hf_index);
7286
7287 return offset;
7288 }
7289
7290
7291 const value_string mms_MMSpdu_vals[] = {
7292 { 0, "confirmed-RequestPDU" },
7293 { 1, "confirmed-ResponsePDU" },
7294 { 2, "confirmed-ErrorPDU" },
7295 { 3, "unconfirmed-PDU" },
7296 { 4, "rejectPDU" },
7297 { 5, "cancel-RequestPDU" },
7298 { 6, "cancel-ResponsePDU" },
7299 { 7, "cancel-ErrorPDU" },
7300 { 8, "initiate-RequestPDU" },
7301 { 9, "initiate-ResponsePDU" },
7302 { 10, "initiate-ErrorPDU" },
7303 { 11, "conclude-RequestPDU" },
7304 { 12, "conclude-ResponsePDU" },
7305 { 13, "conclude-ErrorPDU" },
7306 { 0, NULL }
7307 };
7308
7309 static const ber_choice_t MMSpdu_choice[] = {
7310 { 0, &hf_mms_confirmed_RequestPDU, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_RequestPDU },
7311 { 1, &hf_mms_confirmed_ResponsePDU, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_ResponsePDU },
7312 { 2, &hf_mms_confirmed_ErrorPDU, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_ErrorPDU },
7313 { 3, &hf_mms_unconfirmed_PDU , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unconfirmed_PDU },
7314 { 4, &hf_mms_rejectPDU , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_RejectPDU },
7315 { 5, &hf_mms_cancel_RequestPDU, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_RequestPDU },
7316 { 6, &hf_mms_cancel_ResponsePDU, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_ResponsePDU },
7317 { 7, &hf_mms_cancel_ErrorPDU , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_ErrorPDU },
7318 { 8, &hf_mms_initiate_RequestPDU, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_RequestPDU },
7319 { 9, &hf_mms_initiate_ResponsePDU, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_ResponsePDU },
7320 { 10, &hf_mms_initiate_ErrorPDU, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_ErrorPDU },
7321 { 11, &hf_mms_conclude_RequestPDU, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_RequestPDU },
7322 { 12, &hf_mms_conclude_ResponsePDU, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_ResponsePDU },
7323 { 13, &hf_mms_conclude_ErrorPDU, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_ErrorPDU },
7324 { 0, NULL, 0, 0, 0, NULL }
7325 };
7326
7327 int
dissect_mms_MMSpdu(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)7328 dissect_mms_MMSpdu(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7329 #line 86 "./asn1/mms/mms.cnf"
7330 gint branch_taken;
7331
7332 offset = dissect_ber_choice(actx, tree, tvb, offset,
7333 MMSpdu_choice, hf_index, ett_mms_MMSpdu,
7334 &branch_taken);
7335
7336
7337 if( (branch_taken!=-1) && mms_MMSpdu_vals[branch_taken].strptr ){
7338 if (mms_has_private_data(actx))
7339 col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s%s%s",
7340 private_data_get_preCinfo(actx), mms_MMSpdu_vals[branch_taken].strptr, private_data_get_moreCinfo(actx));
7341 else
7342 col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s",
7343 mms_MMSpdu_vals[branch_taken].strptr);
7344 }
7345
7346
7347
7348 return offset;
7349 }
7350
7351
7352 /*--- End of included file: packet-mms-fn.c ---*/
7353 #line 125 "./asn1/mms/packet-mms-template.c"
7354
7355 /*
7356 * Dissect MMS PDUs inside a PPDU.
7357 */
7358 static int
dissect_mms(tvbuff_t * tvb,packet_info * pinfo,proto_tree * parent_tree,void * data _U_)7359 dissect_mms(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* data _U_)
7360 {
7361 int offset = 0;
7362 int old_offset;
7363 proto_item *item=NULL;
7364 proto_tree *tree=NULL;
7365 asn1_ctx_t asn1_ctx;
7366 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
7367
7368 if(parent_tree){
7369 item = proto_tree_add_item(parent_tree, proto_mms, tvb, 0, -1, ENC_NA);
7370 tree = proto_item_add_subtree(item, ett_mms);
7371 }
7372 col_set_str(pinfo->cinfo, COL_PROTOCOL, "MMS");
7373 col_clear(pinfo->cinfo, COL_INFO);
7374
7375 while (tvb_reported_length_remaining(tvb, offset) > 0){
7376 old_offset=offset;
7377 offset=dissect_mms_MMSpdu(FALSE, tvb, offset, &asn1_ctx , tree, -1);
7378 if(offset == old_offset){
7379 proto_tree_add_expert(tree, pinfo, &ei_mms_zero_pdu, tvb, offset, -1);
7380 break;
7381 }
7382 }
7383 return tvb_captured_length(tvb);
7384 }
7385
7386
7387 /*--- proto_register_mms -------------------------------------------*/
proto_register_mms(void)7388 void proto_register_mms(void) {
7389
7390 /* List of fields */
7391 static hf_register_info hf[] =
7392 {
7393
7394 /*--- Included file: packet-mms-hfarr.c ---*/
7395 #line 1 "./asn1/mms/packet-mms-hfarr.c"
7396 { &hf_mms_confirmed_RequestPDU,
7397 { "confirmed-RequestPDU", "mms.confirmed_RequestPDU_element",
7398 FT_NONE, BASE_NONE, NULL, 0,
7399 NULL, HFILL }},
7400 { &hf_mms_confirmed_ResponsePDU,
7401 { "confirmed-ResponsePDU", "mms.confirmed_ResponsePDU_element",
7402 FT_NONE, BASE_NONE, NULL, 0,
7403 NULL, HFILL }},
7404 { &hf_mms_confirmed_ErrorPDU,
7405 { "confirmed-ErrorPDU", "mms.confirmed_ErrorPDU_element",
7406 FT_NONE, BASE_NONE, NULL, 0,
7407 NULL, HFILL }},
7408 { &hf_mms_unconfirmed_PDU,
7409 { "unconfirmed-PDU", "mms.unconfirmed_PDU_element",
7410 FT_NONE, BASE_NONE, NULL, 0,
7411 NULL, HFILL }},
7412 { &hf_mms_rejectPDU,
7413 { "rejectPDU", "mms.rejectPDU_element",
7414 FT_NONE, BASE_NONE, NULL, 0,
7415 NULL, HFILL }},
7416 { &hf_mms_cancel_RequestPDU,
7417 { "cancel-RequestPDU", "mms.cancel_RequestPDU",
7418 FT_INT32, BASE_DEC, NULL, 0,
7419 NULL, HFILL }},
7420 { &hf_mms_cancel_ResponsePDU,
7421 { "cancel-ResponsePDU", "mms.cancel_ResponsePDU",
7422 FT_INT32, BASE_DEC, NULL, 0,
7423 NULL, HFILL }},
7424 { &hf_mms_cancel_ErrorPDU,
7425 { "cancel-ErrorPDU", "mms.cancel_ErrorPDU_element",
7426 FT_NONE, BASE_NONE, NULL, 0,
7427 NULL, HFILL }},
7428 { &hf_mms_initiate_RequestPDU,
7429 { "initiate-RequestPDU", "mms.initiate_RequestPDU_element",
7430 FT_NONE, BASE_NONE, NULL, 0,
7431 NULL, HFILL }},
7432 { &hf_mms_initiate_ResponsePDU,
7433 { "initiate-ResponsePDU", "mms.initiate_ResponsePDU_element",
7434 FT_NONE, BASE_NONE, NULL, 0,
7435 NULL, HFILL }},
7436 { &hf_mms_initiate_ErrorPDU,
7437 { "initiate-ErrorPDU", "mms.initiate_ErrorPDU_element",
7438 FT_NONE, BASE_NONE, NULL, 0,
7439 NULL, HFILL }},
7440 { &hf_mms_conclude_RequestPDU,
7441 { "conclude-RequestPDU", "mms.conclude_RequestPDU_element",
7442 FT_NONE, BASE_NONE, NULL, 0,
7443 NULL, HFILL }},
7444 { &hf_mms_conclude_ResponsePDU,
7445 { "conclude-ResponsePDU", "mms.conclude_ResponsePDU_element",
7446 FT_NONE, BASE_NONE, NULL, 0,
7447 NULL, HFILL }},
7448 { &hf_mms_conclude_ErrorPDU,
7449 { "conclude-ErrorPDU", "mms.conclude_ErrorPDU_element",
7450 FT_NONE, BASE_NONE, NULL, 0,
7451 NULL, HFILL }},
7452 { &hf_mms_invokeID,
7453 { "invokeID", "mms.invokeID",
7454 FT_INT32, BASE_DEC, NULL, 0,
7455 "Unsigned32", HFILL }},
7456 { &hf_mms_listOfModifier,
7457 { "listOfModifier", "mms.listOfModifier",
7458 FT_UINT32, BASE_DEC, NULL, 0,
7459 "SEQUENCE_OF_Modifier", HFILL }},
7460 { &hf_mms_listOfModifier_item,
7461 { "Modifier", "mms.Modifier",
7462 FT_UINT32, BASE_DEC, VALS(mms_Modifier_vals), 0,
7463 NULL, HFILL }},
7464 { &hf_mms_confirmedServiceRequest,
7465 { "confirmedServiceRequest", "mms.confirmedServiceRequest",
7466 FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceRequest_vals), 0,
7467 NULL, HFILL }},
7468 { &hf_mms_cs_request_detail,
7469 { "cs-request-detail", "mms.cs_request_detail",
7470 FT_UINT32, BASE_DEC, VALS(mms_CS_Request_Detail_vals), 0,
7471 NULL, HFILL }},
7472 { &hf_mms_unconfirmedService,
7473 { "unconfirmedService", "mms.unconfirmedService",
7474 FT_UINT32, BASE_DEC, VALS(mms_UnconfirmedService_vals), 0,
7475 NULL, HFILL }},
7476 { &hf_mms_confirmedServiceResponse,
7477 { "confirmedServiceResponse", "mms.confirmedServiceResponse",
7478 FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceResponse_vals), 0,
7479 NULL, HFILL }},
7480 { &hf_mms_modifierPosition,
7481 { "modifierPosition", "mms.modifierPosition",
7482 FT_INT32, BASE_DEC, NULL, 0,
7483 "Unsigned32", HFILL }},
7484 { &hf_mms_serviceError,
7485 { "serviceError", "mms.serviceError_element",
7486 FT_NONE, BASE_NONE, NULL, 0,
7487 NULL, HFILL }},
7488 { &hf_mms_informationReport,
7489 { "informationReport", "mms.informationReport_element",
7490 FT_NONE, BASE_NONE, NULL, 0,
7491 NULL, HFILL }},
7492 { &hf_mms_unsolicitedStatus,
7493 { "unsolicitedStatus", "mms.unsolicitedStatus_element",
7494 FT_NONE, BASE_NONE, NULL, 0,
7495 NULL, HFILL }},
7496 { &hf_mms_eventNotification,
7497 { "eventNotification", "mms.eventNotification_element",
7498 FT_NONE, BASE_NONE, NULL, 0,
7499 NULL, HFILL }},
7500 { &hf_mms_attach_To_Event_Condition,
7501 { "attach-To-Event-Condition", "mms.attach_To_Event_Condition_element",
7502 FT_NONE, BASE_NONE, NULL, 0,
7503 "AttachToEventCondition", HFILL }},
7504 { &hf_mms_attach_To_Semaphore,
7505 { "attach-To-Semaphore", "mms.attach_To_Semaphore_element",
7506 FT_NONE, BASE_NONE, NULL, 0,
7507 "AttachToSemaphore", HFILL }},
7508 { &hf_mms_status,
7509 { "status", "mms.status",
7510 FT_BOOLEAN, BASE_NONE, NULL, 0,
7511 "Status_Request", HFILL }},
7512 { &hf_mms_getNameList,
7513 { "getNameList", "mms.getNameList_element",
7514 FT_NONE, BASE_NONE, NULL, 0,
7515 "GetNameList_Request", HFILL }},
7516 { &hf_mms_identify,
7517 { "identify", "mms.identify_element",
7518 FT_NONE, BASE_NONE, NULL, 0,
7519 "Identify_Request", HFILL }},
7520 { &hf_mms_rename,
7521 { "rename", "mms.rename_element",
7522 FT_NONE, BASE_NONE, NULL, 0,
7523 "Rename_Request", HFILL }},
7524 { &hf_mms_read,
7525 { "read", "mms.read_element",
7526 FT_NONE, BASE_NONE, NULL, 0,
7527 "Read_Request", HFILL }},
7528 { &hf_mms_write,
7529 { "write", "mms.write_element",
7530 FT_NONE, BASE_NONE, NULL, 0,
7531 "Write_Request", HFILL }},
7532 { &hf_mms_getVariableAccessAttributes,
7533 { "getVariableAccessAttributes", "mms.getVariableAccessAttributes",
7534 FT_UINT32, BASE_DEC, VALS(mms_GetVariableAccessAttributes_Request_vals), 0,
7535 "GetVariableAccessAttributes_Request", HFILL }},
7536 { &hf_mms_defineNamedVariable,
7537 { "defineNamedVariable", "mms.defineNamedVariable_element",
7538 FT_NONE, BASE_NONE, NULL, 0,
7539 "DefineNamedVariable_Request", HFILL }},
7540 { &hf_mms_defineScatteredAccess,
7541 { "defineScatteredAccess", "mms.defineScatteredAccess_element",
7542 FT_NONE, BASE_NONE, NULL, 0,
7543 "DefineScatteredAccess_Request", HFILL }},
7544 { &hf_mms_getScatteredAccessAttributes,
7545 { "getScatteredAccessAttributes", "mms.getScatteredAccessAttributes",
7546 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7547 "GetScatteredAccessAttributes_Request", HFILL }},
7548 { &hf_mms_deleteVariableAccess,
7549 { "deleteVariableAccess", "mms.deleteVariableAccess_element",
7550 FT_NONE, BASE_NONE, NULL, 0,
7551 "DeleteVariableAccess_Request", HFILL }},
7552 { &hf_mms_defineNamedVariableList,
7553 { "defineNamedVariableList", "mms.defineNamedVariableList_element",
7554 FT_NONE, BASE_NONE, NULL, 0,
7555 "DefineNamedVariableList_Request", HFILL }},
7556 { &hf_mms_getNamedVariableListAttributes,
7557 { "getNamedVariableListAttributes", "mms.getNamedVariableListAttributes",
7558 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7559 "GetNamedVariableListAttributes_Request", HFILL }},
7560 { &hf_mms_deleteNamedVariableList,
7561 { "deleteNamedVariableList", "mms.deleteNamedVariableList_element",
7562 FT_NONE, BASE_NONE, NULL, 0,
7563 "DeleteNamedVariableList_Request", HFILL }},
7564 { &hf_mms_defineNamedType,
7565 { "defineNamedType", "mms.defineNamedType_element",
7566 FT_NONE, BASE_NONE, NULL, 0,
7567 "DefineNamedType_Request", HFILL }},
7568 { &hf_mms_getNamedTypeAttributes,
7569 { "getNamedTypeAttributes", "mms.getNamedTypeAttributes",
7570 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7571 "GetNamedTypeAttributes_Request", HFILL }},
7572 { &hf_mms_deleteNamedType,
7573 { "deleteNamedType", "mms.deleteNamedType_element",
7574 FT_NONE, BASE_NONE, NULL, 0,
7575 "DeleteNamedType_Request", HFILL }},
7576 { &hf_mms_input,
7577 { "input", "mms.input_element",
7578 FT_NONE, BASE_NONE, NULL, 0,
7579 "Input_Request", HFILL }},
7580 { &hf_mms_output,
7581 { "output", "mms.output_element",
7582 FT_NONE, BASE_NONE, NULL, 0,
7583 "Output_Request", HFILL }},
7584 { &hf_mms_takeControl,
7585 { "takeControl", "mms.takeControl_element",
7586 FT_NONE, BASE_NONE, NULL, 0,
7587 "TakeControl_Request", HFILL }},
7588 { &hf_mms_relinquishControl,
7589 { "relinquishControl", "mms.relinquishControl_element",
7590 FT_NONE, BASE_NONE, NULL, 0,
7591 "RelinquishControl_Request", HFILL }},
7592 { &hf_mms_defineSemaphore,
7593 { "defineSemaphore", "mms.defineSemaphore_element",
7594 FT_NONE, BASE_NONE, NULL, 0,
7595 "DefineSemaphore_Request", HFILL }},
7596 { &hf_mms_deleteSemaphore,
7597 { "deleteSemaphore", "mms.deleteSemaphore",
7598 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7599 "DeleteSemaphore_Request", HFILL }},
7600 { &hf_mms_reportSemaphoreStatus,
7601 { "reportSemaphoreStatus", "mms.reportSemaphoreStatus",
7602 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7603 "ReportSemaphoreStatus_Request", HFILL }},
7604 { &hf_mms_reportPoolSemaphoreStatus,
7605 { "reportPoolSemaphoreStatus", "mms.reportPoolSemaphoreStatus_element",
7606 FT_NONE, BASE_NONE, NULL, 0,
7607 "ReportPoolSemaphoreStatus_Request", HFILL }},
7608 { &hf_mms_reportSemaphoreEntryStatus,
7609 { "reportSemaphoreEntryStatus", "mms.reportSemaphoreEntryStatus_element",
7610 FT_NONE, BASE_NONE, NULL, 0,
7611 "ReportSemaphoreEntryStatus_Request", HFILL }},
7612 { &hf_mms_initiateDownloadSequence,
7613 { "initiateDownloadSequence", "mms.initiateDownloadSequence_element",
7614 FT_NONE, BASE_NONE, NULL, 0,
7615 "InitiateDownloadSequence_Request", HFILL }},
7616 { &hf_mms_downloadSegment,
7617 { "downloadSegment", "mms.downloadSegment",
7618 FT_STRING, BASE_NONE, NULL, 0,
7619 "DownloadSegment_Request", HFILL }},
7620 { &hf_mms_terminateDownloadSequence,
7621 { "terminateDownloadSequence", "mms.terminateDownloadSequence_element",
7622 FT_NONE, BASE_NONE, NULL, 0,
7623 "TerminateDownloadSequence_Request", HFILL }},
7624 { &hf_mms_initiateUploadSequence,
7625 { "initiateUploadSequence", "mms.initiateUploadSequence",
7626 FT_STRING, BASE_NONE, NULL, 0,
7627 "InitiateUploadSequence_Request", HFILL }},
7628 { &hf_mms_uploadSegment,
7629 { "uploadSegment", "mms.uploadSegment",
7630 FT_INT32, BASE_DEC, NULL, 0,
7631 "UploadSegment_Request", HFILL }},
7632 { &hf_mms_terminateUploadSequence,
7633 { "terminateUploadSequence", "mms.terminateUploadSequence",
7634 FT_INT32, BASE_DEC, NULL, 0,
7635 "TerminateUploadSequence_Request", HFILL }},
7636 { &hf_mms_requestDomainDownload,
7637 { "requestDomainDownload", "mms.requestDomainDownload_element",
7638 FT_NONE, BASE_NONE, NULL, 0,
7639 "RequestDomainDownload_Request", HFILL }},
7640 { &hf_mms_requestDomainUpload,
7641 { "requestDomainUpload", "mms.requestDomainUpload_element",
7642 FT_NONE, BASE_NONE, NULL, 0,
7643 "RequestDomainUpload_Request", HFILL }},
7644 { &hf_mms_loadDomainContent,
7645 { "loadDomainContent", "mms.loadDomainContent_element",
7646 FT_NONE, BASE_NONE, NULL, 0,
7647 "LoadDomainContent_Request", HFILL }},
7648 { &hf_mms_storeDomainContent,
7649 { "storeDomainContent", "mms.storeDomainContent_element",
7650 FT_NONE, BASE_NONE, NULL, 0,
7651 "StoreDomainContent_Request", HFILL }},
7652 { &hf_mms_deleteDomain,
7653 { "deleteDomain", "mms.deleteDomain",
7654 FT_STRING, BASE_NONE, NULL, 0,
7655 "DeleteDomain_Request", HFILL }},
7656 { &hf_mms_getDomainAttributes,
7657 { "getDomainAttributes", "mms.getDomainAttributes",
7658 FT_STRING, BASE_NONE, NULL, 0,
7659 "GetDomainAttributes_Request", HFILL }},
7660 { &hf_mms_createProgramInvocation,
7661 { "createProgramInvocation", "mms.createProgramInvocation_element",
7662 FT_NONE, BASE_NONE, NULL, 0,
7663 "CreateProgramInvocation_Request", HFILL }},
7664 { &hf_mms_deleteProgramInvocation,
7665 { "deleteProgramInvocation", "mms.deleteProgramInvocation",
7666 FT_STRING, BASE_NONE, NULL, 0,
7667 "DeleteProgramInvocation_Request", HFILL }},
7668 { &hf_mms_start,
7669 { "start", "mms.start_element",
7670 FT_NONE, BASE_NONE, NULL, 0,
7671 "Start_Request", HFILL }},
7672 { &hf_mms_stop,
7673 { "stop", "mms.stop_element",
7674 FT_NONE, BASE_NONE, NULL, 0,
7675 "Stop_Request", HFILL }},
7676 { &hf_mms_resume,
7677 { "resume", "mms.resume_element",
7678 FT_NONE, BASE_NONE, NULL, 0,
7679 "Resume_Request", HFILL }},
7680 { &hf_mms_reset,
7681 { "reset", "mms.reset_element",
7682 FT_NONE, BASE_NONE, NULL, 0,
7683 "Reset_Request", HFILL }},
7684 { &hf_mms_kill,
7685 { "kill", "mms.kill_element",
7686 FT_NONE, BASE_NONE, NULL, 0,
7687 "Kill_Request", HFILL }},
7688 { &hf_mms_getProgramInvocationAttributes,
7689 { "getProgramInvocationAttributes", "mms.getProgramInvocationAttributes",
7690 FT_STRING, BASE_NONE, NULL, 0,
7691 "GetProgramInvocationAttributes_Request", HFILL }},
7692 { &hf_mms_obtainFile,
7693 { "obtainFile", "mms.obtainFile_element",
7694 FT_NONE, BASE_NONE, NULL, 0,
7695 "ObtainFile_Request", HFILL }},
7696 { &hf_mms_defineEventCondition,
7697 { "defineEventCondition", "mms.defineEventCondition_element",
7698 FT_NONE, BASE_NONE, NULL, 0,
7699 "DefineEventCondition_Request", HFILL }},
7700 { &hf_mms_confirmedServiceRequest_deleteEventCondition,
7701 { "deleteEventCondition", "mms.confirmedServiceRequest.deleteEventCondition",
7702 FT_UINT32, BASE_DEC, VALS(mms_DeleteEventCondition_Request_vals), 0,
7703 "DeleteEventCondition_Request", HFILL }},
7704 { &hf_mms_getEventConditionAttributes,
7705 { "getEventConditionAttributes", "mms.getEventConditionAttributes",
7706 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7707 "GetEventConditionAttributes_Request", HFILL }},
7708 { &hf_mms_reportEventConditionStatus,
7709 { "reportEventConditionStatus", "mms.reportEventConditionStatus",
7710 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7711 "ReportEventConditionStatus_Request", HFILL }},
7712 { &hf_mms_alterEventConditionMonitoring,
7713 { "alterEventConditionMonitoring", "mms.alterEventConditionMonitoring_element",
7714 FT_NONE, BASE_NONE, NULL, 0,
7715 "AlterEventConditionMonitoring_Request", HFILL }},
7716 { &hf_mms_triggerEvent,
7717 { "triggerEvent", "mms.triggerEvent_element",
7718 FT_NONE, BASE_NONE, NULL, 0,
7719 "TriggerEvent_Request", HFILL }},
7720 { &hf_mms_defineEventAction,
7721 { "defineEventAction", "mms.defineEventAction_element",
7722 FT_NONE, BASE_NONE, NULL, 0,
7723 "DefineEventAction_Request", HFILL }},
7724 { &hf_mms_confirmedServiceRequest_deleteEventAction,
7725 { "deleteEventAction", "mms.confirmedServiceRequest.deleteEventAction",
7726 FT_UINT32, BASE_DEC, VALS(mms_DeleteEventAction_Request_vals), 0,
7727 "DeleteEventAction_Request", HFILL }},
7728 { &hf_mms_getEventActionAttributes,
7729 { "getEventActionAttributes", "mms.getEventActionAttributes",
7730 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7731 "GetEventActionAttributes_Request", HFILL }},
7732 { &hf_mms_reportEventActionStatus,
7733 { "reportEventActionStatus", "mms.reportEventActionStatus",
7734 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7735 "ReportEventActionStatus_Request", HFILL }},
7736 { &hf_mms_defineEventEnrollment,
7737 { "defineEventEnrollment", "mms.defineEventEnrollment_element",
7738 FT_NONE, BASE_NONE, NULL, 0,
7739 "DefineEventEnrollment_Request", HFILL }},
7740 { &hf_mms_confirmedServiceRequest_deleteEventEnrollment,
7741 { "deleteEventEnrollment", "mms.confirmedServiceRequest.deleteEventEnrollment",
7742 FT_UINT32, BASE_DEC, VALS(mms_DeleteEventEnrollment_Request_vals), 0,
7743 "DeleteEventEnrollment_Request", HFILL }},
7744 { &hf_mms_alterEventEnrollment,
7745 { "alterEventEnrollment", "mms.alterEventEnrollment_element",
7746 FT_NONE, BASE_NONE, NULL, 0,
7747 "AlterEventEnrollment_Request", HFILL }},
7748 { &hf_mms_reportEventEnrollmentStatus,
7749 { "reportEventEnrollmentStatus", "mms.reportEventEnrollmentStatus",
7750 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7751 "ReportEventEnrollmentStatus_Request", HFILL }},
7752 { &hf_mms_getEventEnrollmentAttributes,
7753 { "getEventEnrollmentAttributes", "mms.getEventEnrollmentAttributes_element",
7754 FT_NONE, BASE_NONE, NULL, 0,
7755 "GetEventEnrollmentAttributes_Request", HFILL }},
7756 { &hf_mms_acknowledgeEventNotification,
7757 { "acknowledgeEventNotification", "mms.acknowledgeEventNotification_element",
7758 FT_NONE, BASE_NONE, NULL, 0,
7759 "AcknowledgeEventNotification_Request", HFILL }},
7760 { &hf_mms_getAlarmSummary,
7761 { "getAlarmSummary", "mms.getAlarmSummary_element",
7762 FT_NONE, BASE_NONE, NULL, 0,
7763 "GetAlarmSummary_Request", HFILL }},
7764 { &hf_mms_getAlarmEnrollmentSummary,
7765 { "getAlarmEnrollmentSummary", "mms.getAlarmEnrollmentSummary_element",
7766 FT_NONE, BASE_NONE, NULL, 0,
7767 "GetAlarmEnrollmentSummary_Request", HFILL }},
7768 { &hf_mms_readJournal,
7769 { "readJournal", "mms.readJournal_element",
7770 FT_NONE, BASE_NONE, NULL, 0,
7771 "ReadJournal_Request", HFILL }},
7772 { &hf_mms_writeJournal,
7773 { "writeJournal", "mms.writeJournal_element",
7774 FT_NONE, BASE_NONE, NULL, 0,
7775 "WriteJournal_Request", HFILL }},
7776 { &hf_mms_initializeJournal,
7777 { "initializeJournal", "mms.initializeJournal_element",
7778 FT_NONE, BASE_NONE, NULL, 0,
7779 "InitializeJournal_Request", HFILL }},
7780 { &hf_mms_reportJournalStatus,
7781 { "reportJournalStatus", "mms.reportJournalStatus",
7782 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
7783 "ReportJournalStatus_Request", HFILL }},
7784 { &hf_mms_createJournal,
7785 { "createJournal", "mms.createJournal_element",
7786 FT_NONE, BASE_NONE, NULL, 0,
7787 "CreateJournal_Request", HFILL }},
7788 { &hf_mms_deleteJournal,
7789 { "deleteJournal", "mms.deleteJournal_element",
7790 FT_NONE, BASE_NONE, NULL, 0,
7791 "DeleteJournal_Request", HFILL }},
7792 { &hf_mms_getCapabilityList,
7793 { "getCapabilityList", "mms.getCapabilityList_element",
7794 FT_NONE, BASE_NONE, NULL, 0,
7795 "GetCapabilityList_Request", HFILL }},
7796 { &hf_mms_fileOpen,
7797 { "fileOpen", "mms.fileOpen_element",
7798 FT_NONE, BASE_NONE, NULL, 0,
7799 "FileOpen_Request", HFILL }},
7800 { &hf_mms_fileRead,
7801 { "fileRead", "mms.fileRead",
7802 FT_INT32, BASE_DEC, NULL, 0,
7803 "FileRead_Request", HFILL }},
7804 { &hf_mms_fileClose,
7805 { "fileClose", "mms.fileClose",
7806 FT_INT32, BASE_DEC, NULL, 0,
7807 "FileClose_Request", HFILL }},
7808 { &hf_mms_fileRename,
7809 { "fileRename", "mms.fileRename_element",
7810 FT_NONE, BASE_NONE, NULL, 0,
7811 "FileRename_Request", HFILL }},
7812 { &hf_mms_fileDelete,
7813 { "fileDelete", "mms.fileDelete",
7814 FT_UINT32, BASE_DEC, NULL, 0,
7815 "FileDelete_Request", HFILL }},
7816 { &hf_mms_fileDirectory,
7817 { "fileDirectory", "mms.fileDirectory_element",
7818 FT_NONE, BASE_NONE, NULL, 0,
7819 "FileDirectory_Request", HFILL }},
7820 { &hf_mms_foo,
7821 { "foo", "mms.foo",
7822 FT_INT32, BASE_DEC, NULL, 0,
7823 "INTEGER", HFILL }},
7824 { &hf_mms_status_01,
7825 { "status", "mms.status_element",
7826 FT_NONE, BASE_NONE, NULL, 0,
7827 "Status_Response", HFILL }},
7828 { &hf_mms_getNameList_01,
7829 { "getNameList", "mms.getNameList_element",
7830 FT_NONE, BASE_NONE, NULL, 0,
7831 "GetNameList_Response", HFILL }},
7832 { &hf_mms_identify_01,
7833 { "identify", "mms.identify_element",
7834 FT_NONE, BASE_NONE, NULL, 0,
7835 "Identify_Response", HFILL }},
7836 { &hf_mms_rename_01,
7837 { "rename", "mms.rename_element",
7838 FT_NONE, BASE_NONE, NULL, 0,
7839 "Rename_Response", HFILL }},
7840 { &hf_mms_read_01,
7841 { "read", "mms.read_element",
7842 FT_NONE, BASE_NONE, NULL, 0,
7843 "Read_Response", HFILL }},
7844 { &hf_mms_write_01,
7845 { "write", "mms.write",
7846 FT_UINT32, BASE_DEC, NULL, 0,
7847 "Write_Response", HFILL }},
7848 { &hf_mms_getVariableAccessAttributes_01,
7849 { "getVariableAccessAttributes", "mms.getVariableAccessAttributes_element",
7850 FT_NONE, BASE_NONE, NULL, 0,
7851 "GetVariableAccessAttributes_Response", HFILL }},
7852 { &hf_mms_defineNamedVariable_01,
7853 { "defineNamedVariable", "mms.defineNamedVariable_element",
7854 FT_NONE, BASE_NONE, NULL, 0,
7855 "DefineNamedVariable_Response", HFILL }},
7856 { &hf_mms_defineScatteredAccess_01,
7857 { "defineScatteredAccess", "mms.defineScatteredAccess_element",
7858 FT_NONE, BASE_NONE, NULL, 0,
7859 "DefineScatteredAccess_Response", HFILL }},
7860 { &hf_mms_getScatteredAccessAttributes_01,
7861 { "getScatteredAccessAttributes", "mms.getScatteredAccessAttributes_element",
7862 FT_NONE, BASE_NONE, NULL, 0,
7863 "GetScatteredAccessAttributes_Response", HFILL }},
7864 { &hf_mms_deleteVariableAccess_01,
7865 { "deleteVariableAccess", "mms.deleteVariableAccess_element",
7866 FT_NONE, BASE_NONE, NULL, 0,
7867 "DeleteVariableAccess_Response", HFILL }},
7868 { &hf_mms_defineNamedVariableList_01,
7869 { "defineNamedVariableList", "mms.defineNamedVariableList_element",
7870 FT_NONE, BASE_NONE, NULL, 0,
7871 "DefineNamedVariableList_Response", HFILL }},
7872 { &hf_mms_getNamedVariableListAttributes_01,
7873 { "getNamedVariableListAttributes", "mms.getNamedVariableListAttributes_element",
7874 FT_NONE, BASE_NONE, NULL, 0,
7875 "GetNamedVariableListAttributes_Response", HFILL }},
7876 { &hf_mms_deleteNamedVariableList_01,
7877 { "deleteNamedVariableList", "mms.deleteNamedVariableList_element",
7878 FT_NONE, BASE_NONE, NULL, 0,
7879 "DeleteNamedVariableList_Response", HFILL }},
7880 { &hf_mms_defineNamedType_01,
7881 { "defineNamedType", "mms.defineNamedType_element",
7882 FT_NONE, BASE_NONE, NULL, 0,
7883 "DefineNamedType_Response", HFILL }},
7884 { &hf_mms_getNamedTypeAttributes_01,
7885 { "getNamedTypeAttributes", "mms.getNamedTypeAttributes_element",
7886 FT_NONE, BASE_NONE, NULL, 0,
7887 "GetNamedTypeAttributes_Response", HFILL }},
7888 { &hf_mms_deleteNamedType_01,
7889 { "deleteNamedType", "mms.deleteNamedType_element",
7890 FT_NONE, BASE_NONE, NULL, 0,
7891 "DeleteNamedType_Response", HFILL }},
7892 { &hf_mms_input_01,
7893 { "input", "mms.input",
7894 FT_STRING, BASE_NONE, NULL, 0,
7895 "Input_Response", HFILL }},
7896 { &hf_mms_output_01,
7897 { "output", "mms.output_element",
7898 FT_NONE, BASE_NONE, NULL, 0,
7899 "Output_Response", HFILL }},
7900 { &hf_mms_takeControl_01,
7901 { "takeControl", "mms.takeControl",
7902 FT_UINT32, BASE_DEC, VALS(mms_TakeControl_Response_vals), 0,
7903 "TakeControl_Response", HFILL }},
7904 { &hf_mms_relinquishControl_01,
7905 { "relinquishControl", "mms.relinquishControl_element",
7906 FT_NONE, BASE_NONE, NULL, 0,
7907 "RelinquishControl_Response", HFILL }},
7908 { &hf_mms_defineSemaphore_01,
7909 { "defineSemaphore", "mms.defineSemaphore_element",
7910 FT_NONE, BASE_NONE, NULL, 0,
7911 "DefineSemaphore_Response", HFILL }},
7912 { &hf_mms_deleteSemaphore_01,
7913 { "deleteSemaphore", "mms.deleteSemaphore_element",
7914 FT_NONE, BASE_NONE, NULL, 0,
7915 "DeleteSemaphore_Response", HFILL }},
7916 { &hf_mms_reportSemaphoreStatus_01,
7917 { "reportSemaphoreStatus", "mms.reportSemaphoreStatus_element",
7918 FT_NONE, BASE_NONE, NULL, 0,
7919 "ReportSemaphoreStatus_Response", HFILL }},
7920 { &hf_mms_reportPoolSemaphoreStatus_01,
7921 { "reportPoolSemaphoreStatus", "mms.reportPoolSemaphoreStatus_element",
7922 FT_NONE, BASE_NONE, NULL, 0,
7923 "ReportPoolSemaphoreStatus_Response", HFILL }},
7924 { &hf_mms_reportSemaphoreEntryStatus_01,
7925 { "reportSemaphoreEntryStatus", "mms.reportSemaphoreEntryStatus_element",
7926 FT_NONE, BASE_NONE, NULL, 0,
7927 "ReportSemaphoreEntryStatus_Response", HFILL }},
7928 { &hf_mms_initiateDownloadSequence_01,
7929 { "initiateDownloadSequence", "mms.initiateDownloadSequence_element",
7930 FT_NONE, BASE_NONE, NULL, 0,
7931 "InitiateDownloadSequence_Response", HFILL }},
7932 { &hf_mms_downloadSegment_01,
7933 { "downloadSegment", "mms.downloadSegment_element",
7934 FT_NONE, BASE_NONE, NULL, 0,
7935 "DownloadSegment_Response", HFILL }},
7936 { &hf_mms_terminateDownloadSequence_01,
7937 { "terminateDownloadSequence", "mms.terminateDownloadSequence_element",
7938 FT_NONE, BASE_NONE, NULL, 0,
7939 "TerminateDownloadSequence_Response", HFILL }},
7940 { &hf_mms_initiateUploadSequence_01,
7941 { "initiateUploadSequence", "mms.initiateUploadSequence_element",
7942 FT_NONE, BASE_NONE, NULL, 0,
7943 "InitiateUploadSequence_Response", HFILL }},
7944 { &hf_mms_uploadSegment_01,
7945 { "uploadSegment", "mms.uploadSegment_element",
7946 FT_NONE, BASE_NONE, NULL, 0,
7947 "UploadSegment_Response", HFILL }},
7948 { &hf_mms_terminateUploadSequence_01,
7949 { "terminateUploadSequence", "mms.terminateUploadSequence_element",
7950 FT_NONE, BASE_NONE, NULL, 0,
7951 "TerminateUploadSequence_Response", HFILL }},
7952 { &hf_mms_requestDomainDownLoad,
7953 { "requestDomainDownLoad", "mms.requestDomainDownLoad_element",
7954 FT_NONE, BASE_NONE, NULL, 0,
7955 "RequestDomainDownload_Response", HFILL }},
7956 { &hf_mms_requestDomainUpload_01,
7957 { "requestDomainUpload", "mms.requestDomainUpload_element",
7958 FT_NONE, BASE_NONE, NULL, 0,
7959 "RequestDomainUpload_Response", HFILL }},
7960 { &hf_mms_loadDomainContent_01,
7961 { "loadDomainContent", "mms.loadDomainContent_element",
7962 FT_NONE, BASE_NONE, NULL, 0,
7963 "LoadDomainContent_Response", HFILL }},
7964 { &hf_mms_storeDomainContent_01,
7965 { "storeDomainContent", "mms.storeDomainContent_element",
7966 FT_NONE, BASE_NONE, NULL, 0,
7967 "StoreDomainContent_Response", HFILL }},
7968 { &hf_mms_deleteDomain_01,
7969 { "deleteDomain", "mms.deleteDomain_element",
7970 FT_NONE, BASE_NONE, NULL, 0,
7971 "DeleteDomain_Response", HFILL }},
7972 { &hf_mms_getDomainAttributes_01,
7973 { "getDomainAttributes", "mms.getDomainAttributes_element",
7974 FT_NONE, BASE_NONE, NULL, 0,
7975 "GetDomainAttributes_Response", HFILL }},
7976 { &hf_mms_createProgramInvocation_01,
7977 { "createProgramInvocation", "mms.createProgramInvocation_element",
7978 FT_NONE, BASE_NONE, NULL, 0,
7979 "CreateProgramInvocation_Response", HFILL }},
7980 { &hf_mms_deleteProgramInvocation_01,
7981 { "deleteProgramInvocation", "mms.deleteProgramInvocation_element",
7982 FT_NONE, BASE_NONE, NULL, 0,
7983 "DeleteProgramInvocation_Response", HFILL }},
7984 { &hf_mms_start_01,
7985 { "start", "mms.start_element",
7986 FT_NONE, BASE_NONE, NULL, 0,
7987 "Start_Response", HFILL }},
7988 { &hf_mms_stop_01,
7989 { "stop", "mms.stop_element",
7990 FT_NONE, BASE_NONE, NULL, 0,
7991 "Stop_Response", HFILL }},
7992 { &hf_mms_resume_01,
7993 { "resume", "mms.resume_element",
7994 FT_NONE, BASE_NONE, NULL, 0,
7995 "Resume_Response", HFILL }},
7996 { &hf_mms_reset_01,
7997 { "reset", "mms.reset_element",
7998 FT_NONE, BASE_NONE, NULL, 0,
7999 "Reset_Response", HFILL }},
8000 { &hf_mms_kill_01,
8001 { "kill", "mms.kill_element",
8002 FT_NONE, BASE_NONE, NULL, 0,
8003 "Kill_Response", HFILL }},
8004 { &hf_mms_getProgramInvocationAttributes_01,
8005 { "getProgramInvocationAttributes", "mms.getProgramInvocationAttributes_element",
8006 FT_NONE, BASE_NONE, NULL, 0,
8007 "GetProgramInvocationAttributes_Response", HFILL }},
8008 { &hf_mms_obtainFile_01,
8009 { "obtainFile", "mms.obtainFile_element",
8010 FT_NONE, BASE_NONE, NULL, 0,
8011 "ObtainFile_Response", HFILL }},
8012 { &hf_mms_fileOpen_01,
8013 { "fileOpen", "mms.fileOpen_element",
8014 FT_NONE, BASE_NONE, NULL, 0,
8015 "FileOpen_Response", HFILL }},
8016 { &hf_mms_defineEventCondition_01,
8017 { "defineEventCondition", "mms.defineEventCondition_element",
8018 FT_NONE, BASE_NONE, NULL, 0,
8019 "DefineEventCondition_Response", HFILL }},
8020 { &hf_mms_confirmedServiceResponse_deleteEventCondition,
8021 { "deleteEventCondition", "mms.confirmedServiceResponse.deleteEventCondition",
8022 FT_INT32, BASE_DEC, NULL, 0,
8023 "DeleteEventCondition_Response", HFILL }},
8024 { &hf_mms_getEventConditionAttributes_01,
8025 { "getEventConditionAttributes", "mms.getEventConditionAttributes_element",
8026 FT_NONE, BASE_NONE, NULL, 0,
8027 "GetEventConditionAttributes_Response", HFILL }},
8028 { &hf_mms_reportEventConditionStatus_01,
8029 { "reportEventConditionStatus", "mms.reportEventConditionStatus_element",
8030 FT_NONE, BASE_NONE, NULL, 0,
8031 "ReportEventConditionStatus_Response", HFILL }},
8032 { &hf_mms_alterEventConditionMonitoring_01,
8033 { "alterEventConditionMonitoring", "mms.alterEventConditionMonitoring_element",
8034 FT_NONE, BASE_NONE, NULL, 0,
8035 "AlterEventConditionMonitoring_Response", HFILL }},
8036 { &hf_mms_triggerEvent_01,
8037 { "triggerEvent", "mms.triggerEvent_element",
8038 FT_NONE, BASE_NONE, NULL, 0,
8039 "TriggerEvent_Response", HFILL }},
8040 { &hf_mms_defineEventAction_01,
8041 { "defineEventAction", "mms.defineEventAction_element",
8042 FT_NONE, BASE_NONE, NULL, 0,
8043 "DefineEventAction_Response", HFILL }},
8044 { &hf_mms_deleteEventAction,
8045 { "deleteEventAction", "mms.deleteEventAction",
8046 FT_INT32, BASE_DEC, NULL, 0,
8047 "DeleteEventAction_Response", HFILL }},
8048 { &hf_mms_getEventActionAttributes_01,
8049 { "getEventActionAttributes", "mms.getEventActionAttributes_element",
8050 FT_NONE, BASE_NONE, NULL, 0,
8051 "GetEventActionAttributes_Response", HFILL }},
8052 { &hf_mms_reportActionStatus,
8053 { "reportActionStatus", "mms.reportActionStatus",
8054 FT_INT32, BASE_DEC, NULL, 0,
8055 "ReportEventActionStatus_Response", HFILL }},
8056 { &hf_mms_defineEventEnrollment_01,
8057 { "defineEventEnrollment", "mms.defineEventEnrollment_element",
8058 FT_NONE, BASE_NONE, NULL, 0,
8059 "DefineEventEnrollment_Response", HFILL }},
8060 { &hf_mms_confirmedServiceResponse_deleteEventEnrollment,
8061 { "deleteEventEnrollment", "mms.confirmedServiceResponse.deleteEventEnrollment",
8062 FT_INT32, BASE_DEC, NULL, 0,
8063 "DeleteEventEnrollment_Response", HFILL }},
8064 { &hf_mms_alterEventEnrollment_01,
8065 { "alterEventEnrollment", "mms.alterEventEnrollment_element",
8066 FT_NONE, BASE_NONE, NULL, 0,
8067 "AlterEventEnrollment_Response", HFILL }},
8068 { &hf_mms_reportEventEnrollmentStatus_01,
8069 { "reportEventEnrollmentStatus", "mms.reportEventEnrollmentStatus_element",
8070 FT_NONE, BASE_NONE, NULL, 0,
8071 "ReportEventEnrollmentStatus_Response", HFILL }},
8072 { &hf_mms_getEventEnrollmentAttributes_01,
8073 { "getEventEnrollmentAttributes", "mms.getEventEnrollmentAttributes_element",
8074 FT_NONE, BASE_NONE, NULL, 0,
8075 "GetEventEnrollmentAttributes_Response", HFILL }},
8076 { &hf_mms_acknowledgeEventNotification_01,
8077 { "acknowledgeEventNotification", "mms.acknowledgeEventNotification_element",
8078 FT_NONE, BASE_NONE, NULL, 0,
8079 "AcknowledgeEventNotification_Response", HFILL }},
8080 { &hf_mms_getAlarmSummary_01,
8081 { "getAlarmSummary", "mms.getAlarmSummary_element",
8082 FT_NONE, BASE_NONE, NULL, 0,
8083 "GetAlarmSummary_Response", HFILL }},
8084 { &hf_mms_getAlarmEnrollmentSummary_01,
8085 { "getAlarmEnrollmentSummary", "mms.getAlarmEnrollmentSummary_element",
8086 FT_NONE, BASE_NONE, NULL, 0,
8087 "GetAlarmEnrollmentSummary_Response", HFILL }},
8088 { &hf_mms_readJournal_01,
8089 { "readJournal", "mms.readJournal_element",
8090 FT_NONE, BASE_NONE, NULL, 0,
8091 "ReadJournal_Response", HFILL }},
8092 { &hf_mms_writeJournal_01,
8093 { "writeJournal", "mms.writeJournal_element",
8094 FT_NONE, BASE_NONE, NULL, 0,
8095 "WriteJournal_Response", HFILL }},
8096 { &hf_mms_initializeJournal_01,
8097 { "initializeJournal", "mms.initializeJournal",
8098 FT_INT32, BASE_DEC, NULL, 0,
8099 "InitializeJournal_Response", HFILL }},
8100 { &hf_mms_reportJournalStatus_01,
8101 { "reportJournalStatus", "mms.reportJournalStatus_element",
8102 FT_NONE, BASE_NONE, NULL, 0,
8103 "ReportJournalStatus_Response", HFILL }},
8104 { &hf_mms_createJournal_01,
8105 { "createJournal", "mms.createJournal_element",
8106 FT_NONE, BASE_NONE, NULL, 0,
8107 "CreateJournal_Response", HFILL }},
8108 { &hf_mms_deleteJournal_01,
8109 { "deleteJournal", "mms.deleteJournal_element",
8110 FT_NONE, BASE_NONE, NULL, 0,
8111 "DeleteJournal_Response", HFILL }},
8112 { &hf_mms_getCapabilityList_01,
8113 { "getCapabilityList", "mms.getCapabilityList_element",
8114 FT_NONE, BASE_NONE, NULL, 0,
8115 "GetCapabilityList_Response", HFILL }},
8116 { &hf_mms_fileRead_01,
8117 { "fileRead", "mms.fileRead_element",
8118 FT_NONE, BASE_NONE, NULL, 0,
8119 "FileRead_Response", HFILL }},
8120 { &hf_mms_fileClose_01,
8121 { "fileClose", "mms.fileClose_element",
8122 FT_NONE, BASE_NONE, NULL, 0,
8123 "FileClose_Response", HFILL }},
8124 { &hf_mms_fileRename_01,
8125 { "fileRename", "mms.fileRename_element",
8126 FT_NONE, BASE_NONE, NULL, 0,
8127 "FileRename_Response", HFILL }},
8128 { &hf_mms_fileDelete_01,
8129 { "fileDelete", "mms.fileDelete_element",
8130 FT_NONE, BASE_NONE, NULL, 0,
8131 "FileDelete_Response", HFILL }},
8132 { &hf_mms_fileDirectory_01,
8133 { "fileDirectory", "mms.fileDirectory_element",
8134 FT_NONE, BASE_NONE, NULL, 0,
8135 "FileDirectory_Response", HFILL }},
8136 { &hf_mms_FileName_item,
8137 { "FileName item", "mms.FileName_item",
8138 FT_STRING, BASE_NONE, NULL, 0,
8139 "GraphicString", HFILL }},
8140 { &hf_mms_vmd_specific,
8141 { "vmd-specific", "mms.vmd_specific",
8142 FT_STRING, BASE_NONE, NULL, 0,
8143 "Identifier", HFILL }},
8144 { &hf_mms_domain_specific,
8145 { "domain-specific", "mms.domain_specific_element",
8146 FT_NONE, BASE_NONE, NULL, 0,
8147 NULL, HFILL }},
8148 { &hf_mms_domainId,
8149 { "domainId", "mms.domainId",
8150 FT_STRING, BASE_NONE, NULL, 0,
8151 "Identifier", HFILL }},
8152 { &hf_mms_itemId,
8153 { "itemId", "mms.itemId",
8154 FT_STRING, BASE_NONE, NULL, 0,
8155 "Identifier", HFILL }},
8156 { &hf_mms_aa_specific,
8157 { "aa-specific", "mms.aa_specific",
8158 FT_STRING, BASE_NONE, NULL, 0,
8159 "Identifier", HFILL }},
8160 { &hf_mms_ap_title,
8161 { "ap-title", "mms.ap_title",
8162 FT_UINT32, BASE_DEC, VALS(acse_AP_title_vals), 0,
8163 NULL, HFILL }},
8164 { &hf_mms_ap_invocation_id,
8165 { "ap-invocation-id", "mms.ap_invocation_id",
8166 FT_INT32, BASE_DEC, NULL, 0,
8167 NULL, HFILL }},
8168 { &hf_mms_ae_qualifier,
8169 { "ae-qualifier", "mms.ae_qualifier",
8170 FT_UINT32, BASE_DEC, VALS(acse_ASO_qualifier_vals), 0,
8171 NULL, HFILL }},
8172 { &hf_mms_ae_invocation_id,
8173 { "ae-invocation-id", "mms.ae_invocation_id",
8174 FT_INT32, BASE_DEC, NULL, 0,
8175 NULL, HFILL }},
8176 { &hf_mms_localDetailCalling,
8177 { "localDetailCalling", "mms.localDetailCalling",
8178 FT_INT32, BASE_DEC, NULL, 0,
8179 "Integer32", HFILL }},
8180 { &hf_mms_proposedMaxServOutstandingCalling,
8181 { "proposedMaxServOutstandingCalling", "mms.proposedMaxServOutstandingCalling",
8182 FT_INT32, BASE_DEC, NULL, 0,
8183 "Integer16", HFILL }},
8184 { &hf_mms_proposedMaxServOutstandingCalled,
8185 { "proposedMaxServOutstandingCalled", "mms.proposedMaxServOutstandingCalled",
8186 FT_INT32, BASE_DEC, NULL, 0,
8187 "Integer16", HFILL }},
8188 { &hf_mms_proposedDataStructureNestingLevel,
8189 { "proposedDataStructureNestingLevel", "mms.proposedDataStructureNestingLevel",
8190 FT_INT32, BASE_DEC, NULL, 0,
8191 "Integer8", HFILL }},
8192 { &hf_mms_mmsInitRequestDetail,
8193 { "mmsInitRequestDetail", "mms.mmsInitRequestDetail_element",
8194 FT_NONE, BASE_NONE, NULL, 0,
8195 "InitRequestDetail", HFILL }},
8196 { &hf_mms_proposedVersionNumber,
8197 { "proposedVersionNumber", "mms.proposedVersionNumber",
8198 FT_INT32, BASE_DEC, NULL, 0,
8199 "Integer16", HFILL }},
8200 { &hf_mms_proposedParameterCBB,
8201 { "proposedParameterCBB", "mms.proposedParameterCBB",
8202 FT_BYTES, BASE_NONE, NULL, 0,
8203 "ParameterSupportOptions", HFILL }},
8204 { &hf_mms_servicesSupportedCalling,
8205 { "servicesSupportedCalling", "mms.servicesSupportedCalling",
8206 FT_BYTES, BASE_NONE, NULL, 0,
8207 "ServiceSupportOptions", HFILL }},
8208 { &hf_mms_localDetailCalled,
8209 { "localDetailCalled", "mms.localDetailCalled",
8210 FT_INT32, BASE_DEC, NULL, 0,
8211 "Integer32", HFILL }},
8212 { &hf_mms_negociatedMaxServOutstandingCalling,
8213 { "negociatedMaxServOutstandingCalling", "mms.negociatedMaxServOutstandingCalling",
8214 FT_INT32, BASE_DEC, NULL, 0,
8215 "Integer16", HFILL }},
8216 { &hf_mms_negociatedMaxServOutstandingCalled,
8217 { "negociatedMaxServOutstandingCalled", "mms.negociatedMaxServOutstandingCalled",
8218 FT_INT32, BASE_DEC, NULL, 0,
8219 "Integer16", HFILL }},
8220 { &hf_mms_negociatedDataStructureNestingLevel,
8221 { "negociatedDataStructureNestingLevel", "mms.negociatedDataStructureNestingLevel",
8222 FT_INT32, BASE_DEC, NULL, 0,
8223 "Integer8", HFILL }},
8224 { &hf_mms_mmsInitResponseDetail,
8225 { "mmsInitResponseDetail", "mms.mmsInitResponseDetail_element",
8226 FT_NONE, BASE_NONE, NULL, 0,
8227 "InitResponseDetail", HFILL }},
8228 { &hf_mms_negociatedVersionNumber,
8229 { "negociatedVersionNumber", "mms.negociatedVersionNumber",
8230 FT_INT32, BASE_DEC, NULL, 0,
8231 "Integer16", HFILL }},
8232 { &hf_mms_negociatedParameterCBB,
8233 { "negociatedParameterCBB", "mms.negociatedParameterCBB",
8234 FT_BYTES, BASE_NONE, NULL, 0,
8235 "ParameterSupportOptions", HFILL }},
8236 { &hf_mms_servicesSupportedCalled,
8237 { "servicesSupportedCalled", "mms.servicesSupportedCalled",
8238 FT_BYTES, BASE_NONE, NULL, 0,
8239 "ServiceSupportOptions", HFILL }},
8240 { &hf_mms_originalInvokeID,
8241 { "originalInvokeID", "mms.originalInvokeID",
8242 FT_INT32, BASE_DEC, NULL, 0,
8243 "Unsigned32", HFILL }},
8244 { &hf_mms_errorClass,
8245 { "errorClass", "mms.errorClass",
8246 FT_UINT32, BASE_DEC, VALS(mms_T_errorClass_vals), 0,
8247 NULL, HFILL }},
8248 { &hf_mms_vmd_state,
8249 { "vmd-state", "mms.vmd_state",
8250 FT_INT32, BASE_DEC, VALS(mms_T_vmd_state_vals), 0,
8251 NULL, HFILL }},
8252 { &hf_mms_application_reference,
8253 { "application-reference", "mms.application_reference",
8254 FT_INT32, BASE_DEC, VALS(mms_T_application_reference_vals), 0,
8255 NULL, HFILL }},
8256 { &hf_mms_definition,
8257 { "definition", "mms.definition",
8258 FT_INT32, BASE_DEC, VALS(mms_T_definition_vals), 0,
8259 NULL, HFILL }},
8260 { &hf_mms_resource,
8261 { "resource", "mms.resource",
8262 FT_INT32, BASE_DEC, VALS(mms_T_resource_vals), 0,
8263 NULL, HFILL }},
8264 { &hf_mms_service,
8265 { "service", "mms.service",
8266 FT_INT32, BASE_DEC, VALS(mms_T_service_vals), 0,
8267 NULL, HFILL }},
8268 { &hf_mms_service_preempt,
8269 { "service-preempt", "mms.service_preempt",
8270 FT_INT32, BASE_DEC, VALS(mms_T_service_preempt_vals), 0,
8271 NULL, HFILL }},
8272 { &hf_mms_time_resolution,
8273 { "time-resolution", "mms.time_resolution",
8274 FT_INT32, BASE_DEC, VALS(mms_T_time_resolution_vals), 0,
8275 NULL, HFILL }},
8276 { &hf_mms_access,
8277 { "access", "mms.access",
8278 FT_INT32, BASE_DEC, VALS(mms_T_access_vals), 0,
8279 NULL, HFILL }},
8280 { &hf_mms_initiate,
8281 { "initiate", "mms.initiate",
8282 FT_INT32, BASE_DEC, VALS(mms_T_initiate_vals), 0,
8283 NULL, HFILL }},
8284 { &hf_mms_conclude,
8285 { "conclude", "mms.conclude",
8286 FT_INT32, BASE_DEC, VALS(mms_T_conclude_vals), 0,
8287 NULL, HFILL }},
8288 { &hf_mms_cancel,
8289 { "cancel", "mms.cancel",
8290 FT_INT32, BASE_DEC, VALS(mms_T_cancel_vals), 0,
8291 NULL, HFILL }},
8292 { &hf_mms_file,
8293 { "file", "mms.file",
8294 FT_INT32, BASE_DEC, VALS(mms_T_file_vals), 0,
8295 NULL, HFILL }},
8296 { &hf_mms_others,
8297 { "others", "mms.others",
8298 FT_INT32, BASE_DEC, NULL, 0,
8299 "INTEGER", HFILL }},
8300 { &hf_mms_additionalCode,
8301 { "additionalCode", "mms.additionalCode",
8302 FT_INT32, BASE_DEC, NULL, 0,
8303 "INTEGER", HFILL }},
8304 { &hf_mms_additionalDescription,
8305 { "additionalDescription", "mms.additionalDescription",
8306 FT_STRING, BASE_NONE, NULL, 0,
8307 "VisibleString", HFILL }},
8308 { &hf_mms_serviceSpecificInformation,
8309 { "serviceSpecificInformation", "mms.serviceSpecificInformation",
8310 FT_UINT32, BASE_DEC, VALS(mms_T_serviceSpecificInformation_vals), 0,
8311 NULL, HFILL }},
8312 { &hf_mms_obtainFile_02,
8313 { "obtainFile", "mms.obtainFile",
8314 FT_INT32, BASE_DEC, VALS(mms_ObtainFile_Error_vals), 0,
8315 "ObtainFile_Error", HFILL }},
8316 { &hf_mms_start_02,
8317 { "start", "mms.start",
8318 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8319 "Start_Error", HFILL }},
8320 { &hf_mms_stop_02,
8321 { "stop", "mms.stop",
8322 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8323 "Stop_Error", HFILL }},
8324 { &hf_mms_resume_02,
8325 { "resume", "mms.resume",
8326 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8327 "Resume_Error", HFILL }},
8328 { &hf_mms_reset_02,
8329 { "reset", "mms.reset",
8330 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8331 "Reset_Error", HFILL }},
8332 { &hf_mms_deleteVariableAccess_02,
8333 { "deleteVariableAccess", "mms.deleteVariableAccess",
8334 FT_INT32, BASE_DEC, NULL, 0,
8335 "DeleteVariableAccess_Error", HFILL }},
8336 { &hf_mms_deleteNamedVariableList_02,
8337 { "deleteNamedVariableList", "mms.deleteNamedVariableList",
8338 FT_INT32, BASE_DEC, NULL, 0,
8339 "DeleteNamedVariableList_Error", HFILL }},
8340 { &hf_mms_deleteNamedType_02,
8341 { "deleteNamedType", "mms.deleteNamedType",
8342 FT_INT32, BASE_DEC, NULL, 0,
8343 "DeleteNamedType_Error", HFILL }},
8344 { &hf_mms_defineEventEnrollment_Error,
8345 { "defineEventEnrollment-Error", "mms.defineEventEnrollment_Error",
8346 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8347 NULL, HFILL }},
8348 { &hf_mms_fileRename_02,
8349 { "fileRename", "mms.fileRename",
8350 FT_INT32, BASE_DEC, VALS(mms_FileRename_Error_vals), 0,
8351 "FileRename_Error", HFILL }},
8352 { &hf_mms_additionalService,
8353 { "additionalService", "mms.additionalService",
8354 FT_UINT32, BASE_DEC, VALS(mms_AdditionalService_Error_vals), 0,
8355 "AdditionalService_Error", HFILL }},
8356 { &hf_mms_changeAccessControl,
8357 { "changeAccessControl", "mms.changeAccessControl",
8358 FT_INT32, BASE_DEC, NULL, 0,
8359 "ChangeAccessControl_Error", HFILL }},
8360 { &hf_mms_defineEcl,
8361 { "defineEcl", "mms.defineEcl",
8362 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8363 "DefineEventConditionList_Error", HFILL }},
8364 { &hf_mms_addECLReference,
8365 { "addECLReference", "mms.addECLReference",
8366 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8367 "AddEventConditionListReference_Error", HFILL }},
8368 { &hf_mms_removeECLReference,
8369 { "removeECLReference", "mms.removeECLReference",
8370 FT_UINT32, BASE_DEC, VALS(mms_RemoveEventConditionListReference_Error_vals), 0,
8371 "RemoveEventConditionListReference_Error", HFILL }},
8372 { &hf_mms_initiateUC,
8373 { "initiateUC", "mms.initiateUC",
8374 FT_UINT32, BASE_DEC, VALS(mms_InitiateUnitControl_Error_vals), 0,
8375 "InitiateUnitControl_Error", HFILL }},
8376 { &hf_mms_startUC,
8377 { "startUC", "mms.startUC_element",
8378 FT_NONE, BASE_NONE, NULL, 0,
8379 "StartUnitControl_Error", HFILL }},
8380 { &hf_mms_stopUC,
8381 { "stopUC", "mms.stopUC_element",
8382 FT_NONE, BASE_NONE, NULL, 0,
8383 "StopUnitControl_Error", HFILL }},
8384 { &hf_mms_deleteUC,
8385 { "deleteUC", "mms.deleteUC",
8386 FT_UINT32, BASE_DEC, VALS(mms_DeleteUnitControl_Error_vals), 0,
8387 "DeleteUnitControl_Error", HFILL }},
8388 { &hf_mms_loadUCFromFile,
8389 { "loadUCFromFile", "mms.loadUCFromFile",
8390 FT_UINT32, BASE_DEC, VALS(mms_LoadUnitControlFromFile_Error_vals), 0,
8391 "LoadUnitControlFromFile_Error", HFILL }},
8392 { &hf_mms_eventCondition,
8393 { "eventCondition", "mms.eventCondition",
8394 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8395 "ObjectName", HFILL }},
8396 { &hf_mms_eventConditionList,
8397 { "eventConditionList", "mms.eventConditionList",
8398 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8399 "ObjectName", HFILL }},
8400 { &hf_mms_domain,
8401 { "domain", "mms.domain",
8402 FT_STRING, BASE_NONE, NULL, 0,
8403 "Identifier", HFILL }},
8404 { &hf_mms_programInvocation,
8405 { "programInvocation", "mms.programInvocation",
8406 FT_STRING, BASE_NONE, NULL, 0,
8407 "Identifier", HFILL }},
8408 { &hf_mms_programInvocationName,
8409 { "programInvocationName", "mms.programInvocationName",
8410 FT_STRING, BASE_NONE, NULL, 0,
8411 "Identifier", HFILL }},
8412 { &hf_mms_programInvocationState,
8413 { "programInvocationState", "mms.programInvocationState",
8414 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8415 NULL, HFILL }},
8416 { &hf_mms_none,
8417 { "none", "mms.none_element",
8418 FT_NONE, BASE_NONE, NULL, 0,
8419 NULL, HFILL }},
8420 { &hf_mms_rejectReason,
8421 { "rejectReason", "mms.rejectReason",
8422 FT_UINT32, BASE_DEC, VALS(mms_T_rejectReason_vals), 0,
8423 NULL, HFILL }},
8424 { &hf_mms_confirmed_requestPDU,
8425 { "confirmed-requestPDU", "mms.confirmed_requestPDU",
8426 FT_INT32, BASE_DEC, VALS(mms_T_confirmed_requestPDU_vals), 0,
8427 NULL, HFILL }},
8428 { &hf_mms_confirmed_responsePDU,
8429 { "confirmed-responsePDU", "mms.confirmed_responsePDU",
8430 FT_INT32, BASE_DEC, VALS(mms_T_confirmed_responsePDU_vals), 0,
8431 NULL, HFILL }},
8432 { &hf_mms_confirmed_errorPDU,
8433 { "confirmed-errorPDU", "mms.confirmed_errorPDU",
8434 FT_INT32, BASE_DEC, VALS(mms_T_confirmed_errorPDU_vals), 0,
8435 NULL, HFILL }},
8436 { &hf_mms_unconfirmedPDU,
8437 { "unconfirmedPDU", "mms.unconfirmedPDU",
8438 FT_INT32, BASE_DEC, VALS(mms_T_unconfirmedPDU_vals), 0,
8439 NULL, HFILL }},
8440 { &hf_mms_pdu_error,
8441 { "pdu-error", "mms.pdu_error",
8442 FT_INT32, BASE_DEC, VALS(mms_T_pdu_error_vals), 0,
8443 NULL, HFILL }},
8444 { &hf_mms_cancel_requestPDU,
8445 { "cancel-requestPDU", "mms.cancel_requestPDU",
8446 FT_INT32, BASE_DEC, VALS(mms_T_cancel_requestPDU_vals), 0,
8447 NULL, HFILL }},
8448 { &hf_mms_cancel_responsePDU,
8449 { "cancel-responsePDU", "mms.cancel_responsePDU",
8450 FT_INT32, BASE_DEC, VALS(mms_T_cancel_responsePDU_vals), 0,
8451 NULL, HFILL }},
8452 { &hf_mms_cancel_errorPDU,
8453 { "cancel-errorPDU", "mms.cancel_errorPDU",
8454 FT_INT32, BASE_DEC, VALS(mms_T_cancel_errorPDU_vals), 0,
8455 NULL, HFILL }},
8456 { &hf_mms_conclude_requestPDU,
8457 { "conclude-requestPDU", "mms.conclude_requestPDU",
8458 FT_INT32, BASE_DEC, VALS(mms_T_conclude_requestPDU_vals), 0,
8459 NULL, HFILL }},
8460 { &hf_mms_conclude_responsePDU,
8461 { "conclude-responsePDU", "mms.conclude_responsePDU",
8462 FT_INT32, BASE_DEC, VALS(mms_T_conclude_responsePDU_vals), 0,
8463 NULL, HFILL }},
8464 { &hf_mms_conclude_errorPDU,
8465 { "conclude-errorPDU", "mms.conclude_errorPDU",
8466 FT_INT32, BASE_DEC, VALS(mms_T_conclude_errorPDU_vals), 0,
8467 NULL, HFILL }},
8468 { &hf_mms_vmdLogicalStatus,
8469 { "vmdLogicalStatus", "mms.vmdLogicalStatus",
8470 FT_INT32, BASE_DEC, VALS(mms_T_vmdLogicalStatus_vals), 0,
8471 NULL, HFILL }},
8472 { &hf_mms_vmdPhysicalStatus,
8473 { "vmdPhysicalStatus", "mms.vmdPhysicalStatus",
8474 FT_INT32, BASE_DEC, VALS(mms_T_vmdPhysicalStatus_vals), 0,
8475 NULL, HFILL }},
8476 { &hf_mms_localDetail,
8477 { "localDetail", "mms.localDetail",
8478 FT_BYTES, BASE_NONE, NULL, 0,
8479 "BIT_STRING_SIZE_0_128", HFILL }},
8480 { &hf_mms_extendedObjectClass,
8481 { "extendedObjectClass", "mms.extendedObjectClass",
8482 FT_UINT32, BASE_DEC, VALS(mms_T_extendedObjectClass_vals), 0,
8483 NULL, HFILL }},
8484 { &hf_mms_objectClass,
8485 { "objectClass", "mms.objectClass",
8486 FT_INT32, BASE_DEC, VALS(mms_T_objectClass_vals), 0,
8487 NULL, HFILL }},
8488 { &hf_mms_objectScope,
8489 { "objectScope", "mms.objectScope",
8490 FT_UINT32, BASE_DEC, VALS(mms_T_objectScope_vals), 0,
8491 NULL, HFILL }},
8492 { &hf_mms_vmdSpecific,
8493 { "vmdSpecific", "mms.vmdSpecific_element",
8494 FT_NONE, BASE_NONE, NULL, 0,
8495 NULL, HFILL }},
8496 { &hf_mms_domainSpecific,
8497 { "domainSpecific", "mms.domainSpecific",
8498 FT_STRING, BASE_NONE, NULL, 0,
8499 "Identifier", HFILL }},
8500 { &hf_mms_aaSpecific,
8501 { "aaSpecific", "mms.aaSpecific_element",
8502 FT_NONE, BASE_NONE, NULL, 0,
8503 NULL, HFILL }},
8504 { &hf_mms_getNameList_Request_continueAfter,
8505 { "continueAfter", "mms.getNameList-Request_continueAfter",
8506 FT_STRING, BASE_NONE, NULL, 0,
8507 "Identifier", HFILL }},
8508 { &hf_mms_listOfIdentifier,
8509 { "listOfIdentifier", "mms.listOfIdentifier",
8510 FT_UINT32, BASE_DEC, NULL, 0,
8511 "SEQUENCE_OF_Identifier", HFILL }},
8512 { &hf_mms_listOfIdentifier_item,
8513 { "Identifier", "mms.Identifier",
8514 FT_STRING, BASE_NONE, NULL, 0,
8515 NULL, HFILL }},
8516 { &hf_mms_moreFollows,
8517 { "moreFollows", "mms.moreFollows",
8518 FT_BOOLEAN, BASE_NONE, NULL, 0,
8519 "BOOLEAN", HFILL }},
8520 { &hf_mms_vendorName,
8521 { "vendorName", "mms.vendorName",
8522 FT_STRING, BASE_NONE, NULL, 0,
8523 "VisibleString", HFILL }},
8524 { &hf_mms_modelName,
8525 { "modelName", "mms.modelName",
8526 FT_STRING, BASE_NONE, NULL, 0,
8527 "VisibleString", HFILL }},
8528 { &hf_mms_revision,
8529 { "revision", "mms.revision",
8530 FT_STRING, BASE_NONE, NULL, 0,
8531 "VisibleString", HFILL }},
8532 { &hf_mms_listOfAbstractSyntaxes,
8533 { "listOfAbstractSyntaxes", "mms.listOfAbstractSyntaxes",
8534 FT_UINT32, BASE_DEC, NULL, 0,
8535 NULL, HFILL }},
8536 { &hf_mms_listOfAbstractSyntaxes_item,
8537 { "listOfAbstractSyntaxes item", "mms.listOfAbstractSyntaxes_item",
8538 FT_OID, BASE_NONE, NULL, 0,
8539 "OBJECT_IDENTIFIER", HFILL }},
8540 { &hf_mms_extendedObjectClass_01,
8541 { "extendedObjectClass", "mms.extendedObjectClass",
8542 FT_UINT32, BASE_DEC, VALS(mms_T_extendedObjectClass_01_vals), 0,
8543 "T_extendedObjectClass_01", HFILL }},
8544 { &hf_mms_objectClass_01,
8545 { "objectClass", "mms.objectClass",
8546 FT_INT32, BASE_DEC, VALS(mms_T_objectClass_01_vals), 0,
8547 "T_objectClass_01", HFILL }},
8548 { &hf_mms_currentName,
8549 { "currentName", "mms.currentName",
8550 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8551 "ObjectName", HFILL }},
8552 { &hf_mms_newIdentifier,
8553 { "newIdentifier", "mms.newIdentifier",
8554 FT_STRING, BASE_NONE, NULL, 0,
8555 "Identifier", HFILL }},
8556 { &hf_mms_getCapabilityList_Request_continueAfter,
8557 { "continueAfter", "mms.getCapabilityList-Request_continueAfter",
8558 FT_STRING, BASE_NONE, NULL, 0,
8559 "VisibleString", HFILL }},
8560 { &hf_mms_listOfCapabilities,
8561 { "listOfCapabilities", "mms.listOfCapabilities",
8562 FT_UINT32, BASE_DEC, NULL, 0,
8563 NULL, HFILL }},
8564 { &hf_mms_listOfCapabilities_item,
8565 { "listOfCapabilities item", "mms.listOfCapabilities_item",
8566 FT_STRING, BASE_NONE, NULL, 0,
8567 "VisibleString", HFILL }},
8568 { &hf_mms_domainName,
8569 { "domainName", "mms.domainName",
8570 FT_STRING, BASE_NONE, NULL, 0,
8571 "Identifier", HFILL }},
8572 { &hf_mms_listOfCapabilities_01,
8573 { "listOfCapabilities", "mms.listOfCapabilities",
8574 FT_UINT32, BASE_DEC, NULL, 0,
8575 "T_listOfCapabilities_01", HFILL }},
8576 { &hf_mms_sharable,
8577 { "sharable", "mms.sharable",
8578 FT_BOOLEAN, BASE_NONE, NULL, 0,
8579 "BOOLEAN", HFILL }},
8580 { &hf_mms_loadData,
8581 { "loadData", "mms.loadData",
8582 FT_UINT32, BASE_DEC, VALS(mms_T_loadData_vals), 0,
8583 NULL, HFILL }},
8584 { &hf_mms_non_coded,
8585 { "non-coded", "mms.non_coded",
8586 FT_BYTES, BASE_NONE, NULL, 0,
8587 "OCTET_STRING", HFILL }},
8588 { &hf_mms_coded,
8589 { "coded", "mms.coded_element",
8590 FT_NONE, BASE_NONE, NULL, 0,
8591 "EXTERNALt", HFILL }},
8592 { &hf_mms_discard,
8593 { "discard", "mms.discard_element",
8594 FT_NONE, BASE_NONE, NULL, 0,
8595 "ServiceError", HFILL }},
8596 { &hf_mms_ulsmID,
8597 { "ulsmID", "mms.ulsmID",
8598 FT_INT32, BASE_DEC, NULL, 0,
8599 "Integer32", HFILL }},
8600 { &hf_mms_listOfCapabilities_02,
8601 { "listOfCapabilities", "mms.listOfCapabilities",
8602 FT_UINT32, BASE_DEC, NULL, 0,
8603 "T_listOfCapabilities_02", HFILL }},
8604 { &hf_mms_loadData_01,
8605 { "loadData", "mms.loadData",
8606 FT_UINT32, BASE_DEC, VALS(mms_T_loadData_01_vals), 0,
8607 "T_loadData_01", HFILL }},
8608 { &hf_mms_listOfCapabilities_03,
8609 { "listOfCapabilities", "mms.listOfCapabilities",
8610 FT_UINT32, BASE_DEC, NULL, 0,
8611 "T_listOfCapabilities_03", HFILL }},
8612 { &hf_mms_fileName,
8613 { "fileName", "mms.fileName",
8614 FT_UINT32, BASE_DEC, NULL, 0,
8615 NULL, HFILL }},
8616 { &hf_mms_listOfCapabilities_04,
8617 { "listOfCapabilities", "mms.listOfCapabilities",
8618 FT_UINT32, BASE_DEC, NULL, 0,
8619 "T_listOfCapabilities_04", HFILL }},
8620 { &hf_mms_thirdParty,
8621 { "thirdParty", "mms.thirdParty_element",
8622 FT_NONE, BASE_NONE, NULL, 0,
8623 "ApplicationReference", HFILL }},
8624 { &hf_mms_filenName,
8625 { "filenName", "mms.filenName",
8626 FT_UINT32, BASE_DEC, NULL, 0,
8627 "FileName", HFILL }},
8628 { &hf_mms_listOfCapabilities_05,
8629 { "listOfCapabilities", "mms.listOfCapabilities",
8630 FT_UINT32, BASE_DEC, NULL, 0,
8631 "T_listOfCapabilities_05", HFILL }},
8632 { &hf_mms_getDomainAttributes_Response_state,
8633 { "state", "mms.getDomainAttributes-Response_state",
8634 FT_INT32, BASE_DEC, VALS(mms_DomainState_vals), 0,
8635 "DomainState", HFILL }},
8636 { &hf_mms_mmsDeletable,
8637 { "mmsDeletable", "mms.mmsDeletable",
8638 FT_BOOLEAN, BASE_NONE, NULL, 0,
8639 "BOOLEAN", HFILL }},
8640 { &hf_mms_listOfProgramInvocations,
8641 { "listOfProgramInvocations", "mms.listOfProgramInvocations",
8642 FT_UINT32, BASE_DEC, NULL, 0,
8643 "SEQUENCE_OF_Identifier", HFILL }},
8644 { &hf_mms_listOfProgramInvocations_item,
8645 { "Identifier", "mms.Identifier",
8646 FT_STRING, BASE_NONE, NULL, 0,
8647 NULL, HFILL }},
8648 { &hf_mms_uploadInProgress,
8649 { "uploadInProgress", "mms.uploadInProgress",
8650 FT_INT32, BASE_DEC, NULL, 0,
8651 "Integer8", HFILL }},
8652 { &hf_mms_listOfDomainName,
8653 { "listOfDomainName", "mms.listOfDomainName",
8654 FT_UINT32, BASE_DEC, NULL, 0,
8655 "SEQUENCE_OF_Identifier", HFILL }},
8656 { &hf_mms_listOfDomainName_item,
8657 { "Identifier", "mms.Identifier",
8658 FT_STRING, BASE_NONE, NULL, 0,
8659 NULL, HFILL }},
8660 { &hf_mms_reusable,
8661 { "reusable", "mms.reusable",
8662 FT_BOOLEAN, BASE_NONE, NULL, 0,
8663 "BOOLEAN", HFILL }},
8664 { &hf_mms_monitorType,
8665 { "monitorType", "mms.monitorType",
8666 FT_BOOLEAN, BASE_NONE, NULL, 0,
8667 "BOOLEAN", HFILL }},
8668 { &hf_mms_executionArgument,
8669 { "executionArgument", "mms.executionArgument",
8670 FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_vals), 0,
8671 NULL, HFILL }},
8672 { &hf_mms_simpleString,
8673 { "simpleString", "mms.simpleString",
8674 FT_STRING, BASE_NONE, NULL, 0,
8675 "VisibleString", HFILL }},
8676 { &hf_mms_encodedString,
8677 { "encodedString", "mms.encodedString_element",
8678 FT_NONE, BASE_NONE, NULL, 0,
8679 "EXTERNALt", HFILL }},
8680 { &hf_mms_executionArgument_01,
8681 { "executionArgument", "mms.executionArgument",
8682 FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_01_vals), 0,
8683 "T_executionArgument_01", HFILL }},
8684 { &hf_mms_getProgramInvocationAttributes_Response_state,
8685 { "state", "mms.getProgramInvocationAttributes-Response_state",
8686 FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0,
8687 "ProgramInvocationState", HFILL }},
8688 { &hf_mms_listOfDomainNames,
8689 { "listOfDomainNames", "mms.listOfDomainNames",
8690 FT_UINT32, BASE_DEC, NULL, 0,
8691 "SEQUENCE_OF_Identifier", HFILL }},
8692 { &hf_mms_listOfDomainNames_item,
8693 { "Identifier", "mms.Identifier",
8694 FT_STRING, BASE_NONE, NULL, 0,
8695 NULL, HFILL }},
8696 { &hf_mms_monitor,
8697 { "monitor", "mms.monitor",
8698 FT_BOOLEAN, BASE_NONE, NULL, 0,
8699 "BOOLEAN", HFILL }},
8700 { &hf_mms_startArgument,
8701 { "startArgument", "mms.startArgument",
8702 FT_STRING, BASE_NONE, NULL, 0,
8703 "VisibleString", HFILL }},
8704 { &hf_mms_executionArgument_02,
8705 { "executionArgument", "mms.executionArgument",
8706 FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_02_vals), 0,
8707 "T_executionArgument_02", HFILL }},
8708 { &hf_mms_typeName,
8709 { "typeName", "mms.typeName",
8710 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8711 "ObjectName", HFILL }},
8712 { &hf_mms_array,
8713 { "array", "mms.array_element",
8714 FT_NONE, BASE_NONE, NULL, 0,
8715 NULL, HFILL }},
8716 { &hf_mms_packed,
8717 { "packed", "mms.packed",
8718 FT_BOOLEAN, BASE_NONE, NULL, 0,
8719 "BOOLEAN", HFILL }},
8720 { &hf_mms_numberOfElements,
8721 { "numberOfElements", "mms.numberOfElements",
8722 FT_INT32, BASE_DEC, NULL, 0,
8723 "Unsigned32", HFILL }},
8724 { &hf_mms_elementType,
8725 { "elementType", "mms.elementType",
8726 FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0,
8727 "TypeSpecification", HFILL }},
8728 { &hf_mms_structure,
8729 { "structure", "mms.structure_element",
8730 FT_NONE, BASE_NONE, NULL, 0,
8731 NULL, HFILL }},
8732 { &hf_mms_components,
8733 { "components", "mms.components",
8734 FT_UINT32, BASE_DEC, NULL, 0,
8735 NULL, HFILL }},
8736 { &hf_mms_components_item,
8737 { "components item", "mms.components_item_element",
8738 FT_NONE, BASE_NONE, NULL, 0,
8739 NULL, HFILL }},
8740 { &hf_mms_componentName,
8741 { "componentName", "mms.componentName",
8742 FT_STRING, BASE_NONE, NULL, 0,
8743 "Identifier", HFILL }},
8744 { &hf_mms_componentType,
8745 { "componentType", "mms.componentType",
8746 FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0,
8747 "TypeSpecification", HFILL }},
8748 { &hf_mms_boolean,
8749 { "boolean", "mms.boolean_element",
8750 FT_NONE, BASE_NONE, NULL, 0,
8751 NULL, HFILL }},
8752 { &hf_mms_typeSpecification_bit_string,
8753 { "bit-string", "mms.typeSpecification_bit-string",
8754 FT_INT32, BASE_DEC, NULL, 0,
8755 "Integer32", HFILL }},
8756 { &hf_mms_integer,
8757 { "integer", "mms.integer",
8758 FT_INT32, BASE_DEC, NULL, 0,
8759 "Unsigned8", HFILL }},
8760 { &hf_mms_unsigned,
8761 { "unsigned", "mms.unsigned",
8762 FT_INT32, BASE_DEC, NULL, 0,
8763 "Unsigned8", HFILL }},
8764 { &hf_mms_typeSpecification_octet_string,
8765 { "octet-string", "mms.typeSpecification.octet-string",
8766 FT_INT32, BASE_DEC, NULL, 0,
8767 "Integer32", HFILL }},
8768 { &hf_mms_typeSpecification_visible_string,
8769 { "visible-string", "mms.typeSpecification.visible-string",
8770 FT_INT32, BASE_DEC, NULL, 0,
8771 "Integer32", HFILL }},
8772 { &hf_mms_generalized_time,
8773 { "generalized-time", "mms.generalized_time_element",
8774 FT_NONE, BASE_NONE, NULL, 0,
8775 NULL, HFILL }},
8776 { &hf_mms_typeSpecification_binary_time,
8777 { "binary-time", "mms.typeSpecification.binary-time",
8778 FT_BOOLEAN, BASE_NONE, NULL, 0,
8779 "BOOLEAN", HFILL }},
8780 { &hf_mms_bcd,
8781 { "bcd", "mms.bcd",
8782 FT_INT32, BASE_DEC, NULL, 0,
8783 "Unsigned8", HFILL }},
8784 { &hf_mms_objId,
8785 { "objId", "mms.objId_element",
8786 FT_NONE, BASE_NONE, NULL, 0,
8787 NULL, HFILL }},
8788 { &hf_mms_AlternateAccess_item,
8789 { "AlternateAccess item", "mms.AlternateAccess_item",
8790 FT_UINT32, BASE_DEC, VALS(mms_AlternateAccess_item_vals), 0,
8791 NULL, HFILL }},
8792 { &hf_mms_unnamed,
8793 { "unnamed", "mms.unnamed",
8794 FT_UINT32, BASE_DEC, VALS(mms_AlternateAccessSelection_vals), 0,
8795 "AlternateAccessSelection", HFILL }},
8796 { &hf_mms_named,
8797 { "named", "mms.named_element",
8798 FT_NONE, BASE_NONE, NULL, 0,
8799 NULL, HFILL }},
8800 { &hf_mms_accesst,
8801 { "accesst", "mms.accesst",
8802 FT_UINT32, BASE_DEC, VALS(mms_AlternateAccessSelection_vals), 0,
8803 "AlternateAccessSelection", HFILL }},
8804 { &hf_mms_selectAlternateAccess,
8805 { "selectAlternateAccess", "mms.selectAlternateAccess_element",
8806 FT_NONE, BASE_NONE, NULL, 0,
8807 NULL, HFILL }},
8808 { &hf_mms_accessSelection,
8809 { "accessSelection", "mms.accessSelection",
8810 FT_UINT32, BASE_DEC, VALS(mms_T_accessSelection_vals), 0,
8811 NULL, HFILL }},
8812 { &hf_mms_component,
8813 { "component", "mms.component",
8814 FT_STRING, BASE_NONE, NULL, 0,
8815 "Identifier", HFILL }},
8816 { &hf_mms_index,
8817 { "index", "mms.index",
8818 FT_INT32, BASE_DEC, NULL, 0,
8819 "Unsigned32", HFILL }},
8820 { &hf_mms_indexRange,
8821 { "indexRange", "mms.indexRange_element",
8822 FT_NONE, BASE_NONE, NULL, 0,
8823 NULL, HFILL }},
8824 { &hf_mms_lowIndex,
8825 { "lowIndex", "mms.lowIndex",
8826 FT_INT32, BASE_DEC, NULL, 0,
8827 "Unsigned32", HFILL }},
8828 { &hf_mms_allElements,
8829 { "allElements", "mms.allElements_element",
8830 FT_NONE, BASE_NONE, NULL, 0,
8831 NULL, HFILL }},
8832 { &hf_mms_alternateAccess,
8833 { "alternateAccess", "mms.alternateAccess",
8834 FT_UINT32, BASE_DEC, NULL, 0,
8835 NULL, HFILL }},
8836 { &hf_mms_selectAccess,
8837 { "selectAccess", "mms.selectAccess",
8838 FT_UINT32, BASE_DEC, VALS(mms_T_selectAccess_vals), 0,
8839 NULL, HFILL }},
8840 { &hf_mms_indexRange_01,
8841 { "indexRange", "mms.indexRange_element",
8842 FT_NONE, BASE_NONE, NULL, 0,
8843 "T_indexRange_01", HFILL }},
8844 { &hf_mms_nmberOfElements,
8845 { "nmberOfElements", "mms.nmberOfElements",
8846 FT_INT32, BASE_DEC, NULL, 0,
8847 "Unsigned32", HFILL }},
8848 { &hf_mms_specificationWithResult,
8849 { "specificationWithResult", "mms.specificationWithResult",
8850 FT_BOOLEAN, BASE_NONE, NULL, 0,
8851 "BOOLEAN", HFILL }},
8852 { &hf_mms_variableAccessSpecificatn,
8853 { "variableAccessSpecificatn", "mms.variableAccessSpecificatn",
8854 FT_UINT32, BASE_DEC, VALS(mms_VariableAccessSpecification_vals), 0,
8855 "VariableAccessSpecification", HFILL }},
8856 { &hf_mms_listOfAccessResult,
8857 { "listOfAccessResult", "mms.listOfAccessResult",
8858 FT_UINT32, BASE_DEC, NULL, 0,
8859 "SEQUENCE_OF_AccessResult", HFILL }},
8860 { &hf_mms_listOfAccessResult_item,
8861 { "AccessResult", "mms.AccessResult",
8862 FT_UINT32, BASE_DEC, VALS(mms_AccessResult_vals), 0,
8863 NULL, HFILL }},
8864 { &hf_mms_listOfData,
8865 { "listOfData", "mms.listOfData",
8866 FT_UINT32, BASE_DEC, NULL, 0,
8867 "SEQUENCE_OF_Data", HFILL }},
8868 { &hf_mms_listOfData_item,
8869 { "Data", "mms.Data",
8870 FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0,
8871 NULL, HFILL }},
8872 { &hf_mms_Write_Response_item,
8873 { "Write-Response item", "mms.Write_Response_item",
8874 FT_UINT32, BASE_DEC, VALS(mms_Write_Response_item_vals), 0,
8875 NULL, HFILL }},
8876 { &hf_mms_failure,
8877 { "failure", "mms.failure",
8878 FT_INT32, BASE_DEC, VALS(mms_DataAccessError_vals), 0,
8879 "DataAccessError", HFILL }},
8880 { &hf_mms_success,
8881 { "success", "mms.success_element",
8882 FT_NONE, BASE_NONE, NULL, 0,
8883 NULL, HFILL }},
8884 { &hf_mms_variableAccessSpecification,
8885 { "variableAccessSpecification", "mms.variableAccessSpecification",
8886 FT_UINT32, BASE_DEC, VALS(mms_VariableAccessSpecification_vals), 0,
8887 NULL, HFILL }},
8888 { &hf_mms_name,
8889 { "name", "mms.name",
8890 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8891 "ObjectName", HFILL }},
8892 { &hf_mms_address,
8893 { "address", "mms.address",
8894 FT_UINT32, BASE_DEC, VALS(mms_Address_vals), 0,
8895 NULL, HFILL }},
8896 { &hf_mms_typeSpecification,
8897 { "typeSpecification", "mms.typeSpecification",
8898 FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0,
8899 NULL, HFILL }},
8900 { &hf_mms_variableName,
8901 { "variableName", "mms.variableName",
8902 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8903 "ObjectName", HFILL }},
8904 { &hf_mms_scatteredAccessName,
8905 { "scatteredAccessName", "mms.scatteredAccessName",
8906 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8907 "ObjectName", HFILL }},
8908 { &hf_mms_scatteredAccessDescription,
8909 { "scatteredAccessDescription", "mms.scatteredAccessDescription",
8910 FT_UINT32, BASE_DEC, NULL, 0,
8911 NULL, HFILL }},
8912 { &hf_mms_scopeOfDelete,
8913 { "scopeOfDelete", "mms.scopeOfDelete",
8914 FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_vals), 0,
8915 NULL, HFILL }},
8916 { &hf_mms_listOfName,
8917 { "listOfName", "mms.listOfName",
8918 FT_UINT32, BASE_DEC, NULL, 0,
8919 "SEQUENCE_OF_ObjectName", HFILL }},
8920 { &hf_mms_listOfName_item,
8921 { "ObjectName", "mms.ObjectName",
8922 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8923 NULL, HFILL }},
8924 { &hf_mms_numberMatched,
8925 { "numberMatched", "mms.numberMatched",
8926 FT_INT32, BASE_DEC, NULL, 0,
8927 "Unsigned32", HFILL }},
8928 { &hf_mms_numberDeleted,
8929 { "numberDeleted", "mms.numberDeleted",
8930 FT_INT32, BASE_DEC, NULL, 0,
8931 "Unsigned32", HFILL }},
8932 { &hf_mms_variableListName,
8933 { "variableListName", "mms.variableListName",
8934 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8935 "ObjectName", HFILL }},
8936 { &hf_mms_listOfVariable,
8937 { "listOfVariable", "mms.listOfVariable",
8938 FT_UINT32, BASE_DEC, NULL, 0,
8939 NULL, HFILL }},
8940 { &hf_mms_listOfVariable_item,
8941 { "listOfVariable item", "mms.listOfVariable_item_element",
8942 FT_NONE, BASE_NONE, NULL, 0,
8943 NULL, HFILL }},
8944 { &hf_mms_variableSpecification,
8945 { "variableSpecification", "mms.variableSpecification",
8946 FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0,
8947 NULL, HFILL }},
8948 { &hf_mms_listOfVariable_01,
8949 { "listOfVariable", "mms.listOfVariable",
8950 FT_UINT32, BASE_DEC, NULL, 0,
8951 "T_listOfVariable_01", HFILL }},
8952 { &hf_mms_listOfVariable_item_01,
8953 { "listOfVariable item", "mms.listOfVariable_item_element",
8954 FT_NONE, BASE_NONE, NULL, 0,
8955 "T_listOfVariable_item_01", HFILL }},
8956 { &hf_mms_scopeOfDelete_01,
8957 { "scopeOfDelete", "mms.scopeOfDelete",
8958 FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_01_vals), 0,
8959 "T_scopeOfDelete_01", HFILL }},
8960 { &hf_mms_listOfVariableListName,
8961 { "listOfVariableListName", "mms.listOfVariableListName",
8962 FT_UINT32, BASE_DEC, NULL, 0,
8963 "SEQUENCE_OF_ObjectName", HFILL }},
8964 { &hf_mms_listOfVariableListName_item,
8965 { "ObjectName", "mms.ObjectName",
8966 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8967 NULL, HFILL }},
8968 { &hf_mms_scopeOfDelete_02,
8969 { "scopeOfDelete", "mms.scopeOfDelete",
8970 FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_02_vals), 0,
8971 "T_scopeOfDelete_02", HFILL }},
8972 { &hf_mms_listOfTypeName,
8973 { "listOfTypeName", "mms.listOfTypeName",
8974 FT_UINT32, BASE_DEC, NULL, 0,
8975 "SEQUENCE_OF_ObjectName", HFILL }},
8976 { &hf_mms_listOfTypeName_item,
8977 { "ObjectName", "mms.ObjectName",
8978 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
8979 NULL, HFILL }},
8980 { &hf_mms_success_01,
8981 { "success", "mms.success",
8982 FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0,
8983 "Data", HFILL }},
8984 { &hf_mms_array_01,
8985 { "array", "mms.array",
8986 FT_UINT32, BASE_DEC, NULL, 0,
8987 "SEQUENCE_OF_Data", HFILL }},
8988 { &hf_mms_array_item,
8989 { "Data", "mms.Data",
8990 FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0,
8991 NULL, HFILL }},
8992 { &hf_mms_structure_01,
8993 { "structure", "mms.structure",
8994 FT_UINT32, BASE_DEC, NULL, 0,
8995 "SEQUENCE_OF_Data", HFILL }},
8996 { &hf_mms_structure_item,
8997 { "Data", "mms.Data",
8998 FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0,
8999 NULL, HFILL }},
9000 { &hf_mms_boolean_01,
9001 { "boolean", "mms.boolean",
9002 FT_BOOLEAN, BASE_NONE, NULL, 0,
9003 NULL, HFILL }},
9004 { &hf_mms_data_bit_string,
9005 { "bit-string", "mms.data_bit-string",
9006 FT_BYTES, BASE_NONE, NULL, 0,
9007 NULL, HFILL }},
9008 { &hf_mms_integer_01,
9009 { "integer", "mms.integer",
9010 FT_INT32, BASE_DEC, NULL, 0,
9011 NULL, HFILL }},
9012 { &hf_mms_unsigned_01,
9013 { "unsigned", "mms.unsigned",
9014 FT_INT32, BASE_DEC, NULL, 0,
9015 "INTEGER", HFILL }},
9016 { &hf_mms_floating_point,
9017 { "floating-point", "mms.floating_point",
9018 FT_BYTES, BASE_NONE, NULL, 0,
9019 "FloatingPoint", HFILL }},
9020 { &hf_mms_data_octet_string,
9021 { "octet-string", "mms.data.octet-string",
9022 FT_BYTES, BASE_NONE, NULL, 0,
9023 NULL, HFILL }},
9024 { &hf_mms_data_visible_string,
9025 { "visible-string", "mms.data.visible-string",
9026 FT_STRING, BASE_NONE, NULL, 0,
9027 "VisibleString", HFILL }},
9028 { &hf_mms_data_binary_time,
9029 { "binary-time", "mms.data.binary-time",
9030 FT_STRING, BASE_NONE, NULL, 0,
9031 "TimeOfDay", HFILL }},
9032 { &hf_mms_bcd_01,
9033 { "bcd", "mms.bcd",
9034 FT_INT32, BASE_DEC, NULL, 0,
9035 "INTEGER", HFILL }},
9036 { &hf_mms_booleanArray,
9037 { "booleanArray", "mms.booleanArray",
9038 FT_BYTES, BASE_NONE, NULL, 0,
9039 "BIT_STRING", HFILL }},
9040 { &hf_mms_objId_01,
9041 { "objId", "mms.objId",
9042 FT_OID, BASE_NONE, NULL, 0,
9043 "OBJECT_IDENTIFIER", HFILL }},
9044 { &hf_mms_mMSString,
9045 { "mMSString", "mms.mMSString",
9046 FT_STRING, BASE_NONE, NULL, 0,
9047 NULL, HFILL }},
9048 { &hf_mms_utc_time,
9049 { "utc-time", "mms.utc_time",
9050 FT_STRING, BASE_NONE, NULL, 0,
9051 "UtcTime", HFILL }},
9052 { &hf_mms_listOfVariable_02,
9053 { "listOfVariable", "mms.listOfVariable",
9054 FT_UINT32, BASE_DEC, NULL, 0,
9055 "T_listOfVariable_02", HFILL }},
9056 { &hf_mms_listOfVariable_item_02,
9057 { "listOfVariable item", "mms.listOfVariable_item_element",
9058 FT_NONE, BASE_NONE, NULL, 0,
9059 "T_listOfVariable_item_02", HFILL }},
9060 { &hf_mms_ScatteredAccessDescription_item,
9061 { "ScatteredAccessDescription item", "mms.ScatteredAccessDescription_item_element",
9062 FT_NONE, BASE_NONE, NULL, 0,
9063 NULL, HFILL }},
9064 { &hf_mms_variableDescription,
9065 { "variableDescription", "mms.variableDescription_element",
9066 FT_NONE, BASE_NONE, NULL, 0,
9067 NULL, HFILL }},
9068 { &hf_mms_invalidated,
9069 { "invalidated", "mms.invalidated_element",
9070 FT_NONE, BASE_NONE, NULL, 0,
9071 NULL, HFILL }},
9072 { &hf_mms_numericAddress,
9073 { "numericAddress", "mms.numericAddress",
9074 FT_INT32, BASE_DEC, NULL, 0,
9075 "Unsigned32", HFILL }},
9076 { &hf_mms_symbolicAddress,
9077 { "symbolicAddress", "mms.symbolicAddress",
9078 FT_STRING, BASE_NONE, NULL, 0,
9079 "VisibleString", HFILL }},
9080 { &hf_mms_unconstrainedAddress,
9081 { "unconstrainedAddress", "mms.unconstrainedAddress",
9082 FT_BYTES, BASE_NONE, NULL, 0,
9083 "OCTET_STRING", HFILL }},
9084 { &hf_mms_semaphoreName,
9085 { "semaphoreName", "mms.semaphoreName",
9086 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9087 "ObjectName", HFILL }},
9088 { &hf_mms_namedToken,
9089 { "namedToken", "mms.namedToken",
9090 FT_STRING, BASE_NONE, NULL, 0,
9091 "Identifier", HFILL }},
9092 { &hf_mms_priority,
9093 { "priority", "mms.priority",
9094 FT_INT32, BASE_DEC, NULL, 0,
9095 NULL, HFILL }},
9096 { &hf_mms_acceptableDelay,
9097 { "acceptableDelay", "mms.acceptableDelay",
9098 FT_INT32, BASE_DEC, NULL, 0,
9099 "Unsigned32", HFILL }},
9100 { &hf_mms_controlTimeOut,
9101 { "controlTimeOut", "mms.controlTimeOut",
9102 FT_INT32, BASE_DEC, NULL, 0,
9103 "Unsigned32", HFILL }},
9104 { &hf_mms_abortOnTimeOut,
9105 { "abortOnTimeOut", "mms.abortOnTimeOut",
9106 FT_BOOLEAN, BASE_NONE, NULL, 0,
9107 "BOOLEAN", HFILL }},
9108 { &hf_mms_relinquishIfConnectionLost,
9109 { "relinquishIfConnectionLost", "mms.relinquishIfConnectionLost",
9110 FT_BOOLEAN, BASE_NONE, NULL, 0,
9111 "BOOLEAN", HFILL }},
9112 { &hf_mms_applicationToPreempt,
9113 { "applicationToPreempt", "mms.applicationToPreempt_element",
9114 FT_NONE, BASE_NONE, NULL, 0,
9115 "ApplicationReference", HFILL }},
9116 { &hf_mms_noResult,
9117 { "noResult", "mms.noResult_element",
9118 FT_NONE, BASE_NONE, NULL, 0,
9119 NULL, HFILL }},
9120 { &hf_mms_numbersOfTokens,
9121 { "numbersOfTokens", "mms.numbersOfTokens",
9122 FT_INT32, BASE_DEC, NULL, 0,
9123 "Unsigned16", HFILL }},
9124 { &hf_mms_class,
9125 { "class", "mms.class",
9126 FT_INT32, BASE_DEC, VALS(mms_T_class_vals), 0,
9127 NULL, HFILL }},
9128 { &hf_mms_numberOfTokens,
9129 { "numberOfTokens", "mms.numberOfTokens",
9130 FT_INT32, BASE_DEC, NULL, 0,
9131 "Unsigned16", HFILL }},
9132 { &hf_mms_numberOfOwnedTokens,
9133 { "numberOfOwnedTokens", "mms.numberOfOwnedTokens",
9134 FT_INT32, BASE_DEC, NULL, 0,
9135 "Unsigned16", HFILL }},
9136 { &hf_mms_numberOfHungTokens,
9137 { "numberOfHungTokens", "mms.numberOfHungTokens",
9138 FT_INT32, BASE_DEC, NULL, 0,
9139 "Unsigned16", HFILL }},
9140 { &hf_mms_nameToStartAfter,
9141 { "nameToStartAfter", "mms.nameToStartAfter",
9142 FT_STRING, BASE_NONE, NULL, 0,
9143 "Identifier", HFILL }},
9144 { &hf_mms_listOfNamedTokens,
9145 { "listOfNamedTokens", "mms.listOfNamedTokens",
9146 FT_UINT32, BASE_DEC, NULL, 0,
9147 NULL, HFILL }},
9148 { &hf_mms_listOfNamedTokens_item,
9149 { "listOfNamedTokens item", "mms.listOfNamedTokens_item",
9150 FT_UINT32, BASE_DEC, VALS(mms_T_listOfNamedTokens_item_vals), 0,
9151 NULL, HFILL }},
9152 { &hf_mms_freeNamedToken,
9153 { "freeNamedToken", "mms.freeNamedToken",
9154 FT_STRING, BASE_NONE, NULL, 0,
9155 "Identifier", HFILL }},
9156 { &hf_mms_ownedNamedToken,
9157 { "ownedNamedToken", "mms.ownedNamedToken",
9158 FT_STRING, BASE_NONE, NULL, 0,
9159 "Identifier", HFILL }},
9160 { &hf_mms_hungNamedToken,
9161 { "hungNamedToken", "mms.hungNamedToken",
9162 FT_STRING, BASE_NONE, NULL, 0,
9163 "Identifier", HFILL }},
9164 { &hf_mms_reportSemaphoreEntryStatus_Request_state,
9165 { "state", "mms.reportSemaphoreEntryStatus-Request_state",
9166 FT_INT32, BASE_DEC, VALS(mms_T_reportSemaphoreEntryStatus_Request_state_vals), 0,
9167 "T_reportSemaphoreEntryStatus_Request_state", HFILL }},
9168 { &hf_mms_entryIdToStartAfter,
9169 { "entryIdToStartAfter", "mms.entryIdToStartAfter",
9170 FT_BYTES, BASE_NONE, NULL, 0,
9171 "OCTET_STRING", HFILL }},
9172 { &hf_mms_listOfSemaphoreEntry,
9173 { "listOfSemaphoreEntry", "mms.listOfSemaphoreEntry",
9174 FT_UINT32, BASE_DEC, NULL, 0,
9175 "SEQUENCE_OF_SemaphoreEntry", HFILL }},
9176 { &hf_mms_listOfSemaphoreEntry_item,
9177 { "SemaphoreEntry", "mms.SemaphoreEntry_element",
9178 FT_NONE, BASE_NONE, NULL, 0,
9179 NULL, HFILL }},
9180 { &hf_mms_entryId,
9181 { "entryId", "mms.entryId",
9182 FT_BYTES, BASE_NONE, NULL, 0,
9183 "OCTET_STRING", HFILL }},
9184 { &hf_mms_entryClass,
9185 { "entryClass", "mms.entryClass",
9186 FT_INT32, BASE_DEC, VALS(mms_T_entryClass_vals), 0,
9187 NULL, HFILL }},
9188 { &hf_mms_applicationReference,
9189 { "applicationReference", "mms.applicationReference_element",
9190 FT_NONE, BASE_NONE, NULL, 0,
9191 NULL, HFILL }},
9192 { &hf_mms_remainingTimeOut,
9193 { "remainingTimeOut", "mms.remainingTimeOut",
9194 FT_INT32, BASE_DEC, NULL, 0,
9195 "Unsigned32", HFILL }},
9196 { &hf_mms_operatorStationName,
9197 { "operatorStationName", "mms.operatorStationName",
9198 FT_STRING, BASE_NONE, NULL, 0,
9199 "Identifier", HFILL }},
9200 { &hf_mms_echo,
9201 { "echo", "mms.echo",
9202 FT_BOOLEAN, BASE_NONE, NULL, 0,
9203 "BOOLEAN", HFILL }},
9204 { &hf_mms_listOfPromptData,
9205 { "listOfPromptData", "mms.listOfPromptData",
9206 FT_UINT32, BASE_DEC, NULL, 0,
9207 NULL, HFILL }},
9208 { &hf_mms_listOfPromptData_item,
9209 { "listOfPromptData item", "mms.listOfPromptData_item",
9210 FT_STRING, BASE_NONE, NULL, 0,
9211 "VisibleString", HFILL }},
9212 { &hf_mms_inputTimeOut,
9213 { "inputTimeOut", "mms.inputTimeOut",
9214 FT_INT32, BASE_DEC, NULL, 0,
9215 "Unsigned32", HFILL }},
9216 { &hf_mms_listOfOutputData,
9217 { "listOfOutputData", "mms.listOfOutputData",
9218 FT_UINT32, BASE_DEC, NULL, 0,
9219 NULL, HFILL }},
9220 { &hf_mms_listOfOutputData_item,
9221 { "listOfOutputData item", "mms.listOfOutputData_item",
9222 FT_STRING, BASE_NONE, NULL, 0,
9223 "VisibleString", HFILL }},
9224 { &hf_mms_eventConditionName,
9225 { "eventConditionName", "mms.eventConditionName",
9226 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9227 "ObjectName", HFILL }},
9228 { &hf_mms_class_01,
9229 { "class", "mms.class",
9230 FT_INT32, BASE_DEC, VALS(mms_EC_Class_vals), 0,
9231 "EC_Class", HFILL }},
9232 { &hf_mms_prio_rity,
9233 { "prio-rity", "mms.prio_rity",
9234 FT_INT32, BASE_DEC, NULL, 0,
9235 "Priority", HFILL }},
9236 { &hf_mms_severity,
9237 { "severity", "mms.severity",
9238 FT_INT32, BASE_DEC, NULL, 0,
9239 "Unsigned8", HFILL }},
9240 { &hf_mms_alarmSummaryReports,
9241 { "alarmSummaryReports", "mms.alarmSummaryReports",
9242 FT_BOOLEAN, BASE_NONE, NULL, 0,
9243 "BOOLEAN", HFILL }},
9244 { &hf_mms_monitoredVariable,
9245 { "monitoredVariable", "mms.monitoredVariable",
9246 FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0,
9247 "VariableSpecification", HFILL }},
9248 { &hf_mms_evaluationInterval,
9249 { "evaluationInterval", "mms.evaluationInterval",
9250 FT_INT32, BASE_DEC, NULL, 0,
9251 "Unsigned32", HFILL }},
9252 { &hf_mms_specific,
9253 { "specific", "mms.specific",
9254 FT_UINT32, BASE_DEC, NULL, 0,
9255 "SEQUENCE_OF_ObjectName", HFILL }},
9256 { &hf_mms_specific_item,
9257 { "ObjectName", "mms.ObjectName",
9258 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9259 NULL, HFILL }},
9260 { &hf_mms_aa_specific_01,
9261 { "aa-specific", "mms.aa_specific_element",
9262 FT_NONE, BASE_NONE, NULL, 0,
9263 NULL, HFILL }},
9264 { &hf_mms_vmd,
9265 { "vmd", "mms.vmd_element",
9266 FT_NONE, BASE_NONE, NULL, 0,
9267 NULL, HFILL }},
9268 { &hf_mms_monitoredVariable_01,
9269 { "monitoredVariable", "mms.monitoredVariable",
9270 FT_UINT32, BASE_DEC, VALS(mms_T_monitoredVariable_vals), 0,
9271 NULL, HFILL }},
9272 { &hf_mms_variableReference,
9273 { "variableReference", "mms.variableReference",
9274 FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0,
9275 "VariableSpecification", HFILL }},
9276 { &hf_mms_undefined,
9277 { "undefined", "mms.undefined_element",
9278 FT_NONE, BASE_NONE, NULL, 0,
9279 NULL, HFILL }},
9280 { &hf_mms_currentState,
9281 { "currentState", "mms.currentState",
9282 FT_INT32, BASE_DEC, VALS(mms_EC_State_vals), 0,
9283 "EC_State", HFILL }},
9284 { &hf_mms_numberOfEventEnrollments,
9285 { "numberOfEventEnrollments", "mms.numberOfEventEnrollments",
9286 FT_INT32, BASE_DEC, NULL, 0,
9287 "Unsigned32", HFILL }},
9288 { &hf_mms_enabled,
9289 { "enabled", "mms.enabled",
9290 FT_BOOLEAN, BASE_NONE, NULL, 0,
9291 "BOOLEAN", HFILL }},
9292 { &hf_mms_timeOfLastTransitionToActive,
9293 { "timeOfLastTransitionToActive", "mms.timeOfLastTransitionToActive",
9294 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9295 "EventTime", HFILL }},
9296 { &hf_mms_timeOfLastTransitionToIdle,
9297 { "timeOfLastTransitionToIdle", "mms.timeOfLastTransitionToIdle",
9298 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9299 "EventTime", HFILL }},
9300 { &hf_mms_eventActionName,
9301 { "eventActionName", "mms.eventActionName",
9302 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9303 "ObjectName", HFILL }},
9304 { &hf_mms_eventEnrollmentName,
9305 { "eventEnrollmentName", "mms.eventEnrollmentName",
9306 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9307 "ObjectName", HFILL }},
9308 { &hf_mms_eventConditionTransition,
9309 { "eventConditionTransition", "mms.eventConditionTransition",
9310 FT_BYTES, BASE_NONE, NULL, 0,
9311 "Transitions", HFILL }},
9312 { &hf_mms_alarmAcknowledgementRule,
9313 { "alarmAcknowledgementRule", "mms.alarmAcknowledgementRule",
9314 FT_INT32, BASE_DEC, VALS(mms_AlarmAckRule_vals), 0,
9315 "AlarmAckRule", HFILL }},
9316 { &hf_mms_clientApplication,
9317 { "clientApplication", "mms.clientApplication_element",
9318 FT_NONE, BASE_NONE, NULL, 0,
9319 "ApplicationReference", HFILL }},
9320 { &hf_mms_ec,
9321 { "ec", "mms.ec",
9322 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9323 "ObjectName", HFILL }},
9324 { &hf_mms_ea,
9325 { "ea", "mms.ea",
9326 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9327 "ObjectName", HFILL }},
9328 { &hf_mms_scopeOfRequest,
9329 { "scopeOfRequest", "mms.scopeOfRequest",
9330 FT_INT32, BASE_DEC, VALS(mms_T_scopeOfRequest_vals), 0,
9331 NULL, HFILL }},
9332 { &hf_mms_eventEnrollmentNames,
9333 { "eventEnrollmentNames", "mms.eventEnrollmentNames",
9334 FT_UINT32, BASE_DEC, NULL, 0,
9335 "SEQUENCE_OF_ObjectName", HFILL }},
9336 { &hf_mms_eventEnrollmentNames_item,
9337 { "ObjectName", "mms.ObjectName",
9338 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9339 NULL, HFILL }},
9340 { &hf_mms_getEventEnrollmentAttributes_Request_continueAfter,
9341 { "continueAfter", "mms.getEventEnrollmentAttributes-Request_continueAfter",
9342 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9343 "ObjectName", HFILL }},
9344 { &hf_mms_eventConditionName_01,
9345 { "eventConditionName", "mms.eventConditionName",
9346 FT_UINT32, BASE_DEC, VALS(mms_T_eventConditionName_vals), 0,
9347 NULL, HFILL }},
9348 { &hf_mms_eventActionName_01,
9349 { "eventActionName", "mms.eventActionName",
9350 FT_UINT32, BASE_DEC, VALS(mms_T_eventActionName_vals), 0,
9351 NULL, HFILL }},
9352 { &hf_mms_eventAction,
9353 { "eventAction", "mms.eventAction",
9354 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9355 "ObjectName", HFILL }},
9356 { &hf_mms_enrollmentClass,
9357 { "enrollmentClass", "mms.enrollmentClass",
9358 FT_INT32, BASE_DEC, VALS(mms_EE_Class_vals), 0,
9359 "EE_Class", HFILL }},
9360 { &hf_mms_duration,
9361 { "duration", "mms.duration",
9362 FT_INT32, BASE_DEC, VALS(mms_EE_Duration_vals), 0,
9363 "EE_Duration", HFILL }},
9364 { &hf_mms_remainingAcceptableDelay,
9365 { "remainingAcceptableDelay", "mms.remainingAcceptableDelay",
9366 FT_INT32, BASE_DEC, NULL, 0,
9367 "Unsigned32", HFILL }},
9368 { &hf_mms_listOfEventEnrollment,
9369 { "listOfEventEnrollment", "mms.listOfEventEnrollment",
9370 FT_UINT32, BASE_DEC, NULL, 0,
9371 "SEQUENCE_OF_EventEnrollment", HFILL }},
9372 { &hf_mms_listOfEventEnrollment_item,
9373 { "EventEnrollment", "mms.EventEnrollment_element",
9374 FT_NONE, BASE_NONE, NULL, 0,
9375 NULL, HFILL }},
9376 { &hf_mms_eventConditionTransitions,
9377 { "eventConditionTransitions", "mms.eventConditionTransitions",
9378 FT_BYTES, BASE_NONE, NULL, 0,
9379 "Transitions", HFILL }},
9380 { &hf_mms_notificationLost,
9381 { "notificationLost", "mms.notificationLost",
9382 FT_BOOLEAN, BASE_NONE, NULL, 0,
9383 "BOOLEAN", HFILL }},
9384 { &hf_mms_alarmAcknowledgmentRule,
9385 { "alarmAcknowledgmentRule", "mms.alarmAcknowledgmentRule",
9386 FT_INT32, BASE_DEC, VALS(mms_AlarmAckRule_vals), 0,
9387 "AlarmAckRule", HFILL }},
9388 { &hf_mms_currentState_01,
9389 { "currentState", "mms.currentState",
9390 FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0,
9391 "EE_State", HFILL }},
9392 { &hf_mms_currentState_02,
9393 { "currentState", "mms.currentState",
9394 FT_UINT32, BASE_DEC, VALS(mms_T_currentState_vals), 0,
9395 NULL, HFILL }},
9396 { &hf_mms_alterEventEnrollment_Response_currentState_state,
9397 { "state", "mms.alterEventEnrollment-Response_currentState_state",
9398 FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0,
9399 "EE_State", HFILL }},
9400 { &hf_mms_transitionTime,
9401 { "transitionTime", "mms.transitionTime",
9402 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9403 "EventTime", HFILL }},
9404 { &hf_mms_acknowledgedState,
9405 { "acknowledgedState", "mms.acknowledgedState",
9406 FT_INT32, BASE_DEC, VALS(mms_EC_State_vals), 0,
9407 "EC_State", HFILL }},
9408 { &hf_mms_timeOfAcknowledgedTransition,
9409 { "timeOfAcknowledgedTransition", "mms.timeOfAcknowledgedTransition",
9410 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9411 "EventTime", HFILL }},
9412 { &hf_mms_enrollmentsOnly,
9413 { "enrollmentsOnly", "mms.enrollmentsOnly",
9414 FT_BOOLEAN, BASE_NONE, NULL, 0,
9415 "BOOLEAN", HFILL }},
9416 { &hf_mms_activeAlarmsOnly,
9417 { "activeAlarmsOnly", "mms.activeAlarmsOnly",
9418 FT_BOOLEAN, BASE_NONE, NULL, 0,
9419 "BOOLEAN", HFILL }},
9420 { &hf_mms_acknowledgmentFilter,
9421 { "acknowledgmentFilter", "mms.acknowledgmentFilter",
9422 FT_INT32, BASE_DEC, VALS(mms_T_acknowledgmentFilter_vals), 0,
9423 NULL, HFILL }},
9424 { &hf_mms_severityFilter,
9425 { "severityFilter", "mms.severityFilter_element",
9426 FT_NONE, BASE_NONE, NULL, 0,
9427 NULL, HFILL }},
9428 { &hf_mms_mostSevere,
9429 { "mostSevere", "mms.mostSevere",
9430 FT_INT32, BASE_DEC, NULL, 0,
9431 "Unsigned8", HFILL }},
9432 { &hf_mms_leastSevere,
9433 { "leastSevere", "mms.leastSevere",
9434 FT_INT32, BASE_DEC, NULL, 0,
9435 "Unsigned8", HFILL }},
9436 { &hf_mms_continueAfter,
9437 { "continueAfter", "mms.continueAfter",
9438 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9439 "ObjectName", HFILL }},
9440 { &hf_mms_listOfAlarmSummary,
9441 { "listOfAlarmSummary", "mms.listOfAlarmSummary",
9442 FT_UINT32, BASE_DEC, NULL, 0,
9443 "SEQUENCE_OF_AlarmSummary", HFILL }},
9444 { &hf_mms_listOfAlarmSummary_item,
9445 { "AlarmSummary", "mms.AlarmSummary_element",
9446 FT_NONE, BASE_NONE, NULL, 0,
9447 NULL, HFILL }},
9448 { &hf_mms_unacknowledgedState,
9449 { "unacknowledgedState", "mms.unacknowledgedState",
9450 FT_INT32, BASE_DEC, VALS(mms_T_unacknowledgedState_vals), 0,
9451 NULL, HFILL }},
9452 { &hf_mms_acknowledgmentFilter_01,
9453 { "acknowledgmentFilter", "mms.acknowledgmentFilter",
9454 FT_INT32, BASE_DEC, VALS(mms_T_acknowledgmentFilter_01_vals), 0,
9455 "T_acknowledgmentFilter_01", HFILL }},
9456 { &hf_mms_severityFilter_01,
9457 { "severityFilter", "mms.severityFilter_element",
9458 FT_NONE, BASE_NONE, NULL, 0,
9459 "T_severityFilter_01", HFILL }},
9460 { &hf_mms_getAlarmEnrollmentSummary_Request_continueAfter,
9461 { "continueAfter", "mms.getAlarmEnrollmentSummary-Request_continueAfter",
9462 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9463 "ObjectName", HFILL }},
9464 { &hf_mms_listOfAlarmEnrollmentSummary,
9465 { "listOfAlarmEnrollmentSummary", "mms.listOfAlarmEnrollmentSummary",
9466 FT_UINT32, BASE_DEC, NULL, 0,
9467 "SEQUENCE_OF_AlarmEnrollmentSummary", HFILL }},
9468 { &hf_mms_listOfAlarmEnrollmentSummary_item,
9469 { "AlarmEnrollmentSummary", "mms.AlarmEnrollmentSummary_element",
9470 FT_NONE, BASE_NONE, NULL, 0,
9471 NULL, HFILL }},
9472 { &hf_mms_enrollementState,
9473 { "enrollementState", "mms.enrollementState",
9474 FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0,
9475 "EE_State", HFILL }},
9476 { &hf_mms_timeActiveAcknowledged,
9477 { "timeActiveAcknowledged", "mms.timeActiveAcknowledged",
9478 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9479 "EventTime", HFILL }},
9480 { &hf_mms_timeIdleAcknowledged,
9481 { "timeIdleAcknowledged", "mms.timeIdleAcknowledged",
9482 FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0,
9483 "EventTime", HFILL }},
9484 { &hf_mms_eventConditionName_02,
9485 { "eventConditionName", "mms.eventConditionName",
9486 FT_UINT32, BASE_DEC, VALS(mms_T_eventConditionName_01_vals), 0,
9487 "T_eventConditionName_01", HFILL }},
9488 { &hf_mms_actionResult,
9489 { "actionResult", "mms.actionResult_element",
9490 FT_NONE, BASE_NONE, NULL, 0,
9491 NULL, HFILL }},
9492 { &hf_mms_eventActioName,
9493 { "eventActioName", "mms.eventActioName",
9494 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9495 "ObjectName", HFILL }},
9496 { &hf_mms_eventActionResult,
9497 { "eventActionResult", "mms.eventActionResult",
9498 FT_UINT32, BASE_DEC, VALS(mms_T_eventActionResult_vals), 0,
9499 NULL, HFILL }},
9500 { &hf_mms_success_02,
9501 { "success", "mms.success",
9502 FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceResponse_vals), 0,
9503 "ConfirmedServiceResponse", HFILL }},
9504 { &hf_mms_failure_01,
9505 { "failure", "mms.failure_element",
9506 FT_NONE, BASE_NONE, NULL, 0,
9507 "ServiceError", HFILL }},
9508 { &hf_mms_causingTransitions,
9509 { "causingTransitions", "mms.causingTransitions",
9510 FT_BYTES, BASE_NONE, NULL, 0,
9511 "Transitions", HFILL }},
9512 { &hf_mms_timeOfDayT,
9513 { "timeOfDayT", "mms.timeOfDayT",
9514 FT_STRING, BASE_NONE, NULL, 0,
9515 "TimeOfDay", HFILL }},
9516 { &hf_mms_timeSequenceIdentifier,
9517 { "timeSequenceIdentifier", "mms.timeSequenceIdentifier",
9518 FT_INT32, BASE_DEC, NULL, 0,
9519 "Unsigned32", HFILL }},
9520 { &hf_mms_journalName,
9521 { "journalName", "mms.journalName",
9522 FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0,
9523 "ObjectName", HFILL }},
9524 { &hf_mms_rangeStartSpecification,
9525 { "rangeStartSpecification", "mms.rangeStartSpecification",
9526 FT_UINT32, BASE_DEC, VALS(mms_T_rangeStartSpecification_vals), 0,
9527 NULL, HFILL }},
9528 { &hf_mms_startingTime,
9529 { "startingTime", "mms.startingTime",
9530 FT_STRING, BASE_NONE, NULL, 0,
9531 "TimeOfDay", HFILL }},
9532 { &hf_mms_startingEntry,
9533 { "startingEntry", "mms.startingEntry",
9534 FT_BYTES, BASE_NONE, NULL, 0,
9535 "OCTET_STRING", HFILL }},
9536 { &hf_mms_rangeStopSpecification,
9537 { "rangeStopSpecification", "mms.rangeStopSpecification",
9538 FT_UINT32, BASE_DEC, VALS(mms_T_rangeStopSpecification_vals), 0,
9539 NULL, HFILL }},
9540 { &hf_mms_endingTime,
9541 { "endingTime", "mms.endingTime",
9542 FT_STRING, BASE_NONE, NULL, 0,
9543 "TimeOfDay", HFILL }},
9544 { &hf_mms_numberOfEntries,
9545 { "numberOfEntries", "mms.numberOfEntries",
9546 FT_INT32, BASE_DEC, NULL, 0,
9547 "Integer32", HFILL }},
9548 { &hf_mms_listOfVariables,
9549 { "listOfVariables", "mms.listOfVariables",
9550 FT_UINT32, BASE_DEC, NULL, 0,
9551 NULL, HFILL }},
9552 { &hf_mms_listOfVariables_item,
9553 { "listOfVariables item", "mms.listOfVariables_item",
9554 FT_STRING, BASE_NONE, NULL, 0,
9555 "VisibleString", HFILL }},
9556 { &hf_mms_entryToStartAfter,
9557 { "entryToStartAfter", "mms.entryToStartAfter_element",
9558 FT_NONE, BASE_NONE, NULL, 0,
9559 NULL, HFILL }},
9560 { &hf_mms_timeSpecification,
9561 { "timeSpecification", "mms.timeSpecification",
9562 FT_STRING, BASE_NONE, NULL, 0,
9563 "TimeOfDay", HFILL }},
9564 { &hf_mms_entrySpecification,
9565 { "entrySpecification", "mms.entrySpecification",
9566 FT_BYTES, BASE_NONE, NULL, 0,
9567 "OCTET_STRING", HFILL }},
9568 { &hf_mms_listOfJournalEntry,
9569 { "listOfJournalEntry", "mms.listOfJournalEntry",
9570 FT_UINT32, BASE_DEC, NULL, 0,
9571 "SEQUENCE_OF_JournalEntry", HFILL }},
9572 { &hf_mms_listOfJournalEntry_item,
9573 { "JournalEntry", "mms.JournalEntry_element",
9574 FT_NONE, BASE_NONE, NULL, 0,
9575 NULL, HFILL }},
9576 { &hf_mms_entryIdentifier,
9577 { "entryIdentifier", "mms.entryIdentifier",
9578 FT_BYTES, BASE_NONE, NULL, 0,
9579 "OCTET_STRING", HFILL }},
9580 { &hf_mms_originatingApplication,
9581 { "originatingApplication", "mms.originatingApplication_element",
9582 FT_NONE, BASE_NONE, NULL, 0,
9583 "ApplicationReference", HFILL }},
9584 { &hf_mms_entryContent,
9585 { "entryContent", "mms.entryContent_element",
9586 FT_NONE, BASE_NONE, NULL, 0,
9587 NULL, HFILL }},
9588 { &hf_mms_listOfJournalEntry_01,
9589 { "listOfJournalEntry", "mms.listOfJournalEntry",
9590 FT_UINT32, BASE_DEC, NULL, 0,
9591 "SEQUENCE_OF_EntryContent", HFILL }},
9592 { &hf_mms_listOfJournalEntry_item_01,
9593 { "EntryContent", "mms.EntryContent_element",
9594 FT_NONE, BASE_NONE, NULL, 0,
9595 NULL, HFILL }},
9596 { &hf_mms_limitSpecification,
9597 { "limitSpecification", "mms.limitSpecification_element",
9598 FT_NONE, BASE_NONE, NULL, 0,
9599 NULL, HFILL }},
9600 { &hf_mms_limitingTime,
9601 { "limitingTime", "mms.limitingTime",
9602 FT_STRING, BASE_NONE, NULL, 0,
9603 "TimeOfDay", HFILL }},
9604 { &hf_mms_limitingEntry,
9605 { "limitingEntry", "mms.limitingEntry",
9606 FT_BYTES, BASE_NONE, NULL, 0,
9607 "OCTET_STRING", HFILL }},
9608 { &hf_mms_currentEntries,
9609 { "currentEntries", "mms.currentEntries",
9610 FT_INT32, BASE_DEC, NULL, 0,
9611 "Unsigned32", HFILL }},
9612 { &hf_mms_occurenceTime,
9613 { "occurenceTime", "mms.occurenceTime",
9614 FT_STRING, BASE_NONE, NULL, 0,
9615 "TimeOfDay", HFILL }},
9616 { &hf_mms_additionalDetail,
9617 { "additionalDetail", "mms.additionalDetail_element",
9618 FT_NONE, BASE_NONE, NULL, 0,
9619 "JOU_Additional_Detail", HFILL }},
9620 { &hf_mms_entryForm,
9621 { "entryForm", "mms.entryForm",
9622 FT_UINT32, BASE_DEC, VALS(mms_T_entryForm_vals), 0,
9623 NULL, HFILL }},
9624 { &hf_mms_data,
9625 { "data", "mms.data_element",
9626 FT_NONE, BASE_NONE, NULL, 0,
9627 NULL, HFILL }},
9628 { &hf_mms_event,
9629 { "event", "mms.event_element",
9630 FT_NONE, BASE_NONE, NULL, 0,
9631 NULL, HFILL }},
9632 { &hf_mms_listOfVariables_01,
9633 { "listOfVariables", "mms.listOfVariables",
9634 FT_UINT32, BASE_DEC, NULL, 0,
9635 "T_listOfVariables_01", HFILL }},
9636 { &hf_mms_listOfVariables_item_01,
9637 { "listOfVariables item", "mms.listOfVariables_item_element",
9638 FT_NONE, BASE_NONE, NULL, 0,
9639 NULL, HFILL }},
9640 { &hf_mms_variableTag,
9641 { "variableTag", "mms.variableTag",
9642 FT_STRING, BASE_NONE, NULL, 0,
9643 "VisibleString", HFILL }},
9644 { &hf_mms_valueSpecification,
9645 { "valueSpecification", "mms.valueSpecification",
9646 FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0,
9647 "Data", HFILL }},
9648 { &hf_mms_annotation,
9649 { "annotation", "mms.annotation",
9650 FT_STRING, BASE_NONE, NULL, 0,
9651 "VisibleString", HFILL }},
9652 { &hf_mms_sourceFileServer,
9653 { "sourceFileServer", "mms.sourceFileServer_element",
9654 FT_NONE, BASE_NONE, NULL, 0,
9655 "ApplicationReference", HFILL }},
9656 { &hf_mms_sourceFile,
9657 { "sourceFile", "mms.sourceFile",
9658 FT_UINT32, BASE_DEC, NULL, 0,
9659 "FileName", HFILL }},
9660 { &hf_mms_destinationFile,
9661 { "destinationFile", "mms.destinationFile",
9662 FT_UINT32, BASE_DEC, NULL, 0,
9663 "FileName", HFILL }},
9664 { &hf_mms_initialPosition,
9665 { "initialPosition", "mms.initialPosition",
9666 FT_INT32, BASE_DEC, NULL, 0,
9667 "Unsigned32", HFILL }},
9668 { &hf_mms_frsmID,
9669 { "frsmID", "mms.frsmID",
9670 FT_INT32, BASE_DEC, NULL, 0,
9671 "Integer32", HFILL }},
9672 { &hf_mms_fileAttributes,
9673 { "fileAttributes", "mms.fileAttributes_element",
9674 FT_NONE, BASE_NONE, NULL, 0,
9675 NULL, HFILL }},
9676 { &hf_mms_fileData,
9677 { "fileData", "mms.fileData",
9678 FT_BYTES, BASE_NONE, NULL, 0,
9679 "OCTET_STRING", HFILL }},
9680 { &hf_mms_currentFileName,
9681 { "currentFileName", "mms.currentFileName",
9682 FT_UINT32, BASE_DEC, NULL, 0,
9683 "FileName", HFILL }},
9684 { &hf_mms_newFileName,
9685 { "newFileName", "mms.newFileName",
9686 FT_UINT32, BASE_DEC, NULL, 0,
9687 "FileName", HFILL }},
9688 { &hf_mms_fileSpecification,
9689 { "fileSpecification", "mms.fileSpecification",
9690 FT_UINT32, BASE_DEC, NULL, 0,
9691 "FileName", HFILL }},
9692 { &hf_mms_fileDirectory_Request_continueAfter,
9693 { "continueAfter", "mms.fileDirectory-Request_continueAfter",
9694 FT_UINT32, BASE_DEC, NULL, 0,
9695 "FileName", HFILL }},
9696 { &hf_mms_listOfDirectoryEntry,
9697 { "listOfDirectoryEntry", "mms.listOfDirectoryEntry",
9698 FT_UINT32, BASE_DEC, NULL, 0,
9699 "SEQUENCE_OF_DirectoryEntry", HFILL }},
9700 { &hf_mms_listOfDirectoryEntry_item,
9701 { "DirectoryEntry", "mms.DirectoryEntry_element",
9702 FT_NONE, BASE_NONE, NULL, 0,
9703 NULL, HFILL }},
9704 { &hf_mms_filename,
9705 { "filename", "mms.filename",
9706 FT_UINT32, BASE_DEC, NULL, 0,
9707 NULL, HFILL }},
9708 { &hf_mms_sizeOfFile,
9709 { "sizeOfFile", "mms.sizeOfFile",
9710 FT_INT32, BASE_DEC, NULL, 0,
9711 "Unsigned32", HFILL }},
9712 { &hf_mms_lastModified,
9713 { "lastModified", "mms.lastModified",
9714 FT_STRING, BASE_NONE, NULL, 0,
9715 "GeneralizedTime", HFILL }},
9716 { &hf_mms_ParameterSupportOptions_str1,
9717 { "str1", "mms.ParameterSupportOptions.str1",
9718 FT_BOOLEAN, 8, NULL, 0x80,
9719 NULL, HFILL }},
9720 { &hf_mms_ParameterSupportOptions_str2,
9721 { "str2", "mms.ParameterSupportOptions.str2",
9722 FT_BOOLEAN, 8, NULL, 0x40,
9723 NULL, HFILL }},
9724 { &hf_mms_ParameterSupportOptions_vnam,
9725 { "vnam", "mms.ParameterSupportOptions.vnam",
9726 FT_BOOLEAN, 8, NULL, 0x20,
9727 NULL, HFILL }},
9728 { &hf_mms_ParameterSupportOptions_valt,
9729 { "valt", "mms.ParameterSupportOptions.valt",
9730 FT_BOOLEAN, 8, NULL, 0x10,
9731 NULL, HFILL }},
9732 { &hf_mms_ParameterSupportOptions_vadr,
9733 { "vadr", "mms.ParameterSupportOptions.vadr",
9734 FT_BOOLEAN, 8, NULL, 0x08,
9735 NULL, HFILL }},
9736 { &hf_mms_ParameterSupportOptions_vsca,
9737 { "vsca", "mms.ParameterSupportOptions.vsca",
9738 FT_BOOLEAN, 8, NULL, 0x04,
9739 NULL, HFILL }},
9740 { &hf_mms_ParameterSupportOptions_tpy,
9741 { "tpy", "mms.ParameterSupportOptions.tpy",
9742 FT_BOOLEAN, 8, NULL, 0x02,
9743 NULL, HFILL }},
9744 { &hf_mms_ParameterSupportOptions_vlis,
9745 { "vlis", "mms.ParameterSupportOptions.vlis",
9746 FT_BOOLEAN, 8, NULL, 0x01,
9747 NULL, HFILL }},
9748 { &hf_mms_ParameterSupportOptions_real,
9749 { "real", "mms.ParameterSupportOptions.real",
9750 FT_BOOLEAN, 8, NULL, 0x80,
9751 NULL, HFILL }},
9752 { &hf_mms_ParameterSupportOptions_spare_bit9,
9753 { "spare_bit9", "mms.ParameterSupportOptions.spare.bit9",
9754 FT_BOOLEAN, 8, NULL, 0x40,
9755 NULL, HFILL }},
9756 { &hf_mms_ParameterSupportOptions_cei,
9757 { "cei", "mms.ParameterSupportOptions.cei",
9758 FT_BOOLEAN, 8, NULL, 0x20,
9759 NULL, HFILL }},
9760 { &hf_mms_ServiceSupportOptions_status,
9761 { "status", "mms.ServiceSupportOptions.status",
9762 FT_BOOLEAN, 8, NULL, 0x80,
9763 NULL, HFILL }},
9764 { &hf_mms_ServiceSupportOptions_getNameList,
9765 { "getNameList", "mms.ServiceSupportOptions.getNameList",
9766 FT_BOOLEAN, 8, NULL, 0x40,
9767 NULL, HFILL }},
9768 { &hf_mms_ServiceSupportOptions_identify,
9769 { "identify", "mms.ServiceSupportOptions.identify",
9770 FT_BOOLEAN, 8, NULL, 0x20,
9771 NULL, HFILL }},
9772 { &hf_mms_ServiceSupportOptions_rename,
9773 { "rename", "mms.ServiceSupportOptions.rename",
9774 FT_BOOLEAN, 8, NULL, 0x10,
9775 NULL, HFILL }},
9776 { &hf_mms_ServiceSupportOptions_read,
9777 { "read", "mms.ServiceSupportOptions.read",
9778 FT_BOOLEAN, 8, NULL, 0x08,
9779 NULL, HFILL }},
9780 { &hf_mms_ServiceSupportOptions_write,
9781 { "write", "mms.ServiceSupportOptions.write",
9782 FT_BOOLEAN, 8, NULL, 0x04,
9783 NULL, HFILL }},
9784 { &hf_mms_ServiceSupportOptions_getVariableAccessAttributes,
9785 { "getVariableAccessAttributes", "mms.ServiceSupportOptions.getVariableAccessAttributes",
9786 FT_BOOLEAN, 8, NULL, 0x02,
9787 NULL, HFILL }},
9788 { &hf_mms_ServiceSupportOptions_defineNamedVariable,
9789 { "defineNamedVariable", "mms.ServiceSupportOptions.defineNamedVariable",
9790 FT_BOOLEAN, 8, NULL, 0x01,
9791 NULL, HFILL }},
9792 { &hf_mms_ServiceSupportOptions_defineScatteredAccess,
9793 { "defineScatteredAccess", "mms.ServiceSupportOptions.defineScatteredAccess",
9794 FT_BOOLEAN, 8, NULL, 0x80,
9795 NULL, HFILL }},
9796 { &hf_mms_ServiceSupportOptions_getScatteredAccessAttributes,
9797 { "getScatteredAccessAttributes", "mms.ServiceSupportOptions.getScatteredAccessAttributes",
9798 FT_BOOLEAN, 8, NULL, 0x40,
9799 NULL, HFILL }},
9800 { &hf_mms_ServiceSupportOptions_deleteVariableAccess,
9801 { "deleteVariableAccess", "mms.ServiceSupportOptions.deleteVariableAccess",
9802 FT_BOOLEAN, 8, NULL, 0x20,
9803 NULL, HFILL }},
9804 { &hf_mms_ServiceSupportOptions_defineNamedVariableList,
9805 { "defineNamedVariableList", "mms.ServiceSupportOptions.defineNamedVariableList",
9806 FT_BOOLEAN, 8, NULL, 0x10,
9807 NULL, HFILL }},
9808 { &hf_mms_ServiceSupportOptions_getNamedVariableListAttributes,
9809 { "getNamedVariableListAttributes", "mms.ServiceSupportOptions.getNamedVariableListAttributes",
9810 FT_BOOLEAN, 8, NULL, 0x08,
9811 NULL, HFILL }},
9812 { &hf_mms_ServiceSupportOptions_deleteNamedVariableList,
9813 { "deleteNamedVariableList", "mms.ServiceSupportOptions.deleteNamedVariableList",
9814 FT_BOOLEAN, 8, NULL, 0x04,
9815 NULL, HFILL }},
9816 { &hf_mms_ServiceSupportOptions_defineNamedType,
9817 { "defineNamedType", "mms.ServiceSupportOptions.defineNamedType",
9818 FT_BOOLEAN, 8, NULL, 0x02,
9819 NULL, HFILL }},
9820 { &hf_mms_ServiceSupportOptions_getNamedTypeAttributes,
9821 { "getNamedTypeAttributes", "mms.ServiceSupportOptions.getNamedTypeAttributes",
9822 FT_BOOLEAN, 8, NULL, 0x01,
9823 NULL, HFILL }},
9824 { &hf_mms_ServiceSupportOptions_deleteNamedType,
9825 { "deleteNamedType", "mms.ServiceSupportOptions.deleteNamedType",
9826 FT_BOOLEAN, 8, NULL, 0x80,
9827 NULL, HFILL }},
9828 { &hf_mms_ServiceSupportOptions_input,
9829 { "input", "mms.ServiceSupportOptions.input",
9830 FT_BOOLEAN, 8, NULL, 0x40,
9831 NULL, HFILL }},
9832 { &hf_mms_ServiceSupportOptions_output,
9833 { "output", "mms.ServiceSupportOptions.output",
9834 FT_BOOLEAN, 8, NULL, 0x20,
9835 NULL, HFILL }},
9836 { &hf_mms_ServiceSupportOptions_takeControl,
9837 { "takeControl", "mms.ServiceSupportOptions.takeControl",
9838 FT_BOOLEAN, 8, NULL, 0x10,
9839 NULL, HFILL }},
9840 { &hf_mms_ServiceSupportOptions_relinquishControl,
9841 { "relinquishControl", "mms.ServiceSupportOptions.relinquishControl",
9842 FT_BOOLEAN, 8, NULL, 0x08,
9843 NULL, HFILL }},
9844 { &hf_mms_ServiceSupportOptions_defineSemaphore,
9845 { "defineSemaphore", "mms.ServiceSupportOptions.defineSemaphore",
9846 FT_BOOLEAN, 8, NULL, 0x04,
9847 NULL, HFILL }},
9848 { &hf_mms_ServiceSupportOptions_deleteSemaphore,
9849 { "deleteSemaphore", "mms.ServiceSupportOptions.deleteSemaphore",
9850 FT_BOOLEAN, 8, NULL, 0x02,
9851 NULL, HFILL }},
9852 { &hf_mms_ServiceSupportOptions_reportSemaphoreStatus,
9853 { "reportSemaphoreStatus", "mms.ServiceSupportOptions.reportSemaphoreStatus",
9854 FT_BOOLEAN, 8, NULL, 0x01,
9855 NULL, HFILL }},
9856 { &hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus,
9857 { "reportPoolSemaphoreStatus", "mms.ServiceSupportOptions.reportPoolSemaphoreStatus",
9858 FT_BOOLEAN, 8, NULL, 0x80,
9859 NULL, HFILL }},
9860 { &hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus,
9861 { "reportSemaphoreEntryStatus", "mms.ServiceSupportOptions.reportSemaphoreEntryStatus",
9862 FT_BOOLEAN, 8, NULL, 0x40,
9863 NULL, HFILL }},
9864 { &hf_mms_ServiceSupportOptions_initiateDownloadSequence,
9865 { "initiateDownloadSequence", "mms.ServiceSupportOptions.initiateDownloadSequence",
9866 FT_BOOLEAN, 8, NULL, 0x20,
9867 NULL, HFILL }},
9868 { &hf_mms_ServiceSupportOptions_downloadSegment,
9869 { "downloadSegment", "mms.ServiceSupportOptions.downloadSegment",
9870 FT_BOOLEAN, 8, NULL, 0x10,
9871 NULL, HFILL }},
9872 { &hf_mms_ServiceSupportOptions_terminateDownloadSequence,
9873 { "terminateDownloadSequence", "mms.ServiceSupportOptions.terminateDownloadSequence",
9874 FT_BOOLEAN, 8, NULL, 0x08,
9875 NULL, HFILL }},
9876 { &hf_mms_ServiceSupportOptions_initiateUploadSequence,
9877 { "initiateUploadSequence", "mms.ServiceSupportOptions.initiateUploadSequence",
9878 FT_BOOLEAN, 8, NULL, 0x04,
9879 NULL, HFILL }},
9880 { &hf_mms_ServiceSupportOptions_uploadSegment,
9881 { "uploadSegment", "mms.ServiceSupportOptions.uploadSegment",
9882 FT_BOOLEAN, 8, NULL, 0x02,
9883 NULL, HFILL }},
9884 { &hf_mms_ServiceSupportOptions_terminateUploadSequence,
9885 { "terminateUploadSequence", "mms.ServiceSupportOptions.terminateUploadSequence",
9886 FT_BOOLEAN, 8, NULL, 0x01,
9887 NULL, HFILL }},
9888 { &hf_mms_ServiceSupportOptions_requestDomainDownload,
9889 { "requestDomainDownload", "mms.ServiceSupportOptions.requestDomainDownload",
9890 FT_BOOLEAN, 8, NULL, 0x80,
9891 NULL, HFILL }},
9892 { &hf_mms_ServiceSupportOptions_requestDomainUpload,
9893 { "requestDomainUpload", "mms.ServiceSupportOptions.requestDomainUpload",
9894 FT_BOOLEAN, 8, NULL, 0x40,
9895 NULL, HFILL }},
9896 { &hf_mms_ServiceSupportOptions_loadDomainContent,
9897 { "loadDomainContent", "mms.ServiceSupportOptions.loadDomainContent",
9898 FT_BOOLEAN, 8, NULL, 0x20,
9899 NULL, HFILL }},
9900 { &hf_mms_ServiceSupportOptions_storeDomainContent,
9901 { "storeDomainContent", "mms.ServiceSupportOptions.storeDomainContent",
9902 FT_BOOLEAN, 8, NULL, 0x10,
9903 NULL, HFILL }},
9904 { &hf_mms_ServiceSupportOptions_deleteDomain,
9905 { "deleteDomain", "mms.ServiceSupportOptions.deleteDomain",
9906 FT_BOOLEAN, 8, NULL, 0x08,
9907 NULL, HFILL }},
9908 { &hf_mms_ServiceSupportOptions_getDomainAttributes,
9909 { "getDomainAttributes", "mms.ServiceSupportOptions.getDomainAttributes",
9910 FT_BOOLEAN, 8, NULL, 0x04,
9911 NULL, HFILL }},
9912 { &hf_mms_ServiceSupportOptions_createProgramInvocation,
9913 { "createProgramInvocation", "mms.ServiceSupportOptions.createProgramInvocation",
9914 FT_BOOLEAN, 8, NULL, 0x02,
9915 NULL, HFILL }},
9916 { &hf_mms_ServiceSupportOptions_deleteProgramInvocation,
9917 { "deleteProgramInvocation", "mms.ServiceSupportOptions.deleteProgramInvocation",
9918 FT_BOOLEAN, 8, NULL, 0x01,
9919 NULL, HFILL }},
9920 { &hf_mms_ServiceSupportOptions_start,
9921 { "start", "mms.ServiceSupportOptions.start",
9922 FT_BOOLEAN, 8, NULL, 0x80,
9923 NULL, HFILL }},
9924 { &hf_mms_ServiceSupportOptions_stop,
9925 { "stop", "mms.ServiceSupportOptions.stop",
9926 FT_BOOLEAN, 8, NULL, 0x40,
9927 NULL, HFILL }},
9928 { &hf_mms_ServiceSupportOptions_resume,
9929 { "resume", "mms.ServiceSupportOptions.resume",
9930 FT_BOOLEAN, 8, NULL, 0x20,
9931 NULL, HFILL }},
9932 { &hf_mms_ServiceSupportOptions_reset,
9933 { "reset", "mms.ServiceSupportOptions.reset",
9934 FT_BOOLEAN, 8, NULL, 0x10,
9935 NULL, HFILL }},
9936 { &hf_mms_ServiceSupportOptions_kill,
9937 { "kill", "mms.ServiceSupportOptions.kill",
9938 FT_BOOLEAN, 8, NULL, 0x08,
9939 NULL, HFILL }},
9940 { &hf_mms_ServiceSupportOptions_getProgramInvocationAttributes,
9941 { "getProgramInvocationAttributes", "mms.ServiceSupportOptions.getProgramInvocationAttributes",
9942 FT_BOOLEAN, 8, NULL, 0x04,
9943 NULL, HFILL }},
9944 { &hf_mms_ServiceSupportOptions_obtainFile,
9945 { "obtainFile", "mms.ServiceSupportOptions.obtainFile",
9946 FT_BOOLEAN, 8, NULL, 0x02,
9947 NULL, HFILL }},
9948 { &hf_mms_ServiceSupportOptions_defineEventCondition,
9949 { "defineEventCondition", "mms.ServiceSupportOptions.defineEventCondition",
9950 FT_BOOLEAN, 8, NULL, 0x01,
9951 NULL, HFILL }},
9952 { &hf_mms_ServiceSupportOptions_deleteEventCondition,
9953 { "deleteEventCondition", "mms.ServiceSupportOptions.deleteEventCondition",
9954 FT_BOOLEAN, 8, NULL, 0x80,
9955 NULL, HFILL }},
9956 { &hf_mms_ServiceSupportOptions_getEventConditionAttributes,
9957 { "getEventConditionAttributes", "mms.ServiceSupportOptions.getEventConditionAttributes",
9958 FT_BOOLEAN, 8, NULL, 0x40,
9959 NULL, HFILL }},
9960 { &hf_mms_ServiceSupportOptions_reportEventConditionStatus,
9961 { "reportEventConditionStatus", "mms.ServiceSupportOptions.reportEventConditionStatus",
9962 FT_BOOLEAN, 8, NULL, 0x20,
9963 NULL, HFILL }},
9964 { &hf_mms_ServiceSupportOptions_alterEventConditionMonitoring,
9965 { "alterEventConditionMonitoring", "mms.ServiceSupportOptions.alterEventConditionMonitoring",
9966 FT_BOOLEAN, 8, NULL, 0x10,
9967 NULL, HFILL }},
9968 { &hf_mms_ServiceSupportOptions_triggerEvent,
9969 { "triggerEvent", "mms.ServiceSupportOptions.triggerEvent",
9970 FT_BOOLEAN, 8, NULL, 0x08,
9971 NULL, HFILL }},
9972 { &hf_mms_ServiceSupportOptions_defineEventAction,
9973 { "defineEventAction", "mms.ServiceSupportOptions.defineEventAction",
9974 FT_BOOLEAN, 8, NULL, 0x04,
9975 NULL, HFILL }},
9976 { &hf_mms_ServiceSupportOptions_deleteEventAction,
9977 { "deleteEventAction", "mms.ServiceSupportOptions.deleteEventAction",
9978 FT_BOOLEAN, 8, NULL, 0x02,
9979 NULL, HFILL }},
9980 { &hf_mms_ServiceSupportOptions_getEventActionAttributes,
9981 { "getEventActionAttributes", "mms.ServiceSupportOptions.getEventActionAttributes",
9982 FT_BOOLEAN, 8, NULL, 0x01,
9983 NULL, HFILL }},
9984 { &hf_mms_ServiceSupportOptions_reportActionStatus,
9985 { "reportActionStatus", "mms.ServiceSupportOptions.reportActionStatus",
9986 FT_BOOLEAN, 8, NULL, 0x80,
9987 NULL, HFILL }},
9988 { &hf_mms_ServiceSupportOptions_defineEventEnrollment,
9989 { "defineEventEnrollment", "mms.ServiceSupportOptions.defineEventEnrollment",
9990 FT_BOOLEAN, 8, NULL, 0x40,
9991 NULL, HFILL }},
9992 { &hf_mms_ServiceSupportOptions_deleteEventEnrollment,
9993 { "deleteEventEnrollment", "mms.ServiceSupportOptions.deleteEventEnrollment",
9994 FT_BOOLEAN, 8, NULL, 0x20,
9995 NULL, HFILL }},
9996 { &hf_mms_ServiceSupportOptions_alterEventEnrollment,
9997 { "alterEventEnrollment", "mms.ServiceSupportOptions.alterEventEnrollment",
9998 FT_BOOLEAN, 8, NULL, 0x10,
9999 NULL, HFILL }},
10000 { &hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus,
10001 { "reportEventEnrollmentStatus", "mms.ServiceSupportOptions.reportEventEnrollmentStatus",
10002 FT_BOOLEAN, 8, NULL, 0x08,
10003 NULL, HFILL }},
10004 { &hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes,
10005 { "getEventEnrollmentAttributes", "mms.ServiceSupportOptions.getEventEnrollmentAttributes",
10006 FT_BOOLEAN, 8, NULL, 0x04,
10007 NULL, HFILL }},
10008 { &hf_mms_ServiceSupportOptions_acknowledgeEventNotification,
10009 { "acknowledgeEventNotification", "mms.ServiceSupportOptions.acknowledgeEventNotification",
10010 FT_BOOLEAN, 8, NULL, 0x02,
10011 NULL, HFILL }},
10012 { &hf_mms_ServiceSupportOptions_getAlarmSummary,
10013 { "getAlarmSummary", "mms.ServiceSupportOptions.getAlarmSummary",
10014 FT_BOOLEAN, 8, NULL, 0x01,
10015 NULL, HFILL }},
10016 { &hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary,
10017 { "getAlarmEnrollmentSummary", "mms.ServiceSupportOptions.getAlarmEnrollmentSummary",
10018 FT_BOOLEAN, 8, NULL, 0x80,
10019 NULL, HFILL }},
10020 { &hf_mms_ServiceSupportOptions_readJournal,
10021 { "readJournal", "mms.ServiceSupportOptions.readJournal",
10022 FT_BOOLEAN, 8, NULL, 0x40,
10023 NULL, HFILL }},
10024 { &hf_mms_ServiceSupportOptions_writeJournal,
10025 { "writeJournal", "mms.ServiceSupportOptions.writeJournal",
10026 FT_BOOLEAN, 8, NULL, 0x20,
10027 NULL, HFILL }},
10028 { &hf_mms_ServiceSupportOptions_initializeJournal,
10029 { "initializeJournal", "mms.ServiceSupportOptions.initializeJournal",
10030 FT_BOOLEAN, 8, NULL, 0x10,
10031 NULL, HFILL }},
10032 { &hf_mms_ServiceSupportOptions_reportJournalStatus,
10033 { "reportJournalStatus", "mms.ServiceSupportOptions.reportJournalStatus",
10034 FT_BOOLEAN, 8, NULL, 0x08,
10035 NULL, HFILL }},
10036 { &hf_mms_ServiceSupportOptions_createJournal,
10037 { "createJournal", "mms.ServiceSupportOptions.createJournal",
10038 FT_BOOLEAN, 8, NULL, 0x04,
10039 NULL, HFILL }},
10040 { &hf_mms_ServiceSupportOptions_deleteJournal,
10041 { "deleteJournal", "mms.ServiceSupportOptions.deleteJournal",
10042 FT_BOOLEAN, 8, NULL, 0x02,
10043 NULL, HFILL }},
10044 { &hf_mms_ServiceSupportOptions_getCapabilityList,
10045 { "getCapabilityList", "mms.ServiceSupportOptions.getCapabilityList",
10046 FT_BOOLEAN, 8, NULL, 0x01,
10047 NULL, HFILL }},
10048 { &hf_mms_ServiceSupportOptions_fileOpen,
10049 { "fileOpen", "mms.ServiceSupportOptions.fileOpen",
10050 FT_BOOLEAN, 8, NULL, 0x80,
10051 NULL, HFILL }},
10052 { &hf_mms_ServiceSupportOptions_fileRead,
10053 { "fileRead", "mms.ServiceSupportOptions.fileRead",
10054 FT_BOOLEAN, 8, NULL, 0x40,
10055 NULL, HFILL }},
10056 { &hf_mms_ServiceSupportOptions_fileClose,
10057 { "fileClose", "mms.ServiceSupportOptions.fileClose",
10058 FT_BOOLEAN, 8, NULL, 0x20,
10059 NULL, HFILL }},
10060 { &hf_mms_ServiceSupportOptions_fileRename,
10061 { "fileRename", "mms.ServiceSupportOptions.fileRename",
10062 FT_BOOLEAN, 8, NULL, 0x10,
10063 NULL, HFILL }},
10064 { &hf_mms_ServiceSupportOptions_fileDelete,
10065 { "fileDelete", "mms.ServiceSupportOptions.fileDelete",
10066 FT_BOOLEAN, 8, NULL, 0x08,
10067 NULL, HFILL }},
10068 { &hf_mms_ServiceSupportOptions_fileDirectory,
10069 { "fileDirectory", "mms.ServiceSupportOptions.fileDirectory",
10070 FT_BOOLEAN, 8, NULL, 0x04,
10071 NULL, HFILL }},
10072 { &hf_mms_ServiceSupportOptions_unsolicitedStatus,
10073 { "unsolicitedStatus", "mms.ServiceSupportOptions.unsolicitedStatus",
10074 FT_BOOLEAN, 8, NULL, 0x02,
10075 NULL, HFILL }},
10076 { &hf_mms_ServiceSupportOptions_informationReport,
10077 { "informationReport", "mms.ServiceSupportOptions.informationReport",
10078 FT_BOOLEAN, 8, NULL, 0x01,
10079 NULL, HFILL }},
10080 { &hf_mms_ServiceSupportOptions_eventNotification,
10081 { "eventNotification", "mms.ServiceSupportOptions.eventNotification",
10082 FT_BOOLEAN, 8, NULL, 0x80,
10083 NULL, HFILL }},
10084 { &hf_mms_ServiceSupportOptions_attachToEventCondition,
10085 { "attachToEventCondition", "mms.ServiceSupportOptions.attachToEventCondition",
10086 FT_BOOLEAN, 8, NULL, 0x40,
10087 NULL, HFILL }},
10088 { &hf_mms_ServiceSupportOptions_attachToSemaphore,
10089 { "attachToSemaphore", "mms.ServiceSupportOptions.attachToSemaphore",
10090 FT_BOOLEAN, 8, NULL, 0x20,
10091 NULL, HFILL }},
10092 { &hf_mms_ServiceSupportOptions_conclude,
10093 { "conclude", "mms.ServiceSupportOptions.conclude",
10094 FT_BOOLEAN, 8, NULL, 0x10,
10095 NULL, HFILL }},
10096 { &hf_mms_ServiceSupportOptions_cancel,
10097 { "cancel", "mms.ServiceSupportOptions.cancel",
10098 FT_BOOLEAN, 8, NULL, 0x08,
10099 NULL, HFILL }},
10100 { &hf_mms_Transitions_idle_to_disabled,
10101 { "idle-to-disabled", "mms.Transitions.idle.to.disabled",
10102 FT_BOOLEAN, 8, NULL, 0x80,
10103 NULL, HFILL }},
10104 { &hf_mms_Transitions_active_to_disabled,
10105 { "active-to-disabled", "mms.Transitions.active.to.disabled",
10106 FT_BOOLEAN, 8, NULL, 0x40,
10107 NULL, HFILL }},
10108 { &hf_mms_Transitions_disabled_to_idle,
10109 { "disabled-to-idle", "mms.Transitions.disabled.to.idle",
10110 FT_BOOLEAN, 8, NULL, 0x20,
10111 NULL, HFILL }},
10112 { &hf_mms_Transitions_active_to_idle,
10113 { "active-to-idle", "mms.Transitions.active.to.idle",
10114 FT_BOOLEAN, 8, NULL, 0x10,
10115 NULL, HFILL }},
10116 { &hf_mms_Transitions_disabled_to_active,
10117 { "disabled-to-active", "mms.Transitions.disabled.to.active",
10118 FT_BOOLEAN, 8, NULL, 0x08,
10119 NULL, HFILL }},
10120 { &hf_mms_Transitions_idle_to_active,
10121 { "idle-to-active", "mms.Transitions.idle.to.active",
10122 FT_BOOLEAN, 8, NULL, 0x04,
10123 NULL, HFILL }},
10124 { &hf_mms_Transitions_any_to_deleted,
10125 { "any-to-deleted", "mms.Transitions.any.to.deleted",
10126 FT_BOOLEAN, 8, NULL, 0x02,
10127 NULL, HFILL }},
10128
10129 /*--- End of included file: packet-mms-hfarr.c ---*/
10130 #line 165 "./asn1/mms/packet-mms-template.c"
10131 };
10132
10133 /* List of subtrees */
10134 static gint *ett[] = {
10135 &ett_mms,
10136
10137 /*--- Included file: packet-mms-ettarr.c ---*/
10138 #line 1 "./asn1/mms/packet-mms-ettarr.c"
10139 &ett_mms_MMSpdu,
10140 &ett_mms_Confirmed_RequestPDU,
10141 &ett_mms_SEQUENCE_OF_Modifier,
10142 &ett_mms_Unconfirmed_PDU,
10143 &ett_mms_Confirmed_ResponsePDU,
10144 &ett_mms_Confirmed_ErrorPDU,
10145 &ett_mms_UnconfirmedService,
10146 &ett_mms_Modifier,
10147 &ett_mms_ConfirmedServiceRequest,
10148 &ett_mms_CS_Request_Detail,
10149 &ett_mms_ConfirmedServiceResponse,
10150 &ett_mms_FileName,
10151 &ett_mms_ObjectName,
10152 &ett_mms_T_domain_specific,
10153 &ett_mms_ApplicationReference,
10154 &ett_mms_Initiate_RequestPDU,
10155 &ett_mms_InitRequestDetail,
10156 &ett_mms_Initiate_ResponsePDU,
10157 &ett_mms_InitResponseDetail,
10158 &ett_mms_ParameterSupportOptions,
10159 &ett_mms_ServiceSupportOptions,
10160 &ett_mms_Cancel_ErrorPDU,
10161 &ett_mms_ServiceError,
10162 &ett_mms_T_errorClass,
10163 &ett_mms_T_serviceSpecificInformation,
10164 &ett_mms_AdditionalService_Error,
10165 &ett_mms_RemoveEventConditionListReference_Error,
10166 &ett_mms_InitiateUnitControl_Error,
10167 &ett_mms_StartUnitControl_Error,
10168 &ett_mms_StopUnitControl_Error,
10169 &ett_mms_DeleteUnitControl_Error,
10170 &ett_mms_LoadUnitControlFromFile_Error,
10171 &ett_mms_RejectPDU,
10172 &ett_mms_T_rejectReason,
10173 &ett_mms_Status_Response,
10174 &ett_mms_GetNameList_Request,
10175 &ett_mms_T_extendedObjectClass,
10176 &ett_mms_T_objectScope,
10177 &ett_mms_GetNameList_Response,
10178 &ett_mms_SEQUENCE_OF_Identifier,
10179 &ett_mms_Identify_Response,
10180 &ett_mms_T_listOfAbstractSyntaxes,
10181 &ett_mms_Rename_Request,
10182 &ett_mms_T_extendedObjectClass_01,
10183 &ett_mms_GetCapabilityList_Request,
10184 &ett_mms_GetCapabilityList_Response,
10185 &ett_mms_T_listOfCapabilities,
10186 &ett_mms_InitiateDownloadSequence_Request,
10187 &ett_mms_T_listOfCapabilities_01,
10188 &ett_mms_DownloadSegment_Response,
10189 &ett_mms_T_loadData,
10190 &ett_mms_TerminateDownloadSequence_Request,
10191 &ett_mms_InitiateUploadSequence_Response,
10192 &ett_mms_T_listOfCapabilities_02,
10193 &ett_mms_UploadSegment_Response,
10194 &ett_mms_T_loadData_01,
10195 &ett_mms_RequestDomainDownload_Request,
10196 &ett_mms_T_listOfCapabilities_03,
10197 &ett_mms_RequestDomainUpload_Request,
10198 &ett_mms_LoadDomainContent_Request,
10199 &ett_mms_T_listOfCapabilities_04,
10200 &ett_mms_StoreDomainContent_Request,
10201 &ett_mms_GetDomainAttributes_Response,
10202 &ett_mms_T_listOfCapabilities_05,
10203 &ett_mms_CreateProgramInvocation_Request,
10204 &ett_mms_Start_Request,
10205 &ett_mms_T_executionArgument,
10206 &ett_mms_Stop_Request,
10207 &ett_mms_Resume_Request,
10208 &ett_mms_T_executionArgument_01,
10209 &ett_mms_Reset_Request,
10210 &ett_mms_Kill_Request,
10211 &ett_mms_GetProgramInvocationAttributes_Response,
10212 &ett_mms_T_executionArgument_02,
10213 &ett_mms_TypeSpecification,
10214 &ett_mms_T_array,
10215 &ett_mms_T_structure,
10216 &ett_mms_T_components,
10217 &ett_mms_T_components_item,
10218 &ett_mms_AlternateAccess,
10219 &ett_mms_AlternateAccess_item,
10220 &ett_mms_T_named,
10221 &ett_mms_AlternateAccessSelection,
10222 &ett_mms_T_selectAlternateAccess,
10223 &ett_mms_T_accessSelection,
10224 &ett_mms_T_indexRange,
10225 &ett_mms_T_selectAccess,
10226 &ett_mms_T_indexRange_01,
10227 &ett_mms_Read_Request,
10228 &ett_mms_Read_Response,
10229 &ett_mms_SEQUENCE_OF_AccessResult,
10230 &ett_mms_Write_Request,
10231 &ett_mms_SEQUENCE_OF_Data,
10232 &ett_mms_Write_Response,
10233 &ett_mms_Write_Response_item,
10234 &ett_mms_InformationReport,
10235 &ett_mms_GetVariableAccessAttributes_Request,
10236 &ett_mms_GetVariableAccessAttributes_Response,
10237 &ett_mms_DefineNamedVariable_Request,
10238 &ett_mms_DefineScatteredAccess_Request,
10239 &ett_mms_GetScatteredAccessAttributes_Response,
10240 &ett_mms_DeleteVariableAccess_Request,
10241 &ett_mms_SEQUENCE_OF_ObjectName,
10242 &ett_mms_DeleteVariableAccess_Response,
10243 &ett_mms_DefineNamedVariableList_Request,
10244 &ett_mms_T_listOfVariable,
10245 &ett_mms_T_listOfVariable_item,
10246 &ett_mms_GetNamedVariableListAttributes_Response,
10247 &ett_mms_T_listOfVariable_01,
10248 &ett_mms_T_listOfVariable_item_01,
10249 &ett_mms_DeleteNamedVariableList_Request,
10250 &ett_mms_DeleteNamedVariableList_Response,
10251 &ett_mms_DefineNamedType_Request,
10252 &ett_mms_GetNamedTypeAttributes_Response,
10253 &ett_mms_DeleteNamedType_Request,
10254 &ett_mms_DeleteNamedType_Response,
10255 &ett_mms_AccessResult,
10256 &ett_mms_Data,
10257 &ett_mms_VariableAccessSpecification,
10258 &ett_mms_T_listOfVariable_02,
10259 &ett_mms_T_listOfVariable_item_02,
10260 &ett_mms_ScatteredAccessDescription,
10261 &ett_mms_ScatteredAccessDescription_item,
10262 &ett_mms_VariableSpecification,
10263 &ett_mms_T_variableDescription,
10264 &ett_mms_Address,
10265 &ett_mms_TakeControl_Request,
10266 &ett_mms_TakeControl_Response,
10267 &ett_mms_RelinquishControl_Request,
10268 &ett_mms_DefineSemaphore_Request,
10269 &ett_mms_ReportSemaphoreStatus_Response,
10270 &ett_mms_ReportPoolSemaphoreStatus_Request,
10271 &ett_mms_ReportPoolSemaphoreStatus_Response,
10272 &ett_mms_T_listOfNamedTokens,
10273 &ett_mms_T_listOfNamedTokens_item,
10274 &ett_mms_ReportSemaphoreEntryStatus_Request,
10275 &ett_mms_ReportSemaphoreEntryStatus_Response,
10276 &ett_mms_SEQUENCE_OF_SemaphoreEntry,
10277 &ett_mms_AttachToSemaphore,
10278 &ett_mms_SemaphoreEntry,
10279 &ett_mms_Input_Request,
10280 &ett_mms_T_listOfPromptData,
10281 &ett_mms_Output_Request,
10282 &ett_mms_T_listOfOutputData,
10283 &ett_mms_DefineEventCondition_Request,
10284 &ett_mms_DeleteEventCondition_Request,
10285 &ett_mms_GetEventConditionAttributes_Response,
10286 &ett_mms_T_monitoredVariable,
10287 &ett_mms_ReportEventConditionStatus_Response,
10288 &ett_mms_AlterEventConditionMonitoring_Request,
10289 &ett_mms_TriggerEvent_Request,
10290 &ett_mms_DefineEventAction_Request,
10291 &ett_mms_DeleteEventAction_Request,
10292 &ett_mms_GetEventActionAttributes_Response,
10293 &ett_mms_DefineEventEnrollment_Request,
10294 &ett_mms_DeleteEventEnrollment_Request,
10295 &ett_mms_GetEventEnrollmentAttributes_Request,
10296 &ett_mms_EventEnrollment,
10297 &ett_mms_T_eventConditionName,
10298 &ett_mms_T_eventActionName,
10299 &ett_mms_GetEventEnrollmentAttributes_Response,
10300 &ett_mms_SEQUENCE_OF_EventEnrollment,
10301 &ett_mms_ReportEventEnrollmentStatus_Response,
10302 &ett_mms_AlterEventEnrollment_Request,
10303 &ett_mms_AlterEventEnrollment_Response,
10304 &ett_mms_T_currentState,
10305 &ett_mms_AcknowledgeEventNotification_Request,
10306 &ett_mms_GetAlarmSummary_Request,
10307 &ett_mms_T_severityFilter,
10308 &ett_mms_GetAlarmSummary_Response,
10309 &ett_mms_SEQUENCE_OF_AlarmSummary,
10310 &ett_mms_AlarmSummary,
10311 &ett_mms_GetAlarmEnrollmentSummary_Request,
10312 &ett_mms_T_severityFilter_01,
10313 &ett_mms_GetAlarmEnrollmentSummary_Response,
10314 &ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary,
10315 &ett_mms_AlarmEnrollmentSummary,
10316 &ett_mms_EventNotification,
10317 &ett_mms_T_eventConditionName_01,
10318 &ett_mms_T_actionResult,
10319 &ett_mms_T_eventActionResult,
10320 &ett_mms_AttachToEventCondition,
10321 &ett_mms_EventTime,
10322 &ett_mms_Transitions,
10323 &ett_mms_ReadJournal_Request,
10324 &ett_mms_T_rangeStartSpecification,
10325 &ett_mms_T_rangeStopSpecification,
10326 &ett_mms_T_listOfVariables,
10327 &ett_mms_T_entryToStartAfter,
10328 &ett_mms_ReadJournal_Response,
10329 &ett_mms_SEQUENCE_OF_JournalEntry,
10330 &ett_mms_JournalEntry,
10331 &ett_mms_WriteJournal_Request,
10332 &ett_mms_SEQUENCE_OF_EntryContent,
10333 &ett_mms_InitializeJournal_Request,
10334 &ett_mms_T_limitSpecification,
10335 &ett_mms_ReportJournalStatus_Response,
10336 &ett_mms_CreateJournal_Request,
10337 &ett_mms_DeleteJournal_Request,
10338 &ett_mms_EntryContent,
10339 &ett_mms_T_entryForm,
10340 &ett_mms_T_data,
10341 &ett_mms_T_event,
10342 &ett_mms_T_listOfVariables_01,
10343 &ett_mms_T_listOfVariables_item,
10344 &ett_mms_ObtainFile_Request,
10345 &ett_mms_FileOpen_Request,
10346 &ett_mms_FileOpen_Response,
10347 &ett_mms_FileRead_Response,
10348 &ett_mms_FileRename_Request,
10349 &ett_mms_FileDirectory_Request,
10350 &ett_mms_FileDirectory_Response,
10351 &ett_mms_SEQUENCE_OF_DirectoryEntry,
10352 &ett_mms_DirectoryEntry,
10353 &ett_mms_FileAttributes,
10354
10355 /*--- End of included file: packet-mms-ettarr.c ---*/
10356 #line 171 "./asn1/mms/packet-mms-template.c"
10357 };
10358
10359 static ei_register_info ei[] = {
10360 { &ei_mms_mal_timeofday_encoding, { "mms.malformed.timeofday_encoding", PI_MALFORMED, PI_WARN, "BER Error: malformed TimeOfDay encoding", EXPFILL }},
10361 { &ei_mms_mal_utctime_encoding, { "mms.malformed.utctime", PI_MALFORMED, PI_WARN, "BER Error: malformed IEC61850 UTCTime encoding", EXPFILL }},
10362 { &ei_mms_zero_pdu, { "mms.zero_pdu", PI_PROTOCOL, PI_ERROR, "Internal error, zero-byte MMS PDU", EXPFILL }},
10363 };
10364
10365 expert_module_t* expert_mms;
10366
10367 /* Register protocol */
10368 proto_mms = proto_register_protocol(PNAME, PSNAME, PFNAME);
10369 register_dissector("mms", dissect_mms, proto_mms);
10370 /* Register fields and subtrees */
10371 proto_register_field_array(proto_mms, hf, array_length(hf));
10372 proto_register_subtree_array(ett, array_length(ett));
10373 expert_mms = expert_register_protocol(proto_mms);
10374 expert_register_field_array(expert_mms, ei, array_length(ei));
10375
10376 }
10377
10378
10379 static gboolean
dissect_mms_heur(tvbuff_t * tvb,packet_info * pinfo,proto_tree * parent_tree,void * data _U_)10380 dissect_mms_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
10381 {
10382 /* must check that this really is an mms packet */
10383 int offset = 0;
10384 guint32 length = 0 ;
10385 guint32 oct;
10386 gint idx = 0 ;
10387
10388 gint8 tmp_class;
10389 gboolean tmp_pc;
10390 gint32 tmp_tag;
10391
10392 /* first, check do we have at least 2 bytes (pdu) */
10393 if (!tvb_bytes_exist(tvb, 0, 2))
10394 return FALSE; /* no */
10395
10396 /* can we recognize MMS PDU ? Return FALSE if not */
10397 /* get MMS PDU type */
10398 offset = get_ber_identifier(tvb, offset, &tmp_class, &tmp_pc, &tmp_tag);
10399
10400 /* check MMS type */
10401
10402 /* Class should be constructed */
10403 if (tmp_class!=BER_CLASS_CON)
10404 return FALSE;
10405
10406 /* see if the tag is a valid MMS PDU */
10407 try_val_to_str_idx(tmp_tag, mms_MMSpdu_vals, &idx);
10408 if (idx == -1) {
10409 return FALSE; /* no, it isn't an MMS PDU */
10410 }
10411
10412 /* check MMS length */
10413 oct = tvb_get_guint8(tvb, offset)& 0x7F;
10414 if (oct==0)
10415 /* MMS requires length after tag so not MMS if indefinite length*/
10416 return FALSE;
10417
10418 offset = get_ber_length(tvb, offset, &length, NULL);
10419 /* do we have enough bytes? */
10420 if (!tvb_bytes_exist(tvb, offset, length))
10421 return FALSE;
10422
10423 dissect_mms(tvb, pinfo, parent_tree, data);
10424 return TRUE;
10425 }
10426
10427 /*--- proto_reg_handoff_mms --- */
proto_reg_handoff_mms(void)10428 void proto_reg_handoff_mms(void) {
10429 register_ber_oid_dissector("1.0.9506.2.3", dissect_mms, proto_mms,"MMS");
10430 register_ber_oid_dissector("1.0.9506.2.1", dissect_mms, proto_mms,"mms-abstract-syntax-version1(1)");
10431 heur_dissector_add("cotp", dissect_mms_heur, "MMS over COTP", "mms_cotp", proto_mms, HEURISTIC_ENABLE);
10432 heur_dissector_add("cotp_is", dissect_mms_heur, "MMS over COTP (inactive subset)", "mms_cotp_is", proto_mms, HEURISTIC_ENABLE);
10433 }
10434
10435