summaryrefslogtreecommitdiff
path: root/plugins/opcua
diff options
context:
space:
mode:
authorHannes Mezger <hannes.mezger@ascolab.com>2015-10-13 16:15:59 +0200
committerAnders Broman <a.broman58@gmail.com>2015-10-14 04:25:21 +0000
commita542eec6d84f159cce1986ca3ab1d353461914ed (patch)
treeb2511d6b7bf118a5cf2532786d313a88e99ec162 /plugins/opcua
parent4fee6a36b5bc8535db19147388c9890702cda907 (diff)
downloadwireshark-a542eec6d84f159cce1986ca3ab1d353461914ed.tar.gz
regenerate files adding new UA Specification 1.03 services and types
Change-Id: Ib39c33c6f90566f2807fa7bf9c7f1521a8f5cc35 Reviewed-on: https://code.wireshark.org/review/10979 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'plugins/opcua')
-rw-r--r--plugins/opcua/opcua_complextypeparser.c78
-rw-r--r--plugins/opcua/opcua_complextypeparser.h19
-rw-r--r--plugins/opcua/opcua_enumparser.c46
-rw-r--r--plugins/opcua/opcua_enumparser.h8
-rw-r--r--plugins/opcua/opcua_extensionobjectids.h9
-rw-r--r--plugins/opcua/opcua_extensionobjecttable.c9
-rw-r--r--plugins/opcua/opcua_hfindeces.c38
-rw-r--r--plugins/opcua/opcua_hfindeces.h21
-rw-r--r--plugins/opcua/opcua_serviceids.h10
-rw-r--r--plugins/opcua/opcua_serviceparser.c66
-rw-r--r--plugins/opcua/opcua_serviceparser.h16
-rw-r--r--plugins/opcua/opcua_servicetable.c14
12 files changed, 310 insertions, 24 deletions
diff --git a/plugins/opcua/opcua_complextypeparser.c b/plugins/opcua/opcua_complextypeparser.c
index eb6e82bff7..e29197b5a4 100644
--- a/plugins/opcua/opcua_complextypeparser.c
+++ b/plugins/opcua/opcua_complextypeparser.c
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Complex Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
@@ -27,6 +27,8 @@
#include "opcua_simpletypes.h"
#include "opcua_hfindeces.h"
+gint ett_opcua_TrustListDataType = -1;
+gint ett_opcua_array_TrustListDataType = -1;
gint ett_opcua_Node = -1;
gint ett_opcua_array_Node = -1;
gint ett_opcua_InstanceNode = -1;
@@ -55,6 +57,8 @@ gint ett_opcua_Argument = -1;
gint ett_opcua_array_Argument = -1;
gint ett_opcua_EnumValueType = -1;
gint ett_opcua_array_EnumValueType = -1;
+gint ett_opcua_OptionSet = -1;
+gint ett_opcua_array_OptionSet = -1;
gint ett_opcua_TimeZoneDataType = -1;
gint ett_opcua_array_TimeZoneDataType = -1;
gint ett_opcua_ApplicationDescription = -1;
@@ -63,12 +67,16 @@ gint ett_opcua_RequestHeader = -1;
gint ett_opcua_array_RequestHeader = -1;
gint ett_opcua_ResponseHeader = -1;
gint ett_opcua_array_ResponseHeader = -1;
+gint ett_opcua_ServerOnNetwork = -1;
+gint ett_opcua_array_ServerOnNetwork = -1;
gint ett_opcua_UserTokenPolicy = -1;
gint ett_opcua_array_UserTokenPolicy = -1;
gint ett_opcua_EndpointDescription = -1;
gint ett_opcua_array_EndpointDescription = -1;
gint ett_opcua_RegisteredServer = -1;
gint ett_opcua_array_RegisteredServer = -1;
+gint ett_opcua_MdnsDiscoveryConfiguration = -1;
+gint ett_opcua_array_MdnsDiscoveryConfiguration = -1;
gint ett_opcua_ChannelSecurityToken = -1;
gint ett_opcua_array_ChannelSecurityToken = -1;
gint ett_opcua_SignedSoftwareCertificate = -1;
@@ -83,6 +91,8 @@ gint ett_opcua_UserNameIdentityToken = -1;
gint ett_opcua_array_UserNameIdentityToken = -1;
gint ett_opcua_X509IdentityToken = -1;
gint ett_opcua_array_X509IdentityToken = -1;
+gint ett_opcua_KerberosIdentityToken = -1;
+gint ett_opcua_array_KerberosIdentityToken = -1;
gint ett_opcua_IssuedIdentityToken = -1;
gint ett_opcua_array_IssuedIdentityToken = -1;
gint ett_opcua_NodeAttributes = -1;
@@ -298,6 +308,21 @@ gint ett_opcua_array_ProgramDiagnosticDataType = -1;
gint ett_opcua_Annotation = -1;
gint ett_opcua_array_Annotation = -1;
+void parseTrustListDataType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree_format(tree, tvb, *pOffset, -1, ett_opcua_TrustListDataType, &ti, "%s: TrustListDataType", szFieldName);
+ parseUInt32(subtree, tvb, pinfo, pOffset, hf_opcua_SpecifiedLists);
+ /* Array length field ignored: NoOfTrustedCertificates */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "TrustedCertificates", "ByteString", hf_opcua_TrustedCertificates, parseByteString, ett_opcua_array_ByteString);
+ /* Array length field ignored: NoOfTrustedCrls */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "TrustedCrls", "ByteString", hf_opcua_TrustedCrls, parseByteString, ett_opcua_array_ByteString);
+ /* Array length field ignored: NoOfIssuerCertificates */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "IssuerCertificates", "ByteString", hf_opcua_IssuerCertificates, parseByteString, ett_opcua_array_ByteString);
+ /* Array length field ignored: NoOfIssuerCrls */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "IssuerCrls", "ByteString", hf_opcua_IssuerCrls, parseByteString, ett_opcua_array_ByteString);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
{
proto_item *ti;
@@ -518,6 +543,14 @@ void parseEnumValueType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gin
parseLocalizedText(subtree, tvb, pinfo, pOffset, "Description");
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseOptionSet(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree_format(tree, tvb, *pOffset, -1, ett_opcua_OptionSet, &ti, "%s: OptionSet", szFieldName);
+ parseByteString(subtree, tvb, pinfo, pOffset, hf_opcua_Value);
+ parseByteString(subtree, tvb, pinfo, pOffset, hf_opcua_ValidBits);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseTimeZoneDataType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
{
proto_item *ti;
@@ -566,6 +599,17 @@ void parseResponseHeader(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gi
parseExtensionObject(subtree, tvb, pinfo, pOffset, "AdditionalHeader");
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseServerOnNetwork(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree_format(tree, tvb, *pOffset, -1, ett_opcua_ServerOnNetwork, &ti, "%s: ServerOnNetwork", szFieldName);
+ parseUInt32(subtree, tvb, pinfo, pOffset, hf_opcua_RecordId);
+ parseString(subtree, tvb, pinfo, pOffset, hf_opcua_ServerName);
+ parseString(subtree, tvb, pinfo, pOffset, hf_opcua_DiscoveryUrl);
+ /* Array length field ignored: NoOfServerCapabilities */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "ServerCapabilities", "String", hf_opcua_ServerCapabilities, parseString, ett_opcua_array_String);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseUserTokenPolicy(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
{
proto_item *ti;
@@ -608,6 +652,15 @@ void parseRegisteredServer(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo,
parseBoolean(subtree, tvb, pinfo, pOffset, hf_opcua_IsOnline);
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseMdnsDiscoveryConfiguration(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree_format(tree, tvb, *pOffset, -1, ett_opcua_MdnsDiscoveryConfiguration, &ti, "%s: MdnsDiscoveryConfiguration", szFieldName);
+ parseString(subtree, tvb, pinfo, pOffset, hf_opcua_MdnsServerName);
+ /* Array length field ignored: NoOfServerCapabilities */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "ServerCapabilities", "String", hf_opcua_ServerCapabilities, parseString, ett_opcua_array_String);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseChannelSecurityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
{
proto_item *ti;
@@ -666,6 +719,14 @@ void parseX509IdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo,
parseByteString(subtree, tvb, pinfo, pOffset, hf_opcua_CertificateData);
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseKerberosIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree_format(tree, tvb, *pOffset, -1, ett_opcua_KerberosIdentityToken, &ti, "%s: KerberosIdentityToken", szFieldName);
+ parseString(subtree, tvb, pinfo, pOffset, hf_opcua_PolicyId);
+ parseByteString(subtree, tvb, pinfo, pOffset, hf_opcua_TicketData);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseIssuedIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
{
proto_item *ti;
@@ -1258,7 +1319,8 @@ void parseUpdateEventDetails(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo
parseNodeId(subtree, tvb, pinfo, pOffset, "NodeId");
parsePerformUpdateType(subtree, tvb, pinfo, pOffset);
parseEventFilter(subtree, tvb, pinfo, pOffset, "Filter");
- parseHistoryEventFieldList(subtree, tvb, pinfo, pOffset, "EventData");
+ /* Array length field ignored: NoOfEventData */
+ parseArrayComplex(subtree, tvb, pinfo, pOffset, "EventData", "HistoryEventFieldList", parseHistoryEventFieldList, ett_opcua_array_HistoryEventFieldList);
proto_item_set_end(ti, tvb, *pOffset);
}
void parseDeleteRawModifiedDetails(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName)
@@ -1903,6 +1965,8 @@ void parseAnnotation(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *
/** Setup protocol subtree array */
static gint *ett[] =
{
+ &ett_opcua_TrustListDataType,
+ &ett_opcua_array_TrustListDataType,
&ett_opcua_Node,
&ett_opcua_array_Node,
&ett_opcua_InstanceNode,
@@ -1931,6 +1995,8 @@ static gint *ett[] =
&ett_opcua_array_Argument,
&ett_opcua_EnumValueType,
&ett_opcua_array_EnumValueType,
+ &ett_opcua_OptionSet,
+ &ett_opcua_array_OptionSet,
&ett_opcua_TimeZoneDataType,
&ett_opcua_array_TimeZoneDataType,
&ett_opcua_ApplicationDescription,
@@ -1939,12 +2005,16 @@ static gint *ett[] =
&ett_opcua_array_RequestHeader,
&ett_opcua_ResponseHeader,
&ett_opcua_array_ResponseHeader,
+ &ett_opcua_ServerOnNetwork,
+ &ett_opcua_array_ServerOnNetwork,
&ett_opcua_UserTokenPolicy,
&ett_opcua_array_UserTokenPolicy,
&ett_opcua_EndpointDescription,
&ett_opcua_array_EndpointDescription,
&ett_opcua_RegisteredServer,
&ett_opcua_array_RegisteredServer,
+ &ett_opcua_MdnsDiscoveryConfiguration,
+ &ett_opcua_array_MdnsDiscoveryConfiguration,
&ett_opcua_ChannelSecurityToken,
&ett_opcua_array_ChannelSecurityToken,
&ett_opcua_SignedSoftwareCertificate,
@@ -1959,6 +2029,8 @@ static gint *ett[] =
&ett_opcua_array_UserNameIdentityToken,
&ett_opcua_X509IdentityToken,
&ett_opcua_array_X509IdentityToken,
+ &ett_opcua_KerberosIdentityToken,
+ &ett_opcua_array_KerberosIdentityToken,
&ett_opcua_IssuedIdentityToken,
&ett_opcua_array_IssuedIdentityToken,
&ett_opcua_NodeAttributes,
diff --git a/plugins/opcua/opcua_complextypeparser.h b/plugins/opcua/opcua_complextypeparser.h
index 7eb63afa27..ef1de8855a 100644
--- a/plugins/opcua/opcua_complextypeparser.h
+++ b/plugins/opcua/opcua_complextypeparser.h
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Complex Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -23,6 +23,8 @@
#include <glib.h>
#include <epan/packet.h>
+extern gint ett_opcua_TrustListDataType;
+extern gint ett_opcua_array_TrustListDataType;
extern gint ett_opcua_Node;
extern gint ett_opcua_array_Node;
extern gint ett_opcua_InstanceNode;
@@ -51,6 +53,8 @@ extern gint ett_opcua_Argument;
extern gint ett_opcua_array_Argument;
extern gint ett_opcua_EnumValueType;
extern gint ett_opcua_array_EnumValueType;
+extern gint ett_opcua_OptionSet;
+extern gint ett_opcua_array_OptionSet;
extern gint ett_opcua_TimeZoneDataType;
extern gint ett_opcua_array_TimeZoneDataType;
extern gint ett_opcua_ApplicationDescription;
@@ -59,12 +63,16 @@ extern gint ett_opcua_RequestHeader;
extern gint ett_opcua_array_RequestHeader;
extern gint ett_opcua_ResponseHeader;
extern gint ett_opcua_array_ResponseHeader;
+extern gint ett_opcua_ServerOnNetwork;
+extern gint ett_opcua_array_ServerOnNetwork;
extern gint ett_opcua_UserTokenPolicy;
extern gint ett_opcua_array_UserTokenPolicy;
extern gint ett_opcua_EndpointDescription;
extern gint ett_opcua_array_EndpointDescription;
extern gint ett_opcua_RegisteredServer;
extern gint ett_opcua_array_RegisteredServer;
+extern gint ett_opcua_MdnsDiscoveryConfiguration;
+extern gint ett_opcua_array_MdnsDiscoveryConfiguration;
extern gint ett_opcua_ChannelSecurityToken;
extern gint ett_opcua_array_ChannelSecurityToken;
extern gint ett_opcua_SignedSoftwareCertificate;
@@ -79,6 +87,8 @@ extern gint ett_opcua_UserNameIdentityToken;
extern gint ett_opcua_array_UserNameIdentityToken;
extern gint ett_opcua_X509IdentityToken;
extern gint ett_opcua_array_X509IdentityToken;
+extern gint ett_opcua_KerberosIdentityToken;
+extern gint ett_opcua_array_KerberosIdentityToken;
extern gint ett_opcua_IssuedIdentityToken;
extern gint ett_opcua_array_IssuedIdentityToken;
extern gint ett_opcua_NodeAttributes;
@@ -294,6 +304,7 @@ extern gint ett_opcua_array_ProgramDiagnosticDataType;
extern gint ett_opcua_Annotation;
extern gint ett_opcua_array_Annotation;
+void parseTrustListDataType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseInstanceNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseTypeNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
@@ -308,13 +319,16 @@ void parseDataTypeNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint
void parseReferenceNode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseArgument(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseEnumValueType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
+void parseOptionSet(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseTimeZoneDataType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseApplicationDescription(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseRequestHeader(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseResponseHeader(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
+void parseServerOnNetwork(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseUserTokenPolicy(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseEndpointDescription(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseRegisteredServer(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
+void parseMdnsDiscoveryConfiguration(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseChannelSecurityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseSignedSoftwareCertificate(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseSignatureData(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
@@ -322,6 +336,7 @@ void parseUserIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo,
void parseAnonymousIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseUserNameIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseX509IdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
+void parseKerberosIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseIssuedIdentityToken(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseNodeAttributes(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
void parseObjectAttributes(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset, const char *szFieldName);
diff --git a/plugins/opcua/opcua_enumparser.c b/plugins/opcua/opcua_enumparser.c
index 783ccdb318..c08b2fad85 100644
--- a/plugins/opcua/opcua_enumparser.c
+++ b/plugins/opcua/opcua_enumparser.c
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Enum Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
@@ -26,7 +26,9 @@
#include "opcua_enumparser.h"
gint ett_opcua_array_NodeIdType = -1;
+gint ett_opcua_array_NamingRuleType = -1;
gint ett_opcua_array_OpenFileMode = -1;
+gint ett_opcua_array_TrustListMasks = -1;
gint ett_opcua_array_IdType = -1;
gint ett_opcua_array_NodeClass = -1;
gint ett_opcua_array_ApplicationType = -1;
@@ -68,11 +70,24 @@ void parseNodeIdType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo _U_, gi
{
proto_tree_add_item(tree, hf_opcua_NodeIdType, tvb, *pOffset, 4, ENC_LITTLE_ENDIAN); *pOffset+=4;
}
+/** NamingRuleType enum table */
+static const value_string g_NamingRuleTypeTable[] = {
+ { 1, "Mandatory" },
+ { 2, "Optional" },
+ { 3, "Constraint" },
+ { 0, NULL }
+};
+static int hf_opcua_NamingRuleType = -1;
+
+void parseNamingRuleType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo _U_, gint *pOffset)
+{
+ proto_tree_add_item(tree, hf_opcua_NamingRuleType, tvb, *pOffset, 4, ENC_LITTLE_ENDIAN); *pOffset+=4;
+}
/** OpenFileMode enum table */
static const value_string g_OpenFileModeTable[] = {
{ 1, "Read" },
{ 2, "Write" },
- { 4, "EraseExisiting" },
+ { 4, "EraseExisting" },
{ 8, "Append" },
{ 0, NULL }
};
@@ -82,6 +97,22 @@ void parseOpenFileMode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo _U_,
{
proto_tree_add_item(tree, hf_opcua_OpenFileMode, tvb, *pOffset, 4, ENC_LITTLE_ENDIAN); *pOffset+=4;
}
+/** TrustListMasks enum table */
+static const value_string g_TrustListMasksTable[] = {
+ { 0, "None" },
+ { 1, "TrustedCertificates" },
+ { 2, "TrustedCrls" },
+ { 4, "IssuerCertificates" },
+ { 8, "IssuerCrls" },
+ { 15, "All" },
+ { 0, NULL }
+};
+static int hf_opcua_TrustListMasks = -1;
+
+void parseTrustListMasks(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo _U_, gint *pOffset)
+{
+ proto_tree_add_item(tree, hf_opcua_TrustListMasks, tvb, *pOffset, 4, ENC_LITTLE_ENDIAN); *pOffset+=4;
+}
/** IdType enum table */
static const value_string g_IdTypeTable[] = {
{ 0, "Numeric" },
@@ -149,6 +180,7 @@ static const value_string g_UserTokenTypeTable[] = {
{ 1, "UserName" },
{ 2, "Certificate" },
{ 3, "IssuedToken" },
+ { 4, "Kerberos" },
{ 0, NULL }
};
static int hf_opcua_UserTokenType = -1;
@@ -495,7 +527,9 @@ void parseExceptionDeviationFormat(proto_tree *tree, tvbuff_t *tvb, packet_info
static gint *ett[] =
{
&ett_opcua_array_NodeIdType,
+ &ett_opcua_array_NamingRuleType,
&ett_opcua_array_OpenFileMode,
+ &ett_opcua_array_TrustListMasks,
&ett_opcua_array_IdType,
&ett_opcua_array_NodeClass,
&ett_opcua_array_ApplicationType,
@@ -531,9 +565,15 @@ void registerEnumTypes(int proto)
{ &hf_opcua_NodeIdType,
{ "NodeIdType", "opcua.NodeIdType", FT_UINT32, BASE_HEX, VALS(g_NodeIdTypeTable), 0x0, NULL, HFILL }
},
+ { &hf_opcua_NamingRuleType,
+ { "NamingRuleType", "opcua.NamingRuleType", FT_UINT32, BASE_HEX, VALS(g_NamingRuleTypeTable), 0x0, NULL, HFILL }
+ },
{ &hf_opcua_OpenFileMode,
{ "OpenFileMode", "opcua.OpenFileMode", FT_UINT32, BASE_HEX, VALS(g_OpenFileModeTable), 0x0, NULL, HFILL }
},
+ { &hf_opcua_TrustListMasks,
+ { "TrustListMasks", "opcua.TrustListMasks", FT_UINT32, BASE_HEX, VALS(g_TrustListMasksTable), 0x0, NULL, HFILL }
+ },
{ &hf_opcua_IdType,
{ "IdType", "opcua.IdType", FT_UINT32, BASE_HEX, VALS(g_IdTypeTable), 0x0, NULL, HFILL }
},
diff --git a/plugins/opcua/opcua_enumparser.h b/plugins/opcua/opcua_enumparser.h
index a029f3d14b..bc10bb65e1 100644
--- a/plugins/opcua/opcua_enumparser.h
+++ b/plugins/opcua/opcua_enumparser.h
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Enum Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -24,7 +24,9 @@
#include <epan/packet.h>
extern gint ett_opcua_array_NodeIdType;
+extern gint ett_opcua_array_NamingRuleType;
extern gint ett_opcua_array_OpenFileMode;
+extern gint ett_opcua_array_TrustListMasks;
extern gint ett_opcua_array_IdType;
extern gint ett_opcua_array_NodeClass;
extern gint ett_opcua_array_ApplicationType;
@@ -51,7 +53,9 @@ extern gint ett_opcua_array_AxisScaleEnumeration;
extern gint ett_opcua_array_ExceptionDeviationFormat;
void parseNodeIdType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseNamingRuleType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseOpenFileMode(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseTrustListMasks(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseIdType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseNodeClass(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseApplicationType(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
diff --git a/plugins/opcua/opcua_extensionobjectids.h b/plugins/opcua/opcua_extensionobjectids.h
index 2d7e112c13..95fce73cde 100644
--- a/plugins/opcua/opcua_extensionobjectids.h
+++ b/plugins/opcua/opcua_extensionobjectids.h
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,11 +14,12 @@
**
** Description: OpcUa Extension Object IDs
**
-** This file was autogenerated on 10.06.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
+#define OpcUaId_TrustListDataType_Encoding_DefaultBinary 12680
#define OpcUaId_Node_Encoding_DefaultBinary 260
#define OpcUaId_InstanceNode_Encoding_DefaultBinary 11889
#define OpcUaId_TypeNode_Encoding_DefaultBinary 11890
@@ -33,13 +34,16 @@
#define OpcUaId_ReferenceNode_Encoding_DefaultBinary 287
#define OpcUaId_Argument_Encoding_DefaultBinary 298
#define OpcUaId_EnumValueType_Encoding_DefaultBinary 8251
+#define OpcUaId_OptionSet_Encoding_DefaultBinary 12765
#define OpcUaId_TimeZoneDataType_Encoding_DefaultBinary 8917
#define OpcUaId_ApplicationDescription_Encoding_DefaultBinary 310
#define OpcUaId_RequestHeader_Encoding_DefaultBinary 391
#define OpcUaId_ResponseHeader_Encoding_DefaultBinary 394
+#define OpcUaId_ServerOnNetwork_Encoding_DefaultBinary 12207
#define OpcUaId_UserTokenPolicy_Encoding_DefaultBinary 306
#define OpcUaId_EndpointDescription_Encoding_DefaultBinary 314
#define OpcUaId_RegisteredServer_Encoding_DefaultBinary 434
+#define OpcUaId_MdnsDiscoveryConfiguration_Encoding_DefaultBinary 12901
#define OpcUaId_ChannelSecurityToken_Encoding_DefaultBinary 443
#define OpcUaId_SignedSoftwareCertificate_Encoding_DefaultBinary 346
#define OpcUaId_SignatureData_Encoding_DefaultBinary 458
@@ -47,6 +51,7 @@
#define OpcUaId_AnonymousIdentityToken_Encoding_DefaultBinary 321
#define OpcUaId_UserNameIdentityToken_Encoding_DefaultBinary 324
#define OpcUaId_X509IdentityToken_Encoding_DefaultBinary 327
+#define OpcUaId_KerberosIdentityToken_Encoding_DefaultBinary 12509
#define OpcUaId_IssuedIdentityToken_Encoding_DefaultBinary 940
#define OpcUaId_NodeAttributes_Encoding_DefaultBinary 351
#define OpcUaId_ObjectAttributes_Encoding_DefaultBinary 354
diff --git a/plugins/opcua/opcua_extensionobjecttable.c b/plugins/opcua/opcua_extensionobjecttable.c
index f238caf16d..7d84a1068f 100644
--- a/plugins/opcua/opcua_extensionobjecttable.c
+++ b/plugins/opcua/opcua_extensionobjecttable.c
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: Service table and service dispatcher.
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -29,6 +29,7 @@
#include "opcua_hfindeces.h"
ExtensionObjectParserEntry g_arExtensionObjectParserTable[] = {
+ { OpcUaId_TrustListDataType_Encoding_DefaultBinary, parseTrustListDataType, "TrustListDataType" },
{ OpcUaId_Node_Encoding_DefaultBinary, parseNode, "Node" },
{ OpcUaId_InstanceNode_Encoding_DefaultBinary, parseInstanceNode, "InstanceNode" },
{ OpcUaId_TypeNode_Encoding_DefaultBinary, parseTypeNode, "TypeNode" },
@@ -43,13 +44,16 @@ ExtensionObjectParserEntry g_arExtensionObjectParserTable[] = {
{ OpcUaId_ReferenceNode_Encoding_DefaultBinary, parseReferenceNode, "ReferenceNode" },
{ OpcUaId_Argument_Encoding_DefaultBinary, parseArgument, "Argument" },
{ OpcUaId_EnumValueType_Encoding_DefaultBinary, parseEnumValueType, "EnumValueType" },
+ { OpcUaId_OptionSet_Encoding_DefaultBinary, parseOptionSet, "OptionSet" },
{ OpcUaId_TimeZoneDataType_Encoding_DefaultBinary, parseTimeZoneDataType, "TimeZoneDataType" },
{ OpcUaId_ApplicationDescription_Encoding_DefaultBinary, parseApplicationDescription, "ApplicationDescription" },
{ OpcUaId_RequestHeader_Encoding_DefaultBinary, parseRequestHeader, "RequestHeader" },
{ OpcUaId_ResponseHeader_Encoding_DefaultBinary, parseResponseHeader, "ResponseHeader" },
+ { OpcUaId_ServerOnNetwork_Encoding_DefaultBinary, parseServerOnNetwork, "ServerOnNetwork" },
{ OpcUaId_UserTokenPolicy_Encoding_DefaultBinary, parseUserTokenPolicy, "UserTokenPolicy" },
{ OpcUaId_EndpointDescription_Encoding_DefaultBinary, parseEndpointDescription, "EndpointDescription" },
{ OpcUaId_RegisteredServer_Encoding_DefaultBinary, parseRegisteredServer, "RegisteredServer" },
+ { OpcUaId_MdnsDiscoveryConfiguration_Encoding_DefaultBinary, parseMdnsDiscoveryConfiguration, "MdnsDiscoveryConfiguration" },
{ OpcUaId_ChannelSecurityToken_Encoding_DefaultBinary, parseChannelSecurityToken, "ChannelSecurityToken" },
{ OpcUaId_SignedSoftwareCertificate_Encoding_DefaultBinary, parseSignedSoftwareCertificate, "SignedSoftwareCertificate" },
{ OpcUaId_SignatureData_Encoding_DefaultBinary, parseSignatureData, "SignatureData" },
@@ -57,6 +61,7 @@ ExtensionObjectParserEntry g_arExtensionObjectParserTable[] = {
{ OpcUaId_AnonymousIdentityToken_Encoding_DefaultBinary, parseAnonymousIdentityToken, "AnonymousIdentityToken" },
{ OpcUaId_UserNameIdentityToken_Encoding_DefaultBinary, parseUserNameIdentityToken, "UserNameIdentityToken" },
{ OpcUaId_X509IdentityToken_Encoding_DefaultBinary, parseX509IdentityToken, "X509IdentityToken" },
+ { OpcUaId_KerberosIdentityToken_Encoding_DefaultBinary, parseKerberosIdentityToken, "KerberosIdentityToken" },
{ OpcUaId_IssuedIdentityToken_Encoding_DefaultBinary, parseIssuedIdentityToken, "IssuedIdentityToken" },
{ OpcUaId_NodeAttributes_Encoding_DefaultBinary, parseNodeAttributes, "NodeAttributes" },
{ OpcUaId_ObjectAttributes_Encoding_DefaultBinary, parseObjectAttributes, "ObjectAttributes" },
diff --git a/plugins/opcua/opcua_hfindeces.c b/plugins/opcua/opcua_hfindeces.c
index ce6075bfb3..46e5ad0cce 100644
--- a/plugins/opcua/opcua_hfindeces.c
+++ b/plugins/opcua/opcua_hfindeces.c
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: This file contains protocol field handles.
**
-** This file was autogenerated on 10.06.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
@@ -59,6 +59,7 @@ int hf_opcua_ClientUserIdHistory = -1;
int hf_opcua_ClientUserIdOfSession = -1;
int hf_opcua_ComplianceDate = -1;
int hf_opcua_ComplianceTool = -1;
+int hf_opcua_ConfigurationResults = -1;
int hf_opcua_ContainsNoLoops = -1;
int hf_opcua_ContinuationPoint = -1;
int hf_opcua_ContinuationPoints = -1;
@@ -89,6 +90,7 @@ int hf_opcua_DisabledMonitoredItemCount = -1;
int hf_opcua_DiscardOldest = -1;
int hf_opcua_DiscardedMessageCount = -1;
int hf_opcua_DiscoveryProfileUri = -1;
+int hf_opcua_DiscoveryUrl = -1;
int hf_opcua_DiscoveryUrls = -1;
int hf_opcua_Double = -1;
int hf_opcua_Doubles = -1;
@@ -133,8 +135,11 @@ int hf_opcua_IsReadModified = -1;
int hf_opcua_IssueDate = -1;
int hf_opcua_IssuedBy = -1;
int hf_opcua_IssuedTokenType = -1;
+int hf_opcua_IssuerCertificates = -1;
+int hf_opcua_IssuerCrls = -1;
int hf_opcua_IssuerEndpointUrl = -1;
int hf_opcua_Iteration = -1;
+int hf_opcua_LastCounterResetTime = -1;
int hf_opcua_LastMethodCall = -1;
int hf_opcua_LastMethodCallTime = -1;
int hf_opcua_LastTransitionTime = -1;
@@ -154,10 +159,12 @@ int hf_opcua_MaxLifetimeCount = -1;
int hf_opcua_MaxMessageSize = -1;
int hf_opcua_MaxMonitoredItemCount = -1;
int hf_opcua_MaxNotificationsPerPublish = -1;
+int hf_opcua_MaxRecordsToReturn = -1;
int hf_opcua_MaxReferencesToReturn = -1;
int hf_opcua_MaxRequestMessageSize = -1;
int hf_opcua_MaxResponseMessageSize = -1;
int hf_opcua_MaxStringLength = -1;
+int hf_opcua_MdnsServerName = -1;
int hf_opcua_Message = -1;
int hf_opcua_MinimumSamplingInterval = -1;
int hf_opcua_ModificationTime = -1;
@@ -195,6 +202,7 @@ int hf_opcua_PublishingInterval = -1;
int hf_opcua_PublishingIntervalCount = -1;
int hf_opcua_QueueSize = -1;
int hf_opcua_Real = -1;
+int hf_opcua_RecordId = -1;
int hf_opcua_RejectedRequestsCount = -1;
int hf_opcua_RejectedSessionCount = -1;
int hf_opcua_ReleaseContinuationPoint = -1;
@@ -240,8 +248,11 @@ int hf_opcua_SelectClauseResults = -1;
int hf_opcua_SemaphoreFilePath = -1;
int hf_opcua_SendInitialValues = -1;
int hf_opcua_SequenceNumber = -1;
+int hf_opcua_ServerCapabilities = -1;
+int hf_opcua_ServerCapabilityFilter = -1;
int hf_opcua_ServerCertificate = -1;
int hf_opcua_ServerId = -1;
+int hf_opcua_ServerName = -1;
int hf_opcua_ServerNonce = -1;
int hf_opcua_ServerProtocolVersion = -1;
int hf_opcua_ServerUri = -1;
@@ -255,7 +266,9 @@ int hf_opcua_SessionTimeoutCount = -1;
int hf_opcua_Signature = -1;
int hf_opcua_SoftwareVersion = -1;
int hf_opcua_SpecifiedAttributes = -1;
+int hf_opcua_SpecifiedLists = -1;
int hf_opcua_StartTime = -1;
+int hf_opcua_StartingRecordId = -1;
int hf_opcua_Status = -1;
int hf_opcua_StatusCode = -1;
int hf_opcua_StatusCodes = -1;
@@ -267,6 +280,7 @@ int hf_opcua_SubscriptionIds = -1;
int hf_opcua_Symmetric = -1;
int hf_opcua_TargetServerUri = -1;
int hf_opcua_TestId = -1;
+int hf_opcua_TicketData = -1;
int hf_opcua_TimeoutHint = -1;
int hf_opcua_Timestamp = -1;
int hf_opcua_TokenData = -1;
@@ -279,6 +293,8 @@ int hf_opcua_TransportProfileUri = -1;
int hf_opcua_TransportProtocol = -1;
int hf_opcua_TreatUncertainAsBad = -1;
int hf_opcua_TriggeringItemId = -1;
+int hf_opcua_TrustedCertificates = -1;
+int hf_opcua_TrustedCrls = -1;
int hf_opcua_UInt16 = -1;
int hf_opcua_UInt16s = -1;
int hf_opcua_UInt32 = -1;
@@ -297,6 +313,7 @@ int hf_opcua_UserAccessLevel = -1;
int hf_opcua_UserExecutable = -1;
int hf_opcua_UserName = -1;
int hf_opcua_UserWriteMask = -1;
+int hf_opcua_ValidBits = -1;
int hf_opcua_Value = -1;
int hf_opcua_ValueRank = -1;
int hf_opcua_VendorName = -1;
@@ -348,6 +365,7 @@ void registerFieldTypes(int proto)
{ &hf_opcua_ClientUserIdOfSession, { "ClientUserIdOfSession", "opcua.ClientUserIdOfSession", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ComplianceDate, { "ComplianceDate", "opcua.ComplianceDate", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ComplianceTool, { "ComplianceTool", "opcua.ComplianceTool", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_ConfigurationResults, { "ConfigurationResults", "opcua.ConfigurationResults", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ContainsNoLoops, { "ContainsNoLoops", "opcua.ContainsNoLoops", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ContinuationPoint, { "ContinuationPoint", "opcua.ContinuationPoint", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ContinuationPoints, { "ContinuationPoints", "opcua.ContinuationPoints", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
@@ -378,6 +396,7 @@ void registerFieldTypes(int proto)
{ &hf_opcua_DiscardOldest, { "DiscardOldest", "opcua.DiscardOldest", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_DiscardedMessageCount, { "DiscardedMessageCount", "opcua.DiscardedMessageCount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_DiscoveryProfileUri, { "DiscoveryProfileUri", "opcua.DiscoveryProfileUri", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_DiscoveryUrl, { "DiscoveryUrl", "opcua.DiscoveryUrl", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_DiscoveryUrls, { "DiscoveryUrls", "opcua.DiscoveryUrls", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Double, { "Double", "opcua.Double", FT_DOUBLE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Doubles, { "Doubles", "opcua.Doubles", FT_DOUBLE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
@@ -422,8 +441,11 @@ void registerFieldTypes(int proto)
{ &hf_opcua_IssueDate, { "IssueDate", "opcua.IssueDate", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_IssuedBy, { "IssuedBy", "opcua.IssuedBy", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_IssuedTokenType, { "IssuedTokenType", "opcua.IssuedTokenType", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_IssuerCertificates, { "IssuerCertificates", "opcua.IssuerCertificates", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_IssuerCrls, { "IssuerCrls", "opcua.IssuerCrls", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_IssuerEndpointUrl, { "IssuerEndpointUrl", "opcua.IssuerEndpointUrl", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Iteration, { "Iteration", "opcua.Iteration", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_LastCounterResetTime, { "LastCounterResetTime", "opcua.LastCounterResetTime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_LastMethodCall, { "LastMethodCall", "opcua.LastMethodCall", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_LastMethodCallTime, { "LastMethodCallTime", "opcua.LastMethodCallTime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_LastTransitionTime, { "LastTransitionTime", "opcua.LastTransitionTime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
@@ -443,10 +465,12 @@ void registerFieldTypes(int proto)
{ &hf_opcua_MaxMessageSize, { "MaxMessageSize", "opcua.MaxMessageSize", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxMonitoredItemCount, { "MaxMonitoredItemCount", "opcua.MaxMonitoredItemCount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxNotificationsPerPublish, { "MaxNotificationsPerPublish", "opcua.MaxNotificationsPerPublish", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_MaxRecordsToReturn, { "MaxRecordsToReturn", "opcua.MaxRecordsToReturn", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxReferencesToReturn, { "MaxReferencesToReturn", "opcua.MaxReferencesToReturn", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxRequestMessageSize, { "MaxRequestMessageSize", "opcua.MaxRequestMessageSize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxResponseMessageSize, { "MaxResponseMessageSize", "opcua.MaxResponseMessageSize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MaxStringLength, { "MaxStringLength", "opcua.MaxStringLength", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_MdnsServerName, { "MdnsServerName", "opcua.MdnsServerName", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Message, { "Message", "opcua.Message", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_MinimumSamplingInterval, { "MinimumSamplingInterval", "opcua.MinimumSamplingInterval", FT_DOUBLE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ModificationTime, { "ModificationTime", "opcua.ModificationTime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
@@ -484,6 +508,7 @@ void registerFieldTypes(int proto)
{ &hf_opcua_PublishingIntervalCount, { "PublishingIntervalCount", "opcua.PublishingIntervalCount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_QueueSize, { "QueueSize", "opcua.QueueSize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Real, { "Real", "opcua.Real", FT_DOUBLE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_RecordId, { "RecordId", "opcua.RecordId", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_RejectedRequestsCount, { "RejectedRequestsCount", "opcua.RejectedRequestsCount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_RejectedSessionCount, { "RejectedSessionCount", "opcua.RejectedSessionCount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ReleaseContinuationPoint, { "ReleaseContinuationPoint", "opcua.ReleaseContinuationPoint", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
@@ -529,8 +554,11 @@ void registerFieldTypes(int proto)
{ &hf_opcua_SemaphoreFilePath, { "SemaphoreFilePath", "opcua.SemaphoreFilePath", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_SendInitialValues, { "SendInitialValues", "opcua.SendInitialValues", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_SequenceNumber, { "SequenceNumber", "opcua.SequenceNumber", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_ServerCapabilities, { "ServerCapabilities", "opcua.ServerCapabilities", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_ServerCapabilityFilter, { "ServerCapabilityFilter", "opcua.ServerCapabilityFilter", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ServerCertificate, { "ServerCertificate", "opcua.ServerCertificate", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ServerId, { "ServerId", "opcua.ServerId", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_ServerName, { "ServerName", "opcua.ServerName", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ServerNonce, { "ServerNonce", "opcua.ServerNonce", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ServerProtocolVersion, { "ServerProtocolVersion", "opcua.ServerProtocolVersion", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ServerUri, { "ServerUri", "opcua.ServerUri", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
@@ -544,7 +572,9 @@ void registerFieldTypes(int proto)
{ &hf_opcua_Signature, { "Signature", "opcua.Signature", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_SoftwareVersion, { "SoftwareVersion", "opcua.SoftwareVersion", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_SpecifiedAttributes, { "SpecifiedAttributes", "opcua.SpecifiedAttributes", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_SpecifiedLists, { "SpecifiedLists", "opcua.SpecifiedLists", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_StartTime, { "StartTime", "opcua.StartTime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_StartingRecordId, { "StartingRecordId", "opcua.StartingRecordId", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Status, { "Status", "opcua.Status", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_StatusCode, { "StatusCode", "opcua.StatusCode", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_StatusCodes, { "StatusCodes", "opcua.StatusCodes", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL } },
@@ -556,6 +586,7 @@ void registerFieldTypes(int proto)
{ &hf_opcua_Symmetric, { "Symmetric", "opcua.Symmetric", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TargetServerUri, { "TargetServerUri", "opcua.TargetServerUri", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TestId, { "TestId", "opcua.TestId", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_TicketData, { "TicketData", "opcua.TicketData", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TimeoutHint, { "TimeoutHint", "opcua.TimeoutHint", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Timestamp, { "Timestamp", "opcua.Timestamp", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TokenData, { "TokenData", "opcua.TokenData", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
@@ -568,6 +599,8 @@ void registerFieldTypes(int proto)
{ &hf_opcua_TransportProtocol, { "TransportProtocol", "opcua.TransportProtocol", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TreatUncertainAsBad, { "TreatUncertainAsBad", "opcua.TreatUncertainAsBad", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_TriggeringItemId, { "TriggeringItemId", "opcua.TriggeringItemId", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_TrustedCertificates, { "TrustedCertificates", "opcua.TrustedCertificates", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_TrustedCrls, { "TrustedCrls", "opcua.TrustedCrls", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_UInt16, { "UInt16", "opcua.UInt16", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_UInt16s, { "UInt16s", "opcua.UInt16s", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_UInt32, { "UInt32", "opcua.UInt32", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
@@ -586,6 +619,7 @@ void registerFieldTypes(int proto)
{ &hf_opcua_UserExecutable, { "UserExecutable", "opcua.UserExecutable", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_UserName, { "UserName", "opcua.UserName", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_UserWriteMask, { "UserWriteMask", "opcua.UserWriteMask", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_opcua_ValidBits, { "ValidBits", "opcua.ValidBits", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_Value, { "Value", "opcua.Value", FT_FLOAT, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_ValueRank, { "ValueRank", "opcua.ValueRank", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
{ &hf_opcua_VendorName, { "VendorName", "opcua.VendorName", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL } },
diff --git a/plugins/opcua/opcua_hfindeces.h b/plugins/opcua/opcua_hfindeces.h
index 9b93649972..98ee275b74 100644
--- a/plugins/opcua/opcua_hfindeces.h
+++ b/plugins/opcua/opcua_hfindeces.h
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: This file contains protocol field handles.
**
-** This file was autogenerated on 10.06.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -57,6 +57,7 @@ extern int hf_opcua_ClientUserIdHistory;
extern int hf_opcua_ClientUserIdOfSession;
extern int hf_opcua_ComplianceDate;
extern int hf_opcua_ComplianceTool;
+extern int hf_opcua_ConfigurationResults;
extern int hf_opcua_ContainsNoLoops;
extern int hf_opcua_ContinuationPoint;
extern int hf_opcua_ContinuationPoints;
@@ -87,6 +88,7 @@ extern int hf_opcua_DisabledMonitoredItemCount;
extern int hf_opcua_DiscardOldest;
extern int hf_opcua_DiscardedMessageCount;
extern int hf_opcua_DiscoveryProfileUri;
+extern int hf_opcua_DiscoveryUrl;
extern int hf_opcua_DiscoveryUrls;
extern int hf_opcua_Double;
extern int hf_opcua_Doubles;
@@ -131,8 +133,11 @@ extern int hf_opcua_IsReadModified;
extern int hf_opcua_IssueDate;
extern int hf_opcua_IssuedBy;
extern int hf_opcua_IssuedTokenType;
+extern int hf_opcua_IssuerCertificates;
+extern int hf_opcua_IssuerCrls;
extern int hf_opcua_IssuerEndpointUrl;
extern int hf_opcua_Iteration;
+extern int hf_opcua_LastCounterResetTime;
extern int hf_opcua_LastMethodCall;
extern int hf_opcua_LastMethodCallTime;
extern int hf_opcua_LastTransitionTime;
@@ -152,10 +157,12 @@ extern int hf_opcua_MaxLifetimeCount;
extern int hf_opcua_MaxMessageSize;
extern int hf_opcua_MaxMonitoredItemCount;
extern int hf_opcua_MaxNotificationsPerPublish;
+extern int hf_opcua_MaxRecordsToReturn;
extern int hf_opcua_MaxReferencesToReturn;
extern int hf_opcua_MaxRequestMessageSize;
extern int hf_opcua_MaxResponseMessageSize;
extern int hf_opcua_MaxStringLength;
+extern int hf_opcua_MdnsServerName;
extern int hf_opcua_Message;
extern int hf_opcua_MinimumSamplingInterval;
extern int hf_opcua_ModificationTime;
@@ -193,6 +200,7 @@ extern int hf_opcua_PublishingInterval;
extern int hf_opcua_PublishingIntervalCount;
extern int hf_opcua_QueueSize;
extern int hf_opcua_Real;
+extern int hf_opcua_RecordId;
extern int hf_opcua_RejectedRequestsCount;
extern int hf_opcua_RejectedSessionCount;
extern int hf_opcua_ReleaseContinuationPoint;
@@ -238,8 +246,11 @@ extern int hf_opcua_SelectClauseResults;
extern int hf_opcua_SemaphoreFilePath;
extern int hf_opcua_SendInitialValues;
extern int hf_opcua_SequenceNumber;
+extern int hf_opcua_ServerCapabilities;
+extern int hf_opcua_ServerCapabilityFilter;
extern int hf_opcua_ServerCertificate;
extern int hf_opcua_ServerId;
+extern int hf_opcua_ServerName;
extern int hf_opcua_ServerNonce;
extern int hf_opcua_ServerProtocolVersion;
extern int hf_opcua_ServerUri;
@@ -253,7 +264,9 @@ extern int hf_opcua_SessionTimeoutCount;
extern int hf_opcua_Signature;
extern int hf_opcua_SoftwareVersion;
extern int hf_opcua_SpecifiedAttributes;
+extern int hf_opcua_SpecifiedLists;
extern int hf_opcua_StartTime;
+extern int hf_opcua_StartingRecordId;
extern int hf_opcua_Status;
extern int hf_opcua_StatusCode;
extern int hf_opcua_StatusCodes;
@@ -265,6 +278,7 @@ extern int hf_opcua_SubscriptionIds;
extern int hf_opcua_Symmetric;
extern int hf_opcua_TargetServerUri;
extern int hf_opcua_TestId;
+extern int hf_opcua_TicketData;
extern int hf_opcua_TimeoutHint;
extern int hf_opcua_Timestamp;
extern int hf_opcua_TokenData;
@@ -277,6 +291,8 @@ extern int hf_opcua_TransportProfileUri;
extern int hf_opcua_TransportProtocol;
extern int hf_opcua_TreatUncertainAsBad;
extern int hf_opcua_TriggeringItemId;
+extern int hf_opcua_TrustedCertificates;
+extern int hf_opcua_TrustedCrls;
extern int hf_opcua_UInt16;
extern int hf_opcua_UInt16s;
extern int hf_opcua_UInt32;
@@ -295,6 +311,7 @@ extern int hf_opcua_UserAccessLevel;
extern int hf_opcua_UserExecutable;
extern int hf_opcua_UserName;
extern int hf_opcua_UserWriteMask;
+extern int hf_opcua_ValidBits;
extern int hf_opcua_Value;
extern int hf_opcua_ValueRank;
extern int hf_opcua_VendorName;
diff --git a/plugins/opcua/opcua_serviceids.h b/plugins/opcua/opcua_serviceids.h
index d9c35cb8e5..cd61c36dac 100644
--- a/plugins/opcua/opcua_serviceids.h
+++ b/plugins/opcua/opcua_serviceids.h
@@ -14,7 +14,7 @@
**
** Description: OpcUa Service IDs
**
-** This file was autogenerated on 01.07.2015.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -23,10 +23,14 @@
#define OpcUaId_ServiceFault_Encoding_DefaultBinary 397
#define OpcUaId_FindServersRequest_Encoding_DefaultBinary 422
#define OpcUaId_FindServersResponse_Encoding_DefaultBinary 425
+#define OpcUaId_FindServersOnNetworkRequest_Encoding_DefaultBinary 12208
+#define OpcUaId_FindServersOnNetworkResponse_Encoding_DefaultBinary 12209
#define OpcUaId_GetEndpointsRequest_Encoding_DefaultBinary 428
#define OpcUaId_GetEndpointsResponse_Encoding_DefaultBinary 431
#define OpcUaId_RegisterServerRequest_Encoding_DefaultBinary 437
#define OpcUaId_RegisterServerResponse_Encoding_DefaultBinary 440
+#define OpcUaId_RegisterServer2Request_Encoding_DefaultBinary 12211
+#define OpcUaId_RegisterServer2Response_Encoding_DefaultBinary 12212
#define OpcUaId_OpenSecureChannelRequest_Encoding_DefaultBinary 446
#define OpcUaId_OpenSecureChannelResponse_Encoding_DefaultBinary 449
#define OpcUaId_CloseSecureChannelRequest_Encoding_DefaultBinary 452
@@ -103,10 +107,14 @@
#define OpcUaId_ServiceFault_Encoding_DefaultXml 396
#define OpcUaId_FindServersRequest_Encoding_DefaultXml 421
#define OpcUaId_FindServersResponse_Encoding_DefaultXml 424
+#define OpcUaId_FindServersOnNetworkRequest_Encoding_DefaultXml 12196
+#define OpcUaId_FindServersOnNetworkResponse_Encoding_DefaultXml 12197
#define OpcUaId_GetEndpointsRequest_Encoding_DefaultXml 427
#define OpcUaId_GetEndpointsResponse_Encoding_DefaultXml 430
#define OpcUaId_RegisterServerRequest_Encoding_DefaultXml 436
#define OpcUaId_RegisterServerResponse_Encoding_DefaultXml 439
+#define OpcUaId_RegisterServer2Request_Encoding_DefaultXml 12199
+#define OpcUaId_RegisterServer2Response_Encoding_DefaultXml 12200
#define OpcUaId_OpenSecureChannelRequest_Encoding_DefaultXml 445
#define OpcUaId_OpenSecureChannelResponse_Encoding_DefaultXml 448
#define OpcUaId_CloseSecureChannelRequest_Encoding_DefaultXml 451
diff --git a/plugins/opcua/opcua_serviceparser.c b/plugins/opcua/opcua_serviceparser.c
index 435e5d262c..d203149a8b 100644
--- a/plugins/opcua/opcua_serviceparser.c
+++ b/plugins/opcua/opcua_serviceparser.c
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Complex Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
@@ -34,6 +34,10 @@ gint ett_opcua_FindServersRequest = -1;
gint ett_opcua_array_FindServersRequest = -1;
gint ett_opcua_FindServersResponse = -1;
gint ett_opcua_array_FindServersResponse = -1;
+gint ett_opcua_FindServersOnNetworkRequest = -1;
+gint ett_opcua_array_FindServersOnNetworkRequest = -1;
+gint ett_opcua_FindServersOnNetworkResponse = -1;
+gint ett_opcua_array_FindServersOnNetworkResponse = -1;
gint ett_opcua_GetEndpointsRequest = -1;
gint ett_opcua_array_GetEndpointsRequest = -1;
gint ett_opcua_GetEndpointsResponse = -1;
@@ -42,6 +46,10 @@ gint ett_opcua_RegisterServerRequest = -1;
gint ett_opcua_array_RegisterServerRequest = -1;
gint ett_opcua_RegisterServerResponse = -1;
gint ett_opcua_array_RegisterServerResponse = -1;
+gint ett_opcua_RegisterServer2Request = -1;
+gint ett_opcua_array_RegisterServer2Request = -1;
+gint ett_opcua_RegisterServer2Response = -1;
+gint ett_opcua_array_RegisterServer2Response = -1;
gint ett_opcua_OpenSecureChannelRequest = -1;
gint ett_opcua_array_OpenSecureChannelRequest = -1;
gint ett_opcua_OpenSecureChannelResponse = -1;
@@ -218,6 +226,29 @@ void parseFindServersResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinf
parseArrayComplex(subtree, tvb, pinfo, pOffset, "Servers", "ApplicationDescription", parseApplicationDescription, ett_opcua_array_ApplicationDescription);
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseFindServersOnNetworkRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree(tree, tvb, *pOffset, -1, ett_opcua_FindServersOnNetworkRequest, &ti, "FindServersOnNetworkRequest");
+
+ parseRequestHeader(subtree, tvb, pinfo, pOffset, "RequestHeader");
+ parseUInt32(subtree, tvb, pinfo, pOffset, hf_opcua_StartingRecordId);
+ parseUInt32(subtree, tvb, pinfo, pOffset, hf_opcua_MaxRecordsToReturn);
+ /* Array length field ignored: NoOfServerCapabilityFilter */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "ServerCapabilityFilter", "String", hf_opcua_ServerCapabilityFilter, parseString, ett_opcua_array_String);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
+void parseFindServersOnNetworkResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree(tree, tvb, *pOffset, -1, ett_opcua_FindServersOnNetworkResponse, &ti, "FindServersOnNetworkResponse");
+
+ parseResponseHeader(subtree, tvb, pinfo, pOffset, "ResponseHeader");
+ parseDateTime(subtree, tvb, pinfo, pOffset, hf_opcua_LastCounterResetTime);
+ /* Array length field ignored: NoOfServers */
+ parseArrayComplex(subtree, tvb, pinfo, pOffset, "Servers", "ServerOnNetwork", parseServerOnNetwork, ett_opcua_array_ServerOnNetwork);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseGetEndpointsRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
{
proto_item *ti;
@@ -258,6 +289,29 @@ void parseRegisterServerResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *p
parseResponseHeader(subtree, tvb, pinfo, pOffset, "ResponseHeader");
proto_item_set_end(ti, tvb, *pOffset);
}
+void parseRegisterServer2Request(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree(tree, tvb, *pOffset, -1, ett_opcua_RegisterServer2Request, &ti, "RegisterServer2Request");
+
+ parseRequestHeader(subtree, tvb, pinfo, pOffset, "RequestHeader");
+ parseRegisteredServer(subtree, tvb, pinfo, pOffset, "Server");
+ /* Array length field ignored: NoOfDiscoveryConfiguration */
+ parseArrayComplex(subtree, tvb, pinfo, pOffset, "DiscoveryConfiguration", "ExtensionObject", parseExtensionObject, ett_opcua_array_ExtensionObject);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
+void parseRegisterServer2Response(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
+{
+ proto_item *ti;
+ proto_tree *subtree = proto_tree_add_subtree(tree, tvb, *pOffset, -1, ett_opcua_RegisterServer2Response, &ti, "RegisterServer2Response");
+
+ parseResponseHeader(subtree, tvb, pinfo, pOffset, "ResponseHeader");
+ /* Array length field ignored: NoOfConfigurationResults */
+ parseArraySimple(subtree, tvb, pinfo, pOffset, "ConfigurationResults", "StatusCode", hf_opcua_ConfigurationResults, parseStatusCode, ett_opcua_array_StatusCode);
+ /* Array length field ignored: NoOfDiagnosticInfos */
+ parseArrayComplex(subtree, tvb, pinfo, pOffset, "DiagnosticInfos", "DiagnosticInfo", parseDiagnosticInfo, ett_opcua_array_DiagnosticInfo);
+ proto_item_set_end(ti, tvb, *pOffset);
+}
void parseOpenSecureChannelRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset)
{
proto_item *ti;
@@ -1097,6 +1151,10 @@ static gint *ett[] =
&ett_opcua_array_FindServersRequest,
&ett_opcua_FindServersResponse,
&ett_opcua_array_FindServersResponse,
+ &ett_opcua_FindServersOnNetworkRequest,
+ &ett_opcua_array_FindServersOnNetworkRequest,
+ &ett_opcua_FindServersOnNetworkResponse,
+ &ett_opcua_array_FindServersOnNetworkResponse,
&ett_opcua_GetEndpointsRequest,
&ett_opcua_array_GetEndpointsRequest,
&ett_opcua_GetEndpointsResponse,
@@ -1105,6 +1163,10 @@ static gint *ett[] =
&ett_opcua_array_RegisterServerRequest,
&ett_opcua_RegisterServerResponse,
&ett_opcua_array_RegisterServerResponse,
+ &ett_opcua_RegisterServer2Request,
+ &ett_opcua_array_RegisterServer2Request,
+ &ett_opcua_RegisterServer2Response,
+ &ett_opcua_array_RegisterServer2Response,
&ett_opcua_OpenSecureChannelRequest,
&ett_opcua_array_OpenSecureChannelRequest,
&ett_opcua_OpenSecureChannelResponse,
diff --git a/plugins/opcua/opcua_serviceparser.h b/plugins/opcua/opcua_serviceparser.h
index c380613093..48ba77d900 100644
--- a/plugins/opcua/opcua_serviceparser.h
+++ b/plugins/opcua/opcua_serviceparser.h
@@ -1,5 +1,5 @@
/******************************************************************************
-** Copyright (C) 2006-2014 ascolab GmbH. All Rights Reserved.
+** Copyright (C) 2006-2015 ascolab GmbH. All Rights Reserved.
** Web: http://www.ascolab.com
**
** This program is free software; you can redistribute it and/or
@@ -14,7 +14,7 @@
**
** Description: OpcUa Service Type Parser
**
-** This file was autogenerated on 16.10.2014.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
** XXX - well, except that you may have to. See the README.
**
@@ -29,6 +29,10 @@ extern gint ett_opcua_FindServersRequest;
extern gint ett_opcua_array_FindServersRequest;
extern gint ett_opcua_FindServersResponse;
extern gint ett_opcua_array_FindServersResponse;
+extern gint ett_opcua_FindServersOnNetworkRequest;
+extern gint ett_opcua_array_FindServersOnNetworkRequest;
+extern gint ett_opcua_FindServersOnNetworkResponse;
+extern gint ett_opcua_array_FindServersOnNetworkResponse;
extern gint ett_opcua_GetEndpointsRequest;
extern gint ett_opcua_array_GetEndpointsRequest;
extern gint ett_opcua_GetEndpointsResponse;
@@ -37,6 +41,10 @@ extern gint ett_opcua_RegisterServerRequest;
extern gint ett_opcua_array_RegisterServerRequest;
extern gint ett_opcua_RegisterServerResponse;
extern gint ett_opcua_array_RegisterServerResponse;
+extern gint ett_opcua_RegisterServer2Request;
+extern gint ett_opcua_array_RegisterServer2Request;
+extern gint ett_opcua_RegisterServer2Response;
+extern gint ett_opcua_array_RegisterServer2Response;
extern gint ett_opcua_OpenSecureChannelRequest;
extern gint ett_opcua_array_OpenSecureChannelRequest;
extern gint ett_opcua_OpenSecureChannelResponse;
@@ -185,10 +193,14 @@ extern gint ett_opcua_array_TestStackExResponse;
void parseServiceFault(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseFindServersRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseFindServersResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseFindServersOnNetworkRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseFindServersOnNetworkResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseGetEndpointsRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseGetEndpointsResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseRegisterServerRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseRegisterServerResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseRegisterServer2Request(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
+void parseRegisterServer2Response(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseOpenSecureChannelRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseOpenSecureChannelResponse(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
void parseCloseSecureChannelRequest(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, gint *pOffset);
diff --git a/plugins/opcua/opcua_servicetable.c b/plugins/opcua/opcua_servicetable.c
index ef51133a5d..c257100e1b 100644
--- a/plugins/opcua/opcua_servicetable.c
+++ b/plugins/opcua/opcua_servicetable.c
@@ -14,7 +14,7 @@
**
** Description: Service table and service dispatcher.
**
-** This file was autogenerated on 01.07.2015.
+** This file was autogenerated on 13.10.2015.
** DON'T MODIFY THIS FILE!
**
******************************************************************************/
@@ -31,10 +31,14 @@ ParserEntry g_arParserTable[] = {
{ OpcUaId_ServiceFault_Encoding_DefaultBinary, parseServiceFault },
{ OpcUaId_FindServersRequest_Encoding_DefaultBinary, parseFindServersRequest },
{ OpcUaId_FindServersResponse_Encoding_DefaultBinary, parseFindServersResponse },
+ { OpcUaId_FindServersOnNetworkRequest_Encoding_DefaultBinary, parseFindServersOnNetworkRequest },
+ { OpcUaId_FindServersOnNetworkResponse_Encoding_DefaultBinary, parseFindServersOnNetworkResponse },
{ OpcUaId_GetEndpointsRequest_Encoding_DefaultBinary, parseGetEndpointsRequest },
{ OpcUaId_GetEndpointsResponse_Encoding_DefaultBinary, parseGetEndpointsResponse },
{ OpcUaId_RegisterServerRequest_Encoding_DefaultBinary, parseRegisterServerRequest },
{ OpcUaId_RegisterServerResponse_Encoding_DefaultBinary, parseRegisterServerResponse },
+ { OpcUaId_RegisterServer2Request_Encoding_DefaultBinary, parseRegisterServer2Request },
+ { OpcUaId_RegisterServer2Response_Encoding_DefaultBinary, parseRegisterServer2Response },
{ OpcUaId_OpenSecureChannelRequest_Encoding_DefaultBinary, parseOpenSecureChannelRequest },
{ OpcUaId_OpenSecureChannelResponse_Encoding_DefaultBinary, parseOpenSecureChannelResponse },
{ OpcUaId_CloseSecureChannelRequest_Encoding_DefaultBinary, parseCloseSecureChannelRequest },
@@ -115,10 +119,14 @@ const value_string g_requesttypes[] = {
{ OpcUaId_ServiceFault_Encoding_DefaultBinary, "ServiceFault" },
{ OpcUaId_FindServersRequest_Encoding_DefaultBinary, "FindServersRequest" },
{ OpcUaId_FindServersResponse_Encoding_DefaultBinary, "FindServersResponse" },
+ { OpcUaId_FindServersOnNetworkRequest_Encoding_DefaultBinary, "FindServersOnNetworkRequest" },
+ { OpcUaId_FindServersOnNetworkResponse_Encoding_DefaultBinary, "FindServersOnNetworkResponse" },
{ OpcUaId_GetEndpointsRequest_Encoding_DefaultBinary, "GetEndpointsRequest" },
{ OpcUaId_GetEndpointsResponse_Encoding_DefaultBinary, "GetEndpointsResponse" },
{ OpcUaId_RegisterServerRequest_Encoding_DefaultBinary, "RegisterServerRequest" },
{ OpcUaId_RegisterServerResponse_Encoding_DefaultBinary, "RegisterServerResponse" },
+ { OpcUaId_RegisterServer2Request_Encoding_DefaultBinary, "RegisterServer2Request" },
+ { OpcUaId_RegisterServer2Response_Encoding_DefaultBinary, "RegisterServer2Response" },
{ OpcUaId_OpenSecureChannelRequest_Encoding_DefaultBinary, "OpenSecureChannelRequest" },
{ OpcUaId_OpenSecureChannelResponse_Encoding_DefaultBinary, "OpenSecureChannelResponse" },
{ OpcUaId_CloseSecureChannelRequest_Encoding_DefaultBinary, "CloseSecureChannelRequest" },
@@ -194,10 +202,14 @@ const value_string g_requesttypes[] = {
{ OpcUaId_ServiceFault_Encoding_DefaultXml, "ServiceFault (XML Encoding)" },
{ OpcUaId_FindServersRequest_Encoding_DefaultXml, "FindServersRequest (XML Encoding)" },
{ OpcUaId_FindServersResponse_Encoding_DefaultXml, "FindServersResponse (XML Encoding)" },
+ { OpcUaId_FindServersOnNetworkRequest_Encoding_DefaultXml, "FindServersOnNetworkRequest (XML Encoding)" },
+ { OpcUaId_FindServersOnNetworkResponse_Encoding_DefaultXml, "FindServersOnNetworkResponse (XML Encoding)" },
{ OpcUaId_GetEndpointsRequest_Encoding_DefaultXml, "GetEndpointsRequest (XML Encoding)" },
{ OpcUaId_GetEndpointsResponse_Encoding_DefaultXml, "GetEndpointsResponse (XML Encoding)" },
{ OpcUaId_RegisterServerRequest_Encoding_DefaultXml, "RegisterServerRequest (XML Encoding)" },
{ OpcUaId_RegisterServerResponse_Encoding_DefaultXml, "RegisterServerResponse (XML Encoding)" },
+ { OpcUaId_RegisterServer2Request_Encoding_DefaultXml, "RegisterServer2Request (XML Encoding)" },
+ { OpcUaId_RegisterServer2Response_Encoding_DefaultXml, "RegisterServer2Response (XML Encoding)" },
{ OpcUaId_OpenSecureChannelRequest_Encoding_DefaultXml, "OpenSecureChannelRequest (XML Encoding)" },
{ OpcUaId_OpenSecureChannelResponse_Encoding_DefaultXml, "OpenSecureChannelResponse (XML Encoding)" },
{ OpcUaId_CloseSecureChannelRequest_Encoding_DefaultXml, "CloseSecureChannelRequest (XML Encoding)" },