summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Keller <Rainer.Keller@qt.io>2019-09-30 08:58:25 +0200
committerRainer Keller <Rainer.Keller@qt.io>2019-10-02 10:47:57 +0200
commitccf05a36efeb9f50c23283c5f9f2fefcfde4180a (patch)
treefb3d269692d02a2a5dbd7e705486e9c51c1ebf48
parent073b305d7f80b952c0d0858115fc102edd0339b4 (diff)
Revert "Fix endianness of GUID node ids"
Transferring integers in big endian format is wrong. The OPC-UA standard specifies in part 6 section 5.2.2.2 all values to be encoded in little endian order. This reverts commit 073b305d7f80b952c0d0858115fc102edd0339b4. Change-Id: I75ceeeeda6a629a6551465d6f428b1ee57b32db3 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
-rw-r--r--src/plugins/opcua/open62541/qopen62541valueconverter.cpp11
-rw-r--r--src/plugins/opcua/uacpp/quacppvalueconverter.cpp10
2 files changed, 8 insertions, 13 deletions
diff --git a/src/plugins/opcua/open62541/qopen62541valueconverter.cpp b/src/plugins/opcua/open62541/qopen62541valueconverter.cpp
index 5649137..d044c5c 100644
--- a/src/plugins/opcua/open62541/qopen62541valueconverter.cpp
+++ b/src/plugins/opcua/open62541/qopen62541valueconverter.cpp
@@ -313,10 +313,7 @@ QDateTime scalarToQt<QDateTime, UA_DateTime>(const UA_DateTime *data)
template<>
QUuid scalarToQt<QUuid, UA_Guid>(const UA_Guid *data)
{
- return QUuid(qFromBigEndian(data->data1),
- qFromBigEndian(data->data2),
- qFromBigEndian(data->data3),
- data->data4[0], data->data4[1], data->data4[2],
+ return QUuid(data->data1, data->data2, data->data3, data->data4[0], data->data4[1], data->data4[2],
data->data4[3], data->data4[4], data->data4[5], data->data4[6], data->data4[7]);
}
@@ -518,9 +515,9 @@ void scalarFromQt<UA_QualifiedName, QOpcUaQualifiedName>(const QOpcUaQualifiedNa
template<>
void scalarFromQt<UA_Guid, QUuid>(const QUuid &value, UA_Guid *ptr)
{
- ptr->data1 = qToBigEndian(value.data1);
- ptr->data2 = qToBigEndian(value.data2);
- ptr->data3 = qToBigEndian(value.data3);
+ ptr->data1 = value.data1;
+ ptr->data2 = value.data2;
+ ptr->data3 = value.data3;
std::memcpy(ptr->data4, value.data4, sizeof(value.data4));
}
diff --git a/src/plugins/opcua/uacpp/quacppvalueconverter.cpp b/src/plugins/opcua/uacpp/quacppvalueconverter.cpp
index 0b2133f..3aac31d 100644
--- a/src/plugins/opcua/uacpp/quacppvalueconverter.cpp
+++ b/src/plugins/opcua/uacpp/quacppvalueconverter.cpp
@@ -186,9 +186,7 @@ template<>
QVariant scalarToQVariant<QUuid, OpcUa_Guid>(OpcUa_Guid *data, QMetaType::Type type)
{
Q_UNUSED(type)
- return QUuid(qFromBigEndian<uint>(data->Data1),
- qFromBigEndian(data->Data2),
- qFromBigEndian(data->Data3),
+ return QUuid(data->Data1, data->Data2, data->Data3,
data->Data4[0], data->Data4[1], data->Data4[2], data->Data4[3],
data->Data4[4], data->Data4[5], data->Data4[6], data->Data4[7]);
}
@@ -531,9 +529,9 @@ template<>
void scalarFromQVariant<OpcUa_Guid, QUuid>(const QVariant &var, OpcUa_Guid *ptr)
{
const QUuid uuid = var.toUuid();
- ptr->Data1 = qToBigEndian(uuid.data1);
- ptr->Data2 = qToBigEndian(uuid.data2);
- ptr->Data3 = qToBigEndian(uuid.data3);
+ ptr->Data1 = uuid.data1;
+ ptr->Data2 = uuid.data2;
+ ptr->Data3 = uuid.data3;
memcpy(ptr->Data4, uuid.data4, sizeof(uuid.data4));
}