nexmon – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | /****************************************************************************** |
2 | ** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved. |
||
3 | ** Web: http://www.ascolab.com |
||
4 | ** |
||
5 | ** This program is free software; you can redistribute it and/or |
||
6 | ** modify it under the terms of the GNU General Public License |
||
7 | ** as published by the Free Software Foundation; either version 2 |
||
8 | ** of the License, or (at your option) any later version. |
||
9 | ** |
||
10 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
||
11 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
||
12 | ** |
||
13 | ** Project: OpcUa Wireshark Plugin |
||
14 | ** |
||
15 | ** Description: Service table and service dispatcher. |
||
16 | ** |
||
17 | ** This file was autogenerated on 13.10.2015. |
||
18 | ** DON'T MODIFY THIS FILE! |
||
19 | ** XXX - well, except that you may have to. See the README. |
||
20 | ** |
||
21 | ******************************************************************************/ |
||
22 | |||
23 | #include "config.h" |
||
24 | |||
25 | #include <epan/packet.h> |
||
26 | #include "opcua_simpletypes.h" |
||
27 | #include "opcua_complextypeparser.h" |
||
28 | #include "opcua_extensionobjectids.h" |
||
29 | #include "opcua_hfindeces.h" |
||
30 | |||
31 | ExtensionObjectParserEntry g_arExtensionObjectParserTable[] = { |
||
32 | { OpcUaId_TrustListDataType_Encoding_DefaultBinary, parseTrustListDataType, "TrustListDataType" }, |
||
33 | { OpcUaId_Node_Encoding_DefaultBinary, parseNode, "Node" }, |
||
34 | { OpcUaId_InstanceNode_Encoding_DefaultBinary, parseInstanceNode, "InstanceNode" }, |
||
35 | { OpcUaId_TypeNode_Encoding_DefaultBinary, parseTypeNode, "TypeNode" }, |
||
36 | { OpcUaId_ObjectNode_Encoding_DefaultBinary, parseObjectNode, "ObjectNode" }, |
||
37 | { OpcUaId_ObjectTypeNode_Encoding_DefaultBinary, parseObjectTypeNode, "ObjectTypeNode" }, |
||
38 | { OpcUaId_VariableNode_Encoding_DefaultBinary, parseVariableNode, "VariableNode" }, |
||
39 | { OpcUaId_VariableTypeNode_Encoding_DefaultBinary, parseVariableTypeNode, "VariableTypeNode" }, |
||
40 | { OpcUaId_ReferenceTypeNode_Encoding_DefaultBinary, parseReferenceTypeNode, "ReferenceTypeNode" }, |
||
41 | { OpcUaId_MethodNode_Encoding_DefaultBinary, parseMethodNode, "MethodNode" }, |
||
42 | { OpcUaId_ViewNode_Encoding_DefaultBinary, parseViewNode, "ViewNode" }, |
||
43 | { OpcUaId_DataTypeNode_Encoding_DefaultBinary, parseDataTypeNode, "DataTypeNode" }, |
||
44 | { OpcUaId_ReferenceNode_Encoding_DefaultBinary, parseReferenceNode, "ReferenceNode" }, |
||
45 | { OpcUaId_Argument_Encoding_DefaultBinary, parseArgument, "Argument" }, |
||
46 | { OpcUaId_EnumValueType_Encoding_DefaultBinary, parseEnumValueType, "EnumValueType" }, |
||
47 | { OpcUaId_OptionSet_Encoding_DefaultBinary, parseOptionSet, "OptionSet" }, |
||
48 | { OpcUaId_TimeZoneDataType_Encoding_DefaultBinary, parseTimeZoneDataType, "TimeZoneDataType" }, |
||
49 | { OpcUaId_ApplicationDescription_Encoding_DefaultBinary, parseApplicationDescription, "ApplicationDescription" }, |
||
50 | { OpcUaId_RequestHeader_Encoding_DefaultBinary, parseRequestHeader, "RequestHeader" }, |
||
51 | { OpcUaId_ResponseHeader_Encoding_DefaultBinary, parseResponseHeader, "ResponseHeader" }, |
||
52 | { OpcUaId_ServerOnNetwork_Encoding_DefaultBinary, parseServerOnNetwork, "ServerOnNetwork" }, |
||
53 | { OpcUaId_UserTokenPolicy_Encoding_DefaultBinary, parseUserTokenPolicy, "UserTokenPolicy" }, |
||
54 | { OpcUaId_EndpointDescription_Encoding_DefaultBinary, parseEndpointDescription, "EndpointDescription" }, |
||
55 | { OpcUaId_RegisteredServer_Encoding_DefaultBinary, parseRegisteredServer, "RegisteredServer" }, |
||
56 | { OpcUaId_MdnsDiscoveryConfiguration_Encoding_DefaultBinary, parseMdnsDiscoveryConfiguration, "MdnsDiscoveryConfiguration" }, |
||
57 | { OpcUaId_ChannelSecurityToken_Encoding_DefaultBinary, parseChannelSecurityToken, "ChannelSecurityToken" }, |
||
58 | { OpcUaId_SignedSoftwareCertificate_Encoding_DefaultBinary, parseSignedSoftwareCertificate, "SignedSoftwareCertificate" }, |
||
59 | { OpcUaId_SignatureData_Encoding_DefaultBinary, parseSignatureData, "SignatureData" }, |
||
60 | { OpcUaId_UserIdentityToken_Encoding_DefaultBinary, parseUserIdentityToken, "UserIdentityToken" }, |
||
61 | { OpcUaId_AnonymousIdentityToken_Encoding_DefaultBinary, parseAnonymousIdentityToken, "AnonymousIdentityToken" }, |
||
62 | { OpcUaId_UserNameIdentityToken_Encoding_DefaultBinary, parseUserNameIdentityToken, "UserNameIdentityToken" }, |
||
63 | { OpcUaId_X509IdentityToken_Encoding_DefaultBinary, parseX509IdentityToken, "X509IdentityToken" }, |
||
64 | { OpcUaId_KerberosIdentityToken_Encoding_DefaultBinary, parseKerberosIdentityToken, "KerberosIdentityToken" }, |
||
65 | { OpcUaId_IssuedIdentityToken_Encoding_DefaultBinary, parseIssuedIdentityToken, "IssuedIdentityToken" }, |
||
66 | { OpcUaId_NodeAttributes_Encoding_DefaultBinary, parseNodeAttributes, "NodeAttributes" }, |
||
67 | { OpcUaId_ObjectAttributes_Encoding_DefaultBinary, parseObjectAttributes, "ObjectAttributes" }, |
||
68 | { OpcUaId_VariableAttributes_Encoding_DefaultBinary, parseVariableAttributes, "VariableAttributes" }, |
||
69 | { OpcUaId_MethodAttributes_Encoding_DefaultBinary, parseMethodAttributes, "MethodAttributes" }, |
||
70 | { OpcUaId_ObjectTypeAttributes_Encoding_DefaultBinary, parseObjectTypeAttributes, "ObjectTypeAttributes" }, |
||
71 | { OpcUaId_VariableTypeAttributes_Encoding_DefaultBinary, parseVariableTypeAttributes, "VariableTypeAttributes" }, |
||
72 | { OpcUaId_ReferenceTypeAttributes_Encoding_DefaultBinary, parseReferenceTypeAttributes, "ReferenceTypeAttributes" }, |
||
73 | { OpcUaId_DataTypeAttributes_Encoding_DefaultBinary, parseDataTypeAttributes, "DataTypeAttributes" }, |
||
74 | { OpcUaId_ViewAttributes_Encoding_DefaultBinary, parseViewAttributes, "ViewAttributes" }, |
||
75 | { OpcUaId_AddNodesItem_Encoding_DefaultBinary, parseAddNodesItem, "AddNodesItem" }, |
||
76 | { OpcUaId_AddNodesResult_Encoding_DefaultBinary, parseAddNodesResult, "AddNodesResult" }, |
||
77 | { OpcUaId_AddReferencesItem_Encoding_DefaultBinary, parseAddReferencesItem, "AddReferencesItem" }, |
||
78 | { OpcUaId_DeleteNodesItem_Encoding_DefaultBinary, parseDeleteNodesItem, "DeleteNodesItem" }, |
||
79 | { OpcUaId_DeleteReferencesItem_Encoding_DefaultBinary, parseDeleteReferencesItem, "DeleteReferencesItem" }, |
||
80 | { OpcUaId_ViewDescription_Encoding_DefaultBinary, parseViewDescription, "ViewDescription" }, |
||
81 | { OpcUaId_BrowseDescription_Encoding_DefaultBinary, parseBrowseDescription, "BrowseDescription" }, |
||
82 | { OpcUaId_ReferenceDescription_Encoding_DefaultBinary, parseReferenceDescription, "ReferenceDescription" }, |
||
83 | { OpcUaId_BrowseResult_Encoding_DefaultBinary, parseBrowseResult, "BrowseResult" }, |
||
84 | { OpcUaId_RelativePathElement_Encoding_DefaultBinary, parseRelativePathElement, "RelativePathElement" }, |
||
85 | { OpcUaId_RelativePath_Encoding_DefaultBinary, parseRelativePath, "RelativePath" }, |
||
86 | { OpcUaId_BrowsePath_Encoding_DefaultBinary, parseBrowsePath, "BrowsePath" }, |
||
87 | { OpcUaId_BrowsePathTarget_Encoding_DefaultBinary, parseBrowsePathTarget, "BrowsePathTarget" }, |
||
88 | { OpcUaId_BrowsePathResult_Encoding_DefaultBinary, parseBrowsePathResult, "BrowsePathResult" }, |
||
89 | { OpcUaId_EndpointConfiguration_Encoding_DefaultBinary, parseEndpointConfiguration, "EndpointConfiguration" }, |
||
90 | { OpcUaId_SupportedProfile_Encoding_DefaultBinary, parseSupportedProfile, "SupportedProfile" }, |
||
91 | { OpcUaId_SoftwareCertificate_Encoding_DefaultBinary, parseSoftwareCertificate, "SoftwareCertificate" }, |
||
92 | { OpcUaId_QueryDataDescription_Encoding_DefaultBinary, parseQueryDataDescription, "QueryDataDescription" }, |
||
93 | { OpcUaId_NodeTypeDescription_Encoding_DefaultBinary, parseNodeTypeDescription, "NodeTypeDescription" }, |
||
94 | { OpcUaId_QueryDataSet_Encoding_DefaultBinary, parseQueryDataSet, "QueryDataSet" }, |
||
95 | { OpcUaId_NodeReference_Encoding_DefaultBinary, parseNodeReference, "NodeReference" }, |
||
96 | { OpcUaId_ContentFilterElement_Encoding_DefaultBinary, parseContentFilterElement, "ContentFilterElement" }, |
||
97 | { OpcUaId_ContentFilter_Encoding_DefaultBinary, parseContentFilter, "ContentFilter" }, |
||
98 | { OpcUaId_ElementOperand_Encoding_DefaultBinary, parseElementOperand, "ElementOperand" }, |
||
99 | { OpcUaId_LiteralOperand_Encoding_DefaultBinary, parseLiteralOperand, "LiteralOperand" }, |
||
100 | { OpcUaId_AttributeOperand_Encoding_DefaultBinary, parseAttributeOperand, "AttributeOperand" }, |
||
101 | { OpcUaId_SimpleAttributeOperand_Encoding_DefaultBinary, parseSimpleAttributeOperand, "SimpleAttributeOperand" }, |
||
102 | { OpcUaId_ContentFilterElementResult_Encoding_DefaultBinary, parseContentFilterElementResult, "ContentFilterElementResult" }, |
||
103 | { OpcUaId_ContentFilterResult_Encoding_DefaultBinary, parseContentFilterResult, "ContentFilterResult" }, |
||
104 | { OpcUaId_ParsingResult_Encoding_DefaultBinary, parseParsingResult, "ParsingResult" }, |
||
105 | { OpcUaId_ReadValueId_Encoding_DefaultBinary, parseReadValueId, "ReadValueId" }, |
||
106 | { OpcUaId_HistoryReadValueId_Encoding_DefaultBinary, parseHistoryReadValueId, "HistoryReadValueId" }, |
||
107 | { OpcUaId_HistoryReadResult_Encoding_DefaultBinary, parseHistoryReadResult, "HistoryReadResult" }, |
||
108 | { OpcUaId_ReadEventDetails_Encoding_DefaultBinary, parseReadEventDetails, "ReadEventDetails" }, |
||
109 | { OpcUaId_ReadRawModifiedDetails_Encoding_DefaultBinary, parseReadRawModifiedDetails, "ReadRawModifiedDetails" }, |
||
110 | { OpcUaId_ReadProcessedDetails_Encoding_DefaultBinary, parseReadProcessedDetails, "ReadProcessedDetails" }, |
||
111 | { OpcUaId_ReadAtTimeDetails_Encoding_DefaultBinary, parseReadAtTimeDetails, "ReadAtTimeDetails" }, |
||
112 | { OpcUaId_HistoryData_Encoding_DefaultBinary, parseHistoryData, "HistoryData" }, |
||
113 | { OpcUaId_ModificationInfo_Encoding_DefaultBinary, parseModificationInfo, "ModificationInfo" }, |
||
114 | { OpcUaId_HistoryModifiedData_Encoding_DefaultBinary, parseHistoryModifiedData, "HistoryModifiedData" }, |
||
115 | { OpcUaId_HistoryEvent_Encoding_DefaultBinary, parseHistoryEvent, "HistoryEvent" }, |
||
116 | { OpcUaId_WriteValue_Encoding_DefaultBinary, parseWriteValue, "WriteValue" }, |
||
117 | { OpcUaId_HistoryUpdateDetails_Encoding_DefaultBinary, parseHistoryUpdateDetails, "HistoryUpdateDetails" }, |
||
118 | { OpcUaId_UpdateDataDetails_Encoding_DefaultBinary, parseUpdateDataDetails, "UpdateDataDetails" }, |
||
119 | { OpcUaId_UpdateStructureDataDetails_Encoding_DefaultBinary, parseUpdateStructureDataDetails, "UpdateStructureDataDetails" }, |
||
120 | { OpcUaId_UpdateEventDetails_Encoding_DefaultBinary, parseUpdateEventDetails, "UpdateEventDetails" }, |
||
121 | { OpcUaId_DeleteRawModifiedDetails_Encoding_DefaultBinary, parseDeleteRawModifiedDetails, "DeleteRawModifiedDetails" }, |
||
122 | { OpcUaId_DeleteAtTimeDetails_Encoding_DefaultBinary, parseDeleteAtTimeDetails, "DeleteAtTimeDetails" }, |
||
123 | { OpcUaId_DeleteEventDetails_Encoding_DefaultBinary, parseDeleteEventDetails, "DeleteEventDetails" }, |
||
124 | { OpcUaId_HistoryUpdateResult_Encoding_DefaultBinary, parseHistoryUpdateResult, "HistoryUpdateResult" }, |
||
125 | { OpcUaId_CallMethodRequest_Encoding_DefaultBinary, parseCallMethodRequest, "CallMethodRequest" }, |
||
126 | { OpcUaId_CallMethodResult_Encoding_DefaultBinary, parseCallMethodResult, "CallMethodResult" }, |
||
127 | { OpcUaId_DataChangeFilter_Encoding_DefaultBinary, parseDataChangeFilter, "DataChangeFilter" }, |
||
128 | { OpcUaId_EventFilter_Encoding_DefaultBinary, parseEventFilter, "EventFilter" }, |
||
129 | { OpcUaId_AggregateConfiguration_Encoding_DefaultBinary, parseAggregateConfiguration, "AggregateConfiguration" }, |
||
130 | { OpcUaId_AggregateFilter_Encoding_DefaultBinary, parseAggregateFilter, "AggregateFilter" }, |
||
131 | { OpcUaId_EventFilterResult_Encoding_DefaultBinary, parseEventFilterResult, "EventFilterResult" }, |
||
132 | { OpcUaId_AggregateFilterResult_Encoding_DefaultBinary, parseAggregateFilterResult, "AggregateFilterResult" }, |
||
133 | { OpcUaId_MonitoringParameters_Encoding_DefaultBinary, parseMonitoringParameters, "MonitoringParameters" }, |
||
134 | { OpcUaId_MonitoredItemCreateRequest_Encoding_DefaultBinary, parseMonitoredItemCreateRequest, "MonitoredItemCreateRequest" }, |
||
135 | { OpcUaId_MonitoredItemCreateResult_Encoding_DefaultBinary, parseMonitoredItemCreateResult, "MonitoredItemCreateResult" }, |
||
136 | { OpcUaId_MonitoredItemModifyRequest_Encoding_DefaultBinary, parseMonitoredItemModifyRequest, "MonitoredItemModifyRequest" }, |
||
137 | { OpcUaId_MonitoredItemModifyResult_Encoding_DefaultBinary, parseMonitoredItemModifyResult, "MonitoredItemModifyResult" }, |
||
138 | { OpcUaId_NotificationMessage_Encoding_DefaultBinary, parseNotificationMessage, "NotificationMessage" }, |
||
139 | { OpcUaId_DataChangeNotification_Encoding_DefaultBinary, parseDataChangeNotification, "DataChangeNotification" }, |
||
140 | { OpcUaId_MonitoredItemNotification_Encoding_DefaultBinary, parseMonitoredItemNotification, "MonitoredItemNotification" }, |
||
141 | { OpcUaId_EventNotificationList_Encoding_DefaultBinary, parseEventNotificationList, "EventNotificationList" }, |
||
142 | { OpcUaId_EventFieldList_Encoding_DefaultBinary, parseEventFieldList, "EventFieldList" }, |
||
143 | { OpcUaId_HistoryEventFieldList_Encoding_DefaultBinary, parseHistoryEventFieldList, "HistoryEventFieldList" }, |
||
144 | { OpcUaId_StatusChangeNotification_Encoding_DefaultBinary, parseStatusChangeNotification, "StatusChangeNotification" }, |
||
145 | { OpcUaId_SubscriptionAcknowledgement_Encoding_DefaultBinary, parseSubscriptionAcknowledgement, "SubscriptionAcknowledgement" }, |
||
146 | { OpcUaId_TransferResult_Encoding_DefaultBinary, parseTransferResult, "TransferResult" }, |
||
147 | { OpcUaId_ScalarTestType_Encoding_DefaultBinary, parseScalarTestType, "ScalarTestType" }, |
||
148 | { OpcUaId_ArrayTestType_Encoding_DefaultBinary, parseArrayTestType, "ArrayTestType" }, |
||
149 | { OpcUaId_CompositeTestType_Encoding_DefaultBinary, parseCompositeTestType, "CompositeTestType" }, |
||
150 | { OpcUaId_BuildInfo_Encoding_DefaultBinary, parseBuildInfo, "BuildInfo" }, |
||
151 | { OpcUaId_RedundantServerDataType_Encoding_DefaultBinary, parseRedundantServerDataType, "RedundantServerDataType" }, |
||
152 | { OpcUaId_EndpointUrlListDataType_Encoding_DefaultBinary, parseEndpointUrlListDataType, "EndpointUrlListDataType" }, |
||
153 | { OpcUaId_NetworkGroupDataType_Encoding_DefaultBinary, parseNetworkGroupDataType, "NetworkGroupDataType" }, |
||
154 | { OpcUaId_SamplingIntervalDiagnosticsDataType_Encoding_DefaultBinary, parseSamplingIntervalDiagnosticsDataType, "SamplingIntervalDiagnosticsDataType" }, |
||
155 | { OpcUaId_ServerDiagnosticsSummaryDataType_Encoding_DefaultBinary, parseServerDiagnosticsSummaryDataType, "ServerDiagnosticsSummaryDataType" }, |
||
156 | { OpcUaId_ServerStatusDataType_Encoding_DefaultBinary, parseServerStatusDataType, "ServerStatusDataType" }, |
||
157 | { OpcUaId_SessionDiagnosticsDataType_Encoding_DefaultBinary, parseSessionDiagnosticsDataType, "SessionDiagnosticsDataType" }, |
||
158 | { OpcUaId_SessionSecurityDiagnosticsDataType_Encoding_DefaultBinary, parseSessionSecurityDiagnosticsDataType, "SessionSecurityDiagnosticsDataType" }, |
||
159 | { OpcUaId_ServiceCounterDataType_Encoding_DefaultBinary, parseServiceCounterDataType, "ServiceCounterDataType" }, |
||
160 | { OpcUaId_StatusResult_Encoding_DefaultBinary, parseStatusResult, "StatusResult" }, |
||
161 | { OpcUaId_SubscriptionDiagnosticsDataType_Encoding_DefaultBinary, parseSubscriptionDiagnosticsDataType, "SubscriptionDiagnosticsDataType" }, |
||
162 | { OpcUaId_ModelChangeStructureDataType_Encoding_DefaultBinary, parseModelChangeStructureDataType, "ModelChangeStructureDataType" }, |
||
163 | { OpcUaId_SemanticChangeStructureDataType_Encoding_DefaultBinary, parseSemanticChangeStructureDataType, "SemanticChangeStructureDataType" }, |
||
164 | { OpcUaId_Range_Encoding_DefaultBinary, parseRange, "Range" }, |
||
165 | { OpcUaId_EUInformation_Encoding_DefaultBinary, parseEUInformation, "EUInformation" }, |
||
166 | { OpcUaId_ComplexNumberType_Encoding_DefaultBinary, parseComplexNumberType, "ComplexNumberType" }, |
||
167 | { OpcUaId_DoubleComplexNumberType_Encoding_DefaultBinary, parseDoubleComplexNumberType, "DoubleComplexNumberType" }, |
||
168 | { OpcUaId_AxisInformation_Encoding_DefaultBinary, parseAxisInformation, "AxisInformation" }, |
||
169 | { OpcUaId_XVType_Encoding_DefaultBinary, parseXVType, "XVType" }, |
||
170 | { OpcUaId_ProgramDiagnosticDataType_Encoding_DefaultBinary, parseProgramDiagnosticDataType, "ProgramDiagnosticDataType" }, |
||
171 | { OpcUaId_Annotation_Encoding_DefaultBinary, parseAnnotation, "Annotation" }, |
||
172 | }; |
||
173 | const int g_NumTypes = sizeof(g_arExtensionObjectParserTable) / sizeof(ExtensionObjectParserEntry); |
||
174 | |||
175 | /** Dispatch all extension objects to a special parser function. */ |
||
176 | void dispatchExtensionObjectType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, int TypeId) |
||
177 | { |
||
178 | gint iOffset = *pOffset; |
||
179 | int indx = 0; |
||
180 | int bFound = 0; |
||
181 | gint32 iLen = 0; |
||
182 | |||
183 | /* get the length of the body */ |
||
184 | iLen = tvb_get_letohl(tvb, iOffset); |
||
185 | iOffset += 4; |
||
186 | |||
187 | while (indx < g_NumTypes) |
||
188 | { |
||
189 | if (g_arExtensionObjectParserTable[indx].iRequestId == TypeId) |
||
190 | { |
||
191 | bFound = 1; |
||
192 | (*g_arExtensionObjectParserTable[indx].pParser)(tree, tvb, pinfo, &iOffset, g_arExtensionObjectParserTable[indx].typeName); |
||
193 | break; |
||
194 | } |
||
195 | indx++; |
||
196 | } |
||
197 | |||
198 | /* display contained object as ByteString if unknown type */ |
||
199 | if (bFound == 0) |
||
200 | { |
||
201 | if (iLen == -1) |
||
202 | { |
||
203 | proto_tree_add_bytes_format_value(tree, hf_opcua_ByteString, tvb, *pOffset, 4, NULL, "[OpcUa Null ByteString]"); |
||
204 | } |
||
205 | else if (iLen >= 0) |
||
206 | { |
||
207 | proto_tree_add_item(tree, hf_opcua_ByteString, tvb, iOffset, iLen, ENC_NA); |
||
208 | iOffset += iLen; /* eat the whole bytestring */ |
||
209 | } |
||
210 | else |
||
211 | { |
||
212 | proto_tree_add_bytes_format_value(tree, hf_opcua_ByteString, tvb, *pOffset, 4, NULL, "[Invalid ByteString] Invalid length: %d", iLen); |
||
213 | } |
||
214 | } |
||
215 | |||
216 | *pOffset = iOffset; |
||
217 | } |
||
218 |