/src/wireshark/epan/dissectors/packet-mms.c
Line | Count | Source (jump to first uncovered line) |
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 -q -L -p mms -c ./mms.cnf -s ./packet-mms-template -D . -O ../.. mms.asn */ |
5 | | |
6 | | /* packet-mms_asn1.c |
7 | | * |
8 | | * Ronnie Sahlberg 2005 |
9 | | * |
10 | | * Wireshark - Network traffic analyzer |
11 | | * By Gerald Combs <gerald@wireshark.org> |
12 | | * Copyright 1998 Gerald Combs |
13 | | * |
14 | | * SPDX-License-Identifier: GPL-2.0-or-later |
15 | | */ |
16 | | |
17 | | #include "config.h" |
18 | | |
19 | | #include <epan/packet.h> |
20 | | #include <epan/prefs.h> |
21 | | #include <epan/asn1.h> |
22 | | #include <epan/expert.h> |
23 | | #include <epan/proto_data.h> |
24 | | #include <epan/conversation.h> |
25 | | #include <wsutil/array.h> |
26 | | |
27 | | #include "packet-ber.h" |
28 | | #include "packet-acse.h" |
29 | | #include "packet-mms.h" |
30 | | |
31 | 14 | #define PNAME "MMS" |
32 | 14 | #define PSNAME "MMS" |
33 | 14 | #define PFNAME "mms" |
34 | | |
35 | | void proto_register_mms(void); |
36 | | void proto_reg_handoff_mms(void); |
37 | | |
38 | | static bool use_iec61850_mapping = true; |
39 | | |
40 | | /* Initialize the protocol and registered fields */ |
41 | | static int proto_mms; |
42 | | |
43 | | /* Conversation */ |
44 | | static int hf_mms_response_in; |
45 | | static int hf_mms_response_to; |
46 | | static int hf_mms_response_time; |
47 | | |
48 | | /* IEC 61850-8-1 filters */ |
49 | | static int hf_mms_iec61850_rptid; |
50 | | static int hf_mms_iec61850_reported_optflds; |
51 | | static int hf_mms_iec61850_seqnum; |
52 | | static int hf_mms_iec61850_timeofentry; |
53 | | static int hf_mms_iec61850_datset; |
54 | | static int hf_mms_iec61850_bufovfl; |
55 | | static int hf_mms_iec61850_confrev; |
56 | | static int hf_mms_iec61850_inclusion_bitstring; |
57 | | static int hf_mms_iec61850_ctlModel; |
58 | | |
59 | | static int hf_mms_iec61850_QualityC0; |
60 | | static int hf_mms_iec61850_Quality20; |
61 | | static int hf_mms_iec61850_Quality10; |
62 | | static int hf_mms_iec61850_Quality8; |
63 | | static int hf_mms_iec61850_Quality4; |
64 | | static int hf_mms_iec61850_Quality2; |
65 | | static int hf_mms_iec61850_Quality1; |
66 | | static int hf_mms_iec61850_Quality0080; |
67 | | static int hf_mms_iec61850_Quality0040; |
68 | | static int hf_mms_iec61850_Quality0020; |
69 | | static int hf_mms_iec61850_Quality0010; |
70 | | static int hf_mms_iec61850_Quality0008; |
71 | | static int hf_mms_iec61850_quality_bitstring; |
72 | | static int hf_mms_iec61850_timequality80; |
73 | | static int hf_mms_iec61850_timequality40; |
74 | | static int hf_mms_iec61850_timequality20; |
75 | | static int hf_mms_iec61850_timequality1F; |
76 | | static int hf_mms_iec61850_check_bitstring; |
77 | | static int hf_mms_iec61850_check_b15; |
78 | | static int hf_mms_iec61850_check_b14; |
79 | | static int hf_mms_iec61850_check_b13_b0; |
80 | | static int hf_mms_iec61850_orcategory; |
81 | | static int hf_mms_iec61850_beh$stval; |
82 | | static int hf_mms_iec61850_mod$stval; |
83 | | static int hf_mms_iec61850_health$stval; |
84 | | static int hf_mms_iec61850_ctlval; |
85 | | static int hf_mms_iec61850_origin; |
86 | | static int hf_mms_iec61850_origin_orcat; |
87 | | static int hf_mms_iec61850_origin_orident; |
88 | | static int hf_mms_iec61850_ctlNum; |
89 | | static int hf_mms_iec61850_T; |
90 | | static int hf_mms_iec61850_test; |
91 | | |
92 | | static int hf_mms_confirmed_RequestPDU; /* Confirmed_RequestPDU */ |
93 | | static int hf_mms_confirmed_ResponsePDU; /* Confirmed_ResponsePDU */ |
94 | | static int hf_mms_confirmed_ErrorPDU; /* Confirmed_ErrorPDU */ |
95 | | static int hf_mms_unconfirmed_PDU; /* Unconfirmed_PDU */ |
96 | | static int hf_mms_rejectPDU; /* RejectPDU */ |
97 | | static int hf_mms_cancel_RequestPDU; /* Cancel_RequestPDU */ |
98 | | static int hf_mms_cancel_ResponsePDU; /* Cancel_ResponsePDU */ |
99 | | static int hf_mms_cancel_ErrorPDU; /* Cancel_ErrorPDU */ |
100 | | static int hf_mms_initiate_RequestPDU; /* Initiate_RequestPDU */ |
101 | | static int hf_mms_initiate_ResponsePDU; /* Initiate_ResponsePDU */ |
102 | | static int hf_mms_initiate_ErrorPDU; /* Initiate_ErrorPDU */ |
103 | | static int hf_mms_conclude_RequestPDU; /* Conclude_RequestPDU */ |
104 | | static int hf_mms_conclude_ResponsePDU; /* Conclude_ResponsePDU */ |
105 | | static int hf_mms_conclude_ErrorPDU; /* Conclude_ErrorPDU */ |
106 | | static int hf_mms_invokeID; /* Unsigned32 */ |
107 | | static int hf_mms_listOfModifier; /* SEQUENCE_OF_Modifier */ |
108 | | static int hf_mms_listOfModifier_item; /* Modifier */ |
109 | | static int hf_mms_confirmedServiceRequest; /* ConfirmedServiceRequest */ |
110 | | static int hf_mms_cs_request_detail; /* CS_Request_Detail */ |
111 | | static int hf_mms_unconfirmedService; /* UnconfirmedService */ |
112 | | static int hf_mms_confirmedServiceResponse; /* ConfirmedServiceResponse */ |
113 | | static int hf_mms_modifierPosition; /* Unsigned32 */ |
114 | | static int hf_mms_serviceError; /* ServiceError */ |
115 | | static int hf_mms_informationReport; /* InformationReport */ |
116 | | static int hf_mms_unsolicitedStatus; /* UnsolicitedStatus */ |
117 | | static int hf_mms_eventNotification; /* EventNotification */ |
118 | | static int hf_mms_attach_To_Event_Condition; /* AttachToEventCondition */ |
119 | | static int hf_mms_attach_To_Semaphore; /* AttachToSemaphore */ |
120 | | static int hf_mms_status; /* Status_Request */ |
121 | | static int hf_mms_getNameList; /* GetNameList_Request */ |
122 | | static int hf_mms_identify; /* Identify_Request */ |
123 | | static int hf_mms_rename; /* Rename_Request */ |
124 | | static int hf_mms_read; /* Read_Request */ |
125 | | static int hf_mms_write; /* Write_Request */ |
126 | | static int hf_mms_getVariableAccessAttributes; /* GetVariableAccessAttributes_Request */ |
127 | | static int hf_mms_defineNamedVariable; /* DefineNamedVariable_Request */ |
128 | | static int hf_mms_defineScatteredAccess; /* DefineScatteredAccess_Request */ |
129 | | static int hf_mms_getScatteredAccessAttributes; /* GetScatteredAccessAttributes_Request */ |
130 | | static int hf_mms_deleteVariableAccess; /* DeleteVariableAccess_Request */ |
131 | | static int hf_mms_defineNamedVariableList; /* DefineNamedVariableList_Request */ |
132 | | static int hf_mms_getNamedVariableListAttributes; /* GetNamedVariableListAttributes_Request */ |
133 | | static int hf_mms_deleteNamedVariableList; /* DeleteNamedVariableList_Request */ |
134 | | static int hf_mms_defineNamedType; /* DefineNamedType_Request */ |
135 | | static int hf_mms_getNamedTypeAttributes; /* GetNamedTypeAttributes_Request */ |
136 | | static int hf_mms_deleteNamedType; /* DeleteNamedType_Request */ |
137 | | static int hf_mms_input; /* Input_Request */ |
138 | | static int hf_mms_output; /* Output_Request */ |
139 | | static int hf_mms_takeControl; /* TakeControl_Request */ |
140 | | static int hf_mms_relinquishControl; /* RelinquishControl_Request */ |
141 | | static int hf_mms_defineSemaphore; /* DefineSemaphore_Request */ |
142 | | static int hf_mms_deleteSemaphore; /* DeleteSemaphore_Request */ |
143 | | static int hf_mms_reportSemaphoreStatus; /* ReportSemaphoreStatus_Request */ |
144 | | static int hf_mms_reportPoolSemaphoreStatus; /* ReportPoolSemaphoreStatus_Request */ |
145 | | static int hf_mms_reportSemaphoreEntryStatus; /* ReportSemaphoreEntryStatus_Request */ |
146 | | static int hf_mms_initiateDownloadSequence; /* InitiateDownloadSequence_Request */ |
147 | | static int hf_mms_downloadSegment; /* DownloadSegment_Request */ |
148 | | static int hf_mms_terminateDownloadSequence; /* TerminateDownloadSequence_Request */ |
149 | | static int hf_mms_initiateUploadSequence; /* InitiateUploadSequence_Request */ |
150 | | static int hf_mms_uploadSegment; /* UploadSegment_Request */ |
151 | | static int hf_mms_terminateUploadSequence; /* TerminateUploadSequence_Request */ |
152 | | static int hf_mms_requestDomainDownload; /* RequestDomainDownload_Request */ |
153 | | static int hf_mms_requestDomainUpload; /* RequestDomainUpload_Request */ |
154 | | static int hf_mms_loadDomainContent; /* LoadDomainContent_Request */ |
155 | | static int hf_mms_storeDomainContent; /* StoreDomainContent_Request */ |
156 | | static int hf_mms_deleteDomain; /* DeleteDomain_Request */ |
157 | | static int hf_mms_getDomainAttributes; /* GetDomainAttributes_Request */ |
158 | | static int hf_mms_createProgramInvocation; /* CreateProgramInvocation_Request */ |
159 | | static int hf_mms_deleteProgramInvocation; /* DeleteProgramInvocation_Request */ |
160 | | static int hf_mms_start; /* Start_Request */ |
161 | | static int hf_mms_stop; /* Stop_Request */ |
162 | | static int hf_mms_resume; /* Resume_Request */ |
163 | | static int hf_mms_reset; /* Reset_Request */ |
164 | | static int hf_mms_kill; /* Kill_Request */ |
165 | | static int hf_mms_getProgramInvocationAttributes; /* GetProgramInvocationAttributes_Request */ |
166 | | static int hf_mms_obtainFile; /* ObtainFile_Request */ |
167 | | static int hf_mms_defineEventCondition; /* DefineEventCondition_Request */ |
168 | | static int hf_mms_confirmedServiceRequest_deleteEventCondition; /* DeleteEventCondition_Request */ |
169 | | static int hf_mms_getEventConditionAttributes; /* GetEventConditionAttributes_Request */ |
170 | | static int hf_mms_reportEventConditionStatus; /* ReportEventConditionStatus_Request */ |
171 | | static int hf_mms_alterEventConditionMonitoring; /* AlterEventConditionMonitoring_Request */ |
172 | | static int hf_mms_triggerEvent; /* TriggerEvent_Request */ |
173 | | static int hf_mms_defineEventAction; /* DefineEventAction_Request */ |
174 | | static int hf_mms_confirmedServiceRequest_deleteEventAction; /* DeleteEventAction_Request */ |
175 | | static int hf_mms_getEventActionAttributes; /* GetEventActionAttributes_Request */ |
176 | | static int hf_mms_reportEventActionStatus; /* ReportEventActionStatus_Request */ |
177 | | static int hf_mms_defineEventEnrollment; /* DefineEventEnrollment_Request */ |
178 | | static int hf_mms_confirmedServiceRequest_deleteEventEnrollment; /* DeleteEventEnrollment_Request */ |
179 | | static int hf_mms_alterEventEnrollment; /* AlterEventEnrollment_Request */ |
180 | | static int hf_mms_reportEventEnrollmentStatus; /* ReportEventEnrollmentStatus_Request */ |
181 | | static int hf_mms_getEventEnrollmentAttributes; /* GetEventEnrollmentAttributes_Request */ |
182 | | static int hf_mms_acknowledgeEventNotification; /* AcknowledgeEventNotification_Request */ |
183 | | static int hf_mms_getAlarmSummary; /* GetAlarmSummary_Request */ |
184 | | static int hf_mms_getAlarmEnrollmentSummary; /* GetAlarmEnrollmentSummary_Request */ |
185 | | static int hf_mms_readJournal; /* ReadJournal_Request */ |
186 | | static int hf_mms_writeJournal; /* WriteJournal_Request */ |
187 | | static int hf_mms_initializeJournal; /* InitializeJournal_Request */ |
188 | | static int hf_mms_reportJournalStatus; /* ReportJournalStatus_Request */ |
189 | | static int hf_mms_createJournal; /* CreateJournal_Request */ |
190 | | static int hf_mms_deleteJournal; /* DeleteJournal_Request */ |
191 | | static int hf_mms_getCapabilityList; /* GetCapabilityList_Request */ |
192 | | static int hf_mms_fileOpen; /* FileOpen_Request */ |
193 | | static int hf_mms_fileRead; /* FileRead_Request */ |
194 | | static int hf_mms_fileClose; /* FileClose_Request */ |
195 | | static int hf_mms_fileRename; /* FileRename_Request */ |
196 | | static int hf_mms_fileDelete; /* FileDelete_Request */ |
197 | | static int hf_mms_fileDirectory; /* FileDirectory_Request */ |
198 | | static int hf_mms_foo; /* INTEGER */ |
199 | | static int hf_mms_status_01; /* Status_Response */ |
200 | | static int hf_mms_getNameList_01; /* GetNameList_Response */ |
201 | | static int hf_mms_identify_01; /* Identify_Response */ |
202 | | static int hf_mms_rename_01; /* Rename_Response */ |
203 | | static int hf_mms_read_01; /* Read_Response */ |
204 | | static int hf_mms_write_01; /* Write_Response */ |
205 | | static int hf_mms_getVariableAccessAttributes_01; /* GetVariableAccessAttributes_Response */ |
206 | | static int hf_mms_defineNamedVariable_01; /* DefineNamedVariable_Response */ |
207 | | static int hf_mms_defineScatteredAccess_01; /* DefineScatteredAccess_Response */ |
208 | | static int hf_mms_getScatteredAccessAttributes_01; /* GetScatteredAccessAttributes_Response */ |
209 | | static int hf_mms_deleteVariableAccess_01; /* DeleteVariableAccess_Response */ |
210 | | static int hf_mms_defineNamedVariableList_01; /* DefineNamedVariableList_Response */ |
211 | | static int hf_mms_getNamedVariableListAttributes_01; /* GetNamedVariableListAttributes_Response */ |
212 | | static int hf_mms_deleteNamedVariableList_01; /* DeleteNamedVariableList_Response */ |
213 | | static int hf_mms_defineNamedType_01; /* DefineNamedType_Response */ |
214 | | static int hf_mms_getNamedTypeAttributes_01; /* GetNamedTypeAttributes_Response */ |
215 | | static int hf_mms_deleteNamedType_01; /* DeleteNamedType_Response */ |
216 | | static int hf_mms_input_01; /* Input_Response */ |
217 | | static int hf_mms_output_01; /* Output_Response */ |
218 | | static int hf_mms_takeControl_01; /* TakeControl_Response */ |
219 | | static int hf_mms_relinquishControl_01; /* RelinquishControl_Response */ |
220 | | static int hf_mms_defineSemaphore_01; /* DefineSemaphore_Response */ |
221 | | static int hf_mms_deleteSemaphore_01; /* DeleteSemaphore_Response */ |
222 | | static int hf_mms_reportSemaphoreStatus_01; /* ReportSemaphoreStatus_Response */ |
223 | | static int hf_mms_reportPoolSemaphoreStatus_01; /* ReportPoolSemaphoreStatus_Response */ |
224 | | static int hf_mms_reportSemaphoreEntryStatus_01; /* ReportSemaphoreEntryStatus_Response */ |
225 | | static int hf_mms_initiateDownloadSequence_01; /* InitiateDownloadSequence_Response */ |
226 | | static int hf_mms_downloadSegment_01; /* DownloadSegment_Response */ |
227 | | static int hf_mms_terminateDownloadSequence_01; /* TerminateDownloadSequence_Response */ |
228 | | static int hf_mms_initiateUploadSequence_01; /* InitiateUploadSequence_Response */ |
229 | | static int hf_mms_uploadSegment_01; /* UploadSegment_Response */ |
230 | | static int hf_mms_terminateUploadSequence_01; /* TerminateUploadSequence_Response */ |
231 | | static int hf_mms_requestDomainDownLoad; /* RequestDomainDownload_Response */ |
232 | | static int hf_mms_requestDomainUpload_01; /* RequestDomainUpload_Response */ |
233 | | static int hf_mms_loadDomainContent_01; /* LoadDomainContent_Response */ |
234 | | static int hf_mms_storeDomainContent_01; /* StoreDomainContent_Response */ |
235 | | static int hf_mms_deleteDomain_01; /* DeleteDomain_Response */ |
236 | | static int hf_mms_getDomainAttributes_01; /* GetDomainAttributes_Response */ |
237 | | static int hf_mms_createProgramInvocation_01; /* CreateProgramInvocation_Response */ |
238 | | static int hf_mms_deleteProgramInvocation_01; /* DeleteProgramInvocation_Response */ |
239 | | static int hf_mms_start_01; /* Start_Response */ |
240 | | static int hf_mms_stop_01; /* Stop_Response */ |
241 | | static int hf_mms_resume_01; /* Resume_Response */ |
242 | | static int hf_mms_reset_01; /* Reset_Response */ |
243 | | static int hf_mms_kill_01; /* Kill_Response */ |
244 | | static int hf_mms_getProgramInvocationAttributes_01; /* GetProgramInvocationAttributes_Response */ |
245 | | static int hf_mms_obtainFile_01; /* ObtainFile_Response */ |
246 | | static int hf_mms_fileOpen_01; /* FileOpen_Response */ |
247 | | static int hf_mms_defineEventCondition_01; /* DefineEventCondition_Response */ |
248 | | static int hf_mms_confirmedServiceResponse_deleteEventCondition; /* DeleteEventCondition_Response */ |
249 | | static int hf_mms_getEventConditionAttributes_01; /* GetEventConditionAttributes_Response */ |
250 | | static int hf_mms_reportEventConditionStatus_01; /* ReportEventConditionStatus_Response */ |
251 | | static int hf_mms_alterEventConditionMonitoring_01; /* AlterEventConditionMonitoring_Response */ |
252 | | static int hf_mms_triggerEvent_01; /* TriggerEvent_Response */ |
253 | | static int hf_mms_defineEventAction_01; /* DefineEventAction_Response */ |
254 | | static int hf_mms_confirmedServiceRequest_deleteEventAction_01; /* DeleteEventAction_Response */ |
255 | | static int hf_mms_getEventActionAttributes_01; /* GetEventActionAttributes_Response */ |
256 | | static int hf_mms_reportActionStatus; /* ReportEventActionStatus_Response */ |
257 | | static int hf_mms_defineEventEnrollment_01; /* DefineEventEnrollment_Response */ |
258 | | static int hf_mms_confirmedServiceResponse_deleteEventEnrollment; /* DeleteEventEnrollment_Response */ |
259 | | static int hf_mms_alterEventEnrollment_01; /* AlterEventEnrollment_Response */ |
260 | | static int hf_mms_reportEventEnrollmentStatus_01; /* ReportEventEnrollmentStatus_Response */ |
261 | | static int hf_mms_getEventEnrollmentAttributes_01; /* GetEventEnrollmentAttributes_Response */ |
262 | | static int hf_mms_acknowledgeEventNotification_01; /* AcknowledgeEventNotification_Response */ |
263 | | static int hf_mms_getAlarmSummary_01; /* GetAlarmSummary_Response */ |
264 | | static int hf_mms_getAlarmEnrollmentSummary_01; /* GetAlarmEnrollmentSummary_Response */ |
265 | | static int hf_mms_readJournal_01; /* ReadJournal_Response */ |
266 | | static int hf_mms_writeJournal_01; /* WriteJournal_Response */ |
267 | | static int hf_mms_initializeJournal_01; /* InitializeJournal_Response */ |
268 | | static int hf_mms_reportJournalStatus_01; /* ReportJournalStatus_Response */ |
269 | | static int hf_mms_createJournal_01; /* CreateJournal_Response */ |
270 | | static int hf_mms_deleteJournal_01; /* DeleteJournal_Response */ |
271 | | static int hf_mms_getCapabilityList_01; /* GetCapabilityList_Response */ |
272 | | static int hf_mms_fileRead_01; /* FileRead_Response */ |
273 | | static int hf_mms_fileClose_01; /* FileClose_Response */ |
274 | | static int hf_mms_fileRename_01; /* FileRename_Response */ |
275 | | static int hf_mms_fileDelete_01; /* FileDelete_Response */ |
276 | | static int hf_mms_fileDirectory_01; /* FileDirectory_Response */ |
277 | | static int hf_mms_FileName_item; /* GraphicString */ |
278 | | static int hf_mms_vmd_specific; /* Identifier */ |
279 | | static int hf_mms_domain_specific; /* T_domain_specific */ |
280 | | static int hf_mms_domainId; /* Identifier */ |
281 | | static int hf_mms_objectName_domain_specific_itemId; /* ObjectName_domain_specific_itemid */ |
282 | | static int hf_mms_aa_specific; /* Identifier */ |
283 | | static int hf_mms_ap_title; /* T_ap_title */ |
284 | | static int hf_mms_ap_invocation_id; /* T_ap_invocation_id */ |
285 | | static int hf_mms_ae_qualifier; /* T_ae_qualifier */ |
286 | | static int hf_mms_ae_invocation_id; /* T_ae_invocation_id */ |
287 | | static int hf_mms_localDetailCalling; /* Integer32 */ |
288 | | static int hf_mms_proposedMaxServOutstandingCalling; /* Integer16 */ |
289 | | static int hf_mms_proposedMaxServOutstandingCalled; /* Integer16 */ |
290 | | static int hf_mms_proposedDataStructureNestingLevel; /* Integer8 */ |
291 | | static int hf_mms_mmsInitRequestDetail; /* InitRequestDetail */ |
292 | | static int hf_mms_proposedVersionNumber; /* Integer16 */ |
293 | | static int hf_mms_proposedParameterCBB; /* ParameterSupportOptions */ |
294 | | static int hf_mms_servicesSupportedCalling; /* ServiceSupportOptions */ |
295 | | static int hf_mms_localDetailCalled; /* Integer32 */ |
296 | | static int hf_mms_negociatedMaxServOutstandingCalling; /* Integer16 */ |
297 | | static int hf_mms_negociatedMaxServOutstandingCalled; /* Integer16 */ |
298 | | static int hf_mms_negociatedDataStructureNestingLevel; /* Integer8 */ |
299 | | static int hf_mms_mmsInitResponseDetail; /* InitResponseDetail */ |
300 | | static int hf_mms_negociatedVersionNumber; /* Integer16 */ |
301 | | static int hf_mms_negociatedParameterCBB; /* ParameterSupportOptions */ |
302 | | static int hf_mms_servicesSupportedCalled; /* ServiceSupportOptions */ |
303 | | static int hf_mms_originalInvokeID; /* Unsigned32 */ |
304 | | static int hf_mms_errorClass; /* T_errorClass */ |
305 | | static int hf_mms_vmd_state; /* T_vmd_state */ |
306 | | static int hf_mms_application_reference; /* T_application_reference */ |
307 | | static int hf_mms_definition; /* T_definition */ |
308 | | static int hf_mms_resource; /* T_resource */ |
309 | | static int hf_mms_service; /* T_service */ |
310 | | static int hf_mms_service_preempt; /* T_service_preempt */ |
311 | | static int hf_mms_time_resolution; /* T_time_resolution */ |
312 | | static int hf_mms_access; /* T_access */ |
313 | | static int hf_mms_initiate; /* T_initiate */ |
314 | | static int hf_mms_conclude; /* T_conclude */ |
315 | | static int hf_mms_cancel; /* T_cancel */ |
316 | | static int hf_mms_file; /* T_file */ |
317 | | static int hf_mms_others; /* INTEGER */ |
318 | | static int hf_mms_additionalCode; /* INTEGER */ |
319 | | static int hf_mms_additionalDescription; /* VisibleString */ |
320 | | static int hf_mms_serviceSpecificInformation; /* T_serviceSpecificInformation */ |
321 | | static int hf_mms_obtainFile_02; /* ObtainFile_Error */ |
322 | | static int hf_mms_start_02; /* Start_Error */ |
323 | | static int hf_mms_stop_02; /* Stop_Error */ |
324 | | static int hf_mms_resume_02; /* Resume_Error */ |
325 | | static int hf_mms_reset_02; /* Reset_Error */ |
326 | | static int hf_mms_deleteVariableAccess_02; /* DeleteVariableAccess_Error */ |
327 | | static int hf_mms_deleteNamedVariableList_02; /* DeleteNamedVariableList_Error */ |
328 | | static int hf_mms_deleteNamedType_02; /* DeleteNamedType_Error */ |
329 | | static int hf_mms_defineEventEnrollment_Error; /* DefineEventEnrollment_Error */ |
330 | | static int hf_mms_fileRename_02; /* FileRename_Error */ |
331 | | static int hf_mms_additionalService; /* AdditionalService_Error */ |
332 | | static int hf_mms_changeAccessControl; /* ChangeAccessControl_Error */ |
333 | | static int hf_mms_defineEcl; /* DefineEventConditionList_Error */ |
334 | | static int hf_mms_addECLReference; /* AddEventConditionListReference_Error */ |
335 | | static int hf_mms_removeECLReference; /* RemoveEventConditionListReference_Error */ |
336 | | static int hf_mms_initiateUC; /* InitiateUnitControl_Error */ |
337 | | static int hf_mms_startUC; /* StartUnitControl_Error */ |
338 | | static int hf_mms_stopUC; /* StopUnitControl_Error */ |
339 | | static int hf_mms_deleteUC; /* DeleteUnitControl_Error */ |
340 | | static int hf_mms_loadUCFromFile; /* LoadUnitControlFromFile_Error */ |
341 | | static int hf_mms_eventCondition; /* ObjectName */ |
342 | | static int hf_mms_eventConditionList; /* ObjectName */ |
343 | | static int hf_mms_domain; /* Identifier */ |
344 | | static int hf_mms_programInvocation; /* Identifier */ |
345 | | static int hf_mms_programInvocationName; /* Identifier */ |
346 | | static int hf_mms_programInvocationState; /* ProgramInvocationState */ |
347 | | static int hf_mms_none; /* NULL */ |
348 | | static int hf_mms_rejectReason; /* T_rejectReason */ |
349 | | static int hf_mms_confirmed_requestPDU; /* T_confirmed_requestPDU */ |
350 | | static int hf_mms_confirmed_responsePDU; /* T_confirmed_responsePDU */ |
351 | | static int hf_mms_confirmed_errorPDU; /* T_confirmed_errorPDU */ |
352 | | static int hf_mms_unconfirmedPDU; /* T_unconfirmedPDU */ |
353 | | static int hf_mms_pdu_error; /* T_pdu_error */ |
354 | | static int hf_mms_cancel_requestPDU; /* T_cancel_requestPDU */ |
355 | | static int hf_mms_cancel_responsePDU; /* T_cancel_responsePDU */ |
356 | | static int hf_mms_cancel_errorPDU; /* T_cancel_errorPDU */ |
357 | | static int hf_mms_conclude_requestPDU; /* T_conclude_requestPDU */ |
358 | | static int hf_mms_conclude_responsePDU; /* T_conclude_responsePDU */ |
359 | | static int hf_mms_conclude_errorPDU; /* T_conclude_errorPDU */ |
360 | | static int hf_mms_vmdLogicalStatus; /* T_vmdLogicalStatus */ |
361 | | static int hf_mms_vmdPhysicalStatus; /* T_vmdPhysicalStatus */ |
362 | | static int hf_mms_localDetail; /* BIT_STRING_SIZE_0_128 */ |
363 | | static int hf_mms_vmdSpecific; /* NULL */ |
364 | | static int hf_mms_domainSpecific; /* Identifier */ |
365 | | static int hf_mms_aaSpecific; /* NULL */ |
366 | | static int hf_mms_extendedObjectClass; /* T_extendedObjectClass */ |
367 | | static int hf_mms_objectClass; /* ObjectClass */ |
368 | | static int hf_mms_objectScope; /* ObjectScope */ |
369 | | static int hf_mms_getNameList_Request_continueAfter; /* Identifier */ |
370 | | static int hf_mms_listOfIdentifier; /* SEQUENCE_OF_Identifier */ |
371 | | static int hf_mms_listOfIdentifier_item; /* Identifier */ |
372 | | static int hf_mms_moreFollows; /* BOOLEAN */ |
373 | | static int hf_mms_vendorName; /* VisibleString */ |
374 | | static int hf_mms_modelName; /* VisibleString */ |
375 | | static int hf_mms_revision; /* VisibleString */ |
376 | | static int hf_mms_listOfAbstractSyntaxes; /* T_listOfAbstractSyntaxes */ |
377 | | static int hf_mms_listOfAbstractSyntaxes_item; /* OBJECT_IDENTIFIER */ |
378 | | static int hf_mms_extendedObjectClass_01; /* T_extendedObjectClass_01 */ |
379 | | static int hf_mms_objectClass_01; /* T_objectClass */ |
380 | | static int hf_mms_currentName; /* ObjectName */ |
381 | | static int hf_mms_newIdentifier; /* Identifier */ |
382 | | static int hf_mms_getCapabilityList_Request_continueAfter; /* VisibleString */ |
383 | | static int hf_mms_listOfCapabilities; /* T_listOfCapabilities */ |
384 | | static int hf_mms_listOfCapabilities_item; /* VisibleString */ |
385 | | static int hf_mms_domainName; /* Identifier */ |
386 | | static int hf_mms_listOfCapabilities_01; /* T_listOfCapabilities_01 */ |
387 | | static int hf_mms_sharable; /* BOOLEAN */ |
388 | | static int hf_mms_loadData; /* T_loadData */ |
389 | | static int hf_mms_non_coded; /* OCTET_STRING */ |
390 | | static int hf_mms_coded; /* EXTERNALt */ |
391 | | static int hf_mms_discard; /* ServiceError */ |
392 | | static int hf_mms_ulsmID; /* Integer32 */ |
393 | | static int hf_mms_listOfCapabilities_02; /* T_listOfCapabilities_02 */ |
394 | | static int hf_mms_loadData_01; /* T_loadData_01 */ |
395 | | static int hf_mms_listOfCapabilities_03; /* T_listOfCapabilities_03 */ |
396 | | static int hf_mms_fileName; /* FileName */ |
397 | | static int hf_mms_listOfCapabilities_04; /* T_listOfCapabilities_04 */ |
398 | | static int hf_mms_thirdParty; /* ApplicationReference */ |
399 | | static int hf_mms_filenName; /* FileName */ |
400 | | static int hf_mms_listOfCapabilities_05; /* T_listOfCapabilities_05 */ |
401 | | static int hf_mms_getDomainAttributes_Response_state; /* DomainState */ |
402 | | static int hf_mms_mmsDeletable; /* BOOLEAN */ |
403 | | static int hf_mms_listOfProgramInvocations; /* SEQUENCE_OF_Identifier */ |
404 | | static int hf_mms_listOfProgramInvocations_item; /* Identifier */ |
405 | | static int hf_mms_uploadInProgress; /* Integer8 */ |
406 | | static int hf_mms_listOfDomainName; /* SEQUENCE_OF_Identifier */ |
407 | | static int hf_mms_listOfDomainName_item; /* Identifier */ |
408 | | static int hf_mms_reusable; /* BOOLEAN */ |
409 | | static int hf_mms_monitorType; /* BOOLEAN */ |
410 | | static int hf_mms_executionArgument; /* T_executionArgument */ |
411 | | static int hf_mms_simpleString; /* VisibleString */ |
412 | | static int hf_mms_encodedString; /* EXTERNALt */ |
413 | | static int hf_mms_executionArgument_01; /* T_executionArgument_01 */ |
414 | | static int hf_mms_getProgramInvocationAttributes_Response_state; /* ProgramInvocationState */ |
415 | | static int hf_mms_listOfDomainNames; /* SEQUENCE_OF_Identifier */ |
416 | | static int hf_mms_listOfDomainNames_item; /* Identifier */ |
417 | | static int hf_mms_monitor; /* BOOLEAN */ |
418 | | static int hf_mms_startArgument; /* VisibleString */ |
419 | | static int hf_mms_executionArgument_02; /* T_executionArgument_02 */ |
420 | | static int hf_mms_typeName; /* ObjectName */ |
421 | | static int hf_mms_array; /* T_array */ |
422 | | static int hf_mms_packed; /* BOOLEAN */ |
423 | | static int hf_mms_numberOfElements; /* Unsigned32 */ |
424 | | static int hf_mms_elementType; /* TypeSpecification */ |
425 | | static int hf_mms_structure; /* T_structure */ |
426 | | static int hf_mms_components; /* T_components */ |
427 | | static int hf_mms_components_item; /* T_components_item */ |
428 | | static int hf_mms_componentName; /* Identifier */ |
429 | | static int hf_mms_componentType; /* TypeSpecification */ |
430 | | static int hf_mms_boolean; /* NULL */ |
431 | | static int hf_mms_typeSpecification_bit_string; /* Integer32 */ |
432 | | static int hf_mms_integer; /* Unsigned8 */ |
433 | | static int hf_mms_unsigned; /* Unsigned8 */ |
434 | | static int hf_mms_typeSpecification_octet_string; /* Integer32 */ |
435 | | static int hf_mms_typeSpecification_visible_string; /* Integer32 */ |
436 | | static int hf_mms_generalized_time; /* NULL */ |
437 | | static int hf_mms_typeSpecification_binary_time; /* BOOLEAN */ |
438 | | static int hf_mms_bcd; /* Unsigned8 */ |
439 | | static int hf_mms_objId; /* NULL */ |
440 | | static int hf_mms_AlternateAccess_item; /* AlternateAccess_item */ |
441 | | static int hf_mms_unnamed; /* AlternateAccessSelection */ |
442 | | static int hf_mms_named; /* T_named */ |
443 | | static int hf_mms_accesst; /* AlternateAccessSelection */ |
444 | | static int hf_mms_selectAlternateAccess; /* T_selectAlternateAccess */ |
445 | | static int hf_mms_accessSelection; /* T_accessSelection */ |
446 | | static int hf_mms_component; /* Identifier */ |
447 | | static int hf_mms_index; /* Unsigned32 */ |
448 | | static int hf_mms_indexRange; /* T_indexRange */ |
449 | | static int hf_mms_lowIndex; /* Unsigned32 */ |
450 | | static int hf_mms_allElements; /* NULL */ |
451 | | static int hf_mms_alternateAccess; /* AlternateAccess */ |
452 | | static int hf_mms_selectAccess; /* T_selectAccess */ |
453 | | static int hf_mms_indexRange_01; /* T_indexRange_01 */ |
454 | | static int hf_mms_nmberOfElements; /* Unsigned32 */ |
455 | | static int hf_mms_specificationWithResult; /* BOOLEAN */ |
456 | | static int hf_mms_variableAccessSpecificatn; /* VariableAccessSpecification */ |
457 | | static int hf_mms_listOfAccessResult; /* SEQUENCE_OF_AccessResult */ |
458 | | static int hf_mms_listOfAccessResult_item; /* AccessResult */ |
459 | | static int hf_mms_listOfData; /* T_listOfData */ |
460 | | static int hf_mms_listOfData_item; /* Data */ |
461 | | static int hf_mms_Write_Response_item; /* Write_Response_item */ |
462 | | static int hf_mms_failure; /* DataAccessError */ |
463 | | static int hf_mms_success; /* NULL */ |
464 | | static int hf_mms_variableAccessSpecification; /* VariableAccessSpecification */ |
465 | | static int hf_mms_listOfAccessResult_01; /* T_listOfAccessResult */ |
466 | | static int hf_mms_name; /* ObjectName */ |
467 | | static int hf_mms_address; /* Address */ |
468 | | static int hf_mms_typeSpecification; /* TypeSpecification */ |
469 | | static int hf_mms_variableName; /* ObjectName */ |
470 | | static int hf_mms_scatteredAccessName; /* ObjectName */ |
471 | | static int hf_mms_scatteredAccessDescription; /* ScatteredAccessDescription */ |
472 | | static int hf_mms_scopeOfDelete; /* T_scopeOfDelete */ |
473 | | static int hf_mms_listOfName; /* SEQUENCE_OF_ObjectName */ |
474 | | static int hf_mms_listOfName_item; /* ObjectName */ |
475 | | static int hf_mms_numberMatched; /* Unsigned32 */ |
476 | | static int hf_mms_numberDeleted; /* Unsigned32 */ |
477 | | static int hf_mms_variableListName; /* ObjectName */ |
478 | | static int hf_mms_listOfVariable; /* T_listOfVariable */ |
479 | | static int hf_mms_listOfVariable_item; /* T_listOfVariable_item */ |
480 | | static int hf_mms_variableSpecification; /* VariableSpecification */ |
481 | | static int hf_mms_listOfVariable_01; /* T_listOfVariable_01 */ |
482 | | static int hf_mms_listOfVariable_item_01; /* T_listOfVariable_item_01 */ |
483 | | static int hf_mms_scopeOfDelete_01; /* T_scopeOfDelete_01 */ |
484 | | static int hf_mms_listOfVariableListName; /* SEQUENCE_OF_ObjectName */ |
485 | | static int hf_mms_listOfVariableListName_item; /* ObjectName */ |
486 | | static int hf_mms_scopeOfDelete_02; /* T_scopeOfDelete_02 */ |
487 | | static int hf_mms_listOfTypeName; /* SEQUENCE_OF_ObjectName */ |
488 | | static int hf_mms_listOfTypeName_item; /* ObjectName */ |
489 | | static int hf_mms_success_01; /* Data */ |
490 | | static int hf_mms_array_01; /* SEQUENCE_OF_Data */ |
491 | | static int hf_mms_array_item; /* Data */ |
492 | | static int hf_mms_structure_01; /* T_structure_01 */ |
493 | | static int hf_mms_structure_item; /* Data */ |
494 | | static int hf_mms_boolean_01; /* T_boolean */ |
495 | | static int hf_mms_data_bit_string; /* T_data_bit_string */ |
496 | | static int hf_mms_integer_01; /* T_integer */ |
497 | | static int hf_mms_unsigned_01; /* T_unsigned */ |
498 | | static int hf_mms_floating_point; /* FloatingPoint */ |
499 | | static int hf_mms_data_octet_string; /* T_data_octet_string */ |
500 | | static int hf_mms_data_visible_string; /* T_data_visible_string */ |
501 | | static int hf_mms_data_binary_time; /* T_data_binary_time */ |
502 | | static int hf_mms_bcd_01; /* INTEGER */ |
503 | | static int hf_mms_booleanArray; /* BIT_STRING */ |
504 | | static int hf_mms_objId_01; /* OBJECT_IDENTIFIER */ |
505 | | static int hf_mms_mMSString; /* MMSString */ |
506 | | static int hf_mms_utc_time; /* UtcTime */ |
507 | | static int hf_mms_listOfVariable_02; /* T_listOfVariable_02 */ |
508 | | static int hf_mms_listOfVariable_item_02; /* T_listOfVariable_item_02 */ |
509 | | static int hf_mms_ScatteredAccessDescription_item; /* ScatteredAccessDescription_item */ |
510 | | static int hf_mms_variableDescription; /* T_variableDescription */ |
511 | | static int hf_mms_invalidated; /* NULL */ |
512 | | static int hf_mms_numericAddress; /* Unsigned32 */ |
513 | | static int hf_mms_symbolicAddress; /* VisibleString */ |
514 | | static int hf_mms_unconstrainedAddress; /* OCTET_STRING */ |
515 | | static int hf_mms_semaphoreName; /* ObjectName */ |
516 | | static int hf_mms_namedToken; /* Identifier */ |
517 | | static int hf_mms_priority; /* Priority */ |
518 | | static int hf_mms_acceptableDelay; /* Unsigned32 */ |
519 | | static int hf_mms_controlTimeOut; /* Unsigned32 */ |
520 | | static int hf_mms_abortOnTimeOut; /* BOOLEAN */ |
521 | | static int hf_mms_relinquishIfConnectionLost; /* BOOLEAN */ |
522 | | static int hf_mms_applicationToPreempt; /* ApplicationReference */ |
523 | | static int hf_mms_noResult; /* NULL */ |
524 | | static int hf_mms_numbersOfTokens; /* Unsigned16 */ |
525 | | static int hf_mms_class; /* T_class */ |
526 | | static int hf_mms_numberOfTokens; /* Unsigned16 */ |
527 | | static int hf_mms_numberOfOwnedTokens; /* Unsigned16 */ |
528 | | static int hf_mms_numberOfHungTokens; /* Unsigned16 */ |
529 | | static int hf_mms_nameToStartAfter; /* Identifier */ |
530 | | static int hf_mms_listOfNamedTokens; /* T_listOfNamedTokens */ |
531 | | static int hf_mms_listOfNamedTokens_item; /* T_listOfNamedTokens_item */ |
532 | | static int hf_mms_freeNamedToken; /* Identifier */ |
533 | | static int hf_mms_ownedNamedToken; /* Identifier */ |
534 | | static int hf_mms_hungNamedToken; /* Identifier */ |
535 | | static int hf_mms_reportSemaphoreEntryStatus_Request_state; /* T_reportSemaphoreEntryStatus_Request_state */ |
536 | | static int hf_mms_entryIdToStartAfter; /* OCTET_STRING */ |
537 | | static int hf_mms_listOfSemaphoreEntry; /* SEQUENCE_OF_SemaphoreEntry */ |
538 | | static int hf_mms_listOfSemaphoreEntry_item; /* SemaphoreEntry */ |
539 | | static int hf_mms_entryId; /* OCTET_STRING */ |
540 | | static int hf_mms_entryClass; /* T_entryClass */ |
541 | | static int hf_mms_applicationReference; /* ApplicationReference */ |
542 | | static int hf_mms_remainingTimeOut; /* Unsigned32 */ |
543 | | static int hf_mms_operatorStationName; /* Identifier */ |
544 | | static int hf_mms_echo; /* BOOLEAN */ |
545 | | static int hf_mms_listOfPromptData; /* T_listOfPromptData */ |
546 | | static int hf_mms_listOfPromptData_item; /* VisibleString */ |
547 | | static int hf_mms_inputTimeOut; /* Unsigned32 */ |
548 | | static int hf_mms_listOfOutputData; /* T_listOfOutputData */ |
549 | | static int hf_mms_listOfOutputData_item; /* VisibleString */ |
550 | | static int hf_mms_eventConditionName; /* ObjectName */ |
551 | | static int hf_mms_class_01; /* EC_Class */ |
552 | | static int hf_mms_prio_rity; /* Priority */ |
553 | | static int hf_mms_severity; /* Unsigned8 */ |
554 | | static int hf_mms_alarmSummaryReports; /* BOOLEAN */ |
555 | | static int hf_mms_monitoredVariable; /* VariableSpecification */ |
556 | | static int hf_mms_evaluationInterval; /* Unsigned32 */ |
557 | | static int hf_mms_specific; /* SEQUENCE_OF_ObjectName */ |
558 | | static int hf_mms_specific_item; /* ObjectName */ |
559 | | static int hf_mms_aa_specific_01; /* NULL */ |
560 | | static int hf_mms_vmd; /* NULL */ |
561 | | static int hf_mms_monitoredVariable_01; /* T_monitoredVariable */ |
562 | | static int hf_mms_variableReference; /* VariableSpecification */ |
563 | | static int hf_mms_undefined; /* NULL */ |
564 | | static int hf_mms_currentState; /* EC_State */ |
565 | | static int hf_mms_numberOfEventEnrollments; /* Unsigned32 */ |
566 | | static int hf_mms_enabled; /* BOOLEAN */ |
567 | | static int hf_mms_timeOfLastTransitionToActive; /* EventTime */ |
568 | | static int hf_mms_timeOfLastTransitionToIdle; /* EventTime */ |
569 | | static int hf_mms_eventActionName; /* ObjectName */ |
570 | | static int hf_mms_eventEnrollmentName; /* ObjectName */ |
571 | | static int hf_mms_eventConditionTransition; /* Transitions */ |
572 | | static int hf_mms_alarmAcknowledgementRule; /* AlarmAckRule */ |
573 | | static int hf_mms_clientApplication; /* ApplicationReference */ |
574 | | static int hf_mms_ec; /* ObjectName */ |
575 | | static int hf_mms_ea; /* ObjectName */ |
576 | | static int hf_mms_scopeOfRequest; /* T_scopeOfRequest */ |
577 | | static int hf_mms_eventEnrollmentNames; /* SEQUENCE_OF_ObjectName */ |
578 | | static int hf_mms_eventEnrollmentNames_item; /* ObjectName */ |
579 | | static int hf_mms_getEventEnrollmentAttributes_Request_continueAfter; /* ObjectName */ |
580 | | static int hf_mms_eventConditionName_01; /* T_eventConditionName */ |
581 | | static int hf_mms_eventActionName_01; /* T_eventActionName */ |
582 | | static int hf_mms_eventAction; /* ObjectName */ |
583 | | static int hf_mms_enrollmentClass; /* EE_Class */ |
584 | | static int hf_mms_duration; /* EE_Duration */ |
585 | | static int hf_mms_remainingAcceptableDelay; /* Unsigned32 */ |
586 | | static int hf_mms_listOfEventEnrollment; /* SEQUENCE_OF_EventEnrollment */ |
587 | | static int hf_mms_listOfEventEnrollment_item; /* EventEnrollment */ |
588 | | static int hf_mms_eventConditionTransitions; /* Transitions */ |
589 | | static int hf_mms_notificationLost; /* BOOLEAN */ |
590 | | static int hf_mms_alarmAcknowledgmentRule; /* AlarmAckRule */ |
591 | | static int hf_mms_currentState_01; /* EE_State */ |
592 | | static int hf_mms_currentState_02; /* T_currentState */ |
593 | | static int hf_mms_alterEventEnrollment_Response_currentState_state; /* EE_State */ |
594 | | static int hf_mms_transitionTime; /* EventTime */ |
595 | | static int hf_mms_acknowledgedState; /* EC_State */ |
596 | | static int hf_mms_timeOfAcknowledgedTransition; /* EventTime */ |
597 | | static int hf_mms_enrollmentsOnly; /* BOOLEAN */ |
598 | | static int hf_mms_activeAlarmsOnly; /* BOOLEAN */ |
599 | | static int hf_mms_acknowledgmentFilter; /* T_acknowledgmentFilter */ |
600 | | static int hf_mms_severityFilter; /* T_severityFilter */ |
601 | | static int hf_mms_mostSevere; /* Unsigned8 */ |
602 | | static int hf_mms_leastSevere; /* Unsigned8 */ |
603 | | static int hf_mms_continueAfter; /* ObjectName */ |
604 | | static int hf_mms_listOfAlarmSummary; /* SEQUENCE_OF_AlarmSummary */ |
605 | | static int hf_mms_listOfAlarmSummary_item; /* AlarmSummary */ |
606 | | static int hf_mms_unacknowledgedState; /* T_unacknowledgedState */ |
607 | | static int hf_mms_acknowledgmentFilter_01; /* T_acknowledgmentFilter_01 */ |
608 | | static int hf_mms_severityFilter_01; /* T_severityFilter_01 */ |
609 | | static int hf_mms_getAlarmEnrollmentSummary_Request_continueAfter; /* ObjectName */ |
610 | | static int hf_mms_listOfAlarmEnrollmentSummary; /* SEQUENCE_OF_AlarmEnrollmentSummary */ |
611 | | static int hf_mms_listOfAlarmEnrollmentSummary_item; /* AlarmEnrollmentSummary */ |
612 | | static int hf_mms_enrollementState; /* EE_State */ |
613 | | static int hf_mms_timeActiveAcknowledged; /* EventTime */ |
614 | | static int hf_mms_timeIdleAcknowledged; /* EventTime */ |
615 | | static int hf_mms_eventConditionName_02; /* T_eventConditionName_01 */ |
616 | | static int hf_mms_actionResult; /* T_actionResult */ |
617 | | static int hf_mms_eventActioName; /* ObjectName */ |
618 | | static int hf_mms_eventActionResult; /* T_eventActionResult */ |
619 | | static int hf_mms_success_02; /* ConfirmedServiceResponse */ |
620 | | static int hf_mms_failure_01; /* ServiceError */ |
621 | | static int hf_mms_causingTransitions; /* Transitions */ |
622 | | static int hf_mms_timeOfDayT; /* TimeOfDay */ |
623 | | static int hf_mms_timeSequenceIdentifier; /* Unsigned32 */ |
624 | | static int hf_mms_journalName; /* ObjectName */ |
625 | | static int hf_mms_rangeStartSpecification; /* T_rangeStartSpecification */ |
626 | | static int hf_mms_startingTime; /* TimeOfDay */ |
627 | | static int hf_mms_startingEntry; /* OCTET_STRING */ |
628 | | static int hf_mms_rangeStopSpecification; /* T_rangeStopSpecification */ |
629 | | static int hf_mms_endingTime; /* TimeOfDay */ |
630 | | static int hf_mms_numberOfEntries; /* Integer32 */ |
631 | | static int hf_mms_listOfVariables; /* T_listOfVariables */ |
632 | | static int hf_mms_listOfVariables_item; /* VisibleString */ |
633 | | static int hf_mms_entryToStartAfter; /* T_entryToStartAfter */ |
634 | | static int hf_mms_timeSpecification; /* TimeOfDay */ |
635 | | static int hf_mms_entrySpecification; /* OCTET_STRING */ |
636 | | static int hf_mms_listOfJournalEntry; /* SEQUENCE_OF_JournalEntry */ |
637 | | static int hf_mms_listOfJournalEntry_item; /* JournalEntry */ |
638 | | static int hf_mms_entryIdentifier; /* OCTET_STRING */ |
639 | | static int hf_mms_originatingApplication; /* ApplicationReference */ |
640 | | static int hf_mms_entryContent; /* EntryContent */ |
641 | | static int hf_mms_listOfJournalEntry_01; /* SEQUENCE_OF_EntryContent */ |
642 | | static int hf_mms_listOfJournalEntry_item_01; /* EntryContent */ |
643 | | static int hf_mms_limitSpecification; /* T_limitSpecification */ |
644 | | static int hf_mms_limitingTime; /* TimeOfDay */ |
645 | | static int hf_mms_limitingEntry; /* OCTET_STRING */ |
646 | | static int hf_mms_currentEntries; /* Unsigned32 */ |
647 | | static int hf_mms_occurenceTime; /* TimeOfDay */ |
648 | | static int hf_mms_additionalDetail; /* JOU_Additional_Detail */ |
649 | | static int hf_mms_entryForm; /* T_entryForm */ |
650 | | static int hf_mms_data; /* T_data */ |
651 | | static int hf_mms_event; /* T_event */ |
652 | | static int hf_mms_listOfVariables_01; /* T_listOfVariables_01 */ |
653 | | static int hf_mms_listOfVariables_item_01; /* T_listOfVariables_item */ |
654 | | static int hf_mms_variableTag; /* VisibleString */ |
655 | | static int hf_mms_valueSpecification; /* Data */ |
656 | | static int hf_mms_annotation; /* VisibleString */ |
657 | | static int hf_mms_sourceFileServer; /* ApplicationReference */ |
658 | | static int hf_mms_sourceFile; /* FileName */ |
659 | | static int hf_mms_destinationFile; /* FileName */ |
660 | | static int hf_mms_initialPosition; /* Unsigned32 */ |
661 | | static int hf_mms_frsmID; /* Integer32 */ |
662 | | static int hf_mms_fileAttributes; /* FileAttributes */ |
663 | | static int hf_mms_fileData; /* OCTET_STRING */ |
664 | | static int hf_mms_currentFileName; /* FileName */ |
665 | | static int hf_mms_newFileName; /* FileName */ |
666 | | static int hf_mms_fileSpecification; /* FileName */ |
667 | | static int hf_mms_fileDirectory_Request_continueAfter; /* FileName */ |
668 | | static int hf_mms_listOfDirectoryEntry; /* SEQUENCE_OF_DirectoryEntry */ |
669 | | static int hf_mms_listOfDirectoryEntry_item; /* DirectoryEntry */ |
670 | | static int hf_mms_filename; /* FileName */ |
671 | | static int hf_mms_sizeOfFile; /* Unsigned32 */ |
672 | | static int hf_mms_lastModified; /* GeneralizedTime */ |
673 | | /* named bits */ |
674 | | static int hf_mms_ReportedOptFlds_reserved; |
675 | | static int hf_mms_ReportedOptFlds_sequence_number; |
676 | | static int hf_mms_ReportedOptFlds_report_time_stamp; |
677 | | static int hf_mms_ReportedOptFlds_reason_for_inclusion; |
678 | | static int hf_mms_ReportedOptFlds_data_set_name; |
679 | | static int hf_mms_ReportedOptFlds_data_reference; |
680 | | static int hf_mms_ReportedOptFlds_buffer_overflow; |
681 | | static int hf_mms_ReportedOptFlds_entryID; |
682 | | static int hf_mms_ReportedOptFlds_conf_revision; |
683 | | static int hf_mms_ReportedOptFlds_segmentation; |
684 | | static int hf_mms_ParameterSupportOptions_str1; |
685 | | static int hf_mms_ParameterSupportOptions_str2; |
686 | | static int hf_mms_ParameterSupportOptions_vnam; |
687 | | static int hf_mms_ParameterSupportOptions_valt; |
688 | | static int hf_mms_ParameterSupportOptions_vadr; |
689 | | static int hf_mms_ParameterSupportOptions_vsca; |
690 | | static int hf_mms_ParameterSupportOptions_tpy; |
691 | | static int hf_mms_ParameterSupportOptions_vlis; |
692 | | static int hf_mms_ParameterSupportOptions_real; |
693 | | static int hf_mms_ParameterSupportOptions_spare_bit9; |
694 | | static int hf_mms_ParameterSupportOptions_cei; |
695 | | static int hf_mms_ServiceSupportOptions_status; |
696 | | static int hf_mms_ServiceSupportOptions_getNameList; |
697 | | static int hf_mms_ServiceSupportOptions_identify; |
698 | | static int hf_mms_ServiceSupportOptions_rename; |
699 | | static int hf_mms_ServiceSupportOptions_read; |
700 | | static int hf_mms_ServiceSupportOptions_write; |
701 | | static int hf_mms_ServiceSupportOptions_getVariableAccessAttributes; |
702 | | static int hf_mms_ServiceSupportOptions_defineNamedVariable; |
703 | | static int hf_mms_ServiceSupportOptions_defineScatteredAccess; |
704 | | static int hf_mms_ServiceSupportOptions_getScatteredAccessAttributes; |
705 | | static int hf_mms_ServiceSupportOptions_deleteVariableAccess; |
706 | | static int hf_mms_ServiceSupportOptions_defineNamedVariableList; |
707 | | static int hf_mms_ServiceSupportOptions_getNamedVariableListAttributes; |
708 | | static int hf_mms_ServiceSupportOptions_deleteNamedVariableList; |
709 | | static int hf_mms_ServiceSupportOptions_defineNamedType; |
710 | | static int hf_mms_ServiceSupportOptions_getNamedTypeAttributes; |
711 | | static int hf_mms_ServiceSupportOptions_deleteNamedType; |
712 | | static int hf_mms_ServiceSupportOptions_input; |
713 | | static int hf_mms_ServiceSupportOptions_output; |
714 | | static int hf_mms_ServiceSupportOptions_takeControl; |
715 | | static int hf_mms_ServiceSupportOptions_relinquishControl; |
716 | | static int hf_mms_ServiceSupportOptions_defineSemaphore; |
717 | | static int hf_mms_ServiceSupportOptions_deleteSemaphore; |
718 | | static int hf_mms_ServiceSupportOptions_reportSemaphoreStatus; |
719 | | static int hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus; |
720 | | static int hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus; |
721 | | static int hf_mms_ServiceSupportOptions_initiateDownloadSequence; |
722 | | static int hf_mms_ServiceSupportOptions_downloadSegment; |
723 | | static int hf_mms_ServiceSupportOptions_terminateDownloadSequence; |
724 | | static int hf_mms_ServiceSupportOptions_initiateUploadSequence; |
725 | | static int hf_mms_ServiceSupportOptions_uploadSegment; |
726 | | static int hf_mms_ServiceSupportOptions_terminateUploadSequence; |
727 | | static int hf_mms_ServiceSupportOptions_requestDomainDownload; |
728 | | static int hf_mms_ServiceSupportOptions_requestDomainUpload; |
729 | | static int hf_mms_ServiceSupportOptions_loadDomainContent; |
730 | | static int hf_mms_ServiceSupportOptions_storeDomainContent; |
731 | | static int hf_mms_ServiceSupportOptions_deleteDomain; |
732 | | static int hf_mms_ServiceSupportOptions_getDomainAttributes; |
733 | | static int hf_mms_ServiceSupportOptions_createProgramInvocation; |
734 | | static int hf_mms_ServiceSupportOptions_deleteProgramInvocation; |
735 | | static int hf_mms_ServiceSupportOptions_start; |
736 | | static int hf_mms_ServiceSupportOptions_stop; |
737 | | static int hf_mms_ServiceSupportOptions_resume; |
738 | | static int hf_mms_ServiceSupportOptions_reset; |
739 | | static int hf_mms_ServiceSupportOptions_kill; |
740 | | static int hf_mms_ServiceSupportOptions_getProgramInvocationAttributes; |
741 | | static int hf_mms_ServiceSupportOptions_obtainFile; |
742 | | static int hf_mms_ServiceSupportOptions_defineEventCondition; |
743 | | static int hf_mms_ServiceSupportOptions_deleteEventCondition; |
744 | | static int hf_mms_ServiceSupportOptions_getEventConditionAttributes; |
745 | | static int hf_mms_ServiceSupportOptions_reportEventConditionStatus; |
746 | | static int hf_mms_ServiceSupportOptions_alterEventConditionMonitoring; |
747 | | static int hf_mms_ServiceSupportOptions_triggerEvent; |
748 | | static int hf_mms_ServiceSupportOptions_defineEventAction; |
749 | | static int hf_mms_ServiceSupportOptions_deleteEventAction; |
750 | | static int hf_mms_ServiceSupportOptions_getEventActionAttributes; |
751 | | static int hf_mms_ServiceSupportOptions_reportActionStatus; |
752 | | static int hf_mms_ServiceSupportOptions_defineEventEnrollment; |
753 | | static int hf_mms_ServiceSupportOptions_deleteEventEnrollment; |
754 | | static int hf_mms_ServiceSupportOptions_alterEventEnrollment; |
755 | | static int hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus; |
756 | | static int hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes; |
757 | | static int hf_mms_ServiceSupportOptions_acknowledgeEventNotification; |
758 | | static int hf_mms_ServiceSupportOptions_getAlarmSummary; |
759 | | static int hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary; |
760 | | static int hf_mms_ServiceSupportOptions_readJournal; |
761 | | static int hf_mms_ServiceSupportOptions_writeJournal; |
762 | | static int hf_mms_ServiceSupportOptions_initializeJournal; |
763 | | static int hf_mms_ServiceSupportOptions_reportJournalStatus; |
764 | | static int hf_mms_ServiceSupportOptions_createJournal; |
765 | | static int hf_mms_ServiceSupportOptions_deleteJournal; |
766 | | static int hf_mms_ServiceSupportOptions_getCapabilityList; |
767 | | static int hf_mms_ServiceSupportOptions_fileOpen; |
768 | | static int hf_mms_ServiceSupportOptions_fileRead; |
769 | | static int hf_mms_ServiceSupportOptions_fileClose; |
770 | | static int hf_mms_ServiceSupportOptions_fileRename; |
771 | | static int hf_mms_ServiceSupportOptions_fileDelete; |
772 | | static int hf_mms_ServiceSupportOptions_fileDirectory; |
773 | | static int hf_mms_ServiceSupportOptions_unsolicitedStatus; |
774 | | static int hf_mms_ServiceSupportOptions_informationReport; |
775 | | static int hf_mms_ServiceSupportOptions_eventNotification; |
776 | | static int hf_mms_ServiceSupportOptions_attachToEventCondition; |
777 | | static int hf_mms_ServiceSupportOptions_attachToSemaphore; |
778 | | static int hf_mms_ServiceSupportOptions_conclude; |
779 | | static int hf_mms_ServiceSupportOptions_cancel; |
780 | | static int hf_mms_Transitions_idle_to_disabled; |
781 | | static int hf_mms_Transitions_active_to_disabled; |
782 | | static int hf_mms_Transitions_disabled_to_idle; |
783 | | static int hf_mms_Transitions_active_to_idle; |
784 | | static int hf_mms_Transitions_disabled_to_active; |
785 | | static int hf_mms_Transitions_idle_to_active; |
786 | | static int hf_mms_Transitions_any_to_deleted; |
787 | | |
788 | | /* Initialize the subtree pointers */ |
789 | | static int ett_mms; |
790 | | static int ett_mms_iec61850_quality_bitstring; |
791 | | static int ett_mms_iec61850_check_bitstring; |
792 | | static int ett_mms_ReportedOptFlds; |
793 | | static int ett_mms_MMSpdu; |
794 | | static int ett_mms_Confirmed_RequestPDU; |
795 | | static int ett_mms_SEQUENCE_OF_Modifier; |
796 | | static int ett_mms_Unconfirmed_PDU; |
797 | | static int ett_mms_Confirmed_ResponsePDU; |
798 | | static int ett_mms_Confirmed_ErrorPDU; |
799 | | static int ett_mms_UnconfirmedService; |
800 | | static int ett_mms_Modifier; |
801 | | static int ett_mms_ConfirmedServiceRequest; |
802 | | static int ett_mms_CS_Request_Detail; |
803 | | static int ett_mms_ConfirmedServiceResponse; |
804 | | static int ett_mms_FileName; |
805 | | static int ett_mms_ObjectName; |
806 | | static int ett_mms_T_domain_specific; |
807 | | static int ett_mms_ApplicationReference; |
808 | | static int ett_mms_Initiate_RequestPDU; |
809 | | static int ett_mms_InitRequestDetail; |
810 | | static int ett_mms_Initiate_ResponsePDU; |
811 | | static int ett_mms_InitResponseDetail; |
812 | | static int ett_mms_ParameterSupportOptions; |
813 | | static int ett_mms_ServiceSupportOptions; |
814 | | static int ett_mms_Cancel_ErrorPDU; |
815 | | static int ett_mms_ServiceError; |
816 | | static int ett_mms_T_errorClass; |
817 | | static int ett_mms_T_serviceSpecificInformation; |
818 | | static int ett_mms_AdditionalService_Error; |
819 | | static int ett_mms_RemoveEventConditionListReference_Error; |
820 | | static int ett_mms_InitiateUnitControl_Error; |
821 | | static int ett_mms_StartUnitControl_Error; |
822 | | static int ett_mms_StopUnitControl_Error; |
823 | | static int ett_mms_DeleteUnitControl_Error; |
824 | | static int ett_mms_LoadUnitControlFromFile_Error; |
825 | | static int ett_mms_RejectPDU; |
826 | | static int ett_mms_T_rejectReason; |
827 | | static int ett_mms_Status_Response; |
828 | | static int ett_mms_ObjectScope; |
829 | | static int ett_mms_GetNameList_Request; |
830 | | static int ett_mms_T_extendedObjectClass; |
831 | | static int ett_mms_GetNameList_Response; |
832 | | static int ett_mms_SEQUENCE_OF_Identifier; |
833 | | static int ett_mms_Identify_Response; |
834 | | static int ett_mms_T_listOfAbstractSyntaxes; |
835 | | static int ett_mms_Rename_Request; |
836 | | static int ett_mms_T_extendedObjectClass_01; |
837 | | static int ett_mms_GetCapabilityList_Request; |
838 | | static int ett_mms_GetCapabilityList_Response; |
839 | | static int ett_mms_T_listOfCapabilities; |
840 | | static int ett_mms_InitiateDownloadSequence_Request; |
841 | | static int ett_mms_T_listOfCapabilities_01; |
842 | | static int ett_mms_DownloadSegment_Response; |
843 | | static int ett_mms_T_loadData; |
844 | | static int ett_mms_TerminateDownloadSequence_Request; |
845 | | static int ett_mms_InitiateUploadSequence_Response; |
846 | | static int ett_mms_T_listOfCapabilities_02; |
847 | | static int ett_mms_UploadSegment_Response; |
848 | | static int ett_mms_T_loadData_01; |
849 | | static int ett_mms_RequestDomainDownload_Request; |
850 | | static int ett_mms_T_listOfCapabilities_03; |
851 | | static int ett_mms_RequestDomainUpload_Request; |
852 | | static int ett_mms_LoadDomainContent_Request; |
853 | | static int ett_mms_T_listOfCapabilities_04; |
854 | | static int ett_mms_StoreDomainContent_Request; |
855 | | static int ett_mms_GetDomainAttributes_Response; |
856 | | static int ett_mms_T_listOfCapabilities_05; |
857 | | static int ett_mms_CreateProgramInvocation_Request; |
858 | | static int ett_mms_Start_Request; |
859 | | static int ett_mms_T_executionArgument; |
860 | | static int ett_mms_Stop_Request; |
861 | | static int ett_mms_Resume_Request; |
862 | | static int ett_mms_T_executionArgument_01; |
863 | | static int ett_mms_Reset_Request; |
864 | | static int ett_mms_Kill_Request; |
865 | | static int ett_mms_GetProgramInvocationAttributes_Response; |
866 | | static int ett_mms_T_executionArgument_02; |
867 | | static int ett_mms_TypeSpecification; |
868 | | static int ett_mms_T_array; |
869 | | static int ett_mms_T_structure; |
870 | | static int ett_mms_T_components; |
871 | | static int ett_mms_T_components_item; |
872 | | static int ett_mms_AlternateAccess; |
873 | | static int ett_mms_AlternateAccess_item; |
874 | | static int ett_mms_T_named; |
875 | | static int ett_mms_AlternateAccessSelection; |
876 | | static int ett_mms_T_selectAlternateAccess; |
877 | | static int ett_mms_T_accessSelection; |
878 | | static int ett_mms_T_indexRange; |
879 | | static int ett_mms_T_selectAccess; |
880 | | static int ett_mms_T_indexRange_01; |
881 | | static int ett_mms_Read_Request; |
882 | | static int ett_mms_Read_Response; |
883 | | static int ett_mms_SEQUENCE_OF_AccessResult; |
884 | | static int ett_mms_Write_Request; |
885 | | static int ett_mms_T_listOfData; |
886 | | static int ett_mms_Write_Response; |
887 | | static int ett_mms_Write_Response_item; |
888 | | static int ett_mms_InformationReport; |
889 | | static int ett_mms_T_listOfAccessResult; |
890 | | static int ett_mms_GetVariableAccessAttributes_Request; |
891 | | static int ett_mms_GetVariableAccessAttributes_Response; |
892 | | static int ett_mms_DefineNamedVariable_Request; |
893 | | static int ett_mms_DefineScatteredAccess_Request; |
894 | | static int ett_mms_GetScatteredAccessAttributes_Response; |
895 | | static int ett_mms_DeleteVariableAccess_Request; |
896 | | static int ett_mms_SEQUENCE_OF_ObjectName; |
897 | | static int ett_mms_DeleteVariableAccess_Response; |
898 | | static int ett_mms_DefineNamedVariableList_Request; |
899 | | static int ett_mms_T_listOfVariable; |
900 | | static int ett_mms_T_listOfVariable_item; |
901 | | static int ett_mms_GetNamedVariableListAttributes_Response; |
902 | | static int ett_mms_T_listOfVariable_01; |
903 | | static int ett_mms_T_listOfVariable_item_01; |
904 | | static int ett_mms_DeleteNamedVariableList_Request; |
905 | | static int ett_mms_DeleteNamedVariableList_Response; |
906 | | static int ett_mms_DefineNamedType_Request; |
907 | | static int ett_mms_GetNamedTypeAttributes_Response; |
908 | | static int ett_mms_DeleteNamedType_Request; |
909 | | static int ett_mms_DeleteNamedType_Response; |
910 | | static int ett_mms_AccessResult; |
911 | | static int ett_mms_Data; |
912 | | static int ett_mms_SEQUENCE_OF_Data; |
913 | | static int ett_mms_T_structure_01; |
914 | | static int ett_mms_VariableAccessSpecification; |
915 | | static int ett_mms_T_listOfVariable_02; |
916 | | static int ett_mms_T_listOfVariable_item_02; |
917 | | static int ett_mms_ScatteredAccessDescription; |
918 | | static int ett_mms_ScatteredAccessDescription_item; |
919 | | static int ett_mms_VariableSpecification; |
920 | | static int ett_mms_T_variableDescription; |
921 | | static int ett_mms_Address; |
922 | | static int ett_mms_TakeControl_Request; |
923 | | static int ett_mms_TakeControl_Response; |
924 | | static int ett_mms_RelinquishControl_Request; |
925 | | static int ett_mms_DefineSemaphore_Request; |
926 | | static int ett_mms_ReportSemaphoreStatus_Response; |
927 | | static int ett_mms_ReportPoolSemaphoreStatus_Request; |
928 | | static int ett_mms_ReportPoolSemaphoreStatus_Response; |
929 | | static int ett_mms_T_listOfNamedTokens; |
930 | | static int ett_mms_T_listOfNamedTokens_item; |
931 | | static int ett_mms_ReportSemaphoreEntryStatus_Request; |
932 | | static int ett_mms_ReportSemaphoreEntryStatus_Response; |
933 | | static int ett_mms_SEQUENCE_OF_SemaphoreEntry; |
934 | | static int ett_mms_AttachToSemaphore; |
935 | | static int ett_mms_SemaphoreEntry; |
936 | | static int ett_mms_Input_Request; |
937 | | static int ett_mms_T_listOfPromptData; |
938 | | static int ett_mms_Output_Request; |
939 | | static int ett_mms_T_listOfOutputData; |
940 | | static int ett_mms_DefineEventCondition_Request; |
941 | | static int ett_mms_DeleteEventCondition_Request; |
942 | | static int ett_mms_GetEventConditionAttributes_Response; |
943 | | static int ett_mms_T_monitoredVariable; |
944 | | static int ett_mms_ReportEventConditionStatus_Response; |
945 | | static int ett_mms_AlterEventConditionMonitoring_Request; |
946 | | static int ett_mms_TriggerEvent_Request; |
947 | | static int ett_mms_DefineEventAction_Request; |
948 | | static int ett_mms_DeleteEventAction_Request; |
949 | | static int ett_mms_GetEventActionAttributes_Response; |
950 | | static int ett_mms_DefineEventEnrollment_Request; |
951 | | static int ett_mms_DeleteEventEnrollment_Request; |
952 | | static int ett_mms_GetEventEnrollmentAttributes_Request; |
953 | | static int ett_mms_EventEnrollment; |
954 | | static int ett_mms_T_eventConditionName; |
955 | | static int ett_mms_T_eventActionName; |
956 | | static int ett_mms_GetEventEnrollmentAttributes_Response; |
957 | | static int ett_mms_SEQUENCE_OF_EventEnrollment; |
958 | | static int ett_mms_ReportEventEnrollmentStatus_Response; |
959 | | static int ett_mms_AlterEventEnrollment_Request; |
960 | | static int ett_mms_AlterEventEnrollment_Response; |
961 | | static int ett_mms_T_currentState; |
962 | | static int ett_mms_AcknowledgeEventNotification_Request; |
963 | | static int ett_mms_GetAlarmSummary_Request; |
964 | | static int ett_mms_T_severityFilter; |
965 | | static int ett_mms_GetAlarmSummary_Response; |
966 | | static int ett_mms_SEQUENCE_OF_AlarmSummary; |
967 | | static int ett_mms_AlarmSummary; |
968 | | static int ett_mms_GetAlarmEnrollmentSummary_Request; |
969 | | static int ett_mms_T_severityFilter_01; |
970 | | static int ett_mms_GetAlarmEnrollmentSummary_Response; |
971 | | static int ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary; |
972 | | static int ett_mms_AlarmEnrollmentSummary; |
973 | | static int ett_mms_EventNotification; |
974 | | static int ett_mms_T_eventConditionName_01; |
975 | | static int ett_mms_T_actionResult; |
976 | | static int ett_mms_T_eventActionResult; |
977 | | static int ett_mms_AttachToEventCondition; |
978 | | static int ett_mms_EventTime; |
979 | | static int ett_mms_Transitions; |
980 | | static int ett_mms_ReadJournal_Request; |
981 | | static int ett_mms_T_rangeStartSpecification; |
982 | | static int ett_mms_T_rangeStopSpecification; |
983 | | static int ett_mms_T_listOfVariables; |
984 | | static int ett_mms_T_entryToStartAfter; |
985 | | static int ett_mms_ReadJournal_Response; |
986 | | static int ett_mms_SEQUENCE_OF_JournalEntry; |
987 | | static int ett_mms_JournalEntry; |
988 | | static int ett_mms_WriteJournal_Request; |
989 | | static int ett_mms_SEQUENCE_OF_EntryContent; |
990 | | static int ett_mms_InitializeJournal_Request; |
991 | | static int ett_mms_T_limitSpecification; |
992 | | static int ett_mms_ReportJournalStatus_Response; |
993 | | static int ett_mms_CreateJournal_Request; |
994 | | static int ett_mms_DeleteJournal_Request; |
995 | | static int ett_mms_EntryContent; |
996 | | static int ett_mms_T_entryForm; |
997 | | static int ett_mms_T_data; |
998 | | static int ett_mms_T_event; |
999 | | static int ett_mms_T_listOfVariables_01; |
1000 | | static int ett_mms_T_listOfVariables_item; |
1001 | | static int ett_mms_ObtainFile_Request; |
1002 | | static int ett_mms_FileOpen_Request; |
1003 | | static int ett_mms_FileOpen_Response; |
1004 | | static int ett_mms_FileRead_Response; |
1005 | | static int ett_mms_FileRename_Request; |
1006 | | static int ett_mms_FileDirectory_Request; |
1007 | | static int ett_mms_FileDirectory_Response; |
1008 | | static int ett_mms_SEQUENCE_OF_DirectoryEntry; |
1009 | | static int ett_mms_DirectoryEntry; |
1010 | | static int ett_mms_FileAttributes; |
1011 | | |
1012 | | static expert_field ei_mms_mal_timeofday_encoding; |
1013 | | static expert_field ei_mms_mal_utctime_encoding; |
1014 | | static expert_field ei_mms_zero_pdu; |
1015 | | |
1016 | | /*****************************************************************************/ |
1017 | | /* Packet private data */ |
1018 | | /* For this dissector, all access to actx->private_data should be made */ |
1019 | | /* through this API, which ensures that they will not overwrite each other!! */ |
1020 | | /*****************************************************************************/ |
1021 | | |
1022 | | #define BUFFER_SIZE_PRE 10 |
1023 | 0 | #define BUFFER_SIZE_MORE 1024 |
1024 | | |
1025 | | typedef enum _iec61850_8_1_vmd_specific { |
1026 | | IEC61850_8_1_NOT_SET = 0, |
1027 | | IEC61850_8_1_RPT |
1028 | | } iec61850_8_1_vmd_specific; |
1029 | | |
1030 | | typedef enum _itemid_type { |
1031 | | IEC61850_ITEM_ID_NOT_SET = 0, |
1032 | | IEC61850_ITEM_ID_CTLMODEL, |
1033 | | IEC61850_ITEM_ID_Q, |
1034 | | IEC61850_ITEM_ID_OPER, |
1035 | | IEC61850_ITEM_ID_CHECK, |
1036 | | IEC61850_ITEM_ID_OR_CAT, |
1037 | | IEC61850_ITEM_ID_BEH$STVAL, |
1038 | | IEC61850_ITEM_ID_MOD$STVAL, |
1039 | | IEC61850_ITEM_ID_HEALTH$STVAL, |
1040 | | IEC61850_ITEM_ID_$BR$_OR_$RP$, |
1041 | | IEC61850_ITEM_ID_$SBOW |
1042 | | } itemid_type; |
1043 | | |
1044 | | typedef struct _mms_transaction_t { |
1045 | | uint32_t req_frame; |
1046 | | uint32_t rep_frame; |
1047 | | nstime_t req_time; |
1048 | | /* Request info*/ |
1049 | | itemid_type itemid; /* Numeric representation of ItemId substring */ |
1050 | | int conf_serv_pdu_type_req; |
1051 | | } mms_transaction_t; |
1052 | | |
1053 | | typedef struct _mms_conv_info_t { |
1054 | | wmem_map_t* pdus; |
1055 | | } mms_conv_info_t; |
1056 | | |
1057 | | typedef struct mms_private_data_t |
1058 | | { |
1059 | | char preCinfo[BUFFER_SIZE_PRE]; |
1060 | | char moreCinfo[BUFFER_SIZE_MORE]; |
1061 | | } mms_private_data_t; |
1062 | | |
1063 | 111 | #define MMS_CONFIRMED_REQUEST_PDU 0 |
1064 | 12 | #define MMS_CONFIRMED_RESPONSE_PDU 1 |
1065 | | #define MMS_CONFIRMED_ERROR_PDU 2 |
1066 | 2 | #define MMS_UNCONFIRMED_PDU 3 |
1067 | | #define MMS_REJECT_PDU 4 |
1068 | | #define MMS_CANCEL_REQUEST_PDU 5 |
1069 | | #define MMS_CANCEL_RESPONSE_PDU 6 |
1070 | | #define MMS_CANCEL_ERROR_PDU 7 |
1071 | 8 | #define MMS_INITIATE_REQUEST_PDU 8 |
1072 | 5 | #define MMS_INITIATE_RESPONSE_PDU 9 |
1073 | | #define MMS_INITIATE_ERROR_PDU 10 |
1074 | | #define MMS_CONCLUDE_REQUEST_PDU 11 |
1075 | | #define MMS_CONCLUDE_RESPONSE_PDU 12 |
1076 | | #define MMS_CONCLUDE_ERROR_PDU 13 |
1077 | | |
1078 | | #define MMS_CONFIRMEDSERVICE_STATUS 0 |
1079 | 5 | #define MMS_CONFIRMEDSERVICE_GETNAMELIST 1 |
1080 | | #define MMS_CONFIRMEDSERVICE_IDENTIFY 2 |
1081 | | #define MMS_CONFIRMEDSERVICE_RENAME 3 |
1082 | 5 | #define MMS_CONFIRMEDSERVICE_READ 4 |
1083 | 5 | #define MMS_CONFIRMEDSERVICE_WRITE 5 |
1084 | 4 | #define MMS_CONFIRMEDSERVICE_GETVARIABLEACCESSATTRIBUTES 6 |
1085 | | #define MMS_CONFIRMEDSERVICE_DEFINENAMEDVARIABLE 7 |
1086 | | #define MMS_CONFIRMEDSERVICE_DEFINESCATTEREDACCESS 8 |
1087 | | #define MMS_CONFIRMEDSERVICE_GETSCATTEREDACCESSATTRIBUTES 9 |
1088 | | #define MMS_CONFIRMEDSERVICE_DELETEVARIABLEACCESS 10 |
1089 | | #define MMS_CONFIRMEDSERVICE_DEFINENAMEDVARIABLELIST 11 |
1090 | 5 | #define MMS_CONFIRMEDSERVICE_GETNAMEDVARIABLELISTATTRIBUTES 12 |
1091 | | #define MMS_CONFIRMEDSERVICE_DELETENAMEDVARIABLELIST 13 |
1092 | | #define MMS_CONFIRMEDSERVICE_DEFINENAMEDTYPE 14 |
1093 | | #define MMS_CONFIRMEDSERVICE_GETNAMEDTYPEATTRIBUTES 15 |
1094 | | #define MMS_CONFIRMEDSERVICE_DELETENAMEDTYPE 16 |
1095 | | #define MMS_CONFIRMEDSERVICE_INPUT 17 |
1096 | | #define MMS_CONFIRMEDSERVICE_OUTPUT 18 |
1097 | | #define MMS_CONFIRMEDSERVICE_TAKECONTROL 19 |
1098 | | #define MMS_CONFIRMEDSERVICE_RELINQUISHCONTROL 20 |
1099 | | #define MMS_CONFIRMEDSERVICE_DEFINESEMAPHORE 21 |
1100 | | #define MMS_CONFIRMEDSERVICE_DELETESEMAPHORE 22 |
1101 | | #define MMS_CONFIRMEDSERVICE_REPORTSEMAPHORESTATUS 23 |
1102 | | #define MMS_CONFIRMEDSERVICE_REPORTPOOLSEMAPHORESTATUS 24 |
1103 | | #define MMS_CONFIRMEDSERVICE_REPORTSEMAPHOREENTRYSTATUS 25 |
1104 | | #define MMS_CONFIRMEDSERVICE_INITIATEDOWNLOADSEQUENCE 26 |
1105 | | #define MMS_CONFIRMEDSERVICE_DOWNLOADSEGMENT 27 |
1106 | | #define MMS_CONFIRMEDSERVICE_TERMINATEDOWNLOADSEQUENCE 28 |
1107 | | #define MMS_CONFIRMEDSERVICE_INITIATEUPLOADSEQUENCE 29 |
1108 | | #define MMS_CONFIRMEDSERVICE_UPLOADSEGMENT 30 |
1109 | | #define MMS_CONFIRMEDSERVICE_TERMINATEUPLOADSEQUENCE 31 |
1110 | | #define MMS_CONFIRMEDSERVICE_REQUESTDOMAINDOWNLOAD 32 |
1111 | | #define MMS_CONFIRMEDSERVICE_REQUESTDOMAINUPLOAD 33 |
1112 | | #define MMS_CONFIRMEDSERVICE_LOADDOMAINCONTENT 34 |
1113 | | #define MMS_CONFIRMEDSERVICE_STOREDOMAINCONTENT 35 |
1114 | | #define MMS_CONFIRMEDSERVICE_DELETEDOMAIN 36 |
1115 | | #define MMS_CONFIRMEDSERVICE_GETDOMAINATTRIBUTES 37 |
1116 | | #define MMS_CONFIRMEDSERVICE_CREATEPROGRAMINVOCATION 38 |
1117 | | #define MMS_CONFIRMEDSERVICE_DELETEPROGRAMINVOCATION 39 |
1118 | | #define MMS_CONFIRMEDSERVICE_START 40 |
1119 | | #define MMS_CONFIRMEDSERVICE_STOP 41 |
1120 | | #define MMS_CONFIRMEDSERVICE_RESUME 42 |
1121 | | #define MMS_CONFIRMEDSERVICE_RESET 43 |
1122 | | #define MMS_CONFIRMEDSERVICE_KILL 44 |
1123 | | #define MMS_CONFIRMEDSERVICE_GETPROGRAMINVOCATIONATTRIBUTES 45 |
1124 | | #define MMS_CONFIRMEDSERVICE_OBTAINFILE 46 |
1125 | | #define MMS_CONFIRMEDSERVICE_DEFINEEVENTCONDITION 47 |
1126 | | #define MMS_CONFIRMEDSERVICE_DELETEEVENTCONDITION 48 |
1127 | | #define MMS_CONFIRMEDSERVICE_GETEVENTCONDITIONATTRIBUTES 49 |
1128 | | #define MMS_CONFIRMEDSERVICE_REPORTEVENTCONDITIONSTATUS 50 |
1129 | | #define MMS_CONFIRMEDSERVICE_ALTEREVENTCONDITIONMONITORING 51 |
1130 | | #define MMS_CONFIRMEDSERVICE_TRIGGEREVENT 52 |
1131 | | #define MMS_CONFIRMEDSERVICE_DEFINEEVENTACTION 53 |
1132 | | #define MMS_CONFIRMEDSERVICE_DELETEEVENTACTION 54 |
1133 | | #define MMS_CONFIRMEDSERVICE_GETEVENTACTIONATTRIBUTES 55 |
1134 | | #define MMS_CONFIRMEDSERVICE_REPORTEVENTACTIONSTATUS 56 |
1135 | | #define MMS_CONFIRMEDSERVICE_DEFINEEVENTENROLLMENT 57 |
1136 | | #define MMS_CONFIRMEDSERVICE_DELETEEVENTENROLLMENT 58 |
1137 | | #define MMS_CONFIRMEDSERVICE_ALTEREVENTENROLLMENT 59 |
1138 | | #define MMS_CONFIRMEDSERVICE_REPORTEVENTENROLLMENTSTATUS 60 |
1139 | | #define MMS_CONFIRMEDSERVICE_GETEVENTENROLLMENTATTRIBUTES 61 |
1140 | | #define MMS_CONFIRMEDSERVICE_ACKNOWLEDGEEVENTNOTIFICATION 62 |
1141 | | #define MMS_CONFIRMEDSERVICE_GETALARMSUMMARY 63 |
1142 | | #define MMS_CONFIRMEDSERVICE_GETALARMENROLLMENTSUMMARY 64 |
1143 | | #define MMS_CONFIRMEDSERVICE_READJOURNAL 65 |
1144 | | #define MMS_CONFIRMEDSERVICE_WRITEJOURNAL 66 |
1145 | | #define MMS_CONFIRMEDSERVICE_INITIALIZEJOURNAL 67 |
1146 | | #define MMS_CONFIRMEDSERVICE_REPORTJOURNALSTATUS 68 |
1147 | | #define MMS_CONFIRMEDSERVICE_CREATEJOURNAL 69 |
1148 | | #define MMS_CONFIRMEDSERVICE_DELETEJOURNAL 70 |
1149 | | #define MMS_CONFIRMEDSERVICE_GETCAPABILITYLIST 71 |
1150 | | #define MMS_CONFIRMEDSERVICE_FILEOPEN 72 |
1151 | | #define MMS_FILEREAD 73 |
1152 | | #define MMS_FILECLOSE 74 |
1153 | | #define MMS_FILERENAME 75 |
1154 | | #define MMS_FILEDELETE 76 |
1155 | | #define MMS_FILEDIRECTORY 77 |
1156 | | |
1157 | 0 | #define MMS_OBJECTCLASS_NAMMEDVARIABLE 0 |
1158 | 0 | #define MMS_OBJECTCLASS_NAMEDVARIABLELIST 2 |
1159 | 0 | #define MMS_OBJECTCLASS_DOMAIN 9 |
1160 | | |
1161 | 0 | #define MMS_OBJECTSCOPE_VMDSPECIFIC 0 |
1162 | | #define MMS_OBJECTSCOPE_DOMAINSPECIFIC 1 |
1163 | | |
1164 | | #define MMS_IEC_61850_CONF_SERV_PDU_NOT_SET 0 |
1165 | 1 | #define MMS_IEC_61850_CONF_SERV_PDU_GET_SERV_DIR 1 |
1166 | 1 | #define MMS_IEC_61850_CONF_SERV_PDU_GETLOGICALDEVICEDIRECTORY 2 |
1167 | 1 | #define MMS_IEC_61850_CONF_SERV_PDU_GETDATASETDIRECTORY 3 |
1168 | 1 | #define MMS_IEC_61850_CONF_SERV_PDU_GETDATADIRECTORY 4 |
1169 | 0 | #define MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE 5 |
1170 | 1 | #define MMS_IEC_61850_CONF_SERV_PDU_READ 6 |
1171 | 2 | #define MMS_IEC_61850_CONF_SERV_PDU_WRITE 7 |
1172 | | |
1173 | | typedef struct mms_actx_private_data_t |
1174 | | { |
1175 | | int mms_pdu_type; /* MMSpdu type taken from MMSpdu CHOICE branch_taken */ |
1176 | | int invokeid; |
1177 | | iec61850_8_1_vmd_specific vmd_specific; /* Numeric representation of decode vmd_specific strings */ |
1178 | | int listOfAccessResult_cnt; /* Position in the list, 1 count */ |
1179 | | int data_cnt; /* Number of times data occurred(depth)*/ |
1180 | | uint16_t reported_optflds; /* Bitmap over included fields */ |
1181 | | proto_item* pdu_item; /* The item to append PDU info to */ |
1182 | | int confirmedservice_type; /* Requested service */ |
1183 | | int objectclass; |
1184 | | int objectscope; |
1185 | | mms_transaction_t* mms_trans_p; /* Pointer to the transaction record */ |
1186 | | char* itemid_str; |
1187 | | int success; /* If variable access succeeded or not */ |
1188 | | } mms_actx_private_data_t; |
1189 | | |
1190 | | |
1191 | | static const value_string mms_iec6150_cntmodel_vals[] = { |
1192 | | {0, "status-only"}, |
1193 | | {1, "direct-with-normal-security"}, |
1194 | | {2, "sbo-with-normal-security"}, |
1195 | | {3, "direct-with-enhanced-security"}, |
1196 | | {4, "sbo-with-enhanced-security"}, |
1197 | | {0, NULL} |
1198 | | }; |
1199 | | |
1200 | | static const value_string mms_iec6150_validity_vals[] = { |
1201 | | {0, "Good"}, |
1202 | | {1, "Invalid"}, |
1203 | | {2, "Reserved"}, |
1204 | | {3, "Questionable"}, |
1205 | | {0, NULL} |
1206 | | }; |
1207 | | |
1208 | | static const value_string mms_iec6150_source_vals[] = { |
1209 | | {0, "Process"}, |
1210 | | {1, "Substituted"}, |
1211 | | {0, NULL} |
1212 | | }; |
1213 | | |
1214 | | static const value_string mms_iec6150_timeaccuracy_vals[] = { |
1215 | | {0, "0 bits accuracy"}, |
1216 | | {1, "1 bits accuracy"}, |
1217 | | {2, "2 bits accuracy"}, |
1218 | | {3, "3 bits accuracy"}, |
1219 | | {4, "4 bits accuracy"}, |
1220 | | {5, "5 bits accuracy"}, |
1221 | | {6, "6 bits accuracy"}, |
1222 | | {7, "7 bits accuracy"}, |
1223 | | {8, "8 bits accuracy"}, |
1224 | | {9, "9 bits accuracy"}, |
1225 | | {10, "10 bits accuracy"}, |
1226 | | {11, "11 bits accuracy"}, |
1227 | | {12, "12 bits accuracy"}, |
1228 | | {13, "13 bits accuracy"}, |
1229 | | {14, "14 bits accuracy"}, |
1230 | | {15, "15 bits accuracy"}, |
1231 | | {16, "16 bits accuracy"}, |
1232 | | {17, "17 bits accuracy"}, |
1233 | | {18, "18 bits accuracy"}, |
1234 | | {19, "19 bits accuracy"}, |
1235 | | {20, "20 bits accuracy"}, |
1236 | | {21, "21 bits accuracy"}, |
1237 | | {22, "22 bits accuracy"}, |
1238 | | {23, "23 bits accuracy"}, |
1239 | | {24, "24 bits accuracy"}, |
1240 | | {25, "25 bits accuracy"}, |
1241 | | {26, "26 bits accuracy"}, |
1242 | | {27, "27 bits accuracy"}, |
1243 | | {28, "28 bits accuracy"}, |
1244 | | {29, "29 bits accuracy"}, |
1245 | | {30, "Invalid"}, |
1246 | | {31, "Unspecified"}, |
1247 | | {0, NULL} |
1248 | | }; |
1249 | | |
1250 | | static const value_string mms_iec6150_orcategory_vals[] = { |
1251 | | {0, "not-supported"}, |
1252 | | {1, "bay-control"}, |
1253 | | {2, "station-control"}, |
1254 | | {3, "remote-control"}, |
1255 | | {4, "automatic-bay"}, |
1256 | | {5, "automatic-station"}, |
1257 | | {6, "automatic-station"}, |
1258 | | {7, "maintenance"}, |
1259 | | {8, "process"}, |
1260 | | {0, NULL} |
1261 | | }; |
1262 | | |
1263 | | static const value_string mms_iec6150_beh_vals[] = { |
1264 | | {0,"Uninitialised"}, |
1265 | | {1, "on"}, |
1266 | | {2, "blocked"}, |
1267 | | {3, "test"}, |
1268 | | {4, "test/blocked"}, |
1269 | | {5, "off"}, |
1270 | | {0, NULL} |
1271 | | }; |
1272 | | |
1273 | | static const value_string mms_iec6150_health_vals[] = { |
1274 | | {0,"Uninitialised"}, |
1275 | | {1,"Ok"}, |
1276 | | {2,"Warning"}, |
1277 | | {3,"Alarm"}, |
1278 | | {0, NULL} |
1279 | | }; |
1280 | | |
1281 | | /* Helper function to get or create the private data struct */ |
1282 | | static |
1283 | | mms_private_data_t* mms_get_private_data(asn1_ctx_t* actx) |
1284 | 80 | { |
1285 | 80 | packet_info* pinfo = actx->pinfo; |
1286 | 80 | mms_private_data_t* private_data = (mms_private_data_t*)p_get_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num); |
1287 | 80 | if (private_data != NULL) { |
1288 | 39 | return private_data; |
1289 | 41 | } else { |
1290 | 41 | private_data = wmem_new0(pinfo->pool, mms_private_data_t); |
1291 | 41 | p_add_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num, private_data); |
1292 | 41 | return private_data; |
1293 | 41 | } |
1294 | 80 | } |
1295 | | |
1296 | | /* Helper function to test presence of private data struct */ |
1297 | | static bool |
1298 | | mms_has_private_data(asn1_ctx_t* actx) |
1299 | 122 | { |
1300 | 122 | packet_info* pinfo = actx->pinfo; |
1301 | 122 | return (p_get_proto_data(pinfo->pool, pinfo, proto_mms, pinfo->curr_layer_num) != NULL); |
1302 | 122 | } |
1303 | | |
1304 | | static void |
1305 | | private_data_add_preCinfo(asn1_ctx_t* actx, uint32_t val) |
1306 | 7 | { |
1307 | 7 | mms_private_data_t* private_data = (mms_private_data_t*)mms_get_private_data(actx); |
1308 | 7 | snprintf(private_data->preCinfo, BUFFER_SIZE_PRE, "%02d ", val); |
1309 | 7 | } |
1310 | | |
1311 | | static char* |
1312 | | private_data_get_preCinfo(asn1_ctx_t* actx) |
1313 | 36 | { |
1314 | 36 | mms_private_data_t* private_data = (mms_private_data_t*)mms_get_private_data(actx); |
1315 | 36 | return private_data->preCinfo; |
1316 | 36 | } |
1317 | | |
1318 | | static void |
1319 | | private_data_add_moreCinfo_id(asn1_ctx_t* actx, tvbuff_t* tvb) |
1320 | 0 | { |
1321 | 0 | mms_private_data_t* private_data = (mms_private_data_t*)mms_get_private_data(actx); |
1322 | 0 | (void)g_strlcat(private_data->moreCinfo, " ", BUFFER_SIZE_MORE); |
1323 | 0 | (void)g_strlcat(private_data->moreCinfo, tvb_get_string_enc(actx->pinfo->pool, tvb, |
1324 | 0 | 0, tvb_reported_length(tvb), ENC_ASCII | ENC_NA), BUFFER_SIZE_MORE); |
1325 | 0 | } |
1326 | | |
1327 | | static void |
1328 | | private_data_add_moreCinfo_float(asn1_ctx_t* actx, tvbuff_t* tvb) |
1329 | 0 | { |
1330 | 0 | mms_private_data_t* private_data = (mms_private_data_t*)mms_get_private_data(actx); |
1331 | 0 | snprintf(private_data->moreCinfo, BUFFER_SIZE_MORE, |
1332 | 0 | " %f", tvb_get_ieee_float(tvb, 1, ENC_BIG_ENDIAN)); |
1333 | 0 | } |
1334 | | |
1335 | | static char* |
1336 | | private_data_get_moreCinfo(asn1_ctx_t* actx) |
1337 | 37 | { |
1338 | 37 | mms_private_data_t* private_data = (mms_private_data_t*)mms_get_private_data(actx); |
1339 | 37 | return private_data->moreCinfo; |
1340 | 37 | } |
1341 | | |
1342 | | /*****************************************************************************/ |
1343 | | |
1344 | | |
1345 | | /*--- Cyclic dependencies ---*/ |
1346 | | |
1347 | | /* TypeSpecification -> TypeSpecification/array -> TypeSpecification */ |
1348 | | /* TypeSpecification -> TypeSpecification/structure -> TypeSpecification/structure/components -> TypeSpecification/structure/components/_item -> TypeSpecification */ |
1349 | | static int dissect_mms_TypeSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); |
1350 | | |
1351 | | /* VariableSpecification -> ScatteredAccessDescription -> ScatteredAccessDescription/_item -> VariableSpecification */ |
1352 | | static int dissect_mms_VariableSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); |
1353 | | |
1354 | | /* AlternateAccess -> AlternateAccess/_item -> AlternateAccessSelection -> AlternateAccessSelection/selectAlternateAccess -> AlternateAccess */ |
1355 | | static int dissect_mms_AlternateAccess(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); |
1356 | | |
1357 | | /* Data -> Data/array -> Data */ |
1358 | | /* Data -> Data/structure -> Data */ |
1359 | | static int dissect_mms_Data(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); |
1360 | | |
1361 | | |
1362 | | |
1363 | | static int * const ReportedOptFlds_bits[] = { |
1364 | | &hf_mms_ReportedOptFlds_reserved, |
1365 | | &hf_mms_ReportedOptFlds_sequence_number, |
1366 | | &hf_mms_ReportedOptFlds_report_time_stamp, |
1367 | | &hf_mms_ReportedOptFlds_reason_for_inclusion, |
1368 | | &hf_mms_ReportedOptFlds_data_set_name, |
1369 | | &hf_mms_ReportedOptFlds_data_reference, |
1370 | | &hf_mms_ReportedOptFlds_buffer_overflow, |
1371 | | &hf_mms_ReportedOptFlds_entryID, |
1372 | | &hf_mms_ReportedOptFlds_conf_revision, |
1373 | | &hf_mms_ReportedOptFlds_segmentation, |
1374 | | NULL |
1375 | | }; |
1376 | | |
1377 | | static int |
1378 | 0 | dissect_mms_ReportedOptFlds(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1379 | 0 | tvbuff_t *parameter_tvb = NULL; |
1380 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
1381 | 0 | ReportedOptFlds_bits, 10, hf_index, ett_mms_ReportedOptFlds, |
1382 | 0 | ¶meter_tvb); |
1383 | |
|
1384 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
1385 | 0 | if(mms_priv && parameter_tvb){ |
1386 | 0 | mms_priv->reported_optflds = tvb_get_ntohs(parameter_tvb,0); |
1387 | 0 | } |
1388 | | |
1389 | |
|
1390 | 0 | return offset; |
1391 | 0 | } |
1392 | | |
1393 | | |
1394 | | |
1395 | | static int |
1396 | 34 | dissect_mms_Unsigned32(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1397 | 34 | uint32_t val; |
1398 | 34 | conversation_t *conversation; |
1399 | 34 | mms_conv_info_t *mms_info; |
1400 | 34 | mms_transaction_t *mms_trans; |
1401 | | |
1402 | 34 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
1403 | 34 | &val); |
1404 | | |
1405 | 34 | if (hf_index == hf_mms_invokeID){ |
1406 | 7 | mms_actx_private_data_t* mms_priv = (mms_actx_private_data_t*)actx->private_data; |
1407 | 7 | if(mms_priv){ |
1408 | 7 | mms_priv->invokeid=val; |
1409 | 7 | private_data_add_preCinfo(actx, val); |
1410 | 7 | conversation = find_or_create_conversation(actx->pinfo); |
1411 | | |
1412 | 7 | mms_info = (mms_conv_info_t *)conversation_get_proto_data(conversation, proto_mms); |
1413 | 7 | if (!mms_info) { |
1414 | | /* |
1415 | | * No. Attach that information to the conversation, and add |
1416 | | * it to the list of information structures. |
1417 | | */ |
1418 | 4 | mms_info = wmem_new(wmem_file_scope(), mms_conv_info_t); |
1419 | 4 | mms_info->pdus=wmem_map_new(wmem_file_scope(), g_direct_hash, g_direct_equal); |
1420 | | |
1421 | 4 | conversation_add_proto_data(conversation, proto_mms, mms_info); |
1422 | 4 | } |
1423 | | /* Request or response? */ |
1424 | 7 | bool is_request; |
1425 | | |
1426 | 7 | switch(mms_priv->mms_pdu_type){ |
1427 | 5 | case 0: |
1428 | | /* Confirmed-RequestPDU */ |
1429 | 5 | is_request = true; |
1430 | 5 | break; |
1431 | 2 | case 1: |
1432 | | /* confirmed-ResponsePDU */ |
1433 | 2 | is_request = false; |
1434 | 2 | break; |
1435 | 0 | case 2: |
1436 | | /* Confirmed-ErrorPDU */ |
1437 | 0 | is_request = false; |
1438 | 0 | break; |
1439 | 0 | default: |
1440 | 0 | is_request = false; |
1441 | 0 | break; |
1442 | 7 | } |
1443 | | |
1444 | 7 | if (!PINFO_FD_VISITED(actx->pinfo)) { |
1445 | 7 | if (is_request==true) { |
1446 | | /* This is a request */ |
1447 | 5 | mms_trans=wmem_new0(wmem_file_scope(), mms_transaction_t); |
1448 | 5 | mms_trans->req_frame = actx->pinfo->num; |
1449 | 5 | mms_trans->req_time = actx->pinfo->fd->abs_ts; |
1450 | 5 | wmem_map_insert(mms_info->pdus, GUINT_TO_POINTER(mms_priv->invokeid), (void *)mms_trans); |
1451 | 5 | } else { |
1452 | 2 | mms_trans=(mms_transaction_t *)wmem_map_lookup(mms_info->pdus, GUINT_TO_POINTER(mms_priv->invokeid)); |
1453 | 2 | if (mms_trans) { |
1454 | 0 | mms_trans->rep_frame = actx->pinfo->num; |
1455 | 0 | } |
1456 | 2 | } |
1457 | 7 | } else { |
1458 | 0 | mms_trans=(mms_transaction_t *)wmem_map_lookup(mms_info->pdus, GUINT_TO_POINTER(mms_priv->invokeid)); |
1459 | 0 | } |
1460 | 7 | if (!mms_trans) { |
1461 | | /* create a "fake" mms_trans structure */ |
1462 | 2 | mms_trans=wmem_new0(actx->pinfo->pool, mms_transaction_t); |
1463 | 2 | mms_trans->req_frame = 0; |
1464 | 2 | mms_trans->rep_frame = 0; |
1465 | 2 | mms_trans->req_time = actx->pinfo->fd->abs_ts; |
1466 | 2 | } |
1467 | 7 | mms_priv->mms_trans_p = mms_trans; |
1468 | | |
1469 | | /* print state tracking in the tree */ |
1470 | 7 | if (is_request) { |
1471 | | /* This is a request */ |
1472 | 5 | if (mms_trans->rep_frame) { |
1473 | 0 | proto_item *it; |
1474 | |
|
1475 | 0 | it = proto_tree_add_uint(actx->subtree.top_tree, hf_mms_response_in, tvb, 0, 0, mms_trans->rep_frame); |
1476 | 0 | proto_item_set_generated(it); |
1477 | 0 | } |
1478 | 5 | } else { |
1479 | | /* This is a reply */ |
1480 | 2 | if (mms_trans->req_frame) { |
1481 | 0 | proto_item *it; |
1482 | 0 | nstime_t ns; |
1483 | |
|
1484 | 0 | it = proto_tree_add_uint(actx->subtree.top_tree, hf_mms_response_to, tvb, 0, 0, mms_trans->req_frame); |
1485 | 0 | proto_item_set_generated(it); |
1486 | |
|
1487 | 0 | nstime_delta(&ns, &actx->pinfo->fd->abs_ts, &mms_trans->req_time); |
1488 | 0 | it = proto_tree_add_time(actx->subtree.top_tree, hf_mms_response_time, tvb, 0, 0, &ns); |
1489 | 0 | proto_item_set_generated(it); |
1490 | 0 | } |
1491 | 2 | } |
1492 | 7 | } |
1493 | 7 | } |
1494 | | |
1495 | | |
1496 | 34 | return offset; |
1497 | 34 | } |
1498 | | |
1499 | | |
1500 | | |
1501 | | static int |
1502 | 30 | dissect_mms_Identifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1503 | 30 | tvbuff_t *parameter_tvb = NULL; |
1504 | 30 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
1505 | | |
1506 | 30 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString, |
1507 | 30 | actx, tree, tvb, offset, hf_index, |
1508 | 30 | ¶meter_tvb); |
1509 | | |
1510 | 30 | if (parameter_tvb) { |
1511 | 4 | if (hf_index == hf_mms_domainId) { |
1512 | 0 | private_data_add_moreCinfo_id(actx,parameter_tvb); |
1513 | 0 | } |
1514 | 4 | if ((mms_priv) && ((hf_index == hf_mms_objectName_domain_specific_itemId)|| |
1515 | 4 | (hf_index ==hf_mms_listOfIdentifier_item))) { |
1516 | 0 | private_data_add_moreCinfo_id(actx,parameter_tvb); |
1517 | 0 | if((mms_priv->mms_trans_p)&&(parameter_tvb)){ |
1518 | 0 | mms_priv->itemid_str = tvb_get_string_enc(actx->pinfo->pool, parameter_tvb, 0, tvb_reported_length(parameter_tvb), ENC_ASCII|ENC_NA); |
1519 | 0 | if(g_str_has_suffix(mms_priv->itemid_str,"$ctlModel")){ |
1520 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_CTLMODEL; |
1521 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"$q")){ |
1522 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_Q; |
1523 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"$Oper")){ |
1524 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_OPER; |
1525 | 0 | }else if((g_str_has_suffix(mms_priv->itemid_str,"$Oper$Check")) || (g_str_has_suffix(mms_priv->itemid_str,"$SBOw$Check"))){ |
1526 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_CHECK; |
1527 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"$orCat")){ |
1528 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_OR_CAT; |
1529 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"Beh$stVal")){ |
1530 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_BEH$STVAL; |
1531 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"Mod$stVal")){ |
1532 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_MOD$STVAL; |
1533 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"Health$stVal")){ |
1534 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_HEALTH$STVAL; |
1535 | 0 | }else if((g_strrstr(mms_priv->itemid_str,"$BR$") || g_strrstr(mms_priv->itemid_str,"$RP$"))){ //GetBRCBValues,GetURCBValues,) |
1536 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_$BR$_OR_$RP$; |
1537 | 0 | }else if(g_str_has_suffix(mms_priv->itemid_str,"$SBOw")){ |
1538 | 0 | mms_priv->mms_trans_p->itemid = IEC61850_ITEM_ID_$SBOW; |
1539 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE; |
1540 | 0 | } |
1541 | 0 | } |
1542 | 0 | } |
1543 | | |
1544 | 4 | if ((mms_priv) && (hf_index == hf_mms_vmd_specific)){ |
1545 | 0 | const char *vmd_specific_str = tvb_get_string_enc(actx->pinfo->pool, parameter_tvb, 0, tvb_reported_length(parameter_tvb), ENC_ASCII|ENC_NA); |
1546 | 0 | if (strcmp(vmd_specific_str, "RPT") == 0) { |
1547 | 0 | mms_priv->vmd_specific = IEC61850_8_1_RPT; |
1548 | 0 | } |
1549 | 0 | } |
1550 | 4 | } |
1551 | | |
1552 | | |
1553 | 30 | return offset; |
1554 | 30 | } |
1555 | | |
1556 | | |
1557 | | |
1558 | | static int |
1559 | 0 | dissect_mms_ObjectName_domain_specific_itemid(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1560 | 0 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
1561 | |
|
1562 | 0 | return offset; |
1563 | 0 | } |
1564 | | |
1565 | | |
1566 | | static const ber_sequence_t T_domain_specific_sequence[] = { |
1567 | | { &hf_mms_domainId , BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_Identifier }, |
1568 | | { &hf_mms_objectName_domain_specific_itemId, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_ObjectName_domain_specific_itemid }, |
1569 | | { NULL, 0, 0, 0, NULL } |
1570 | | }; |
1571 | | |
1572 | | static int |
1573 | 0 | dissect_mms_T_domain_specific(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1574 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1575 | 0 | T_domain_specific_sequence, hf_index, ett_mms_T_domain_specific); |
1576 | |
|
1577 | 0 | return offset; |
1578 | 0 | } |
1579 | | |
1580 | | |
1581 | | static const value_string mms_ObjectName_vals[] = { |
1582 | | { 0, "vmd-specific" }, |
1583 | | { 1, "domain-specific" }, |
1584 | | { 2, "aa-specific" }, |
1585 | | { 0, NULL } |
1586 | | }; |
1587 | | |
1588 | | static const ber_choice_t ObjectName_choice[] = { |
1589 | | { 0, &hf_mms_vmd_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1590 | | { 1, &hf_mms_domain_specific , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_domain_specific }, |
1591 | | { 2, &hf_mms_aa_specific , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1592 | | { 0, NULL, 0, 0, 0, NULL } |
1593 | | }; |
1594 | | |
1595 | | static int |
1596 | 33 | dissect_mms_ObjectName(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1597 | 33 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1598 | 33 | ObjectName_choice, hf_index, ett_mms_ObjectName, |
1599 | 33 | NULL); |
1600 | | |
1601 | 33 | return offset; |
1602 | 33 | } |
1603 | | |
1604 | | |
1605 | | static int * const Transitions_bits[] = { |
1606 | | &hf_mms_Transitions_idle_to_disabled, |
1607 | | &hf_mms_Transitions_active_to_disabled, |
1608 | | &hf_mms_Transitions_disabled_to_idle, |
1609 | | &hf_mms_Transitions_active_to_idle, |
1610 | | &hf_mms_Transitions_disabled_to_active, |
1611 | | &hf_mms_Transitions_idle_to_active, |
1612 | | &hf_mms_Transitions_any_to_deleted, |
1613 | | NULL |
1614 | | }; |
1615 | | |
1616 | | static int |
1617 | 11 | dissect_mms_Transitions(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1618 | 11 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
1619 | 11 | Transitions_bits, 7, hf_index, ett_mms_Transitions, |
1620 | 11 | NULL); |
1621 | | |
1622 | 11 | return offset; |
1623 | 11 | } |
1624 | | |
1625 | | |
1626 | | static const ber_sequence_t AttachToEventCondition_sequence[] = { |
1627 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
1628 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
1629 | | { &hf_mms_causingTransitions, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Transitions }, |
1630 | | { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
1631 | | { NULL, 0, 0, 0, NULL } |
1632 | | }; |
1633 | | |
1634 | | static int |
1635 | 0 | dissect_mms_AttachToEventCondition(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1636 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1637 | 0 | AttachToEventCondition_sequence, hf_index, ett_mms_AttachToEventCondition); |
1638 | |
|
1639 | 0 | return offset; |
1640 | 0 | } |
1641 | | |
1642 | | |
1643 | | |
1644 | | static int |
1645 | 0 | dissect_mms_Unsigned8(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1646 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
1647 | 0 | NULL); |
1648 | |
|
1649 | 0 | return offset; |
1650 | 0 | } |
1651 | | |
1652 | | |
1653 | | |
1654 | | static int |
1655 | 0 | dissect_mms_Priority(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1656 | 0 | offset = dissect_mms_Unsigned8(implicit_tag, tvb, offset, actx, tree, hf_index); |
1657 | |
|
1658 | 0 | return offset; |
1659 | 0 | } |
1660 | | |
1661 | | |
1662 | | |
1663 | | static int |
1664 | 0 | dissect_mms_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1665 | 0 | offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); |
1666 | |
|
1667 | 0 | return offset; |
1668 | 0 | } |
1669 | | |
1670 | | |
1671 | | static const ber_sequence_t AttachToSemaphore_sequence[] = { |
1672 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
1673 | | { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1674 | | { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
1675 | | { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
1676 | | { &hf_mms_controlTimeOut , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
1677 | | { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
1678 | | { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
1679 | | { NULL, 0, 0, 0, NULL } |
1680 | | }; |
1681 | | |
1682 | | static int |
1683 | 0 | dissect_mms_AttachToSemaphore(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1684 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1685 | 0 | AttachToSemaphore_sequence, hf_index, ett_mms_AttachToSemaphore); |
1686 | |
|
1687 | 0 | return offset; |
1688 | 0 | } |
1689 | | |
1690 | | |
1691 | | static const value_string mms_Modifier_vals[] = { |
1692 | | { 0, "attach-To-Event-Condition" }, |
1693 | | { 1, "attach-To-Semaphore" }, |
1694 | | { 0, NULL } |
1695 | | }; |
1696 | | |
1697 | | static const ber_choice_t Modifier_choice[] = { |
1698 | | { 0, &hf_mms_attach_To_Event_Condition, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_AttachToEventCondition }, |
1699 | | { 1, &hf_mms_attach_To_Semaphore, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_AttachToSemaphore }, |
1700 | | { 0, NULL, 0, 0, 0, NULL } |
1701 | | }; |
1702 | | |
1703 | | static int |
1704 | 0 | dissect_mms_Modifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1705 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1706 | 0 | Modifier_choice, hf_index, ett_mms_Modifier, |
1707 | 0 | NULL); |
1708 | |
|
1709 | 0 | return offset; |
1710 | 0 | } |
1711 | | |
1712 | | |
1713 | | static const ber_sequence_t SEQUENCE_OF_Modifier_sequence_of[1] = { |
1714 | | { &hf_mms_listOfModifier_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Modifier }, |
1715 | | }; |
1716 | | |
1717 | | static int |
1718 | 0 | dissect_mms_SEQUENCE_OF_Modifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1719 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
1720 | 0 | SEQUENCE_OF_Modifier_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Modifier); |
1721 | |
|
1722 | 0 | return offset; |
1723 | 0 | } |
1724 | | |
1725 | | |
1726 | | |
1727 | | static int |
1728 | 30 | dissect_mms_Status_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1729 | 30 | offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); |
1730 | | |
1731 | 30 | return offset; |
1732 | 30 | } |
1733 | | |
1734 | | |
1735 | | static const value_string mms_ObjectClass_vals[] = { |
1736 | | { 0, "nammedVariable" }, |
1737 | | { 1, "scatteredAccess" }, |
1738 | | { 2, "namedVariableList" }, |
1739 | | { 3, "namedType" }, |
1740 | | { 4, "semaphore" }, |
1741 | | { 5, "eventCondition" }, |
1742 | | { 6, "eventAction" }, |
1743 | | { 7, "eventEnrollment" }, |
1744 | | { 8, "journal" }, |
1745 | | { 9, "domain" }, |
1746 | | { 10, "programInvocation" }, |
1747 | | { 11, "operatorStation" }, |
1748 | | { 0, NULL } |
1749 | | }; |
1750 | | |
1751 | | |
1752 | | static int |
1753 | 0 | dissect_mms_ObjectClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1754 | 0 | uint32_t val; |
1755 | |
|
1756 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
1757 | 0 | &val); |
1758 | |
|
1759 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
1760 | 0 | if(mms_priv){ |
1761 | 0 | mms_priv->objectclass = val; |
1762 | 0 | } |
1763 | | |
1764 | |
|
1765 | 0 | return offset; |
1766 | 0 | } |
1767 | | |
1768 | | |
1769 | | static const value_string mms_T_extendedObjectClass_vals[] = { |
1770 | | { 0, "objectClass" }, |
1771 | | { 0, NULL } |
1772 | | }; |
1773 | | |
1774 | | static const ber_choice_t T_extendedObjectClass_choice[] = { |
1775 | | { 0, &hf_mms_objectClass , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_ObjectClass }, |
1776 | | { 0, NULL, 0, 0, 0, NULL } |
1777 | | }; |
1778 | | |
1779 | | static int |
1780 | 0 | dissect_mms_T_extendedObjectClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1781 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1782 | 0 | T_extendedObjectClass_choice, hf_index, ett_mms_T_extendedObjectClass, |
1783 | 0 | NULL); |
1784 | |
|
1785 | 0 | return offset; |
1786 | 0 | } |
1787 | | |
1788 | | |
1789 | | |
1790 | | static int |
1791 | 0 | dissect_mms_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1792 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
1793 | |
|
1794 | 0 | return offset; |
1795 | 0 | } |
1796 | | |
1797 | | |
1798 | | static const value_string mms_ObjectScope_vals[] = { |
1799 | | { 0, "vmdSpecific" }, |
1800 | | { 1, "domainSpecific" }, |
1801 | | { 2, "aaSpecific" }, |
1802 | | { 0, NULL } |
1803 | | }; |
1804 | | |
1805 | | static const ber_choice_t ObjectScope_choice[] = { |
1806 | | { 0, &hf_mms_vmdSpecific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
1807 | | { 1, &hf_mms_domainSpecific , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1808 | | { 2, &hf_mms_aaSpecific , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
1809 | | { 0, NULL, 0, 0, 0, NULL } |
1810 | | }; |
1811 | | |
1812 | | static int |
1813 | 0 | dissect_mms_ObjectScope(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1814 | 0 | int val; |
1815 | |
|
1816 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1817 | 0 | ObjectScope_choice, hf_index, ett_mms_ObjectScope, |
1818 | 0 | &val); |
1819 | |
|
1820 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
1821 | 0 | if(mms_priv){ |
1822 | 0 | mms_priv->objectscope = val; |
1823 | 0 | } |
1824 | | |
1825 | |
|
1826 | 0 | return offset; |
1827 | 0 | } |
1828 | | |
1829 | | |
1830 | | static const ber_sequence_t GetNameList_Request_sequence[] = { |
1831 | | { &hf_mms_extendedObjectClass, BER_CLASS_CON, 0, 0, dissect_mms_T_extendedObjectClass }, |
1832 | | { &hf_mms_objectScope , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectScope }, |
1833 | | { &hf_mms_getNameList_Request_continueAfter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1834 | | { NULL, 0, 0, 0, NULL } |
1835 | | }; |
1836 | | |
1837 | | static int |
1838 | 9 | dissect_mms_GetNameList_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1839 | 9 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1840 | 9 | GetNameList_Request_sequence, hf_index, ett_mms_GetNameList_Request); |
1841 | | |
1842 | 9 | return offset; |
1843 | 9 | } |
1844 | | |
1845 | | |
1846 | | |
1847 | | static int |
1848 | 3 | dissect_mms_Identify_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1849 | 3 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
1850 | | |
1851 | 3 | return offset; |
1852 | 3 | } |
1853 | | |
1854 | | |
1855 | | static const value_string mms_T_objectClass_vals[] = { |
1856 | | { 0, "namedVariable" }, |
1857 | | { 1, "scatteredAccess" }, |
1858 | | { 2, "namedVariableList" }, |
1859 | | { 3, "namedType" }, |
1860 | | { 4, "semaphore" }, |
1861 | | { 5, "eventCondition" }, |
1862 | | { 6, "eventAction" }, |
1863 | | { 7, "eventEnrollment" }, |
1864 | | { 8, "journal" }, |
1865 | | { 9, "domain" }, |
1866 | | { 10, "programInvocation" }, |
1867 | | { 11, "operatorStation" }, |
1868 | | { 0, NULL } |
1869 | | }; |
1870 | | |
1871 | | |
1872 | | static int |
1873 | 0 | dissect_mms_T_objectClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1874 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
1875 | 0 | NULL); |
1876 | |
|
1877 | 0 | return offset; |
1878 | 0 | } |
1879 | | |
1880 | | |
1881 | | static const value_string mms_T_extendedObjectClass_01_vals[] = { |
1882 | | { 0, "objectClass" }, |
1883 | | { 0, NULL } |
1884 | | }; |
1885 | | |
1886 | | static const ber_choice_t T_extendedObjectClass_01_choice[] = { |
1887 | | { 0, &hf_mms_objectClass_01 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_objectClass }, |
1888 | | { 0, NULL, 0, 0, 0, NULL } |
1889 | | }; |
1890 | | |
1891 | | static int |
1892 | 0 | dissect_mms_T_extendedObjectClass_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1893 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1894 | 0 | T_extendedObjectClass_01_choice, hf_index, ett_mms_T_extendedObjectClass_01, |
1895 | 0 | NULL); |
1896 | |
|
1897 | 0 | return offset; |
1898 | 0 | } |
1899 | | |
1900 | | |
1901 | | static const ber_sequence_t Rename_Request_sequence[] = { |
1902 | | { &hf_mms_extendedObjectClass_01, BER_CLASS_CON, 0, 0, dissect_mms_T_extendedObjectClass_01 }, |
1903 | | { &hf_mms_currentName , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
1904 | | { &hf_mms_newIdentifier , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1905 | | { NULL, 0, 0, 0, NULL } |
1906 | | }; |
1907 | | |
1908 | | static int |
1909 | 0 | dissect_mms_Rename_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1910 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1911 | 0 | Rename_Request_sequence, hf_index, ett_mms_Rename_Request); |
1912 | |
|
1913 | 0 | return offset; |
1914 | 0 | } |
1915 | | |
1916 | | |
1917 | | |
1918 | | static int |
1919 | 0 | dissect_mms_VisibleString(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1920 | 0 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString, |
1921 | 0 | actx, tree, tvb, offset, hf_index, |
1922 | 0 | NULL); |
1923 | |
|
1924 | 0 | return offset; |
1925 | 0 | } |
1926 | | |
1927 | | |
1928 | | |
1929 | | static int |
1930 | 0 | dissect_mms_OCTET_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1931 | 0 | offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, |
1932 | 0 | NULL); |
1933 | |
|
1934 | 0 | return offset; |
1935 | 0 | } |
1936 | | |
1937 | | |
1938 | | static const value_string mms_Address_vals[] = { |
1939 | | { 0, "numericAddress" }, |
1940 | | { 1, "symbolicAddress" }, |
1941 | | { 2, "unconstrainedAddress" }, |
1942 | | { 0, NULL } |
1943 | | }; |
1944 | | |
1945 | | static const ber_choice_t Address_choice[] = { |
1946 | | { 0, &hf_mms_numericAddress , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
1947 | | { 1, &hf_mms_symbolicAddress , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
1948 | | { 2, &hf_mms_unconstrainedAddress, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
1949 | | { 0, NULL, 0, 0, 0, NULL } |
1950 | | }; |
1951 | | |
1952 | | static int |
1953 | 0 | dissect_mms_Address(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1954 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
1955 | 0 | Address_choice, hf_index, ett_mms_Address, |
1956 | 0 | NULL); |
1957 | |
|
1958 | 0 | return offset; |
1959 | 0 | } |
1960 | | |
1961 | | |
1962 | | static const ber_sequence_t T_array_sequence[] = { |
1963 | | { &hf_mms_packed , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
1964 | | { &hf_mms_numberOfElements, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
1965 | | { &hf_mms_elementType , BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
1966 | | { NULL, 0, 0, 0, NULL } |
1967 | | }; |
1968 | | |
1969 | | static int |
1970 | 0 | dissect_mms_T_array(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1971 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1972 | 0 | T_array_sequence, hf_index, ett_mms_T_array); |
1973 | |
|
1974 | 0 | return offset; |
1975 | 0 | } |
1976 | | |
1977 | | |
1978 | | static const ber_sequence_t T_components_item_sequence[] = { |
1979 | | { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
1980 | | { &hf_mms_componentType , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
1981 | | { NULL, 0, 0, 0, NULL } |
1982 | | }; |
1983 | | |
1984 | | static int |
1985 | 0 | dissect_mms_T_components_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1986 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
1987 | 0 | T_components_item_sequence, hf_index, ett_mms_T_components_item); |
1988 | |
|
1989 | 0 | return offset; |
1990 | 0 | } |
1991 | | |
1992 | | |
1993 | | static const ber_sequence_t T_components_sequence_of[1] = { |
1994 | | { &hf_mms_components_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_components_item }, |
1995 | | }; |
1996 | | |
1997 | | static int |
1998 | 0 | dissect_mms_T_components(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
1999 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2000 | 0 | T_components_sequence_of, hf_index, ett_mms_T_components); |
2001 | |
|
2002 | 0 | return offset; |
2003 | 0 | } |
2004 | | |
2005 | | |
2006 | | static const ber_sequence_t T_structure_sequence[] = { |
2007 | | { &hf_mms_packed , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
2008 | | { &hf_mms_components , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_components }, |
2009 | | { NULL, 0, 0, 0, NULL } |
2010 | | }; |
2011 | | |
2012 | | static int |
2013 | 0 | dissect_mms_T_structure(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2014 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2015 | 0 | T_structure_sequence, hf_index, ett_mms_T_structure); |
2016 | |
|
2017 | 0 | return offset; |
2018 | 0 | } |
2019 | | |
2020 | | |
2021 | | |
2022 | | static int |
2023 | 10 | dissect_mms_Integer32(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2024 | 10 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
2025 | 10 | NULL); |
2026 | | |
2027 | 10 | return offset; |
2028 | 10 | } |
2029 | | |
2030 | | |
2031 | | static const value_string mms_TypeSpecification_vals[] = { |
2032 | | { 0, "typeName" }, |
2033 | | { 1, "array" }, |
2034 | | { 2, "structure" }, |
2035 | | { 3, "boolean" }, |
2036 | | { 4, "bit-string" }, |
2037 | | { 5, "integer" }, |
2038 | | { 6, "unsigned" }, |
2039 | | { 9, "octet-string" }, |
2040 | | { 10, "visible-string" }, |
2041 | | { 11, "generalized-time" }, |
2042 | | { 12, "binary-time" }, |
2043 | | { 13, "bcd" }, |
2044 | | { 15, "objId" }, |
2045 | | { 0, NULL } |
2046 | | }; |
2047 | | |
2048 | | static const ber_choice_t TypeSpecification_choice[] = { |
2049 | | { 0, &hf_mms_typeName , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
2050 | | { 1, &hf_mms_array , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_array }, |
2051 | | { 2, &hf_mms_structure , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_structure }, |
2052 | | { 3, &hf_mms_boolean , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2053 | | { 4, &hf_mms_typeSpecification_bit_string, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
2054 | | { 5, &hf_mms_integer , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
2055 | | { 6, &hf_mms_unsigned , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
2056 | | { 9, &hf_mms_typeSpecification_octet_string, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
2057 | | { 10, &hf_mms_typeSpecification_visible_string, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
2058 | | { 11, &hf_mms_generalized_time, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2059 | | { 12, &hf_mms_typeSpecification_binary_time, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
2060 | | { 13, &hf_mms_bcd , BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
2061 | | { 15, &hf_mms_objId , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2062 | | { 0, NULL, 0, 0, 0, NULL } |
2063 | | }; |
2064 | | |
2065 | | static int |
2066 | 0 | dissect_mms_TypeSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2067 | | // TypeSpecification -> TypeSpecification/array -> TypeSpecification |
2068 | 0 | actx->pinfo->dissection_depth += 2; |
2069 | 0 | increment_dissection_depth(actx->pinfo); |
2070 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2071 | 0 | TypeSpecification_choice, hf_index, ett_mms_TypeSpecification, |
2072 | 0 | NULL); |
2073 | |
|
2074 | 0 | actx->pinfo->dissection_depth -= 2; |
2075 | 0 | decrement_dissection_depth(actx->pinfo); |
2076 | 0 | return offset; |
2077 | 0 | } |
2078 | | |
2079 | | |
2080 | | static const ber_sequence_t T_variableDescription_sequence[] = { |
2081 | | { &hf_mms_address , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Address }, |
2082 | | { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
2083 | | { NULL, 0, 0, 0, NULL } |
2084 | | }; |
2085 | | |
2086 | | static int |
2087 | 0 | dissect_mms_T_variableDescription(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2088 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2089 | 0 | T_variableDescription_sequence, hf_index, ett_mms_T_variableDescription); |
2090 | |
|
2091 | 0 | return offset; |
2092 | 0 | } |
2093 | | |
2094 | | |
2095 | | static const ber_sequence_t T_indexRange_sequence[] = { |
2096 | | { &hf_mms_lowIndex , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2097 | | { &hf_mms_numberOfElements, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2098 | | { NULL, 0, 0, 0, NULL } |
2099 | | }; |
2100 | | |
2101 | | static int |
2102 | 0 | dissect_mms_T_indexRange(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2103 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2104 | 0 | T_indexRange_sequence, hf_index, ett_mms_T_indexRange); |
2105 | |
|
2106 | 0 | return offset; |
2107 | 0 | } |
2108 | | |
2109 | | |
2110 | | static const value_string mms_T_accessSelection_vals[] = { |
2111 | | { 0, "component" }, |
2112 | | { 1, "index" }, |
2113 | | { 2, "indexRange" }, |
2114 | | { 3, "allElements" }, |
2115 | | { 0, NULL } |
2116 | | }; |
2117 | | |
2118 | | static const ber_choice_t T_accessSelection_choice[] = { |
2119 | | { 0, &hf_mms_component , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
2120 | | { 1, &hf_mms_index , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2121 | | { 2, &hf_mms_indexRange , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_indexRange }, |
2122 | | { 3, &hf_mms_allElements , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2123 | | { 0, NULL, 0, 0, 0, NULL } |
2124 | | }; |
2125 | | |
2126 | | static int |
2127 | 0 | dissect_mms_T_accessSelection(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2128 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2129 | 0 | T_accessSelection_choice, hf_index, ett_mms_T_accessSelection, |
2130 | 0 | NULL); |
2131 | |
|
2132 | 0 | return offset; |
2133 | 0 | } |
2134 | | |
2135 | | |
2136 | | static const ber_sequence_t T_selectAlternateAccess_sequence[] = { |
2137 | | { &hf_mms_accessSelection , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_accessSelection }, |
2138 | | { &hf_mms_alternateAccess , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlternateAccess }, |
2139 | | { NULL, 0, 0, 0, NULL } |
2140 | | }; |
2141 | | |
2142 | | static int |
2143 | 0 | dissect_mms_T_selectAlternateAccess(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2144 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2145 | 0 | T_selectAlternateAccess_sequence, hf_index, ett_mms_T_selectAlternateAccess); |
2146 | |
|
2147 | 0 | return offset; |
2148 | 0 | } |
2149 | | |
2150 | | |
2151 | | static const ber_sequence_t T_indexRange_01_sequence[] = { |
2152 | | { &hf_mms_lowIndex , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2153 | | { &hf_mms_nmberOfElements , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2154 | | { NULL, 0, 0, 0, NULL } |
2155 | | }; |
2156 | | |
2157 | | static int |
2158 | 0 | dissect_mms_T_indexRange_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2159 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2160 | 0 | T_indexRange_01_sequence, hf_index, ett_mms_T_indexRange_01); |
2161 | |
|
2162 | 0 | return offset; |
2163 | 0 | } |
2164 | | |
2165 | | |
2166 | | static const value_string mms_T_selectAccess_vals[] = { |
2167 | | { 1, "component" }, |
2168 | | { 2, "index" }, |
2169 | | { 3, "indexRange" }, |
2170 | | { 4, "allElements" }, |
2171 | | { 0, NULL } |
2172 | | }; |
2173 | | |
2174 | | static const ber_choice_t T_selectAccess_choice[] = { |
2175 | | { 1, &hf_mms_component , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
2176 | | { 2, &hf_mms_index , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
2177 | | { 3, &hf_mms_indexRange_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_indexRange_01 }, |
2178 | | { 4, &hf_mms_allElements , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2179 | | { 0, NULL, 0, 0, 0, NULL } |
2180 | | }; |
2181 | | |
2182 | | static int |
2183 | 0 | dissect_mms_T_selectAccess(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2184 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2185 | 0 | T_selectAccess_choice, hf_index, ett_mms_T_selectAccess, |
2186 | 0 | NULL); |
2187 | |
|
2188 | 0 | return offset; |
2189 | 0 | } |
2190 | | |
2191 | | |
2192 | | static const value_string mms_AlternateAccessSelection_vals[] = { |
2193 | | { 0, "selectAlternateAccess" }, |
2194 | | { 1, "selectAccess" }, |
2195 | | { 0, NULL } |
2196 | | }; |
2197 | | |
2198 | | static const ber_choice_t AlternateAccessSelection_choice[] = { |
2199 | | { 0, &hf_mms_selectAlternateAccess, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_selectAlternateAccess }, |
2200 | | { 1, &hf_mms_selectAccess , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_T_selectAccess }, |
2201 | | { 0, NULL, 0, 0, 0, NULL } |
2202 | | }; |
2203 | | |
2204 | | static int |
2205 | 0 | dissect_mms_AlternateAccessSelection(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2206 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2207 | 0 | AlternateAccessSelection_choice, hf_index, ett_mms_AlternateAccessSelection, |
2208 | 0 | NULL); |
2209 | |
|
2210 | 0 | return offset; |
2211 | 0 | } |
2212 | | |
2213 | | |
2214 | | static const ber_sequence_t T_named_sequence[] = { |
2215 | | { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
2216 | | { &hf_mms_accesst , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AlternateAccessSelection }, |
2217 | | { NULL, 0, 0, 0, NULL } |
2218 | | }; |
2219 | | |
2220 | | static int |
2221 | 0 | dissect_mms_T_named(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2222 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2223 | 0 | T_named_sequence, hf_index, ett_mms_T_named); |
2224 | |
|
2225 | 0 | return offset; |
2226 | 0 | } |
2227 | | |
2228 | | |
2229 | | static const value_string mms_AlternateAccess_item_vals[] = { |
2230 | | { 0, "unnamed" }, |
2231 | | { 1, "named" }, |
2232 | | { 0, NULL } |
2233 | | }; |
2234 | | |
2235 | | static const ber_choice_t AlternateAccess_item_choice[] = { |
2236 | | { 0, &hf_mms_unnamed , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_AlternateAccessSelection }, |
2237 | | { 1, &hf_mms_named , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_named }, |
2238 | | { 0, NULL, 0, 0, 0, NULL } |
2239 | | }; |
2240 | | |
2241 | | static int |
2242 | 0 | dissect_mms_AlternateAccess_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2243 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2244 | 0 | AlternateAccess_item_choice, hf_index, ett_mms_AlternateAccess_item, |
2245 | 0 | NULL); |
2246 | |
|
2247 | 0 | return offset; |
2248 | 0 | } |
2249 | | |
2250 | | |
2251 | | static const ber_sequence_t AlternateAccess_sequence_of[1] = { |
2252 | | { &hf_mms_AlternateAccess_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AlternateAccess_item }, |
2253 | | }; |
2254 | | |
2255 | | static int |
2256 | 0 | dissect_mms_AlternateAccess(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2257 | | // AlternateAccess -> AlternateAccess/_item -> AlternateAccessSelection -> AlternateAccessSelection/selectAlternateAccess -> AlternateAccess |
2258 | 0 | actx->pinfo->dissection_depth += 4; |
2259 | 0 | increment_dissection_depth(actx->pinfo); |
2260 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2261 | 0 | AlternateAccess_sequence_of, hf_index, ett_mms_AlternateAccess); |
2262 | |
|
2263 | 0 | actx->pinfo->dissection_depth -= 4; |
2264 | 0 | decrement_dissection_depth(actx->pinfo); |
2265 | 0 | return offset; |
2266 | 0 | } |
2267 | | |
2268 | | |
2269 | | static const ber_sequence_t ScatteredAccessDescription_item_sequence[] = { |
2270 | | { &hf_mms_componentName , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
2271 | | { &hf_mms_variableSpecification, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification }, |
2272 | | { &hf_mms_alternateAccess , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess }, |
2273 | | { NULL, 0, 0, 0, NULL } |
2274 | | }; |
2275 | | |
2276 | | static int |
2277 | 0 | dissect_mms_ScatteredAccessDescription_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2278 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2279 | 0 | ScatteredAccessDescription_item_sequence, hf_index, ett_mms_ScatteredAccessDescription_item); |
2280 | |
|
2281 | 0 | return offset; |
2282 | 0 | } |
2283 | | |
2284 | | |
2285 | | static const ber_sequence_t ScatteredAccessDescription_sequence_of[1] = { |
2286 | | { &hf_mms_ScatteredAccessDescription_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_ScatteredAccessDescription_item }, |
2287 | | }; |
2288 | | |
2289 | | static int |
2290 | 0 | dissect_mms_ScatteredAccessDescription(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2291 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2292 | 0 | ScatteredAccessDescription_sequence_of, hf_index, ett_mms_ScatteredAccessDescription); |
2293 | |
|
2294 | 0 | return offset; |
2295 | 0 | } |
2296 | | |
2297 | | |
2298 | | static const value_string mms_VariableSpecification_vals[] = { |
2299 | | { 0, "name" }, |
2300 | | { 1, "address" }, |
2301 | | { 2, "variableDescription" }, |
2302 | | { 3, "scatteredAccessDescription" }, |
2303 | | { 4, "invalidated" }, |
2304 | | { 0, NULL } |
2305 | | }; |
2306 | | |
2307 | | static const ber_choice_t VariableSpecification_choice[] = { |
2308 | | { 0, &hf_mms_name , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
2309 | | { 1, &hf_mms_address , BER_CLASS_CON, 1, 0, dissect_mms_Address }, |
2310 | | { 2, &hf_mms_variableDescription, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_variableDescription }, |
2311 | | { 3, &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription }, |
2312 | | { 4, &hf_mms_invalidated , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
2313 | | { 0, NULL, 0, 0, 0, NULL } |
2314 | | }; |
2315 | | |
2316 | | static int |
2317 | 0 | dissect_mms_VariableSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2318 | | // VariableSpecification -> ScatteredAccessDescription -> ScatteredAccessDescription/_item -> VariableSpecification |
2319 | 0 | actx->pinfo->dissection_depth += 3; |
2320 | 0 | increment_dissection_depth(actx->pinfo); |
2321 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2322 | 0 | VariableSpecification_choice, hf_index, ett_mms_VariableSpecification, |
2323 | 0 | NULL); |
2324 | |
|
2325 | 0 | actx->pinfo->dissection_depth -= 3; |
2326 | 0 | decrement_dissection_depth(actx->pinfo); |
2327 | 0 | return offset; |
2328 | 0 | } |
2329 | | |
2330 | | |
2331 | | static const ber_sequence_t T_listOfVariable_item_02_sequence[] = { |
2332 | | { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification }, |
2333 | | { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess }, |
2334 | | { NULL, 0, 0, 0, NULL } |
2335 | | }; |
2336 | | |
2337 | | static int |
2338 | 0 | dissect_mms_T_listOfVariable_item_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2339 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2340 | 0 | T_listOfVariable_item_02_sequence, hf_index, ett_mms_T_listOfVariable_item_02); |
2341 | |
|
2342 | 0 | return offset; |
2343 | 0 | } |
2344 | | |
2345 | | |
2346 | | static const ber_sequence_t T_listOfVariable_02_sequence_of[1] = { |
2347 | | { &hf_mms_listOfVariable_item_02, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item_02 }, |
2348 | | }; |
2349 | | |
2350 | | static int |
2351 | 0 | dissect_mms_T_listOfVariable_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2352 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2353 | 0 | T_listOfVariable_02_sequence_of, hf_index, ett_mms_T_listOfVariable_02); |
2354 | |
|
2355 | 0 | return offset; |
2356 | 0 | } |
2357 | | |
2358 | | |
2359 | | static const value_string mms_VariableAccessSpecification_vals[] = { |
2360 | | { 0, "listOfVariable" }, |
2361 | | { 1, "variableListName" }, |
2362 | | { 0, NULL } |
2363 | | }; |
2364 | | |
2365 | | static const ber_choice_t VariableAccessSpecification_choice[] = { |
2366 | | { 0, &hf_mms_listOfVariable_02, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable_02 }, |
2367 | | { 1, &hf_mms_variableListName, BER_CLASS_CON, 1, 0, dissect_mms_ObjectName }, |
2368 | | { 0, NULL, 0, 0, 0, NULL } |
2369 | | }; |
2370 | | |
2371 | | static int |
2372 | 1 | dissect_mms_VariableAccessSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2373 | 1 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2374 | 1 | VariableAccessSpecification_choice, hf_index, ett_mms_VariableAccessSpecification, |
2375 | 1 | NULL); |
2376 | | |
2377 | 1 | return offset; |
2378 | 1 | } |
2379 | | |
2380 | | |
2381 | | static const ber_sequence_t Read_Request_sequence[] = { |
2382 | | { &hf_mms_specificationWithResult, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
2383 | | { &hf_mms_variableAccessSpecificatn, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification }, |
2384 | | { NULL, 0, 0, 0, NULL } |
2385 | | }; |
2386 | | |
2387 | | static int |
2388 | 13 | dissect_mms_Read_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2389 | 13 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2390 | 13 | Read_Request_sequence, hf_index, ett_mms_Read_Request); |
2391 | | |
2392 | 13 | return offset; |
2393 | 13 | } |
2394 | | |
2395 | | |
2396 | | static const ber_sequence_t SEQUENCE_OF_Data_sequence_of[1] = { |
2397 | | { &hf_mms_array_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Data }, |
2398 | | }; |
2399 | | |
2400 | | static int |
2401 | 0 | dissect_mms_SEQUENCE_OF_Data(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2402 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2403 | 0 | SEQUENCE_OF_Data_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Data); |
2404 | |
|
2405 | 0 | return offset; |
2406 | 0 | } |
2407 | | |
2408 | | |
2409 | | static const ber_sequence_t T_structure_01_sequence_of[1] = { |
2410 | | { &hf_mms_structure_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Data }, |
2411 | | }; |
2412 | | |
2413 | | static int |
2414 | 0 | dissect_mms_T_structure_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2415 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2416 | 0 | if((mms_priv)&& (mms_priv->mms_trans_p)){ |
2417 | 0 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2418 | 0 | if(mms_priv->data_cnt == 3){ |
2419 | | /* IEC 61850-8-1 origin, if we hgave a struct here Tm was not there */ |
2420 | 0 | hf_index = hf_mms_iec61850_origin; |
2421 | 0 | mms_priv->data_cnt++; |
2422 | 0 | }else if(mms_priv->data_cnt == 4){ |
2423 | | /* IEC 61850-8-1 origin, if we hgave a struct here Tm was not there */ |
2424 | 0 | hf_index = hf_mms_iec61850_origin; |
2425 | 0 | } |
2426 | 0 | } |
2427 | 0 | } |
2428 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2429 | 0 | T_structure_01_sequence_of, hf_index, ett_mms_T_structure_01); |
2430 | | |
2431 | | |
2432 | |
|
2433 | 0 | return offset; |
2434 | 0 | } |
2435 | | |
2436 | | |
2437 | | |
2438 | | static int |
2439 | 0 | dissect_mms_T_boolean(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2440 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2441 | 0 | if((mms_priv) && (mms_priv->mms_trans_p)){ |
2442 | 0 | if(mms_priv->vmd_specific == IEC61850_8_1_RPT ){ |
2443 | 0 | if(mms_priv->listOfAccessResult_cnt == 6){ |
2444 | | /* IEC 61850-8-1 BufOvfl */ |
2445 | 0 | hf_index = hf_mms_iec61850_bufovfl; |
2446 | 0 | } |
2447 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2448 | 0 | if(mms_priv->data_cnt == 2){ |
2449 | | /* IEC 61850-8-1 ctlVal */ |
2450 | 0 | hf_index = hf_mms_iec61850_ctlval; |
2451 | 0 | }else if(mms_priv->data_cnt == 9){ |
2452 | | /* IEC 61850-8-1 Test */ |
2453 | 0 | hf_index = hf_mms_iec61850_test; |
2454 | 0 | } |
2455 | 0 | } |
2456 | 0 | } |
2457 | 0 | offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); |
2458 | | |
2459 | | |
2460 | |
|
2461 | 0 | return offset; |
2462 | 0 | } |
2463 | | |
2464 | | |
2465 | | |
2466 | | static int |
2467 | 0 | dissect_mms_T_data_bit_string(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2468 | |
|
2469 | 0 | static int* const quality_field_bits_oct1[] = { |
2470 | 0 | &hf_mms_iec61850_QualityC0, |
2471 | 0 | &hf_mms_iec61850_Quality20, |
2472 | 0 | &hf_mms_iec61850_Quality10, |
2473 | 0 | &hf_mms_iec61850_Quality8, |
2474 | 0 | &hf_mms_iec61850_Quality4, |
2475 | 0 | &hf_mms_iec61850_Quality2, |
2476 | 0 | &hf_mms_iec61850_Quality1, |
2477 | 0 | NULL |
2478 | 0 | }; |
2479 | |
|
2480 | 0 | static int* const quality_field_bits_oct2[] = { |
2481 | 0 | &hf_mms_iec61850_Quality0080, |
2482 | 0 | &hf_mms_iec61850_Quality0040, |
2483 | 0 | &hf_mms_iec61850_Quality0020, |
2484 | 0 | &hf_mms_iec61850_Quality0010, |
2485 | 0 | &hf_mms_iec61850_Quality0008, |
2486 | 0 | NULL |
2487 | 0 | }; |
2488 | |
|
2489 | 0 | static int * const mms_iec61850_chec_bits[] = { |
2490 | 0 | &hf_mms_iec61850_check_b15, |
2491 | 0 | &hf_mms_iec61850_check_b14, |
2492 | 0 | &hf_mms_iec61850_check_b13_b0, |
2493 | 0 | NULL |
2494 | 0 | }; |
2495 | 0 | tvbuff_t *parameter_tvb = NULL; |
2496 | 0 | proto_tree *sub_tree; |
2497 | |
|
2498 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2499 | 0 | if((mms_priv)&&(mms_priv->mms_trans_p)){ |
2500 | 0 | if(mms_priv->vmd_specific == IEC61850_8_1_RPT ){ |
2501 | 0 | if(mms_priv->listOfAccessResult_cnt == 2){ |
2502 | | /* IEC 61850-8-1 Reported OptFlds */ |
2503 | 0 | return dissect_mms_ReportedOptFlds(implicit_tag, tvb, offset, actx, tree, hf_mms_iec61850_reported_optflds); |
2504 | 0 | }else{ |
2505 | 0 | if(mms_priv->listOfAccessResult_cnt == 11){ |
2506 | 0 | hf_index = hf_mms_iec61850_inclusion_bitstring; |
2507 | 0 | } |
2508 | 0 | } |
2509 | 0 | }else if (mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_Q){ |
2510 | 0 | hf_index = hf_mms_iec61850_quality_bitstring; |
2511 | 0 | }else if (mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_CHECK){ |
2512 | 0 | hf_index = hf_mms_iec61850_check_bitstring; |
2513 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2514 | 0 | if(mms_priv->data_cnt == 10){ |
2515 | 0 | hf_index = hf_mms_iec61850_check_bitstring; |
2516 | 0 | } |
2517 | 0 | } |
2518 | 0 | } |
2519 | | |
2520 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
2521 | 0 | NULL, 0, hf_index, -1, |
2522 | 0 | ¶meter_tvb); |
2523 | | |
2524 | |
|
2525 | 0 | if((mms_priv)&&(parameter_tvb) && (mms_priv->mms_trans_p)){ |
2526 | 0 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_Q){ |
2527 | 0 | sub_tree = proto_item_add_subtree(actx->created_item, ett_mms_iec61850_quality_bitstring); |
2528 | 0 | proto_tree_add_bitmask_list(sub_tree, parameter_tvb, 0, 1, quality_field_bits_oct1, ENC_NA); |
2529 | 0 | proto_tree_add_bitmask_list(sub_tree, parameter_tvb, 1, 1, quality_field_bits_oct2, ENC_NA); |
2530 | 0 | }else if (mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_CHECK){ |
2531 | 0 | sub_tree = proto_item_add_subtree(actx->created_item, ett_mms_iec61850_check_bitstring); |
2532 | 0 | proto_tree_add_bitmask_list(sub_tree, parameter_tvb, 0, 1, mms_iec61850_chec_bits, ENC_NA); |
2533 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2534 | 0 | if(mms_priv->data_cnt == 10){ |
2535 | 0 | sub_tree = proto_item_add_subtree(actx->created_item, ett_mms_iec61850_check_bitstring); |
2536 | 0 | proto_tree_add_bitmask_list(sub_tree, parameter_tvb, 0, 1, mms_iec61850_chec_bits, ENC_NA); |
2537 | 0 | } |
2538 | 0 | } |
2539 | 0 | } |
2540 | | |
2541 | |
|
2542 | 0 | return offset; |
2543 | 0 | } |
2544 | | |
2545 | | |
2546 | | |
2547 | | static int |
2548 | 0 | dissect_mms_T_integer(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2549 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2550 | 0 | if((mms_priv) && (mms_priv->mms_trans_p)){ |
2551 | 0 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_CTLMODEL){ |
2552 | 0 | hf_index = hf_mms_iec61850_ctlModel; |
2553 | 0 | }else if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_OR_CAT){ |
2554 | 0 | hf_index = hf_mms_iec61850_orcategory; |
2555 | 0 | }else if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_BEH$STVAL){ |
2556 | 0 | hf_index = hf_mms_iec61850_beh$stval; |
2557 | 0 | }else if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_MOD$STVAL){ |
2558 | 0 | hf_index = hf_mms_iec61850_beh$stval; |
2559 | 0 | }else if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_HEALTH$STVAL){ |
2560 | 0 | hf_index = hf_mms_iec61850_health$stval; |
2561 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2562 | 0 | if(mms_priv->data_cnt == 5){ |
2563 | | /* IEC 61850-8-1 Origin Catagory */ |
2564 | 0 | hf_index = hf_mms_iec61850_origin_orcat; |
2565 | 0 | } |
2566 | 0 | } |
2567 | 0 | } |
2568 | |
|
2569 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
2570 | 0 | NULL); |
2571 | | |
2572 | | |
2573 | |
|
2574 | 0 | return offset; |
2575 | 0 | } |
2576 | | |
2577 | | |
2578 | | |
2579 | | static int |
2580 | 0 | dissect_mms_T_unsigned(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2581 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2582 | 0 | if((mms_priv) && (mms_priv->mms_trans_p)){ |
2583 | 0 | if(mms_priv->vmd_specific == IEC61850_8_1_RPT ){ |
2584 | 0 | if(mms_priv->listOfAccessResult_cnt == 3){ |
2585 | | /* IEC 61850-8-1 SeqNum */ |
2586 | 0 | hf_index = hf_mms_iec61850_seqnum; |
2587 | 0 | }else if(mms_priv->listOfAccessResult_cnt == 8){ |
2588 | | /* IEC 61850-8-1 ConfRev */ |
2589 | 0 | hf_index = hf_mms_iec61850_confrev; |
2590 | 0 | } |
2591 | 0 | } |
2592 | 0 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2593 | 0 | if(mms_priv->data_cnt == 7){ |
2594 | 0 | hf_index = hf_mms_iec61850_ctlNum; |
2595 | 0 | } |
2596 | 0 | } |
2597 | 0 | } |
2598 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
2599 | 0 | NULL); |
2600 | | |
2601 | | |
2602 | |
|
2603 | 0 | return offset; |
2604 | 0 | } |
2605 | | |
2606 | | |
2607 | | |
2608 | | static int |
2609 | 0 | dissect_mms_FloatingPoint(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2610 | 0 | offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, |
2611 | 0 | NULL); |
2612 | |
|
2613 | 0 | private_data_add_moreCinfo_float(actx, tvb); |
2614 | | |
2615 | |
|
2616 | 0 | return offset; |
2617 | 0 | } |
2618 | | |
2619 | | |
2620 | | |
2621 | | static int |
2622 | 0 | dissect_mms_T_data_octet_string(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2623 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2624 | 0 | if((mms_priv)&& (mms_priv->mms_trans_p)){ |
2625 | 0 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2626 | 0 | if(mms_priv->data_cnt == 6){ |
2627 | 0 | hf_index = hf_mms_iec61850_origin_orident; |
2628 | 0 | } |
2629 | 0 | } |
2630 | 0 | } |
2631 | 0 | offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, |
2632 | 0 | NULL); |
2633 | | |
2634 | | |
2635 | |
|
2636 | 0 | return offset; |
2637 | 0 | } |
2638 | | |
2639 | | |
2640 | | |
2641 | | static int |
2642 | 0 | dissect_mms_T_data_visible_string(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2643 | |
|
2644 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2645 | 0 | if(mms_priv){ |
2646 | 0 | if(mms_priv->vmd_specific == IEC61850_8_1_RPT ){ |
2647 | 0 | if(mms_priv->listOfAccessResult_cnt == 1){ |
2648 | | /* IEC 61850-8-1 RptID */ |
2649 | 0 | hf_index = hf_mms_iec61850_rptid; |
2650 | 0 | }else if(mms_priv->listOfAccessResult_cnt == 5){ |
2651 | | /* IEC 61850-8-1 DatSet */ |
2652 | 0 | hf_index = hf_mms_iec61850_datset; |
2653 | 0 | } |
2654 | 0 | } |
2655 | 0 | } |
2656 | 0 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString, |
2657 | 0 | actx, tree, tvb, offset, hf_index, |
2658 | 0 | NULL); |
2659 | | |
2660 | | |
2661 | |
|
2662 | 0 | return offset; |
2663 | 0 | } |
2664 | | |
2665 | | |
2666 | | |
2667 | | static int |
2668 | 0 | dissect_mms_TimeOfDay(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2669 | |
|
2670 | 0 | uint32_t len; |
2671 | 0 | uint32_t milliseconds; |
2672 | 0 | uint16_t days; |
2673 | 0 | char * ptime; |
2674 | 0 | nstime_t ts; |
2675 | |
|
2676 | 0 | len = tvb_reported_length_remaining(tvb, offset); |
2677 | |
|
2678 | 0 | if(len == 4) |
2679 | 0 | { |
2680 | 0 | milliseconds = tvb_get_ntohl(tvb, offset); |
2681 | 0 | ptime = signed_time_msecs_to_str(actx->pinfo->pool, milliseconds); |
2682 | |
|
2683 | 0 | if(hf_index > 0) |
2684 | 0 | { |
2685 | 0 | proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime); |
2686 | 0 | } |
2687 | 0 | return offset; |
2688 | 0 | } |
2689 | | |
2690 | 0 | if(len == 6) |
2691 | 0 | { |
2692 | 0 | milliseconds = tvb_get_ntohl(tvb, offset); |
2693 | 0 | days = tvb_get_ntohs(tvb, offset+4); |
2694 | | |
2695 | | /* 5113 days between 01-01-1970 and 01-01-1984 */ |
2696 | | /* 86400 seconds in one day */ |
2697 | |
|
2698 | 0 | ts.secs = (days + 5113) * 86400 + milliseconds / 1000; |
2699 | 0 | ts.nsecs = (milliseconds % 1000) * 1000000U; |
2700 | |
|
2701 | 0 | ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, true); |
2702 | 0 | if(hf_index > 0) |
2703 | 0 | { |
2704 | 0 | proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime); |
2705 | 0 | } |
2706 | |
|
2707 | 0 | return offset; |
2708 | 0 | } |
2709 | | |
2710 | 0 | proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_timeofday_encoding, |
2711 | 0 | tvb, offset, len, "BER Error: malformed TimeOfDay encoding, length must be 4 or 6 bytes"); |
2712 | 0 | if(hf_index > 0) |
2713 | 0 | { |
2714 | 0 | proto_tree_add_string(tree, hf_index, tvb, offset, len, "????"); |
2715 | 0 | } |
2716 | | |
2717 | |
|
2718 | 0 | return offset; |
2719 | 0 | } |
2720 | | |
2721 | | |
2722 | | |
2723 | | static int |
2724 | 0 | dissect_mms_T_data_binary_time(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2725 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2726 | 0 | if(mms_priv){ |
2727 | 0 | if(mms_priv->vmd_specific == IEC61850_8_1_RPT ){ |
2728 | 0 | if(mms_priv->listOfAccessResult_cnt == 4){ |
2729 | | /* IEC 61850-8-1 TimeOfEntry */ |
2730 | 0 | hf_index = hf_mms_iec61850_timeofentry; |
2731 | 0 | } |
2732 | 0 | } |
2733 | 0 | } |
2734 | 0 | offset = dissect_mms_TimeOfDay(implicit_tag, tvb, offset, actx, tree, hf_index); |
2735 | | |
2736 | | |
2737 | |
|
2738 | 0 | return offset; |
2739 | 0 | } |
2740 | | |
2741 | | |
2742 | | |
2743 | | static int |
2744 | 0 | dissect_mms_INTEGER(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2745 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
2746 | 0 | NULL); |
2747 | |
|
2748 | 0 | return offset; |
2749 | 0 | } |
2750 | | |
2751 | | |
2752 | | |
2753 | | static int |
2754 | 0 | dissect_mms_BIT_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2755 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
2756 | 0 | NULL, 0, hf_index, -1, |
2757 | 0 | NULL); |
2758 | |
|
2759 | 0 | return offset; |
2760 | 0 | } |
2761 | | |
2762 | | |
2763 | | |
2764 | | static int |
2765 | 0 | dissect_mms_OBJECT_IDENTIFIER(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2766 | 0 | offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); |
2767 | |
|
2768 | 0 | return offset; |
2769 | 0 | } |
2770 | | |
2771 | | |
2772 | | |
2773 | | static int |
2774 | 0 | dissect_mms_MMSString(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2775 | 0 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String, |
2776 | 0 | actx, tree, tvb, offset, hf_index, |
2777 | 0 | NULL); |
2778 | |
|
2779 | 0 | return offset; |
2780 | 0 | } |
2781 | | |
2782 | | |
2783 | | |
2784 | | static int |
2785 | 0 | dissect_mms_UtcTime(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2786 | |
|
2787 | 0 | uint32_t len; |
2788 | 0 | uint32_t seconds; |
2789 | 0 | uint32_t fraction; |
2790 | 0 | uint32_t nanoseconds; |
2791 | 0 | nstime_t ts; |
2792 | 0 | char * ptime; |
2793 | |
|
2794 | 0 | static int * const TimeQuality_bits[] = { |
2795 | 0 | &hf_mms_iec61850_timequality80, |
2796 | 0 | &hf_mms_iec61850_timequality40, |
2797 | 0 | &hf_mms_iec61850_timequality20, |
2798 | 0 | &hf_mms_iec61850_timequality1F, |
2799 | 0 | NULL |
2800 | 0 | }; |
2801 | 0 | len = tvb_reported_length_remaining(tvb, offset); |
2802 | |
|
2803 | 0 | if(len != 8) |
2804 | 0 | { |
2805 | | /* The octet format shall be (using ASN.1 bstring notation): |
2806 | | * ‘ssssssssssssssssssssssssssssssssffffffffffffffffffffffffqqqqqqqq’B |
2807 | | * q stands for TimeQuality, i.e. reserved to represent TimeQuality based upon the referencing standard. |
2808 | | */ |
2809 | 0 | proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_utctime_encoding, |
2810 | 0 | tvb, offset, len, "BER Error: malformed IEC61850 UTCTime encoding, length must be 8 bytes"); |
2811 | 0 | if(hf_index > 0) |
2812 | 0 | { |
2813 | 0 | proto_tree_add_string(tree, hf_index, tvb, offset, len, "????"); |
2814 | 0 | } |
2815 | 0 | return offset; |
2816 | 0 | } |
2817 | | |
2818 | 0 | seconds = tvb_get_ntohl(tvb, offset); |
2819 | 0 | fraction = tvb_get_ntoh24(tvb, offset+4) * 0x100; /* Only 3 bytes are recommended */ |
2820 | 0 | nanoseconds = (uint32_t )( ((uint64_t)fraction * UINT64_C(1000000000)) / UINT64_C(0x100000000) ) ; |
2821 | |
|
2822 | 0 | ts.secs = seconds; |
2823 | 0 | ts.nsecs = nanoseconds; |
2824 | |
|
2825 | 0 | ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, true); |
2826 | |
|
2827 | 0 | if(hf_index > 0) |
2828 | 0 | { |
2829 | 0 | mms_actx_private_data_t* mms_priv = (mms_actx_private_data_t*)actx->private_data; |
2830 | 0 | if((mms_priv)&& (mms_priv->mms_trans_p)){ |
2831 | 0 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
2832 | 0 | if(mms_priv->data_cnt == 8){ |
2833 | 0 | hf_index = hf_mms_iec61850_T; |
2834 | 0 | } |
2835 | 0 | } |
2836 | 0 | } |
2837 | 0 | proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime); |
2838 | 0 | proto_tree_add_bitmask_list(tree, tvb, offset+7, 1, TimeQuality_bits, ENC_BIG_ENDIAN); |
2839 | 0 | } |
2840 | | |
2841 | | |
2842 | | |
2843 | |
|
2844 | 0 | return offset; |
2845 | 0 | } |
2846 | | |
2847 | | |
2848 | | static const value_string mms_Data_vals[] = { |
2849 | | { 1, "array" }, |
2850 | | { 2, "structure" }, |
2851 | | { 3, "boolean" }, |
2852 | | { 4, "bit-string" }, |
2853 | | { 5, "integer" }, |
2854 | | { 6, "unsigned" }, |
2855 | | { 7, "floating-point" }, |
2856 | | { 9, "octet-string" }, |
2857 | | { 10, "visible-string" }, |
2858 | | { 12, "binary-time" }, |
2859 | | { 13, "bcd" }, |
2860 | | { 14, "booleanArray" }, |
2861 | | { 15, "objId" }, |
2862 | | { 16, "mMSString" }, |
2863 | | { 17, "utc-time" }, |
2864 | | { 0, NULL } |
2865 | | }; |
2866 | | |
2867 | | static const ber_choice_t Data_choice[] = { |
2868 | | { 1, &hf_mms_array_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Data }, |
2869 | | { 2, &hf_mms_structure_01 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_structure_01 }, |
2870 | | { 3, &hf_mms_boolean_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_boolean }, |
2871 | | { 4, &hf_mms_data_bit_string , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_T_data_bit_string }, |
2872 | | { 5, &hf_mms_integer_01 , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_integer }, |
2873 | | { 6, &hf_mms_unsigned_01 , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_T_unsigned }, |
2874 | | { 7, &hf_mms_floating_point , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_FloatingPoint }, |
2875 | | { 9, &hf_mms_data_octet_string, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_T_data_octet_string }, |
2876 | | { 10, &hf_mms_data_visible_string, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_T_data_visible_string }, |
2877 | | { 12, &hf_mms_data_binary_time, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_T_data_binary_time }, |
2878 | | { 13, &hf_mms_bcd_01 , BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER }, |
2879 | | { 14, &hf_mms_booleanArray , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_BIT_STRING }, |
2880 | | { 15, &hf_mms_objId_01 , BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_OBJECT_IDENTIFIER }, |
2881 | | { 16, &hf_mms_mMSString , BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_MMSString }, |
2882 | | { 17, &hf_mms_utc_time , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_UtcTime }, |
2883 | | { 0, NULL, 0, 0, 0, NULL } |
2884 | | }; |
2885 | | |
2886 | | static int |
2887 | 0 | dissect_mms_Data(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2888 | | // Data -> Data/array -> Data |
2889 | 0 | actx->pinfo->dissection_depth += 2; |
2890 | 0 | increment_dissection_depth(actx->pinfo); |
2891 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2892 | 0 | if(mms_priv){ |
2893 | 0 | mms_priv->data_cnt += 1; |
2894 | 0 | } |
2895 | |
|
2896 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2897 | 0 | Data_choice, hf_index, ett_mms_Data, |
2898 | 0 | NULL); |
2899 | | |
2900 | | |
2901 | |
|
2902 | 0 | actx->pinfo->dissection_depth -= 2; |
2903 | 0 | decrement_dissection_depth(actx->pinfo); |
2904 | 0 | return offset; |
2905 | 0 | } |
2906 | | |
2907 | | |
2908 | | static const ber_sequence_t T_listOfData_sequence_of[1] = { |
2909 | | { &hf_mms_listOfData_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Data }, |
2910 | | }; |
2911 | | |
2912 | | static int |
2913 | 0 | dissect_mms_T_listOfData(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2914 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
2915 | 0 | if(mms_priv){ |
2916 | 0 | mms_priv->data_cnt = 0; |
2917 | 0 | } |
2918 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
2919 | 0 | T_listOfData_sequence_of, hf_index, ett_mms_T_listOfData); |
2920 | |
|
2921 | 0 | if(mms_priv){ |
2922 | 0 | mms_priv->data_cnt = 0; |
2923 | 0 | } |
2924 | | |
2925 | |
|
2926 | 0 | return offset; |
2927 | 0 | } |
2928 | | |
2929 | | |
2930 | | static const ber_sequence_t Write_Request_sequence[] = { |
2931 | | { &hf_mms_variableAccessSpecificatn, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification }, |
2932 | | { &hf_mms_listOfData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfData }, |
2933 | | { NULL, 0, 0, 0, NULL } |
2934 | | }; |
2935 | | |
2936 | | static int |
2937 | 2 | dissect_mms_Write_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2938 | 2 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2939 | 2 | Write_Request_sequence, hf_index, ett_mms_Write_Request); |
2940 | | |
2941 | 2 | return offset; |
2942 | 2 | } |
2943 | | |
2944 | | |
2945 | | static const value_string mms_GetVariableAccessAttributes_Request_vals[] = { |
2946 | | { 0, "name" }, |
2947 | | { 1, "address" }, |
2948 | | { 0, NULL } |
2949 | | }; |
2950 | | |
2951 | | static const ber_choice_t GetVariableAccessAttributes_Request_choice[] = { |
2952 | | { 0, &hf_mms_name , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
2953 | | { 1, &hf_mms_address , BER_CLASS_CON, 1, 0, dissect_mms_Address }, |
2954 | | { 0, NULL, 0, 0, 0, NULL } |
2955 | | }; |
2956 | | |
2957 | | static int |
2958 | 2 | dissect_mms_GetVariableAccessAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2959 | 2 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
2960 | 2 | GetVariableAccessAttributes_Request_choice, hf_index, ett_mms_GetVariableAccessAttributes_Request, |
2961 | 2 | NULL); |
2962 | | |
2963 | 2 | return offset; |
2964 | 2 | } |
2965 | | |
2966 | | |
2967 | | static const ber_sequence_t DefineNamedVariable_Request_sequence[] = { |
2968 | | { &hf_mms_variableName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
2969 | | { &hf_mms_address , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_Address }, |
2970 | | { &hf_mms_typeSpecification, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
2971 | | { NULL, 0, 0, 0, NULL } |
2972 | | }; |
2973 | | |
2974 | | static int |
2975 | 0 | dissect_mms_DefineNamedVariable_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2976 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2977 | 0 | DefineNamedVariable_Request_sequence, hf_index, ett_mms_DefineNamedVariable_Request); |
2978 | |
|
2979 | 0 | return offset; |
2980 | 0 | } |
2981 | | |
2982 | | |
2983 | | static const ber_sequence_t DefineScatteredAccess_Request_sequence[] = { |
2984 | | { &hf_mms_scatteredAccessName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
2985 | | { &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription }, |
2986 | | { NULL, 0, 0, 0, NULL } |
2987 | | }; |
2988 | | |
2989 | | static int |
2990 | 0 | dissect_mms_DefineScatteredAccess_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
2991 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
2992 | 0 | DefineScatteredAccess_Request_sequence, hf_index, ett_mms_DefineScatteredAccess_Request); |
2993 | |
|
2994 | 0 | return offset; |
2995 | 0 | } |
2996 | | |
2997 | | |
2998 | | |
2999 | | static int |
3000 | 21 | dissect_mms_GetScatteredAccessAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3001 | 21 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3002 | | |
3003 | 21 | return offset; |
3004 | 21 | } |
3005 | | |
3006 | | |
3007 | | static const value_string mms_T_scopeOfDelete_vals[] = { |
3008 | | { 0, "specific" }, |
3009 | | { 1, "aa-specific" }, |
3010 | | { 2, "domain" }, |
3011 | | { 3, "vmd" }, |
3012 | | { 0, NULL } |
3013 | | }; |
3014 | | |
3015 | | |
3016 | | static int |
3017 | 0 | dissect_mms_T_scopeOfDelete(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3018 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3019 | 0 | NULL); |
3020 | |
|
3021 | 0 | return offset; |
3022 | 0 | } |
3023 | | |
3024 | | |
3025 | | static const ber_sequence_t SEQUENCE_OF_ObjectName_sequence_of[1] = { |
3026 | | { &hf_mms_listOfName_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3027 | | }; |
3028 | | |
3029 | | static int |
3030 | 0 | dissect_mms_SEQUENCE_OF_ObjectName(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3031 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
3032 | 0 | SEQUENCE_OF_ObjectName_sequence_of, hf_index, ett_mms_SEQUENCE_OF_ObjectName); |
3033 | |
|
3034 | 0 | return offset; |
3035 | 0 | } |
3036 | | |
3037 | | |
3038 | | static const ber_sequence_t DeleteVariableAccess_Request_sequence[] = { |
3039 | | { &hf_mms_scopeOfDelete , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete }, |
3040 | | { &hf_mms_listOfName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
3041 | | { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3042 | | { NULL, 0, 0, 0, NULL } |
3043 | | }; |
3044 | | |
3045 | | static int |
3046 | 0 | dissect_mms_DeleteVariableAccess_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3047 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3048 | 0 | DeleteVariableAccess_Request_sequence, hf_index, ett_mms_DeleteVariableAccess_Request); |
3049 | |
|
3050 | 0 | return offset; |
3051 | 0 | } |
3052 | | |
3053 | | |
3054 | | static const ber_sequence_t T_listOfVariable_item_sequence[] = { |
3055 | | { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification }, |
3056 | | { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess }, |
3057 | | { NULL, 0, 0, 0, NULL } |
3058 | | }; |
3059 | | |
3060 | | static int |
3061 | 0 | dissect_mms_T_listOfVariable_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3062 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3063 | 0 | T_listOfVariable_item_sequence, hf_index, ett_mms_T_listOfVariable_item); |
3064 | |
|
3065 | 0 | return offset; |
3066 | 0 | } |
3067 | | |
3068 | | |
3069 | | static const ber_sequence_t T_listOfVariable_sequence_of[1] = { |
3070 | | { &hf_mms_listOfVariable_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item }, |
3071 | | }; |
3072 | | |
3073 | | static int |
3074 | 0 | dissect_mms_T_listOfVariable(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3075 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
3076 | 0 | T_listOfVariable_sequence_of, hf_index, ett_mms_T_listOfVariable); |
3077 | |
|
3078 | 0 | return offset; |
3079 | 0 | } |
3080 | | |
3081 | | |
3082 | | static const ber_sequence_t DefineNamedVariableList_Request_sequence[] = { |
3083 | | { &hf_mms_variableListName, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3084 | | { &hf_mms_listOfVariable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable }, |
3085 | | { NULL, 0, 0, 0, NULL } |
3086 | | }; |
3087 | | |
3088 | | static int |
3089 | 0 | dissect_mms_DefineNamedVariableList_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3090 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3091 | 0 | DefineNamedVariableList_Request_sequence, hf_index, ett_mms_DefineNamedVariableList_Request); |
3092 | |
|
3093 | 0 | return offset; |
3094 | 0 | } |
3095 | | |
3096 | | |
3097 | | |
3098 | | static int |
3099 | 0 | dissect_mms_GetNamedVariableListAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3100 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3101 | |
|
3102 | 0 | return offset; |
3103 | 0 | } |
3104 | | |
3105 | | |
3106 | | static const value_string mms_T_scopeOfDelete_01_vals[] = { |
3107 | | { 0, "specific" }, |
3108 | | { 1, "aa-specific" }, |
3109 | | { 2, "domain" }, |
3110 | | { 3, "vmd" }, |
3111 | | { 0, NULL } |
3112 | | }; |
3113 | | |
3114 | | |
3115 | | static int |
3116 | 0 | dissect_mms_T_scopeOfDelete_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3117 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3118 | 0 | NULL); |
3119 | |
|
3120 | 0 | return offset; |
3121 | 0 | } |
3122 | | |
3123 | | |
3124 | | static const ber_sequence_t DeleteNamedVariableList_Request_sequence[] = { |
3125 | | { &hf_mms_scopeOfDelete_01, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete_01 }, |
3126 | | { &hf_mms_listOfVariableListName, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
3127 | | { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3128 | | { NULL, 0, 0, 0, NULL } |
3129 | | }; |
3130 | | |
3131 | | static int |
3132 | 0 | dissect_mms_DeleteNamedVariableList_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3133 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3134 | 0 | DeleteNamedVariableList_Request_sequence, hf_index, ett_mms_DeleteNamedVariableList_Request); |
3135 | |
|
3136 | 0 | return offset; |
3137 | 0 | } |
3138 | | |
3139 | | |
3140 | | static const ber_sequence_t DefineNamedType_Request_sequence[] = { |
3141 | | { &hf_mms_typeName , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3142 | | { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
3143 | | { NULL, 0, 0, 0, NULL } |
3144 | | }; |
3145 | | |
3146 | | static int |
3147 | 0 | dissect_mms_DefineNamedType_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3148 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3149 | 0 | DefineNamedType_Request_sequence, hf_index, ett_mms_DefineNamedType_Request); |
3150 | |
|
3151 | 0 | return offset; |
3152 | 0 | } |
3153 | | |
3154 | | |
3155 | | |
3156 | | static int |
3157 | 0 | dissect_mms_GetNamedTypeAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3158 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3159 | |
|
3160 | 0 | return offset; |
3161 | 0 | } |
3162 | | |
3163 | | |
3164 | | static const value_string mms_T_scopeOfDelete_02_vals[] = { |
3165 | | { 0, "specific" }, |
3166 | | { 1, "aa-specific" }, |
3167 | | { 2, "domain" }, |
3168 | | { 3, "vmd" }, |
3169 | | { 0, NULL } |
3170 | | }; |
3171 | | |
3172 | | |
3173 | | static int |
3174 | 0 | dissect_mms_T_scopeOfDelete_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3175 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3176 | 0 | NULL); |
3177 | |
|
3178 | 0 | return offset; |
3179 | 0 | } |
3180 | | |
3181 | | |
3182 | | static const ber_sequence_t DeleteNamedType_Request_sequence[] = { |
3183 | | { &hf_mms_scopeOfDelete_02, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfDelete_02 }, |
3184 | | { &hf_mms_listOfTypeName , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
3185 | | { &hf_mms_domainName , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3186 | | { NULL, 0, 0, 0, NULL } |
3187 | | }; |
3188 | | |
3189 | | static int |
3190 | 0 | dissect_mms_DeleteNamedType_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3191 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3192 | 0 | DeleteNamedType_Request_sequence, hf_index, ett_mms_DeleteNamedType_Request); |
3193 | |
|
3194 | 0 | return offset; |
3195 | 0 | } |
3196 | | |
3197 | | |
3198 | | static const ber_sequence_t T_listOfPromptData_sequence_of[1] = { |
3199 | | { &hf_mms_listOfPromptData_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
3200 | | }; |
3201 | | |
3202 | | static int |
3203 | 0 | dissect_mms_T_listOfPromptData(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3204 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
3205 | 0 | T_listOfPromptData_sequence_of, hf_index, ett_mms_T_listOfPromptData); |
3206 | |
|
3207 | 0 | return offset; |
3208 | 0 | } |
3209 | | |
3210 | | |
3211 | | static const ber_sequence_t Input_Request_sequence[] = { |
3212 | | { &hf_mms_operatorStationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3213 | | { &hf_mms_echo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
3214 | | { &hf_mms_listOfPromptData, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfPromptData }, |
3215 | | { &hf_mms_inputTimeOut , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
3216 | | { NULL, 0, 0, 0, NULL } |
3217 | | }; |
3218 | | |
3219 | | static int |
3220 | 0 | dissect_mms_Input_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3221 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3222 | 0 | Input_Request_sequence, hf_index, ett_mms_Input_Request); |
3223 | |
|
3224 | 0 | return offset; |
3225 | 0 | } |
3226 | | |
3227 | | |
3228 | | static const ber_sequence_t T_listOfOutputData_sequence_of[1] = { |
3229 | | { &hf_mms_listOfOutputData_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
3230 | | }; |
3231 | | |
3232 | | static int |
3233 | 0 | dissect_mms_T_listOfOutputData(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3234 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
3235 | 0 | T_listOfOutputData_sequence_of, hf_index, ett_mms_T_listOfOutputData); |
3236 | |
|
3237 | 0 | return offset; |
3238 | 0 | } |
3239 | | |
3240 | | |
3241 | | static const ber_sequence_t Output_Request_sequence[] = { |
3242 | | { &hf_mms_operatorStationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3243 | | { &hf_mms_listOfOutputData, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfOutputData }, |
3244 | | { NULL, 0, 0, 0, NULL } |
3245 | | }; |
3246 | | |
3247 | | static int |
3248 | 0 | dissect_mms_Output_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3249 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3250 | 0 | Output_Request_sequence, hf_index, ett_mms_Output_Request); |
3251 | |
|
3252 | 0 | return offset; |
3253 | 0 | } |
3254 | | |
3255 | | |
3256 | | |
3257 | | static int |
3258 | 0 | dissect_mms_T_ap_title(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3259 | 0 | offset=dissect_acse_AP_title(false, tvb, offset, actx, tree, hf_mms_ap_title); |
3260 | | |
3261 | |
|
3262 | 0 | return offset; |
3263 | 0 | } |
3264 | | |
3265 | | |
3266 | | |
3267 | | static int |
3268 | 0 | dissect_mms_T_ap_invocation_id(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3269 | 0 | offset=dissect_acse_AP_invocation_identifier(false, tvb, offset, actx, tree, hf_mms_ap_invocation_id); |
3270 | | |
3271 | |
|
3272 | 0 | return offset; |
3273 | 0 | } |
3274 | | |
3275 | | |
3276 | | |
3277 | | static int |
3278 | 0 | dissect_mms_T_ae_qualifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3279 | 0 | offset=dissect_acse_AE_qualifier(false, tvb, offset, actx, tree, hf_mms_ae_qualifier); |
3280 | | |
3281 | |
|
3282 | 0 | return offset; |
3283 | 0 | } |
3284 | | |
3285 | | |
3286 | | |
3287 | | static int |
3288 | 0 | dissect_mms_T_ae_invocation_id(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3289 | 0 | offset=dissect_acse_AE_invocation_identifier(false, tvb, offset, actx, tree, hf_mms_ae_invocation_id); |
3290 | | |
3291 | |
|
3292 | 0 | return offset; |
3293 | 0 | } |
3294 | | |
3295 | | |
3296 | | static const ber_sequence_t ApplicationReference_sequence[] = { |
3297 | | { &hf_mms_ap_title , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_mms_T_ap_title }, |
3298 | | { &hf_mms_ap_invocation_id, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_T_ap_invocation_id }, |
3299 | | { &hf_mms_ae_qualifier , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_ae_qualifier }, |
3300 | | { &hf_mms_ae_invocation_id, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_T_ae_invocation_id }, |
3301 | | { NULL, 0, 0, 0, NULL } |
3302 | | }; |
3303 | | |
3304 | | static int |
3305 | 0 | dissect_mms_ApplicationReference(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3306 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3307 | 0 | ApplicationReference_sequence, hf_index, ett_mms_ApplicationReference); |
3308 | |
|
3309 | 0 | return offset; |
3310 | 0 | } |
3311 | | |
3312 | | |
3313 | | static const ber_sequence_t TakeControl_Request_sequence[] = { |
3314 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3315 | | { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3316 | | { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
3317 | | { &hf_mms_acceptableDelay , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
3318 | | { &hf_mms_controlTimeOut , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
3319 | | { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
3320 | | { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
3321 | | { &hf_mms_applicationToPreempt, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference }, |
3322 | | { NULL, 0, 0, 0, NULL } |
3323 | | }; |
3324 | | |
3325 | | static int |
3326 | 0 | dissect_mms_TakeControl_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3327 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3328 | 0 | TakeControl_Request_sequence, hf_index, ett_mms_TakeControl_Request); |
3329 | |
|
3330 | 0 | return offset; |
3331 | 0 | } |
3332 | | |
3333 | | |
3334 | | static const ber_sequence_t RelinquishControl_Request_sequence[] = { |
3335 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3336 | | { &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3337 | | { NULL, 0, 0, 0, NULL } |
3338 | | }; |
3339 | | |
3340 | | static int |
3341 | 0 | dissect_mms_RelinquishControl_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3342 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3343 | 0 | RelinquishControl_Request_sequence, hf_index, ett_mms_RelinquishControl_Request); |
3344 | |
|
3345 | 0 | return offset; |
3346 | 0 | } |
3347 | | |
3348 | | |
3349 | | |
3350 | | static int |
3351 | 0 | dissect_mms_Unsigned16(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3352 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3353 | 0 | NULL); |
3354 | |
|
3355 | 0 | return offset; |
3356 | 0 | } |
3357 | | |
3358 | | |
3359 | | static const ber_sequence_t DefineSemaphore_Request_sequence[] = { |
3360 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3361 | | { &hf_mms_numbersOfTokens , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 }, |
3362 | | { NULL, 0, 0, 0, NULL } |
3363 | | }; |
3364 | | |
3365 | | static int |
3366 | 0 | dissect_mms_DefineSemaphore_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3367 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3368 | 0 | DefineSemaphore_Request_sequence, hf_index, ett_mms_DefineSemaphore_Request); |
3369 | |
|
3370 | 0 | return offset; |
3371 | 0 | } |
3372 | | |
3373 | | |
3374 | | |
3375 | | static int |
3376 | 0 | dissect_mms_DeleteSemaphore_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3377 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3378 | |
|
3379 | 0 | return offset; |
3380 | 0 | } |
3381 | | |
3382 | | |
3383 | | |
3384 | | static int |
3385 | 0 | dissect_mms_ReportSemaphoreStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3386 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3387 | |
|
3388 | 0 | return offset; |
3389 | 0 | } |
3390 | | |
3391 | | |
3392 | | static const ber_sequence_t ReportPoolSemaphoreStatus_Request_sequence[] = { |
3393 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3394 | | { &hf_mms_nameToStartAfter, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3395 | | { NULL, 0, 0, 0, NULL } |
3396 | | }; |
3397 | | |
3398 | | static int |
3399 | 0 | dissect_mms_ReportPoolSemaphoreStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3400 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3401 | 0 | ReportPoolSemaphoreStatus_Request_sequence, hf_index, ett_mms_ReportPoolSemaphoreStatus_Request); |
3402 | |
|
3403 | 0 | return offset; |
3404 | 0 | } |
3405 | | |
3406 | | |
3407 | | static const value_string mms_T_reportSemaphoreEntryStatus_Request_state_vals[] = { |
3408 | | { 0, "queued" }, |
3409 | | { 1, "owner" }, |
3410 | | { 2, "hung" }, |
3411 | | { 0, NULL } |
3412 | | }; |
3413 | | |
3414 | | |
3415 | | static int |
3416 | 0 | dissect_mms_T_reportSemaphoreEntryStatus_Request_state(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3417 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3418 | 0 | NULL); |
3419 | |
|
3420 | 0 | return offset; |
3421 | 0 | } |
3422 | | |
3423 | | |
3424 | | static const ber_sequence_t ReportSemaphoreEntryStatus_Request_sequence[] = { |
3425 | | { &hf_mms_semaphoreName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
3426 | | { &hf_mms_reportSemaphoreEntryStatus_Request_state, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_reportSemaphoreEntryStatus_Request_state }, |
3427 | | { &hf_mms_entryIdToStartAfter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
3428 | | { NULL, 0, 0, 0, NULL } |
3429 | | }; |
3430 | | |
3431 | | static int |
3432 | 0 | dissect_mms_ReportSemaphoreEntryStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3433 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3434 | 0 | ReportSemaphoreEntryStatus_Request_sequence, hf_index, ett_mms_ReportSemaphoreEntryStatus_Request); |
3435 | |
|
3436 | 0 | return offset; |
3437 | 0 | } |
3438 | | |
3439 | | |
3440 | | static const ber_sequence_t T_listOfCapabilities_01_sequence_of[1] = { |
3441 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
3442 | | }; |
3443 | | |
3444 | | static int |
3445 | 0 | dissect_mms_T_listOfCapabilities_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3446 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
3447 | 0 | T_listOfCapabilities_01_sequence_of, hf_index, ett_mms_T_listOfCapabilities_01); |
3448 | |
|
3449 | 0 | return offset; |
3450 | 0 | } |
3451 | | |
3452 | | |
3453 | | static const ber_sequence_t InitiateDownloadSequence_Request_sequence[] = { |
3454 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3455 | | { &hf_mms_listOfCapabilities_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_01 }, |
3456 | | { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
3457 | | { NULL, 0, 0, 0, NULL } |
3458 | | }; |
3459 | | |
3460 | | static int |
3461 | 0 | dissect_mms_InitiateDownloadSequence_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3462 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3463 | 0 | InitiateDownloadSequence_Request_sequence, hf_index, ett_mms_InitiateDownloadSequence_Request); |
3464 | |
|
3465 | 0 | return offset; |
3466 | 0 | } |
3467 | | |
3468 | | |
3469 | | |
3470 | | static int |
3471 | 4 | dissect_mms_DownloadSegment_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3472 | 4 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
3473 | | |
3474 | 4 | return offset; |
3475 | 4 | } |
3476 | | |
3477 | | |
3478 | | static const value_string mms_T_vmd_state_vals[] = { |
3479 | | { 0, "other" }, |
3480 | | { 1, "vmd-state-conflict" }, |
3481 | | { 2, "vmd-operational-problem" }, |
3482 | | { 3, "domain-transfer-problem" }, |
3483 | | { 4, "state-machine-id-invalid" }, |
3484 | | { 0, NULL } |
3485 | | }; |
3486 | | |
3487 | | |
3488 | | static int |
3489 | 0 | dissect_mms_T_vmd_state(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3490 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3491 | 0 | NULL); |
3492 | |
|
3493 | 0 | return offset; |
3494 | 0 | } |
3495 | | |
3496 | | |
3497 | | static const value_string mms_T_application_reference_vals[] = { |
3498 | | { 0, "other" }, |
3499 | | { 1, "aplication-unreachable" }, |
3500 | | { 2, "connection-lost" }, |
3501 | | { 3, "application-reference-invalid" }, |
3502 | | { 4, "context-unsupported" }, |
3503 | | { 0, NULL } |
3504 | | }; |
3505 | | |
3506 | | |
3507 | | static int |
3508 | 0 | dissect_mms_T_application_reference(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3509 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3510 | 0 | NULL); |
3511 | |
|
3512 | 0 | return offset; |
3513 | 0 | } |
3514 | | |
3515 | | |
3516 | | static const value_string mms_T_definition_vals[] = { |
3517 | | { 0, "other" }, |
3518 | | { 1, "object-undefined" }, |
3519 | | { 2, "invalid-address" }, |
3520 | | { 3, "type-unsupported" }, |
3521 | | { 4, "type-inconsistent" }, |
3522 | | { 5, "object-exists" }, |
3523 | | { 6, "object-attribute-inconsistent" }, |
3524 | | { 0, NULL } |
3525 | | }; |
3526 | | |
3527 | | |
3528 | | static int |
3529 | 0 | dissect_mms_T_definition(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3530 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3531 | 0 | NULL); |
3532 | |
|
3533 | 0 | return offset; |
3534 | 0 | } |
3535 | | |
3536 | | |
3537 | | static const value_string mms_T_resource_vals[] = { |
3538 | | { 0, "other" }, |
3539 | | { 1, "memory-unavailable" }, |
3540 | | { 2, "processor-resource-unavailable" }, |
3541 | | { 3, "mass-storage-unavailable" }, |
3542 | | { 4, "capability-unavailable" }, |
3543 | | { 5, "capability-unknown" }, |
3544 | | { 0, NULL } |
3545 | | }; |
3546 | | |
3547 | | |
3548 | | static int |
3549 | 0 | dissect_mms_T_resource(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3550 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3551 | 0 | NULL); |
3552 | |
|
3553 | 0 | return offset; |
3554 | 0 | } |
3555 | | |
3556 | | |
3557 | | static const value_string mms_T_service_vals[] = { |
3558 | | { 0, "other" }, |
3559 | | { 1, "primitives-out-of-sequence" }, |
3560 | | { 2, "object-sate-conflict" }, |
3561 | | { 3, "pdu-size" }, |
3562 | | { 4, "continuation-invalid" }, |
3563 | | { 5, "object-constraint-conflict" }, |
3564 | | { 0, NULL } |
3565 | | }; |
3566 | | |
3567 | | |
3568 | | static int |
3569 | 0 | dissect_mms_T_service(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3570 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3571 | 0 | NULL); |
3572 | |
|
3573 | 0 | return offset; |
3574 | 0 | } |
3575 | | |
3576 | | |
3577 | | static const value_string mms_T_service_preempt_vals[] = { |
3578 | | { 0, "other" }, |
3579 | | { 1, "timeout" }, |
3580 | | { 2, "deadlock" }, |
3581 | | { 3, "cancel" }, |
3582 | | { 0, NULL } |
3583 | | }; |
3584 | | |
3585 | | |
3586 | | static int |
3587 | 0 | dissect_mms_T_service_preempt(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3588 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3589 | 0 | NULL); |
3590 | |
|
3591 | 0 | return offset; |
3592 | 0 | } |
3593 | | |
3594 | | |
3595 | | static const value_string mms_T_time_resolution_vals[] = { |
3596 | | { 0, "other" }, |
3597 | | { 1, "unsupportable-time-resolution" }, |
3598 | | { 0, NULL } |
3599 | | }; |
3600 | | |
3601 | | |
3602 | | static int |
3603 | 0 | dissect_mms_T_time_resolution(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3604 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3605 | 0 | NULL); |
3606 | |
|
3607 | 0 | return offset; |
3608 | 0 | } |
3609 | | |
3610 | | |
3611 | | static const value_string mms_T_access_vals[] = { |
3612 | | { 0, "other" }, |
3613 | | { 1, "object-access-unsupported" }, |
3614 | | { 2, "object-non-existent" }, |
3615 | | { 3, "object-access-denied" }, |
3616 | | { 4, "object-invalidated" }, |
3617 | | { 0, NULL } |
3618 | | }; |
3619 | | |
3620 | | |
3621 | | static int |
3622 | 0 | dissect_mms_T_access(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3623 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3624 | 0 | NULL); |
3625 | |
|
3626 | 0 | return offset; |
3627 | 0 | } |
3628 | | |
3629 | | |
3630 | | static const value_string mms_T_initiate_vals[] = { |
3631 | | { 0, "other" }, |
3632 | | { 1, "version-incompatible" }, |
3633 | | { 2, "max-segment-insufficient" }, |
3634 | | { 3, "max-services-outstanding-calling-insufficient" }, |
3635 | | { 4, "max-services-outstanding-called-insufficient" }, |
3636 | | { 5, "service-CBB-insufficient" }, |
3637 | | { 6, "parameter-CBB-insufficient" }, |
3638 | | { 7, "nesting-level-insufficient" }, |
3639 | | { 0, NULL } |
3640 | | }; |
3641 | | |
3642 | | |
3643 | | static int |
3644 | 0 | dissect_mms_T_initiate(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3645 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3646 | 0 | NULL); |
3647 | |
|
3648 | 0 | return offset; |
3649 | 0 | } |
3650 | | |
3651 | | |
3652 | | static const value_string mms_T_conclude_vals[] = { |
3653 | | { 0, "other" }, |
3654 | | { 1, "further-communication-required" }, |
3655 | | { 0, NULL } |
3656 | | }; |
3657 | | |
3658 | | |
3659 | | static int |
3660 | 0 | dissect_mms_T_conclude(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3661 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3662 | 0 | NULL); |
3663 | |
|
3664 | 0 | return offset; |
3665 | 0 | } |
3666 | | |
3667 | | |
3668 | | static const value_string mms_T_cancel_vals[] = { |
3669 | | { 0, "other" }, |
3670 | | { 1, "invoke-id-unknown" }, |
3671 | | { 2, "cancel-not-possible" }, |
3672 | | { 0, NULL } |
3673 | | }; |
3674 | | |
3675 | | |
3676 | | static int |
3677 | 0 | dissect_mms_T_cancel(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3678 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3679 | 0 | NULL); |
3680 | |
|
3681 | 0 | return offset; |
3682 | 0 | } |
3683 | | |
3684 | | |
3685 | | static const value_string mms_T_file_vals[] = { |
3686 | | { 0, "other" }, |
3687 | | { 1, "filename-ambiguous" }, |
3688 | | { 2, "file-busy" }, |
3689 | | { 3, "filename-syntax-error" }, |
3690 | | { 4, "content-type-invalid" }, |
3691 | | { 5, "position-invalid" }, |
3692 | | { 6, "file-acces-denied" }, |
3693 | | { 7, "file-non-existent" }, |
3694 | | { 8, "duplicate-filename" }, |
3695 | | { 9, "insufficient-space-in-filestore" }, |
3696 | | { 0, NULL } |
3697 | | }; |
3698 | | |
3699 | | |
3700 | | static int |
3701 | 0 | dissect_mms_T_file(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3702 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3703 | 0 | NULL); |
3704 | |
|
3705 | 0 | return offset; |
3706 | 0 | } |
3707 | | |
3708 | | |
3709 | | static const value_string mms_T_errorClass_vals[] = { |
3710 | | { 0, "vmd-state" }, |
3711 | | { 1, "application-reference" }, |
3712 | | { 2, "definition" }, |
3713 | | { 3, "resource" }, |
3714 | | { 4, "service" }, |
3715 | | { 5, "service-preempt" }, |
3716 | | { 6, "time-resolution" }, |
3717 | | { 7, "access" }, |
3718 | | { 8, "initiate" }, |
3719 | | { 9, "conclude" }, |
3720 | | { 10, "cancel" }, |
3721 | | { 11, "file" }, |
3722 | | { 12, "others" }, |
3723 | | { 0, NULL } |
3724 | | }; |
3725 | | |
3726 | | static const ber_choice_t T_errorClass_choice[] = { |
3727 | | { 0, &hf_mms_vmd_state , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_vmd_state }, |
3728 | | { 1, &hf_mms_application_reference, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_application_reference }, |
3729 | | { 2, &hf_mms_definition , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_definition }, |
3730 | | { 3, &hf_mms_resource , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_resource }, |
3731 | | { 4, &hf_mms_service , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_T_service }, |
3732 | | { 5, &hf_mms_service_preempt , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_service_preempt }, |
3733 | | { 6, &hf_mms_time_resolution , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_T_time_resolution }, |
3734 | | { 7, &hf_mms_access , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_T_access }, |
3735 | | { 8, &hf_mms_initiate , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_T_initiate }, |
3736 | | { 9, &hf_mms_conclude , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude }, |
3737 | | { 10, &hf_mms_cancel , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel }, |
3738 | | { 11, &hf_mms_file , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_T_file }, |
3739 | | { 12, &hf_mms_others , BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_INTEGER }, |
3740 | | { 0, NULL, 0, 0, 0, NULL } |
3741 | | }; |
3742 | | |
3743 | | static int |
3744 | 0 | dissect_mms_T_errorClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3745 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
3746 | 0 | T_errorClass_choice, hf_index, ett_mms_T_errorClass, |
3747 | 0 | NULL); |
3748 | |
|
3749 | 0 | return offset; |
3750 | 0 | } |
3751 | | |
3752 | | |
3753 | | static const value_string mms_ObtainFile_Error_vals[] = { |
3754 | | { 0, "source-file" }, |
3755 | | { 1, "destination-file" }, |
3756 | | { 0, NULL } |
3757 | | }; |
3758 | | |
3759 | | |
3760 | | static int |
3761 | 0 | dissect_mms_ObtainFile_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3762 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3763 | 0 | NULL); |
3764 | |
|
3765 | 0 | return offset; |
3766 | 0 | } |
3767 | | |
3768 | | |
3769 | | static const value_string mms_ProgramInvocationState_vals[] = { |
3770 | | { 0, "non-existent" }, |
3771 | | { 1, "unrunable" }, |
3772 | | { 2, "idle" }, |
3773 | | { 3, "running" }, |
3774 | | { 4, "stopped" }, |
3775 | | { 5, "starting" }, |
3776 | | { 6, "stopping" }, |
3777 | | { 7, "resuming" }, |
3778 | | { 8, "resetting" }, |
3779 | | { 0, NULL } |
3780 | | }; |
3781 | | |
3782 | | |
3783 | | static int |
3784 | 0 | dissect_mms_ProgramInvocationState(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3785 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3786 | 0 | NULL); |
3787 | |
|
3788 | 0 | return offset; |
3789 | 0 | } |
3790 | | |
3791 | | |
3792 | | |
3793 | | static int |
3794 | 0 | dissect_mms_Start_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3795 | 0 | offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index); |
3796 | |
|
3797 | 0 | return offset; |
3798 | 0 | } |
3799 | | |
3800 | | |
3801 | | |
3802 | | static int |
3803 | 0 | dissect_mms_Stop_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3804 | 0 | offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index); |
3805 | |
|
3806 | 0 | return offset; |
3807 | 0 | } |
3808 | | |
3809 | | |
3810 | | |
3811 | | static int |
3812 | 0 | dissect_mms_Resume_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3813 | 0 | offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index); |
3814 | |
|
3815 | 0 | return offset; |
3816 | 0 | } |
3817 | | |
3818 | | |
3819 | | |
3820 | | static int |
3821 | 0 | dissect_mms_Reset_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3822 | 0 | offset = dissect_mms_ProgramInvocationState(implicit_tag, tvb, offset, actx, tree, hf_index); |
3823 | |
|
3824 | 0 | return offset; |
3825 | 0 | } |
3826 | | |
3827 | | |
3828 | | |
3829 | | static int |
3830 | 0 | dissect_mms_DeleteVariableAccess_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3831 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
3832 | |
|
3833 | 0 | return offset; |
3834 | 0 | } |
3835 | | |
3836 | | |
3837 | | |
3838 | | static int |
3839 | 0 | dissect_mms_DeleteNamedVariableList_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3840 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
3841 | |
|
3842 | 0 | return offset; |
3843 | 0 | } |
3844 | | |
3845 | | |
3846 | | |
3847 | | static int |
3848 | 0 | dissect_mms_DeleteNamedType_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3849 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
3850 | |
|
3851 | 0 | return offset; |
3852 | 0 | } |
3853 | | |
3854 | | |
3855 | | |
3856 | | static int |
3857 | 0 | dissect_mms_DefineEventEnrollment_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3858 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3859 | |
|
3860 | 0 | return offset; |
3861 | 0 | } |
3862 | | |
3863 | | |
3864 | | static const value_string mms_FileRename_Error_vals[] = { |
3865 | | { 0, "source-file" }, |
3866 | | { 1, "destination-file" }, |
3867 | | { 0, NULL } |
3868 | | }; |
3869 | | |
3870 | | |
3871 | | static int |
3872 | 0 | dissect_mms_FileRename_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3873 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
3874 | 0 | NULL); |
3875 | |
|
3876 | 0 | return offset; |
3877 | 0 | } |
3878 | | |
3879 | | |
3880 | | |
3881 | | static int |
3882 | 0 | dissect_mms_DefineEventConditionList_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3883 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3884 | |
|
3885 | 0 | return offset; |
3886 | 0 | } |
3887 | | |
3888 | | |
3889 | | |
3890 | | static int |
3891 | 0 | dissect_mms_AddEventConditionListReference_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3892 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
3893 | |
|
3894 | 0 | return offset; |
3895 | 0 | } |
3896 | | |
3897 | | |
3898 | | static const value_string mms_RemoveEventConditionListReference_Error_vals[] = { |
3899 | | { 0, "eventCondition" }, |
3900 | | { 1, "eventConditionList" }, |
3901 | | { 0, NULL } |
3902 | | }; |
3903 | | |
3904 | | static const ber_choice_t RemoveEventConditionListReference_Error_choice[] = { |
3905 | | { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
3906 | | { 1, &hf_mms_eventConditionList, BER_CLASS_CON, 1, 0, dissect_mms_ObjectName }, |
3907 | | { 0, NULL, 0, 0, 0, NULL } |
3908 | | }; |
3909 | | |
3910 | | static int |
3911 | 0 | dissect_mms_RemoveEventConditionListReference_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3912 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
3913 | 0 | RemoveEventConditionListReference_Error_choice, hf_index, ett_mms_RemoveEventConditionListReference_Error, |
3914 | 0 | NULL); |
3915 | |
|
3916 | 0 | return offset; |
3917 | 0 | } |
3918 | | |
3919 | | |
3920 | | static const value_string mms_InitiateUnitControl_Error_vals[] = { |
3921 | | { 0, "domain" }, |
3922 | | { 1, "programInvocation" }, |
3923 | | { 0, NULL } |
3924 | | }; |
3925 | | |
3926 | | static const ber_choice_t InitiateUnitControl_Error_choice[] = { |
3927 | | { 0, &hf_mms_domain , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3928 | | { 1, &hf_mms_programInvocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3929 | | { 0, NULL, 0, 0, 0, NULL } |
3930 | | }; |
3931 | | |
3932 | | static int |
3933 | 0 | dissect_mms_InitiateUnitControl_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3934 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
3935 | 0 | InitiateUnitControl_Error_choice, hf_index, ett_mms_InitiateUnitControl_Error, |
3936 | 0 | NULL); |
3937 | |
|
3938 | 0 | return offset; |
3939 | 0 | } |
3940 | | |
3941 | | |
3942 | | static const ber_sequence_t StartUnitControl_Error_sequence[] = { |
3943 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3944 | | { &hf_mms_programInvocationState, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState }, |
3945 | | { NULL, 0, 0, 0, NULL } |
3946 | | }; |
3947 | | |
3948 | | static int |
3949 | 0 | dissect_mms_StartUnitControl_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3950 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3951 | 0 | StartUnitControl_Error_sequence, hf_index, ett_mms_StartUnitControl_Error); |
3952 | |
|
3953 | 0 | return offset; |
3954 | 0 | } |
3955 | | |
3956 | | |
3957 | | static const ber_sequence_t StopUnitControl_Error_sequence[] = { |
3958 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3959 | | { &hf_mms_programInvocationState, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState }, |
3960 | | { NULL, 0, 0, 0, NULL } |
3961 | | }; |
3962 | | |
3963 | | static int |
3964 | 0 | dissect_mms_StopUnitControl_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3965 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
3966 | 0 | StopUnitControl_Error_sequence, hf_index, ett_mms_StopUnitControl_Error); |
3967 | |
|
3968 | 0 | return offset; |
3969 | 0 | } |
3970 | | |
3971 | | |
3972 | | static const value_string mms_DeleteUnitControl_Error_vals[] = { |
3973 | | { 0, "domain" }, |
3974 | | { 1, "programInvocation" }, |
3975 | | { 0, NULL } |
3976 | | }; |
3977 | | |
3978 | | static const ber_choice_t DeleteUnitControl_Error_choice[] = { |
3979 | | { 0, &hf_mms_domain , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3980 | | { 1, &hf_mms_programInvocation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
3981 | | { 0, NULL, 0, 0, 0, NULL } |
3982 | | }; |
3983 | | |
3984 | | static int |
3985 | 0 | dissect_mms_DeleteUnitControl_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
3986 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
3987 | 0 | DeleteUnitControl_Error_choice, hf_index, ett_mms_DeleteUnitControl_Error, |
3988 | 0 | NULL); |
3989 | |
|
3990 | 0 | return offset; |
3991 | 0 | } |
3992 | | |
3993 | | |
3994 | | static const value_string mms_LoadUnitControlFromFile_Error_vals[] = { |
3995 | | { 0, "none" }, |
3996 | | { 1, "domain" }, |
3997 | | { 2, "programInvocation" }, |
3998 | | { 0, NULL } |
3999 | | }; |
4000 | | |
4001 | | static const ber_choice_t LoadUnitControlFromFile_Error_choice[] = { |
4002 | | { 0, &hf_mms_none , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
4003 | | { 1, &hf_mms_domain , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4004 | | { 2, &hf_mms_programInvocation, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4005 | | { 0, NULL, 0, 0, 0, NULL } |
4006 | | }; |
4007 | | |
4008 | | static int |
4009 | 0 | dissect_mms_LoadUnitControlFromFile_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4010 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4011 | 0 | LoadUnitControlFromFile_Error_choice, hf_index, ett_mms_LoadUnitControlFromFile_Error, |
4012 | 0 | NULL); |
4013 | |
|
4014 | 0 | return offset; |
4015 | 0 | } |
4016 | | |
4017 | | |
4018 | | static const value_string mms_AdditionalService_Error_vals[] = { |
4019 | | { 0, "defineEcl" }, |
4020 | | { 1, "addECLReference" }, |
4021 | | { 2, "removeECLReference" }, |
4022 | | { 3, "initiateUC" }, |
4023 | | { 4, "startUC" }, |
4024 | | { 5, "stopUC" }, |
4025 | | { 6, "deleteUC" }, |
4026 | | { 7, "loadUCFromFile" }, |
4027 | | { 0, NULL } |
4028 | | }; |
4029 | | |
4030 | | static const ber_choice_t AdditionalService_Error_choice[] = { |
4031 | | { 0, &hf_mms_defineEcl , BER_CLASS_CON, 0, 0, dissect_mms_DefineEventConditionList_Error }, |
4032 | | { 1, &hf_mms_addECLReference , BER_CLASS_CON, 1, 0, dissect_mms_AddEventConditionListReference_Error }, |
4033 | | { 2, &hf_mms_removeECLReference, BER_CLASS_CON, 2, 0, dissect_mms_RemoveEventConditionListReference_Error }, |
4034 | | { 3, &hf_mms_initiateUC , BER_CLASS_CON, 3, 0, dissect_mms_InitiateUnitControl_Error }, |
4035 | | { 4, &hf_mms_startUC , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_StartUnitControl_Error }, |
4036 | | { 5, &hf_mms_stopUC , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_StopUnitControl_Error }, |
4037 | | { 6, &hf_mms_deleteUC , BER_CLASS_CON, 6, 0, dissect_mms_DeleteUnitControl_Error }, |
4038 | | { 7, &hf_mms_loadUCFromFile , BER_CLASS_CON, 7, 0, dissect_mms_LoadUnitControlFromFile_Error }, |
4039 | | { 0, NULL, 0, 0, 0, NULL } |
4040 | | }; |
4041 | | |
4042 | | static int |
4043 | 0 | dissect_mms_AdditionalService_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4044 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4045 | 0 | AdditionalService_Error_choice, hf_index, ett_mms_AdditionalService_Error, |
4046 | 0 | NULL); |
4047 | |
|
4048 | 0 | return offset; |
4049 | 0 | } |
4050 | | |
4051 | | |
4052 | | |
4053 | | static int |
4054 | 0 | dissect_mms_ChangeAccessControl_Error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4055 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
4056 | |
|
4057 | 0 | return offset; |
4058 | 0 | } |
4059 | | |
4060 | | |
4061 | | static const value_string mms_T_serviceSpecificInformation_vals[] = { |
4062 | | { 0, "obtainFile" }, |
4063 | | { 1, "start" }, |
4064 | | { 2, "stop" }, |
4065 | | { 3, "resume" }, |
4066 | | { 4, "reset" }, |
4067 | | { 5, "deleteVariableAccess" }, |
4068 | | { 6, "deleteNamedVariableList" }, |
4069 | | { 7, "deleteNamedType" }, |
4070 | | { 8, "defineEventEnrollment-Error" }, |
4071 | | { 9, "fileRename" }, |
4072 | | { 10, "additionalService" }, |
4073 | | { 11, "changeAccessControl" }, |
4074 | | { 0, NULL } |
4075 | | }; |
4076 | | |
4077 | | static const ber_choice_t T_serviceSpecificInformation_choice[] = { |
4078 | | { 0, &hf_mms_obtainFile_02 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Error }, |
4079 | | { 1, &hf_mms_start_02 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Start_Error }, |
4080 | | { 2, &hf_mms_stop_02 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Error }, |
4081 | | { 3, &hf_mms_resume_02 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Error }, |
4082 | | { 4, &hf_mms_reset_02 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Error }, |
4083 | | { 5, &hf_mms_deleteVariableAccess_02, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Error }, |
4084 | | { 6, &hf_mms_deleteNamedVariableList_02, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Error }, |
4085 | | { 7, &hf_mms_deleteNamedType_02, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Error }, |
4086 | | { 8, &hf_mms_defineEventEnrollment_Error, BER_CLASS_CON, 8, 0, dissect_mms_DefineEventEnrollment_Error }, |
4087 | | { 9, &hf_mms_fileRename_02 , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Error }, |
4088 | | { 10, &hf_mms_additionalService, BER_CLASS_CON, 10, 0, dissect_mms_AdditionalService_Error }, |
4089 | | { 11, &hf_mms_changeAccessControl, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_ChangeAccessControl_Error }, |
4090 | | { 0, NULL, 0, 0, 0, NULL } |
4091 | | }; |
4092 | | |
4093 | | static int |
4094 | 0 | dissect_mms_T_serviceSpecificInformation(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4095 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4096 | 0 | T_serviceSpecificInformation_choice, hf_index, ett_mms_T_serviceSpecificInformation, |
4097 | 0 | NULL); |
4098 | |
|
4099 | 0 | return offset; |
4100 | 0 | } |
4101 | | |
4102 | | |
4103 | | static const ber_sequence_t ServiceError_sequence[] = { |
4104 | | { &hf_mms_errorClass , BER_CLASS_CON, 0, 0, dissect_mms_T_errorClass }, |
4105 | | { &hf_mms_additionalCode , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_INTEGER }, |
4106 | | { &hf_mms_additionalDescription, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
4107 | | { &hf_mms_serviceSpecificInformation, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_T_serviceSpecificInformation }, |
4108 | | { NULL, 0, 0, 0, NULL } |
4109 | | }; |
4110 | | |
4111 | | static int |
4112 | 1 | dissect_mms_ServiceError(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4113 | 1 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4114 | 1 | ServiceError_sequence, hf_index, ett_mms_ServiceError); |
4115 | | |
4116 | 1 | return offset; |
4117 | 1 | } |
4118 | | |
4119 | | |
4120 | | static const ber_sequence_t TerminateDownloadSequence_Request_sequence[] = { |
4121 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4122 | | { &hf_mms_discard , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ServiceError }, |
4123 | | { NULL, 0, 0, 0, NULL } |
4124 | | }; |
4125 | | |
4126 | | static int |
4127 | 0 | dissect_mms_TerminateDownloadSequence_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4128 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4129 | 0 | TerminateDownloadSequence_Request_sequence, hf_index, ett_mms_TerminateDownloadSequence_Request); |
4130 | |
|
4131 | 0 | return offset; |
4132 | 0 | } |
4133 | | |
4134 | | |
4135 | | |
4136 | | static int |
4137 | 10 | dissect_mms_InitiateUploadSequence_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4138 | 10 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
4139 | | |
4140 | 10 | return offset; |
4141 | 10 | } |
4142 | | |
4143 | | |
4144 | | |
4145 | | static int |
4146 | 0 | dissect_mms_UploadSegment_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4147 | 0 | offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index); |
4148 | |
|
4149 | 0 | return offset; |
4150 | 0 | } |
4151 | | |
4152 | | |
4153 | | |
4154 | | static int |
4155 | 0 | dissect_mms_TerminateUploadSequence_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4156 | 0 | offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index); |
4157 | |
|
4158 | 0 | return offset; |
4159 | 0 | } |
4160 | | |
4161 | | |
4162 | | static const ber_sequence_t T_listOfCapabilities_03_sequence_of[1] = { |
4163 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
4164 | | }; |
4165 | | |
4166 | | static int |
4167 | 0 | dissect_mms_T_listOfCapabilities_03(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4168 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
4169 | 0 | T_listOfCapabilities_03_sequence_of, hf_index, ett_mms_T_listOfCapabilities_03); |
4170 | |
|
4171 | 0 | return offset; |
4172 | 0 | } |
4173 | | |
4174 | | |
4175 | | |
4176 | | static int |
4177 | 0 | dissect_mms_GraphicString(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4178 | 0 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString, |
4179 | 0 | actx, tree, tvb, offset, hf_index, |
4180 | 0 | NULL); |
4181 | |
|
4182 | 0 | return offset; |
4183 | 0 | } |
4184 | | |
4185 | | |
4186 | | static const ber_sequence_t FileName_sequence_of[1] = { |
4187 | | { &hf_mms_FileName_item , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_mms_GraphicString }, |
4188 | | }; |
4189 | | |
4190 | | static int |
4191 | 0 | dissect_mms_FileName(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4192 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
4193 | 0 | FileName_sequence_of, hf_index, ett_mms_FileName); |
4194 | |
|
4195 | 0 | return offset; |
4196 | 0 | } |
4197 | | |
4198 | | |
4199 | | static const ber_sequence_t RequestDomainDownload_Request_sequence[] = { |
4200 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4201 | | { &hf_mms_listOfCapabilities_03, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_03 }, |
4202 | | { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4203 | | { &hf_mms_fileName , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4204 | | { NULL, 0, 0, 0, NULL } |
4205 | | }; |
4206 | | |
4207 | | static int |
4208 | 0 | dissect_mms_RequestDomainDownload_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4209 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4210 | 0 | RequestDomainDownload_Request_sequence, hf_index, ett_mms_RequestDomainDownload_Request); |
4211 | |
|
4212 | 0 | return offset; |
4213 | 0 | } |
4214 | | |
4215 | | |
4216 | | static const ber_sequence_t RequestDomainUpload_Request_sequence[] = { |
4217 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4218 | | { &hf_mms_fileName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4219 | | { NULL, 0, 0, 0, NULL } |
4220 | | }; |
4221 | | |
4222 | | static int |
4223 | 0 | dissect_mms_RequestDomainUpload_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4224 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4225 | 0 | RequestDomainUpload_Request_sequence, hf_index, ett_mms_RequestDomainUpload_Request); |
4226 | |
|
4227 | 0 | return offset; |
4228 | 0 | } |
4229 | | |
4230 | | |
4231 | | static const ber_sequence_t T_listOfCapabilities_04_sequence_of[1] = { |
4232 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
4233 | | }; |
4234 | | |
4235 | | static int |
4236 | 0 | dissect_mms_T_listOfCapabilities_04(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4237 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
4238 | 0 | T_listOfCapabilities_04_sequence_of, hf_index, ett_mms_T_listOfCapabilities_04); |
4239 | |
|
4240 | 0 | return offset; |
4241 | 0 | } |
4242 | | |
4243 | | |
4244 | | static const ber_sequence_t LoadDomainContent_Request_sequence[] = { |
4245 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4246 | | { &hf_mms_listOfCapabilities_04, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_04 }, |
4247 | | { &hf_mms_sharable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4248 | | { &hf_mms_fileName , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4249 | | { &hf_mms_thirdParty , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference }, |
4250 | | { NULL, 0, 0, 0, NULL } |
4251 | | }; |
4252 | | |
4253 | | static int |
4254 | 0 | dissect_mms_LoadDomainContent_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4255 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4256 | 0 | LoadDomainContent_Request_sequence, hf_index, ett_mms_LoadDomainContent_Request); |
4257 | |
|
4258 | 0 | return offset; |
4259 | 0 | } |
4260 | | |
4261 | | |
4262 | | static const ber_sequence_t StoreDomainContent_Request_sequence[] = { |
4263 | | { &hf_mms_domainName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4264 | | { &hf_mms_filenName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4265 | | { &hf_mms_thirdParty , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference }, |
4266 | | { NULL, 0, 0, 0, NULL } |
4267 | | }; |
4268 | | |
4269 | | static int |
4270 | 4 | dissect_mms_StoreDomainContent_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4271 | 4 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4272 | 4 | StoreDomainContent_Request_sequence, hf_index, ett_mms_StoreDomainContent_Request); |
4273 | | |
4274 | 4 | return offset; |
4275 | 4 | } |
4276 | | |
4277 | | |
4278 | | |
4279 | | static int |
4280 | 0 | dissect_mms_DeleteDomain_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4281 | 0 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
4282 | |
|
4283 | 0 | return offset; |
4284 | 0 | } |
4285 | | |
4286 | | |
4287 | | |
4288 | | static int |
4289 | 16 | dissect_mms_GetDomainAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4290 | 16 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
4291 | | |
4292 | 16 | return offset; |
4293 | 16 | } |
4294 | | |
4295 | | |
4296 | | static const ber_sequence_t SEQUENCE_OF_Identifier_sequence_of[1] = { |
4297 | | { &hf_mms_listOfIdentifier_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_Identifier }, |
4298 | | }; |
4299 | | |
4300 | | static int |
4301 | 0 | dissect_mms_SEQUENCE_OF_Identifier(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4302 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
4303 | 0 | SEQUENCE_OF_Identifier_sequence_of, hf_index, ett_mms_SEQUENCE_OF_Identifier); |
4304 | |
|
4305 | 0 | return offset; |
4306 | 0 | } |
4307 | | |
4308 | | |
4309 | | static const ber_sequence_t CreateProgramInvocation_Request_sequence[] = { |
4310 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4311 | | { &hf_mms_listOfDomainName, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier }, |
4312 | | { &hf_mms_reusable , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4313 | | { &hf_mms_monitorType , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4314 | | { NULL, 0, 0, 0, NULL } |
4315 | | }; |
4316 | | |
4317 | | static int |
4318 | 0 | dissect_mms_CreateProgramInvocation_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4319 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4320 | 0 | CreateProgramInvocation_Request_sequence, hf_index, ett_mms_CreateProgramInvocation_Request); |
4321 | |
|
4322 | 0 | return offset; |
4323 | 0 | } |
4324 | | |
4325 | | |
4326 | | |
4327 | | static int |
4328 | 0 | dissect_mms_DeleteProgramInvocation_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4329 | 0 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
4330 | |
|
4331 | 0 | return offset; |
4332 | 0 | } |
4333 | | |
4334 | | |
4335 | | static const value_string mms_T_executionArgument_vals[] = { |
4336 | | { 0, "simpleString" }, |
4337 | | { 1, "encodedString" }, |
4338 | | { 0, NULL } |
4339 | | }; |
4340 | | |
4341 | | static const ber_choice_t T_executionArgument_choice[] = { |
4342 | | { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
4343 | | { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt }, |
4344 | | { 0, NULL, 0, 0, 0, NULL } |
4345 | | }; |
4346 | | |
4347 | | static int |
4348 | 0 | dissect_mms_T_executionArgument(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4349 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4350 | 0 | T_executionArgument_choice, hf_index, ett_mms_T_executionArgument, |
4351 | 0 | NULL); |
4352 | |
|
4353 | 0 | return offset; |
4354 | 0 | } |
4355 | | |
4356 | | |
4357 | | static const ber_sequence_t Start_Request_sequence[] = { |
4358 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4359 | | { &hf_mms_executionArgument, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument }, |
4360 | | { NULL, 0, 0, 0, NULL } |
4361 | | }; |
4362 | | |
4363 | | static int |
4364 | 0 | dissect_mms_Start_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4365 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4366 | 0 | Start_Request_sequence, hf_index, ett_mms_Start_Request); |
4367 | |
|
4368 | 0 | return offset; |
4369 | 0 | } |
4370 | | |
4371 | | |
4372 | | static const ber_sequence_t Stop_Request_sequence[] = { |
4373 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4374 | | { NULL, 0, 0, 0, NULL } |
4375 | | }; |
4376 | | |
4377 | | static int |
4378 | 11 | dissect_mms_Stop_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4379 | 11 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4380 | 11 | Stop_Request_sequence, hf_index, ett_mms_Stop_Request); |
4381 | | |
4382 | 11 | return offset; |
4383 | 11 | } |
4384 | | |
4385 | | |
4386 | | static const value_string mms_T_executionArgument_01_vals[] = { |
4387 | | { 0, "simpleString" }, |
4388 | | { 1, "encodedString" }, |
4389 | | { 0, NULL } |
4390 | | }; |
4391 | | |
4392 | | static const ber_choice_t T_executionArgument_01_choice[] = { |
4393 | | { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
4394 | | { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt }, |
4395 | | { 0, NULL, 0, 0, 0, NULL } |
4396 | | }; |
4397 | | |
4398 | | static int |
4399 | 0 | dissect_mms_T_executionArgument_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4400 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4401 | 0 | T_executionArgument_01_choice, hf_index, ett_mms_T_executionArgument_01, |
4402 | 0 | NULL); |
4403 | |
|
4404 | 0 | return offset; |
4405 | 0 | } |
4406 | | |
4407 | | |
4408 | | static const ber_sequence_t Resume_Request_sequence[] = { |
4409 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4410 | | { &hf_mms_executionArgument_01, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument_01 }, |
4411 | | { NULL, 0, 0, 0, NULL } |
4412 | | }; |
4413 | | |
4414 | | static int |
4415 | 0 | dissect_mms_Resume_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4416 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4417 | 0 | Resume_Request_sequence, hf_index, ett_mms_Resume_Request); |
4418 | |
|
4419 | 0 | return offset; |
4420 | 0 | } |
4421 | | |
4422 | | |
4423 | | static const ber_sequence_t Reset_Request_sequence[] = { |
4424 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4425 | | { NULL, 0, 0, 0, NULL } |
4426 | | }; |
4427 | | |
4428 | | static int |
4429 | 0 | dissect_mms_Reset_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4430 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4431 | 0 | Reset_Request_sequence, hf_index, ett_mms_Reset_Request); |
4432 | |
|
4433 | 0 | return offset; |
4434 | 0 | } |
4435 | | |
4436 | | |
4437 | | static const ber_sequence_t Kill_Request_sequence[] = { |
4438 | | { &hf_mms_programInvocationName, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4439 | | { NULL, 0, 0, 0, NULL } |
4440 | | }; |
4441 | | |
4442 | | static int |
4443 | 0 | dissect_mms_Kill_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4444 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4445 | 0 | Kill_Request_sequence, hf_index, ett_mms_Kill_Request); |
4446 | |
|
4447 | 0 | return offset; |
4448 | 0 | } |
4449 | | |
4450 | | |
4451 | | |
4452 | | static int |
4453 | 0 | dissect_mms_GetProgramInvocationAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4454 | 0 | offset = dissect_mms_Identifier(implicit_tag, tvb, offset, actx, tree, hf_index); |
4455 | |
|
4456 | 0 | return offset; |
4457 | 0 | } |
4458 | | |
4459 | | |
4460 | | static const ber_sequence_t ObtainFile_Request_sequence[] = { |
4461 | | { &hf_mms_sourceFileServer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_ApplicationReference }, |
4462 | | { &hf_mms_sourceFile , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4463 | | { &hf_mms_destinationFile , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
4464 | | { NULL, 0, 0, 0, NULL } |
4465 | | }; |
4466 | | |
4467 | | static int |
4468 | 0 | dissect_mms_ObtainFile_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4469 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4470 | 0 | ObtainFile_Request_sequence, hf_index, ett_mms_ObtainFile_Request); |
4471 | |
|
4472 | 0 | return offset; |
4473 | 0 | } |
4474 | | |
4475 | | |
4476 | | static const value_string mms_EC_Class_vals[] = { |
4477 | | { 0, "network-triggered" }, |
4478 | | { 1, "monitored" }, |
4479 | | { 0, NULL } |
4480 | | }; |
4481 | | |
4482 | | |
4483 | | static int |
4484 | 0 | dissect_mms_EC_Class(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4485 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4486 | 0 | NULL); |
4487 | |
|
4488 | 0 | return offset; |
4489 | 0 | } |
4490 | | |
4491 | | |
4492 | | static const ber_sequence_t DefineEventCondition_Request_sequence[] = { |
4493 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4494 | | { &hf_mms_class_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_Class }, |
4495 | | { &hf_mms_prio_rity , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
4496 | | { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
4497 | | { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4498 | | { &hf_mms_monitoredVariable, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification }, |
4499 | | { &hf_mms_evaluationInterval, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
4500 | | { NULL, 0, 0, 0, NULL } |
4501 | | }; |
4502 | | |
4503 | | static int |
4504 | 0 | dissect_mms_DefineEventCondition_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4505 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4506 | 0 | DefineEventCondition_Request_sequence, hf_index, ett_mms_DefineEventCondition_Request); |
4507 | |
|
4508 | 0 | return offset; |
4509 | 0 | } |
4510 | | |
4511 | | |
4512 | | static const value_string mms_DeleteEventCondition_Request_vals[] = { |
4513 | | { 0, "specific" }, |
4514 | | { 1, "aa-specific" }, |
4515 | | { 2, "domain" }, |
4516 | | { 3, "vmd" }, |
4517 | | { 0, NULL } |
4518 | | }; |
4519 | | |
4520 | | static const ber_choice_t DeleteEventCondition_Request_choice[] = { |
4521 | | { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
4522 | | { 1, &hf_mms_aa_specific_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
4523 | | { 2, &hf_mms_domain , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4524 | | { 3, &hf_mms_vmd , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
4525 | | { 0, NULL, 0, 0, 0, NULL } |
4526 | | }; |
4527 | | |
4528 | | static int |
4529 | 0 | dissect_mms_DeleteEventCondition_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4530 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4531 | 0 | DeleteEventCondition_Request_choice, hf_index, ett_mms_DeleteEventCondition_Request, |
4532 | 0 | NULL); |
4533 | |
|
4534 | 0 | return offset; |
4535 | 0 | } |
4536 | | |
4537 | | |
4538 | | |
4539 | | static int |
4540 | 0 | dissect_mms_GetEventConditionAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4541 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
4542 | |
|
4543 | 0 | return offset; |
4544 | 0 | } |
4545 | | |
4546 | | |
4547 | | |
4548 | | static int |
4549 | 0 | dissect_mms_ReportEventConditionStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4550 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
4551 | |
|
4552 | 0 | return offset; |
4553 | 0 | } |
4554 | | |
4555 | | |
4556 | | static const ber_sequence_t AlterEventConditionMonitoring_Request_sequence[] = { |
4557 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4558 | | { &hf_mms_enabled , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4559 | | { &hf_mms_priority , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
4560 | | { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4561 | | { &hf_mms_evaluationInterval, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
4562 | | { NULL, 0, 0, 0, NULL } |
4563 | | }; |
4564 | | |
4565 | | static int |
4566 | 3 | dissect_mms_AlterEventConditionMonitoring_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4567 | 3 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4568 | 3 | AlterEventConditionMonitoring_Request_sequence, hf_index, ett_mms_AlterEventConditionMonitoring_Request); |
4569 | | |
4570 | 3 | return offset; |
4571 | 3 | } |
4572 | | |
4573 | | |
4574 | | static const ber_sequence_t TriggerEvent_Request_sequence[] = { |
4575 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4576 | | { &hf_mms_priority , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
4577 | | { NULL, 0, 0, 0, NULL } |
4578 | | }; |
4579 | | |
4580 | | static int |
4581 | 3 | dissect_mms_TriggerEvent_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4582 | 3 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4583 | 3 | TriggerEvent_Request_sequence, hf_index, ett_mms_TriggerEvent_Request); |
4584 | | |
4585 | 3 | return offset; |
4586 | 3 | } |
4587 | | |
4588 | | |
4589 | | static const ber_sequence_t DefineEventAction_Request_sequence[] = { |
4590 | | { &hf_mms_eventActionName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4591 | | { &hf_mms_listOfModifier , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Modifier }, |
4592 | | { NULL, 0, 0, 0, NULL } |
4593 | | }; |
4594 | | |
4595 | | static int |
4596 | 1 | dissect_mms_DefineEventAction_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4597 | 1 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4598 | 1 | DefineEventAction_Request_sequence, hf_index, ett_mms_DefineEventAction_Request); |
4599 | | |
4600 | 1 | return offset; |
4601 | 1 | } |
4602 | | |
4603 | | |
4604 | | static const value_string mms_DeleteEventAction_Request_vals[] = { |
4605 | | { 0, "specific" }, |
4606 | | { 1, "aa-specific" }, |
4607 | | { 3, "domain" }, |
4608 | | { 4, "vmd" }, |
4609 | | { 0, NULL } |
4610 | | }; |
4611 | | |
4612 | | static const ber_choice_t DeleteEventAction_Request_choice[] = { |
4613 | | { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
4614 | | { 1, &hf_mms_aa_specific_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
4615 | | { 3, &hf_mms_domain , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
4616 | | { 4, &hf_mms_vmd , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
4617 | | { 0, NULL, 0, 0, 0, NULL } |
4618 | | }; |
4619 | | |
4620 | | static int |
4621 | 0 | dissect_mms_DeleteEventAction_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4622 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4623 | 0 | DeleteEventAction_Request_choice, hf_index, ett_mms_DeleteEventAction_Request, |
4624 | 0 | NULL); |
4625 | |
|
4626 | 0 | return offset; |
4627 | 0 | } |
4628 | | |
4629 | | |
4630 | | |
4631 | | static int |
4632 | 2 | dissect_mms_GetEventActionAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4633 | 2 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
4634 | | |
4635 | 2 | return offset; |
4636 | 2 | } |
4637 | | |
4638 | | |
4639 | | |
4640 | | static int |
4641 | 2 | dissect_mms_ReportEventActionStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4642 | 2 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
4643 | | |
4644 | 2 | return offset; |
4645 | 2 | } |
4646 | | |
4647 | | |
4648 | | static const value_string mms_AlarmAckRule_vals[] = { |
4649 | | { 0, "none" }, |
4650 | | { 1, "simple" }, |
4651 | | { 2, "ack-active" }, |
4652 | | { 3, "ack-all" }, |
4653 | | { 0, NULL } |
4654 | | }; |
4655 | | |
4656 | | |
4657 | | static int |
4658 | 0 | dissect_mms_AlarmAckRule(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4659 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4660 | 0 | NULL); |
4661 | |
|
4662 | 0 | return offset; |
4663 | 0 | } |
4664 | | |
4665 | | |
4666 | | static const ber_sequence_t DefineEventEnrollment_Request_sequence[] = { |
4667 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4668 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4669 | | { &hf_mms_eventConditionTransition, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Transitions }, |
4670 | | { &hf_mms_alarmAcknowledgementRule, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule }, |
4671 | | { &hf_mms_eventActionName , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4672 | | { &hf_mms_clientApplication, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference }, |
4673 | | { NULL, 0, 0, 0, NULL } |
4674 | | }; |
4675 | | |
4676 | | static int |
4677 | 0 | dissect_mms_DefineEventEnrollment_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4678 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4679 | 0 | DefineEventEnrollment_Request_sequence, hf_index, ett_mms_DefineEventEnrollment_Request); |
4680 | |
|
4681 | 0 | return offset; |
4682 | 0 | } |
4683 | | |
4684 | | |
4685 | | static const value_string mms_DeleteEventEnrollment_Request_vals[] = { |
4686 | | { 0, "specific" }, |
4687 | | { 1, "ec" }, |
4688 | | { 2, "ea" }, |
4689 | | { 0, NULL } |
4690 | | }; |
4691 | | |
4692 | | static const ber_choice_t DeleteEventEnrollment_Request_choice[] = { |
4693 | | { 0, &hf_mms_specific , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
4694 | | { 1, &hf_mms_ec , BER_CLASS_CON, 1, 0, dissect_mms_ObjectName }, |
4695 | | { 2, &hf_mms_ea , BER_CLASS_CON, 2, 0, dissect_mms_ObjectName }, |
4696 | | { 0, NULL, 0, 0, 0, NULL } |
4697 | | }; |
4698 | | |
4699 | | static int |
4700 | 0 | dissect_mms_DeleteEventEnrollment_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4701 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4702 | 0 | DeleteEventEnrollment_Request_choice, hf_index, ett_mms_DeleteEventEnrollment_Request, |
4703 | 0 | NULL); |
4704 | |
|
4705 | 0 | return offset; |
4706 | 0 | } |
4707 | | |
4708 | | |
4709 | | static const ber_sequence_t AlterEventEnrollment_Request_sequence[] = { |
4710 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4711 | | { &hf_mms_eventConditionTransitions, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Transitions }, |
4712 | | { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule }, |
4713 | | { NULL, 0, 0, 0, NULL } |
4714 | | }; |
4715 | | |
4716 | | static int |
4717 | 0 | dissect_mms_AlterEventEnrollment_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4718 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4719 | 0 | AlterEventEnrollment_Request_sequence, hf_index, ett_mms_AlterEventEnrollment_Request); |
4720 | |
|
4721 | 0 | return offset; |
4722 | 0 | } |
4723 | | |
4724 | | |
4725 | | |
4726 | | static int |
4727 | 8 | dissect_mms_ReportEventEnrollmentStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4728 | 8 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
4729 | | |
4730 | 8 | return offset; |
4731 | 8 | } |
4732 | | |
4733 | | |
4734 | | static const value_string mms_T_scopeOfRequest_vals[] = { |
4735 | | { 0, "specific" }, |
4736 | | { 1, "client" }, |
4737 | | { 2, "ec" }, |
4738 | | { 3, "ea" }, |
4739 | | { 0, NULL } |
4740 | | }; |
4741 | | |
4742 | | |
4743 | | static int |
4744 | 0 | dissect_mms_T_scopeOfRequest(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4745 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4746 | 0 | NULL); |
4747 | |
|
4748 | 0 | return offset; |
4749 | 0 | } |
4750 | | |
4751 | | |
4752 | | static const ber_sequence_t GetEventEnrollmentAttributes_Request_sequence[] = { |
4753 | | { &hf_mms_scopeOfRequest , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_scopeOfRequest }, |
4754 | | { &hf_mms_eventEnrollmentNames, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_ObjectName }, |
4755 | | { &hf_mms_clientApplication, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference }, |
4756 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4757 | | { &hf_mms_eventActionName , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4758 | | { &hf_mms_getEventEnrollmentAttributes_Request_continueAfter, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4759 | | { NULL, 0, 0, 0, NULL } |
4760 | | }; |
4761 | | |
4762 | | static int |
4763 | 0 | dissect_mms_GetEventEnrollmentAttributes_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4764 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4765 | 0 | GetEventEnrollmentAttributes_Request_sequence, hf_index, ett_mms_GetEventEnrollmentAttributes_Request); |
4766 | |
|
4767 | 0 | return offset; |
4768 | 0 | } |
4769 | | |
4770 | | |
4771 | | static const value_string mms_EC_State_vals[] = { |
4772 | | { 0, "disabled" }, |
4773 | | { 1, "idle" }, |
4774 | | { 2, "active" }, |
4775 | | { 0, NULL } |
4776 | | }; |
4777 | | |
4778 | | |
4779 | | static int |
4780 | 0 | dissect_mms_EC_State(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4781 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4782 | 0 | NULL); |
4783 | |
|
4784 | 0 | return offset; |
4785 | 0 | } |
4786 | | |
4787 | | |
4788 | | static const value_string mms_EventTime_vals[] = { |
4789 | | { 0, "timeOfDayT" }, |
4790 | | { 1, "timeSequenceIdentifier" }, |
4791 | | { 0, NULL } |
4792 | | }; |
4793 | | |
4794 | | static const ber_choice_t EventTime_choice[] = { |
4795 | | { 0, &hf_mms_timeOfDayT , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
4796 | | { 1, &hf_mms_timeSequenceIdentifier, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
4797 | | { 0, NULL, 0, 0, 0, NULL } |
4798 | | }; |
4799 | | |
4800 | | static int |
4801 | 0 | dissect_mms_EventTime(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4802 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4803 | 0 | EventTime_choice, hf_index, ett_mms_EventTime, |
4804 | 0 | NULL); |
4805 | |
|
4806 | 0 | return offset; |
4807 | 0 | } |
4808 | | |
4809 | | |
4810 | | static const ber_sequence_t AcknowledgeEventNotification_Request_sequence[] = { |
4811 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4812 | | { &hf_mms_acknowledgedState, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
4813 | | { &hf_mms_timeOfAcknowledgedTransition, BER_CLASS_CON, 3, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
4814 | | { NULL, 0, 0, 0, NULL } |
4815 | | }; |
4816 | | |
4817 | | static int |
4818 | 0 | dissect_mms_AcknowledgeEventNotification_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4819 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4820 | 0 | AcknowledgeEventNotification_Request_sequence, hf_index, ett_mms_AcknowledgeEventNotification_Request); |
4821 | |
|
4822 | 0 | return offset; |
4823 | 0 | } |
4824 | | |
4825 | | |
4826 | | static const value_string mms_T_acknowledgmentFilter_vals[] = { |
4827 | | { 0, "not-acked" }, |
4828 | | { 1, "acked" }, |
4829 | | { 2, "all" }, |
4830 | | { 0, NULL } |
4831 | | }; |
4832 | | |
4833 | | |
4834 | | static int |
4835 | 0 | dissect_mms_T_acknowledgmentFilter(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4836 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4837 | 0 | NULL); |
4838 | |
|
4839 | 0 | return offset; |
4840 | 0 | } |
4841 | | |
4842 | | |
4843 | | static const ber_sequence_t T_severityFilter_sequence[] = { |
4844 | | { &hf_mms_mostSevere , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
4845 | | { &hf_mms_leastSevere , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
4846 | | { NULL, 0, 0, 0, NULL } |
4847 | | }; |
4848 | | |
4849 | | static int |
4850 | 0 | dissect_mms_T_severityFilter(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4851 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4852 | 0 | T_severityFilter_sequence, hf_index, ett_mms_T_severityFilter); |
4853 | |
|
4854 | 0 | return offset; |
4855 | 0 | } |
4856 | | |
4857 | | |
4858 | | static const ber_sequence_t GetAlarmSummary_Request_sequence[] = { |
4859 | | { &hf_mms_enrollmentsOnly , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4860 | | { &hf_mms_activeAlarmsOnly, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4861 | | { &hf_mms_acknowledgmentFilter, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_acknowledgmentFilter }, |
4862 | | { &hf_mms_severityFilter , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_severityFilter }, |
4863 | | { &hf_mms_continueAfter , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4864 | | { NULL, 0, 0, 0, NULL } |
4865 | | }; |
4866 | | |
4867 | | static int |
4868 | 0 | dissect_mms_GetAlarmSummary_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4869 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4870 | 0 | GetAlarmSummary_Request_sequence, hf_index, ett_mms_GetAlarmSummary_Request); |
4871 | |
|
4872 | 0 | return offset; |
4873 | 0 | } |
4874 | | |
4875 | | |
4876 | | static const value_string mms_T_acknowledgmentFilter_01_vals[] = { |
4877 | | { 0, "not-acked" }, |
4878 | | { 1, "acked" }, |
4879 | | { 2, "all" }, |
4880 | | { 0, NULL } |
4881 | | }; |
4882 | | |
4883 | | |
4884 | | static int |
4885 | 0 | dissect_mms_T_acknowledgmentFilter_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4886 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
4887 | 0 | NULL); |
4888 | |
|
4889 | 0 | return offset; |
4890 | 0 | } |
4891 | | |
4892 | | |
4893 | | static const ber_sequence_t T_severityFilter_01_sequence[] = { |
4894 | | { &hf_mms_mostSevere , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
4895 | | { &hf_mms_leastSevere , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
4896 | | { NULL, 0, 0, 0, NULL } |
4897 | | }; |
4898 | | |
4899 | | static int |
4900 | 0 | dissect_mms_T_severityFilter_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4901 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4902 | 0 | T_severityFilter_01_sequence, hf_index, ett_mms_T_severityFilter_01); |
4903 | |
|
4904 | 0 | return offset; |
4905 | 0 | } |
4906 | | |
4907 | | |
4908 | | static const ber_sequence_t GetAlarmEnrollmentSummary_Request_sequence[] = { |
4909 | | { &hf_mms_enrollmentsOnly , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4910 | | { &hf_mms_activeAlarmsOnly, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
4911 | | { &hf_mms_acknowledgmentFilter_01, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_acknowledgmentFilter_01 }, |
4912 | | { &hf_mms_severityFilter_01, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_severityFilter_01 }, |
4913 | | { &hf_mms_getAlarmEnrollmentSummary_Request_continueAfter, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
4914 | | { NULL, 0, 0, 0, NULL } |
4915 | | }; |
4916 | | |
4917 | | static int |
4918 | 0 | dissect_mms_GetAlarmEnrollmentSummary_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4919 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4920 | 0 | GetAlarmEnrollmentSummary_Request_sequence, hf_index, ett_mms_GetAlarmEnrollmentSummary_Request); |
4921 | |
|
4922 | 0 | return offset; |
4923 | 0 | } |
4924 | | |
4925 | | |
4926 | | static const value_string mms_T_rangeStartSpecification_vals[] = { |
4927 | | { 0, "startingTime" }, |
4928 | | { 1, "startingEntry" }, |
4929 | | { 0, NULL } |
4930 | | }; |
4931 | | |
4932 | | static const ber_choice_t T_rangeStartSpecification_choice[] = { |
4933 | | { 0, &hf_mms_startingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
4934 | | { 1, &hf_mms_startingEntry , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
4935 | | { 0, NULL, 0, 0, 0, NULL } |
4936 | | }; |
4937 | | |
4938 | | static int |
4939 | 0 | dissect_mms_T_rangeStartSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4940 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4941 | 0 | T_rangeStartSpecification_choice, hf_index, ett_mms_T_rangeStartSpecification, |
4942 | 0 | NULL); |
4943 | |
|
4944 | 0 | return offset; |
4945 | 0 | } |
4946 | | |
4947 | | |
4948 | | static const value_string mms_T_rangeStopSpecification_vals[] = { |
4949 | | { 0, "endingTime" }, |
4950 | | { 1, "numberOfEntries" }, |
4951 | | { 0, NULL } |
4952 | | }; |
4953 | | |
4954 | | static const ber_choice_t T_rangeStopSpecification_choice[] = { |
4955 | | { 0, &hf_mms_endingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
4956 | | { 1, &hf_mms_numberOfEntries , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
4957 | | { 0, NULL, 0, 0, 0, NULL } |
4958 | | }; |
4959 | | |
4960 | | static int |
4961 | 0 | dissect_mms_T_rangeStopSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4962 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
4963 | 0 | T_rangeStopSpecification_choice, hf_index, ett_mms_T_rangeStopSpecification, |
4964 | 0 | NULL); |
4965 | |
|
4966 | 0 | return offset; |
4967 | 0 | } |
4968 | | |
4969 | | |
4970 | | static const ber_sequence_t T_listOfVariables_sequence_of[1] = { |
4971 | | { &hf_mms_listOfVariables_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
4972 | | }; |
4973 | | |
4974 | | static int |
4975 | 0 | dissect_mms_T_listOfVariables(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4976 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
4977 | 0 | T_listOfVariables_sequence_of, hf_index, ett_mms_T_listOfVariables); |
4978 | |
|
4979 | 0 | return offset; |
4980 | 0 | } |
4981 | | |
4982 | | |
4983 | | static const ber_sequence_t T_entryToStartAfter_sequence[] = { |
4984 | | { &hf_mms_timeSpecification, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
4985 | | { &hf_mms_entrySpecification, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
4986 | | { NULL, 0, 0, 0, NULL } |
4987 | | }; |
4988 | | |
4989 | | static int |
4990 | 0 | dissect_mms_T_entryToStartAfter(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
4991 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
4992 | 0 | T_entryToStartAfter_sequence, hf_index, ett_mms_T_entryToStartAfter); |
4993 | |
|
4994 | 0 | return offset; |
4995 | 0 | } |
4996 | | |
4997 | | |
4998 | | static const ber_sequence_t ReadJournal_Request_sequence[] = { |
4999 | | { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5000 | | { &hf_mms_rangeStartSpecification, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_T_rangeStartSpecification }, |
5001 | | { &hf_mms_rangeStopSpecification, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_rangeStopSpecification }, |
5002 | | { &hf_mms_listOfVariables , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariables }, |
5003 | | { &hf_mms_entryToStartAfter, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_entryToStartAfter }, |
5004 | | { NULL, 0, 0, 0, NULL } |
5005 | | }; |
5006 | | |
5007 | | static int |
5008 | 0 | dissect_mms_ReadJournal_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5009 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5010 | 0 | ReadJournal_Request_sequence, hf_index, ett_mms_ReadJournal_Request); |
5011 | |
|
5012 | 0 | return offset; |
5013 | 0 | } |
5014 | | |
5015 | | |
5016 | | |
5017 | | static int |
5018 | 0 | dissect_mms_JOU_Additional_Detail(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5019 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5020 | |
|
5021 | 0 | return offset; |
5022 | 0 | } |
5023 | | |
5024 | | |
5025 | | static const ber_sequence_t T_event_sequence[] = { |
5026 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5027 | | { &hf_mms_currentState , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
5028 | | { NULL, 0, 0, 0, NULL } |
5029 | | }; |
5030 | | |
5031 | | static int |
5032 | 0 | dissect_mms_T_event(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5033 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5034 | 0 | T_event_sequence, hf_index, ett_mms_T_event); |
5035 | |
|
5036 | 0 | return offset; |
5037 | 0 | } |
5038 | | |
5039 | | |
5040 | | static const ber_sequence_t T_listOfVariables_item_sequence[] = { |
5041 | | { &hf_mms_variableTag , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
5042 | | { &hf_mms_valueSpecification, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_Data }, |
5043 | | { NULL, 0, 0, 0, NULL } |
5044 | | }; |
5045 | | |
5046 | | static int |
5047 | 0 | dissect_mms_T_listOfVariables_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5048 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5049 | 0 | T_listOfVariables_item_sequence, hf_index, ett_mms_T_listOfVariables_item); |
5050 | |
|
5051 | 0 | return offset; |
5052 | 0 | } |
5053 | | |
5054 | | |
5055 | | static const ber_sequence_t T_listOfVariables_01_sequence_of[1] = { |
5056 | | { &hf_mms_listOfVariables_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariables_item }, |
5057 | | }; |
5058 | | |
5059 | | static int |
5060 | 0 | dissect_mms_T_listOfVariables_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5061 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5062 | 0 | T_listOfVariables_01_sequence_of, hf_index, ett_mms_T_listOfVariables_01); |
5063 | |
|
5064 | 0 | return offset; |
5065 | 0 | } |
5066 | | |
5067 | | |
5068 | | static const ber_sequence_t T_data_sequence[] = { |
5069 | | { &hf_mms_event , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_event }, |
5070 | | { &hf_mms_listOfVariables_01, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariables_01 }, |
5071 | | { NULL, 0, 0, 0, NULL } |
5072 | | }; |
5073 | | |
5074 | | static int |
5075 | 0 | dissect_mms_T_data(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5076 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5077 | 0 | T_data_sequence, hf_index, ett_mms_T_data); |
5078 | |
|
5079 | 0 | return offset; |
5080 | 0 | } |
5081 | | |
5082 | | |
5083 | | static const value_string mms_T_entryForm_vals[] = { |
5084 | | { 2, "data" }, |
5085 | | { 3, "annotation" }, |
5086 | | { 0, NULL } |
5087 | | }; |
5088 | | |
5089 | | static const ber_choice_t T_entryForm_choice[] = { |
5090 | | { 2, &hf_mms_data , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_data }, |
5091 | | { 3, &hf_mms_annotation , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
5092 | | { 0, NULL, 0, 0, 0, NULL } |
5093 | | }; |
5094 | | |
5095 | | static int |
5096 | 0 | dissect_mms_T_entryForm(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5097 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
5098 | 0 | T_entryForm_choice, hf_index, ett_mms_T_entryForm, |
5099 | 0 | NULL); |
5100 | |
|
5101 | 0 | return offset; |
5102 | 0 | } |
5103 | | |
5104 | | |
5105 | | static const ber_sequence_t EntryContent_sequence[] = { |
5106 | | { &hf_mms_occurenceTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
5107 | | { &hf_mms_additionalDetail, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_mms_JOU_Additional_Detail }, |
5108 | | { &hf_mms_entryForm , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_entryForm }, |
5109 | | { NULL, 0, 0, 0, NULL } |
5110 | | }; |
5111 | | |
5112 | | static int |
5113 | 0 | dissect_mms_EntryContent(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5114 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5115 | 0 | EntryContent_sequence, hf_index, ett_mms_EntryContent); |
5116 | |
|
5117 | 0 | return offset; |
5118 | 0 | } |
5119 | | |
5120 | | |
5121 | | static const ber_sequence_t SEQUENCE_OF_EntryContent_sequence_of[1] = { |
5122 | | { &hf_mms_listOfJournalEntry_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_EntryContent }, |
5123 | | }; |
5124 | | |
5125 | | static int |
5126 | 0 | dissect_mms_SEQUENCE_OF_EntryContent(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5127 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5128 | 0 | SEQUENCE_OF_EntryContent_sequence_of, hf_index, ett_mms_SEQUENCE_OF_EntryContent); |
5129 | |
|
5130 | 0 | return offset; |
5131 | 0 | } |
5132 | | |
5133 | | |
5134 | | static const ber_sequence_t WriteJournal_Request_sequence[] = { |
5135 | | { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5136 | | { &hf_mms_listOfJournalEntry_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_EntryContent }, |
5137 | | { NULL, 0, 0, 0, NULL } |
5138 | | }; |
5139 | | |
5140 | | static int |
5141 | 0 | dissect_mms_WriteJournal_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5142 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5143 | 0 | WriteJournal_Request_sequence, hf_index, ett_mms_WriteJournal_Request); |
5144 | |
|
5145 | 0 | return offset; |
5146 | 0 | } |
5147 | | |
5148 | | |
5149 | | static const ber_sequence_t T_limitSpecification_sequence[] = { |
5150 | | { &hf_mms_limitingTime , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_TimeOfDay }, |
5151 | | { &hf_mms_limitingEntry , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
5152 | | { NULL, 0, 0, 0, NULL } |
5153 | | }; |
5154 | | |
5155 | | static int |
5156 | 0 | dissect_mms_T_limitSpecification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5157 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5158 | 0 | T_limitSpecification_sequence, hf_index, ett_mms_T_limitSpecification); |
5159 | |
|
5160 | 0 | return offset; |
5161 | 0 | } |
5162 | | |
5163 | | |
5164 | | static const ber_sequence_t InitializeJournal_Request_sequence[] = { |
5165 | | { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5166 | | { &hf_mms_limitSpecification, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_limitSpecification }, |
5167 | | { NULL, 0, 0, 0, NULL } |
5168 | | }; |
5169 | | |
5170 | | static int |
5171 | 0 | dissect_mms_InitializeJournal_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5172 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5173 | 0 | InitializeJournal_Request_sequence, hf_index, ett_mms_InitializeJournal_Request); |
5174 | |
|
5175 | 0 | return offset; |
5176 | 0 | } |
5177 | | |
5178 | | |
5179 | | |
5180 | | static int |
5181 | 0 | dissect_mms_ReportJournalStatus_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5182 | 0 | offset = dissect_mms_ObjectName(implicit_tag, tvb, offset, actx, tree, hf_index); |
5183 | |
|
5184 | 0 | return offset; |
5185 | 0 | } |
5186 | | |
5187 | | |
5188 | | static const ber_sequence_t CreateJournal_Request_sequence[] = { |
5189 | | { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5190 | | { NULL, 0, 0, 0, NULL } |
5191 | | }; |
5192 | | |
5193 | | static int |
5194 | 0 | dissect_mms_CreateJournal_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5195 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5196 | 0 | CreateJournal_Request_sequence, hf_index, ett_mms_CreateJournal_Request); |
5197 | |
|
5198 | 0 | return offset; |
5199 | 0 | } |
5200 | | |
5201 | | |
5202 | | static const ber_sequence_t DeleteJournal_Request_sequence[] = { |
5203 | | { &hf_mms_journalName , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
5204 | | { NULL, 0, 0, 0, NULL } |
5205 | | }; |
5206 | | |
5207 | | static int |
5208 | 0 | dissect_mms_DeleteJournal_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5209 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5210 | 0 | DeleteJournal_Request_sequence, hf_index, ett_mms_DeleteJournal_Request); |
5211 | |
|
5212 | 0 | return offset; |
5213 | 0 | } |
5214 | | |
5215 | | |
5216 | | static const ber_sequence_t GetCapabilityList_Request_sequence[] = { |
5217 | | { &hf_mms_getCapabilityList_Request_continueAfter, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
5218 | | { NULL, 0, 0, 0, NULL } |
5219 | | }; |
5220 | | |
5221 | | static int |
5222 | 33 | dissect_mms_GetCapabilityList_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5223 | 33 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5224 | 33 | GetCapabilityList_Request_sequence, hf_index, ett_mms_GetCapabilityList_Request); |
5225 | | |
5226 | 33 | return offset; |
5227 | 33 | } |
5228 | | |
5229 | | |
5230 | | static const ber_sequence_t FileOpen_Request_sequence[] = { |
5231 | | { &hf_mms_fileName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
5232 | | { &hf_mms_initialPosition , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
5233 | | { NULL, 0, 0, 0, NULL } |
5234 | | }; |
5235 | | |
5236 | | static int |
5237 | 0 | dissect_mms_FileOpen_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5238 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5239 | 0 | FileOpen_Request_sequence, hf_index, ett_mms_FileOpen_Request); |
5240 | |
|
5241 | 0 | return offset; |
5242 | 0 | } |
5243 | | |
5244 | | |
5245 | | |
5246 | | static int |
5247 | 10 | dissect_mms_FileRead_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5248 | 10 | offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index); |
5249 | | |
5250 | 10 | return offset; |
5251 | 10 | } |
5252 | | |
5253 | | |
5254 | | |
5255 | | static int |
5256 | 0 | dissect_mms_FileClose_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5257 | 0 | offset = dissect_mms_Integer32(implicit_tag, tvb, offset, actx, tree, hf_index); |
5258 | |
|
5259 | 0 | return offset; |
5260 | 0 | } |
5261 | | |
5262 | | |
5263 | | static const ber_sequence_t FileRename_Request_sequence[] = { |
5264 | | { &hf_mms_currentFileName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
5265 | | { &hf_mms_newFileName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
5266 | | { NULL, 0, 0, 0, NULL } |
5267 | | }; |
5268 | | |
5269 | | static int |
5270 | 0 | dissect_mms_FileRename_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5271 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5272 | 0 | FileRename_Request_sequence, hf_index, ett_mms_FileRename_Request); |
5273 | |
|
5274 | 0 | return offset; |
5275 | 0 | } |
5276 | | |
5277 | | |
5278 | | |
5279 | | static int |
5280 | 0 | dissect_mms_FileDelete_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5281 | 0 | offset = dissect_mms_FileName(implicit_tag, tvb, offset, actx, tree, hf_index); |
5282 | |
|
5283 | 0 | return offset; |
5284 | 0 | } |
5285 | | |
5286 | | |
5287 | | static const ber_sequence_t FileDirectory_Request_sequence[] = { |
5288 | | { &hf_mms_fileSpecification, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
5289 | | { &hf_mms_fileDirectory_Request_continueAfter, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
5290 | | { NULL, 0, 0, 0, NULL } |
5291 | | }; |
5292 | | |
5293 | | static int |
5294 | 0 | dissect_mms_FileDirectory_Request(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5295 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5296 | 0 | FileDirectory_Request_sequence, hf_index, ett_mms_FileDirectory_Request); |
5297 | |
|
5298 | 0 | return offset; |
5299 | 0 | } |
5300 | | |
5301 | | |
5302 | | static const value_string mms_ConfirmedServiceRequest_vals[] = { |
5303 | | { 0, "status" }, |
5304 | | { 1, "getNameList" }, |
5305 | | { 2, "identify" }, |
5306 | | { 3, "rename" }, |
5307 | | { 4, "read" }, |
5308 | | { 5, "write" }, |
5309 | | { 6, "getVariableAccessAttributes" }, |
5310 | | { 7, "defineNamedVariable" }, |
5311 | | { 8, "defineScatteredAccess" }, |
5312 | | { 9, "getScatteredAccessAttributes" }, |
5313 | | { 10, "deleteVariableAccess" }, |
5314 | | { 11, "defineNamedVariableList" }, |
5315 | | { 12, "getNamedVariableListAttributes" }, |
5316 | | { 13, "deleteNamedVariableList" }, |
5317 | | { 14, "defineNamedType" }, |
5318 | | { 15, "getNamedTypeAttributes" }, |
5319 | | { 16, "deleteNamedType" }, |
5320 | | { 17, "input" }, |
5321 | | { 18, "output" }, |
5322 | | { 19, "takeControl" }, |
5323 | | { 20, "relinquishControl" }, |
5324 | | { 21, "defineSemaphore" }, |
5325 | | { 22, "deleteSemaphore" }, |
5326 | | { 23, "reportSemaphoreStatus" }, |
5327 | | { 24, "reportPoolSemaphoreStatus" }, |
5328 | | { 25, "reportSemaphoreEntryStatus" }, |
5329 | | { 26, "initiateDownloadSequence" }, |
5330 | | { 27, "downloadSegment" }, |
5331 | | { 28, "terminateDownloadSequence" }, |
5332 | | { 29, "initiateUploadSequence" }, |
5333 | | { 30, "uploadSegment" }, |
5334 | | { 31, "terminateUploadSequence" }, |
5335 | | { 32, "requestDomainDownload" }, |
5336 | | { 33, "requestDomainUpload" }, |
5337 | | { 34, "loadDomainContent" }, |
5338 | | { 35, "storeDomainContent" }, |
5339 | | { 36, "deleteDomain" }, |
5340 | | { 37, "getDomainAttributes" }, |
5341 | | { 38, "createProgramInvocation" }, |
5342 | | { 39, "deleteProgramInvocation" }, |
5343 | | { 40, "start" }, |
5344 | | { 41, "stop" }, |
5345 | | { 42, "resume" }, |
5346 | | { 43, "reset" }, |
5347 | | { 44, "kill" }, |
5348 | | { 45, "getProgramInvocationAttributes" }, |
5349 | | { 46, "obtainFile" }, |
5350 | | { 47, "defineEventCondition" }, |
5351 | | { 48, "deleteEventCondition" }, |
5352 | | { 49, "getEventConditionAttributes" }, |
5353 | | { 50, "reportEventConditionStatus" }, |
5354 | | { 51, "alterEventConditionMonitoring" }, |
5355 | | { 52, "triggerEvent" }, |
5356 | | { 53, "defineEventAction" }, |
5357 | | { 54, "deleteEventAction" }, |
5358 | | { 55, "getEventActionAttributes" }, |
5359 | | { 56, "reportEventActionStatus" }, |
5360 | | { 57, "defineEventEnrollment" }, |
5361 | | { 58, "deleteEventEnrollment" }, |
5362 | | { 59, "alterEventEnrollment" }, |
5363 | | { 60, "reportEventEnrollmentStatus" }, |
5364 | | { 61, "getEventEnrollmentAttributes" }, |
5365 | | { 62, "acknowledgeEventNotification" }, |
5366 | | { 63, "getAlarmSummary" }, |
5367 | | { 64, "getAlarmEnrollmentSummary" }, |
5368 | | { 65, "readJournal" }, |
5369 | | { 66, "writeJournal" }, |
5370 | | { 67, "initializeJournal" }, |
5371 | | { 68, "reportJournalStatus" }, |
5372 | | { 69, "createJournal" }, |
5373 | | { 70, "deleteJournal" }, |
5374 | | { 71, "getCapabilityList" }, |
5375 | | { 72, "fileOpen" }, |
5376 | | { 73, "fileRead" }, |
5377 | | { 74, "fileClose" }, |
5378 | | { 75, "fileRename" }, |
5379 | | { 76, "fileDelete" }, |
5380 | | { 77, "fileDirectory" }, |
5381 | | { 0, NULL } |
5382 | | }; |
5383 | | |
5384 | | static const ber_choice_t ConfirmedServiceRequest_choice[] = { |
5385 | | { 0, &hf_mms_status , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Status_Request }, |
5386 | | { 1, &hf_mms_getNameList , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_GetNameList_Request }, |
5387 | | { 2, &hf_mms_identify , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identify_Request }, |
5388 | | { 3, &hf_mms_rename , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Rename_Request }, |
5389 | | { 4, &hf_mms_read , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Read_Request }, |
5390 | | { 5, &hf_mms_write , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Write_Request }, |
5391 | | { 6, &hf_mms_getVariableAccessAttributes, BER_CLASS_CON, 6, 0, dissect_mms_GetVariableAccessAttributes_Request }, |
5392 | | { 7, &hf_mms_defineNamedVariable, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariable_Request }, |
5393 | | { 8, &hf_mms_defineScatteredAccess, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_DefineScatteredAccess_Request }, |
5394 | | { 9, &hf_mms_getScatteredAccessAttributes, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_GetScatteredAccessAttributes_Request }, |
5395 | | { 10, &hf_mms_deleteVariableAccess, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Request }, |
5396 | | { 11, &hf_mms_defineNamedVariableList, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariableList_Request }, |
5397 | | { 12, &hf_mms_getNamedVariableListAttributes, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedVariableListAttributes_Request }, |
5398 | | { 13, &hf_mms_deleteNamedVariableList, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Request }, |
5399 | | { 14, &hf_mms_defineNamedType , BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedType_Request }, |
5400 | | { 15, &hf_mms_getNamedTypeAttributes, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedTypeAttributes_Request }, |
5401 | | { 16, &hf_mms_deleteNamedType , BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Request }, |
5402 | | { 17, &hf_mms_input , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_Input_Request }, |
5403 | | { 18, &hf_mms_output , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_mms_Output_Request }, |
5404 | | { 19, &hf_mms_takeControl , BER_CLASS_CON, 19, BER_FLAGS_IMPLTAG, dissect_mms_TakeControl_Request }, |
5405 | | { 20, &hf_mms_relinquishControl, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_mms_RelinquishControl_Request }, |
5406 | | { 21, &hf_mms_defineSemaphore , BER_CLASS_CON, 21, BER_FLAGS_IMPLTAG, dissect_mms_DefineSemaphore_Request }, |
5407 | | { 22, &hf_mms_deleteSemaphore , BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_mms_DeleteSemaphore_Request }, |
5408 | | { 23, &hf_mms_reportSemaphoreStatus, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreStatus_Request }, |
5409 | | { 24, &hf_mms_reportPoolSemaphoreStatus, BER_CLASS_CON, 24, BER_FLAGS_IMPLTAG, dissect_mms_ReportPoolSemaphoreStatus_Request }, |
5410 | | { 25, &hf_mms_reportSemaphoreEntryStatus, BER_CLASS_CON, 25, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreEntryStatus_Request }, |
5411 | | { 26, &hf_mms_initiateDownloadSequence, BER_CLASS_CON, 26, BER_FLAGS_IMPLTAG, dissect_mms_InitiateDownloadSequence_Request }, |
5412 | | { 27, &hf_mms_downloadSegment , BER_CLASS_CON, 27, BER_FLAGS_IMPLTAG, dissect_mms_DownloadSegment_Request }, |
5413 | | { 28, &hf_mms_terminateDownloadSequence, BER_CLASS_CON, 28, BER_FLAGS_IMPLTAG, dissect_mms_TerminateDownloadSequence_Request }, |
5414 | | { 29, &hf_mms_initiateUploadSequence, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_mms_InitiateUploadSequence_Request }, |
5415 | | { 30, &hf_mms_uploadSegment , BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_mms_UploadSegment_Request }, |
5416 | | { 31, &hf_mms_terminateUploadSequence, BER_CLASS_CON, 31, BER_FLAGS_IMPLTAG, dissect_mms_TerminateUploadSequence_Request }, |
5417 | | { 32, &hf_mms_requestDomainDownload, BER_CLASS_CON, 32, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainDownload_Request }, |
5418 | | { 33, &hf_mms_requestDomainUpload, BER_CLASS_CON, 33, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainUpload_Request }, |
5419 | | { 34, &hf_mms_loadDomainContent, BER_CLASS_CON, 34, BER_FLAGS_IMPLTAG, dissect_mms_LoadDomainContent_Request }, |
5420 | | { 35, &hf_mms_storeDomainContent, BER_CLASS_CON, 35, BER_FLAGS_IMPLTAG, dissect_mms_StoreDomainContent_Request }, |
5421 | | { 36, &hf_mms_deleteDomain , BER_CLASS_CON, 36, BER_FLAGS_IMPLTAG, dissect_mms_DeleteDomain_Request }, |
5422 | | { 37, &hf_mms_getDomainAttributes, BER_CLASS_CON, 37, BER_FLAGS_IMPLTAG, dissect_mms_GetDomainAttributes_Request }, |
5423 | | { 38, &hf_mms_createProgramInvocation, BER_CLASS_CON, 38, BER_FLAGS_IMPLTAG, dissect_mms_CreateProgramInvocation_Request }, |
5424 | | { 39, &hf_mms_deleteProgramInvocation, BER_CLASS_CON, 39, BER_FLAGS_IMPLTAG, dissect_mms_DeleteProgramInvocation_Request }, |
5425 | | { 40, &hf_mms_start , BER_CLASS_CON, 40, BER_FLAGS_IMPLTAG, dissect_mms_Start_Request }, |
5426 | | { 41, &hf_mms_stop , BER_CLASS_CON, 41, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Request }, |
5427 | | { 42, &hf_mms_resume , BER_CLASS_CON, 42, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Request }, |
5428 | | { 43, &hf_mms_reset , BER_CLASS_CON, 43, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Request }, |
5429 | | { 44, &hf_mms_kill , BER_CLASS_CON, 44, BER_FLAGS_IMPLTAG, dissect_mms_Kill_Request }, |
5430 | | { 45, &hf_mms_getProgramInvocationAttributes, BER_CLASS_CON, 45, BER_FLAGS_IMPLTAG, dissect_mms_GetProgramInvocationAttributes_Request }, |
5431 | | { 46, &hf_mms_obtainFile , BER_CLASS_CON, 46, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Request }, |
5432 | | { 47, &hf_mms_defineEventCondition, BER_CLASS_CON, 47, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventCondition_Request }, |
5433 | | { 48, &hf_mms_confirmedServiceRequest_deleteEventCondition, BER_CLASS_CON, 48, 0, dissect_mms_DeleteEventCondition_Request }, |
5434 | | { 49, &hf_mms_getEventConditionAttributes, BER_CLASS_CON, 49, 0, dissect_mms_GetEventConditionAttributes_Request }, |
5435 | | { 50, &hf_mms_reportEventConditionStatus, BER_CLASS_CON, 50, 0, dissect_mms_ReportEventConditionStatus_Request }, |
5436 | | { 51, &hf_mms_alterEventConditionMonitoring, BER_CLASS_CON, 51, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventConditionMonitoring_Request }, |
5437 | | { 52, &hf_mms_triggerEvent , BER_CLASS_CON, 52, BER_FLAGS_IMPLTAG, dissect_mms_TriggerEvent_Request }, |
5438 | | { 53, &hf_mms_defineEventAction, BER_CLASS_CON, 53, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventAction_Request }, |
5439 | | { 54, &hf_mms_confirmedServiceRequest_deleteEventAction, BER_CLASS_CON, 54, 0, dissect_mms_DeleteEventAction_Request }, |
5440 | | { 55, &hf_mms_getEventActionAttributes, BER_CLASS_CON, 55, 0, dissect_mms_GetEventActionAttributes_Request }, |
5441 | | { 56, &hf_mms_reportEventActionStatus, BER_CLASS_CON, 56, 0, dissect_mms_ReportEventActionStatus_Request }, |
5442 | | { 57, &hf_mms_defineEventEnrollment, BER_CLASS_CON, 57, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventEnrollment_Request }, |
5443 | | { 58, &hf_mms_confirmedServiceRequest_deleteEventEnrollment, BER_CLASS_CON, 58, 0, dissect_mms_DeleteEventEnrollment_Request }, |
5444 | | { 59, &hf_mms_alterEventEnrollment, BER_CLASS_CON, 59, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventEnrollment_Request }, |
5445 | | { 60, &hf_mms_reportEventEnrollmentStatus, BER_CLASS_CON, 60, 0, dissect_mms_ReportEventEnrollmentStatus_Request }, |
5446 | | { 61, &hf_mms_getEventEnrollmentAttributes, BER_CLASS_CON, 61, BER_FLAGS_IMPLTAG, dissect_mms_GetEventEnrollmentAttributes_Request }, |
5447 | | { 62, &hf_mms_acknowledgeEventNotification, BER_CLASS_CON, 62, BER_FLAGS_IMPLTAG, dissect_mms_AcknowledgeEventNotification_Request }, |
5448 | | { 63, &hf_mms_getAlarmSummary , BER_CLASS_CON, 63, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmSummary_Request }, |
5449 | | { 64, &hf_mms_getAlarmEnrollmentSummary, BER_CLASS_CON, 64, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmEnrollmentSummary_Request }, |
5450 | | { 65, &hf_mms_readJournal , BER_CLASS_CON, 65, BER_FLAGS_IMPLTAG, dissect_mms_ReadJournal_Request }, |
5451 | | { 66, &hf_mms_writeJournal , BER_CLASS_CON, 66, BER_FLAGS_IMPLTAG, dissect_mms_WriteJournal_Request }, |
5452 | | { 67, &hf_mms_initializeJournal, BER_CLASS_CON, 67, BER_FLAGS_IMPLTAG, dissect_mms_InitializeJournal_Request }, |
5453 | | { 68, &hf_mms_reportJournalStatus, BER_CLASS_CON, 68, BER_FLAGS_IMPLTAG, dissect_mms_ReportJournalStatus_Request }, |
5454 | | { 69, &hf_mms_createJournal , BER_CLASS_CON, 69, BER_FLAGS_IMPLTAG, dissect_mms_CreateJournal_Request }, |
5455 | | { 70, &hf_mms_deleteJournal , BER_CLASS_CON, 70, BER_FLAGS_IMPLTAG, dissect_mms_DeleteJournal_Request }, |
5456 | | { 71, &hf_mms_getCapabilityList, BER_CLASS_CON, 71, BER_FLAGS_IMPLTAG, dissect_mms_GetCapabilityList_Request }, |
5457 | | { 72, &hf_mms_fileOpen , BER_CLASS_CON, 72, BER_FLAGS_IMPLTAG, dissect_mms_FileOpen_Request }, |
5458 | | { 73, &hf_mms_fileRead , BER_CLASS_CON, 73, BER_FLAGS_IMPLTAG, dissect_mms_FileRead_Request }, |
5459 | | { 74, &hf_mms_fileClose , BER_CLASS_CON, 74, BER_FLAGS_IMPLTAG, dissect_mms_FileClose_Request }, |
5460 | | { 75, &hf_mms_fileRename , BER_CLASS_CON, 75, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Request }, |
5461 | | { 76, &hf_mms_fileDelete , BER_CLASS_CON, 76, BER_FLAGS_IMPLTAG, dissect_mms_FileDelete_Request }, |
5462 | | { 77, &hf_mms_fileDirectory , BER_CLASS_CON, 77, BER_FLAGS_IMPLTAG, dissect_mms_FileDirectory_Request }, |
5463 | | { 0, NULL, 0, 0, 0, NULL } |
5464 | | }; |
5465 | | |
5466 | | static int |
5467 | 254 | dissect_mms_ConfirmedServiceRequest(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5468 | 254 | int8_t ber_class; |
5469 | 254 | bool pc; |
5470 | 254 | int32_t tag; |
5471 | | |
5472 | 254 | get_ber_identifier(tvb, offset, &ber_class, &pc, &tag); |
5473 | 254 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
5474 | 254 | if(mms_priv){ |
5475 | 254 | mms_priv->confirmedservice_type = tag; |
5476 | 254 | } |
5477 | | |
5478 | 254 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
5479 | 254 | ConfirmedServiceRequest_choice, hf_index, ett_mms_ConfirmedServiceRequest, |
5480 | 254 | NULL); |
5481 | | |
5482 | | |
5483 | 254 | if(mms_priv && mms_priv->mms_trans_p){ |
5484 | 5 | if(mms_priv->confirmedservice_type == MMS_CONFIRMEDSERVICE_GETNAMELIST){ |
5485 | 0 | if(mms_priv->objectclass == MMS_OBJECTCLASS_DOMAIN){ |
5486 | 0 | if(mms_priv->objectscope == MMS_OBJECTSCOPE_VMDSPECIFIC){ |
5487 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_GET_SERV_DIR; |
5488 | 0 | } |
5489 | 0 | }else if(mms_priv->objectclass == MMS_OBJECTCLASS_NAMMEDVARIABLE){ |
5490 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_GETLOGICALDEVICEDIRECTORY; |
5491 | 0 | }else if(mms_priv->objectclass == MMS_OBJECTCLASS_NAMEDVARIABLELIST){ |
5492 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_GETDATASETDIRECTORY; |
5493 | 0 | } |
5494 | 5 | }else if(mms_priv->confirmedservice_type == MMS_CONFIRMEDSERVICE_GETNAMEDVARIABLELISTATTRIBUTES){ |
5495 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_GETDATASETDIRECTORY; |
5496 | 5 | }else if(mms_priv->confirmedservice_type == MMS_CONFIRMEDSERVICE_READ){ |
5497 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_READ; |
5498 | 5 | }else if(mms_priv->confirmedservice_type == MMS_CONFIRMEDSERVICE_WRITE){ |
5499 | 1 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_WRITE; |
5500 | 4 | }else if(mms_priv->confirmedservice_type == MMS_CONFIRMEDSERVICE_GETVARIABLEACCESSATTRIBUTES){ |
5501 | 0 | mms_priv->mms_trans_p->conf_serv_pdu_type_req = MMS_IEC_61850_CONF_SERV_PDU_GETDATADIRECTORY; |
5502 | 0 | } |
5503 | 5 | } |
5504 | | |
5505 | | |
5506 | | |
5507 | 254 | return offset; |
5508 | 254 | } |
5509 | | |
5510 | | |
5511 | | static const value_string mms_CS_Request_Detail_vals[] = { |
5512 | | { 0, "foo" }, |
5513 | | { 0, NULL } |
5514 | | }; |
5515 | | |
5516 | | static const ber_choice_t CS_Request_Detail_choice[] = { |
5517 | | { 0, &hf_mms_foo , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_INTEGER }, |
5518 | | { 0, NULL, 0, 0, 0, NULL } |
5519 | | }; |
5520 | | |
5521 | | static int |
5522 | 0 | dissect_mms_CS_Request_Detail(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5523 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
5524 | 0 | CS_Request_Detail_choice, hf_index, ett_mms_CS_Request_Detail, |
5525 | 0 | NULL); |
5526 | |
|
5527 | 0 | return offset; |
5528 | 0 | } |
5529 | | |
5530 | | |
5531 | | static const ber_sequence_t Confirmed_RequestPDU_sequence[] = { |
5532 | | { &hf_mms_invokeID , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_Unsigned32 }, |
5533 | | { &hf_mms_listOfModifier , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_mms_SEQUENCE_OF_Modifier }, |
5534 | | { &hf_mms_confirmedServiceRequest, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ConfirmedServiceRequest }, |
5535 | | { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail }, |
5536 | | { NULL, 0, 0, 0, NULL } |
5537 | | }; |
5538 | | |
5539 | | static int |
5540 | 318 | dissect_mms_Confirmed_RequestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5541 | | |
5542 | 318 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5543 | 318 | Confirmed_RequestPDU_sequence, hf_index, ett_mms_Confirmed_RequestPDU); |
5544 | | |
5545 | 318 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
5546 | 318 | if(tree && mms_priv){ |
5547 | 111 | mms_priv->pdu_item = (proto_item*)tree->last_child; |
5548 | 111 | } |
5549 | | |
5550 | | |
5551 | 318 | return offset; |
5552 | 318 | } |
5553 | | |
5554 | | |
5555 | | static const value_string mms_T_vmdLogicalStatus_vals[] = { |
5556 | | { 0, "state-changes-allowed" }, |
5557 | | { 1, "no-state-changes-allowed" }, |
5558 | | { 2, "limited-services-allowed" }, |
5559 | | { 3, "support-services-allowed" }, |
5560 | | { 0, NULL } |
5561 | | }; |
5562 | | |
5563 | | |
5564 | | static int |
5565 | 0 | dissect_mms_T_vmdLogicalStatus(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5566 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
5567 | 0 | NULL); |
5568 | |
|
5569 | 0 | return offset; |
5570 | 0 | } |
5571 | | |
5572 | | |
5573 | | static const value_string mms_T_vmdPhysicalStatus_vals[] = { |
5574 | | { 0, "operational" }, |
5575 | | { 1, "partially-operational" }, |
5576 | | { 2, "inoperable" }, |
5577 | | { 3, "needs-commissioning" }, |
5578 | | { 0, NULL } |
5579 | | }; |
5580 | | |
5581 | | |
5582 | | static int |
5583 | 0 | dissect_mms_T_vmdPhysicalStatus(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5584 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
5585 | 0 | NULL); |
5586 | |
|
5587 | 0 | return offset; |
5588 | 0 | } |
5589 | | |
5590 | | |
5591 | | |
5592 | | static int |
5593 | 0 | dissect_mms_BIT_STRING_SIZE_0_128(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5594 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
5595 | 0 | NULL, 0, hf_index, -1, |
5596 | 0 | NULL); |
5597 | |
|
5598 | 0 | return offset; |
5599 | 0 | } |
5600 | | |
5601 | | |
5602 | | static const ber_sequence_t Status_Response_sequence[] = { |
5603 | | { &hf_mms_vmdLogicalStatus, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_vmdLogicalStatus }, |
5604 | | { &hf_mms_vmdPhysicalStatus, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_vmdPhysicalStatus }, |
5605 | | { &hf_mms_localDetail , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BIT_STRING_SIZE_0_128 }, |
5606 | | { NULL, 0, 0, 0, NULL } |
5607 | | }; |
5608 | | |
5609 | | static int |
5610 | 1 | dissect_mms_Status_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5611 | 1 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5612 | 1 | Status_Response_sequence, hf_index, ett_mms_Status_Response); |
5613 | | |
5614 | 1 | return offset; |
5615 | 1 | } |
5616 | | |
5617 | | |
5618 | | static const ber_sequence_t GetNameList_Response_sequence[] = { |
5619 | | { &hf_mms_listOfIdentifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier }, |
5620 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
5621 | | { NULL, 0, 0, 0, NULL } |
5622 | | }; |
5623 | | |
5624 | | static int |
5625 | 4 | dissect_mms_GetNameList_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5626 | 4 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5627 | 4 | GetNameList_Response_sequence, hf_index, ett_mms_GetNameList_Response); |
5628 | | |
5629 | 4 | return offset; |
5630 | 4 | } |
5631 | | |
5632 | | |
5633 | | static const ber_sequence_t T_listOfAbstractSyntaxes_sequence_of[1] = { |
5634 | | { &hf_mms_listOfAbstractSyntaxes_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_mms_OBJECT_IDENTIFIER }, |
5635 | | }; |
5636 | | |
5637 | | static int |
5638 | 0 | dissect_mms_T_listOfAbstractSyntaxes(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5639 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5640 | 0 | T_listOfAbstractSyntaxes_sequence_of, hf_index, ett_mms_T_listOfAbstractSyntaxes); |
5641 | |
|
5642 | 0 | return offset; |
5643 | 0 | } |
5644 | | |
5645 | | |
5646 | | static const ber_sequence_t Identify_Response_sequence[] = { |
5647 | | { &hf_mms_vendorName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
5648 | | { &hf_mms_modelName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
5649 | | { &hf_mms_revision , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
5650 | | { &hf_mms_listOfAbstractSyntaxes, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_listOfAbstractSyntaxes }, |
5651 | | { NULL, 0, 0, 0, NULL } |
5652 | | }; |
5653 | | |
5654 | | static int |
5655 | 0 | dissect_mms_Identify_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5656 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5657 | 0 | Identify_Response_sequence, hf_index, ett_mms_Identify_Response); |
5658 | |
|
5659 | 0 | return offset; |
5660 | 0 | } |
5661 | | |
5662 | | |
5663 | | |
5664 | | static int |
5665 | 0 | dissect_mms_Rename_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5666 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5667 | |
|
5668 | 0 | return offset; |
5669 | 0 | } |
5670 | | |
5671 | | |
5672 | | static const value_string mms_DataAccessError_vals[] = { |
5673 | | { 0, "object-invalidated" }, |
5674 | | { 1, "hardware-fault" }, |
5675 | | { 2, "temporarily-unavailable" }, |
5676 | | { 3, "object-access-denied" }, |
5677 | | { 4, "object-undefined" }, |
5678 | | { 5, "invalid-address" }, |
5679 | | { 6, "type-unsupported" }, |
5680 | | { 7, "type-inconsistent" }, |
5681 | | { 8, "object-attribute-inconsistent" }, |
5682 | | { 9, "object-access-unsupported" }, |
5683 | | { 10, "object-non-existent" }, |
5684 | | { 11, "object-value-invalid" }, |
5685 | | { 0, NULL } |
5686 | | }; |
5687 | | |
5688 | | |
5689 | | static int |
5690 | 0 | dissect_mms_DataAccessError(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5691 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
5692 | 0 | NULL); |
5693 | |
|
5694 | 0 | return offset; |
5695 | 0 | } |
5696 | | |
5697 | | |
5698 | | static const value_string mms_AccessResult_vals[] = { |
5699 | | { 0, "failure" }, |
5700 | | { 1, "success" }, |
5701 | | { 0, NULL } |
5702 | | }; |
5703 | | |
5704 | | static const ber_choice_t AccessResult_choice[] = { |
5705 | | { 0, &hf_mms_failure , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_DataAccessError }, |
5706 | | { 1, &hf_mms_success_01 , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_mms_Data }, |
5707 | | { 0, NULL, 0, 0, 0, NULL } |
5708 | | }; |
5709 | | |
5710 | | static int |
5711 | 0 | dissect_mms_AccessResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5712 | 0 | int branch_taken; |
5713 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
5714 | 0 | if(mms_priv){ |
5715 | | /* If listOfAccessResult_cnt > 2 we are into the optional data. |
5716 | | * if data is not present increase count. |
5717 | | */ |
5718 | 0 | bool present; |
5719 | 0 | do { |
5720 | 0 | mms_priv->listOfAccessResult_cnt+=1; |
5721 | 0 | present = true; |
5722 | 0 | switch(mms_priv->listOfAccessResult_cnt){ |
5723 | 0 | case 1: /*RptID*/ |
5724 | 0 | break; |
5725 | 0 | case 2: /* Reported OptFlds */ |
5726 | 0 | break; |
5727 | 0 | case 3: /* SeqNum Shall be present if OptFlds.sequence-number is true */ |
5728 | 0 | if((mms_priv->reported_optflds & 0x4000) != 0x4000){ |
5729 | 0 | present = false; |
5730 | 0 | } |
5731 | 0 | break; |
5732 | 0 | case 4: /*TimeOfEntry Shall be present if OptFlds.report-time-stamp is true */ |
5733 | 0 | if((mms_priv->reported_optflds & 0x2000) != 0x2000){ |
5734 | 0 | present = false; |
5735 | 0 | } |
5736 | 0 | break; |
5737 | 0 | case 5: /*DatSet Shall be present if OptFlds.data-set-name is true */ |
5738 | 0 | if((mms_priv->reported_optflds & 0x0800) !=0x0800){ |
5739 | 0 | present = false; |
5740 | 0 | } |
5741 | 0 | break; |
5742 | 0 | case 6: /*BufOvfl Shall be present if OptFlds.buffer-overflow is true */ |
5743 | 0 | if((mms_priv->reported_optflds & 0x0200) !=0x0200){ |
5744 | 0 | present = false; |
5745 | 0 | } |
5746 | 0 | break; |
5747 | 0 | case 7: /*EntryID Shall be present if OptFlds.entryID is true */ |
5748 | 0 | if((mms_priv->reported_optflds & 0x0100) !=0x0100){ |
5749 | 0 | present = false; |
5750 | 0 | } |
5751 | 0 | break; |
5752 | 0 | case 8: /*ConfRev Shall be present if OptFlds.conf-rev is true */ |
5753 | 0 | if((mms_priv->reported_optflds & 0x0080) !=0x0080){ |
5754 | 0 | present = false; |
5755 | 0 | } |
5756 | 0 | break; |
5757 | 0 | case 9: /*SubSeqNum Shall be present if OptFlds.segmentation is true */ |
5758 | 0 | if((mms_priv->reported_optflds & 0x0040) !=0x0040){ |
5759 | 0 | present = false; |
5760 | 0 | } |
5761 | 0 | break; |
5762 | 0 | case 10: /*MoreSegmentsFollow Shall be present if OptFlds.segmentation is true */ |
5763 | 0 | if((mms_priv->reported_optflds & 0x0040) !=0x0040){ |
5764 | 0 | present = false; |
5765 | 0 | } |
5766 | 0 | break; |
5767 | 0 | case 11: /*Inclusion-bitstring Shall be present */ |
5768 | 0 | break; |
5769 | 0 | case 12: /*data-reference(s) Shall be present if OptFlds.data-reference is true */ |
5770 | 0 | if((mms_priv->reported_optflds & 0x0400) !=0x0400){ |
5771 | 0 | present = false; |
5772 | 0 | } |
5773 | 0 | break; |
5774 | 0 | case 13: /*value(s) See AccessResult for value(s) */ |
5775 | 0 | break; |
5776 | 0 | case 14: /*ReasonCode(s) Shall be present if OptFlds OptFlds.reason-for-inclusion is true */ |
5777 | 0 | if((mms_priv->reported_optflds & 0x1000) !=0x1000){ |
5778 | 0 | present = false; |
5779 | 0 | } |
5780 | 0 | break; |
5781 | 0 | default: |
5782 | 0 | break; |
5783 | 0 | } |
5784 | 0 | } while(!present); |
5785 | 0 | } |
5786 | | |
5787 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
5788 | 0 | AccessResult_choice, hf_index, ett_mms_AccessResult, |
5789 | 0 | &branch_taken); |
5790 | |
|
5791 | 0 | if(mms_priv){ |
5792 | 0 | mms_priv->success = branch_taken; |
5793 | 0 | } |
5794 | | |
5795 | |
|
5796 | 0 | return offset; |
5797 | 0 | } |
5798 | | |
5799 | | |
5800 | | static const ber_sequence_t SEQUENCE_OF_AccessResult_sequence_of[1] = { |
5801 | | { &hf_mms_listOfAccessResult_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AccessResult }, |
5802 | | }; |
5803 | | |
5804 | | static int |
5805 | 0 | dissect_mms_SEQUENCE_OF_AccessResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5806 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5807 | 0 | SEQUENCE_OF_AccessResult_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AccessResult); |
5808 | |
|
5809 | 0 | return offset; |
5810 | 0 | } |
5811 | | |
5812 | | |
5813 | | static const ber_sequence_t Read_Response_sequence[] = { |
5814 | | { &hf_mms_variableAccessSpecificatn, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification }, |
5815 | | { &hf_mms_listOfAccessResult, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AccessResult }, |
5816 | | { NULL, 0, 0, 0, NULL } |
5817 | | }; |
5818 | | |
5819 | | static int |
5820 | 0 | dissect_mms_Read_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5821 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5822 | 0 | Read_Response_sequence, hf_index, ett_mms_Read_Response); |
5823 | |
|
5824 | 0 | return offset; |
5825 | 0 | } |
5826 | | |
5827 | | |
5828 | | static const value_string mms_Write_Response_item_vals[] = { |
5829 | | { 0, "failure" }, |
5830 | | { 1, "success" }, |
5831 | | { 0, NULL } |
5832 | | }; |
5833 | | |
5834 | | static const ber_choice_t Write_Response_item_choice[] = { |
5835 | | { 0, &hf_mms_failure , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_DataAccessError }, |
5836 | | { 1, &hf_mms_success , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
5837 | | { 0, NULL, 0, 0, 0, NULL } |
5838 | | }; |
5839 | | |
5840 | | static int |
5841 | 0 | dissect_mms_Write_Response_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5842 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
5843 | 0 | Write_Response_item_choice, hf_index, ett_mms_Write_Response_item, |
5844 | 0 | NULL); |
5845 | |
|
5846 | 0 | return offset; |
5847 | 0 | } |
5848 | | |
5849 | | |
5850 | | static const ber_sequence_t Write_Response_sequence_of[1] = { |
5851 | | { &hf_mms_Write_Response_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_Write_Response_item }, |
5852 | | }; |
5853 | | |
5854 | | static int |
5855 | 10 | dissect_mms_Write_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5856 | 10 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5857 | 10 | Write_Response_sequence_of, hf_index, ett_mms_Write_Response); |
5858 | | |
5859 | 10 | return offset; |
5860 | 10 | } |
5861 | | |
5862 | | |
5863 | | static const ber_sequence_t GetVariableAccessAttributes_Response_sequence[] = { |
5864 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
5865 | | { &hf_mms_address , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_Address }, |
5866 | | { &hf_mms_typeSpecification, BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
5867 | | { NULL, 0, 0, 0, NULL } |
5868 | | }; |
5869 | | |
5870 | | static int |
5871 | 0 | dissect_mms_GetVariableAccessAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5872 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5873 | 0 | GetVariableAccessAttributes_Response_sequence, hf_index, ett_mms_GetVariableAccessAttributes_Response); |
5874 | |
|
5875 | 0 | return offset; |
5876 | 0 | } |
5877 | | |
5878 | | |
5879 | | |
5880 | | static int |
5881 | 0 | dissect_mms_DefineNamedVariable_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5882 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5883 | |
|
5884 | 0 | return offset; |
5885 | 0 | } |
5886 | | |
5887 | | |
5888 | | |
5889 | | static int |
5890 | 0 | dissect_mms_DefineScatteredAccess_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5891 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5892 | |
|
5893 | 0 | return offset; |
5894 | 0 | } |
5895 | | |
5896 | | |
5897 | | static const ber_sequence_t GetScatteredAccessAttributes_Response_sequence[] = { |
5898 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
5899 | | { &hf_mms_scatteredAccessDescription, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ScatteredAccessDescription }, |
5900 | | { NULL, 0, 0, 0, NULL } |
5901 | | }; |
5902 | | |
5903 | | static int |
5904 | 0 | dissect_mms_GetScatteredAccessAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5905 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5906 | 0 | GetScatteredAccessAttributes_Response_sequence, hf_index, ett_mms_GetScatteredAccessAttributes_Response); |
5907 | |
|
5908 | 0 | return offset; |
5909 | 0 | } |
5910 | | |
5911 | | |
5912 | | static const ber_sequence_t DeleteVariableAccess_Response_sequence[] = { |
5913 | | { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
5914 | | { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
5915 | | { NULL, 0, 0, 0, NULL } |
5916 | | }; |
5917 | | |
5918 | | static int |
5919 | 0 | dissect_mms_DeleteVariableAccess_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5920 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5921 | 0 | DeleteVariableAccess_Response_sequence, hf_index, ett_mms_DeleteVariableAccess_Response); |
5922 | |
|
5923 | 0 | return offset; |
5924 | 0 | } |
5925 | | |
5926 | | |
5927 | | |
5928 | | static int |
5929 | 0 | dissect_mms_DefineNamedVariableList_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5930 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5931 | |
|
5932 | 0 | return offset; |
5933 | 0 | } |
5934 | | |
5935 | | |
5936 | | static const ber_sequence_t T_listOfVariable_item_01_sequence[] = { |
5937 | | { &hf_mms_variableSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableSpecification }, |
5938 | | { &hf_mms_alternateAccess , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlternateAccess }, |
5939 | | { NULL, 0, 0, 0, NULL } |
5940 | | }; |
5941 | | |
5942 | | static int |
5943 | 0 | dissect_mms_T_listOfVariable_item_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5944 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5945 | 0 | T_listOfVariable_item_01_sequence, hf_index, ett_mms_T_listOfVariable_item_01); |
5946 | |
|
5947 | 0 | return offset; |
5948 | 0 | } |
5949 | | |
5950 | | |
5951 | | static const ber_sequence_t T_listOfVariable_01_sequence_of[1] = { |
5952 | | { &hf_mms_listOfVariable_item_01, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_T_listOfVariable_item_01 }, |
5953 | | }; |
5954 | | |
5955 | | static int |
5956 | 0 | dissect_mms_T_listOfVariable_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5957 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
5958 | 0 | T_listOfVariable_01_sequence_of, hf_index, ett_mms_T_listOfVariable_01); |
5959 | |
|
5960 | 0 | return offset; |
5961 | 0 | } |
5962 | | |
5963 | | |
5964 | | static const ber_sequence_t GetNamedVariableListAttributes_Response_sequence[] = { |
5965 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
5966 | | { &hf_mms_listOfVariable_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfVariable_01 }, |
5967 | | { NULL, 0, 0, 0, NULL } |
5968 | | }; |
5969 | | |
5970 | | static int |
5971 | 0 | dissect_mms_GetNamedVariableListAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5972 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5973 | 0 | GetNamedVariableListAttributes_Response_sequence, hf_index, ett_mms_GetNamedVariableListAttributes_Response); |
5974 | |
|
5975 | 0 | return offset; |
5976 | 0 | } |
5977 | | |
5978 | | |
5979 | | static const ber_sequence_t DeleteNamedVariableList_Response_sequence[] = { |
5980 | | { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
5981 | | { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
5982 | | { NULL, 0, 0, 0, NULL } |
5983 | | }; |
5984 | | |
5985 | | static int |
5986 | 0 | dissect_mms_DeleteNamedVariableList_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5987 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
5988 | 0 | DeleteNamedVariableList_Response_sequence, hf_index, ett_mms_DeleteNamedVariableList_Response); |
5989 | |
|
5990 | 0 | return offset; |
5991 | 0 | } |
5992 | | |
5993 | | |
5994 | | |
5995 | | static int |
5996 | 0 | dissect_mms_DefineNamedType_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
5997 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
5998 | |
|
5999 | 0 | return offset; |
6000 | 0 | } |
6001 | | |
6002 | | |
6003 | | static const ber_sequence_t GetNamedTypeAttributes_Response_sequence[] = { |
6004 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6005 | | { &hf_mms_typeSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_TypeSpecification }, |
6006 | | { NULL, 0, 0, 0, NULL } |
6007 | | }; |
6008 | | |
6009 | | static int |
6010 | 0 | dissect_mms_GetNamedTypeAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6011 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6012 | 0 | GetNamedTypeAttributes_Response_sequence, hf_index, ett_mms_GetNamedTypeAttributes_Response); |
6013 | |
|
6014 | 0 | return offset; |
6015 | 0 | } |
6016 | | |
6017 | | |
6018 | | static const ber_sequence_t DeleteNamedType_Response_sequence[] = { |
6019 | | { &hf_mms_numberMatched , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6020 | | { &hf_mms_numberDeleted , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6021 | | { NULL, 0, 0, 0, NULL } |
6022 | | }; |
6023 | | |
6024 | | static int |
6025 | 1 | dissect_mms_DeleteNamedType_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6026 | 1 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6027 | 1 | DeleteNamedType_Response_sequence, hf_index, ett_mms_DeleteNamedType_Response); |
6028 | | |
6029 | 1 | return offset; |
6030 | 1 | } |
6031 | | |
6032 | | |
6033 | | |
6034 | | static int |
6035 | 0 | dissect_mms_Input_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6036 | 0 | offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString, |
6037 | 0 | actx, tree, tvb, offset, hf_index, |
6038 | 0 | NULL); |
6039 | |
|
6040 | 0 | return offset; |
6041 | 0 | } |
6042 | | |
6043 | | |
6044 | | |
6045 | | static int |
6046 | 0 | dissect_mms_Output_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6047 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6048 | |
|
6049 | 0 | return offset; |
6050 | 0 | } |
6051 | | |
6052 | | |
6053 | | static const value_string mms_TakeControl_Response_vals[] = { |
6054 | | { 0, "noResult" }, |
6055 | | { 1, "namedToken" }, |
6056 | | { 0, NULL } |
6057 | | }; |
6058 | | |
6059 | | static const ber_choice_t TakeControl_Response_choice[] = { |
6060 | | { 0, &hf_mms_noResult , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
6061 | | { 1, &hf_mms_namedToken , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
6062 | | { 0, NULL, 0, 0, 0, NULL } |
6063 | | }; |
6064 | | |
6065 | | static int |
6066 | 0 | dissect_mms_TakeControl_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6067 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6068 | 0 | TakeControl_Response_choice, hf_index, ett_mms_TakeControl_Response, |
6069 | 0 | NULL); |
6070 | |
|
6071 | 0 | return offset; |
6072 | 0 | } |
6073 | | |
6074 | | |
6075 | | |
6076 | | static int |
6077 | 0 | dissect_mms_RelinquishControl_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6078 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6079 | |
|
6080 | 0 | return offset; |
6081 | 0 | } |
6082 | | |
6083 | | |
6084 | | |
6085 | | static int |
6086 | 0 | dissect_mms_DefineSemaphore_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6087 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6088 | |
|
6089 | 0 | return offset; |
6090 | 0 | } |
6091 | | |
6092 | | |
6093 | | |
6094 | | static int |
6095 | 0 | dissect_mms_DeleteSemaphore_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6096 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6097 | |
|
6098 | 0 | return offset; |
6099 | 0 | } |
6100 | | |
6101 | | |
6102 | | static const value_string mms_T_class_vals[] = { |
6103 | | { 0, "token" }, |
6104 | | { 1, "pool" }, |
6105 | | { 0, NULL } |
6106 | | }; |
6107 | | |
6108 | | |
6109 | | static int |
6110 | 0 | dissect_mms_T_class(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6111 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6112 | 0 | NULL); |
6113 | |
|
6114 | 0 | return offset; |
6115 | 0 | } |
6116 | | |
6117 | | |
6118 | | static const ber_sequence_t ReportSemaphoreStatus_Response_sequence[] = { |
6119 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6120 | | { &hf_mms_class , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_class }, |
6121 | | { &hf_mms_numberOfTokens , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 }, |
6122 | | { &hf_mms_numberOfOwnedTokens, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 }, |
6123 | | { &hf_mms_numberOfHungTokens, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned16 }, |
6124 | | { NULL, 0, 0, 0, NULL } |
6125 | | }; |
6126 | | |
6127 | | static int |
6128 | 0 | dissect_mms_ReportSemaphoreStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6129 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6130 | 0 | ReportSemaphoreStatus_Response_sequence, hf_index, ett_mms_ReportSemaphoreStatus_Response); |
6131 | |
|
6132 | 0 | return offset; |
6133 | 0 | } |
6134 | | |
6135 | | |
6136 | | static const value_string mms_T_listOfNamedTokens_item_vals[] = { |
6137 | | { 0, "freeNamedToken" }, |
6138 | | { 1, "ownedNamedToken" }, |
6139 | | { 2, "hungNamedToken" }, |
6140 | | { 0, NULL } |
6141 | | }; |
6142 | | |
6143 | | static const ber_choice_t T_listOfNamedTokens_item_choice[] = { |
6144 | | { 0, &hf_mms_freeNamedToken , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
6145 | | { 1, &hf_mms_ownedNamedToken , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
6146 | | { 2, &hf_mms_hungNamedToken , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
6147 | | { 0, NULL, 0, 0, 0, NULL } |
6148 | | }; |
6149 | | |
6150 | | static int |
6151 | 0 | dissect_mms_T_listOfNamedTokens_item(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6152 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6153 | 0 | T_listOfNamedTokens_item_choice, hf_index, ett_mms_T_listOfNamedTokens_item, |
6154 | 0 | NULL); |
6155 | |
|
6156 | 0 | return offset; |
6157 | 0 | } |
6158 | | |
6159 | | |
6160 | | static const ber_sequence_t T_listOfNamedTokens_sequence_of[1] = { |
6161 | | { &hf_mms_listOfNamedTokens_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_listOfNamedTokens_item }, |
6162 | | }; |
6163 | | |
6164 | | static int |
6165 | 0 | dissect_mms_T_listOfNamedTokens(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6166 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
6167 | 0 | T_listOfNamedTokens_sequence_of, hf_index, ett_mms_T_listOfNamedTokens); |
6168 | |
|
6169 | 0 | return offset; |
6170 | 0 | } |
6171 | | |
6172 | | |
6173 | | static const ber_sequence_t ReportPoolSemaphoreStatus_Response_sequence[] = { |
6174 | | { &hf_mms_listOfNamedTokens, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfNamedTokens }, |
6175 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6176 | | { NULL, 0, 0, 0, NULL } |
6177 | | }; |
6178 | | |
6179 | | static int |
6180 | 0 | dissect_mms_ReportPoolSemaphoreStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6181 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6182 | 0 | ReportPoolSemaphoreStatus_Response_sequence, hf_index, ett_mms_ReportPoolSemaphoreStatus_Response); |
6183 | |
|
6184 | 0 | return offset; |
6185 | 0 | } |
6186 | | |
6187 | | |
6188 | | static const value_string mms_T_entryClass_vals[] = { |
6189 | | { 0, "simple" }, |
6190 | | { 1, "modifier" }, |
6191 | | { 0, NULL } |
6192 | | }; |
6193 | | |
6194 | | |
6195 | | static int |
6196 | 0 | dissect_mms_T_entryClass(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6197 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6198 | 0 | NULL); |
6199 | |
|
6200 | 0 | return offset; |
6201 | 0 | } |
6202 | | |
6203 | | |
6204 | | static const ber_sequence_t SemaphoreEntry_sequence[] = { |
6205 | | { &hf_mms_entryId , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
6206 | | { &hf_mms_entryClass , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_entryClass }, |
6207 | | { &hf_mms_applicationReference, BER_CLASS_CON, 2, 0, dissect_mms_ApplicationReference }, |
6208 | | { &hf_mms_namedToken , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Identifier }, |
6209 | | { &hf_mms_priority , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
6210 | | { &hf_mms_remainingTimeOut, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6211 | | { &hf_mms_abortOnTimeOut , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6212 | | { &hf_mms_relinquishIfConnectionLost, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6213 | | { NULL, 0, 0, 0, NULL } |
6214 | | }; |
6215 | | |
6216 | | static int |
6217 | 0 | dissect_mms_SemaphoreEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6218 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6219 | 0 | SemaphoreEntry_sequence, hf_index, ett_mms_SemaphoreEntry); |
6220 | |
|
6221 | 0 | return offset; |
6222 | 0 | } |
6223 | | |
6224 | | |
6225 | | static const ber_sequence_t SEQUENCE_OF_SemaphoreEntry_sequence_of[1] = { |
6226 | | { &hf_mms_listOfSemaphoreEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_SemaphoreEntry }, |
6227 | | }; |
6228 | | |
6229 | | static int |
6230 | 0 | dissect_mms_SEQUENCE_OF_SemaphoreEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6231 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
6232 | 0 | SEQUENCE_OF_SemaphoreEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_SemaphoreEntry); |
6233 | |
|
6234 | 0 | return offset; |
6235 | 0 | } |
6236 | | |
6237 | | |
6238 | | static const ber_sequence_t ReportSemaphoreEntryStatus_Response_sequence[] = { |
6239 | | { &hf_mms_listOfSemaphoreEntry, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_SemaphoreEntry }, |
6240 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6241 | | { NULL, 0, 0, 0, NULL } |
6242 | | }; |
6243 | | |
6244 | | static int |
6245 | 0 | dissect_mms_ReportSemaphoreEntryStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6246 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6247 | 0 | ReportSemaphoreEntryStatus_Response_sequence, hf_index, ett_mms_ReportSemaphoreEntryStatus_Response); |
6248 | |
|
6249 | 0 | return offset; |
6250 | 0 | } |
6251 | | |
6252 | | |
6253 | | |
6254 | | static int |
6255 | 0 | dissect_mms_InitiateDownloadSequence_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6256 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6257 | |
|
6258 | 0 | return offset; |
6259 | 0 | } |
6260 | | |
6261 | | |
6262 | | static const value_string mms_T_loadData_vals[] = { |
6263 | | { 0, "non-coded" }, |
6264 | | { 1, "coded" }, |
6265 | | { 0, NULL } |
6266 | | }; |
6267 | | |
6268 | | static const ber_choice_t T_loadData_choice[] = { |
6269 | | { 0, &hf_mms_non_coded , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
6270 | | { 1, &hf_mms_coded , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt }, |
6271 | | { 0, NULL, 0, 0, 0, NULL } |
6272 | | }; |
6273 | | |
6274 | | static int |
6275 | 0 | dissect_mms_T_loadData(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6276 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6277 | 0 | T_loadData_choice, hf_index, ett_mms_T_loadData, |
6278 | 0 | NULL); |
6279 | |
|
6280 | 0 | return offset; |
6281 | 0 | } |
6282 | | |
6283 | | |
6284 | | static const ber_sequence_t DownloadSegment_Response_sequence[] = { |
6285 | | { &hf_mms_loadData , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_loadData }, |
6286 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6287 | | { NULL, 0, 0, 0, NULL } |
6288 | | }; |
6289 | | |
6290 | | static int |
6291 | 0 | dissect_mms_DownloadSegment_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6292 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6293 | 0 | DownloadSegment_Response_sequence, hf_index, ett_mms_DownloadSegment_Response); |
6294 | |
|
6295 | 0 | return offset; |
6296 | 0 | } |
6297 | | |
6298 | | |
6299 | | |
6300 | | static int |
6301 | 5 | dissect_mms_TerminateDownloadSequence_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6302 | 5 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6303 | | |
6304 | 5 | return offset; |
6305 | 5 | } |
6306 | | |
6307 | | |
6308 | | static const ber_sequence_t T_listOfCapabilities_02_sequence_of[1] = { |
6309 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
6310 | | }; |
6311 | | |
6312 | | static int |
6313 | 0 | dissect_mms_T_listOfCapabilities_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6314 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
6315 | 0 | T_listOfCapabilities_02_sequence_of, hf_index, ett_mms_T_listOfCapabilities_02); |
6316 | |
|
6317 | 0 | return offset; |
6318 | 0 | } |
6319 | | |
6320 | | |
6321 | | static const ber_sequence_t InitiateUploadSequence_Response_sequence[] = { |
6322 | | { &hf_mms_ulsmID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
6323 | | { &hf_mms_listOfCapabilities_02, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_02 }, |
6324 | | { NULL, 0, 0, 0, NULL } |
6325 | | }; |
6326 | | |
6327 | | static int |
6328 | 0 | dissect_mms_InitiateUploadSequence_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6329 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6330 | 0 | InitiateUploadSequence_Response_sequence, hf_index, ett_mms_InitiateUploadSequence_Response); |
6331 | |
|
6332 | 0 | return offset; |
6333 | 0 | } |
6334 | | |
6335 | | |
6336 | | static const value_string mms_T_loadData_01_vals[] = { |
6337 | | { 0, "non-coded" }, |
6338 | | { 1, "coded" }, |
6339 | | { 0, NULL } |
6340 | | }; |
6341 | | |
6342 | | static const ber_choice_t T_loadData_01_choice[] = { |
6343 | | { 0, &hf_mms_non_coded , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
6344 | | { 1, &hf_mms_coded , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt }, |
6345 | | { 0, NULL, 0, 0, 0, NULL } |
6346 | | }; |
6347 | | |
6348 | | static int |
6349 | 0 | dissect_mms_T_loadData_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6350 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6351 | 0 | T_loadData_01_choice, hf_index, ett_mms_T_loadData_01, |
6352 | 0 | NULL); |
6353 | |
|
6354 | 0 | return offset; |
6355 | 0 | } |
6356 | | |
6357 | | |
6358 | | static const ber_sequence_t UploadSegment_Response_sequence[] = { |
6359 | | { &hf_mms_loadData_01 , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_loadData_01 }, |
6360 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6361 | | { NULL, 0, 0, 0, NULL } |
6362 | | }; |
6363 | | |
6364 | | static int |
6365 | 0 | dissect_mms_UploadSegment_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6366 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6367 | 0 | UploadSegment_Response_sequence, hf_index, ett_mms_UploadSegment_Response); |
6368 | |
|
6369 | 0 | return offset; |
6370 | 0 | } |
6371 | | |
6372 | | |
6373 | | |
6374 | | static int |
6375 | 0 | dissect_mms_TerminateUploadSequence_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6376 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6377 | |
|
6378 | 0 | return offset; |
6379 | 0 | } |
6380 | | |
6381 | | |
6382 | | |
6383 | | static int |
6384 | 0 | dissect_mms_RequestDomainDownload_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6385 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6386 | |
|
6387 | 0 | return offset; |
6388 | 0 | } |
6389 | | |
6390 | | |
6391 | | |
6392 | | static int |
6393 | 0 | dissect_mms_RequestDomainUpload_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6394 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6395 | |
|
6396 | 0 | return offset; |
6397 | 0 | } |
6398 | | |
6399 | | |
6400 | | |
6401 | | static int |
6402 | 0 | dissect_mms_LoadDomainContent_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6403 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6404 | |
|
6405 | 0 | return offset; |
6406 | 0 | } |
6407 | | |
6408 | | |
6409 | | |
6410 | | static int |
6411 | 35 | dissect_mms_StoreDomainContent_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6412 | 35 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6413 | | |
6414 | 35 | return offset; |
6415 | 35 | } |
6416 | | |
6417 | | |
6418 | | |
6419 | | static int |
6420 | 0 | dissect_mms_DeleteDomain_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6421 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6422 | |
|
6423 | 0 | return offset; |
6424 | 0 | } |
6425 | | |
6426 | | |
6427 | | static const ber_sequence_t T_listOfCapabilities_05_sequence_of[1] = { |
6428 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
6429 | | }; |
6430 | | |
6431 | | static int |
6432 | 0 | dissect_mms_T_listOfCapabilities_05(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6433 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
6434 | 0 | T_listOfCapabilities_05_sequence_of, hf_index, ett_mms_T_listOfCapabilities_05); |
6435 | |
|
6436 | 0 | return offset; |
6437 | 0 | } |
6438 | | |
6439 | | |
6440 | | static const value_string mms_DomainState_vals[] = { |
6441 | | { 0, "non-existent" }, |
6442 | | { 1, "loading" }, |
6443 | | { 2, "ready" }, |
6444 | | { 3, "in-use" }, |
6445 | | { 4, "complete" }, |
6446 | | { 5, "incomplete" }, |
6447 | | { 7, "d1" }, |
6448 | | { 8, "d2" }, |
6449 | | { 9, "d3" }, |
6450 | | { 10, "d4" }, |
6451 | | { 11, "d5" }, |
6452 | | { 12, "d6" }, |
6453 | | { 13, "d7" }, |
6454 | | { 14, "d8" }, |
6455 | | { 15, "d9" }, |
6456 | | { 0, NULL } |
6457 | | }; |
6458 | | |
6459 | | |
6460 | | static int |
6461 | 0 | dissect_mms_DomainState(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6462 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6463 | 0 | NULL); |
6464 | |
|
6465 | 0 | return offset; |
6466 | 0 | } |
6467 | | |
6468 | | |
6469 | | |
6470 | | static int |
6471 | 0 | dissect_mms_Integer8(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6472 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6473 | 0 | NULL); |
6474 | |
|
6475 | 0 | return offset; |
6476 | 0 | } |
6477 | | |
6478 | | |
6479 | | static const ber_sequence_t GetDomainAttributes_Response_sequence[] = { |
6480 | | { &hf_mms_listOfCapabilities_05, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities_05 }, |
6481 | | { &hf_mms_getDomainAttributes_Response_state, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_DomainState }, |
6482 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6483 | | { &hf_mms_sharable , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6484 | | { &hf_mms_listOfProgramInvocations, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier }, |
6485 | | { &hf_mms_uploadInProgress, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Integer8 }, |
6486 | | { NULL, 0, 0, 0, NULL } |
6487 | | }; |
6488 | | |
6489 | | static int |
6490 | 0 | dissect_mms_GetDomainAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6491 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6492 | 0 | GetDomainAttributes_Response_sequence, hf_index, ett_mms_GetDomainAttributes_Response); |
6493 | |
|
6494 | 0 | return offset; |
6495 | 0 | } |
6496 | | |
6497 | | |
6498 | | |
6499 | | static int |
6500 | 0 | dissect_mms_CreateProgramInvocation_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6501 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6502 | |
|
6503 | 0 | return offset; |
6504 | 0 | } |
6505 | | |
6506 | | |
6507 | | |
6508 | | static int |
6509 | 0 | dissect_mms_DeleteProgramInvocation_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6510 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6511 | |
|
6512 | 0 | return offset; |
6513 | 0 | } |
6514 | | |
6515 | | |
6516 | | |
6517 | | static int |
6518 | 0 | dissect_mms_Start_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6519 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6520 | |
|
6521 | 0 | return offset; |
6522 | 0 | } |
6523 | | |
6524 | | |
6525 | | |
6526 | | static int |
6527 | 0 | dissect_mms_Stop_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6528 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6529 | |
|
6530 | 0 | return offset; |
6531 | 0 | } |
6532 | | |
6533 | | |
6534 | | |
6535 | | static int |
6536 | 0 | dissect_mms_Resume_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6537 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6538 | |
|
6539 | 0 | return offset; |
6540 | 0 | } |
6541 | | |
6542 | | |
6543 | | |
6544 | | static int |
6545 | 0 | dissect_mms_Reset_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6546 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6547 | |
|
6548 | 0 | return offset; |
6549 | 0 | } |
6550 | | |
6551 | | |
6552 | | |
6553 | | static int |
6554 | 0 | dissect_mms_Kill_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6555 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6556 | |
|
6557 | 0 | return offset; |
6558 | 0 | } |
6559 | | |
6560 | | |
6561 | | static const value_string mms_T_executionArgument_02_vals[] = { |
6562 | | { 0, "simpleString" }, |
6563 | | { 1, "encodedString" }, |
6564 | | { 0, NULL } |
6565 | | }; |
6566 | | |
6567 | | static const ber_choice_t T_executionArgument_02_choice[] = { |
6568 | | { 0, &hf_mms_simpleString , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
6569 | | { 1, &hf_mms_encodedString , BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_acse_EXTERNALt }, |
6570 | | { 0, NULL, 0, 0, 0, NULL } |
6571 | | }; |
6572 | | |
6573 | | static int |
6574 | 0 | dissect_mms_T_executionArgument_02(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6575 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6576 | 0 | T_executionArgument_02_choice, hf_index, ett_mms_T_executionArgument_02, |
6577 | 0 | NULL); |
6578 | |
|
6579 | 0 | return offset; |
6580 | 0 | } |
6581 | | |
6582 | | |
6583 | | static const ber_sequence_t GetProgramInvocationAttributes_Response_sequence[] = { |
6584 | | { &hf_mms_getProgramInvocationAttributes_Response_state, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_ProgramInvocationState }, |
6585 | | { &hf_mms_listOfDomainNames, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Identifier }, |
6586 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6587 | | { &hf_mms_reusable , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6588 | | { &hf_mms_monitor , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6589 | | { &hf_mms_startArgument , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_VisibleString }, |
6590 | | { &hf_mms_executionArgument_02, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_executionArgument_02 }, |
6591 | | { NULL, 0, 0, 0, NULL } |
6592 | | }; |
6593 | | |
6594 | | static int |
6595 | 0 | dissect_mms_GetProgramInvocationAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6596 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6597 | 0 | GetProgramInvocationAttributes_Response_sequence, hf_index, ett_mms_GetProgramInvocationAttributes_Response); |
6598 | |
|
6599 | 0 | return offset; |
6600 | 0 | } |
6601 | | |
6602 | | |
6603 | | |
6604 | | static int |
6605 | 0 | dissect_mms_ObtainFile_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6606 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6607 | |
|
6608 | 0 | return offset; |
6609 | 0 | } |
6610 | | |
6611 | | |
6612 | | |
6613 | | static int |
6614 | 0 | dissect_mms_GeneralizedTime(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6615 | 0 | offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index); |
6616 | |
|
6617 | 0 | return offset; |
6618 | 0 | } |
6619 | | |
6620 | | |
6621 | | static const ber_sequence_t FileAttributes_sequence[] = { |
6622 | | { &hf_mms_sizeOfFile , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6623 | | { &hf_mms_lastModified , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_GeneralizedTime }, |
6624 | | { NULL, 0, 0, 0, NULL } |
6625 | | }; |
6626 | | |
6627 | | static int |
6628 | 0 | dissect_mms_FileAttributes(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6629 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6630 | 0 | FileAttributes_sequence, hf_index, ett_mms_FileAttributes); |
6631 | |
|
6632 | 0 | return offset; |
6633 | 0 | } |
6634 | | |
6635 | | |
6636 | | static const ber_sequence_t FileOpen_Response_sequence[] = { |
6637 | | { &hf_mms_frsmID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
6638 | | { &hf_mms_fileAttributes , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileAttributes }, |
6639 | | { NULL, 0, 0, 0, NULL } |
6640 | | }; |
6641 | | |
6642 | | static int |
6643 | 0 | dissect_mms_FileOpen_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6644 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6645 | 0 | FileOpen_Response_sequence, hf_index, ett_mms_FileOpen_Response); |
6646 | |
|
6647 | 0 | return offset; |
6648 | 0 | } |
6649 | | |
6650 | | |
6651 | | |
6652 | | static int |
6653 | 0 | dissect_mms_DefineEventCondition_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6654 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6655 | |
|
6656 | 0 | return offset; |
6657 | 0 | } |
6658 | | |
6659 | | |
6660 | | |
6661 | | static int |
6662 | 0 | dissect_mms_DeleteEventCondition_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6663 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
6664 | |
|
6665 | 0 | return offset; |
6666 | 0 | } |
6667 | | |
6668 | | |
6669 | | static const value_string mms_T_monitoredVariable_vals[] = { |
6670 | | { 0, "variableReference" }, |
6671 | | { 1, "undefined" }, |
6672 | | { 0, NULL } |
6673 | | }; |
6674 | | |
6675 | | static const ber_choice_t T_monitoredVariable_choice[] = { |
6676 | | { 0, &hf_mms_variableReference, BER_CLASS_CON, 0, 0, dissect_mms_VariableSpecification }, |
6677 | | { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
6678 | | { 0, NULL, 0, 0, 0, NULL } |
6679 | | }; |
6680 | | |
6681 | | static int |
6682 | 0 | dissect_mms_T_monitoredVariable(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6683 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6684 | 0 | T_monitoredVariable_choice, hf_index, ett_mms_T_monitoredVariable, |
6685 | 0 | NULL); |
6686 | |
|
6687 | 0 | return offset; |
6688 | 0 | } |
6689 | | |
6690 | | |
6691 | | static const ber_sequence_t GetEventConditionAttributes_Response_sequence[] = { |
6692 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6693 | | { &hf_mms_class_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_EC_Class }, |
6694 | | { &hf_mms_prio_rity , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Priority }, |
6695 | | { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
6696 | | { &hf_mms_alarmSummaryReports, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6697 | | { &hf_mms_monitoredVariable_01, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_mms_T_monitoredVariable }, |
6698 | | { &hf_mms_evaluationInterval, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6699 | | { NULL, 0, 0, 0, NULL } |
6700 | | }; |
6701 | | |
6702 | | static int |
6703 | 0 | dissect_mms_GetEventConditionAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6704 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6705 | 0 | GetEventConditionAttributes_Response_sequence, hf_index, ett_mms_GetEventConditionAttributes_Response); |
6706 | |
|
6707 | 0 | return offset; |
6708 | 0 | } |
6709 | | |
6710 | | |
6711 | | static const ber_sequence_t ReportEventConditionStatus_Response_sequence[] = { |
6712 | | { &hf_mms_currentState , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
6713 | | { &hf_mms_numberOfEventEnrollments, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6714 | | { &hf_mms_enabled , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6715 | | { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
6716 | | { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
6717 | | { NULL, 0, 0, 0, NULL } |
6718 | | }; |
6719 | | |
6720 | | static int |
6721 | 0 | dissect_mms_ReportEventConditionStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6722 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6723 | 0 | ReportEventConditionStatus_Response_sequence, hf_index, ett_mms_ReportEventConditionStatus_Response); |
6724 | |
|
6725 | 0 | return offset; |
6726 | 0 | } |
6727 | | |
6728 | | |
6729 | | |
6730 | | static int |
6731 | 0 | dissect_mms_AlterEventConditionMonitoring_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6732 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6733 | |
|
6734 | 0 | return offset; |
6735 | 0 | } |
6736 | | |
6737 | | |
6738 | | |
6739 | | static int |
6740 | 0 | dissect_mms_TriggerEvent_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6741 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6742 | |
|
6743 | 0 | return offset; |
6744 | 0 | } |
6745 | | |
6746 | | |
6747 | | |
6748 | | static int |
6749 | 0 | dissect_mms_DefineEventAction_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6750 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6751 | |
|
6752 | 0 | return offset; |
6753 | 0 | } |
6754 | | |
6755 | | |
6756 | | |
6757 | | static int |
6758 | 0 | dissect_mms_DeleteEventAction_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6759 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
6760 | |
|
6761 | 0 | return offset; |
6762 | 0 | } |
6763 | | |
6764 | | |
6765 | | static const ber_sequence_t GetEventActionAttributes_Response_sequence[] = { |
6766 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6767 | | { &hf_mms_listOfModifier , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_Modifier }, |
6768 | | { NULL, 0, 0, 0, NULL } |
6769 | | }; |
6770 | | |
6771 | | static int |
6772 | 0 | dissect_mms_GetEventActionAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6773 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6774 | 0 | GetEventActionAttributes_Response_sequence, hf_index, ett_mms_GetEventActionAttributes_Response); |
6775 | |
|
6776 | 0 | return offset; |
6777 | 0 | } |
6778 | | |
6779 | | |
6780 | | |
6781 | | static int |
6782 | 0 | dissect_mms_ReportEventActionStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6783 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
6784 | |
|
6785 | 0 | return offset; |
6786 | 0 | } |
6787 | | |
6788 | | |
6789 | | |
6790 | | static int |
6791 | 0 | dissect_mms_DefineEventEnrollment_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6792 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
6793 | |
|
6794 | 0 | return offset; |
6795 | 0 | } |
6796 | | |
6797 | | |
6798 | | |
6799 | | static int |
6800 | 0 | dissect_mms_DeleteEventEnrollment_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6801 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
6802 | |
|
6803 | 0 | return offset; |
6804 | 0 | } |
6805 | | |
6806 | | |
6807 | | static const value_string mms_EE_State_vals[] = { |
6808 | | { 0, "disabled" }, |
6809 | | { 1, "idle" }, |
6810 | | { 2, "active" }, |
6811 | | { 3, "activeNoAckA" }, |
6812 | | { 4, "idleNoAckI" }, |
6813 | | { 5, "idleNoAckA" }, |
6814 | | { 6, "idleAcked" }, |
6815 | | { 7, "activeAcked" }, |
6816 | | { 0, NULL } |
6817 | | }; |
6818 | | |
6819 | | |
6820 | | static int |
6821 | 0 | dissect_mms_EE_State(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6822 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6823 | 0 | NULL); |
6824 | |
|
6825 | 0 | return offset; |
6826 | 0 | } |
6827 | | |
6828 | | |
6829 | | static const value_string mms_T_currentState_vals[] = { |
6830 | | { 0, "state" }, |
6831 | | { 1, "undefined" }, |
6832 | | { 0, NULL } |
6833 | | }; |
6834 | | |
6835 | | static const ber_choice_t T_currentState_choice[] = { |
6836 | | { 0, &hf_mms_alterEventEnrollment_Response_currentState_state, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_EE_State }, |
6837 | | { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
6838 | | { 0, NULL, 0, 0, 0, NULL } |
6839 | | }; |
6840 | | |
6841 | | static int |
6842 | 0 | dissect_mms_T_currentState(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6843 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6844 | 0 | T_currentState_choice, hf_index, ett_mms_T_currentState, |
6845 | 0 | NULL); |
6846 | |
|
6847 | 0 | return offset; |
6848 | 0 | } |
6849 | | |
6850 | | |
6851 | | static const ber_sequence_t AlterEventEnrollment_Response_sequence[] = { |
6852 | | { &hf_mms_currentState_02 , BER_CLASS_CON, 0, 0, dissect_mms_T_currentState }, |
6853 | | { &hf_mms_transitionTime , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
6854 | | { NULL, 0, 0, 0, NULL } |
6855 | | }; |
6856 | | |
6857 | | static int |
6858 | 0 | dissect_mms_AlterEventEnrollment_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6859 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6860 | 0 | AlterEventEnrollment_Response_sequence, hf_index, ett_mms_AlterEventEnrollment_Response); |
6861 | |
|
6862 | 0 | return offset; |
6863 | 0 | } |
6864 | | |
6865 | | |
6866 | | static const value_string mms_EE_Duration_vals[] = { |
6867 | | { 0, "current" }, |
6868 | | { 1, "permanent" }, |
6869 | | { 0, NULL } |
6870 | | }; |
6871 | | |
6872 | | |
6873 | | static int |
6874 | 0 | dissect_mms_EE_Duration(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6875 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6876 | 0 | NULL); |
6877 | |
|
6878 | 0 | return offset; |
6879 | 0 | } |
6880 | | |
6881 | | |
6882 | | static const ber_sequence_t ReportEventEnrollmentStatus_Response_sequence[] = { |
6883 | | { &hf_mms_eventConditionTransitions, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Transitions }, |
6884 | | { &hf_mms_notificationLost, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6885 | | { &hf_mms_duration , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EE_Duration }, |
6886 | | { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule }, |
6887 | | { &hf_mms_currentState_01 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_EE_State }, |
6888 | | { NULL, 0, 0, 0, NULL } |
6889 | | }; |
6890 | | |
6891 | | static int |
6892 | 22 | dissect_mms_ReportEventEnrollmentStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6893 | 22 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6894 | 22 | ReportEventEnrollmentStatus_Response_sequence, hf_index, ett_mms_ReportEventEnrollmentStatus_Response); |
6895 | | |
6896 | 22 | return offset; |
6897 | 22 | } |
6898 | | |
6899 | | |
6900 | | static const value_string mms_T_eventConditionName_vals[] = { |
6901 | | { 0, "eventCondition" }, |
6902 | | { 1, "undefined" }, |
6903 | | { 0, NULL } |
6904 | | }; |
6905 | | |
6906 | | static const ber_choice_t T_eventConditionName_choice[] = { |
6907 | | { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
6908 | | { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
6909 | | { 0, NULL, 0, 0, 0, NULL } |
6910 | | }; |
6911 | | |
6912 | | static int |
6913 | 0 | dissect_mms_T_eventConditionName(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6914 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6915 | 0 | T_eventConditionName_choice, hf_index, ett_mms_T_eventConditionName, |
6916 | 0 | NULL); |
6917 | |
|
6918 | 0 | return offset; |
6919 | 0 | } |
6920 | | |
6921 | | |
6922 | | static const value_string mms_T_eventActionName_vals[] = { |
6923 | | { 0, "eventAction" }, |
6924 | | { 1, "undefined" }, |
6925 | | { 0, NULL } |
6926 | | }; |
6927 | | |
6928 | | static const ber_choice_t T_eventActionName_choice[] = { |
6929 | | { 0, &hf_mms_eventAction , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
6930 | | { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
6931 | | { 0, NULL, 0, 0, 0, NULL } |
6932 | | }; |
6933 | | |
6934 | | static int |
6935 | 0 | dissect_mms_T_eventActionName(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6936 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
6937 | 0 | T_eventActionName_choice, hf_index, ett_mms_T_eventActionName, |
6938 | 0 | NULL); |
6939 | |
|
6940 | 0 | return offset; |
6941 | 0 | } |
6942 | | |
6943 | | |
6944 | | static const value_string mms_EE_Class_vals[] = { |
6945 | | { 0, "modifier" }, |
6946 | | { 1, "notification" }, |
6947 | | { 0, NULL } |
6948 | | }; |
6949 | | |
6950 | | |
6951 | | static int |
6952 | 0 | dissect_mms_EE_Class(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6953 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
6954 | 0 | NULL); |
6955 | |
|
6956 | 0 | return offset; |
6957 | 0 | } |
6958 | | |
6959 | | |
6960 | | static const ber_sequence_t EventEnrollment_sequence[] = { |
6961 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
6962 | | { &hf_mms_eventConditionName_01, BER_CLASS_CON, 1, 0, dissect_mms_T_eventConditionName }, |
6963 | | { &hf_mms_eventActionName_01, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_T_eventActionName }, |
6964 | | { &hf_mms_clientApplication, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference }, |
6965 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6966 | | { &hf_mms_enrollmentClass , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_EE_Class }, |
6967 | | { &hf_mms_duration , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EE_Duration }, |
6968 | | { &hf_mms_invokeID , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6969 | | { &hf_mms_remainingAcceptableDelay, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
6970 | | { NULL, 0, 0, 0, NULL } |
6971 | | }; |
6972 | | |
6973 | | static int |
6974 | 0 | dissect_mms_EventEnrollment(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6975 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
6976 | 0 | EventEnrollment_sequence, hf_index, ett_mms_EventEnrollment); |
6977 | |
|
6978 | 0 | return offset; |
6979 | 0 | } |
6980 | | |
6981 | | |
6982 | | static const ber_sequence_t SEQUENCE_OF_EventEnrollment_sequence_of[1] = { |
6983 | | { &hf_mms_listOfEventEnrollment_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_EventEnrollment }, |
6984 | | }; |
6985 | | |
6986 | | static int |
6987 | 0 | dissect_mms_SEQUENCE_OF_EventEnrollment(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
6988 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
6989 | 0 | SEQUENCE_OF_EventEnrollment_sequence_of, hf_index, ett_mms_SEQUENCE_OF_EventEnrollment); |
6990 | |
|
6991 | 0 | return offset; |
6992 | 0 | } |
6993 | | |
6994 | | |
6995 | | static const ber_sequence_t GetEventEnrollmentAttributes_Response_sequence[] = { |
6996 | | { &hf_mms_listOfEventEnrollment, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_EventEnrollment }, |
6997 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
6998 | | { NULL, 0, 0, 0, NULL } |
6999 | | }; |
7000 | | |
7001 | | static int |
7002 | 0 | dissect_mms_GetEventEnrollmentAttributes_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7003 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7004 | 0 | GetEventEnrollmentAttributes_Response_sequence, hf_index, ett_mms_GetEventEnrollmentAttributes_Response); |
7005 | |
|
7006 | 0 | return offset; |
7007 | 0 | } |
7008 | | |
7009 | | |
7010 | | |
7011 | | static int |
7012 | 0 | dissect_mms_AcknowledgeEventNotification_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7013 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7014 | |
|
7015 | 0 | return offset; |
7016 | 0 | } |
7017 | | |
7018 | | |
7019 | | static const value_string mms_T_unacknowledgedState_vals[] = { |
7020 | | { 0, "none" }, |
7021 | | { 1, "active" }, |
7022 | | { 2, "idle" }, |
7023 | | { 3, "both" }, |
7024 | | { 0, NULL } |
7025 | | }; |
7026 | | |
7027 | | |
7028 | | static int |
7029 | 0 | dissect_mms_T_unacknowledgedState(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7030 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7031 | 0 | NULL); |
7032 | |
|
7033 | 0 | return offset; |
7034 | 0 | } |
7035 | | |
7036 | | |
7037 | | static const ber_sequence_t AlarmSummary_sequence[] = { |
7038 | | { &hf_mms_eventConditionName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
7039 | | { &hf_mms_severity , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
7040 | | { &hf_mms_currentState , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
7041 | | { &hf_mms_unacknowledgedState, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_unacknowledgedState }, |
7042 | | { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7043 | | { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7044 | | { NULL, 0, 0, 0, NULL } |
7045 | | }; |
7046 | | |
7047 | | static int |
7048 | 0 | dissect_mms_AlarmSummary(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7049 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7050 | 0 | AlarmSummary_sequence, hf_index, ett_mms_AlarmSummary); |
7051 | |
|
7052 | 0 | return offset; |
7053 | 0 | } |
7054 | | |
7055 | | |
7056 | | static const ber_sequence_t SEQUENCE_OF_AlarmSummary_sequence_of[1] = { |
7057 | | { &hf_mms_listOfAlarmSummary_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlarmSummary }, |
7058 | | }; |
7059 | | |
7060 | | static int |
7061 | 0 | dissect_mms_SEQUENCE_OF_AlarmSummary(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7062 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7063 | 0 | SEQUENCE_OF_AlarmSummary_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AlarmSummary); |
7064 | |
|
7065 | 0 | return offset; |
7066 | 0 | } |
7067 | | |
7068 | | |
7069 | | static const ber_sequence_t GetAlarmSummary_Response_sequence[] = { |
7070 | | { &hf_mms_listOfAlarmSummary, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AlarmSummary }, |
7071 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7072 | | { NULL, 0, 0, 0, NULL } |
7073 | | }; |
7074 | | |
7075 | | static int |
7076 | 0 | dissect_mms_GetAlarmSummary_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7077 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7078 | 0 | GetAlarmSummary_Response_sequence, hf_index, ett_mms_GetAlarmSummary_Response); |
7079 | |
|
7080 | 0 | return offset; |
7081 | 0 | } |
7082 | | |
7083 | | |
7084 | | static const ber_sequence_t AlarmEnrollmentSummary_sequence[] = { |
7085 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
7086 | | { &hf_mms_clientApplication, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_mms_ApplicationReference }, |
7087 | | { &hf_mms_severity , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
7088 | | { &hf_mms_currentState , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
7089 | | { &hf_mms_notificationLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7090 | | { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule }, |
7091 | | { &hf_mms_enrollementState, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EE_State }, |
7092 | | { &hf_mms_timeOfLastTransitionToActive, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7093 | | { &hf_mms_timeActiveAcknowledged, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7094 | | { &hf_mms_timeOfLastTransitionToIdle, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7095 | | { &hf_mms_timeIdleAcknowledged, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7096 | | { NULL, 0, 0, 0, NULL } |
7097 | | }; |
7098 | | |
7099 | | static int |
7100 | 0 | dissect_mms_AlarmEnrollmentSummary(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7101 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7102 | 0 | AlarmEnrollmentSummary_sequence, hf_index, ett_mms_AlarmEnrollmentSummary); |
7103 | |
|
7104 | 0 | return offset; |
7105 | 0 | } |
7106 | | |
7107 | | |
7108 | | static const ber_sequence_t SEQUENCE_OF_AlarmEnrollmentSummary_sequence_of[1] = { |
7109 | | { &hf_mms_listOfAlarmEnrollmentSummary_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_AlarmEnrollmentSummary }, |
7110 | | }; |
7111 | | |
7112 | | static int |
7113 | 0 | dissect_mms_SEQUENCE_OF_AlarmEnrollmentSummary(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7114 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7115 | 0 | SEQUENCE_OF_AlarmEnrollmentSummary_sequence_of, hf_index, ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary); |
7116 | |
|
7117 | 0 | return offset; |
7118 | 0 | } |
7119 | | |
7120 | | |
7121 | | static const ber_sequence_t GetAlarmEnrollmentSummary_Response_sequence[] = { |
7122 | | { &hf_mms_listOfAlarmEnrollmentSummary, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_AlarmEnrollmentSummary }, |
7123 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7124 | | { NULL, 0, 0, 0, NULL } |
7125 | | }; |
7126 | | |
7127 | | static int |
7128 | 0 | dissect_mms_GetAlarmEnrollmentSummary_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7129 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7130 | 0 | GetAlarmEnrollmentSummary_Response_sequence, hf_index, ett_mms_GetAlarmEnrollmentSummary_Response); |
7131 | |
|
7132 | 0 | return offset; |
7133 | 0 | } |
7134 | | |
7135 | | |
7136 | | static const ber_sequence_t JournalEntry_sequence[] = { |
7137 | | { &hf_mms_entryIdentifier , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
7138 | | { &hf_mms_originatingApplication, BER_CLASS_CON, 1, 0, dissect_mms_ApplicationReference }, |
7139 | | { &hf_mms_entryContent , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EntryContent }, |
7140 | | { NULL, 0, 0, 0, NULL } |
7141 | | }; |
7142 | | |
7143 | | static int |
7144 | 0 | dissect_mms_JournalEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7145 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7146 | 0 | JournalEntry_sequence, hf_index, ett_mms_JournalEntry); |
7147 | |
|
7148 | 0 | return offset; |
7149 | 0 | } |
7150 | | |
7151 | | |
7152 | | static const ber_sequence_t SEQUENCE_OF_JournalEntry_sequence_of[1] = { |
7153 | | { &hf_mms_listOfJournalEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_JournalEntry }, |
7154 | | }; |
7155 | | |
7156 | | static int |
7157 | 0 | dissect_mms_SEQUENCE_OF_JournalEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7158 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7159 | 0 | SEQUENCE_OF_JournalEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_JournalEntry); |
7160 | |
|
7161 | 0 | return offset; |
7162 | 0 | } |
7163 | | |
7164 | | |
7165 | | static const ber_sequence_t ReadJournal_Response_sequence[] = { |
7166 | | { &hf_mms_listOfJournalEntry, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_SEQUENCE_OF_JournalEntry }, |
7167 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7168 | | { NULL, 0, 0, 0, NULL } |
7169 | | }; |
7170 | | |
7171 | | static int |
7172 | 0 | dissect_mms_ReadJournal_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7173 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7174 | 0 | ReadJournal_Response_sequence, hf_index, ett_mms_ReadJournal_Response); |
7175 | |
|
7176 | 0 | return offset; |
7177 | 0 | } |
7178 | | |
7179 | | |
7180 | | |
7181 | | static int |
7182 | 0 | dissect_mms_WriteJournal_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7183 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7184 | |
|
7185 | 0 | return offset; |
7186 | 0 | } |
7187 | | |
7188 | | |
7189 | | |
7190 | | static int |
7191 | 0 | dissect_mms_InitializeJournal_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7192 | 0 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
7193 | |
|
7194 | 0 | return offset; |
7195 | 0 | } |
7196 | | |
7197 | | |
7198 | | static const ber_sequence_t ReportJournalStatus_Response_sequence[] = { |
7199 | | { &hf_mms_currentEntries , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
7200 | | { &hf_mms_mmsDeletable , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7201 | | { NULL, 0, 0, 0, NULL } |
7202 | | }; |
7203 | | |
7204 | | static int |
7205 | 0 | dissect_mms_ReportJournalStatus_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7206 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7207 | 0 | ReportJournalStatus_Response_sequence, hf_index, ett_mms_ReportJournalStatus_Response); |
7208 | |
|
7209 | 0 | return offset; |
7210 | 0 | } |
7211 | | |
7212 | | |
7213 | | |
7214 | | static int |
7215 | 0 | dissect_mms_CreateJournal_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7216 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7217 | |
|
7218 | 0 | return offset; |
7219 | 0 | } |
7220 | | |
7221 | | |
7222 | | |
7223 | | static int |
7224 | 0 | dissect_mms_DeleteJournal_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7225 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7226 | |
|
7227 | 0 | return offset; |
7228 | 0 | } |
7229 | | |
7230 | | |
7231 | | static const ber_sequence_t T_listOfCapabilities_sequence_of[1] = { |
7232 | | { &hf_mms_listOfCapabilities_item, BER_CLASS_UNI, BER_UNI_TAG_VisibleString, BER_FLAGS_NOOWNTAG, dissect_mms_VisibleString }, |
7233 | | }; |
7234 | | |
7235 | | static int |
7236 | 0 | dissect_mms_T_listOfCapabilities(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7237 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7238 | 0 | T_listOfCapabilities_sequence_of, hf_index, ett_mms_T_listOfCapabilities); |
7239 | |
|
7240 | 0 | return offset; |
7241 | 0 | } |
7242 | | |
7243 | | |
7244 | | static const ber_sequence_t GetCapabilityList_Response_sequence[] = { |
7245 | | { &hf_mms_listOfCapabilities, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfCapabilities }, |
7246 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7247 | | { NULL, 0, 0, 0, NULL } |
7248 | | }; |
7249 | | |
7250 | | static int |
7251 | 0 | dissect_mms_GetCapabilityList_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7252 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7253 | 0 | GetCapabilityList_Response_sequence, hf_index, ett_mms_GetCapabilityList_Response); |
7254 | |
|
7255 | 0 | return offset; |
7256 | 0 | } |
7257 | | |
7258 | | |
7259 | | static const ber_sequence_t FileRead_Response_sequence[] = { |
7260 | | { &hf_mms_fileData , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_OCTET_STRING }, |
7261 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7262 | | { NULL, 0, 0, 0, NULL } |
7263 | | }; |
7264 | | |
7265 | | static int |
7266 | 0 | dissect_mms_FileRead_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7267 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7268 | 0 | FileRead_Response_sequence, hf_index, ett_mms_FileRead_Response); |
7269 | |
|
7270 | 0 | return offset; |
7271 | 0 | } |
7272 | | |
7273 | | |
7274 | | |
7275 | | static int |
7276 | 0 | dissect_mms_FileClose_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7277 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7278 | |
|
7279 | 0 | return offset; |
7280 | 0 | } |
7281 | | |
7282 | | |
7283 | | |
7284 | | static int |
7285 | 0 | dissect_mms_FileRename_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7286 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7287 | |
|
7288 | 0 | return offset; |
7289 | 0 | } |
7290 | | |
7291 | | |
7292 | | |
7293 | | static int |
7294 | 0 | dissect_mms_FileDelete_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7295 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
7296 | |
|
7297 | 0 | return offset; |
7298 | 0 | } |
7299 | | |
7300 | | |
7301 | | static const ber_sequence_t DirectoryEntry_sequence[] = { |
7302 | | { &hf_mms_filename , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_FileName }, |
7303 | | { &hf_mms_fileAttributes , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_FileAttributes }, |
7304 | | { NULL, 0, 0, 0, NULL } |
7305 | | }; |
7306 | | |
7307 | | static int |
7308 | 0 | dissect_mms_DirectoryEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7309 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7310 | 0 | DirectoryEntry_sequence, hf_index, ett_mms_DirectoryEntry); |
7311 | |
|
7312 | 0 | return offset; |
7313 | 0 | } |
7314 | | |
7315 | | |
7316 | | static const ber_sequence_t SEQUENCE_OF_DirectoryEntry_sequence_of[1] = { |
7317 | | { &hf_mms_listOfDirectoryEntry_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mms_DirectoryEntry }, |
7318 | | }; |
7319 | | |
7320 | | static int |
7321 | 0 | dissect_mms_SEQUENCE_OF_DirectoryEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7322 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7323 | 0 | SEQUENCE_OF_DirectoryEntry_sequence_of, hf_index, ett_mms_SEQUENCE_OF_DirectoryEntry); |
7324 | |
|
7325 | 0 | return offset; |
7326 | 0 | } |
7327 | | |
7328 | | |
7329 | | static const ber_sequence_t FileDirectory_Response_sequence[] = { |
7330 | | { &hf_mms_listOfDirectoryEntry, BER_CLASS_CON, 0, 0, dissect_mms_SEQUENCE_OF_DirectoryEntry }, |
7331 | | { &hf_mms_moreFollows , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7332 | | { NULL, 0, 0, 0, NULL } |
7333 | | }; |
7334 | | |
7335 | | static int |
7336 | 0 | dissect_mms_FileDirectory_Response(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7337 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7338 | 0 | FileDirectory_Response_sequence, hf_index, ett_mms_FileDirectory_Response); |
7339 | |
|
7340 | 0 | return offset; |
7341 | 0 | } |
7342 | | |
7343 | | |
7344 | | static const value_string mms_ConfirmedServiceResponse_vals[] = { |
7345 | | { 0, "status" }, |
7346 | | { 1, "getNameList" }, |
7347 | | { 2, "identify" }, |
7348 | | { 3, "rename" }, |
7349 | | { 4, "read" }, |
7350 | | { 5, "write" }, |
7351 | | { 6, "getVariableAccessAttributes" }, |
7352 | | { 7, "defineNamedVariable" }, |
7353 | | { 8, "defineScatteredAccess" }, |
7354 | | { 9, "getScatteredAccessAttributes" }, |
7355 | | { 10, "deleteVariableAccess" }, |
7356 | | { 11, "defineNamedVariableList" }, |
7357 | | { 12, "getNamedVariableListAttributes" }, |
7358 | | { 13, "deleteNamedVariableList" }, |
7359 | | { 14, "defineNamedType" }, |
7360 | | { 15, "getNamedTypeAttributes" }, |
7361 | | { 16, "deleteNamedType" }, |
7362 | | { 17, "input" }, |
7363 | | { 18, "output" }, |
7364 | | { 19, "takeControl" }, |
7365 | | { 20, "relinquishControl" }, |
7366 | | { 21, "defineSemaphore" }, |
7367 | | { 22, "deleteSemaphore" }, |
7368 | | { 23, "reportSemaphoreStatus" }, |
7369 | | { 24, "reportPoolSemaphoreStatus" }, |
7370 | | { 25, "reportSemaphoreEntryStatus" }, |
7371 | | { 26, "initiateDownloadSequence" }, |
7372 | | { 27, "downloadSegment" }, |
7373 | | { 28, "terminateDownloadSequence" }, |
7374 | | { 29, "initiateUploadSequence" }, |
7375 | | { 30, "uploadSegment" }, |
7376 | | { 31, "terminateUploadSequence" }, |
7377 | | { 32, "requestDomainDownLoad" }, |
7378 | | { 33, "requestDomainUpload" }, |
7379 | | { 34, "loadDomainContent" }, |
7380 | | { 35, "storeDomainContent" }, |
7381 | | { 36, "deleteDomain" }, |
7382 | | { 37, "getDomainAttributes" }, |
7383 | | { 38, "createProgramInvocation" }, |
7384 | | { 39, "deleteProgramInvocation" }, |
7385 | | { 40, "start" }, |
7386 | | { 41, "stop" }, |
7387 | | { 42, "resume" }, |
7388 | | { 43, "reset" }, |
7389 | | { 44, "kill" }, |
7390 | | { 45, "getProgramInvocationAttributes" }, |
7391 | | { 46, "obtainFile" }, |
7392 | | { 72, "fileOpen" }, |
7393 | | { 47, "defineEventCondition" }, |
7394 | | { 48, "deleteEventCondition" }, |
7395 | | { 49, "getEventConditionAttributes" }, |
7396 | | { 50, "reportEventConditionStatus" }, |
7397 | | { 51, "alterEventConditionMonitoring" }, |
7398 | | { 52, "triggerEvent" }, |
7399 | | { 53, "defineEventAction" }, |
7400 | | { 54, "deleteEventAction" }, |
7401 | | { 55, "getEventActionAttributes" }, |
7402 | | { 56, "reportActionStatus" }, |
7403 | | { 57, "defineEventEnrollment" }, |
7404 | | { 58, "deleteEventEnrollment" }, |
7405 | | { 59, "alterEventEnrollment" }, |
7406 | | { 60, "reportEventEnrollmentStatus" }, |
7407 | | { 61, "getEventEnrollmentAttributes" }, |
7408 | | { 62, "acknowledgeEventNotification" }, |
7409 | | { 63, "getAlarmSummary" }, |
7410 | | { 64, "getAlarmEnrollmentSummary" }, |
7411 | | { 65, "readJournal" }, |
7412 | | { 66, "writeJournal" }, |
7413 | | { 67, "initializeJournal" }, |
7414 | | { 68, "reportJournalStatus" }, |
7415 | | { 69, "createJournal" }, |
7416 | | { 70, "deleteJournal" }, |
7417 | | { 71, "getCapabilityList" }, |
7418 | | { 73, "fileRead" }, |
7419 | | { 74, "fileClose" }, |
7420 | | { 75, "fileRename" }, |
7421 | | { 76, "fileDelete" }, |
7422 | | { 77, "fileDirectory" }, |
7423 | | { 0, NULL } |
7424 | | }; |
7425 | | |
7426 | | static const ber_choice_t ConfirmedServiceResponse_choice[] = { |
7427 | | { 0, &hf_mms_status_01 , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Status_Response }, |
7428 | | { 1, &hf_mms_getNameList_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_GetNameList_Response }, |
7429 | | { 2, &hf_mms_identify_01 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Identify_Response }, |
7430 | | { 3, &hf_mms_rename_01 , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Rename_Response }, |
7431 | | { 4, &hf_mms_read_01 , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_Read_Response }, |
7432 | | { 5, &hf_mms_write_01 , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Write_Response }, |
7433 | | { 6, &hf_mms_getVariableAccessAttributes_01, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_GetVariableAccessAttributes_Response }, |
7434 | | { 7, &hf_mms_defineNamedVariable_01, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariable_Response }, |
7435 | | { 8, &hf_mms_defineScatteredAccess_01, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_DefineScatteredAccess_Response }, |
7436 | | { 9, &hf_mms_getScatteredAccessAttributes_01, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_GetScatteredAccessAttributes_Response }, |
7437 | | { 10, &hf_mms_deleteVariableAccess_01, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_DeleteVariableAccess_Response }, |
7438 | | { 11, &hf_mms_defineNamedVariableList_01, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedVariableList_Response }, |
7439 | | { 12, &hf_mms_getNamedVariableListAttributes_01, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedVariableListAttributes_Response }, |
7440 | | { 13, &hf_mms_deleteNamedVariableList_01, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedVariableList_Response }, |
7441 | | { 14, &hf_mms_defineNamedType_01, BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_mms_DefineNamedType_Response }, |
7442 | | { 15, &hf_mms_getNamedTypeAttributes_01, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_mms_GetNamedTypeAttributes_Response }, |
7443 | | { 16, &hf_mms_deleteNamedType_01, BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_mms_DeleteNamedType_Response }, |
7444 | | { 17, &hf_mms_input_01 , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_mms_Input_Response }, |
7445 | | { 18, &hf_mms_output_01 , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_mms_Output_Response }, |
7446 | | { 19, &hf_mms_takeControl_01 , BER_CLASS_CON, 19, 0, dissect_mms_TakeControl_Response }, |
7447 | | { 20, &hf_mms_relinquishControl_01, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_mms_RelinquishControl_Response }, |
7448 | | { 21, &hf_mms_defineSemaphore_01, BER_CLASS_CON, 21, BER_FLAGS_IMPLTAG, dissect_mms_DefineSemaphore_Response }, |
7449 | | { 22, &hf_mms_deleteSemaphore_01, BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_mms_DeleteSemaphore_Response }, |
7450 | | { 23, &hf_mms_reportSemaphoreStatus_01, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreStatus_Response }, |
7451 | | { 24, &hf_mms_reportPoolSemaphoreStatus_01, BER_CLASS_CON, 24, BER_FLAGS_IMPLTAG, dissect_mms_ReportPoolSemaphoreStatus_Response }, |
7452 | | { 25, &hf_mms_reportSemaphoreEntryStatus_01, BER_CLASS_CON, 25, BER_FLAGS_IMPLTAG, dissect_mms_ReportSemaphoreEntryStatus_Response }, |
7453 | | { 26, &hf_mms_initiateDownloadSequence_01, BER_CLASS_CON, 26, BER_FLAGS_IMPLTAG, dissect_mms_InitiateDownloadSequence_Response }, |
7454 | | { 27, &hf_mms_downloadSegment_01, BER_CLASS_CON, 27, BER_FLAGS_IMPLTAG, dissect_mms_DownloadSegment_Response }, |
7455 | | { 28, &hf_mms_terminateDownloadSequence_01, BER_CLASS_CON, 28, BER_FLAGS_IMPLTAG, dissect_mms_TerminateDownloadSequence_Response }, |
7456 | | { 29, &hf_mms_initiateUploadSequence_01, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_mms_InitiateUploadSequence_Response }, |
7457 | | { 30, &hf_mms_uploadSegment_01, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_mms_UploadSegment_Response }, |
7458 | | { 31, &hf_mms_terminateUploadSequence_01, BER_CLASS_CON, 31, BER_FLAGS_IMPLTAG, dissect_mms_TerminateUploadSequence_Response }, |
7459 | | { 32, &hf_mms_requestDomainDownLoad, BER_CLASS_CON, 32, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainDownload_Response }, |
7460 | | { 33, &hf_mms_requestDomainUpload_01, BER_CLASS_CON, 33, BER_FLAGS_IMPLTAG, dissect_mms_RequestDomainUpload_Response }, |
7461 | | { 34, &hf_mms_loadDomainContent_01, BER_CLASS_CON, 34, BER_FLAGS_IMPLTAG, dissect_mms_LoadDomainContent_Response }, |
7462 | | { 35, &hf_mms_storeDomainContent_01, BER_CLASS_CON, 35, BER_FLAGS_IMPLTAG, dissect_mms_StoreDomainContent_Response }, |
7463 | | { 36, &hf_mms_deleteDomain_01 , BER_CLASS_CON, 36, BER_FLAGS_IMPLTAG, dissect_mms_DeleteDomain_Response }, |
7464 | | { 37, &hf_mms_getDomainAttributes_01, BER_CLASS_CON, 37, BER_FLAGS_IMPLTAG, dissect_mms_GetDomainAttributes_Response }, |
7465 | | { 38, &hf_mms_createProgramInvocation_01, BER_CLASS_CON, 38, BER_FLAGS_IMPLTAG, dissect_mms_CreateProgramInvocation_Response }, |
7466 | | { 39, &hf_mms_deleteProgramInvocation_01, BER_CLASS_CON, 39, BER_FLAGS_IMPLTAG, dissect_mms_DeleteProgramInvocation_Response }, |
7467 | | { 40, &hf_mms_start_01 , BER_CLASS_CON, 40, BER_FLAGS_IMPLTAG, dissect_mms_Start_Response }, |
7468 | | { 41, &hf_mms_stop_01 , BER_CLASS_CON, 41, BER_FLAGS_IMPLTAG, dissect_mms_Stop_Response }, |
7469 | | { 42, &hf_mms_resume_01 , BER_CLASS_CON, 42, BER_FLAGS_IMPLTAG, dissect_mms_Resume_Response }, |
7470 | | { 43, &hf_mms_reset_01 , BER_CLASS_CON, 43, BER_FLAGS_IMPLTAG, dissect_mms_Reset_Response }, |
7471 | | { 44, &hf_mms_kill_01 , BER_CLASS_CON, 44, BER_FLAGS_IMPLTAG, dissect_mms_Kill_Response }, |
7472 | | { 45, &hf_mms_getProgramInvocationAttributes_01, BER_CLASS_CON, 45, BER_FLAGS_IMPLTAG, dissect_mms_GetProgramInvocationAttributes_Response }, |
7473 | | { 46, &hf_mms_obtainFile_01 , BER_CLASS_CON, 46, BER_FLAGS_IMPLTAG, dissect_mms_ObtainFile_Response }, |
7474 | | { 72, &hf_mms_fileOpen_01 , BER_CLASS_CON, 72, BER_FLAGS_IMPLTAG, dissect_mms_FileOpen_Response }, |
7475 | | { 47, &hf_mms_defineEventCondition_01, BER_CLASS_CON, 47, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventCondition_Response }, |
7476 | | { 48, &hf_mms_confirmedServiceResponse_deleteEventCondition, BER_CLASS_CON, 48, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventCondition_Response }, |
7477 | | { 49, &hf_mms_getEventConditionAttributes_01, BER_CLASS_CON, 49, BER_FLAGS_IMPLTAG, dissect_mms_GetEventConditionAttributes_Response }, |
7478 | | { 50, &hf_mms_reportEventConditionStatus_01, BER_CLASS_CON, 50, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventConditionStatus_Response }, |
7479 | | { 51, &hf_mms_alterEventConditionMonitoring_01, BER_CLASS_CON, 51, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventConditionMonitoring_Response }, |
7480 | | { 52, &hf_mms_triggerEvent_01 , BER_CLASS_CON, 52, BER_FLAGS_IMPLTAG, dissect_mms_TriggerEvent_Response }, |
7481 | | { 53, &hf_mms_defineEventAction_01, BER_CLASS_CON, 53, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventAction_Response }, |
7482 | | { 54, &hf_mms_confirmedServiceRequest_deleteEventAction_01, BER_CLASS_CON, 54, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventAction_Response }, |
7483 | | { 55, &hf_mms_getEventActionAttributes_01, BER_CLASS_CON, 55, BER_FLAGS_IMPLTAG, dissect_mms_GetEventActionAttributes_Response }, |
7484 | | { 56, &hf_mms_reportActionStatus, BER_CLASS_CON, 56, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventActionStatus_Response }, |
7485 | | { 57, &hf_mms_defineEventEnrollment_01, BER_CLASS_CON, 57, BER_FLAGS_IMPLTAG, dissect_mms_DefineEventEnrollment_Response }, |
7486 | | { 58, &hf_mms_confirmedServiceResponse_deleteEventEnrollment, BER_CLASS_CON, 58, BER_FLAGS_IMPLTAG, dissect_mms_DeleteEventEnrollment_Response }, |
7487 | | { 59, &hf_mms_alterEventEnrollment_01, BER_CLASS_CON, 59, BER_FLAGS_IMPLTAG, dissect_mms_AlterEventEnrollment_Response }, |
7488 | | { 60, &hf_mms_reportEventEnrollmentStatus_01, BER_CLASS_CON, 60, BER_FLAGS_IMPLTAG, dissect_mms_ReportEventEnrollmentStatus_Response }, |
7489 | | { 61, &hf_mms_getEventEnrollmentAttributes_01, BER_CLASS_CON, 61, BER_FLAGS_IMPLTAG, dissect_mms_GetEventEnrollmentAttributes_Response }, |
7490 | | { 62, &hf_mms_acknowledgeEventNotification_01, BER_CLASS_CON, 62, BER_FLAGS_IMPLTAG, dissect_mms_AcknowledgeEventNotification_Response }, |
7491 | | { 63, &hf_mms_getAlarmSummary_01, BER_CLASS_CON, 63, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmSummary_Response }, |
7492 | | { 64, &hf_mms_getAlarmEnrollmentSummary_01, BER_CLASS_CON, 64, BER_FLAGS_IMPLTAG, dissect_mms_GetAlarmEnrollmentSummary_Response }, |
7493 | | { 65, &hf_mms_readJournal_01 , BER_CLASS_CON, 65, BER_FLAGS_IMPLTAG, dissect_mms_ReadJournal_Response }, |
7494 | | { 66, &hf_mms_writeJournal_01 , BER_CLASS_CON, 66, BER_FLAGS_IMPLTAG, dissect_mms_WriteJournal_Response }, |
7495 | | { 67, &hf_mms_initializeJournal_01, BER_CLASS_CON, 67, BER_FLAGS_IMPLTAG, dissect_mms_InitializeJournal_Response }, |
7496 | | { 68, &hf_mms_reportJournalStatus_01, BER_CLASS_CON, 68, BER_FLAGS_IMPLTAG, dissect_mms_ReportJournalStatus_Response }, |
7497 | | { 69, &hf_mms_createJournal_01, BER_CLASS_CON, 69, BER_FLAGS_IMPLTAG, dissect_mms_CreateJournal_Response }, |
7498 | | { 70, &hf_mms_deleteJournal_01, BER_CLASS_CON, 70, BER_FLAGS_IMPLTAG, dissect_mms_DeleteJournal_Response }, |
7499 | | { 71, &hf_mms_getCapabilityList_01, BER_CLASS_CON, 71, BER_FLAGS_IMPLTAG, dissect_mms_GetCapabilityList_Response }, |
7500 | | { 73, &hf_mms_fileRead_01 , BER_CLASS_CON, 73, BER_FLAGS_IMPLTAG, dissect_mms_FileRead_Response }, |
7501 | | { 74, &hf_mms_fileClose_01 , BER_CLASS_CON, 74, BER_FLAGS_IMPLTAG, dissect_mms_FileClose_Response }, |
7502 | | { 75, &hf_mms_fileRename_01 , BER_CLASS_CON, 75, BER_FLAGS_IMPLTAG, dissect_mms_FileRename_Response }, |
7503 | | { 76, &hf_mms_fileDelete_01 , BER_CLASS_CON, 76, BER_FLAGS_IMPLTAG, dissect_mms_FileDelete_Response }, |
7504 | | { 77, &hf_mms_fileDirectory_01, BER_CLASS_CON, 77, BER_FLAGS_IMPLTAG, dissect_mms_FileDirectory_Response }, |
7505 | | { 0, NULL, 0, 0, 0, NULL } |
7506 | | }; |
7507 | | |
7508 | | static int |
7509 | 94 | dissect_mms_ConfirmedServiceResponse(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7510 | 94 | int8_t ber_class; |
7511 | 94 | bool pc; |
7512 | 94 | int32_t tag; |
7513 | | |
7514 | 94 | get_ber_identifier(tvb, offset, &ber_class, &pc, &tag); |
7515 | 94 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
7516 | 94 | if(mms_priv){ |
7517 | 94 | mms_priv->confirmedservice_type = tag; |
7518 | 94 | } |
7519 | | |
7520 | 94 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
7521 | 94 | ConfirmedServiceResponse_choice, hf_index, ett_mms_ConfirmedServiceResponse, |
7522 | 94 | NULL); |
7523 | | |
7524 | | |
7525 | | |
7526 | 94 | return offset; |
7527 | 94 | } |
7528 | | |
7529 | | |
7530 | | static const ber_sequence_t Confirmed_ResponsePDU_sequence[] = { |
7531 | | { &hf_mms_invokeID , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_mms_Unsigned32 }, |
7532 | | { &hf_mms_confirmedServiceResponse, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ConfirmedServiceResponse }, |
7533 | | { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail }, |
7534 | | { NULL, 0, 0, 0, NULL } |
7535 | | }; |
7536 | | |
7537 | | static int |
7538 | 129 | dissect_mms_Confirmed_ResponsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7539 | | |
7540 | 129 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7541 | 129 | Confirmed_ResponsePDU_sequence, hf_index, ett_mms_Confirmed_ResponsePDU); |
7542 | | |
7543 | 129 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
7544 | 129 | if(tree && mms_priv){ |
7545 | 12 | mms_priv->pdu_item = (proto_item*)tree->last_child; |
7546 | 12 | } |
7547 | | |
7548 | | |
7549 | 129 | return offset; |
7550 | 129 | } |
7551 | | |
7552 | | |
7553 | | static const ber_sequence_t Confirmed_ErrorPDU_sequence[] = { |
7554 | | { &hf_mms_invokeID , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
7555 | | { &hf_mms_modifierPosition, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
7556 | | { &hf_mms_serviceError , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError }, |
7557 | | { NULL, 0, 0, 0, NULL } |
7558 | | }; |
7559 | | |
7560 | | static int |
7561 | 2 | dissect_mms_Confirmed_ErrorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7562 | 2 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7563 | 2 | Confirmed_ErrorPDU_sequence, hf_index, ett_mms_Confirmed_ErrorPDU); |
7564 | | |
7565 | 2 | return offset; |
7566 | 2 | } |
7567 | | |
7568 | | |
7569 | | static const ber_sequence_t T_listOfAccessResult_sequence_of[1] = { |
7570 | | { &hf_mms_listOfAccessResult_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_AccessResult }, |
7571 | | }; |
7572 | | |
7573 | | static int |
7574 | 0 | dissect_mms_T_listOfAccessResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7575 | |
|
7576 | 0 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
7577 | 0 | if(mms_priv){ |
7578 | 0 | mms_priv->listOfAccessResult_cnt = 0; |
7579 | 0 | } |
7580 | |
|
7581 | 0 | offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, |
7582 | 0 | T_listOfAccessResult_sequence_of, hf_index, ett_mms_T_listOfAccessResult); |
7583 | | |
7584 | | |
7585 | |
|
7586 | 0 | return offset; |
7587 | 0 | } |
7588 | | |
7589 | | |
7590 | | static const ber_sequence_t InformationReport_sequence[] = { |
7591 | | { &hf_mms_variableAccessSpecification, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_VariableAccessSpecification }, |
7592 | | { &hf_mms_listOfAccessResult_01, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_T_listOfAccessResult }, |
7593 | | { NULL, 0, 0, 0, NULL } |
7594 | | }; |
7595 | | |
7596 | | static int |
7597 | 1 | dissect_mms_InformationReport(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7598 | 1 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7599 | 1 | InformationReport_sequence, hf_index, ett_mms_InformationReport); |
7600 | | |
7601 | 1 | return offset; |
7602 | 1 | } |
7603 | | |
7604 | | |
7605 | | |
7606 | | static int |
7607 | 0 | dissect_mms_UnsolicitedStatus(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7608 | 0 | offset = dissect_mms_Status_Response(implicit_tag, tvb, offset, actx, tree, hf_index); |
7609 | |
|
7610 | 0 | return offset; |
7611 | 0 | } |
7612 | | |
7613 | | |
7614 | | static const value_string mms_T_eventConditionName_01_vals[] = { |
7615 | | { 0, "eventCondition" }, |
7616 | | { 1, "undefined" }, |
7617 | | { 0, NULL } |
7618 | | }; |
7619 | | |
7620 | | static const ber_choice_t T_eventConditionName_01_choice[] = { |
7621 | | { 0, &hf_mms_eventCondition , BER_CLASS_CON, 0, 0, dissect_mms_ObjectName }, |
7622 | | { 1, &hf_mms_undefined , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_NULL }, |
7623 | | { 0, NULL, 0, 0, 0, NULL } |
7624 | | }; |
7625 | | |
7626 | | static int |
7627 | 0 | dissect_mms_T_eventConditionName_01(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7628 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
7629 | 0 | T_eventConditionName_01_choice, hf_index, ett_mms_T_eventConditionName_01, |
7630 | 0 | NULL); |
7631 | |
|
7632 | 0 | return offset; |
7633 | 0 | } |
7634 | | |
7635 | | |
7636 | | static const value_string mms_T_eventActionResult_vals[] = { |
7637 | | { 0, "success" }, |
7638 | | { 1, "failure" }, |
7639 | | { 0, NULL } |
7640 | | }; |
7641 | | |
7642 | | static const ber_choice_t T_eventActionResult_choice[] = { |
7643 | | { 0, &hf_mms_success_02 , BER_CLASS_CON, 0, 0, dissect_mms_ConfirmedServiceResponse }, |
7644 | | { 1, &hf_mms_failure_01 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError }, |
7645 | | { 0, NULL, 0, 0, 0, NULL } |
7646 | | }; |
7647 | | |
7648 | | static int |
7649 | 0 | dissect_mms_T_eventActionResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7650 | 0 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
7651 | 0 | T_eventActionResult_choice, hf_index, ett_mms_T_eventActionResult, |
7652 | 0 | NULL); |
7653 | |
|
7654 | 0 | return offset; |
7655 | 0 | } |
7656 | | |
7657 | | |
7658 | | static const ber_sequence_t T_actionResult_sequence[] = { |
7659 | | { &hf_mms_eventActioName , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
7660 | | { &hf_mms_eventActionResult, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_eventActionResult }, |
7661 | | { NULL, 0, 0, 0, NULL } |
7662 | | }; |
7663 | | |
7664 | | static int |
7665 | 0 | dissect_mms_T_actionResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7666 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7667 | 0 | T_actionResult_sequence, hf_index, ett_mms_T_actionResult); |
7668 | |
|
7669 | 0 | return offset; |
7670 | 0 | } |
7671 | | |
7672 | | |
7673 | | static const ber_sequence_t EventNotification_sequence[] = { |
7674 | | { &hf_mms_eventEnrollmentName, BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_mms_ObjectName }, |
7675 | | { &hf_mms_eventConditionName_02, BER_CLASS_CON, 1, 0, dissect_mms_T_eventConditionName_01 }, |
7676 | | { &hf_mms_severity , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned8 }, |
7677 | | { &hf_mms_currentState , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_EC_State }, |
7678 | | { &hf_mms_transitionTime , BER_CLASS_CON, 4, BER_FLAGS_NOTCHKTAG, dissect_mms_EventTime }, |
7679 | | { &hf_mms_notificationLost, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_BOOLEAN }, |
7680 | | { &hf_mms_alarmAcknowledgmentRule, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_AlarmAckRule }, |
7681 | | { &hf_mms_actionResult , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_T_actionResult }, |
7682 | | { NULL, 0, 0, 0, NULL } |
7683 | | }; |
7684 | | |
7685 | | static int |
7686 | 0 | dissect_mms_EventNotification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7687 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7688 | 0 | EventNotification_sequence, hf_index, ett_mms_EventNotification); |
7689 | |
|
7690 | 0 | return offset; |
7691 | 0 | } |
7692 | | |
7693 | | |
7694 | | static const value_string mms_UnconfirmedService_vals[] = { |
7695 | | { 0, "informationReport" }, |
7696 | | { 1, "unsolicitedStatus" }, |
7697 | | { 2, "eventNotification" }, |
7698 | | { 0, NULL } |
7699 | | }; |
7700 | | |
7701 | | static const ber_choice_t UnconfirmedService_choice[] = { |
7702 | | { 0, &hf_mms_informationReport, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_InformationReport }, |
7703 | | { 1, &hf_mms_unsolicitedStatus, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_UnsolicitedStatus }, |
7704 | | { 2, &hf_mms_eventNotification, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_EventNotification }, |
7705 | | { 0, NULL, 0, 0, 0, NULL } |
7706 | | }; |
7707 | | |
7708 | | static int |
7709 | 3 | dissect_mms_UnconfirmedService(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7710 | 3 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
7711 | 3 | UnconfirmedService_choice, hf_index, ett_mms_UnconfirmedService, |
7712 | 3 | NULL); |
7713 | | |
7714 | 3 | return offset; |
7715 | 3 | } |
7716 | | |
7717 | | |
7718 | | static const ber_sequence_t Unconfirmed_PDU_sequence[] = { |
7719 | | { &hf_mms_unconfirmedService, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_UnconfirmedService }, |
7720 | | { &hf_mms_cs_request_detail, BER_CLASS_CON, 79, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_mms_CS_Request_Detail }, |
7721 | | { NULL, 0, 0, 0, NULL } |
7722 | | }; |
7723 | | |
7724 | | static int |
7725 | 6 | dissect_mms_Unconfirmed_PDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7726 | 6 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
7727 | 6 | if (mms_priv && !mms_priv->mms_trans_p) { |
7728 | | /* create a "fake" mms_trans structure */ |
7729 | 6 | mms_priv->mms_trans_p=wmem_new0(actx->pinfo->pool, mms_transaction_t); |
7730 | 6 | mms_priv->mms_trans_p->req_time = actx->pinfo->fd->abs_ts; |
7731 | | |
7732 | 6 | } |
7733 | | |
7734 | 6 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7735 | 6 | Unconfirmed_PDU_sequence, hf_index, ett_mms_Unconfirmed_PDU); |
7736 | | |
7737 | 6 | if(tree && mms_priv){ |
7738 | 2 | mms_priv->pdu_item = (proto_item*)tree->last_child; |
7739 | 2 | } |
7740 | | |
7741 | 6 | return offset; |
7742 | 6 | } |
7743 | | |
7744 | | |
7745 | | static const value_string mms_T_confirmed_requestPDU_vals[] = { |
7746 | | { 0, "other" }, |
7747 | | { 1, "unrecognized-service" }, |
7748 | | { 2, "unrecognized-modifier" }, |
7749 | | { 3, "invalid-invokeID" }, |
7750 | | { 4, "invalid-argument" }, |
7751 | | { 5, "invalid-modifier" }, |
7752 | | { 6, "max-serv-outstanding-exceeded" }, |
7753 | | { 8, "max-recursion-exceeded" }, |
7754 | | { 9, "value-out-of-range" }, |
7755 | | { 0, NULL } |
7756 | | }; |
7757 | | |
7758 | | |
7759 | | static int |
7760 | 0 | dissect_mms_T_confirmed_requestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7761 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7762 | 0 | NULL); |
7763 | |
|
7764 | 0 | return offset; |
7765 | 0 | } |
7766 | | |
7767 | | |
7768 | | static const value_string mms_T_confirmed_responsePDU_vals[] = { |
7769 | | { 0, "other" }, |
7770 | | { 1, "unrecognized-service" }, |
7771 | | { 2, "invalid-invokeID" }, |
7772 | | { 3, "invalid-result" }, |
7773 | | { 5, "max-recursion-exceeded" }, |
7774 | | { 6, "value-out-of-range" }, |
7775 | | { 0, NULL } |
7776 | | }; |
7777 | | |
7778 | | |
7779 | | static int |
7780 | 0 | dissect_mms_T_confirmed_responsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7781 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7782 | 0 | NULL); |
7783 | |
|
7784 | 0 | return offset; |
7785 | 0 | } |
7786 | | |
7787 | | |
7788 | | static const value_string mms_T_confirmed_errorPDU_vals[] = { |
7789 | | { 0, "other" }, |
7790 | | { 1, "unrecognized-service" }, |
7791 | | { 2, "invalid-invokeID" }, |
7792 | | { 3, "invalid-serviceError" }, |
7793 | | { 4, "value-out-of-range" }, |
7794 | | { 0, NULL } |
7795 | | }; |
7796 | | |
7797 | | |
7798 | | static int |
7799 | 0 | dissect_mms_T_confirmed_errorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7800 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7801 | 0 | NULL); |
7802 | |
|
7803 | 0 | return offset; |
7804 | 0 | } |
7805 | | |
7806 | | |
7807 | | static const value_string mms_T_unconfirmedPDU_vals[] = { |
7808 | | { 0, "other" }, |
7809 | | { 1, "unrecognized-service" }, |
7810 | | { 2, "invalid-argument" }, |
7811 | | { 3, "max-recursion-exceeded" }, |
7812 | | { 4, "value-out-of-range" }, |
7813 | | { 0, NULL } |
7814 | | }; |
7815 | | |
7816 | | |
7817 | | static int |
7818 | 0 | dissect_mms_T_unconfirmedPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7819 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7820 | 0 | NULL); |
7821 | |
|
7822 | 0 | return offset; |
7823 | 0 | } |
7824 | | |
7825 | | |
7826 | | static const value_string mms_T_pdu_error_vals[] = { |
7827 | | { 0, "unknown-pdu-type" }, |
7828 | | { 1, "invalid-pdu" }, |
7829 | | { 2, "illegal-acse-mapping" }, |
7830 | | { 0, NULL } |
7831 | | }; |
7832 | | |
7833 | | |
7834 | | static int |
7835 | 0 | dissect_mms_T_pdu_error(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7836 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7837 | 0 | NULL); |
7838 | |
|
7839 | 0 | return offset; |
7840 | 0 | } |
7841 | | |
7842 | | |
7843 | | static const value_string mms_T_cancel_requestPDU_vals[] = { |
7844 | | { 0, "other" }, |
7845 | | { 1, "invalid-invokeID" }, |
7846 | | { 0, NULL } |
7847 | | }; |
7848 | | |
7849 | | |
7850 | | static int |
7851 | 0 | dissect_mms_T_cancel_requestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7852 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7853 | 0 | NULL); |
7854 | |
|
7855 | 0 | return offset; |
7856 | 0 | } |
7857 | | |
7858 | | |
7859 | | static const value_string mms_T_cancel_responsePDU_vals[] = { |
7860 | | { 0, "other" }, |
7861 | | { 1, "invalid-invokeID" }, |
7862 | | { 0, NULL } |
7863 | | }; |
7864 | | |
7865 | | |
7866 | | static int |
7867 | 0 | dissect_mms_T_cancel_responsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7868 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7869 | 0 | NULL); |
7870 | |
|
7871 | 0 | return offset; |
7872 | 0 | } |
7873 | | |
7874 | | |
7875 | | static const value_string mms_T_cancel_errorPDU_vals[] = { |
7876 | | { 0, "other" }, |
7877 | | { 1, "invalid-invokeID" }, |
7878 | | { 2, "invalid-serviceError" }, |
7879 | | { 3, "value-out-of-range" }, |
7880 | | { 0, NULL } |
7881 | | }; |
7882 | | |
7883 | | |
7884 | | static int |
7885 | 0 | dissect_mms_T_cancel_errorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7886 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7887 | 0 | NULL); |
7888 | |
|
7889 | 0 | return offset; |
7890 | 0 | } |
7891 | | |
7892 | | |
7893 | | static const value_string mms_T_conclude_requestPDU_vals[] = { |
7894 | | { 0, "other" }, |
7895 | | { 1, "invalid-argument" }, |
7896 | | { 0, NULL } |
7897 | | }; |
7898 | | |
7899 | | |
7900 | | static int |
7901 | 0 | dissect_mms_T_conclude_requestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7902 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7903 | 0 | NULL); |
7904 | |
|
7905 | 0 | return offset; |
7906 | 0 | } |
7907 | | |
7908 | | |
7909 | | static const value_string mms_T_conclude_responsePDU_vals[] = { |
7910 | | { 0, "other" }, |
7911 | | { 1, "invalid-result" }, |
7912 | | { 0, NULL } |
7913 | | }; |
7914 | | |
7915 | | |
7916 | | static int |
7917 | 0 | dissect_mms_T_conclude_responsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7918 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7919 | 0 | NULL); |
7920 | |
|
7921 | 0 | return offset; |
7922 | 0 | } |
7923 | | |
7924 | | |
7925 | | static const value_string mms_T_conclude_errorPDU_vals[] = { |
7926 | | { 0, "other" }, |
7927 | | { 1, "invalid-serviceError" }, |
7928 | | { 2, "value-out-of-range" }, |
7929 | | { 0, NULL } |
7930 | | }; |
7931 | | |
7932 | | |
7933 | | static int |
7934 | 0 | dissect_mms_T_conclude_errorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7935 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
7936 | 0 | NULL); |
7937 | |
|
7938 | 0 | return offset; |
7939 | 0 | } |
7940 | | |
7941 | | |
7942 | | static const value_string mms_T_rejectReason_vals[] = { |
7943 | | { 1, "confirmed-requestPDU" }, |
7944 | | { 2, "confirmed-responsePDU" }, |
7945 | | { 3, "confirmed-errorPDU" }, |
7946 | | { 4, "unconfirmedPDU" }, |
7947 | | { 5, "pdu-error" }, |
7948 | | { 6, "cancel-requestPDU" }, |
7949 | | { 7, "cancel-responsePDU" }, |
7950 | | { 8, "cancel-errorPDU" }, |
7951 | | { 9, "conclude-requestPDU" }, |
7952 | | { 10, "conclude-responsePDU" }, |
7953 | | { 11, "conclude-errorPDU" }, |
7954 | | { 0, NULL } |
7955 | | }; |
7956 | | |
7957 | | static const ber_choice_t T_rejectReason_choice[] = { |
7958 | | { 1, &hf_mms_confirmed_requestPDU, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_requestPDU }, |
7959 | | { 2, &hf_mms_confirmed_responsePDU, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_responsePDU }, |
7960 | | { 3, &hf_mms_confirmed_errorPDU, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_T_confirmed_errorPDU }, |
7961 | | { 4, &hf_mms_unconfirmedPDU , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_T_unconfirmedPDU }, |
7962 | | { 5, &hf_mms_pdu_error , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_T_pdu_error }, |
7963 | | { 6, &hf_mms_cancel_requestPDU, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_requestPDU }, |
7964 | | { 7, &hf_mms_cancel_responsePDU, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_responsePDU }, |
7965 | | { 8, &hf_mms_cancel_errorPDU , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_T_cancel_errorPDU }, |
7966 | | { 9, &hf_mms_conclude_requestPDU, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_requestPDU }, |
7967 | | { 10, &hf_mms_conclude_responsePDU, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_responsePDU }, |
7968 | | { 11, &hf_mms_conclude_errorPDU, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_T_conclude_errorPDU }, |
7969 | | { 0, NULL, 0, 0, 0, NULL } |
7970 | | }; |
7971 | | |
7972 | | static int |
7973 | 10 | dissect_mms_T_rejectReason(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7974 | 10 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
7975 | 10 | T_rejectReason_choice, hf_index, ett_mms_T_rejectReason, |
7976 | 10 | NULL); |
7977 | | |
7978 | 10 | return offset; |
7979 | 10 | } |
7980 | | |
7981 | | |
7982 | | static const ber_sequence_t RejectPDU_sequence[] = { |
7983 | | { &hf_mms_originalInvokeID, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
7984 | | { &hf_mms_rejectReason , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_mms_T_rejectReason }, |
7985 | | { NULL, 0, 0, 0, NULL } |
7986 | | }; |
7987 | | |
7988 | | static int |
7989 | 12 | dissect_mms_RejectPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
7990 | 12 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
7991 | 12 | RejectPDU_sequence, hf_index, ett_mms_RejectPDU); |
7992 | | |
7993 | 12 | return offset; |
7994 | 12 | } |
7995 | | |
7996 | | |
7997 | | |
7998 | | static int |
7999 | 14 | dissect_mms_Cancel_RequestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8000 | 14 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
8001 | | |
8002 | 14 | return offset; |
8003 | 14 | } |
8004 | | |
8005 | | |
8006 | | |
8007 | | static int |
8008 | 13 | dissect_mms_Cancel_ResponsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8009 | 13 | offset = dissect_mms_Unsigned32(implicit_tag, tvb, offset, actx, tree, hf_index); |
8010 | | |
8011 | 13 | return offset; |
8012 | 13 | } |
8013 | | |
8014 | | |
8015 | | static const ber_sequence_t Cancel_ErrorPDU_sequence[] = { |
8016 | | { &hf_mms_originalInvokeID, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Unsigned32 }, |
8017 | | { &hf_mms_serviceError , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ServiceError }, |
8018 | | { NULL, 0, 0, 0, NULL } |
8019 | | }; |
8020 | | |
8021 | | static int |
8022 | 9 | dissect_mms_Cancel_ErrorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8023 | 9 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
8024 | 9 | Cancel_ErrorPDU_sequence, hf_index, ett_mms_Cancel_ErrorPDU); |
8025 | | |
8026 | 9 | return offset; |
8027 | 9 | } |
8028 | | |
8029 | | |
8030 | | |
8031 | | static int |
8032 | 0 | dissect_mms_Integer16(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8033 | 0 | offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, |
8034 | 0 | NULL); |
8035 | |
|
8036 | 0 | return offset; |
8037 | 0 | } |
8038 | | |
8039 | | |
8040 | | static int * const ParameterSupportOptions_bits[] = { |
8041 | | &hf_mms_ParameterSupportOptions_str1, |
8042 | | &hf_mms_ParameterSupportOptions_str2, |
8043 | | &hf_mms_ParameterSupportOptions_vnam, |
8044 | | &hf_mms_ParameterSupportOptions_valt, |
8045 | | &hf_mms_ParameterSupportOptions_vadr, |
8046 | | &hf_mms_ParameterSupportOptions_vsca, |
8047 | | &hf_mms_ParameterSupportOptions_tpy, |
8048 | | &hf_mms_ParameterSupportOptions_vlis, |
8049 | | &hf_mms_ParameterSupportOptions_real, |
8050 | | &hf_mms_ParameterSupportOptions_spare_bit9, |
8051 | | &hf_mms_ParameterSupportOptions_cei, |
8052 | | NULL |
8053 | | }; |
8054 | | |
8055 | | static int |
8056 | 0 | dissect_mms_ParameterSupportOptions(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8057 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
8058 | 0 | ParameterSupportOptions_bits, 11, hf_index, ett_mms_ParameterSupportOptions, |
8059 | 0 | NULL); |
8060 | |
|
8061 | 0 | return offset; |
8062 | 0 | } |
8063 | | |
8064 | | |
8065 | | static int * const ServiceSupportOptions_bits[] = { |
8066 | | &hf_mms_ServiceSupportOptions_status, |
8067 | | &hf_mms_ServiceSupportOptions_getNameList, |
8068 | | &hf_mms_ServiceSupportOptions_identify, |
8069 | | &hf_mms_ServiceSupportOptions_rename, |
8070 | | &hf_mms_ServiceSupportOptions_read, |
8071 | | &hf_mms_ServiceSupportOptions_write, |
8072 | | &hf_mms_ServiceSupportOptions_getVariableAccessAttributes, |
8073 | | &hf_mms_ServiceSupportOptions_defineNamedVariable, |
8074 | | &hf_mms_ServiceSupportOptions_defineScatteredAccess, |
8075 | | &hf_mms_ServiceSupportOptions_getScatteredAccessAttributes, |
8076 | | &hf_mms_ServiceSupportOptions_deleteVariableAccess, |
8077 | | &hf_mms_ServiceSupportOptions_defineNamedVariableList, |
8078 | | &hf_mms_ServiceSupportOptions_getNamedVariableListAttributes, |
8079 | | &hf_mms_ServiceSupportOptions_deleteNamedVariableList, |
8080 | | &hf_mms_ServiceSupportOptions_defineNamedType, |
8081 | | &hf_mms_ServiceSupportOptions_getNamedTypeAttributes, |
8082 | | &hf_mms_ServiceSupportOptions_deleteNamedType, |
8083 | | &hf_mms_ServiceSupportOptions_input, |
8084 | | &hf_mms_ServiceSupportOptions_output, |
8085 | | &hf_mms_ServiceSupportOptions_takeControl, |
8086 | | &hf_mms_ServiceSupportOptions_relinquishControl, |
8087 | | &hf_mms_ServiceSupportOptions_defineSemaphore, |
8088 | | &hf_mms_ServiceSupportOptions_deleteSemaphore, |
8089 | | &hf_mms_ServiceSupportOptions_reportSemaphoreStatus, |
8090 | | &hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus, |
8091 | | &hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus, |
8092 | | &hf_mms_ServiceSupportOptions_initiateDownloadSequence, |
8093 | | &hf_mms_ServiceSupportOptions_downloadSegment, |
8094 | | &hf_mms_ServiceSupportOptions_terminateDownloadSequence, |
8095 | | &hf_mms_ServiceSupportOptions_initiateUploadSequence, |
8096 | | &hf_mms_ServiceSupportOptions_uploadSegment, |
8097 | | &hf_mms_ServiceSupportOptions_terminateUploadSequence, |
8098 | | &hf_mms_ServiceSupportOptions_requestDomainDownload, |
8099 | | &hf_mms_ServiceSupportOptions_requestDomainUpload, |
8100 | | &hf_mms_ServiceSupportOptions_loadDomainContent, |
8101 | | &hf_mms_ServiceSupportOptions_storeDomainContent, |
8102 | | &hf_mms_ServiceSupportOptions_deleteDomain, |
8103 | | &hf_mms_ServiceSupportOptions_getDomainAttributes, |
8104 | | &hf_mms_ServiceSupportOptions_createProgramInvocation, |
8105 | | &hf_mms_ServiceSupportOptions_deleteProgramInvocation, |
8106 | | &hf_mms_ServiceSupportOptions_start, |
8107 | | &hf_mms_ServiceSupportOptions_stop, |
8108 | | &hf_mms_ServiceSupportOptions_resume, |
8109 | | &hf_mms_ServiceSupportOptions_reset, |
8110 | | &hf_mms_ServiceSupportOptions_kill, |
8111 | | &hf_mms_ServiceSupportOptions_getProgramInvocationAttributes, |
8112 | | &hf_mms_ServiceSupportOptions_obtainFile, |
8113 | | &hf_mms_ServiceSupportOptions_defineEventCondition, |
8114 | | &hf_mms_ServiceSupportOptions_deleteEventCondition, |
8115 | | &hf_mms_ServiceSupportOptions_getEventConditionAttributes, |
8116 | | &hf_mms_ServiceSupportOptions_reportEventConditionStatus, |
8117 | | &hf_mms_ServiceSupportOptions_alterEventConditionMonitoring, |
8118 | | &hf_mms_ServiceSupportOptions_triggerEvent, |
8119 | | &hf_mms_ServiceSupportOptions_defineEventAction, |
8120 | | &hf_mms_ServiceSupportOptions_deleteEventAction, |
8121 | | &hf_mms_ServiceSupportOptions_getEventActionAttributes, |
8122 | | &hf_mms_ServiceSupportOptions_reportActionStatus, |
8123 | | &hf_mms_ServiceSupportOptions_defineEventEnrollment, |
8124 | | &hf_mms_ServiceSupportOptions_deleteEventEnrollment, |
8125 | | &hf_mms_ServiceSupportOptions_alterEventEnrollment, |
8126 | | &hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus, |
8127 | | &hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes, |
8128 | | &hf_mms_ServiceSupportOptions_acknowledgeEventNotification, |
8129 | | &hf_mms_ServiceSupportOptions_getAlarmSummary, |
8130 | | &hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary, |
8131 | | &hf_mms_ServiceSupportOptions_readJournal, |
8132 | | &hf_mms_ServiceSupportOptions_writeJournal, |
8133 | | &hf_mms_ServiceSupportOptions_initializeJournal, |
8134 | | &hf_mms_ServiceSupportOptions_reportJournalStatus, |
8135 | | &hf_mms_ServiceSupportOptions_createJournal, |
8136 | | &hf_mms_ServiceSupportOptions_deleteJournal, |
8137 | | &hf_mms_ServiceSupportOptions_getCapabilityList, |
8138 | | &hf_mms_ServiceSupportOptions_fileOpen, |
8139 | | &hf_mms_ServiceSupportOptions_fileRead, |
8140 | | &hf_mms_ServiceSupportOptions_fileClose, |
8141 | | &hf_mms_ServiceSupportOptions_fileRename, |
8142 | | &hf_mms_ServiceSupportOptions_fileDelete, |
8143 | | &hf_mms_ServiceSupportOptions_fileDirectory, |
8144 | | &hf_mms_ServiceSupportOptions_unsolicitedStatus, |
8145 | | &hf_mms_ServiceSupportOptions_informationReport, |
8146 | | &hf_mms_ServiceSupportOptions_eventNotification, |
8147 | | &hf_mms_ServiceSupportOptions_attachToEventCondition, |
8148 | | &hf_mms_ServiceSupportOptions_attachToSemaphore, |
8149 | | &hf_mms_ServiceSupportOptions_conclude, |
8150 | | &hf_mms_ServiceSupportOptions_cancel, |
8151 | | NULL |
8152 | | }; |
8153 | | |
8154 | | static int |
8155 | 0 | dissect_mms_ServiceSupportOptions(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8156 | 0 | offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, |
8157 | 0 | ServiceSupportOptions_bits, 85, hf_index, ett_mms_ServiceSupportOptions, |
8158 | 0 | NULL); |
8159 | |
|
8160 | 0 | return offset; |
8161 | 0 | } |
8162 | | |
8163 | | |
8164 | | static const ber_sequence_t InitRequestDetail_sequence[] = { |
8165 | | { &hf_mms_proposedVersionNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8166 | | { &hf_mms_proposedParameterCBB, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ParameterSupportOptions }, |
8167 | | { &hf_mms_servicesSupportedCalling, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceSupportOptions }, |
8168 | | { NULL, 0, 0, 0, NULL } |
8169 | | }; |
8170 | | |
8171 | | static int |
8172 | 0 | dissect_mms_InitRequestDetail(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8173 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
8174 | 0 | InitRequestDetail_sequence, hf_index, ett_mms_InitRequestDetail); |
8175 | |
|
8176 | 0 | return offset; |
8177 | 0 | } |
8178 | | |
8179 | | |
8180 | | static const ber_sequence_t Initiate_RequestPDU_sequence[] = { |
8181 | | { &hf_mms_localDetailCalling, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
8182 | | { &hf_mms_proposedMaxServOutstandingCalling, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8183 | | { &hf_mms_proposedMaxServOutstandingCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8184 | | { &hf_mms_proposedDataStructureNestingLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer8 }, |
8185 | | { &hf_mms_mmsInitRequestDetail, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_InitRequestDetail }, |
8186 | | { NULL, 0, 0, 0, NULL } |
8187 | | }; |
8188 | | |
8189 | | static int |
8190 | 49 | dissect_mms_Initiate_RequestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8191 | | |
8192 | 49 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
8193 | 49 | Initiate_RequestPDU_sequence, hf_index, ett_mms_Initiate_RequestPDU); |
8194 | | |
8195 | 49 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
8196 | 49 | if(tree && mms_priv){ |
8197 | 8 | mms_priv->pdu_item = (proto_item*)tree->last_child; |
8198 | 8 | } |
8199 | | |
8200 | | |
8201 | | |
8202 | 49 | return offset; |
8203 | 49 | } |
8204 | | |
8205 | | |
8206 | | static const ber_sequence_t InitResponseDetail_sequence[] = { |
8207 | | { &hf_mms_negociatedVersionNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8208 | | { &hf_mms_negociatedParameterCBB, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_ParameterSupportOptions }, |
8209 | | { &hf_mms_servicesSupportedCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_ServiceSupportOptions }, |
8210 | | { NULL, 0, 0, 0, NULL } |
8211 | | }; |
8212 | | |
8213 | | static int |
8214 | 0 | dissect_mms_InitResponseDetail(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8215 | 0 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
8216 | 0 | InitResponseDetail_sequence, hf_index, ett_mms_InitResponseDetail); |
8217 | |
|
8218 | 0 | return offset; |
8219 | 0 | } |
8220 | | |
8221 | | |
8222 | | static const ber_sequence_t Initiate_ResponsePDU_sequence[] = { |
8223 | | { &hf_mms_localDetailCalled, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer32 }, |
8224 | | { &hf_mms_negociatedMaxServOutstandingCalling, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8225 | | { &hf_mms_negociatedMaxServOutstandingCalled, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Integer16 }, |
8226 | | { &hf_mms_negociatedDataStructureNestingLevel, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mms_Integer8 }, |
8227 | | { &hf_mms_mmsInitResponseDetail, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_InitResponseDetail }, |
8228 | | { NULL, 0, 0, 0, NULL } |
8229 | | }; |
8230 | | |
8231 | | static int |
8232 | 15 | dissect_mms_Initiate_ResponsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8233 | | |
8234 | 15 | offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, |
8235 | 15 | Initiate_ResponsePDU_sequence, hf_index, ett_mms_Initiate_ResponsePDU); |
8236 | | |
8237 | 15 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
8238 | 15 | if(tree && mms_priv){ |
8239 | 5 | mms_priv->pdu_item = (proto_item*)tree->last_child; |
8240 | 5 | } |
8241 | | |
8242 | 15 | return offset; |
8243 | 15 | } |
8244 | | |
8245 | | |
8246 | | |
8247 | | static int |
8248 | 0 | dissect_mms_Initiate_ErrorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8249 | 0 | offset = dissect_mms_ServiceError(implicit_tag, tvb, offset, actx, tree, hf_index); |
8250 | |
|
8251 | 0 | return offset; |
8252 | 0 | } |
8253 | | |
8254 | | |
8255 | | |
8256 | | static int |
8257 | 0 | dissect_mms_Conclude_RequestPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8258 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
8259 | |
|
8260 | 0 | return offset; |
8261 | 0 | } |
8262 | | |
8263 | | |
8264 | | |
8265 | | static int |
8266 | 0 | dissect_mms_Conclude_ResponsePDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8267 | 0 | offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); |
8268 | |
|
8269 | 0 | return offset; |
8270 | 0 | } |
8271 | | |
8272 | | |
8273 | | |
8274 | | static int |
8275 | 1 | dissect_mms_Conclude_ErrorPDU(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8276 | 1 | offset = dissect_mms_ServiceError(implicit_tag, tvb, offset, actx, tree, hf_index); |
8277 | | |
8278 | 1 | return offset; |
8279 | 1 | } |
8280 | | |
8281 | | |
8282 | | const value_string mms_MMSpdu_vals[] = { |
8283 | | { 0, "confirmed-RequestPDU" }, |
8284 | | { 1, "confirmed-ResponsePDU" }, |
8285 | | { 2, "confirmed-ErrorPDU" }, |
8286 | | { 3, "unconfirmed-PDU" }, |
8287 | | { 4, "rejectPDU" }, |
8288 | | { 5, "cancel-RequestPDU" }, |
8289 | | { 6, "cancel-ResponsePDU" }, |
8290 | | { 7, "cancel-ErrorPDU" }, |
8291 | | { 8, "initiate-RequestPDU" }, |
8292 | | { 9, "initiate-ResponsePDU" }, |
8293 | | { 10, "initiate-ErrorPDU" }, |
8294 | | { 11, "conclude-RequestPDU" }, |
8295 | | { 12, "conclude-ResponsePDU" }, |
8296 | | { 13, "conclude-ErrorPDU" }, |
8297 | | { 0, NULL } |
8298 | | }; |
8299 | | |
8300 | | static const ber_choice_t MMSpdu_choice[] = { |
8301 | | { 0, &hf_mms_confirmed_RequestPDU, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_RequestPDU }, |
8302 | | { 1, &hf_mms_confirmed_ResponsePDU, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_ResponsePDU }, |
8303 | | { 2, &hf_mms_confirmed_ErrorPDU, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_mms_Confirmed_ErrorPDU }, |
8304 | | { 3, &hf_mms_unconfirmed_PDU , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_mms_Unconfirmed_PDU }, |
8305 | | { 4, &hf_mms_rejectPDU , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_mms_RejectPDU }, |
8306 | | { 5, &hf_mms_cancel_RequestPDU, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_RequestPDU }, |
8307 | | { 6, &hf_mms_cancel_ResponsePDU, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_ResponsePDU }, |
8308 | | { 7, &hf_mms_cancel_ErrorPDU , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_mms_Cancel_ErrorPDU }, |
8309 | | { 8, &hf_mms_initiate_RequestPDU, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_RequestPDU }, |
8310 | | { 9, &hf_mms_initiate_ResponsePDU, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_ResponsePDU }, |
8311 | | { 10, &hf_mms_initiate_ErrorPDU, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_mms_Initiate_ErrorPDU }, |
8312 | | { 11, &hf_mms_conclude_RequestPDU, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_RequestPDU }, |
8313 | | { 12, &hf_mms_conclude_ResponsePDU, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_ResponsePDU }, |
8314 | | { 13, &hf_mms_conclude_ErrorPDU, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_mms_Conclude_ErrorPDU }, |
8315 | | { 0, NULL, 0, 0, 0, NULL } |
8316 | | }; |
8317 | | |
8318 | | int |
8319 | 664 | dissect_mms_MMSpdu(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { |
8320 | 664 | int branch_taken; |
8321 | 664 | int8_t ber_class; |
8322 | 664 | bool pc; |
8323 | 664 | int32_t tag; |
8324 | | |
8325 | 664 | get_ber_identifier(tvb, offset, &ber_class, &pc, &tag); |
8326 | 664 | mms_actx_private_data_t *mms_priv = (mms_actx_private_data_t *)actx->private_data; |
8327 | 664 | if(mms_priv){ |
8328 | 664 | mms_priv->mms_pdu_type = tag; |
8329 | 664 | } |
8330 | | |
8331 | | |
8332 | 664 | offset = dissect_ber_choice(actx, tree, tvb, offset, |
8333 | 664 | MMSpdu_choice, hf_index, ett_mms_MMSpdu, |
8334 | 664 | &branch_taken); |
8335 | | |
8336 | | |
8337 | 664 | if( (branch_taken!=-1) && mms_MMSpdu_vals[branch_taken].strptr ){ |
8338 | 173 | if(mms_priv){ |
8339 | 173 | switch(mms_priv->mms_pdu_type){ |
8340 | 2 | case MMS_UNCONFIRMED_PDU: |
8341 | 2 | if(mms_priv->vmd_specific==IEC61850_8_1_RPT){ |
8342 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, "Unconfirmed <RPT>"); |
8343 | 0 | proto_item_append_text(mms_priv->pdu_item, " [RPT]"); |
8344 | 2 | }else if((mms_priv->mms_trans_p)&&(mms_priv->mms_trans_p->itemid==IEC61850_ITEM_ID_OPER)){ |
8345 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, "Unconfirmed-CommandTermination"); |
8346 | 0 | proto_item_append_text(mms_priv->pdu_item, " [Unconfirmed-CommandTermination]"); |
8347 | 0 | } |
8348 | 2 | break; |
8349 | 8 | case MMS_INITIATE_REQUEST_PDU: |
8350 | 8 | col_append_str(actx->pinfo->cinfo, COL_INFO, "Associate Request"); |
8351 | 8 | proto_item_append_text(mms_priv->pdu_item, " [Associate Request]"); |
8352 | 8 | break; |
8353 | 5 | case MMS_INITIATE_RESPONSE_PDU: |
8354 | 5 | col_append_str(actx->pinfo->cinfo, COL_INFO, "Associate Response"); |
8355 | 5 | proto_item_append_text(mms_priv->pdu_item, " [Associate Response]"); |
8356 | 5 | break; |
8357 | 111 | case MMS_CONFIRMED_REQUEST_PDU: |
8358 | 111 | if(mms_priv->mms_trans_p){ |
8359 | 1 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GET_SERV_DIR){ |
8360 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, "GetServerDirectoryRequest"); |
8361 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetServerDirectoryRequest]"); |
8362 | 1 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETLOGICALDEVICEDIRECTORY){ |
8363 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetLogicalDeviceDirectoryRequest %s", mms_priv->itemid_str); |
8364 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetLogicalDeviceDirectoryRequest ]"); |
8365 | 1 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETDATASETDIRECTORY){ |
8366 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetDataSetDirectoryRequest %s", mms_priv->itemid_str); |
8367 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataSetDirectoryRequest]"); |
8368 | 1 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETDATADIRECTORY){ |
8369 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetDataDirectoryRequest%s", private_data_get_moreCinfo(actx)); |
8370 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataDirectoryRequest]"); |
8371 | 1 | } else if (mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_READ){ |
8372 | 0 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_$BR$_OR_$RP$){ |
8373 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetRCBValuesRequest %s", private_data_get_moreCinfo(actx)); |
8374 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetRCBValuesRequest]"); |
8375 | 0 | }else{ |
8376 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetDataValueRequest %s", private_data_get_moreCinfo(actx)); |
8377 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataValueRequest]"); |
8378 | 0 | } |
8379 | 1 | } else if (mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_WRITE){ |
8380 | 1 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_$BR$_OR_$RP$){ |
8381 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SetRCBValuesRequest %s", private_data_get_moreCinfo(actx)); |
8382 | 0 | proto_item_append_text(mms_priv->pdu_item, " [SetRCBValuesRequest]"); |
8383 | 1 | }else{ |
8384 | 1 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SetDataValueRequest %s", private_data_get_moreCinfo(actx)); |
8385 | 1 | proto_item_append_text(mms_priv->pdu_item, " [SetDataValueRequest]"); |
8386 | 1 | } |
8387 | 1 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
8388 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SelectWithValueRequest %s", private_data_get_moreCinfo(actx)); |
8389 | 0 | proto_item_append_text(mms_priv->pdu_item, " [SelectWithValueRequest]"); |
8390 | 0 | } |
8391 | 110 | }else if (mms_has_private_data(actx)){ |
8392 | 1 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s%s%s", |
8393 | 1 | private_data_get_preCinfo(actx), mms_MMSpdu_vals[branch_taken].strptr, private_data_get_moreCinfo(actx)); |
8394 | 1 | } |
8395 | 111 | break; |
8396 | 12 | case MMS_CONFIRMED_RESPONSE_PDU: |
8397 | 12 | if(mms_priv->mms_trans_p){ |
8398 | 0 | if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GET_SERV_DIR){ |
8399 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetServerDirectoryResponse %s", mms_priv->itemid_str); |
8400 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetServerDirectoryResponse ]"); |
8401 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETLOGICALDEVICEDIRECTORY){ |
8402 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetLogicalDeviceDirectoryResponse%s", private_data_get_moreCinfo(actx)); |
8403 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetLogicalDeviceDirectoryResponse ]"); |
8404 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETDATASETDIRECTORY){ |
8405 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetDataSetDirectoryResponse%s", private_data_get_moreCinfo(actx)); |
8406 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataSetDirectoryResponse ]"); |
8407 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_GETDATADIRECTORY){ |
8408 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "GetDataDirectoryResponse%s", private_data_get_moreCinfo(actx)); |
8409 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataDirectoryResponse ]"); |
8410 | 0 | }else if (mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_READ){ |
8411 | 0 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_$BR$_OR_$RP$){ |
8412 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, "GetRCBValuesResponse"); |
8413 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetRCBValuesResponse]"); |
8414 | 0 | }else{ |
8415 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, "GetDataValueResponse"); |
8416 | 0 | proto_item_append_text(mms_priv->pdu_item, " [GetDataValueResponse ]"); |
8417 | 0 | } |
8418 | 0 | if(mms_priv->success == 1){ |
8419 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, " success"); |
8420 | 0 | }else{ |
8421 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, " failure"); |
8422 | 0 | } |
8423 | 0 | } else if (mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_WRITE){ |
8424 | 0 | if(mms_priv->mms_trans_p->itemid == IEC61850_ITEM_ID_$BR$_OR_$RP$){ |
8425 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SetRCBValuesResponse %s", private_data_get_moreCinfo(actx)); |
8426 | 0 | proto_item_append_text(mms_priv->pdu_item, " [SetRCBValuesResponse]"); |
8427 | 0 | }else{ |
8428 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SetDataValueResponse %s", private_data_get_moreCinfo(actx)); |
8429 | 0 | proto_item_append_text(mms_priv->pdu_item, " [SetDataValueResponse]"); |
8430 | 0 | } |
8431 | 0 | }else if(mms_priv->mms_trans_p->conf_serv_pdu_type_req == MMS_IEC_61850_CONF_SERV_PDU_SELECTWITHVALUE){ |
8432 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "SelectWithValueResponse %s", private_data_get_moreCinfo(actx)); |
8433 | 0 | proto_item_append_text(mms_priv->pdu_item, " [SelectWithValueResponse]"); |
8434 | 0 | } |
8435 | 12 | }else if(mms_has_private_data(actx)){ |
8436 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s%s%s", |
8437 | 0 | private_data_get_preCinfo(actx), mms_MMSpdu_vals[branch_taken].strptr, private_data_get_moreCinfo(actx)); |
8438 | 0 | } |
8439 | 12 | break; |
8440 | 35 | default: |
8441 | 35 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s%s%s", |
8442 | 35 | private_data_get_preCinfo(actx), mms_MMSpdu_vals[branch_taken].strptr, private_data_get_moreCinfo(actx)); |
8443 | 35 | break; |
8444 | 173 | } |
8445 | 173 | }else if (mms_has_private_data(actx)){ |
8446 | 0 | col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s%s%s", |
8447 | 0 | private_data_get_preCinfo(actx), mms_MMSpdu_vals[branch_taken].strptr, private_data_get_moreCinfo(actx)); |
8448 | 0 | }else{ |
8449 | 0 | col_append_str(actx->pinfo->cinfo, COL_INFO, |
8450 | 0 | mms_MMSpdu_vals[branch_taken].strptr); |
8451 | 0 | } |
8452 | 173 | } |
8453 | | |
8454 | | |
8455 | 664 | return offset; |
8456 | 664 | } |
8457 | | |
8458 | | |
8459 | | /* |
8460 | | * Dissect MMS PDUs inside a PPDU. |
8461 | | */ |
8462 | | static int |
8463 | | dissect_mms(tvbuff_t* tvb, packet_info* pinfo, proto_tree* parent_tree, void* data _U_) |
8464 | 499 | { |
8465 | 499 | int offset = 0; |
8466 | 499 | int old_offset; |
8467 | 499 | proto_item* item = NULL; |
8468 | 499 | proto_tree* tree = NULL; |
8469 | 499 | asn1_ctx_t asn1_ctx; |
8470 | 499 | asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, true, pinfo); |
8471 | | |
8472 | 499 | if (parent_tree) { |
8473 | 499 | item = proto_tree_add_item(parent_tree, proto_mms, tvb, 0, -1, ENC_NA); |
8474 | 499 | tree = proto_item_add_subtree(item, ett_mms); |
8475 | 499 | asn1_ctx.subtree.top_tree = parent_tree; |
8476 | 499 | } |
8477 | 499 | if (use_iec61850_mapping) { |
8478 | 499 | col_set_str(pinfo->cinfo, COL_PROTOCOL, "MMS/IEC61850"); |
8479 | 499 | } |
8480 | 0 | else { |
8481 | 0 | col_set_str(pinfo->cinfo, COL_PROTOCOL, "MMS"); |
8482 | 0 | } |
8483 | 499 | col_clear(pinfo->cinfo, COL_INFO); |
8484 | | |
8485 | 1.08k | while (tvb_reported_length_remaining(tvb, offset) > 0) { |
8486 | 664 | old_offset = offset; |
8487 | 664 | if (use_iec61850_mapping) { |
8488 | 664 | asn1_ctx.private_data = (void*)wmem_new0(pinfo->pool, mms_actx_private_data_t); |
8489 | 664 | } |
8490 | 664 | offset = dissect_mms_MMSpdu(false, tvb, offset, &asn1_ctx, tree, -1); |
8491 | 664 | if (asn1_ctx.private_data) { |
8492 | 250 | wmem_free(pinfo->pool, asn1_ctx.private_data); |
8493 | 250 | } |
8494 | 664 | if (offset == old_offset) { |
8495 | 77 | proto_tree_add_expert(tree, pinfo, &ei_mms_zero_pdu, tvb, offset, -1); |
8496 | 77 | break; |
8497 | 77 | } |
8498 | 664 | } |
8499 | 499 | return tvb_captured_length(tvb); |
8500 | 499 | } |
8501 | | |
8502 | | |
8503 | | /*--- proto_register_mms -------------------------------------------*/ |
8504 | 14 | void proto_register_mms(void) { |
8505 | | |
8506 | | /* List of fields */ |
8507 | 14 | static hf_register_info hf[] = |
8508 | 14 | { |
8509 | 14 | { &hf_mms_response_in, |
8510 | 14 | { "Response In", "mms.response_in", |
8511 | 14 | FT_FRAMENUM, BASE_NONE, FRAMENUM_TYPE(FT_FRAMENUM_RESPONSE), 0x0, |
8512 | 14 | "The response to this mms request is in this frame", HFILL } |
8513 | 14 | }, |
8514 | 14 | { &hf_mms_response_to, |
8515 | 14 | { "Request In", "mms.response_to", |
8516 | 14 | FT_FRAMENUM, BASE_NONE, FRAMENUM_TYPE(FT_FRAMENUM_REQUEST), 0x0, |
8517 | 14 | "This is a response to the mms request in this frame", HFILL } |
8518 | 14 | }, |
8519 | 14 | { &hf_mms_response_time, |
8520 | 14 | { "Response Time", "mms.response_time", |
8521 | 14 | FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0, |
8522 | 14 | "The time between the Call and the Reply", HFILL } |
8523 | 14 | }, |
8524 | 14 | { &hf_mms_iec61850_rptid, |
8525 | 14 | { "RptID", "mms.iec61850.rptid", |
8526 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8527 | 14 | NULL, HFILL }}, |
8528 | 14 | { &hf_mms_iec61850_reported_optflds, |
8529 | 14 | { "Reported OptFlds", "mms.iec61850.reported_optfld", |
8530 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
8531 | 14 | NULL, HFILL }}, |
8532 | 14 | { &hf_mms_iec61850_seqnum, |
8533 | 14 | { "SeqNum", "mms.iec61850.seqnum", |
8534 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8535 | 14 | NULL, HFILL }}, |
8536 | 14 | { &hf_mms_iec61850_timeofentry, |
8537 | 14 | { "TimeOfEntry", "mms.iec61850.timeofentry", |
8538 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8539 | 14 | NULL, HFILL }}, |
8540 | 14 | { &hf_mms_iec61850_datset, |
8541 | 14 | { "DatSet", "mms.iec61850.datset", |
8542 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8543 | 14 | NULL, HFILL }}, |
8544 | 14 | { &hf_mms_iec61850_bufovfl, |
8545 | 14 | { "BufOvfl", "mms.iec61850.bufovfl", |
8546 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
8547 | 14 | NULL, HFILL }}, |
8548 | 14 | { &hf_mms_iec61850_confrev, |
8549 | 14 | { "ConfRev", "mms.iec61850.confrev", |
8550 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8551 | 14 | NULL, HFILL }}, |
8552 | 14 | { &hf_mms_iec61850_inclusion_bitstring, |
8553 | 14 | { "Inclusion-bitstring", "mms.iec61850.inclusion_bitstring", |
8554 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
8555 | 14 | NULL, HFILL }}, |
8556 | 14 | { &hf_mms_iec61850_ctlModel, |
8557 | 14 | { "ctlModel", "mms.iec61850.ctlmodel", |
8558 | 14 | FT_UINT8, BASE_DEC, VALS(mms_iec6150_cntmodel_vals), 0, |
8559 | 14 | NULL, HFILL }}, |
8560 | 14 | { &hf_mms_iec61850_QualityC0, |
8561 | 14 | { "Validity", "mms.iec61850.validity", |
8562 | 14 | FT_UINT8, BASE_HEX, VALS(mms_iec6150_validity_vals), 0xC0, |
8563 | 14 | NULL, HFILL }}, |
8564 | 14 | { &hf_mms_iec61850_Quality20, |
8565 | 14 | { "Overflow", "mms.iec61850.overflow", |
8566 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
8567 | 14 | NULL, HFILL }}, |
8568 | 14 | { &hf_mms_iec61850_Quality10, |
8569 | 14 | { "OutofRange", "mms.iec61850.outofrange", |
8570 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
8571 | 14 | NULL, HFILL }}, |
8572 | 14 | { &hf_mms_iec61850_Quality8, |
8573 | 14 | { "BadReference", "mms.iec61850.badreference", |
8574 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
8575 | 14 | NULL, HFILL }}, |
8576 | 14 | { &hf_mms_iec61850_Quality4, |
8577 | 14 | { "Oscillatory", "mms.iec61850.oscillatory", |
8578 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
8579 | 14 | NULL, HFILL }}, |
8580 | 14 | { &hf_mms_iec61850_Quality2, |
8581 | 14 | { "Failure", "mms.iec61850.failure", |
8582 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
8583 | 14 | NULL, HFILL }}, |
8584 | 14 | { &hf_mms_iec61850_Quality1, |
8585 | 14 | { "OldData", "mms.iec61850.oldData", |
8586 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
8587 | 14 | NULL, HFILL }}, |
8588 | 14 | { &hf_mms_iec61850_Quality0080, |
8589 | 14 | { "Inconsistent", "mms.iec61850.inconsistent", |
8590 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
8591 | 14 | NULL, HFILL }}, |
8592 | 14 | { &hf_mms_iec61850_Quality0040, |
8593 | 14 | { "Inaccurate", "mms.iec61850.inaccurate", |
8594 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
8595 | 14 | NULL, HFILL }}, |
8596 | 14 | { &hf_mms_iec61850_Quality0020, |
8597 | 14 | { "Source", "mms.iec61850.source", |
8598 | 14 | FT_UINT8, BASE_HEX, VALS(mms_iec6150_source_vals), 0x20, |
8599 | 14 | NULL, HFILL }}, |
8600 | 14 | { &hf_mms_iec61850_Quality0010, |
8601 | 14 | { "Test", "mms.iec61850.test", |
8602 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
8603 | 14 | NULL, HFILL }}, |
8604 | 14 | { &hf_mms_iec61850_Quality0008, |
8605 | 14 | { "OperatorBlocked", "mms.iec61850.operatorblocked", |
8606 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
8607 | 14 | NULL, HFILL }}, |
8608 | 14 | { &hf_mms_iec61850_quality_bitstring, |
8609 | 14 | { "Quality", "mms.iec61850.quality_bitstring", |
8610 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
8611 | 14 | NULL, HFILL } }, |
8612 | 14 | { &hf_mms_iec61850_timequality80, |
8613 | 14 | { "Leap Second Known", "mms.iec61850.leapsecondknown", |
8614 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
8615 | 14 | NULL, HFILL } }, |
8616 | 14 | { &hf_mms_iec61850_timequality40, |
8617 | 14 | { "ClockFailure", "mms.iec61850.clockfailure", |
8618 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
8619 | 14 | NULL, HFILL } }, |
8620 | 14 | { &hf_mms_iec61850_timequality20, |
8621 | 14 | { "Clock not synchronized", "mms.iec61850.clocknotsynchronized", |
8622 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
8623 | 14 | NULL, HFILL } }, |
8624 | 14 | { &hf_mms_iec61850_timequality1F, |
8625 | 14 | { "Time Accuracy", "mms.iec61850.timeaccuracy", |
8626 | 14 | FT_UINT8, BASE_HEX, VALS(mms_iec6150_timeaccuracy_vals), 0x1F, |
8627 | 14 | NULL, HFILL } }, |
8628 | 14 | { &hf_mms_iec61850_check_bitstring, |
8629 | 14 | { "Check", "mms.iec61850.check_bitstring", |
8630 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
8631 | 14 | NULL, HFILL } }, |
8632 | 14 | { &hf_mms_iec61850_check_b15, |
8633 | 14 | { "Synchrocheck", "mms.iec61850.synchrocheck", |
8634 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
8635 | 14 | NULL, HFILL } }, |
8636 | 14 | { &hf_mms_iec61850_check_b14, |
8637 | 14 | { "Interlock-check", "mms.iec61850.interlockcheck", |
8638 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
8639 | 14 | NULL, HFILL } }, |
8640 | 14 | { &hf_mms_iec61850_check_b13_b0, |
8641 | 14 | { "Padding", "mms.iec61850.check.padding", |
8642 | 14 | FT_UINT8, BASE_HEX, NULL, 0x3f, |
8643 | 14 | NULL, HFILL } }, |
8644 | 14 | { &hf_mms_iec61850_orcategory, |
8645 | 14 | { "orCategory", "mms.iec61850.orcategory", |
8646 | 14 | FT_UINT8, BASE_DEC, VALS(mms_iec6150_orcategory_vals), 0, |
8647 | 14 | NULL, HFILL } }, |
8648 | 14 | { &hf_mms_iec61850_beh$stval, |
8649 | 14 | { "beh", "mms.iec61850.beh", |
8650 | 14 | FT_UINT8, BASE_DEC, VALS(mms_iec6150_beh_vals), 0, |
8651 | 14 | NULL, HFILL } }, |
8652 | 14 | { &hf_mms_iec61850_mod$stval, |
8653 | 14 | { "mod", "mms.iec61850.mod", |
8654 | 14 | FT_UINT8, BASE_DEC, VALS(mms_iec6150_beh_vals), 0, |
8655 | 14 | NULL, HFILL } }, |
8656 | 14 | { &hf_mms_iec61850_health$stval, |
8657 | 14 | { "health", "mms.iec61850.health", |
8658 | 14 | FT_UINT8, BASE_DEC, VALS(mms_iec6150_health_vals), 0, |
8659 | 14 | NULL, HFILL } }, |
8660 | 14 | { &hf_mms_iec61850_ctlval, |
8661 | 14 | { "ctlVal", "mms.iec61850.ctlval", |
8662 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
8663 | 14 | NULL, HFILL } }, |
8664 | 14 | { &hf_mms_iec61850_origin, |
8665 | 14 | { "Origin", "mms.iec61850.origin", |
8666 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
8667 | 14 | NULL, HFILL } }, |
8668 | 14 | { &hf_mms_iec61850_origin_orcat, |
8669 | 14 | { "Origin Category", "mms.iec61850.orcat", |
8670 | 14 | FT_UINT8, BASE_DEC, NULL, 0, |
8671 | 14 | NULL, HFILL } }, |
8672 | 14 | { &hf_mms_iec61850_origin_orident, |
8673 | 14 | { "Origin Identifier", "mms.iec61850.orident", |
8674 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
8675 | 14 | NULL, HFILL } }, |
8676 | 14 | { &hf_mms_iec61850_ctlNum, |
8677 | 14 | { "ctlNum", "mms.iec61850.ctlnum", |
8678 | 14 | FT_INT8, BASE_DEC, NULL, 0, |
8679 | 14 | NULL, HFILL } }, |
8680 | 14 | { &hf_mms_iec61850_T, |
8681 | 14 | { "T(Timestamp)", "mms.iec61850.timestamp", |
8682 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8683 | 14 | NULL, HFILL } }, |
8684 | 14 | { &hf_mms_iec61850_test, |
8685 | 14 | { "Test", "mms.iec61850.test", |
8686 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
8687 | 14 | NULL, HFILL }}, |
8688 | 14 | { &hf_mms_confirmed_RequestPDU, |
8689 | 14 | { "confirmed-RequestPDU", "mms.confirmed_RequestPDU_element", |
8690 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8691 | 14 | NULL, HFILL }}, |
8692 | 14 | { &hf_mms_confirmed_ResponsePDU, |
8693 | 14 | { "confirmed-ResponsePDU", "mms.confirmed_ResponsePDU_element", |
8694 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8695 | 14 | NULL, HFILL }}, |
8696 | 14 | { &hf_mms_confirmed_ErrorPDU, |
8697 | 14 | { "confirmed-ErrorPDU", "mms.confirmed_ErrorPDU_element", |
8698 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8699 | 14 | NULL, HFILL }}, |
8700 | 14 | { &hf_mms_unconfirmed_PDU, |
8701 | 14 | { "unconfirmed-PDU", "mms.unconfirmed_PDU_element", |
8702 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8703 | 14 | NULL, HFILL }}, |
8704 | 14 | { &hf_mms_rejectPDU, |
8705 | 14 | { "rejectPDU", "mms.rejectPDU_element", |
8706 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8707 | 14 | NULL, HFILL }}, |
8708 | 14 | { &hf_mms_cancel_RequestPDU, |
8709 | 14 | { "cancel-RequestPDU", "mms.cancel_RequestPDU", |
8710 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8711 | 14 | NULL, HFILL }}, |
8712 | 14 | { &hf_mms_cancel_ResponsePDU, |
8713 | 14 | { "cancel-ResponsePDU", "mms.cancel_ResponsePDU", |
8714 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8715 | 14 | NULL, HFILL }}, |
8716 | 14 | { &hf_mms_cancel_ErrorPDU, |
8717 | 14 | { "cancel-ErrorPDU", "mms.cancel_ErrorPDU_element", |
8718 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8719 | 14 | NULL, HFILL }}, |
8720 | 14 | { &hf_mms_initiate_RequestPDU, |
8721 | 14 | { "initiate-RequestPDU", "mms.initiate_RequestPDU_element", |
8722 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8723 | 14 | NULL, HFILL }}, |
8724 | 14 | { &hf_mms_initiate_ResponsePDU, |
8725 | 14 | { "initiate-ResponsePDU", "mms.initiate_ResponsePDU_element", |
8726 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8727 | 14 | NULL, HFILL }}, |
8728 | 14 | { &hf_mms_initiate_ErrorPDU, |
8729 | 14 | { "initiate-ErrorPDU", "mms.initiate_ErrorPDU_element", |
8730 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8731 | 14 | NULL, HFILL }}, |
8732 | 14 | { &hf_mms_conclude_RequestPDU, |
8733 | 14 | { "conclude-RequestPDU", "mms.conclude_RequestPDU_element", |
8734 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8735 | 14 | NULL, HFILL }}, |
8736 | 14 | { &hf_mms_conclude_ResponsePDU, |
8737 | 14 | { "conclude-ResponsePDU", "mms.conclude_ResponsePDU_element", |
8738 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8739 | 14 | NULL, HFILL }}, |
8740 | 14 | { &hf_mms_conclude_ErrorPDU, |
8741 | 14 | { "conclude-ErrorPDU", "mms.conclude_ErrorPDU_element", |
8742 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8743 | 14 | NULL, HFILL }}, |
8744 | 14 | { &hf_mms_invokeID, |
8745 | 14 | { "invokeID", "mms.invokeID", |
8746 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8747 | 14 | "Unsigned32", HFILL }}, |
8748 | 14 | { &hf_mms_listOfModifier, |
8749 | 14 | { "listOfModifier", "mms.listOfModifier", |
8750 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
8751 | 14 | "SEQUENCE_OF_Modifier", HFILL }}, |
8752 | 14 | { &hf_mms_listOfModifier_item, |
8753 | 14 | { "Modifier", "mms.Modifier", |
8754 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Modifier_vals), 0, |
8755 | 14 | NULL, HFILL }}, |
8756 | 14 | { &hf_mms_confirmedServiceRequest, |
8757 | 14 | { "confirmedServiceRequest", "mms.confirmedServiceRequest", |
8758 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceRequest_vals), 0, |
8759 | 14 | NULL, HFILL }}, |
8760 | 14 | { &hf_mms_cs_request_detail, |
8761 | 14 | { "cs-request-detail", "mms.cs_request_detail", |
8762 | 14 | FT_UINT32, BASE_DEC, VALS(mms_CS_Request_Detail_vals), 0, |
8763 | 14 | NULL, HFILL }}, |
8764 | 14 | { &hf_mms_unconfirmedService, |
8765 | 14 | { "unconfirmedService", "mms.unconfirmedService", |
8766 | 14 | FT_UINT32, BASE_DEC, VALS(mms_UnconfirmedService_vals), 0, |
8767 | 14 | NULL, HFILL }}, |
8768 | 14 | { &hf_mms_confirmedServiceResponse, |
8769 | 14 | { "confirmedServiceResponse", "mms.confirmedServiceResponse", |
8770 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceResponse_vals), 0, |
8771 | 14 | NULL, HFILL }}, |
8772 | 14 | { &hf_mms_modifierPosition, |
8773 | 14 | { "modifierPosition", "mms.modifierPosition", |
8774 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8775 | 14 | "Unsigned32", HFILL }}, |
8776 | 14 | { &hf_mms_serviceError, |
8777 | 14 | { "serviceError", "mms.serviceError_element", |
8778 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8779 | 14 | NULL, HFILL }}, |
8780 | 14 | { &hf_mms_informationReport, |
8781 | 14 | { "informationReport", "mms.informationReport_element", |
8782 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8783 | 14 | NULL, HFILL }}, |
8784 | 14 | { &hf_mms_unsolicitedStatus, |
8785 | 14 | { "unsolicitedStatus", "mms.unsolicitedStatus_element", |
8786 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8787 | 14 | NULL, HFILL }}, |
8788 | 14 | { &hf_mms_eventNotification, |
8789 | 14 | { "eventNotification", "mms.eventNotification_element", |
8790 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8791 | 14 | NULL, HFILL }}, |
8792 | 14 | { &hf_mms_attach_To_Event_Condition, |
8793 | 14 | { "attach-To-Event-Condition", "mms.attach_To_Event_Condition_element", |
8794 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8795 | 14 | "AttachToEventCondition", HFILL }}, |
8796 | 14 | { &hf_mms_attach_To_Semaphore, |
8797 | 14 | { "attach-To-Semaphore", "mms.attach_To_Semaphore_element", |
8798 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8799 | 14 | "AttachToSemaphore", HFILL }}, |
8800 | 14 | { &hf_mms_status, |
8801 | 14 | { "status", "mms.status", |
8802 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
8803 | 14 | "Status_Request", HFILL }}, |
8804 | 14 | { &hf_mms_getNameList, |
8805 | 14 | { "getNameList", "mms.getNameList_element", |
8806 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8807 | 14 | "GetNameList_Request", HFILL }}, |
8808 | 14 | { &hf_mms_identify, |
8809 | 14 | { "identify", "mms.identify_element", |
8810 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8811 | 14 | "Identify_Request", HFILL }}, |
8812 | 14 | { &hf_mms_rename, |
8813 | 14 | { "rename", "mms.rename_element", |
8814 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8815 | 14 | "Rename_Request", HFILL }}, |
8816 | 14 | { &hf_mms_read, |
8817 | 14 | { "read", "mms.read_element", |
8818 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8819 | 14 | "Read_Request", HFILL }}, |
8820 | 14 | { &hf_mms_write, |
8821 | 14 | { "write", "mms.write_element", |
8822 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8823 | 14 | "Write_Request", HFILL }}, |
8824 | 14 | { &hf_mms_getVariableAccessAttributes, |
8825 | 14 | { "getVariableAccessAttributes", "mms.getVariableAccessAttributes", |
8826 | 14 | FT_UINT32, BASE_DEC, VALS(mms_GetVariableAccessAttributes_Request_vals), 0, |
8827 | 14 | "GetVariableAccessAttributes_Request", HFILL }}, |
8828 | 14 | { &hf_mms_defineNamedVariable, |
8829 | 14 | { "defineNamedVariable", "mms.defineNamedVariable_element", |
8830 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8831 | 14 | "DefineNamedVariable_Request", HFILL }}, |
8832 | 14 | { &hf_mms_defineScatteredAccess, |
8833 | 14 | { "defineScatteredAccess", "mms.defineScatteredAccess_element", |
8834 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8835 | 14 | "DefineScatteredAccess_Request", HFILL }}, |
8836 | 14 | { &hf_mms_getScatteredAccessAttributes, |
8837 | 14 | { "getScatteredAccessAttributes", "mms.getScatteredAccessAttributes", |
8838 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8839 | 14 | "GetScatteredAccessAttributes_Request", HFILL }}, |
8840 | 14 | { &hf_mms_deleteVariableAccess, |
8841 | 14 | { "deleteVariableAccess", "mms.deleteVariableAccess_element", |
8842 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8843 | 14 | "DeleteVariableAccess_Request", HFILL }}, |
8844 | 14 | { &hf_mms_defineNamedVariableList, |
8845 | 14 | { "defineNamedVariableList", "mms.defineNamedVariableList_element", |
8846 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8847 | 14 | "DefineNamedVariableList_Request", HFILL }}, |
8848 | 14 | { &hf_mms_getNamedVariableListAttributes, |
8849 | 14 | { "getNamedVariableListAttributes", "mms.getNamedVariableListAttributes", |
8850 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8851 | 14 | "GetNamedVariableListAttributes_Request", HFILL }}, |
8852 | 14 | { &hf_mms_deleteNamedVariableList, |
8853 | 14 | { "deleteNamedVariableList", "mms.deleteNamedVariableList_element", |
8854 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8855 | 14 | "DeleteNamedVariableList_Request", HFILL }}, |
8856 | 14 | { &hf_mms_defineNamedType, |
8857 | 14 | { "defineNamedType", "mms.defineNamedType_element", |
8858 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8859 | 14 | "DefineNamedType_Request", HFILL }}, |
8860 | 14 | { &hf_mms_getNamedTypeAttributes, |
8861 | 14 | { "getNamedTypeAttributes", "mms.getNamedTypeAttributes", |
8862 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8863 | 14 | "GetNamedTypeAttributes_Request", HFILL }}, |
8864 | 14 | { &hf_mms_deleteNamedType, |
8865 | 14 | { "deleteNamedType", "mms.deleteNamedType_element", |
8866 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8867 | 14 | "DeleteNamedType_Request", HFILL }}, |
8868 | 14 | { &hf_mms_input, |
8869 | 14 | { "input", "mms.input_element", |
8870 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8871 | 14 | "Input_Request", HFILL }}, |
8872 | 14 | { &hf_mms_output, |
8873 | 14 | { "output", "mms.output_element", |
8874 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8875 | 14 | "Output_Request", HFILL }}, |
8876 | 14 | { &hf_mms_takeControl, |
8877 | 14 | { "takeControl", "mms.takeControl_element", |
8878 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8879 | 14 | "TakeControl_Request", HFILL }}, |
8880 | 14 | { &hf_mms_relinquishControl, |
8881 | 14 | { "relinquishControl", "mms.relinquishControl_element", |
8882 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8883 | 14 | "RelinquishControl_Request", HFILL }}, |
8884 | 14 | { &hf_mms_defineSemaphore, |
8885 | 14 | { "defineSemaphore", "mms.defineSemaphore_element", |
8886 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8887 | 14 | "DefineSemaphore_Request", HFILL }}, |
8888 | 14 | { &hf_mms_deleteSemaphore, |
8889 | 14 | { "deleteSemaphore", "mms.deleteSemaphore", |
8890 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8891 | 14 | "DeleteSemaphore_Request", HFILL }}, |
8892 | 14 | { &hf_mms_reportSemaphoreStatus, |
8893 | 14 | { "reportSemaphoreStatus", "mms.reportSemaphoreStatus", |
8894 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8895 | 14 | "ReportSemaphoreStatus_Request", HFILL }}, |
8896 | 14 | { &hf_mms_reportPoolSemaphoreStatus, |
8897 | 14 | { "reportPoolSemaphoreStatus", "mms.reportPoolSemaphoreStatus_element", |
8898 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8899 | 14 | "ReportPoolSemaphoreStatus_Request", HFILL }}, |
8900 | 14 | { &hf_mms_reportSemaphoreEntryStatus, |
8901 | 14 | { "reportSemaphoreEntryStatus", "mms.reportSemaphoreEntryStatus_element", |
8902 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8903 | 14 | "ReportSemaphoreEntryStatus_Request", HFILL }}, |
8904 | 14 | { &hf_mms_initiateDownloadSequence, |
8905 | 14 | { "initiateDownloadSequence", "mms.initiateDownloadSequence_element", |
8906 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8907 | 14 | "InitiateDownloadSequence_Request", HFILL }}, |
8908 | 14 | { &hf_mms_downloadSegment, |
8909 | 14 | { "downloadSegment", "mms.downloadSegment", |
8910 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8911 | 14 | "DownloadSegment_Request", HFILL }}, |
8912 | 14 | { &hf_mms_terminateDownloadSequence, |
8913 | 14 | { "terminateDownloadSequence", "mms.terminateDownloadSequence_element", |
8914 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8915 | 14 | "TerminateDownloadSequence_Request", HFILL }}, |
8916 | 14 | { &hf_mms_initiateUploadSequence, |
8917 | 14 | { "initiateUploadSequence", "mms.initiateUploadSequence", |
8918 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8919 | 14 | "InitiateUploadSequence_Request", HFILL }}, |
8920 | 14 | { &hf_mms_uploadSegment, |
8921 | 14 | { "uploadSegment", "mms.uploadSegment", |
8922 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8923 | 14 | "UploadSegment_Request", HFILL }}, |
8924 | 14 | { &hf_mms_terminateUploadSequence, |
8925 | 14 | { "terminateUploadSequence", "mms.terminateUploadSequence", |
8926 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
8927 | 14 | "TerminateUploadSequence_Request", HFILL }}, |
8928 | 14 | { &hf_mms_requestDomainDownload, |
8929 | 14 | { "requestDomainDownload", "mms.requestDomainDownload_element", |
8930 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8931 | 14 | "RequestDomainDownload_Request", HFILL }}, |
8932 | 14 | { &hf_mms_requestDomainUpload, |
8933 | 14 | { "requestDomainUpload", "mms.requestDomainUpload_element", |
8934 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8935 | 14 | "RequestDomainUpload_Request", HFILL }}, |
8936 | 14 | { &hf_mms_loadDomainContent, |
8937 | 14 | { "loadDomainContent", "mms.loadDomainContent_element", |
8938 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8939 | 14 | "LoadDomainContent_Request", HFILL }}, |
8940 | 14 | { &hf_mms_storeDomainContent, |
8941 | 14 | { "storeDomainContent", "mms.storeDomainContent_element", |
8942 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8943 | 14 | "StoreDomainContent_Request", HFILL }}, |
8944 | 14 | { &hf_mms_deleteDomain, |
8945 | 14 | { "deleteDomain", "mms.deleteDomain", |
8946 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8947 | 14 | "DeleteDomain_Request", HFILL }}, |
8948 | 14 | { &hf_mms_getDomainAttributes, |
8949 | 14 | { "getDomainAttributes", "mms.getDomainAttributes", |
8950 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8951 | 14 | "GetDomainAttributes_Request", HFILL }}, |
8952 | 14 | { &hf_mms_createProgramInvocation, |
8953 | 14 | { "createProgramInvocation", "mms.createProgramInvocation_element", |
8954 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8955 | 14 | "CreateProgramInvocation_Request", HFILL }}, |
8956 | 14 | { &hf_mms_deleteProgramInvocation, |
8957 | 14 | { "deleteProgramInvocation", "mms.deleteProgramInvocation", |
8958 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8959 | 14 | "DeleteProgramInvocation_Request", HFILL }}, |
8960 | 14 | { &hf_mms_start, |
8961 | 14 | { "start", "mms.start_element", |
8962 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8963 | 14 | "Start_Request", HFILL }}, |
8964 | 14 | { &hf_mms_stop, |
8965 | 14 | { "stop", "mms.stop_element", |
8966 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8967 | 14 | "Stop_Request", HFILL }}, |
8968 | 14 | { &hf_mms_resume, |
8969 | 14 | { "resume", "mms.resume_element", |
8970 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8971 | 14 | "Resume_Request", HFILL }}, |
8972 | 14 | { &hf_mms_reset, |
8973 | 14 | { "reset", "mms.reset_element", |
8974 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8975 | 14 | "Reset_Request", HFILL }}, |
8976 | 14 | { &hf_mms_kill, |
8977 | 14 | { "kill", "mms.kill_element", |
8978 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8979 | 14 | "Kill_Request", HFILL }}, |
8980 | 14 | { &hf_mms_getProgramInvocationAttributes, |
8981 | 14 | { "getProgramInvocationAttributes", "mms.getProgramInvocationAttributes", |
8982 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
8983 | 14 | "GetProgramInvocationAttributes_Request", HFILL }}, |
8984 | 14 | { &hf_mms_obtainFile, |
8985 | 14 | { "obtainFile", "mms.obtainFile_element", |
8986 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8987 | 14 | "ObtainFile_Request", HFILL }}, |
8988 | 14 | { &hf_mms_defineEventCondition, |
8989 | 14 | { "defineEventCondition", "mms.defineEventCondition_element", |
8990 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
8991 | 14 | "DefineEventCondition_Request", HFILL }}, |
8992 | 14 | { &hf_mms_confirmedServiceRequest_deleteEventCondition, |
8993 | 14 | { "deleteEventCondition", "mms.confirmedServiceRequest.deleteEventCondition", |
8994 | 14 | FT_UINT32, BASE_DEC, VALS(mms_DeleteEventCondition_Request_vals), 0, |
8995 | 14 | "DeleteEventCondition_Request", HFILL }}, |
8996 | 14 | { &hf_mms_getEventConditionAttributes, |
8997 | 14 | { "getEventConditionAttributes", "mms.getEventConditionAttributes", |
8998 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
8999 | 14 | "GetEventConditionAttributes_Request", HFILL }}, |
9000 | 14 | { &hf_mms_reportEventConditionStatus, |
9001 | 14 | { "reportEventConditionStatus", "mms.reportEventConditionStatus", |
9002 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9003 | 14 | "ReportEventConditionStatus_Request", HFILL }}, |
9004 | 14 | { &hf_mms_alterEventConditionMonitoring, |
9005 | 14 | { "alterEventConditionMonitoring", "mms.alterEventConditionMonitoring_element", |
9006 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9007 | 14 | "AlterEventConditionMonitoring_Request", HFILL }}, |
9008 | 14 | { &hf_mms_triggerEvent, |
9009 | 14 | { "triggerEvent", "mms.triggerEvent_element", |
9010 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9011 | 14 | "TriggerEvent_Request", HFILL }}, |
9012 | 14 | { &hf_mms_defineEventAction, |
9013 | 14 | { "defineEventAction", "mms.defineEventAction_element", |
9014 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9015 | 14 | "DefineEventAction_Request", HFILL }}, |
9016 | 14 | { &hf_mms_confirmedServiceRequest_deleteEventAction, |
9017 | 14 | { "deleteEventAction", "mms.confirmedServiceRequest.deleteEventAction", |
9018 | 14 | FT_UINT32, BASE_DEC, VALS(mms_DeleteEventAction_Request_vals), 0, |
9019 | 14 | "DeleteEventAction_Request", HFILL }}, |
9020 | 14 | { &hf_mms_getEventActionAttributes, |
9021 | 14 | { "getEventActionAttributes", "mms.getEventActionAttributes", |
9022 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9023 | 14 | "GetEventActionAttributes_Request", HFILL }}, |
9024 | 14 | { &hf_mms_reportEventActionStatus, |
9025 | 14 | { "reportEventActionStatus", "mms.reportEventActionStatus", |
9026 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9027 | 14 | "ReportEventActionStatus_Request", HFILL }}, |
9028 | 14 | { &hf_mms_defineEventEnrollment, |
9029 | 14 | { "defineEventEnrollment", "mms.defineEventEnrollment_element", |
9030 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9031 | 14 | "DefineEventEnrollment_Request", HFILL }}, |
9032 | 14 | { &hf_mms_confirmedServiceRequest_deleteEventEnrollment, |
9033 | 14 | { "deleteEventEnrollment", "mms.confirmedServiceRequest.deleteEventEnrollment", |
9034 | 14 | FT_UINT32, BASE_DEC, VALS(mms_DeleteEventEnrollment_Request_vals), 0, |
9035 | 14 | "DeleteEventEnrollment_Request", HFILL }}, |
9036 | 14 | { &hf_mms_alterEventEnrollment, |
9037 | 14 | { "alterEventEnrollment", "mms.alterEventEnrollment_element", |
9038 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9039 | 14 | "AlterEventEnrollment_Request", HFILL }}, |
9040 | 14 | { &hf_mms_reportEventEnrollmentStatus, |
9041 | 14 | { "reportEventEnrollmentStatus", "mms.reportEventEnrollmentStatus", |
9042 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9043 | 14 | "ReportEventEnrollmentStatus_Request", HFILL }}, |
9044 | 14 | { &hf_mms_getEventEnrollmentAttributes, |
9045 | 14 | { "getEventEnrollmentAttributes", "mms.getEventEnrollmentAttributes_element", |
9046 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9047 | 14 | "GetEventEnrollmentAttributes_Request", HFILL }}, |
9048 | 14 | { &hf_mms_acknowledgeEventNotification, |
9049 | 14 | { "acknowledgeEventNotification", "mms.acknowledgeEventNotification_element", |
9050 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9051 | 14 | "AcknowledgeEventNotification_Request", HFILL }}, |
9052 | 14 | { &hf_mms_getAlarmSummary, |
9053 | 14 | { "getAlarmSummary", "mms.getAlarmSummary_element", |
9054 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9055 | 14 | "GetAlarmSummary_Request", HFILL }}, |
9056 | 14 | { &hf_mms_getAlarmEnrollmentSummary, |
9057 | 14 | { "getAlarmEnrollmentSummary", "mms.getAlarmEnrollmentSummary_element", |
9058 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9059 | 14 | "GetAlarmEnrollmentSummary_Request", HFILL }}, |
9060 | 14 | { &hf_mms_readJournal, |
9061 | 14 | { "readJournal", "mms.readJournal_element", |
9062 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9063 | 14 | "ReadJournal_Request", HFILL }}, |
9064 | 14 | { &hf_mms_writeJournal, |
9065 | 14 | { "writeJournal", "mms.writeJournal_element", |
9066 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9067 | 14 | "WriteJournal_Request", HFILL }}, |
9068 | 14 | { &hf_mms_initializeJournal, |
9069 | 14 | { "initializeJournal", "mms.initializeJournal_element", |
9070 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9071 | 14 | "InitializeJournal_Request", HFILL }}, |
9072 | 14 | { &hf_mms_reportJournalStatus, |
9073 | 14 | { "reportJournalStatus", "mms.reportJournalStatus", |
9074 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9075 | 14 | "ReportJournalStatus_Request", HFILL }}, |
9076 | 14 | { &hf_mms_createJournal, |
9077 | 14 | { "createJournal", "mms.createJournal_element", |
9078 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9079 | 14 | "CreateJournal_Request", HFILL }}, |
9080 | 14 | { &hf_mms_deleteJournal, |
9081 | 14 | { "deleteJournal", "mms.deleteJournal_element", |
9082 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9083 | 14 | "DeleteJournal_Request", HFILL }}, |
9084 | 14 | { &hf_mms_getCapabilityList, |
9085 | 14 | { "getCapabilityList", "mms.getCapabilityList_element", |
9086 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9087 | 14 | "GetCapabilityList_Request", HFILL }}, |
9088 | 14 | { &hf_mms_fileOpen, |
9089 | 14 | { "fileOpen", "mms.fileOpen_element", |
9090 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9091 | 14 | "FileOpen_Request", HFILL }}, |
9092 | 14 | { &hf_mms_fileRead, |
9093 | 14 | { "fileRead", "mms.fileRead", |
9094 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9095 | 14 | "FileRead_Request", HFILL }}, |
9096 | 14 | { &hf_mms_fileClose, |
9097 | 14 | { "fileClose", "mms.fileClose", |
9098 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9099 | 14 | "FileClose_Request", HFILL }}, |
9100 | 14 | { &hf_mms_fileRename, |
9101 | 14 | { "fileRename", "mms.fileRename_element", |
9102 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9103 | 14 | "FileRename_Request", HFILL }}, |
9104 | 14 | { &hf_mms_fileDelete, |
9105 | 14 | { "fileDelete", "mms.fileDelete", |
9106 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9107 | 14 | "FileDelete_Request", HFILL }}, |
9108 | 14 | { &hf_mms_fileDirectory, |
9109 | 14 | { "fileDirectory", "mms.fileDirectory_element", |
9110 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9111 | 14 | "FileDirectory_Request", HFILL }}, |
9112 | 14 | { &hf_mms_foo, |
9113 | 14 | { "foo", "mms.foo", |
9114 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9115 | 14 | "INTEGER", HFILL }}, |
9116 | 14 | { &hf_mms_status_01, |
9117 | 14 | { "status", "mms.status_element", |
9118 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9119 | 14 | "Status_Response", HFILL }}, |
9120 | 14 | { &hf_mms_getNameList_01, |
9121 | 14 | { "getNameList", "mms.getNameList_element", |
9122 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9123 | 14 | "GetNameList_Response", HFILL }}, |
9124 | 14 | { &hf_mms_identify_01, |
9125 | 14 | { "identify", "mms.identify_element", |
9126 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9127 | 14 | "Identify_Response", HFILL }}, |
9128 | 14 | { &hf_mms_rename_01, |
9129 | 14 | { "rename", "mms.rename_element", |
9130 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9131 | 14 | "Rename_Response", HFILL }}, |
9132 | 14 | { &hf_mms_read_01, |
9133 | 14 | { "read", "mms.read_element", |
9134 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9135 | 14 | "Read_Response", HFILL }}, |
9136 | 14 | { &hf_mms_write_01, |
9137 | 14 | { "write", "mms.write", |
9138 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9139 | 14 | "Write_Response", HFILL }}, |
9140 | 14 | { &hf_mms_getVariableAccessAttributes_01, |
9141 | 14 | { "getVariableAccessAttributes", "mms.getVariableAccessAttributes_element", |
9142 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9143 | 14 | "GetVariableAccessAttributes_Response", HFILL }}, |
9144 | 14 | { &hf_mms_defineNamedVariable_01, |
9145 | 14 | { "defineNamedVariable", "mms.defineNamedVariable_element", |
9146 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9147 | 14 | "DefineNamedVariable_Response", HFILL }}, |
9148 | 14 | { &hf_mms_defineScatteredAccess_01, |
9149 | 14 | { "defineScatteredAccess", "mms.defineScatteredAccess_element", |
9150 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9151 | 14 | "DefineScatteredAccess_Response", HFILL }}, |
9152 | 14 | { &hf_mms_getScatteredAccessAttributes_01, |
9153 | 14 | { "getScatteredAccessAttributes", "mms.getScatteredAccessAttributes_element", |
9154 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9155 | 14 | "GetScatteredAccessAttributes_Response", HFILL }}, |
9156 | 14 | { &hf_mms_deleteVariableAccess_01, |
9157 | 14 | { "deleteVariableAccess", "mms.deleteVariableAccess_element", |
9158 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9159 | 14 | "DeleteVariableAccess_Response", HFILL }}, |
9160 | 14 | { &hf_mms_defineNamedVariableList_01, |
9161 | 14 | { "defineNamedVariableList", "mms.defineNamedVariableList_element", |
9162 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9163 | 14 | "DefineNamedVariableList_Response", HFILL }}, |
9164 | 14 | { &hf_mms_getNamedVariableListAttributes_01, |
9165 | 14 | { "getNamedVariableListAttributes", "mms.getNamedVariableListAttributes_element", |
9166 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9167 | 14 | "GetNamedVariableListAttributes_Response", HFILL }}, |
9168 | 14 | { &hf_mms_deleteNamedVariableList_01, |
9169 | 14 | { "deleteNamedVariableList", "mms.deleteNamedVariableList_element", |
9170 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9171 | 14 | "DeleteNamedVariableList_Response", HFILL }}, |
9172 | 14 | { &hf_mms_defineNamedType_01, |
9173 | 14 | { "defineNamedType", "mms.defineNamedType_element", |
9174 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9175 | 14 | "DefineNamedType_Response", HFILL }}, |
9176 | 14 | { &hf_mms_getNamedTypeAttributes_01, |
9177 | 14 | { "getNamedTypeAttributes", "mms.getNamedTypeAttributes_element", |
9178 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9179 | 14 | "GetNamedTypeAttributes_Response", HFILL }}, |
9180 | 14 | { &hf_mms_deleteNamedType_01, |
9181 | 14 | { "deleteNamedType", "mms.deleteNamedType_element", |
9182 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9183 | 14 | "DeleteNamedType_Response", HFILL }}, |
9184 | 14 | { &hf_mms_input_01, |
9185 | 14 | { "input", "mms.input", |
9186 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9187 | 14 | "Input_Response", HFILL }}, |
9188 | 14 | { &hf_mms_output_01, |
9189 | 14 | { "output", "mms.output_element", |
9190 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9191 | 14 | "Output_Response", HFILL }}, |
9192 | 14 | { &hf_mms_takeControl_01, |
9193 | 14 | { "takeControl", "mms.takeControl", |
9194 | 14 | FT_UINT32, BASE_DEC, VALS(mms_TakeControl_Response_vals), 0, |
9195 | 14 | "TakeControl_Response", HFILL }}, |
9196 | 14 | { &hf_mms_relinquishControl_01, |
9197 | 14 | { "relinquishControl", "mms.relinquishControl_element", |
9198 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9199 | 14 | "RelinquishControl_Response", HFILL }}, |
9200 | 14 | { &hf_mms_defineSemaphore_01, |
9201 | 14 | { "defineSemaphore", "mms.defineSemaphore_element", |
9202 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9203 | 14 | "DefineSemaphore_Response", HFILL }}, |
9204 | 14 | { &hf_mms_deleteSemaphore_01, |
9205 | 14 | { "deleteSemaphore", "mms.deleteSemaphore_element", |
9206 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9207 | 14 | "DeleteSemaphore_Response", HFILL }}, |
9208 | 14 | { &hf_mms_reportSemaphoreStatus_01, |
9209 | 14 | { "reportSemaphoreStatus", "mms.reportSemaphoreStatus_element", |
9210 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9211 | 14 | "ReportSemaphoreStatus_Response", HFILL }}, |
9212 | 14 | { &hf_mms_reportPoolSemaphoreStatus_01, |
9213 | 14 | { "reportPoolSemaphoreStatus", "mms.reportPoolSemaphoreStatus_element", |
9214 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9215 | 14 | "ReportPoolSemaphoreStatus_Response", HFILL }}, |
9216 | 14 | { &hf_mms_reportSemaphoreEntryStatus_01, |
9217 | 14 | { "reportSemaphoreEntryStatus", "mms.reportSemaphoreEntryStatus_element", |
9218 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9219 | 14 | "ReportSemaphoreEntryStatus_Response", HFILL }}, |
9220 | 14 | { &hf_mms_initiateDownloadSequence_01, |
9221 | 14 | { "initiateDownloadSequence", "mms.initiateDownloadSequence_element", |
9222 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9223 | 14 | "InitiateDownloadSequence_Response", HFILL }}, |
9224 | 14 | { &hf_mms_downloadSegment_01, |
9225 | 14 | { "downloadSegment", "mms.downloadSegment_element", |
9226 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9227 | 14 | "DownloadSegment_Response", HFILL }}, |
9228 | 14 | { &hf_mms_terminateDownloadSequence_01, |
9229 | 14 | { "terminateDownloadSequence", "mms.terminateDownloadSequence_element", |
9230 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9231 | 14 | "TerminateDownloadSequence_Response", HFILL }}, |
9232 | 14 | { &hf_mms_initiateUploadSequence_01, |
9233 | 14 | { "initiateUploadSequence", "mms.initiateUploadSequence_element", |
9234 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9235 | 14 | "InitiateUploadSequence_Response", HFILL }}, |
9236 | 14 | { &hf_mms_uploadSegment_01, |
9237 | 14 | { "uploadSegment", "mms.uploadSegment_element", |
9238 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9239 | 14 | "UploadSegment_Response", HFILL }}, |
9240 | 14 | { &hf_mms_terminateUploadSequence_01, |
9241 | 14 | { "terminateUploadSequence", "mms.terminateUploadSequence_element", |
9242 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9243 | 14 | "TerminateUploadSequence_Response", HFILL }}, |
9244 | 14 | { &hf_mms_requestDomainDownLoad, |
9245 | 14 | { "requestDomainDownLoad", "mms.requestDomainDownLoad_element", |
9246 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9247 | 14 | "RequestDomainDownload_Response", HFILL }}, |
9248 | 14 | { &hf_mms_requestDomainUpload_01, |
9249 | 14 | { "requestDomainUpload", "mms.requestDomainUpload_element", |
9250 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9251 | 14 | "RequestDomainUpload_Response", HFILL }}, |
9252 | 14 | { &hf_mms_loadDomainContent_01, |
9253 | 14 | { "loadDomainContent", "mms.loadDomainContent_element", |
9254 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9255 | 14 | "LoadDomainContent_Response", HFILL }}, |
9256 | 14 | { &hf_mms_storeDomainContent_01, |
9257 | 14 | { "storeDomainContent", "mms.storeDomainContent_element", |
9258 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9259 | 14 | "StoreDomainContent_Response", HFILL }}, |
9260 | 14 | { &hf_mms_deleteDomain_01, |
9261 | 14 | { "deleteDomain", "mms.deleteDomain_element", |
9262 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9263 | 14 | "DeleteDomain_Response", HFILL }}, |
9264 | 14 | { &hf_mms_getDomainAttributes_01, |
9265 | 14 | { "getDomainAttributes", "mms.getDomainAttributes_element", |
9266 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9267 | 14 | "GetDomainAttributes_Response", HFILL }}, |
9268 | 14 | { &hf_mms_createProgramInvocation_01, |
9269 | 14 | { "createProgramInvocation", "mms.createProgramInvocation_element", |
9270 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9271 | 14 | "CreateProgramInvocation_Response", HFILL }}, |
9272 | 14 | { &hf_mms_deleteProgramInvocation_01, |
9273 | 14 | { "deleteProgramInvocation", "mms.deleteProgramInvocation_element", |
9274 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9275 | 14 | "DeleteProgramInvocation_Response", HFILL }}, |
9276 | 14 | { &hf_mms_start_01, |
9277 | 14 | { "start", "mms.start_element", |
9278 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9279 | 14 | "Start_Response", HFILL }}, |
9280 | 14 | { &hf_mms_stop_01, |
9281 | 14 | { "stop", "mms.stop_element", |
9282 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9283 | 14 | "Stop_Response", HFILL }}, |
9284 | 14 | { &hf_mms_resume_01, |
9285 | 14 | { "resume", "mms.resume_element", |
9286 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9287 | 14 | "Resume_Response", HFILL }}, |
9288 | 14 | { &hf_mms_reset_01, |
9289 | 14 | { "reset", "mms.reset_element", |
9290 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9291 | 14 | "Reset_Response", HFILL }}, |
9292 | 14 | { &hf_mms_kill_01, |
9293 | 14 | { "kill", "mms.kill_element", |
9294 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9295 | 14 | "Kill_Response", HFILL }}, |
9296 | 14 | { &hf_mms_getProgramInvocationAttributes_01, |
9297 | 14 | { "getProgramInvocationAttributes", "mms.getProgramInvocationAttributes_element", |
9298 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9299 | 14 | "GetProgramInvocationAttributes_Response", HFILL }}, |
9300 | 14 | { &hf_mms_obtainFile_01, |
9301 | 14 | { "obtainFile", "mms.obtainFile_element", |
9302 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9303 | 14 | "ObtainFile_Response", HFILL }}, |
9304 | 14 | { &hf_mms_fileOpen_01, |
9305 | 14 | { "fileOpen", "mms.fileOpen_element", |
9306 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9307 | 14 | "FileOpen_Response", HFILL }}, |
9308 | 14 | { &hf_mms_defineEventCondition_01, |
9309 | 14 | { "defineEventCondition", "mms.defineEventCondition_element", |
9310 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9311 | 14 | "DefineEventCondition_Response", HFILL }}, |
9312 | 14 | { &hf_mms_confirmedServiceResponse_deleteEventCondition, |
9313 | 14 | { "deleteEventCondition", "mms.confirmedServiceResponse.deleteEventCondition", |
9314 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9315 | 14 | "DeleteEventCondition_Response", HFILL }}, |
9316 | 14 | { &hf_mms_getEventConditionAttributes_01, |
9317 | 14 | { "getEventConditionAttributes", "mms.getEventConditionAttributes_element", |
9318 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9319 | 14 | "GetEventConditionAttributes_Response", HFILL }}, |
9320 | 14 | { &hf_mms_reportEventConditionStatus_01, |
9321 | 14 | { "reportEventConditionStatus", "mms.reportEventConditionStatus_element", |
9322 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9323 | 14 | "ReportEventConditionStatus_Response", HFILL }}, |
9324 | 14 | { &hf_mms_alterEventConditionMonitoring_01, |
9325 | 14 | { "alterEventConditionMonitoring", "mms.alterEventConditionMonitoring_element", |
9326 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9327 | 14 | "AlterEventConditionMonitoring_Response", HFILL }}, |
9328 | 14 | { &hf_mms_triggerEvent_01, |
9329 | 14 | { "triggerEvent", "mms.triggerEvent_element", |
9330 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9331 | 14 | "TriggerEvent_Response", HFILL }}, |
9332 | 14 | { &hf_mms_defineEventAction_01, |
9333 | 14 | { "defineEventAction", "mms.defineEventAction_element", |
9334 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9335 | 14 | "DefineEventAction_Response", HFILL }}, |
9336 | 14 | { &hf_mms_confirmedServiceRequest_deleteEventAction_01, |
9337 | 14 | { "deleteEventAction", "mms.confirmedServiceRequest.deleteEventAction", |
9338 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9339 | 14 | "DeleteEventAction_Response", HFILL }}, |
9340 | 14 | { &hf_mms_getEventActionAttributes_01, |
9341 | 14 | { "getEventActionAttributes", "mms.getEventActionAttributes_element", |
9342 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9343 | 14 | "GetEventActionAttributes_Response", HFILL }}, |
9344 | 14 | { &hf_mms_reportActionStatus, |
9345 | 14 | { "reportActionStatus", "mms.reportActionStatus", |
9346 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9347 | 14 | "ReportEventActionStatus_Response", HFILL }}, |
9348 | 14 | { &hf_mms_defineEventEnrollment_01, |
9349 | 14 | { "defineEventEnrollment", "mms.defineEventEnrollment_element", |
9350 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9351 | 14 | "DefineEventEnrollment_Response", HFILL }}, |
9352 | 14 | { &hf_mms_confirmedServiceResponse_deleteEventEnrollment, |
9353 | 14 | { "deleteEventEnrollment", "mms.confirmedServiceResponse.deleteEventEnrollment", |
9354 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9355 | 14 | "DeleteEventEnrollment_Response", HFILL }}, |
9356 | 14 | { &hf_mms_alterEventEnrollment_01, |
9357 | 14 | { "alterEventEnrollment", "mms.alterEventEnrollment_element", |
9358 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9359 | 14 | "AlterEventEnrollment_Response", HFILL }}, |
9360 | 14 | { &hf_mms_reportEventEnrollmentStatus_01, |
9361 | 14 | { "reportEventEnrollmentStatus", "mms.reportEventEnrollmentStatus_element", |
9362 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9363 | 14 | "ReportEventEnrollmentStatus_Response", HFILL }}, |
9364 | 14 | { &hf_mms_getEventEnrollmentAttributes_01, |
9365 | 14 | { "getEventEnrollmentAttributes", "mms.getEventEnrollmentAttributes_element", |
9366 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9367 | 14 | "GetEventEnrollmentAttributes_Response", HFILL }}, |
9368 | 14 | { &hf_mms_acknowledgeEventNotification_01, |
9369 | 14 | { "acknowledgeEventNotification", "mms.acknowledgeEventNotification_element", |
9370 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9371 | 14 | "AcknowledgeEventNotification_Response", HFILL }}, |
9372 | 14 | { &hf_mms_getAlarmSummary_01, |
9373 | 14 | { "getAlarmSummary", "mms.getAlarmSummary_element", |
9374 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9375 | 14 | "GetAlarmSummary_Response", HFILL }}, |
9376 | 14 | { &hf_mms_getAlarmEnrollmentSummary_01, |
9377 | 14 | { "getAlarmEnrollmentSummary", "mms.getAlarmEnrollmentSummary_element", |
9378 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9379 | 14 | "GetAlarmEnrollmentSummary_Response", HFILL }}, |
9380 | 14 | { &hf_mms_readJournal_01, |
9381 | 14 | { "readJournal", "mms.readJournal_element", |
9382 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9383 | 14 | "ReadJournal_Response", HFILL }}, |
9384 | 14 | { &hf_mms_writeJournal_01, |
9385 | 14 | { "writeJournal", "mms.writeJournal_element", |
9386 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9387 | 14 | "WriteJournal_Response", HFILL }}, |
9388 | 14 | { &hf_mms_initializeJournal_01, |
9389 | 14 | { "initializeJournal", "mms.initializeJournal", |
9390 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9391 | 14 | "InitializeJournal_Response", HFILL }}, |
9392 | 14 | { &hf_mms_reportJournalStatus_01, |
9393 | 14 | { "reportJournalStatus", "mms.reportJournalStatus_element", |
9394 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9395 | 14 | "ReportJournalStatus_Response", HFILL }}, |
9396 | 14 | { &hf_mms_createJournal_01, |
9397 | 14 | { "createJournal", "mms.createJournal_element", |
9398 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9399 | 14 | "CreateJournal_Response", HFILL }}, |
9400 | 14 | { &hf_mms_deleteJournal_01, |
9401 | 14 | { "deleteJournal", "mms.deleteJournal_element", |
9402 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9403 | 14 | "DeleteJournal_Response", HFILL }}, |
9404 | 14 | { &hf_mms_getCapabilityList_01, |
9405 | 14 | { "getCapabilityList", "mms.getCapabilityList_element", |
9406 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9407 | 14 | "GetCapabilityList_Response", HFILL }}, |
9408 | 14 | { &hf_mms_fileRead_01, |
9409 | 14 | { "fileRead", "mms.fileRead_element", |
9410 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9411 | 14 | "FileRead_Response", HFILL }}, |
9412 | 14 | { &hf_mms_fileClose_01, |
9413 | 14 | { "fileClose", "mms.fileClose_element", |
9414 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9415 | 14 | "FileClose_Response", HFILL }}, |
9416 | 14 | { &hf_mms_fileRename_01, |
9417 | 14 | { "fileRename", "mms.fileRename_element", |
9418 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9419 | 14 | "FileRename_Response", HFILL }}, |
9420 | 14 | { &hf_mms_fileDelete_01, |
9421 | 14 | { "fileDelete", "mms.fileDelete_element", |
9422 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9423 | 14 | "FileDelete_Response", HFILL }}, |
9424 | 14 | { &hf_mms_fileDirectory_01, |
9425 | 14 | { "fileDirectory", "mms.fileDirectory_element", |
9426 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9427 | 14 | "FileDirectory_Response", HFILL }}, |
9428 | 14 | { &hf_mms_FileName_item, |
9429 | 14 | { "FileName item", "mms.FileName_item", |
9430 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9431 | 14 | "GraphicString", HFILL }}, |
9432 | 14 | { &hf_mms_vmd_specific, |
9433 | 14 | { "vmd-specific", "mms.vmd_specific", |
9434 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9435 | 14 | "Identifier", HFILL }}, |
9436 | 14 | { &hf_mms_domain_specific, |
9437 | 14 | { "domain-specific", "mms.domain_specific_element", |
9438 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9439 | 14 | NULL, HFILL }}, |
9440 | 14 | { &hf_mms_domainId, |
9441 | 14 | { "domainId", "mms.domainId", |
9442 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9443 | 14 | "Identifier", HFILL }}, |
9444 | 14 | { &hf_mms_objectName_domain_specific_itemId, |
9445 | 14 | { "itemId", "mms.objectName_domain_specific_itemId", |
9446 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9447 | 14 | "ObjectName_domain_specific_itemid", HFILL }}, |
9448 | 14 | { &hf_mms_aa_specific, |
9449 | 14 | { "aa-specific", "mms.aa_specific", |
9450 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9451 | 14 | "Identifier", HFILL }}, |
9452 | 14 | { &hf_mms_ap_title, |
9453 | 14 | { "ap-title", "mms.ap_title", |
9454 | 14 | FT_UINT32, BASE_DEC, VALS(acse_AP_title_vals), 0, |
9455 | 14 | NULL, HFILL }}, |
9456 | 14 | { &hf_mms_ap_invocation_id, |
9457 | 14 | { "ap-invocation-id", "mms.ap_invocation_id", |
9458 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9459 | 14 | NULL, HFILL }}, |
9460 | 14 | { &hf_mms_ae_qualifier, |
9461 | 14 | { "ae-qualifier", "mms.ae_qualifier", |
9462 | 14 | FT_UINT32, BASE_DEC, VALS(acse_ASO_qualifier_vals), 0, |
9463 | 14 | NULL, HFILL }}, |
9464 | 14 | { &hf_mms_ae_invocation_id, |
9465 | 14 | { "ae-invocation-id", "mms.ae_invocation_id", |
9466 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9467 | 14 | NULL, HFILL }}, |
9468 | 14 | { &hf_mms_localDetailCalling, |
9469 | 14 | { "localDetailCalling", "mms.localDetailCalling", |
9470 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9471 | 14 | "Integer32", HFILL }}, |
9472 | 14 | { &hf_mms_proposedMaxServOutstandingCalling, |
9473 | 14 | { "proposedMaxServOutstandingCalling", "mms.proposedMaxServOutstandingCalling", |
9474 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9475 | 14 | "Integer16", HFILL }}, |
9476 | 14 | { &hf_mms_proposedMaxServOutstandingCalled, |
9477 | 14 | { "proposedMaxServOutstandingCalled", "mms.proposedMaxServOutstandingCalled", |
9478 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9479 | 14 | "Integer16", HFILL }}, |
9480 | 14 | { &hf_mms_proposedDataStructureNestingLevel, |
9481 | 14 | { "proposedDataStructureNestingLevel", "mms.proposedDataStructureNestingLevel", |
9482 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9483 | 14 | "Integer8", HFILL }}, |
9484 | 14 | { &hf_mms_mmsInitRequestDetail, |
9485 | 14 | { "mmsInitRequestDetail", "mms.mmsInitRequestDetail_element", |
9486 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9487 | 14 | "InitRequestDetail", HFILL }}, |
9488 | 14 | { &hf_mms_proposedVersionNumber, |
9489 | 14 | { "proposedVersionNumber", "mms.proposedVersionNumber", |
9490 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9491 | 14 | "Integer16", HFILL }}, |
9492 | 14 | { &hf_mms_proposedParameterCBB, |
9493 | 14 | { "proposedParameterCBB", "mms.proposedParameterCBB", |
9494 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9495 | 14 | "ParameterSupportOptions", HFILL }}, |
9496 | 14 | { &hf_mms_servicesSupportedCalling, |
9497 | 14 | { "servicesSupportedCalling", "mms.servicesSupportedCalling", |
9498 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9499 | 14 | "ServiceSupportOptions", HFILL }}, |
9500 | 14 | { &hf_mms_localDetailCalled, |
9501 | 14 | { "localDetailCalled", "mms.localDetailCalled", |
9502 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9503 | 14 | "Integer32", HFILL }}, |
9504 | 14 | { &hf_mms_negociatedMaxServOutstandingCalling, |
9505 | 14 | { "negociatedMaxServOutstandingCalling", "mms.negociatedMaxServOutstandingCalling", |
9506 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9507 | 14 | "Integer16", HFILL }}, |
9508 | 14 | { &hf_mms_negociatedMaxServOutstandingCalled, |
9509 | 14 | { "negociatedMaxServOutstandingCalled", "mms.negociatedMaxServOutstandingCalled", |
9510 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9511 | 14 | "Integer16", HFILL }}, |
9512 | 14 | { &hf_mms_negociatedDataStructureNestingLevel, |
9513 | 14 | { "negociatedDataStructureNestingLevel", "mms.negociatedDataStructureNestingLevel", |
9514 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9515 | 14 | "Integer8", HFILL }}, |
9516 | 14 | { &hf_mms_mmsInitResponseDetail, |
9517 | 14 | { "mmsInitResponseDetail", "mms.mmsInitResponseDetail_element", |
9518 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9519 | 14 | "InitResponseDetail", HFILL }}, |
9520 | 14 | { &hf_mms_negociatedVersionNumber, |
9521 | 14 | { "negociatedVersionNumber", "mms.negociatedVersionNumber", |
9522 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9523 | 14 | "Integer16", HFILL }}, |
9524 | 14 | { &hf_mms_negociatedParameterCBB, |
9525 | 14 | { "negociatedParameterCBB", "mms.negociatedParameterCBB", |
9526 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9527 | 14 | "ParameterSupportOptions", HFILL }}, |
9528 | 14 | { &hf_mms_servicesSupportedCalled, |
9529 | 14 | { "servicesSupportedCalled", "mms.servicesSupportedCalled", |
9530 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9531 | 14 | "ServiceSupportOptions", HFILL }}, |
9532 | 14 | { &hf_mms_originalInvokeID, |
9533 | 14 | { "originalInvokeID", "mms.originalInvokeID", |
9534 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9535 | 14 | "Unsigned32", HFILL }}, |
9536 | 14 | { &hf_mms_errorClass, |
9537 | 14 | { "errorClass", "mms.errorClass", |
9538 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_errorClass_vals), 0, |
9539 | 14 | NULL, HFILL }}, |
9540 | 14 | { &hf_mms_vmd_state, |
9541 | 14 | { "vmd-state", "mms.vmd_state", |
9542 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_vmd_state_vals), 0, |
9543 | 14 | NULL, HFILL }}, |
9544 | 14 | { &hf_mms_application_reference, |
9545 | 14 | { "application-reference", "mms.application_reference", |
9546 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_application_reference_vals), 0, |
9547 | 14 | NULL, HFILL }}, |
9548 | 14 | { &hf_mms_definition, |
9549 | 14 | { "definition", "mms.definition", |
9550 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_definition_vals), 0, |
9551 | 14 | NULL, HFILL }}, |
9552 | 14 | { &hf_mms_resource, |
9553 | 14 | { "resource", "mms.resource", |
9554 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_resource_vals), 0, |
9555 | 14 | NULL, HFILL }}, |
9556 | 14 | { &hf_mms_service, |
9557 | 14 | { "service", "mms.service", |
9558 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_service_vals), 0, |
9559 | 14 | NULL, HFILL }}, |
9560 | 14 | { &hf_mms_service_preempt, |
9561 | 14 | { "service-preempt", "mms.service_preempt", |
9562 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_service_preempt_vals), 0, |
9563 | 14 | NULL, HFILL }}, |
9564 | 14 | { &hf_mms_time_resolution, |
9565 | 14 | { "time-resolution", "mms.time_resolution", |
9566 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_time_resolution_vals), 0, |
9567 | 14 | NULL, HFILL }}, |
9568 | 14 | { &hf_mms_access, |
9569 | 14 | { "access", "mms.access", |
9570 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_access_vals), 0, |
9571 | 14 | NULL, HFILL }}, |
9572 | 14 | { &hf_mms_initiate, |
9573 | 14 | { "initiate", "mms.initiate", |
9574 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_initiate_vals), 0, |
9575 | 14 | NULL, HFILL }}, |
9576 | 14 | { &hf_mms_conclude, |
9577 | 14 | { "conclude", "mms.conclude", |
9578 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_conclude_vals), 0, |
9579 | 14 | NULL, HFILL }}, |
9580 | 14 | { &hf_mms_cancel, |
9581 | 14 | { "cancel", "mms.cancel", |
9582 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_cancel_vals), 0, |
9583 | 14 | NULL, HFILL }}, |
9584 | 14 | { &hf_mms_file, |
9585 | 14 | { "file", "mms.file", |
9586 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_file_vals), 0, |
9587 | 14 | NULL, HFILL }}, |
9588 | 14 | { &hf_mms_others, |
9589 | 14 | { "others", "mms.others", |
9590 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9591 | 14 | "INTEGER", HFILL }}, |
9592 | 14 | { &hf_mms_additionalCode, |
9593 | 14 | { "additionalCode", "mms.additionalCode", |
9594 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9595 | 14 | "INTEGER", HFILL }}, |
9596 | 14 | { &hf_mms_additionalDescription, |
9597 | 14 | { "additionalDescription", "mms.additionalDescription", |
9598 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9599 | 14 | "VisibleString", HFILL }}, |
9600 | 14 | { &hf_mms_serviceSpecificInformation, |
9601 | 14 | { "serviceSpecificInformation", "mms.serviceSpecificInformation", |
9602 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_serviceSpecificInformation_vals), 0, |
9603 | 14 | NULL, HFILL }}, |
9604 | 14 | { &hf_mms_obtainFile_02, |
9605 | 14 | { "obtainFile", "mms.obtainFile", |
9606 | 14 | FT_INT32, BASE_DEC, VALS(mms_ObtainFile_Error_vals), 0, |
9607 | 14 | "ObtainFile_Error", HFILL }}, |
9608 | 14 | { &hf_mms_start_02, |
9609 | 14 | { "start", "mms.start", |
9610 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9611 | 14 | "Start_Error", HFILL }}, |
9612 | 14 | { &hf_mms_stop_02, |
9613 | 14 | { "stop", "mms.stop", |
9614 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9615 | 14 | "Stop_Error", HFILL }}, |
9616 | 14 | { &hf_mms_resume_02, |
9617 | 14 | { "resume", "mms.resume", |
9618 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9619 | 14 | "Resume_Error", HFILL }}, |
9620 | 14 | { &hf_mms_reset_02, |
9621 | 14 | { "reset", "mms.reset", |
9622 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9623 | 14 | "Reset_Error", HFILL }}, |
9624 | 14 | { &hf_mms_deleteVariableAccess_02, |
9625 | 14 | { "deleteVariableAccess", "mms.deleteVariableAccess", |
9626 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9627 | 14 | "DeleteVariableAccess_Error", HFILL }}, |
9628 | 14 | { &hf_mms_deleteNamedVariableList_02, |
9629 | 14 | { "deleteNamedVariableList", "mms.deleteNamedVariableList", |
9630 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9631 | 14 | "DeleteNamedVariableList_Error", HFILL }}, |
9632 | 14 | { &hf_mms_deleteNamedType_02, |
9633 | 14 | { "deleteNamedType", "mms.deleteNamedType", |
9634 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9635 | 14 | "DeleteNamedType_Error", HFILL }}, |
9636 | 14 | { &hf_mms_defineEventEnrollment_Error, |
9637 | 14 | { "defineEventEnrollment-Error", "mms.defineEventEnrollment_Error", |
9638 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9639 | 14 | NULL, HFILL }}, |
9640 | 14 | { &hf_mms_fileRename_02, |
9641 | 14 | { "fileRename", "mms.fileRename", |
9642 | 14 | FT_INT32, BASE_DEC, VALS(mms_FileRename_Error_vals), 0, |
9643 | 14 | "FileRename_Error", HFILL }}, |
9644 | 14 | { &hf_mms_additionalService, |
9645 | 14 | { "additionalService", "mms.additionalService", |
9646 | 14 | FT_UINT32, BASE_DEC, VALS(mms_AdditionalService_Error_vals), 0, |
9647 | 14 | "AdditionalService_Error", HFILL }}, |
9648 | 14 | { &hf_mms_changeAccessControl, |
9649 | 14 | { "changeAccessControl", "mms.changeAccessControl", |
9650 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9651 | 14 | "ChangeAccessControl_Error", HFILL }}, |
9652 | 14 | { &hf_mms_defineEcl, |
9653 | 14 | { "defineEcl", "mms.defineEcl", |
9654 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9655 | 14 | "DefineEventConditionList_Error", HFILL }}, |
9656 | 14 | { &hf_mms_addECLReference, |
9657 | 14 | { "addECLReference", "mms.addECLReference", |
9658 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9659 | 14 | "AddEventConditionListReference_Error", HFILL }}, |
9660 | 14 | { &hf_mms_removeECLReference, |
9661 | 14 | { "removeECLReference", "mms.removeECLReference", |
9662 | 14 | FT_UINT32, BASE_DEC, VALS(mms_RemoveEventConditionListReference_Error_vals), 0, |
9663 | 14 | "RemoveEventConditionListReference_Error", HFILL }}, |
9664 | 14 | { &hf_mms_initiateUC, |
9665 | 14 | { "initiateUC", "mms.initiateUC", |
9666 | 14 | FT_UINT32, BASE_DEC, VALS(mms_InitiateUnitControl_Error_vals), 0, |
9667 | 14 | "InitiateUnitControl_Error", HFILL }}, |
9668 | 14 | { &hf_mms_startUC, |
9669 | 14 | { "startUC", "mms.startUC_element", |
9670 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9671 | 14 | "StartUnitControl_Error", HFILL }}, |
9672 | 14 | { &hf_mms_stopUC, |
9673 | 14 | { "stopUC", "mms.stopUC_element", |
9674 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9675 | 14 | "StopUnitControl_Error", HFILL }}, |
9676 | 14 | { &hf_mms_deleteUC, |
9677 | 14 | { "deleteUC", "mms.deleteUC", |
9678 | 14 | FT_UINT32, BASE_DEC, VALS(mms_DeleteUnitControl_Error_vals), 0, |
9679 | 14 | "DeleteUnitControl_Error", HFILL }}, |
9680 | 14 | { &hf_mms_loadUCFromFile, |
9681 | 14 | { "loadUCFromFile", "mms.loadUCFromFile", |
9682 | 14 | FT_UINT32, BASE_DEC, VALS(mms_LoadUnitControlFromFile_Error_vals), 0, |
9683 | 14 | "LoadUnitControlFromFile_Error", HFILL }}, |
9684 | 14 | { &hf_mms_eventCondition, |
9685 | 14 | { "eventCondition", "mms.eventCondition", |
9686 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9687 | 14 | "ObjectName", HFILL }}, |
9688 | 14 | { &hf_mms_eventConditionList, |
9689 | 14 | { "eventConditionList", "mms.eventConditionList", |
9690 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9691 | 14 | "ObjectName", HFILL }}, |
9692 | 14 | { &hf_mms_domain, |
9693 | 14 | { "domain", "mms.domain", |
9694 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9695 | 14 | "Identifier", HFILL }}, |
9696 | 14 | { &hf_mms_programInvocation, |
9697 | 14 | { "programInvocation", "mms.programInvocation", |
9698 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9699 | 14 | "Identifier", HFILL }}, |
9700 | 14 | { &hf_mms_programInvocationName, |
9701 | 14 | { "programInvocationName", "mms.programInvocationName", |
9702 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9703 | 14 | "Identifier", HFILL }}, |
9704 | 14 | { &hf_mms_programInvocationState, |
9705 | 14 | { "programInvocationState", "mms.programInvocationState", |
9706 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9707 | 14 | NULL, HFILL }}, |
9708 | 14 | { &hf_mms_none, |
9709 | 14 | { "none", "mms.none_element", |
9710 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9711 | 14 | NULL, HFILL }}, |
9712 | 14 | { &hf_mms_rejectReason, |
9713 | 14 | { "rejectReason", "mms.rejectReason", |
9714 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_rejectReason_vals), 0, |
9715 | 14 | NULL, HFILL }}, |
9716 | 14 | { &hf_mms_confirmed_requestPDU, |
9717 | 14 | { "confirmed-requestPDU", "mms.confirmed_requestPDU", |
9718 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_confirmed_requestPDU_vals), 0, |
9719 | 14 | NULL, HFILL }}, |
9720 | 14 | { &hf_mms_confirmed_responsePDU, |
9721 | 14 | { "confirmed-responsePDU", "mms.confirmed_responsePDU", |
9722 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_confirmed_responsePDU_vals), 0, |
9723 | 14 | NULL, HFILL }}, |
9724 | 14 | { &hf_mms_confirmed_errorPDU, |
9725 | 14 | { "confirmed-errorPDU", "mms.confirmed_errorPDU", |
9726 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_confirmed_errorPDU_vals), 0, |
9727 | 14 | NULL, HFILL }}, |
9728 | 14 | { &hf_mms_unconfirmedPDU, |
9729 | 14 | { "unconfirmedPDU", "mms.unconfirmedPDU", |
9730 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_unconfirmedPDU_vals), 0, |
9731 | 14 | NULL, HFILL }}, |
9732 | 14 | { &hf_mms_pdu_error, |
9733 | 14 | { "pdu-error", "mms.pdu_error", |
9734 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_pdu_error_vals), 0, |
9735 | 14 | NULL, HFILL }}, |
9736 | 14 | { &hf_mms_cancel_requestPDU, |
9737 | 14 | { "cancel-requestPDU", "mms.cancel_requestPDU", |
9738 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_cancel_requestPDU_vals), 0, |
9739 | 14 | NULL, HFILL }}, |
9740 | 14 | { &hf_mms_cancel_responsePDU, |
9741 | 14 | { "cancel-responsePDU", "mms.cancel_responsePDU", |
9742 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_cancel_responsePDU_vals), 0, |
9743 | 14 | NULL, HFILL }}, |
9744 | 14 | { &hf_mms_cancel_errorPDU, |
9745 | 14 | { "cancel-errorPDU", "mms.cancel_errorPDU", |
9746 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_cancel_errorPDU_vals), 0, |
9747 | 14 | NULL, HFILL }}, |
9748 | 14 | { &hf_mms_conclude_requestPDU, |
9749 | 14 | { "conclude-requestPDU", "mms.conclude_requestPDU", |
9750 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_conclude_requestPDU_vals), 0, |
9751 | 14 | NULL, HFILL }}, |
9752 | 14 | { &hf_mms_conclude_responsePDU, |
9753 | 14 | { "conclude-responsePDU", "mms.conclude_responsePDU", |
9754 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_conclude_responsePDU_vals), 0, |
9755 | 14 | NULL, HFILL }}, |
9756 | 14 | { &hf_mms_conclude_errorPDU, |
9757 | 14 | { "conclude-errorPDU", "mms.conclude_errorPDU", |
9758 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_conclude_errorPDU_vals), 0, |
9759 | 14 | NULL, HFILL }}, |
9760 | 14 | { &hf_mms_vmdLogicalStatus, |
9761 | 14 | { "vmdLogicalStatus", "mms.vmdLogicalStatus", |
9762 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_vmdLogicalStatus_vals), 0, |
9763 | 14 | NULL, HFILL }}, |
9764 | 14 | { &hf_mms_vmdPhysicalStatus, |
9765 | 14 | { "vmdPhysicalStatus", "mms.vmdPhysicalStatus", |
9766 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_vmdPhysicalStatus_vals), 0, |
9767 | 14 | NULL, HFILL }}, |
9768 | 14 | { &hf_mms_localDetail, |
9769 | 14 | { "localDetail", "mms.localDetail", |
9770 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9771 | 14 | "BIT_STRING_SIZE_0_128", HFILL }}, |
9772 | 14 | { &hf_mms_vmdSpecific, |
9773 | 14 | { "vmdSpecific", "mms.vmdSpecific_element", |
9774 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9775 | 14 | NULL, HFILL }}, |
9776 | 14 | { &hf_mms_domainSpecific, |
9777 | 14 | { "domainSpecific", "mms.domainSpecific", |
9778 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9779 | 14 | "Identifier", HFILL }}, |
9780 | 14 | { &hf_mms_aaSpecific, |
9781 | 14 | { "aaSpecific", "mms.aaSpecific_element", |
9782 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9783 | 14 | NULL, HFILL }}, |
9784 | 14 | { &hf_mms_extendedObjectClass, |
9785 | 14 | { "extendedObjectClass", "mms.extendedObjectClass", |
9786 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_extendedObjectClass_vals), 0, |
9787 | 14 | NULL, HFILL }}, |
9788 | 14 | { &hf_mms_objectClass, |
9789 | 14 | { "objectClass", "mms.objectClass", |
9790 | 14 | FT_INT32, BASE_DEC, VALS(mms_ObjectClass_vals), 0, |
9791 | 14 | NULL, HFILL }}, |
9792 | 14 | { &hf_mms_objectScope, |
9793 | 14 | { "objectScope", "mms.objectScope", |
9794 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectScope_vals), 0, |
9795 | 14 | NULL, HFILL }}, |
9796 | 14 | { &hf_mms_getNameList_Request_continueAfter, |
9797 | 14 | { "continueAfter", "mms.getNameList-Request_continueAfter", |
9798 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9799 | 14 | "Identifier", HFILL }}, |
9800 | 14 | { &hf_mms_listOfIdentifier, |
9801 | 14 | { "listOfIdentifier", "mms.listOfIdentifier", |
9802 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9803 | 14 | "SEQUENCE_OF_Identifier", HFILL }}, |
9804 | 14 | { &hf_mms_listOfIdentifier_item, |
9805 | 14 | { "Identifier", "mms.Identifier", |
9806 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9807 | 14 | NULL, HFILL }}, |
9808 | 14 | { &hf_mms_moreFollows, |
9809 | 14 | { "moreFollows", "mms.moreFollows", |
9810 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9811 | 14 | "BOOLEAN", HFILL }}, |
9812 | 14 | { &hf_mms_vendorName, |
9813 | 14 | { "vendorName", "mms.vendorName", |
9814 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9815 | 14 | "VisibleString", HFILL }}, |
9816 | 14 | { &hf_mms_modelName, |
9817 | 14 | { "modelName", "mms.modelName", |
9818 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9819 | 14 | "VisibleString", HFILL }}, |
9820 | 14 | { &hf_mms_revision, |
9821 | 14 | { "revision", "mms.revision", |
9822 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9823 | 14 | "VisibleString", HFILL }}, |
9824 | 14 | { &hf_mms_listOfAbstractSyntaxes, |
9825 | 14 | { "listOfAbstractSyntaxes", "mms.listOfAbstractSyntaxes", |
9826 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9827 | 14 | NULL, HFILL }}, |
9828 | 14 | { &hf_mms_listOfAbstractSyntaxes_item, |
9829 | 14 | { "listOfAbstractSyntaxes item", "mms.listOfAbstractSyntaxes_item", |
9830 | 14 | FT_OID, BASE_NONE, NULL, 0, |
9831 | 14 | "OBJECT_IDENTIFIER", HFILL }}, |
9832 | 14 | { &hf_mms_extendedObjectClass_01, |
9833 | 14 | { "extendedObjectClass", "mms.extendedObjectClass", |
9834 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_extendedObjectClass_01_vals), 0, |
9835 | 14 | "T_extendedObjectClass_01", HFILL }}, |
9836 | 14 | { &hf_mms_objectClass_01, |
9837 | 14 | { "objectClass", "mms.objectClass", |
9838 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_objectClass_vals), 0, |
9839 | 14 | NULL, HFILL }}, |
9840 | 14 | { &hf_mms_currentName, |
9841 | 14 | { "currentName", "mms.currentName", |
9842 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
9843 | 14 | "ObjectName", HFILL }}, |
9844 | 14 | { &hf_mms_newIdentifier, |
9845 | 14 | { "newIdentifier", "mms.newIdentifier", |
9846 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9847 | 14 | "Identifier", HFILL }}, |
9848 | 14 | { &hf_mms_getCapabilityList_Request_continueAfter, |
9849 | 14 | { "continueAfter", "mms.getCapabilityList-Request_continueAfter", |
9850 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9851 | 14 | "VisibleString", HFILL }}, |
9852 | 14 | { &hf_mms_listOfCapabilities, |
9853 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9854 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9855 | 14 | NULL, HFILL }}, |
9856 | 14 | { &hf_mms_listOfCapabilities_item, |
9857 | 14 | { "listOfCapabilities item", "mms.listOfCapabilities_item", |
9858 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9859 | 14 | "VisibleString", HFILL }}, |
9860 | 14 | { &hf_mms_domainName, |
9861 | 14 | { "domainName", "mms.domainName", |
9862 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9863 | 14 | "Identifier", HFILL }}, |
9864 | 14 | { &hf_mms_listOfCapabilities_01, |
9865 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9866 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9867 | 14 | "T_listOfCapabilities_01", HFILL }}, |
9868 | 14 | { &hf_mms_sharable, |
9869 | 14 | { "sharable", "mms.sharable", |
9870 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9871 | 14 | "BOOLEAN", HFILL }}, |
9872 | 14 | { &hf_mms_loadData, |
9873 | 14 | { "loadData", "mms.loadData", |
9874 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_loadData_vals), 0, |
9875 | 14 | NULL, HFILL }}, |
9876 | 14 | { &hf_mms_non_coded, |
9877 | 14 | { "non-coded", "mms.non_coded", |
9878 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
9879 | 14 | "OCTET_STRING", HFILL }}, |
9880 | 14 | { &hf_mms_coded, |
9881 | 14 | { "coded", "mms.coded_element", |
9882 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9883 | 14 | "EXTERNALt", HFILL }}, |
9884 | 14 | { &hf_mms_discard, |
9885 | 14 | { "discard", "mms.discard_element", |
9886 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9887 | 14 | "ServiceError", HFILL }}, |
9888 | 14 | { &hf_mms_ulsmID, |
9889 | 14 | { "ulsmID", "mms.ulsmID", |
9890 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9891 | 14 | "Integer32", HFILL }}, |
9892 | 14 | { &hf_mms_listOfCapabilities_02, |
9893 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9894 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9895 | 14 | "T_listOfCapabilities_02", HFILL }}, |
9896 | 14 | { &hf_mms_loadData_01, |
9897 | 14 | { "loadData", "mms.loadData", |
9898 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_loadData_01_vals), 0, |
9899 | 14 | "T_loadData_01", HFILL }}, |
9900 | 14 | { &hf_mms_listOfCapabilities_03, |
9901 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9902 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9903 | 14 | "T_listOfCapabilities_03", HFILL }}, |
9904 | 14 | { &hf_mms_fileName, |
9905 | 14 | { "fileName", "mms.fileName", |
9906 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9907 | 14 | NULL, HFILL }}, |
9908 | 14 | { &hf_mms_listOfCapabilities_04, |
9909 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9910 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9911 | 14 | "T_listOfCapabilities_04", HFILL }}, |
9912 | 14 | { &hf_mms_thirdParty, |
9913 | 14 | { "thirdParty", "mms.thirdParty_element", |
9914 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9915 | 14 | "ApplicationReference", HFILL }}, |
9916 | 14 | { &hf_mms_filenName, |
9917 | 14 | { "filenName", "mms.filenName", |
9918 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9919 | 14 | "FileName", HFILL }}, |
9920 | 14 | { &hf_mms_listOfCapabilities_05, |
9921 | 14 | { "listOfCapabilities", "mms.listOfCapabilities", |
9922 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9923 | 14 | "T_listOfCapabilities_05", HFILL }}, |
9924 | 14 | { &hf_mms_getDomainAttributes_Response_state, |
9925 | 14 | { "state", "mms.getDomainAttributes-Response_state", |
9926 | 14 | FT_INT32, BASE_DEC, VALS(mms_DomainState_vals), 0, |
9927 | 14 | "DomainState", HFILL }}, |
9928 | 14 | { &hf_mms_mmsDeletable, |
9929 | 14 | { "mmsDeletable", "mms.mmsDeletable", |
9930 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9931 | 14 | "BOOLEAN", HFILL }}, |
9932 | 14 | { &hf_mms_listOfProgramInvocations, |
9933 | 14 | { "listOfProgramInvocations", "mms.listOfProgramInvocations", |
9934 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9935 | 14 | "SEQUENCE_OF_Identifier", HFILL }}, |
9936 | 14 | { &hf_mms_listOfProgramInvocations_item, |
9937 | 14 | { "Identifier", "mms.Identifier", |
9938 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9939 | 14 | NULL, HFILL }}, |
9940 | 14 | { &hf_mms_uploadInProgress, |
9941 | 14 | { "uploadInProgress", "mms.uploadInProgress", |
9942 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
9943 | 14 | "Integer8", HFILL }}, |
9944 | 14 | { &hf_mms_listOfDomainName, |
9945 | 14 | { "listOfDomainName", "mms.listOfDomainName", |
9946 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9947 | 14 | "SEQUENCE_OF_Identifier", HFILL }}, |
9948 | 14 | { &hf_mms_listOfDomainName_item, |
9949 | 14 | { "Identifier", "mms.Identifier", |
9950 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9951 | 14 | NULL, HFILL }}, |
9952 | 14 | { &hf_mms_reusable, |
9953 | 14 | { "reusable", "mms.reusable", |
9954 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9955 | 14 | "BOOLEAN", HFILL }}, |
9956 | 14 | { &hf_mms_monitorType, |
9957 | 14 | { "monitorType", "mms.monitorType", |
9958 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9959 | 14 | "BOOLEAN", HFILL }}, |
9960 | 14 | { &hf_mms_executionArgument, |
9961 | 14 | { "executionArgument", "mms.executionArgument", |
9962 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_vals), 0, |
9963 | 14 | NULL, HFILL }}, |
9964 | 14 | { &hf_mms_simpleString, |
9965 | 14 | { "simpleString", "mms.simpleString", |
9966 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9967 | 14 | "VisibleString", HFILL }}, |
9968 | 14 | { &hf_mms_encodedString, |
9969 | 14 | { "encodedString", "mms.encodedString_element", |
9970 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
9971 | 14 | "EXTERNALt", HFILL }}, |
9972 | 14 | { &hf_mms_executionArgument_01, |
9973 | 14 | { "executionArgument", "mms.executionArgument", |
9974 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_01_vals), 0, |
9975 | 14 | "T_executionArgument_01", HFILL }}, |
9976 | 14 | { &hf_mms_getProgramInvocationAttributes_Response_state, |
9977 | 14 | { "state", "mms.getProgramInvocationAttributes-Response_state", |
9978 | 14 | FT_INT32, BASE_DEC, VALS(mms_ProgramInvocationState_vals), 0, |
9979 | 14 | "ProgramInvocationState", HFILL }}, |
9980 | 14 | { &hf_mms_listOfDomainNames, |
9981 | 14 | { "listOfDomainNames", "mms.listOfDomainNames", |
9982 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
9983 | 14 | "SEQUENCE_OF_Identifier", HFILL }}, |
9984 | 14 | { &hf_mms_listOfDomainNames_item, |
9985 | 14 | { "Identifier", "mms.Identifier", |
9986 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9987 | 14 | NULL, HFILL }}, |
9988 | 14 | { &hf_mms_monitor, |
9989 | 14 | { "monitor", "mms.monitor", |
9990 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
9991 | 14 | "BOOLEAN", HFILL }}, |
9992 | 14 | { &hf_mms_startArgument, |
9993 | 14 | { "startArgument", "mms.startArgument", |
9994 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
9995 | 14 | "VisibleString", HFILL }}, |
9996 | 14 | { &hf_mms_executionArgument_02, |
9997 | 14 | { "executionArgument", "mms.executionArgument", |
9998 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_executionArgument_02_vals), 0, |
9999 | 14 | "T_executionArgument_02", HFILL }}, |
10000 | 14 | { &hf_mms_typeName, |
10001 | 14 | { "typeName", "mms.typeName", |
10002 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10003 | 14 | "ObjectName", HFILL }}, |
10004 | 14 | { &hf_mms_array, |
10005 | 14 | { "array", "mms.array_element", |
10006 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10007 | 14 | NULL, HFILL }}, |
10008 | 14 | { &hf_mms_packed, |
10009 | 14 | { "packed", "mms.packed", |
10010 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10011 | 14 | "BOOLEAN", HFILL }}, |
10012 | 14 | { &hf_mms_numberOfElements, |
10013 | 14 | { "numberOfElements", "mms.numberOfElements", |
10014 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10015 | 14 | "Unsigned32", HFILL }}, |
10016 | 14 | { &hf_mms_elementType, |
10017 | 14 | { "elementType", "mms.elementType", |
10018 | 14 | FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0, |
10019 | 14 | "TypeSpecification", HFILL }}, |
10020 | 14 | { &hf_mms_structure, |
10021 | 14 | { "structure", "mms.structure_element", |
10022 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10023 | 14 | NULL, HFILL }}, |
10024 | 14 | { &hf_mms_components, |
10025 | 14 | { "components", "mms.components", |
10026 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10027 | 14 | NULL, HFILL }}, |
10028 | 14 | { &hf_mms_components_item, |
10029 | 14 | { "components item", "mms.components_item_element", |
10030 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10031 | 14 | NULL, HFILL }}, |
10032 | 14 | { &hf_mms_componentName, |
10033 | 14 | { "componentName", "mms.componentName", |
10034 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10035 | 14 | "Identifier", HFILL }}, |
10036 | 14 | { &hf_mms_componentType, |
10037 | 14 | { "componentType", "mms.componentType", |
10038 | 14 | FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0, |
10039 | 14 | "TypeSpecification", HFILL }}, |
10040 | 14 | { &hf_mms_boolean, |
10041 | 14 | { "boolean", "mms.boolean_element", |
10042 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10043 | 14 | NULL, HFILL }}, |
10044 | 14 | { &hf_mms_typeSpecification_bit_string, |
10045 | 14 | { "bit-string", "mms.typeSpecification_bit-string", |
10046 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10047 | 14 | "Integer32", HFILL }}, |
10048 | 14 | { &hf_mms_integer, |
10049 | 14 | { "integer", "mms.integer", |
10050 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10051 | 14 | "Unsigned8", HFILL }}, |
10052 | 14 | { &hf_mms_unsigned, |
10053 | 14 | { "unsigned", "mms.unsigned", |
10054 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10055 | 14 | "Unsigned8", HFILL }}, |
10056 | 14 | { &hf_mms_typeSpecification_octet_string, |
10057 | 14 | { "octet-string", "mms.typeSpecification.octet-string", |
10058 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10059 | 14 | "Integer32", HFILL }}, |
10060 | 14 | { &hf_mms_typeSpecification_visible_string, |
10061 | 14 | { "visible-string", "mms.typeSpecification.visible-string", |
10062 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10063 | 14 | "Integer32", HFILL }}, |
10064 | 14 | { &hf_mms_generalized_time, |
10065 | 14 | { "generalized-time", "mms.generalized_time_element", |
10066 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10067 | 14 | NULL, HFILL }}, |
10068 | 14 | { &hf_mms_typeSpecification_binary_time, |
10069 | 14 | { "binary-time", "mms.typeSpecification.binary-time", |
10070 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10071 | 14 | "BOOLEAN", HFILL }}, |
10072 | 14 | { &hf_mms_bcd, |
10073 | 14 | { "bcd", "mms.bcd", |
10074 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10075 | 14 | "Unsigned8", HFILL }}, |
10076 | 14 | { &hf_mms_objId, |
10077 | 14 | { "objId", "mms.objId_element", |
10078 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10079 | 14 | NULL, HFILL }}, |
10080 | 14 | { &hf_mms_AlternateAccess_item, |
10081 | 14 | { "AlternateAccess item", "mms.AlternateAccess_item", |
10082 | 14 | FT_UINT32, BASE_DEC, VALS(mms_AlternateAccess_item_vals), 0, |
10083 | 14 | NULL, HFILL }}, |
10084 | 14 | { &hf_mms_unnamed, |
10085 | 14 | { "unnamed", "mms.unnamed", |
10086 | 14 | FT_UINT32, BASE_DEC, VALS(mms_AlternateAccessSelection_vals), 0, |
10087 | 14 | "AlternateAccessSelection", HFILL }}, |
10088 | 14 | { &hf_mms_named, |
10089 | 14 | { "named", "mms.named_element", |
10090 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10091 | 14 | NULL, HFILL }}, |
10092 | 14 | { &hf_mms_accesst, |
10093 | 14 | { "accesst", "mms.accesst", |
10094 | 14 | FT_UINT32, BASE_DEC, VALS(mms_AlternateAccessSelection_vals), 0, |
10095 | 14 | "AlternateAccessSelection", HFILL }}, |
10096 | 14 | { &hf_mms_selectAlternateAccess, |
10097 | 14 | { "selectAlternateAccess", "mms.selectAlternateAccess_element", |
10098 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10099 | 14 | NULL, HFILL }}, |
10100 | 14 | { &hf_mms_accessSelection, |
10101 | 14 | { "accessSelection", "mms.accessSelection", |
10102 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_accessSelection_vals), 0, |
10103 | 14 | NULL, HFILL }}, |
10104 | 14 | { &hf_mms_component, |
10105 | 14 | { "component", "mms.component", |
10106 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10107 | 14 | "Identifier", HFILL }}, |
10108 | 14 | { &hf_mms_index, |
10109 | 14 | { "index", "mms.index", |
10110 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10111 | 14 | "Unsigned32", HFILL }}, |
10112 | 14 | { &hf_mms_indexRange, |
10113 | 14 | { "indexRange", "mms.indexRange_element", |
10114 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10115 | 14 | NULL, HFILL }}, |
10116 | 14 | { &hf_mms_lowIndex, |
10117 | 14 | { "lowIndex", "mms.lowIndex", |
10118 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10119 | 14 | "Unsigned32", HFILL }}, |
10120 | 14 | { &hf_mms_allElements, |
10121 | 14 | { "allElements", "mms.allElements_element", |
10122 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10123 | 14 | NULL, HFILL }}, |
10124 | 14 | { &hf_mms_alternateAccess, |
10125 | 14 | { "alternateAccess", "mms.alternateAccess", |
10126 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10127 | 14 | NULL, HFILL }}, |
10128 | 14 | { &hf_mms_selectAccess, |
10129 | 14 | { "selectAccess", "mms.selectAccess", |
10130 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_selectAccess_vals), 0, |
10131 | 14 | NULL, HFILL }}, |
10132 | 14 | { &hf_mms_indexRange_01, |
10133 | 14 | { "indexRange", "mms.indexRange_element", |
10134 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10135 | 14 | "T_indexRange_01", HFILL }}, |
10136 | 14 | { &hf_mms_nmberOfElements, |
10137 | 14 | { "nmberOfElements", "mms.nmberOfElements", |
10138 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10139 | 14 | "Unsigned32", HFILL }}, |
10140 | 14 | { &hf_mms_specificationWithResult, |
10141 | 14 | { "specificationWithResult", "mms.specificationWithResult", |
10142 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10143 | 14 | "BOOLEAN", HFILL }}, |
10144 | 14 | { &hf_mms_variableAccessSpecificatn, |
10145 | 14 | { "variableAccessSpecificatn", "mms.variableAccessSpecificatn", |
10146 | 14 | FT_UINT32, BASE_DEC, VALS(mms_VariableAccessSpecification_vals), 0, |
10147 | 14 | "VariableAccessSpecification", HFILL }}, |
10148 | 14 | { &hf_mms_listOfAccessResult, |
10149 | 14 | { "listOfAccessResult", "mms.listOfAccessResult", |
10150 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10151 | 14 | "SEQUENCE_OF_AccessResult", HFILL }}, |
10152 | 14 | { &hf_mms_listOfAccessResult_item, |
10153 | 14 | { "AccessResult", "mms.AccessResult", |
10154 | 14 | FT_UINT32, BASE_DEC, VALS(mms_AccessResult_vals), 0, |
10155 | 14 | NULL, HFILL }}, |
10156 | 14 | { &hf_mms_listOfData, |
10157 | 14 | { "listOfData", "mms.listOfData", |
10158 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10159 | 14 | NULL, HFILL }}, |
10160 | 14 | { &hf_mms_listOfData_item, |
10161 | 14 | { "Data", "mms.Data", |
10162 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0, |
10163 | 14 | NULL, HFILL }}, |
10164 | 14 | { &hf_mms_Write_Response_item, |
10165 | 14 | { "Write-Response item", "mms.Write_Response_item", |
10166 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Write_Response_item_vals), 0, |
10167 | 14 | NULL, HFILL }}, |
10168 | 14 | { &hf_mms_failure, |
10169 | 14 | { "failure", "mms.failure", |
10170 | 14 | FT_INT32, BASE_DEC, VALS(mms_DataAccessError_vals), 0, |
10171 | 14 | "DataAccessError", HFILL }}, |
10172 | 14 | { &hf_mms_success, |
10173 | 14 | { "success", "mms.success_element", |
10174 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10175 | 14 | NULL, HFILL }}, |
10176 | 14 | { &hf_mms_variableAccessSpecification, |
10177 | 14 | { "variableAccessSpecification", "mms.variableAccessSpecification", |
10178 | 14 | FT_UINT32, BASE_DEC, VALS(mms_VariableAccessSpecification_vals), 0, |
10179 | 14 | NULL, HFILL }}, |
10180 | 14 | { &hf_mms_listOfAccessResult_01, |
10181 | 14 | { "listOfAccessResult", "mms.listOfAccessResult", |
10182 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10183 | 14 | NULL, HFILL }}, |
10184 | 14 | { &hf_mms_name, |
10185 | 14 | { "name", "mms.name", |
10186 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10187 | 14 | "ObjectName", HFILL }}, |
10188 | 14 | { &hf_mms_address, |
10189 | 14 | { "address", "mms.address", |
10190 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Address_vals), 0, |
10191 | 14 | NULL, HFILL }}, |
10192 | 14 | { &hf_mms_typeSpecification, |
10193 | 14 | { "typeSpecification", "mms.typeSpecification", |
10194 | 14 | FT_UINT32, BASE_DEC, VALS(mms_TypeSpecification_vals), 0, |
10195 | 14 | NULL, HFILL }}, |
10196 | 14 | { &hf_mms_variableName, |
10197 | 14 | { "variableName", "mms.variableName", |
10198 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10199 | 14 | "ObjectName", HFILL }}, |
10200 | 14 | { &hf_mms_scatteredAccessName, |
10201 | 14 | { "scatteredAccessName", "mms.scatteredAccessName", |
10202 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10203 | 14 | "ObjectName", HFILL }}, |
10204 | 14 | { &hf_mms_scatteredAccessDescription, |
10205 | 14 | { "scatteredAccessDescription", "mms.scatteredAccessDescription", |
10206 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10207 | 14 | NULL, HFILL }}, |
10208 | 14 | { &hf_mms_scopeOfDelete, |
10209 | 14 | { "scopeOfDelete", "mms.scopeOfDelete", |
10210 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_vals), 0, |
10211 | 14 | NULL, HFILL }}, |
10212 | 14 | { &hf_mms_listOfName, |
10213 | 14 | { "listOfName", "mms.listOfName", |
10214 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10215 | 14 | "SEQUENCE_OF_ObjectName", HFILL }}, |
10216 | 14 | { &hf_mms_listOfName_item, |
10217 | 14 | { "ObjectName", "mms.ObjectName", |
10218 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10219 | 14 | NULL, HFILL }}, |
10220 | 14 | { &hf_mms_numberMatched, |
10221 | 14 | { "numberMatched", "mms.numberMatched", |
10222 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10223 | 14 | "Unsigned32", HFILL }}, |
10224 | 14 | { &hf_mms_numberDeleted, |
10225 | 14 | { "numberDeleted", "mms.numberDeleted", |
10226 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10227 | 14 | "Unsigned32", HFILL }}, |
10228 | 14 | { &hf_mms_variableListName, |
10229 | 14 | { "variableListName", "mms.variableListName", |
10230 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10231 | 14 | "ObjectName", HFILL }}, |
10232 | 14 | { &hf_mms_listOfVariable, |
10233 | 14 | { "listOfVariable", "mms.listOfVariable", |
10234 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10235 | 14 | NULL, HFILL }}, |
10236 | 14 | { &hf_mms_listOfVariable_item, |
10237 | 14 | { "listOfVariable item", "mms.listOfVariable_item_element", |
10238 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10239 | 14 | NULL, HFILL }}, |
10240 | 14 | { &hf_mms_variableSpecification, |
10241 | 14 | { "variableSpecification", "mms.variableSpecification", |
10242 | 14 | FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0, |
10243 | 14 | NULL, HFILL }}, |
10244 | 14 | { &hf_mms_listOfVariable_01, |
10245 | 14 | { "listOfVariable", "mms.listOfVariable", |
10246 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10247 | 14 | "T_listOfVariable_01", HFILL }}, |
10248 | 14 | { &hf_mms_listOfVariable_item_01, |
10249 | 14 | { "listOfVariable item", "mms.listOfVariable_item_element", |
10250 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10251 | 14 | "T_listOfVariable_item_01", HFILL }}, |
10252 | 14 | { &hf_mms_scopeOfDelete_01, |
10253 | 14 | { "scopeOfDelete", "mms.scopeOfDelete", |
10254 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_01_vals), 0, |
10255 | 14 | "T_scopeOfDelete_01", HFILL }}, |
10256 | 14 | { &hf_mms_listOfVariableListName, |
10257 | 14 | { "listOfVariableListName", "mms.listOfVariableListName", |
10258 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10259 | 14 | "SEQUENCE_OF_ObjectName", HFILL }}, |
10260 | 14 | { &hf_mms_listOfVariableListName_item, |
10261 | 14 | { "ObjectName", "mms.ObjectName", |
10262 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10263 | 14 | NULL, HFILL }}, |
10264 | 14 | { &hf_mms_scopeOfDelete_02, |
10265 | 14 | { "scopeOfDelete", "mms.scopeOfDelete", |
10266 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_scopeOfDelete_02_vals), 0, |
10267 | 14 | "T_scopeOfDelete_02", HFILL }}, |
10268 | 14 | { &hf_mms_listOfTypeName, |
10269 | 14 | { "listOfTypeName", "mms.listOfTypeName", |
10270 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10271 | 14 | "SEQUENCE_OF_ObjectName", HFILL }}, |
10272 | 14 | { &hf_mms_listOfTypeName_item, |
10273 | 14 | { "ObjectName", "mms.ObjectName", |
10274 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10275 | 14 | NULL, HFILL }}, |
10276 | 14 | { &hf_mms_success_01, |
10277 | 14 | { "success", "mms.success", |
10278 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0, |
10279 | 14 | "Data", HFILL }}, |
10280 | 14 | { &hf_mms_array_01, |
10281 | 14 | { "array", "mms.array", |
10282 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10283 | 14 | "SEQUENCE_OF_Data", HFILL }}, |
10284 | 14 | { &hf_mms_array_item, |
10285 | 14 | { "Data", "mms.Data", |
10286 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0, |
10287 | 14 | NULL, HFILL }}, |
10288 | 14 | { &hf_mms_structure_01, |
10289 | 14 | { "structure", "mms.structure", |
10290 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10291 | 14 | "T_structure_01", HFILL }}, |
10292 | 14 | { &hf_mms_structure_item, |
10293 | 14 | { "Data", "mms.Data", |
10294 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0, |
10295 | 14 | NULL, HFILL }}, |
10296 | 14 | { &hf_mms_boolean_01, |
10297 | 14 | { "boolean", "mms.boolean", |
10298 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10299 | 14 | NULL, HFILL }}, |
10300 | 14 | { &hf_mms_data_bit_string, |
10301 | 14 | { "bit-string", "mms.data_bit-string", |
10302 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10303 | 14 | "T_data_bit_string", HFILL }}, |
10304 | 14 | { &hf_mms_integer_01, |
10305 | 14 | { "integer", "mms.integer", |
10306 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10307 | 14 | NULL, HFILL }}, |
10308 | 14 | { &hf_mms_unsigned_01, |
10309 | 14 | { "unsigned", "mms.unsigned", |
10310 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10311 | 14 | NULL, HFILL }}, |
10312 | 14 | { &hf_mms_floating_point, |
10313 | 14 | { "floating-point", "mms.floating_point", |
10314 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10315 | 14 | "FloatingPoint", HFILL }}, |
10316 | 14 | { &hf_mms_data_octet_string, |
10317 | 14 | { "octet-string", "mms.data.octet-string", |
10318 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10319 | 14 | "T_data_octet_string", HFILL }}, |
10320 | 14 | { &hf_mms_data_visible_string, |
10321 | 14 | { "visible-string", "mms.data.visible-string", |
10322 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10323 | 14 | "T_data_visible_string", HFILL }}, |
10324 | 14 | { &hf_mms_data_binary_time, |
10325 | 14 | { "binary-time", "mms.data.binary-time", |
10326 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10327 | 14 | "T_data_binary_time", HFILL }}, |
10328 | 14 | { &hf_mms_bcd_01, |
10329 | 14 | { "bcd", "mms.bcd", |
10330 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10331 | 14 | "INTEGER", HFILL }}, |
10332 | 14 | { &hf_mms_booleanArray, |
10333 | 14 | { "booleanArray", "mms.booleanArray", |
10334 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10335 | 14 | "BIT_STRING", HFILL }}, |
10336 | 14 | { &hf_mms_objId_01, |
10337 | 14 | { "objId", "mms.objId", |
10338 | 14 | FT_OID, BASE_NONE, NULL, 0, |
10339 | 14 | "OBJECT_IDENTIFIER", HFILL }}, |
10340 | 14 | { &hf_mms_mMSString, |
10341 | 14 | { "mMSString", "mms.mMSString", |
10342 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10343 | 14 | NULL, HFILL }}, |
10344 | 14 | { &hf_mms_utc_time, |
10345 | 14 | { "utc-time", "mms.utc_time", |
10346 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10347 | 14 | "UtcTime", HFILL }}, |
10348 | 14 | { &hf_mms_listOfVariable_02, |
10349 | 14 | { "listOfVariable", "mms.listOfVariable", |
10350 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10351 | 14 | "T_listOfVariable_02", HFILL }}, |
10352 | 14 | { &hf_mms_listOfVariable_item_02, |
10353 | 14 | { "listOfVariable item", "mms.listOfVariable_item_element", |
10354 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10355 | 14 | "T_listOfVariable_item_02", HFILL }}, |
10356 | 14 | { &hf_mms_ScatteredAccessDescription_item, |
10357 | 14 | { "ScatteredAccessDescription item", "mms.ScatteredAccessDescription_item_element", |
10358 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10359 | 14 | NULL, HFILL }}, |
10360 | 14 | { &hf_mms_variableDescription, |
10361 | 14 | { "variableDescription", "mms.variableDescription_element", |
10362 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10363 | 14 | NULL, HFILL }}, |
10364 | 14 | { &hf_mms_invalidated, |
10365 | 14 | { "invalidated", "mms.invalidated_element", |
10366 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10367 | 14 | NULL, HFILL }}, |
10368 | 14 | { &hf_mms_numericAddress, |
10369 | 14 | { "numericAddress", "mms.numericAddress", |
10370 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10371 | 14 | "Unsigned32", HFILL }}, |
10372 | 14 | { &hf_mms_symbolicAddress, |
10373 | 14 | { "symbolicAddress", "mms.symbolicAddress", |
10374 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10375 | 14 | "VisibleString", HFILL }}, |
10376 | 14 | { &hf_mms_unconstrainedAddress, |
10377 | 14 | { "unconstrainedAddress", "mms.unconstrainedAddress", |
10378 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10379 | 14 | "OCTET_STRING", HFILL }}, |
10380 | 14 | { &hf_mms_semaphoreName, |
10381 | 14 | { "semaphoreName", "mms.semaphoreName", |
10382 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10383 | 14 | "ObjectName", HFILL }}, |
10384 | 14 | { &hf_mms_namedToken, |
10385 | 14 | { "namedToken", "mms.namedToken", |
10386 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10387 | 14 | "Identifier", HFILL }}, |
10388 | 14 | { &hf_mms_priority, |
10389 | 14 | { "priority", "mms.priority", |
10390 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10391 | 14 | NULL, HFILL }}, |
10392 | 14 | { &hf_mms_acceptableDelay, |
10393 | 14 | { "acceptableDelay", "mms.acceptableDelay", |
10394 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10395 | 14 | "Unsigned32", HFILL }}, |
10396 | 14 | { &hf_mms_controlTimeOut, |
10397 | 14 | { "controlTimeOut", "mms.controlTimeOut", |
10398 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10399 | 14 | "Unsigned32", HFILL }}, |
10400 | 14 | { &hf_mms_abortOnTimeOut, |
10401 | 14 | { "abortOnTimeOut", "mms.abortOnTimeOut", |
10402 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10403 | 14 | "BOOLEAN", HFILL }}, |
10404 | 14 | { &hf_mms_relinquishIfConnectionLost, |
10405 | 14 | { "relinquishIfConnectionLost", "mms.relinquishIfConnectionLost", |
10406 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10407 | 14 | "BOOLEAN", HFILL }}, |
10408 | 14 | { &hf_mms_applicationToPreempt, |
10409 | 14 | { "applicationToPreempt", "mms.applicationToPreempt_element", |
10410 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10411 | 14 | "ApplicationReference", HFILL }}, |
10412 | 14 | { &hf_mms_noResult, |
10413 | 14 | { "noResult", "mms.noResult_element", |
10414 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10415 | 14 | NULL, HFILL }}, |
10416 | 14 | { &hf_mms_numbersOfTokens, |
10417 | 14 | { "numbersOfTokens", "mms.numbersOfTokens", |
10418 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10419 | 14 | "Unsigned16", HFILL }}, |
10420 | 14 | { &hf_mms_class, |
10421 | 14 | { "class", "mms.class", |
10422 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_class_vals), 0, |
10423 | 14 | NULL, HFILL }}, |
10424 | 14 | { &hf_mms_numberOfTokens, |
10425 | 14 | { "numberOfTokens", "mms.numberOfTokens", |
10426 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10427 | 14 | "Unsigned16", HFILL }}, |
10428 | 14 | { &hf_mms_numberOfOwnedTokens, |
10429 | 14 | { "numberOfOwnedTokens", "mms.numberOfOwnedTokens", |
10430 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10431 | 14 | "Unsigned16", HFILL }}, |
10432 | 14 | { &hf_mms_numberOfHungTokens, |
10433 | 14 | { "numberOfHungTokens", "mms.numberOfHungTokens", |
10434 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10435 | 14 | "Unsigned16", HFILL }}, |
10436 | 14 | { &hf_mms_nameToStartAfter, |
10437 | 14 | { "nameToStartAfter", "mms.nameToStartAfter", |
10438 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10439 | 14 | "Identifier", HFILL }}, |
10440 | 14 | { &hf_mms_listOfNamedTokens, |
10441 | 14 | { "listOfNamedTokens", "mms.listOfNamedTokens", |
10442 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10443 | 14 | NULL, HFILL }}, |
10444 | 14 | { &hf_mms_listOfNamedTokens_item, |
10445 | 14 | { "listOfNamedTokens item", "mms.listOfNamedTokens_item", |
10446 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_listOfNamedTokens_item_vals), 0, |
10447 | 14 | NULL, HFILL }}, |
10448 | 14 | { &hf_mms_freeNamedToken, |
10449 | 14 | { "freeNamedToken", "mms.freeNamedToken", |
10450 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10451 | 14 | "Identifier", HFILL }}, |
10452 | 14 | { &hf_mms_ownedNamedToken, |
10453 | 14 | { "ownedNamedToken", "mms.ownedNamedToken", |
10454 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10455 | 14 | "Identifier", HFILL }}, |
10456 | 14 | { &hf_mms_hungNamedToken, |
10457 | 14 | { "hungNamedToken", "mms.hungNamedToken", |
10458 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10459 | 14 | "Identifier", HFILL }}, |
10460 | 14 | { &hf_mms_reportSemaphoreEntryStatus_Request_state, |
10461 | 14 | { "state", "mms.reportSemaphoreEntryStatus-Request_state", |
10462 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_reportSemaphoreEntryStatus_Request_state_vals), 0, |
10463 | 14 | "T_reportSemaphoreEntryStatus_Request_state", HFILL }}, |
10464 | 14 | { &hf_mms_entryIdToStartAfter, |
10465 | 14 | { "entryIdToStartAfter", "mms.entryIdToStartAfter", |
10466 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10467 | 14 | "OCTET_STRING", HFILL }}, |
10468 | 14 | { &hf_mms_listOfSemaphoreEntry, |
10469 | 14 | { "listOfSemaphoreEntry", "mms.listOfSemaphoreEntry", |
10470 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10471 | 14 | "SEQUENCE_OF_SemaphoreEntry", HFILL }}, |
10472 | 14 | { &hf_mms_listOfSemaphoreEntry_item, |
10473 | 14 | { "SemaphoreEntry", "mms.SemaphoreEntry_element", |
10474 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10475 | 14 | NULL, HFILL }}, |
10476 | 14 | { &hf_mms_entryId, |
10477 | 14 | { "entryId", "mms.entryId", |
10478 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10479 | 14 | "OCTET_STRING", HFILL }}, |
10480 | 14 | { &hf_mms_entryClass, |
10481 | 14 | { "entryClass", "mms.entryClass", |
10482 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_entryClass_vals), 0, |
10483 | 14 | NULL, HFILL }}, |
10484 | 14 | { &hf_mms_applicationReference, |
10485 | 14 | { "applicationReference", "mms.applicationReference_element", |
10486 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10487 | 14 | NULL, HFILL }}, |
10488 | 14 | { &hf_mms_remainingTimeOut, |
10489 | 14 | { "remainingTimeOut", "mms.remainingTimeOut", |
10490 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10491 | 14 | "Unsigned32", HFILL }}, |
10492 | 14 | { &hf_mms_operatorStationName, |
10493 | 14 | { "operatorStationName", "mms.operatorStationName", |
10494 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10495 | 14 | "Identifier", HFILL }}, |
10496 | 14 | { &hf_mms_echo, |
10497 | 14 | { "echo", "mms.echo", |
10498 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10499 | 14 | "BOOLEAN", HFILL }}, |
10500 | 14 | { &hf_mms_listOfPromptData, |
10501 | 14 | { "listOfPromptData", "mms.listOfPromptData", |
10502 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10503 | 14 | NULL, HFILL }}, |
10504 | 14 | { &hf_mms_listOfPromptData_item, |
10505 | 14 | { "listOfPromptData item", "mms.listOfPromptData_item", |
10506 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10507 | 14 | "VisibleString", HFILL }}, |
10508 | 14 | { &hf_mms_inputTimeOut, |
10509 | 14 | { "inputTimeOut", "mms.inputTimeOut", |
10510 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10511 | 14 | "Unsigned32", HFILL }}, |
10512 | 14 | { &hf_mms_listOfOutputData, |
10513 | 14 | { "listOfOutputData", "mms.listOfOutputData", |
10514 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10515 | 14 | NULL, HFILL }}, |
10516 | 14 | { &hf_mms_listOfOutputData_item, |
10517 | 14 | { "listOfOutputData item", "mms.listOfOutputData_item", |
10518 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10519 | 14 | "VisibleString", HFILL }}, |
10520 | 14 | { &hf_mms_eventConditionName, |
10521 | 14 | { "eventConditionName", "mms.eventConditionName", |
10522 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10523 | 14 | "ObjectName", HFILL }}, |
10524 | 14 | { &hf_mms_class_01, |
10525 | 14 | { "class", "mms.class", |
10526 | 14 | FT_INT32, BASE_DEC, VALS(mms_EC_Class_vals), 0, |
10527 | 14 | "EC_Class", HFILL }}, |
10528 | 14 | { &hf_mms_prio_rity, |
10529 | 14 | { "prio-rity", "mms.prio_rity", |
10530 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10531 | 14 | "Priority", HFILL }}, |
10532 | 14 | { &hf_mms_severity, |
10533 | 14 | { "severity", "mms.severity", |
10534 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10535 | 14 | "Unsigned8", HFILL }}, |
10536 | 14 | { &hf_mms_alarmSummaryReports, |
10537 | 14 | { "alarmSummaryReports", "mms.alarmSummaryReports", |
10538 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10539 | 14 | "BOOLEAN", HFILL }}, |
10540 | 14 | { &hf_mms_monitoredVariable, |
10541 | 14 | { "monitoredVariable", "mms.monitoredVariable", |
10542 | 14 | FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0, |
10543 | 14 | "VariableSpecification", HFILL }}, |
10544 | 14 | { &hf_mms_evaluationInterval, |
10545 | 14 | { "evaluationInterval", "mms.evaluationInterval", |
10546 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10547 | 14 | "Unsigned32", HFILL }}, |
10548 | 14 | { &hf_mms_specific, |
10549 | 14 | { "specific", "mms.specific", |
10550 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10551 | 14 | "SEQUENCE_OF_ObjectName", HFILL }}, |
10552 | 14 | { &hf_mms_specific_item, |
10553 | 14 | { "ObjectName", "mms.ObjectName", |
10554 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10555 | 14 | NULL, HFILL }}, |
10556 | 14 | { &hf_mms_aa_specific_01, |
10557 | 14 | { "aa-specific", "mms.aa_specific_element", |
10558 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10559 | 14 | NULL, HFILL }}, |
10560 | 14 | { &hf_mms_vmd, |
10561 | 14 | { "vmd", "mms.vmd_element", |
10562 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10563 | 14 | NULL, HFILL }}, |
10564 | 14 | { &hf_mms_monitoredVariable_01, |
10565 | 14 | { "monitoredVariable", "mms.monitoredVariable", |
10566 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_monitoredVariable_vals), 0, |
10567 | 14 | NULL, HFILL }}, |
10568 | 14 | { &hf_mms_variableReference, |
10569 | 14 | { "variableReference", "mms.variableReference", |
10570 | 14 | FT_UINT32, BASE_DEC, VALS(mms_VariableSpecification_vals), 0, |
10571 | 14 | "VariableSpecification", HFILL }}, |
10572 | 14 | { &hf_mms_undefined, |
10573 | 14 | { "undefined", "mms.undefined_element", |
10574 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10575 | 14 | NULL, HFILL }}, |
10576 | 14 | { &hf_mms_currentState, |
10577 | 14 | { "currentState", "mms.currentState", |
10578 | 14 | FT_INT32, BASE_DEC, VALS(mms_EC_State_vals), 0, |
10579 | 14 | "EC_State", HFILL }}, |
10580 | 14 | { &hf_mms_numberOfEventEnrollments, |
10581 | 14 | { "numberOfEventEnrollments", "mms.numberOfEventEnrollments", |
10582 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10583 | 14 | "Unsigned32", HFILL }}, |
10584 | 14 | { &hf_mms_enabled, |
10585 | 14 | { "enabled", "mms.enabled", |
10586 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10587 | 14 | "BOOLEAN", HFILL }}, |
10588 | 14 | { &hf_mms_timeOfLastTransitionToActive, |
10589 | 14 | { "timeOfLastTransitionToActive", "mms.timeOfLastTransitionToActive", |
10590 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10591 | 14 | "EventTime", HFILL }}, |
10592 | 14 | { &hf_mms_timeOfLastTransitionToIdle, |
10593 | 14 | { "timeOfLastTransitionToIdle", "mms.timeOfLastTransitionToIdle", |
10594 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10595 | 14 | "EventTime", HFILL }}, |
10596 | 14 | { &hf_mms_eventActionName, |
10597 | 14 | { "eventActionName", "mms.eventActionName", |
10598 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10599 | 14 | "ObjectName", HFILL }}, |
10600 | 14 | { &hf_mms_eventEnrollmentName, |
10601 | 14 | { "eventEnrollmentName", "mms.eventEnrollmentName", |
10602 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10603 | 14 | "ObjectName", HFILL }}, |
10604 | 14 | { &hf_mms_eventConditionTransition, |
10605 | 14 | { "eventConditionTransition", "mms.eventConditionTransition", |
10606 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10607 | 14 | "Transitions", HFILL }}, |
10608 | 14 | { &hf_mms_alarmAcknowledgementRule, |
10609 | 14 | { "alarmAcknowledgementRule", "mms.alarmAcknowledgementRule", |
10610 | 14 | FT_INT32, BASE_DEC, VALS(mms_AlarmAckRule_vals), 0, |
10611 | 14 | "AlarmAckRule", HFILL }}, |
10612 | 14 | { &hf_mms_clientApplication, |
10613 | 14 | { "clientApplication", "mms.clientApplication_element", |
10614 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10615 | 14 | "ApplicationReference", HFILL }}, |
10616 | 14 | { &hf_mms_ec, |
10617 | 14 | { "ec", "mms.ec", |
10618 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10619 | 14 | "ObjectName", HFILL }}, |
10620 | 14 | { &hf_mms_ea, |
10621 | 14 | { "ea", "mms.ea", |
10622 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10623 | 14 | "ObjectName", HFILL }}, |
10624 | 14 | { &hf_mms_scopeOfRequest, |
10625 | 14 | { "scopeOfRequest", "mms.scopeOfRequest", |
10626 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_scopeOfRequest_vals), 0, |
10627 | 14 | NULL, HFILL }}, |
10628 | 14 | { &hf_mms_eventEnrollmentNames, |
10629 | 14 | { "eventEnrollmentNames", "mms.eventEnrollmentNames", |
10630 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10631 | 14 | "SEQUENCE_OF_ObjectName", HFILL }}, |
10632 | 14 | { &hf_mms_eventEnrollmentNames_item, |
10633 | 14 | { "ObjectName", "mms.ObjectName", |
10634 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10635 | 14 | NULL, HFILL }}, |
10636 | 14 | { &hf_mms_getEventEnrollmentAttributes_Request_continueAfter, |
10637 | 14 | { "continueAfter", "mms.getEventEnrollmentAttributes-Request_continueAfter", |
10638 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10639 | 14 | "ObjectName", HFILL }}, |
10640 | 14 | { &hf_mms_eventConditionName_01, |
10641 | 14 | { "eventConditionName", "mms.eventConditionName", |
10642 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_eventConditionName_vals), 0, |
10643 | 14 | NULL, HFILL }}, |
10644 | 14 | { &hf_mms_eventActionName_01, |
10645 | 14 | { "eventActionName", "mms.eventActionName", |
10646 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_eventActionName_vals), 0, |
10647 | 14 | NULL, HFILL }}, |
10648 | 14 | { &hf_mms_eventAction, |
10649 | 14 | { "eventAction", "mms.eventAction", |
10650 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10651 | 14 | "ObjectName", HFILL }}, |
10652 | 14 | { &hf_mms_enrollmentClass, |
10653 | 14 | { "enrollmentClass", "mms.enrollmentClass", |
10654 | 14 | FT_INT32, BASE_DEC, VALS(mms_EE_Class_vals), 0, |
10655 | 14 | "EE_Class", HFILL }}, |
10656 | 14 | { &hf_mms_duration, |
10657 | 14 | { "duration", "mms.duration", |
10658 | 14 | FT_INT32, BASE_DEC, VALS(mms_EE_Duration_vals), 0, |
10659 | 14 | "EE_Duration", HFILL }}, |
10660 | 14 | { &hf_mms_remainingAcceptableDelay, |
10661 | 14 | { "remainingAcceptableDelay", "mms.remainingAcceptableDelay", |
10662 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10663 | 14 | "Unsigned32", HFILL }}, |
10664 | 14 | { &hf_mms_listOfEventEnrollment, |
10665 | 14 | { "listOfEventEnrollment", "mms.listOfEventEnrollment", |
10666 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10667 | 14 | "SEQUENCE_OF_EventEnrollment", HFILL }}, |
10668 | 14 | { &hf_mms_listOfEventEnrollment_item, |
10669 | 14 | { "EventEnrollment", "mms.EventEnrollment_element", |
10670 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10671 | 14 | NULL, HFILL }}, |
10672 | 14 | { &hf_mms_eventConditionTransitions, |
10673 | 14 | { "eventConditionTransitions", "mms.eventConditionTransitions", |
10674 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10675 | 14 | "Transitions", HFILL }}, |
10676 | 14 | { &hf_mms_notificationLost, |
10677 | 14 | { "notificationLost", "mms.notificationLost", |
10678 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10679 | 14 | "BOOLEAN", HFILL }}, |
10680 | 14 | { &hf_mms_alarmAcknowledgmentRule, |
10681 | 14 | { "alarmAcknowledgmentRule", "mms.alarmAcknowledgmentRule", |
10682 | 14 | FT_INT32, BASE_DEC, VALS(mms_AlarmAckRule_vals), 0, |
10683 | 14 | "AlarmAckRule", HFILL }}, |
10684 | 14 | { &hf_mms_currentState_01, |
10685 | 14 | { "currentState", "mms.currentState", |
10686 | 14 | FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0, |
10687 | 14 | "EE_State", HFILL }}, |
10688 | 14 | { &hf_mms_currentState_02, |
10689 | 14 | { "currentState", "mms.currentState", |
10690 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_currentState_vals), 0, |
10691 | 14 | NULL, HFILL }}, |
10692 | 14 | { &hf_mms_alterEventEnrollment_Response_currentState_state, |
10693 | 14 | { "state", "mms.alterEventEnrollment-Response_currentState_state", |
10694 | 14 | FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0, |
10695 | 14 | "EE_State", HFILL }}, |
10696 | 14 | { &hf_mms_transitionTime, |
10697 | 14 | { "transitionTime", "mms.transitionTime", |
10698 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10699 | 14 | "EventTime", HFILL }}, |
10700 | 14 | { &hf_mms_acknowledgedState, |
10701 | 14 | { "acknowledgedState", "mms.acknowledgedState", |
10702 | 14 | FT_INT32, BASE_DEC, VALS(mms_EC_State_vals), 0, |
10703 | 14 | "EC_State", HFILL }}, |
10704 | 14 | { &hf_mms_timeOfAcknowledgedTransition, |
10705 | 14 | { "timeOfAcknowledgedTransition", "mms.timeOfAcknowledgedTransition", |
10706 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10707 | 14 | "EventTime", HFILL }}, |
10708 | 14 | { &hf_mms_enrollmentsOnly, |
10709 | 14 | { "enrollmentsOnly", "mms.enrollmentsOnly", |
10710 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10711 | 14 | "BOOLEAN", HFILL }}, |
10712 | 14 | { &hf_mms_activeAlarmsOnly, |
10713 | 14 | { "activeAlarmsOnly", "mms.activeAlarmsOnly", |
10714 | 14 | FT_BOOLEAN, BASE_NONE, NULL, 0, |
10715 | 14 | "BOOLEAN", HFILL }}, |
10716 | 14 | { &hf_mms_acknowledgmentFilter, |
10717 | 14 | { "acknowledgmentFilter", "mms.acknowledgmentFilter", |
10718 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_acknowledgmentFilter_vals), 0, |
10719 | 14 | NULL, HFILL }}, |
10720 | 14 | { &hf_mms_severityFilter, |
10721 | 14 | { "severityFilter", "mms.severityFilter_element", |
10722 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10723 | 14 | NULL, HFILL }}, |
10724 | 14 | { &hf_mms_mostSevere, |
10725 | 14 | { "mostSevere", "mms.mostSevere", |
10726 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10727 | 14 | "Unsigned8", HFILL }}, |
10728 | 14 | { &hf_mms_leastSevere, |
10729 | 14 | { "leastSevere", "mms.leastSevere", |
10730 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10731 | 14 | "Unsigned8", HFILL }}, |
10732 | 14 | { &hf_mms_continueAfter, |
10733 | 14 | { "continueAfter", "mms.continueAfter", |
10734 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10735 | 14 | "ObjectName", HFILL }}, |
10736 | 14 | { &hf_mms_listOfAlarmSummary, |
10737 | 14 | { "listOfAlarmSummary", "mms.listOfAlarmSummary", |
10738 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10739 | 14 | "SEQUENCE_OF_AlarmSummary", HFILL }}, |
10740 | 14 | { &hf_mms_listOfAlarmSummary_item, |
10741 | 14 | { "AlarmSummary", "mms.AlarmSummary_element", |
10742 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10743 | 14 | NULL, HFILL }}, |
10744 | 14 | { &hf_mms_unacknowledgedState, |
10745 | 14 | { "unacknowledgedState", "mms.unacknowledgedState", |
10746 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_unacknowledgedState_vals), 0, |
10747 | 14 | NULL, HFILL }}, |
10748 | 14 | { &hf_mms_acknowledgmentFilter_01, |
10749 | 14 | { "acknowledgmentFilter", "mms.acknowledgmentFilter", |
10750 | 14 | FT_INT32, BASE_DEC, VALS(mms_T_acknowledgmentFilter_01_vals), 0, |
10751 | 14 | "T_acknowledgmentFilter_01", HFILL }}, |
10752 | 14 | { &hf_mms_severityFilter_01, |
10753 | 14 | { "severityFilter", "mms.severityFilter_element", |
10754 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10755 | 14 | "T_severityFilter_01", HFILL }}, |
10756 | 14 | { &hf_mms_getAlarmEnrollmentSummary_Request_continueAfter, |
10757 | 14 | { "continueAfter", "mms.getAlarmEnrollmentSummary-Request_continueAfter", |
10758 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10759 | 14 | "ObjectName", HFILL }}, |
10760 | 14 | { &hf_mms_listOfAlarmEnrollmentSummary, |
10761 | 14 | { "listOfAlarmEnrollmentSummary", "mms.listOfAlarmEnrollmentSummary", |
10762 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10763 | 14 | "SEQUENCE_OF_AlarmEnrollmentSummary", HFILL }}, |
10764 | 14 | { &hf_mms_listOfAlarmEnrollmentSummary_item, |
10765 | 14 | { "AlarmEnrollmentSummary", "mms.AlarmEnrollmentSummary_element", |
10766 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10767 | 14 | NULL, HFILL }}, |
10768 | 14 | { &hf_mms_enrollementState, |
10769 | 14 | { "enrollementState", "mms.enrollementState", |
10770 | 14 | FT_INT32, BASE_DEC, VALS(mms_EE_State_vals), 0, |
10771 | 14 | "EE_State", HFILL }}, |
10772 | 14 | { &hf_mms_timeActiveAcknowledged, |
10773 | 14 | { "timeActiveAcknowledged", "mms.timeActiveAcknowledged", |
10774 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10775 | 14 | "EventTime", HFILL }}, |
10776 | 14 | { &hf_mms_timeIdleAcknowledged, |
10777 | 14 | { "timeIdleAcknowledged", "mms.timeIdleAcknowledged", |
10778 | 14 | FT_UINT32, BASE_DEC, VALS(mms_EventTime_vals), 0, |
10779 | 14 | "EventTime", HFILL }}, |
10780 | 14 | { &hf_mms_eventConditionName_02, |
10781 | 14 | { "eventConditionName", "mms.eventConditionName", |
10782 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_eventConditionName_01_vals), 0, |
10783 | 14 | "T_eventConditionName_01", HFILL }}, |
10784 | 14 | { &hf_mms_actionResult, |
10785 | 14 | { "actionResult", "mms.actionResult_element", |
10786 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10787 | 14 | NULL, HFILL }}, |
10788 | 14 | { &hf_mms_eventActioName, |
10789 | 14 | { "eventActioName", "mms.eventActioName", |
10790 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10791 | 14 | "ObjectName", HFILL }}, |
10792 | 14 | { &hf_mms_eventActionResult, |
10793 | 14 | { "eventActionResult", "mms.eventActionResult", |
10794 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_eventActionResult_vals), 0, |
10795 | 14 | NULL, HFILL }}, |
10796 | 14 | { &hf_mms_success_02, |
10797 | 14 | { "success", "mms.success", |
10798 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ConfirmedServiceResponse_vals), 0, |
10799 | 14 | "ConfirmedServiceResponse", HFILL }}, |
10800 | 14 | { &hf_mms_failure_01, |
10801 | 14 | { "failure", "mms.failure_element", |
10802 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10803 | 14 | "ServiceError", HFILL }}, |
10804 | 14 | { &hf_mms_causingTransitions, |
10805 | 14 | { "causingTransitions", "mms.causingTransitions", |
10806 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10807 | 14 | "Transitions", HFILL }}, |
10808 | 14 | { &hf_mms_timeOfDayT, |
10809 | 14 | { "timeOfDayT", "mms.timeOfDayT", |
10810 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10811 | 14 | "TimeOfDay", HFILL }}, |
10812 | 14 | { &hf_mms_timeSequenceIdentifier, |
10813 | 14 | { "timeSequenceIdentifier", "mms.timeSequenceIdentifier", |
10814 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10815 | 14 | "Unsigned32", HFILL }}, |
10816 | 14 | { &hf_mms_journalName, |
10817 | 14 | { "journalName", "mms.journalName", |
10818 | 14 | FT_UINT32, BASE_DEC, VALS(mms_ObjectName_vals), 0, |
10819 | 14 | "ObjectName", HFILL }}, |
10820 | 14 | { &hf_mms_rangeStartSpecification, |
10821 | 14 | { "rangeStartSpecification", "mms.rangeStartSpecification", |
10822 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_rangeStartSpecification_vals), 0, |
10823 | 14 | NULL, HFILL }}, |
10824 | 14 | { &hf_mms_startingTime, |
10825 | 14 | { "startingTime", "mms.startingTime", |
10826 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10827 | 14 | "TimeOfDay", HFILL }}, |
10828 | 14 | { &hf_mms_startingEntry, |
10829 | 14 | { "startingEntry", "mms.startingEntry", |
10830 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10831 | 14 | "OCTET_STRING", HFILL }}, |
10832 | 14 | { &hf_mms_rangeStopSpecification, |
10833 | 14 | { "rangeStopSpecification", "mms.rangeStopSpecification", |
10834 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_rangeStopSpecification_vals), 0, |
10835 | 14 | NULL, HFILL }}, |
10836 | 14 | { &hf_mms_endingTime, |
10837 | 14 | { "endingTime", "mms.endingTime", |
10838 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10839 | 14 | "TimeOfDay", HFILL }}, |
10840 | 14 | { &hf_mms_numberOfEntries, |
10841 | 14 | { "numberOfEntries", "mms.numberOfEntries", |
10842 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10843 | 14 | "Integer32", HFILL }}, |
10844 | 14 | { &hf_mms_listOfVariables, |
10845 | 14 | { "listOfVariables", "mms.listOfVariables", |
10846 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10847 | 14 | NULL, HFILL }}, |
10848 | 14 | { &hf_mms_listOfVariables_item, |
10849 | 14 | { "listOfVariables item", "mms.listOfVariables_item", |
10850 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10851 | 14 | "VisibleString", HFILL }}, |
10852 | 14 | { &hf_mms_entryToStartAfter, |
10853 | 14 | { "entryToStartAfter", "mms.entryToStartAfter_element", |
10854 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10855 | 14 | NULL, HFILL }}, |
10856 | 14 | { &hf_mms_timeSpecification, |
10857 | 14 | { "timeSpecification", "mms.timeSpecification", |
10858 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10859 | 14 | "TimeOfDay", HFILL }}, |
10860 | 14 | { &hf_mms_entrySpecification, |
10861 | 14 | { "entrySpecification", "mms.entrySpecification", |
10862 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10863 | 14 | "OCTET_STRING", HFILL }}, |
10864 | 14 | { &hf_mms_listOfJournalEntry, |
10865 | 14 | { "listOfJournalEntry", "mms.listOfJournalEntry", |
10866 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10867 | 14 | "SEQUENCE_OF_JournalEntry", HFILL }}, |
10868 | 14 | { &hf_mms_listOfJournalEntry_item, |
10869 | 14 | { "JournalEntry", "mms.JournalEntry_element", |
10870 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10871 | 14 | NULL, HFILL }}, |
10872 | 14 | { &hf_mms_entryIdentifier, |
10873 | 14 | { "entryIdentifier", "mms.entryIdentifier", |
10874 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10875 | 14 | "OCTET_STRING", HFILL }}, |
10876 | 14 | { &hf_mms_originatingApplication, |
10877 | 14 | { "originatingApplication", "mms.originatingApplication_element", |
10878 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10879 | 14 | "ApplicationReference", HFILL }}, |
10880 | 14 | { &hf_mms_entryContent, |
10881 | 14 | { "entryContent", "mms.entryContent_element", |
10882 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10883 | 14 | NULL, HFILL }}, |
10884 | 14 | { &hf_mms_listOfJournalEntry_01, |
10885 | 14 | { "listOfJournalEntry", "mms.listOfJournalEntry", |
10886 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10887 | 14 | "SEQUENCE_OF_EntryContent", HFILL }}, |
10888 | 14 | { &hf_mms_listOfJournalEntry_item_01, |
10889 | 14 | { "EntryContent", "mms.EntryContent_element", |
10890 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10891 | 14 | NULL, HFILL }}, |
10892 | 14 | { &hf_mms_limitSpecification, |
10893 | 14 | { "limitSpecification", "mms.limitSpecification_element", |
10894 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10895 | 14 | NULL, HFILL }}, |
10896 | 14 | { &hf_mms_limitingTime, |
10897 | 14 | { "limitingTime", "mms.limitingTime", |
10898 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10899 | 14 | "TimeOfDay", HFILL }}, |
10900 | 14 | { &hf_mms_limitingEntry, |
10901 | 14 | { "limitingEntry", "mms.limitingEntry", |
10902 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10903 | 14 | "OCTET_STRING", HFILL }}, |
10904 | 14 | { &hf_mms_currentEntries, |
10905 | 14 | { "currentEntries", "mms.currentEntries", |
10906 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10907 | 14 | "Unsigned32", HFILL }}, |
10908 | 14 | { &hf_mms_occurenceTime, |
10909 | 14 | { "occurenceTime", "mms.occurenceTime", |
10910 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10911 | 14 | "TimeOfDay", HFILL }}, |
10912 | 14 | { &hf_mms_additionalDetail, |
10913 | 14 | { "additionalDetail", "mms.additionalDetail_element", |
10914 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10915 | 14 | "JOU_Additional_Detail", HFILL }}, |
10916 | 14 | { &hf_mms_entryForm, |
10917 | 14 | { "entryForm", "mms.entryForm", |
10918 | 14 | FT_UINT32, BASE_DEC, VALS(mms_T_entryForm_vals), 0, |
10919 | 14 | NULL, HFILL }}, |
10920 | 14 | { &hf_mms_data, |
10921 | 14 | { "data", "mms.data_element", |
10922 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10923 | 14 | NULL, HFILL }}, |
10924 | 14 | { &hf_mms_event, |
10925 | 14 | { "event", "mms.event_element", |
10926 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10927 | 14 | NULL, HFILL }}, |
10928 | 14 | { &hf_mms_listOfVariables_01, |
10929 | 14 | { "listOfVariables", "mms.listOfVariables", |
10930 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10931 | 14 | "T_listOfVariables_01", HFILL }}, |
10932 | 14 | { &hf_mms_listOfVariables_item_01, |
10933 | 14 | { "listOfVariables item", "mms.listOfVariables_item_element", |
10934 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10935 | 14 | NULL, HFILL }}, |
10936 | 14 | { &hf_mms_variableTag, |
10937 | 14 | { "variableTag", "mms.variableTag", |
10938 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10939 | 14 | "VisibleString", HFILL }}, |
10940 | 14 | { &hf_mms_valueSpecification, |
10941 | 14 | { "valueSpecification", "mms.valueSpecification", |
10942 | 14 | FT_UINT32, BASE_DEC, VALS(mms_Data_vals), 0, |
10943 | 14 | "Data", HFILL }}, |
10944 | 14 | { &hf_mms_annotation, |
10945 | 14 | { "annotation", "mms.annotation", |
10946 | 14 | FT_STRING, BASE_NONE, NULL, 0, |
10947 | 14 | "VisibleString", HFILL }}, |
10948 | 14 | { &hf_mms_sourceFileServer, |
10949 | 14 | { "sourceFileServer", "mms.sourceFileServer_element", |
10950 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10951 | 14 | "ApplicationReference", HFILL }}, |
10952 | 14 | { &hf_mms_sourceFile, |
10953 | 14 | { "sourceFile", "mms.sourceFile", |
10954 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10955 | 14 | "FileName", HFILL }}, |
10956 | 14 | { &hf_mms_destinationFile, |
10957 | 14 | { "destinationFile", "mms.destinationFile", |
10958 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10959 | 14 | "FileName", HFILL }}, |
10960 | 14 | { &hf_mms_initialPosition, |
10961 | 14 | { "initialPosition", "mms.initialPosition", |
10962 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10963 | 14 | "Unsigned32", HFILL }}, |
10964 | 14 | { &hf_mms_frsmID, |
10965 | 14 | { "frsmID", "mms.frsmID", |
10966 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
10967 | 14 | "Integer32", HFILL }}, |
10968 | 14 | { &hf_mms_fileAttributes, |
10969 | 14 | { "fileAttributes", "mms.fileAttributes_element", |
10970 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10971 | 14 | NULL, HFILL }}, |
10972 | 14 | { &hf_mms_fileData, |
10973 | 14 | { "fileData", "mms.fileData", |
10974 | 14 | FT_BYTES, BASE_NONE, NULL, 0, |
10975 | 14 | "OCTET_STRING", HFILL }}, |
10976 | 14 | { &hf_mms_currentFileName, |
10977 | 14 | { "currentFileName", "mms.currentFileName", |
10978 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10979 | 14 | "FileName", HFILL }}, |
10980 | 14 | { &hf_mms_newFileName, |
10981 | 14 | { "newFileName", "mms.newFileName", |
10982 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10983 | 14 | "FileName", HFILL }}, |
10984 | 14 | { &hf_mms_fileSpecification, |
10985 | 14 | { "fileSpecification", "mms.fileSpecification", |
10986 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10987 | 14 | "FileName", HFILL }}, |
10988 | 14 | { &hf_mms_fileDirectory_Request_continueAfter, |
10989 | 14 | { "continueAfter", "mms.fileDirectory-Request_continueAfter", |
10990 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10991 | 14 | "FileName", HFILL }}, |
10992 | 14 | { &hf_mms_listOfDirectoryEntry, |
10993 | 14 | { "listOfDirectoryEntry", "mms.listOfDirectoryEntry", |
10994 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
10995 | 14 | "SEQUENCE_OF_DirectoryEntry", HFILL }}, |
10996 | 14 | { &hf_mms_listOfDirectoryEntry_item, |
10997 | 14 | { "DirectoryEntry", "mms.DirectoryEntry_element", |
10998 | 14 | FT_NONE, BASE_NONE, NULL, 0, |
10999 | 14 | NULL, HFILL }}, |
11000 | 14 | { &hf_mms_filename, |
11001 | 14 | { "filename", "mms.filename", |
11002 | 14 | FT_UINT32, BASE_DEC, NULL, 0, |
11003 | 14 | NULL, HFILL }}, |
11004 | 14 | { &hf_mms_sizeOfFile, |
11005 | 14 | { "sizeOfFile", "mms.sizeOfFile", |
11006 | 14 | FT_INT32, BASE_DEC, NULL, 0, |
11007 | 14 | "Unsigned32", HFILL }}, |
11008 | 14 | { &hf_mms_lastModified, |
11009 | 14 | { "lastModified", "mms.lastModified", |
11010 | 14 | FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, |
11011 | 14 | "GeneralizedTime", HFILL }}, |
11012 | 14 | { &hf_mms_ReportedOptFlds_reserved, |
11013 | 14 | { "reserved", "mms.ReportedOptFlds.reserved", |
11014 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11015 | 14 | NULL, HFILL }}, |
11016 | 14 | { &hf_mms_ReportedOptFlds_sequence_number, |
11017 | 14 | { "sequence-number", "mms.ReportedOptFlds.sequence.number", |
11018 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11019 | 14 | NULL, HFILL }}, |
11020 | 14 | { &hf_mms_ReportedOptFlds_report_time_stamp, |
11021 | 14 | { "report-time-stamp", "mms.ReportedOptFlds.report.time.stamp", |
11022 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11023 | 14 | NULL, HFILL }}, |
11024 | 14 | { &hf_mms_ReportedOptFlds_reason_for_inclusion, |
11025 | 14 | { "reason-for-inclusion", "mms.ReportedOptFlds.reason.for.inclusion", |
11026 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11027 | 14 | NULL, HFILL }}, |
11028 | 14 | { &hf_mms_ReportedOptFlds_data_set_name, |
11029 | 14 | { "data-set-name", "mms.ReportedOptFlds.data.set.name", |
11030 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11031 | 14 | NULL, HFILL }}, |
11032 | 14 | { &hf_mms_ReportedOptFlds_data_reference, |
11033 | 14 | { "data-reference", "mms.ReportedOptFlds.data.reference", |
11034 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11035 | 14 | NULL, HFILL }}, |
11036 | 14 | { &hf_mms_ReportedOptFlds_buffer_overflow, |
11037 | 14 | { "buffer-overflow", "mms.ReportedOptFlds.buffer.overflow", |
11038 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11039 | 14 | NULL, HFILL }}, |
11040 | 14 | { &hf_mms_ReportedOptFlds_entryID, |
11041 | 14 | { "entryID", "mms.ReportedOptFlds.entryID", |
11042 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11043 | 14 | NULL, HFILL }}, |
11044 | 14 | { &hf_mms_ReportedOptFlds_conf_revision, |
11045 | 14 | { "conf-revision", "mms.ReportedOptFlds.conf.revision", |
11046 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11047 | 14 | NULL, HFILL }}, |
11048 | 14 | { &hf_mms_ReportedOptFlds_segmentation, |
11049 | 14 | { "segmentation", "mms.ReportedOptFlds.segmentation", |
11050 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11051 | 14 | NULL, HFILL }}, |
11052 | 14 | { &hf_mms_ParameterSupportOptions_str1, |
11053 | 14 | { "str1", "mms.ParameterSupportOptions.str1", |
11054 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11055 | 14 | NULL, HFILL }}, |
11056 | 14 | { &hf_mms_ParameterSupportOptions_str2, |
11057 | 14 | { "str2", "mms.ParameterSupportOptions.str2", |
11058 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11059 | 14 | NULL, HFILL }}, |
11060 | 14 | { &hf_mms_ParameterSupportOptions_vnam, |
11061 | 14 | { "vnam", "mms.ParameterSupportOptions.vnam", |
11062 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11063 | 14 | NULL, HFILL }}, |
11064 | 14 | { &hf_mms_ParameterSupportOptions_valt, |
11065 | 14 | { "valt", "mms.ParameterSupportOptions.valt", |
11066 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11067 | 14 | NULL, HFILL }}, |
11068 | 14 | { &hf_mms_ParameterSupportOptions_vadr, |
11069 | 14 | { "vadr", "mms.ParameterSupportOptions.vadr", |
11070 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11071 | 14 | NULL, HFILL }}, |
11072 | 14 | { &hf_mms_ParameterSupportOptions_vsca, |
11073 | 14 | { "vsca", "mms.ParameterSupportOptions.vsca", |
11074 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11075 | 14 | NULL, HFILL }}, |
11076 | 14 | { &hf_mms_ParameterSupportOptions_tpy, |
11077 | 14 | { "tpy", "mms.ParameterSupportOptions.tpy", |
11078 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11079 | 14 | NULL, HFILL }}, |
11080 | 14 | { &hf_mms_ParameterSupportOptions_vlis, |
11081 | 14 | { "vlis", "mms.ParameterSupportOptions.vlis", |
11082 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11083 | 14 | NULL, HFILL }}, |
11084 | 14 | { &hf_mms_ParameterSupportOptions_real, |
11085 | 14 | { "real", "mms.ParameterSupportOptions.real", |
11086 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11087 | 14 | NULL, HFILL }}, |
11088 | 14 | { &hf_mms_ParameterSupportOptions_spare_bit9, |
11089 | 14 | { "spare_bit9", "mms.ParameterSupportOptions.spare.bit9", |
11090 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11091 | 14 | NULL, HFILL }}, |
11092 | 14 | { &hf_mms_ParameterSupportOptions_cei, |
11093 | 14 | { "cei", "mms.ParameterSupportOptions.cei", |
11094 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11095 | 14 | NULL, HFILL }}, |
11096 | 14 | { &hf_mms_ServiceSupportOptions_status, |
11097 | 14 | { "status", "mms.ServiceSupportOptions.status", |
11098 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11099 | 14 | NULL, HFILL }}, |
11100 | 14 | { &hf_mms_ServiceSupportOptions_getNameList, |
11101 | 14 | { "getNameList", "mms.ServiceSupportOptions.getNameList", |
11102 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11103 | 14 | NULL, HFILL }}, |
11104 | 14 | { &hf_mms_ServiceSupportOptions_identify, |
11105 | 14 | { "identify", "mms.ServiceSupportOptions.identify", |
11106 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11107 | 14 | NULL, HFILL }}, |
11108 | 14 | { &hf_mms_ServiceSupportOptions_rename, |
11109 | 14 | { "rename", "mms.ServiceSupportOptions.rename", |
11110 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11111 | 14 | NULL, HFILL }}, |
11112 | 14 | { &hf_mms_ServiceSupportOptions_read, |
11113 | 14 | { "read", "mms.ServiceSupportOptions.read", |
11114 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11115 | 14 | NULL, HFILL }}, |
11116 | 14 | { &hf_mms_ServiceSupportOptions_write, |
11117 | 14 | { "write", "mms.ServiceSupportOptions.write", |
11118 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11119 | 14 | NULL, HFILL }}, |
11120 | 14 | { &hf_mms_ServiceSupportOptions_getVariableAccessAttributes, |
11121 | 14 | { "getVariableAccessAttributes", "mms.ServiceSupportOptions.getVariableAccessAttributes", |
11122 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11123 | 14 | NULL, HFILL }}, |
11124 | 14 | { &hf_mms_ServiceSupportOptions_defineNamedVariable, |
11125 | 14 | { "defineNamedVariable", "mms.ServiceSupportOptions.defineNamedVariable", |
11126 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11127 | 14 | NULL, HFILL }}, |
11128 | 14 | { &hf_mms_ServiceSupportOptions_defineScatteredAccess, |
11129 | 14 | { "defineScatteredAccess", "mms.ServiceSupportOptions.defineScatteredAccess", |
11130 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11131 | 14 | NULL, HFILL }}, |
11132 | 14 | { &hf_mms_ServiceSupportOptions_getScatteredAccessAttributes, |
11133 | 14 | { "getScatteredAccessAttributes", "mms.ServiceSupportOptions.getScatteredAccessAttributes", |
11134 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11135 | 14 | NULL, HFILL }}, |
11136 | 14 | { &hf_mms_ServiceSupportOptions_deleteVariableAccess, |
11137 | 14 | { "deleteVariableAccess", "mms.ServiceSupportOptions.deleteVariableAccess", |
11138 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11139 | 14 | NULL, HFILL }}, |
11140 | 14 | { &hf_mms_ServiceSupportOptions_defineNamedVariableList, |
11141 | 14 | { "defineNamedVariableList", "mms.ServiceSupportOptions.defineNamedVariableList", |
11142 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11143 | 14 | NULL, HFILL }}, |
11144 | 14 | { &hf_mms_ServiceSupportOptions_getNamedVariableListAttributes, |
11145 | 14 | { "getNamedVariableListAttributes", "mms.ServiceSupportOptions.getNamedVariableListAttributes", |
11146 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11147 | 14 | NULL, HFILL }}, |
11148 | 14 | { &hf_mms_ServiceSupportOptions_deleteNamedVariableList, |
11149 | 14 | { "deleteNamedVariableList", "mms.ServiceSupportOptions.deleteNamedVariableList", |
11150 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11151 | 14 | NULL, HFILL }}, |
11152 | 14 | { &hf_mms_ServiceSupportOptions_defineNamedType, |
11153 | 14 | { "defineNamedType", "mms.ServiceSupportOptions.defineNamedType", |
11154 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11155 | 14 | NULL, HFILL }}, |
11156 | 14 | { &hf_mms_ServiceSupportOptions_getNamedTypeAttributes, |
11157 | 14 | { "getNamedTypeAttributes", "mms.ServiceSupportOptions.getNamedTypeAttributes", |
11158 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11159 | 14 | NULL, HFILL }}, |
11160 | 14 | { &hf_mms_ServiceSupportOptions_deleteNamedType, |
11161 | 14 | { "deleteNamedType", "mms.ServiceSupportOptions.deleteNamedType", |
11162 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11163 | 14 | NULL, HFILL }}, |
11164 | 14 | { &hf_mms_ServiceSupportOptions_input, |
11165 | 14 | { "input", "mms.ServiceSupportOptions.input", |
11166 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11167 | 14 | NULL, HFILL }}, |
11168 | 14 | { &hf_mms_ServiceSupportOptions_output, |
11169 | 14 | { "output", "mms.ServiceSupportOptions.output", |
11170 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11171 | 14 | NULL, HFILL }}, |
11172 | 14 | { &hf_mms_ServiceSupportOptions_takeControl, |
11173 | 14 | { "takeControl", "mms.ServiceSupportOptions.takeControl", |
11174 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11175 | 14 | NULL, HFILL }}, |
11176 | 14 | { &hf_mms_ServiceSupportOptions_relinquishControl, |
11177 | 14 | { "relinquishControl", "mms.ServiceSupportOptions.relinquishControl", |
11178 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11179 | 14 | NULL, HFILL }}, |
11180 | 14 | { &hf_mms_ServiceSupportOptions_defineSemaphore, |
11181 | 14 | { "defineSemaphore", "mms.ServiceSupportOptions.defineSemaphore", |
11182 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11183 | 14 | NULL, HFILL }}, |
11184 | 14 | { &hf_mms_ServiceSupportOptions_deleteSemaphore, |
11185 | 14 | { "deleteSemaphore", "mms.ServiceSupportOptions.deleteSemaphore", |
11186 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11187 | 14 | NULL, HFILL }}, |
11188 | 14 | { &hf_mms_ServiceSupportOptions_reportSemaphoreStatus, |
11189 | 14 | { "reportSemaphoreStatus", "mms.ServiceSupportOptions.reportSemaphoreStatus", |
11190 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11191 | 14 | NULL, HFILL }}, |
11192 | 14 | { &hf_mms_ServiceSupportOptions_reportPoolSemaphoreStatus, |
11193 | 14 | { "reportPoolSemaphoreStatus", "mms.ServiceSupportOptions.reportPoolSemaphoreStatus", |
11194 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11195 | 14 | NULL, HFILL }}, |
11196 | 14 | { &hf_mms_ServiceSupportOptions_reportSemaphoreEntryStatus, |
11197 | 14 | { "reportSemaphoreEntryStatus", "mms.ServiceSupportOptions.reportSemaphoreEntryStatus", |
11198 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11199 | 14 | NULL, HFILL }}, |
11200 | 14 | { &hf_mms_ServiceSupportOptions_initiateDownloadSequence, |
11201 | 14 | { "initiateDownloadSequence", "mms.ServiceSupportOptions.initiateDownloadSequence", |
11202 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11203 | 14 | NULL, HFILL }}, |
11204 | 14 | { &hf_mms_ServiceSupportOptions_downloadSegment, |
11205 | 14 | { "downloadSegment", "mms.ServiceSupportOptions.downloadSegment", |
11206 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11207 | 14 | NULL, HFILL }}, |
11208 | 14 | { &hf_mms_ServiceSupportOptions_terminateDownloadSequence, |
11209 | 14 | { "terminateDownloadSequence", "mms.ServiceSupportOptions.terminateDownloadSequence", |
11210 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11211 | 14 | NULL, HFILL }}, |
11212 | 14 | { &hf_mms_ServiceSupportOptions_initiateUploadSequence, |
11213 | 14 | { "initiateUploadSequence", "mms.ServiceSupportOptions.initiateUploadSequence", |
11214 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11215 | 14 | NULL, HFILL }}, |
11216 | 14 | { &hf_mms_ServiceSupportOptions_uploadSegment, |
11217 | 14 | { "uploadSegment", "mms.ServiceSupportOptions.uploadSegment", |
11218 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11219 | 14 | NULL, HFILL }}, |
11220 | 14 | { &hf_mms_ServiceSupportOptions_terminateUploadSequence, |
11221 | 14 | { "terminateUploadSequence", "mms.ServiceSupportOptions.terminateUploadSequence", |
11222 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11223 | 14 | NULL, HFILL }}, |
11224 | 14 | { &hf_mms_ServiceSupportOptions_requestDomainDownload, |
11225 | 14 | { "requestDomainDownload", "mms.ServiceSupportOptions.requestDomainDownload", |
11226 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11227 | 14 | NULL, HFILL }}, |
11228 | 14 | { &hf_mms_ServiceSupportOptions_requestDomainUpload, |
11229 | 14 | { "requestDomainUpload", "mms.ServiceSupportOptions.requestDomainUpload", |
11230 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11231 | 14 | NULL, HFILL }}, |
11232 | 14 | { &hf_mms_ServiceSupportOptions_loadDomainContent, |
11233 | 14 | { "loadDomainContent", "mms.ServiceSupportOptions.loadDomainContent", |
11234 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11235 | 14 | NULL, HFILL }}, |
11236 | 14 | { &hf_mms_ServiceSupportOptions_storeDomainContent, |
11237 | 14 | { "storeDomainContent", "mms.ServiceSupportOptions.storeDomainContent", |
11238 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11239 | 14 | NULL, HFILL }}, |
11240 | 14 | { &hf_mms_ServiceSupportOptions_deleteDomain, |
11241 | 14 | { "deleteDomain", "mms.ServiceSupportOptions.deleteDomain", |
11242 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11243 | 14 | NULL, HFILL }}, |
11244 | 14 | { &hf_mms_ServiceSupportOptions_getDomainAttributes, |
11245 | 14 | { "getDomainAttributes", "mms.ServiceSupportOptions.getDomainAttributes", |
11246 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11247 | 14 | NULL, HFILL }}, |
11248 | 14 | { &hf_mms_ServiceSupportOptions_createProgramInvocation, |
11249 | 14 | { "createProgramInvocation", "mms.ServiceSupportOptions.createProgramInvocation", |
11250 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11251 | 14 | NULL, HFILL }}, |
11252 | 14 | { &hf_mms_ServiceSupportOptions_deleteProgramInvocation, |
11253 | 14 | { "deleteProgramInvocation", "mms.ServiceSupportOptions.deleteProgramInvocation", |
11254 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11255 | 14 | NULL, HFILL }}, |
11256 | 14 | { &hf_mms_ServiceSupportOptions_start, |
11257 | 14 | { "start", "mms.ServiceSupportOptions.start", |
11258 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11259 | 14 | NULL, HFILL }}, |
11260 | 14 | { &hf_mms_ServiceSupportOptions_stop, |
11261 | 14 | { "stop", "mms.ServiceSupportOptions.stop", |
11262 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11263 | 14 | NULL, HFILL }}, |
11264 | 14 | { &hf_mms_ServiceSupportOptions_resume, |
11265 | 14 | { "resume", "mms.ServiceSupportOptions.resume", |
11266 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11267 | 14 | NULL, HFILL }}, |
11268 | 14 | { &hf_mms_ServiceSupportOptions_reset, |
11269 | 14 | { "reset", "mms.ServiceSupportOptions.reset", |
11270 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11271 | 14 | NULL, HFILL }}, |
11272 | 14 | { &hf_mms_ServiceSupportOptions_kill, |
11273 | 14 | { "kill", "mms.ServiceSupportOptions.kill", |
11274 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11275 | 14 | NULL, HFILL }}, |
11276 | 14 | { &hf_mms_ServiceSupportOptions_getProgramInvocationAttributes, |
11277 | 14 | { "getProgramInvocationAttributes", "mms.ServiceSupportOptions.getProgramInvocationAttributes", |
11278 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11279 | 14 | NULL, HFILL }}, |
11280 | 14 | { &hf_mms_ServiceSupportOptions_obtainFile, |
11281 | 14 | { "obtainFile", "mms.ServiceSupportOptions.obtainFile", |
11282 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11283 | 14 | NULL, HFILL }}, |
11284 | 14 | { &hf_mms_ServiceSupportOptions_defineEventCondition, |
11285 | 14 | { "defineEventCondition", "mms.ServiceSupportOptions.defineEventCondition", |
11286 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11287 | 14 | NULL, HFILL }}, |
11288 | 14 | { &hf_mms_ServiceSupportOptions_deleteEventCondition, |
11289 | 14 | { "deleteEventCondition", "mms.ServiceSupportOptions.deleteEventCondition", |
11290 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11291 | 14 | NULL, HFILL }}, |
11292 | 14 | { &hf_mms_ServiceSupportOptions_getEventConditionAttributes, |
11293 | 14 | { "getEventConditionAttributes", "mms.ServiceSupportOptions.getEventConditionAttributes", |
11294 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11295 | 14 | NULL, HFILL }}, |
11296 | 14 | { &hf_mms_ServiceSupportOptions_reportEventConditionStatus, |
11297 | 14 | { "reportEventConditionStatus", "mms.ServiceSupportOptions.reportEventConditionStatus", |
11298 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11299 | 14 | NULL, HFILL }}, |
11300 | 14 | { &hf_mms_ServiceSupportOptions_alterEventConditionMonitoring, |
11301 | 14 | { "alterEventConditionMonitoring", "mms.ServiceSupportOptions.alterEventConditionMonitoring", |
11302 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11303 | 14 | NULL, HFILL }}, |
11304 | 14 | { &hf_mms_ServiceSupportOptions_triggerEvent, |
11305 | 14 | { "triggerEvent", "mms.ServiceSupportOptions.triggerEvent", |
11306 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11307 | 14 | NULL, HFILL }}, |
11308 | 14 | { &hf_mms_ServiceSupportOptions_defineEventAction, |
11309 | 14 | { "defineEventAction", "mms.ServiceSupportOptions.defineEventAction", |
11310 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11311 | 14 | NULL, HFILL }}, |
11312 | 14 | { &hf_mms_ServiceSupportOptions_deleteEventAction, |
11313 | 14 | { "deleteEventAction", "mms.ServiceSupportOptions.deleteEventAction", |
11314 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11315 | 14 | NULL, HFILL }}, |
11316 | 14 | { &hf_mms_ServiceSupportOptions_getEventActionAttributes, |
11317 | 14 | { "getEventActionAttributes", "mms.ServiceSupportOptions.getEventActionAttributes", |
11318 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11319 | 14 | NULL, HFILL }}, |
11320 | 14 | { &hf_mms_ServiceSupportOptions_reportActionStatus, |
11321 | 14 | { "reportActionStatus", "mms.ServiceSupportOptions.reportActionStatus", |
11322 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11323 | 14 | NULL, HFILL }}, |
11324 | 14 | { &hf_mms_ServiceSupportOptions_defineEventEnrollment, |
11325 | 14 | { "defineEventEnrollment", "mms.ServiceSupportOptions.defineEventEnrollment", |
11326 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11327 | 14 | NULL, HFILL }}, |
11328 | 14 | { &hf_mms_ServiceSupportOptions_deleteEventEnrollment, |
11329 | 14 | { "deleteEventEnrollment", "mms.ServiceSupportOptions.deleteEventEnrollment", |
11330 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11331 | 14 | NULL, HFILL }}, |
11332 | 14 | { &hf_mms_ServiceSupportOptions_alterEventEnrollment, |
11333 | 14 | { "alterEventEnrollment", "mms.ServiceSupportOptions.alterEventEnrollment", |
11334 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11335 | 14 | NULL, HFILL }}, |
11336 | 14 | { &hf_mms_ServiceSupportOptions_reportEventEnrollmentStatus, |
11337 | 14 | { "reportEventEnrollmentStatus", "mms.ServiceSupportOptions.reportEventEnrollmentStatus", |
11338 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11339 | 14 | NULL, HFILL }}, |
11340 | 14 | { &hf_mms_ServiceSupportOptions_getEventEnrollmentAttributes, |
11341 | 14 | { "getEventEnrollmentAttributes", "mms.ServiceSupportOptions.getEventEnrollmentAttributes", |
11342 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11343 | 14 | NULL, HFILL }}, |
11344 | 14 | { &hf_mms_ServiceSupportOptions_acknowledgeEventNotification, |
11345 | 14 | { "acknowledgeEventNotification", "mms.ServiceSupportOptions.acknowledgeEventNotification", |
11346 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11347 | 14 | NULL, HFILL }}, |
11348 | 14 | { &hf_mms_ServiceSupportOptions_getAlarmSummary, |
11349 | 14 | { "getAlarmSummary", "mms.ServiceSupportOptions.getAlarmSummary", |
11350 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11351 | 14 | NULL, HFILL }}, |
11352 | 14 | { &hf_mms_ServiceSupportOptions_getAlarmEnrollmentSummary, |
11353 | 14 | { "getAlarmEnrollmentSummary", "mms.ServiceSupportOptions.getAlarmEnrollmentSummary", |
11354 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11355 | 14 | NULL, HFILL }}, |
11356 | 14 | { &hf_mms_ServiceSupportOptions_readJournal, |
11357 | 14 | { "readJournal", "mms.ServiceSupportOptions.readJournal", |
11358 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11359 | 14 | NULL, HFILL }}, |
11360 | 14 | { &hf_mms_ServiceSupportOptions_writeJournal, |
11361 | 14 | { "writeJournal", "mms.ServiceSupportOptions.writeJournal", |
11362 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11363 | 14 | NULL, HFILL }}, |
11364 | 14 | { &hf_mms_ServiceSupportOptions_initializeJournal, |
11365 | 14 | { "initializeJournal", "mms.ServiceSupportOptions.initializeJournal", |
11366 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11367 | 14 | NULL, HFILL }}, |
11368 | 14 | { &hf_mms_ServiceSupportOptions_reportJournalStatus, |
11369 | 14 | { "reportJournalStatus", "mms.ServiceSupportOptions.reportJournalStatus", |
11370 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11371 | 14 | NULL, HFILL }}, |
11372 | 14 | { &hf_mms_ServiceSupportOptions_createJournal, |
11373 | 14 | { "createJournal", "mms.ServiceSupportOptions.createJournal", |
11374 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11375 | 14 | NULL, HFILL }}, |
11376 | 14 | { &hf_mms_ServiceSupportOptions_deleteJournal, |
11377 | 14 | { "deleteJournal", "mms.ServiceSupportOptions.deleteJournal", |
11378 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11379 | 14 | NULL, HFILL }}, |
11380 | 14 | { &hf_mms_ServiceSupportOptions_getCapabilityList, |
11381 | 14 | { "getCapabilityList", "mms.ServiceSupportOptions.getCapabilityList", |
11382 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11383 | 14 | NULL, HFILL }}, |
11384 | 14 | { &hf_mms_ServiceSupportOptions_fileOpen, |
11385 | 14 | { "fileOpen", "mms.ServiceSupportOptions.fileOpen", |
11386 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11387 | 14 | NULL, HFILL }}, |
11388 | 14 | { &hf_mms_ServiceSupportOptions_fileRead, |
11389 | 14 | { "fileRead", "mms.ServiceSupportOptions.fileRead", |
11390 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11391 | 14 | NULL, HFILL }}, |
11392 | 14 | { &hf_mms_ServiceSupportOptions_fileClose, |
11393 | 14 | { "fileClose", "mms.ServiceSupportOptions.fileClose", |
11394 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11395 | 14 | NULL, HFILL }}, |
11396 | 14 | { &hf_mms_ServiceSupportOptions_fileRename, |
11397 | 14 | { "fileRename", "mms.ServiceSupportOptions.fileRename", |
11398 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11399 | 14 | NULL, HFILL }}, |
11400 | 14 | { &hf_mms_ServiceSupportOptions_fileDelete, |
11401 | 14 | { "fileDelete", "mms.ServiceSupportOptions.fileDelete", |
11402 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11403 | 14 | NULL, HFILL }}, |
11404 | 14 | { &hf_mms_ServiceSupportOptions_fileDirectory, |
11405 | 14 | { "fileDirectory", "mms.ServiceSupportOptions.fileDirectory", |
11406 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11407 | 14 | NULL, HFILL }}, |
11408 | 14 | { &hf_mms_ServiceSupportOptions_unsolicitedStatus, |
11409 | 14 | { "unsolicitedStatus", "mms.ServiceSupportOptions.unsolicitedStatus", |
11410 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11411 | 14 | NULL, HFILL }}, |
11412 | 14 | { &hf_mms_ServiceSupportOptions_informationReport, |
11413 | 14 | { "informationReport", "mms.ServiceSupportOptions.informationReport", |
11414 | 14 | FT_BOOLEAN, 8, NULL, 0x01, |
11415 | 14 | NULL, HFILL }}, |
11416 | 14 | { &hf_mms_ServiceSupportOptions_eventNotification, |
11417 | 14 | { "eventNotification", "mms.ServiceSupportOptions.eventNotification", |
11418 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11419 | 14 | NULL, HFILL }}, |
11420 | 14 | { &hf_mms_ServiceSupportOptions_attachToEventCondition, |
11421 | 14 | { "attachToEventCondition", "mms.ServiceSupportOptions.attachToEventCondition", |
11422 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11423 | 14 | NULL, HFILL }}, |
11424 | 14 | { &hf_mms_ServiceSupportOptions_attachToSemaphore, |
11425 | 14 | { "attachToSemaphore", "mms.ServiceSupportOptions.attachToSemaphore", |
11426 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11427 | 14 | NULL, HFILL }}, |
11428 | 14 | { &hf_mms_ServiceSupportOptions_conclude, |
11429 | 14 | { "conclude", "mms.ServiceSupportOptions.conclude", |
11430 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11431 | 14 | NULL, HFILL }}, |
11432 | 14 | { &hf_mms_ServiceSupportOptions_cancel, |
11433 | 14 | { "cancel", "mms.ServiceSupportOptions.cancel", |
11434 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11435 | 14 | NULL, HFILL }}, |
11436 | 14 | { &hf_mms_Transitions_idle_to_disabled, |
11437 | 14 | { "idle-to-disabled", "mms.Transitions.idle.to.disabled", |
11438 | 14 | FT_BOOLEAN, 8, NULL, 0x80, |
11439 | 14 | NULL, HFILL }}, |
11440 | 14 | { &hf_mms_Transitions_active_to_disabled, |
11441 | 14 | { "active-to-disabled", "mms.Transitions.active.to.disabled", |
11442 | 14 | FT_BOOLEAN, 8, NULL, 0x40, |
11443 | 14 | NULL, HFILL }}, |
11444 | 14 | { &hf_mms_Transitions_disabled_to_idle, |
11445 | 14 | { "disabled-to-idle", "mms.Transitions.disabled.to.idle", |
11446 | 14 | FT_BOOLEAN, 8, NULL, 0x20, |
11447 | 14 | NULL, HFILL }}, |
11448 | 14 | { &hf_mms_Transitions_active_to_idle, |
11449 | 14 | { "active-to-idle", "mms.Transitions.active.to.idle", |
11450 | 14 | FT_BOOLEAN, 8, NULL, 0x10, |
11451 | 14 | NULL, HFILL }}, |
11452 | 14 | { &hf_mms_Transitions_disabled_to_active, |
11453 | 14 | { "disabled-to-active", "mms.Transitions.disabled.to.active", |
11454 | 14 | FT_BOOLEAN, 8, NULL, 0x08, |
11455 | 14 | NULL, HFILL }}, |
11456 | 14 | { &hf_mms_Transitions_idle_to_active, |
11457 | 14 | { "idle-to-active", "mms.Transitions.idle.to.active", |
11458 | 14 | FT_BOOLEAN, 8, NULL, 0x04, |
11459 | 14 | NULL, HFILL }}, |
11460 | 14 | { &hf_mms_Transitions_any_to_deleted, |
11461 | 14 | { "any-to-deleted", "mms.Transitions.any.to.deleted", |
11462 | 14 | FT_BOOLEAN, 8, NULL, 0x02, |
11463 | 14 | NULL, HFILL }}, |
11464 | 14 | }; |
11465 | | |
11466 | | /* List of subtrees */ |
11467 | 14 | static int* ett[] = { |
11468 | 14 | &ett_mms, |
11469 | 14 | &ett_mms_iec61850_quality_bitstring, |
11470 | 14 | &ett_mms_iec61850_check_bitstring, |
11471 | 14 | &ett_mms_ReportedOptFlds, |
11472 | 14 | &ett_mms_MMSpdu, |
11473 | 14 | &ett_mms_Confirmed_RequestPDU, |
11474 | 14 | &ett_mms_SEQUENCE_OF_Modifier, |
11475 | 14 | &ett_mms_Unconfirmed_PDU, |
11476 | 14 | &ett_mms_Confirmed_ResponsePDU, |
11477 | 14 | &ett_mms_Confirmed_ErrorPDU, |
11478 | 14 | &ett_mms_UnconfirmedService, |
11479 | 14 | &ett_mms_Modifier, |
11480 | 14 | &ett_mms_ConfirmedServiceRequest, |
11481 | 14 | &ett_mms_CS_Request_Detail, |
11482 | 14 | &ett_mms_ConfirmedServiceResponse, |
11483 | 14 | &ett_mms_FileName, |
11484 | 14 | &ett_mms_ObjectName, |
11485 | 14 | &ett_mms_T_domain_specific, |
11486 | 14 | &ett_mms_ApplicationReference, |
11487 | 14 | &ett_mms_Initiate_RequestPDU, |
11488 | 14 | &ett_mms_InitRequestDetail, |
11489 | 14 | &ett_mms_Initiate_ResponsePDU, |
11490 | 14 | &ett_mms_InitResponseDetail, |
11491 | 14 | &ett_mms_ParameterSupportOptions, |
11492 | 14 | &ett_mms_ServiceSupportOptions, |
11493 | 14 | &ett_mms_Cancel_ErrorPDU, |
11494 | 14 | &ett_mms_ServiceError, |
11495 | 14 | &ett_mms_T_errorClass, |
11496 | 14 | &ett_mms_T_serviceSpecificInformation, |
11497 | 14 | &ett_mms_AdditionalService_Error, |
11498 | 14 | &ett_mms_RemoveEventConditionListReference_Error, |
11499 | 14 | &ett_mms_InitiateUnitControl_Error, |
11500 | 14 | &ett_mms_StartUnitControl_Error, |
11501 | 14 | &ett_mms_StopUnitControl_Error, |
11502 | 14 | &ett_mms_DeleteUnitControl_Error, |
11503 | 14 | &ett_mms_LoadUnitControlFromFile_Error, |
11504 | 14 | &ett_mms_RejectPDU, |
11505 | 14 | &ett_mms_T_rejectReason, |
11506 | 14 | &ett_mms_Status_Response, |
11507 | 14 | &ett_mms_ObjectScope, |
11508 | 14 | &ett_mms_GetNameList_Request, |
11509 | 14 | &ett_mms_T_extendedObjectClass, |
11510 | 14 | &ett_mms_GetNameList_Response, |
11511 | 14 | &ett_mms_SEQUENCE_OF_Identifier, |
11512 | 14 | &ett_mms_Identify_Response, |
11513 | 14 | &ett_mms_T_listOfAbstractSyntaxes, |
11514 | 14 | &ett_mms_Rename_Request, |
11515 | 14 | &ett_mms_T_extendedObjectClass_01, |
11516 | 14 | &ett_mms_GetCapabilityList_Request, |
11517 | 14 | &ett_mms_GetCapabilityList_Response, |
11518 | 14 | &ett_mms_T_listOfCapabilities, |
11519 | 14 | &ett_mms_InitiateDownloadSequence_Request, |
11520 | 14 | &ett_mms_T_listOfCapabilities_01, |
11521 | 14 | &ett_mms_DownloadSegment_Response, |
11522 | 14 | &ett_mms_T_loadData, |
11523 | 14 | &ett_mms_TerminateDownloadSequence_Request, |
11524 | 14 | &ett_mms_InitiateUploadSequence_Response, |
11525 | 14 | &ett_mms_T_listOfCapabilities_02, |
11526 | 14 | &ett_mms_UploadSegment_Response, |
11527 | 14 | &ett_mms_T_loadData_01, |
11528 | 14 | &ett_mms_RequestDomainDownload_Request, |
11529 | 14 | &ett_mms_T_listOfCapabilities_03, |
11530 | 14 | &ett_mms_RequestDomainUpload_Request, |
11531 | 14 | &ett_mms_LoadDomainContent_Request, |
11532 | 14 | &ett_mms_T_listOfCapabilities_04, |
11533 | 14 | &ett_mms_StoreDomainContent_Request, |
11534 | 14 | &ett_mms_GetDomainAttributes_Response, |
11535 | 14 | &ett_mms_T_listOfCapabilities_05, |
11536 | 14 | &ett_mms_CreateProgramInvocation_Request, |
11537 | 14 | &ett_mms_Start_Request, |
11538 | 14 | &ett_mms_T_executionArgument, |
11539 | 14 | &ett_mms_Stop_Request, |
11540 | 14 | &ett_mms_Resume_Request, |
11541 | 14 | &ett_mms_T_executionArgument_01, |
11542 | 14 | &ett_mms_Reset_Request, |
11543 | 14 | &ett_mms_Kill_Request, |
11544 | 14 | &ett_mms_GetProgramInvocationAttributes_Response, |
11545 | 14 | &ett_mms_T_executionArgument_02, |
11546 | 14 | &ett_mms_TypeSpecification, |
11547 | 14 | &ett_mms_T_array, |
11548 | 14 | &ett_mms_T_structure, |
11549 | 14 | &ett_mms_T_components, |
11550 | 14 | &ett_mms_T_components_item, |
11551 | 14 | &ett_mms_AlternateAccess, |
11552 | 14 | &ett_mms_AlternateAccess_item, |
11553 | 14 | &ett_mms_T_named, |
11554 | 14 | &ett_mms_AlternateAccessSelection, |
11555 | 14 | &ett_mms_T_selectAlternateAccess, |
11556 | 14 | &ett_mms_T_accessSelection, |
11557 | 14 | &ett_mms_T_indexRange, |
11558 | 14 | &ett_mms_T_selectAccess, |
11559 | 14 | &ett_mms_T_indexRange_01, |
11560 | 14 | &ett_mms_Read_Request, |
11561 | 14 | &ett_mms_Read_Response, |
11562 | 14 | &ett_mms_SEQUENCE_OF_AccessResult, |
11563 | 14 | &ett_mms_Write_Request, |
11564 | 14 | &ett_mms_T_listOfData, |
11565 | 14 | &ett_mms_Write_Response, |
11566 | 14 | &ett_mms_Write_Response_item, |
11567 | 14 | &ett_mms_InformationReport, |
11568 | 14 | &ett_mms_T_listOfAccessResult, |
11569 | 14 | &ett_mms_GetVariableAccessAttributes_Request, |
11570 | 14 | &ett_mms_GetVariableAccessAttributes_Response, |
11571 | 14 | &ett_mms_DefineNamedVariable_Request, |
11572 | 14 | &ett_mms_DefineScatteredAccess_Request, |
11573 | 14 | &ett_mms_GetScatteredAccessAttributes_Response, |
11574 | 14 | &ett_mms_DeleteVariableAccess_Request, |
11575 | 14 | &ett_mms_SEQUENCE_OF_ObjectName, |
11576 | 14 | &ett_mms_DeleteVariableAccess_Response, |
11577 | 14 | &ett_mms_DefineNamedVariableList_Request, |
11578 | 14 | &ett_mms_T_listOfVariable, |
11579 | 14 | &ett_mms_T_listOfVariable_item, |
11580 | 14 | &ett_mms_GetNamedVariableListAttributes_Response, |
11581 | 14 | &ett_mms_T_listOfVariable_01, |
11582 | 14 | &ett_mms_T_listOfVariable_item_01, |
11583 | 14 | &ett_mms_DeleteNamedVariableList_Request, |
11584 | 14 | &ett_mms_DeleteNamedVariableList_Response, |
11585 | 14 | &ett_mms_DefineNamedType_Request, |
11586 | 14 | &ett_mms_GetNamedTypeAttributes_Response, |
11587 | 14 | &ett_mms_DeleteNamedType_Request, |
11588 | 14 | &ett_mms_DeleteNamedType_Response, |
11589 | 14 | &ett_mms_AccessResult, |
11590 | 14 | &ett_mms_Data, |
11591 | 14 | &ett_mms_SEQUENCE_OF_Data, |
11592 | 14 | &ett_mms_T_structure_01, |
11593 | 14 | &ett_mms_VariableAccessSpecification, |
11594 | 14 | &ett_mms_T_listOfVariable_02, |
11595 | 14 | &ett_mms_T_listOfVariable_item_02, |
11596 | 14 | &ett_mms_ScatteredAccessDescription, |
11597 | 14 | &ett_mms_ScatteredAccessDescription_item, |
11598 | 14 | &ett_mms_VariableSpecification, |
11599 | 14 | &ett_mms_T_variableDescription, |
11600 | 14 | &ett_mms_Address, |
11601 | 14 | &ett_mms_TakeControl_Request, |
11602 | 14 | &ett_mms_TakeControl_Response, |
11603 | 14 | &ett_mms_RelinquishControl_Request, |
11604 | 14 | &ett_mms_DefineSemaphore_Request, |
11605 | 14 | &ett_mms_ReportSemaphoreStatus_Response, |
11606 | 14 | &ett_mms_ReportPoolSemaphoreStatus_Request, |
11607 | 14 | &ett_mms_ReportPoolSemaphoreStatus_Response, |
11608 | 14 | &ett_mms_T_listOfNamedTokens, |
11609 | 14 | &ett_mms_T_listOfNamedTokens_item, |
11610 | 14 | &ett_mms_ReportSemaphoreEntryStatus_Request, |
11611 | 14 | &ett_mms_ReportSemaphoreEntryStatus_Response, |
11612 | 14 | &ett_mms_SEQUENCE_OF_SemaphoreEntry, |
11613 | 14 | &ett_mms_AttachToSemaphore, |
11614 | 14 | &ett_mms_SemaphoreEntry, |
11615 | 14 | &ett_mms_Input_Request, |
11616 | 14 | &ett_mms_T_listOfPromptData, |
11617 | 14 | &ett_mms_Output_Request, |
11618 | 14 | &ett_mms_T_listOfOutputData, |
11619 | 14 | &ett_mms_DefineEventCondition_Request, |
11620 | 14 | &ett_mms_DeleteEventCondition_Request, |
11621 | 14 | &ett_mms_GetEventConditionAttributes_Response, |
11622 | 14 | &ett_mms_T_monitoredVariable, |
11623 | 14 | &ett_mms_ReportEventConditionStatus_Response, |
11624 | 14 | &ett_mms_AlterEventConditionMonitoring_Request, |
11625 | 14 | &ett_mms_TriggerEvent_Request, |
11626 | 14 | &ett_mms_DefineEventAction_Request, |
11627 | 14 | &ett_mms_DeleteEventAction_Request, |
11628 | 14 | &ett_mms_GetEventActionAttributes_Response, |
11629 | 14 | &ett_mms_DefineEventEnrollment_Request, |
11630 | 14 | &ett_mms_DeleteEventEnrollment_Request, |
11631 | 14 | &ett_mms_GetEventEnrollmentAttributes_Request, |
11632 | 14 | &ett_mms_EventEnrollment, |
11633 | 14 | &ett_mms_T_eventConditionName, |
11634 | 14 | &ett_mms_T_eventActionName, |
11635 | 14 | &ett_mms_GetEventEnrollmentAttributes_Response, |
11636 | 14 | &ett_mms_SEQUENCE_OF_EventEnrollment, |
11637 | 14 | &ett_mms_ReportEventEnrollmentStatus_Response, |
11638 | 14 | &ett_mms_AlterEventEnrollment_Request, |
11639 | 14 | &ett_mms_AlterEventEnrollment_Response, |
11640 | 14 | &ett_mms_T_currentState, |
11641 | 14 | &ett_mms_AcknowledgeEventNotification_Request, |
11642 | 14 | &ett_mms_GetAlarmSummary_Request, |
11643 | 14 | &ett_mms_T_severityFilter, |
11644 | 14 | &ett_mms_GetAlarmSummary_Response, |
11645 | 14 | &ett_mms_SEQUENCE_OF_AlarmSummary, |
11646 | 14 | &ett_mms_AlarmSummary, |
11647 | 14 | &ett_mms_GetAlarmEnrollmentSummary_Request, |
11648 | 14 | &ett_mms_T_severityFilter_01, |
11649 | 14 | &ett_mms_GetAlarmEnrollmentSummary_Response, |
11650 | 14 | &ett_mms_SEQUENCE_OF_AlarmEnrollmentSummary, |
11651 | 14 | &ett_mms_AlarmEnrollmentSummary, |
11652 | 14 | &ett_mms_EventNotification, |
11653 | 14 | &ett_mms_T_eventConditionName_01, |
11654 | 14 | &ett_mms_T_actionResult, |
11655 | 14 | &ett_mms_T_eventActionResult, |
11656 | 14 | &ett_mms_AttachToEventCondition, |
11657 | 14 | &ett_mms_EventTime, |
11658 | 14 | &ett_mms_Transitions, |
11659 | 14 | &ett_mms_ReadJournal_Request, |
11660 | 14 | &ett_mms_T_rangeStartSpecification, |
11661 | 14 | &ett_mms_T_rangeStopSpecification, |
11662 | 14 | &ett_mms_T_listOfVariables, |
11663 | 14 | &ett_mms_T_entryToStartAfter, |
11664 | 14 | &ett_mms_ReadJournal_Response, |
11665 | 14 | &ett_mms_SEQUENCE_OF_JournalEntry, |
11666 | 14 | &ett_mms_JournalEntry, |
11667 | 14 | &ett_mms_WriteJournal_Request, |
11668 | 14 | &ett_mms_SEQUENCE_OF_EntryContent, |
11669 | 14 | &ett_mms_InitializeJournal_Request, |
11670 | 14 | &ett_mms_T_limitSpecification, |
11671 | 14 | &ett_mms_ReportJournalStatus_Response, |
11672 | 14 | &ett_mms_CreateJournal_Request, |
11673 | 14 | &ett_mms_DeleteJournal_Request, |
11674 | 14 | &ett_mms_EntryContent, |
11675 | 14 | &ett_mms_T_entryForm, |
11676 | 14 | &ett_mms_T_data, |
11677 | 14 | &ett_mms_T_event, |
11678 | 14 | &ett_mms_T_listOfVariables_01, |
11679 | 14 | &ett_mms_T_listOfVariables_item, |
11680 | 14 | &ett_mms_ObtainFile_Request, |
11681 | 14 | &ett_mms_FileOpen_Request, |
11682 | 14 | &ett_mms_FileOpen_Response, |
11683 | 14 | &ett_mms_FileRead_Response, |
11684 | 14 | &ett_mms_FileRename_Request, |
11685 | 14 | &ett_mms_FileDirectory_Request, |
11686 | 14 | &ett_mms_FileDirectory_Response, |
11687 | 14 | &ett_mms_SEQUENCE_OF_DirectoryEntry, |
11688 | 14 | &ett_mms_DirectoryEntry, |
11689 | 14 | &ett_mms_FileAttributes, |
11690 | 14 | }; |
11691 | | |
11692 | 14 | static ei_register_info ei[] = { |
11693 | 14 | { &ei_mms_mal_timeofday_encoding, { "mms.malformed.timeofday_encoding", PI_MALFORMED, PI_WARN, "BER Error: malformed TimeOfDay encoding", EXPFILL }}, |
11694 | 14 | { &ei_mms_mal_utctime_encoding, { "mms.malformed.utctime", PI_MALFORMED, PI_WARN, "BER Error: malformed IEC61850 UTCTime encoding", EXPFILL }}, |
11695 | 14 | { &ei_mms_zero_pdu, { "mms.zero_pdu", PI_PROTOCOL, PI_ERROR, "Internal error, zero-byte MMS PDU", EXPFILL }}, |
11696 | 14 | }; |
11697 | | |
11698 | 14 | expert_module_t* expert_mms; |
11699 | | |
11700 | | /* Register protocol */ |
11701 | 14 | proto_mms = proto_register_protocol(PNAME, PSNAME, PFNAME); |
11702 | 14 | register_dissector("mms", dissect_mms, proto_mms); |
11703 | | /* Register fields and subtrees */ |
11704 | 14 | proto_register_field_array(proto_mms, hf, array_length(hf)); |
11705 | 14 | proto_register_subtree_array(ett, array_length(ett)); |
11706 | 14 | expert_mms = expert_register_protocol(proto_mms); |
11707 | 14 | expert_register_field_array(expert_mms, ei, array_length(ei)); |
11708 | | |
11709 | | /* Setting to enable/disable the IEC-61850 mapping on MMS */ |
11710 | 14 | module_t* mms_module = prefs_register_protocol(proto_mms, NULL); |
11711 | | |
11712 | 14 | prefs_register_bool_preference(mms_module, "use_iec61850_mapping", |
11713 | 14 | "Dissect MMS as IEC-61850", |
11714 | 14 | "Enables or disables dissection as IEC-61850 on top of MMS", |
11715 | 14 | &use_iec61850_mapping); |
11716 | 14 | } |
11717 | | |
11718 | | |
11719 | | static bool |
11720 | | dissect_mms_heur(tvbuff_t* tvb, packet_info* pinfo, proto_tree* parent_tree, void* data) |
11721 | 1.66k | { |
11722 | | /* must check that this really is an mms packet */ |
11723 | 1.66k | int offset = 0; |
11724 | 1.66k | uint32_t length = 0; |
11725 | 1.66k | uint32_t oct; |
11726 | 1.66k | int idx = 0; |
11727 | | |
11728 | 1.66k | int8_t tmp_class; |
11729 | 1.66k | bool tmp_pc; |
11730 | 1.66k | int32_t tmp_tag; |
11731 | | |
11732 | | /* first, check do we have at least 2 bytes (pdu) */ |
11733 | 1.66k | if (!tvb_bytes_exist(tvb, 0, 2)) |
11734 | 40 | return false; /* no */ |
11735 | | |
11736 | | /* can we recognize MMS PDU ? Return false if not */ |
11737 | | /* get MMS PDU type */ |
11738 | 1.62k | offset = get_ber_identifier(tvb, offset, &tmp_class, &tmp_pc, &tmp_tag); |
11739 | | |
11740 | | /* check MMS type */ |
11741 | | |
11742 | | /* Class should be constructed */ |
11743 | 1.62k | if (tmp_class != BER_CLASS_CON) |
11744 | 839 | return false; |
11745 | | |
11746 | | /* see if the tag is a valid MMS PDU */ |
11747 | 782 | try_val_to_str_idx(tmp_tag, mms_MMSpdu_vals, &idx); |
11748 | 782 | if (idx == -1) { |
11749 | 198 | return false; /* no, it isn't an MMS PDU */ |
11750 | 198 | } |
11751 | | |
11752 | | /* check MMS length */ |
11753 | 584 | oct = tvb_get_uint8(tvb, offset) & 0x7F; |
11754 | 584 | if (oct == 0) |
11755 | | /* MMS requires length after tag so not MMS if indefinite length*/ |
11756 | 9 | return false; |
11757 | | |
11758 | 575 | offset = get_ber_length(tvb, offset, &length, NULL); |
11759 | | /* do we have enough bytes? */ |
11760 | 575 | if (!tvb_bytes_exist(tvb, offset, length)) |
11761 | 69 | return false; |
11762 | | |
11763 | 506 | dissect_mms(tvb, pinfo, parent_tree, data); |
11764 | 506 | return true; |
11765 | 575 | } |
11766 | | |
11767 | | /*--- proto_reg_handoff_mms --- */ |
11768 | 14 | void proto_reg_handoff_mms(void) { |
11769 | 14 | register_ber_oid_dissector("1.0.9506.2.3", dissect_mms, proto_mms, "MMS"); |
11770 | 14 | register_ber_oid_dissector("1.0.9506.2.1", dissect_mms, proto_mms, "mms-abstract-syntax-version1(1)"); |
11771 | 14 | heur_dissector_add("cotp", dissect_mms_heur, "MMS over COTP", "mms_cotp", proto_mms, HEURISTIC_ENABLE); |
11772 | 14 | heur_dissector_add("cotp_is", dissect_mms_heur, "MMS over COTP (inactive subset)", "mms_cotp_is", proto_mms, HEURISTIC_ENABLE); |
11773 | 14 | } |
11774 | | |