summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Fix status code handling for monitored itemsJannis Voelker2024-04-084-0/+66
| | | | | | | | | | | | | The DataValue delivered by a data change notification may have a status code. Such a status code should be reported to the node object instead of setting it to Good. [ChangeLog][QOpcUaNode] Report the right status code for monitored item updates Change-Id: I2a62a475fca51eb0a95faef9bcc94037a58277c6 Pick-to: 6.7 6.6 6.5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Correct license for test filesLucie Gérard2024-03-2634-34/+34
| | | | | | | | | | | | According to QUIP-18 [1], all test files should be LicenseRef-Qt-Commercial OR GPL-3.0-only [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: Ie471cddda8cdb714640c4cbd15ac39c6911280c4 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Remove convenience and bool traps from the new APIJannis Voelker2024-03-041-14/+15
| | | | | | | | | The removal of default parameters now permits forward declarations for some of the includes. Pick-to: 6.7 Change-Id: Ie1e2392b7398a628454dead5630ec2505d0d2c6d Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Move BinaryDataEncoding template specializations to source fileJannis Voelker2024-03-041-0/+11
| | | | | | | | | | Add forward declarations in qopcuabinarydataencoding.h where applicable. Pick-to: 6.7 Change-Id: Iafb1b00a1434338a55fb54cfa527f52df241a4d3 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Use forward declarations in new headersJannis Voelker2024-02-292-0/+3
| | | | | | Pick-to: 6.7 Change-Id: I1a433385e19723f34a1e16fe733528ff53bfc98e Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Swap type and value arguments for QOpcUaVariantJannis Voelker2024-02-291-2/+2
| | | | | | Pick-to: 6.7 Change-Id: I28b720d97e21dbf441f699a1ee716e11ef05281b Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Rename QOpcUaGenericStructHandler::initializeFinished to initializedChanged()Jannis Voelker2024-02-291-3/+3
| | | | | | Pick-to: 6.7 Change-Id: I05e5e143eb74b7cd51dcbd6498af5a194ca296c0 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Fix compiler warnings from signed/unsigned mismatchesVolker Hilsheimer2024-02-201-2/+2
| | | | | | Pick-to: 6.7 Change-Id: I835488b964142f24e509ed8010fb23e7a53c67f1 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Use std::optional instead of bool to indicate success of de/encodingVolker Hilsheimer2024-02-201-126/+115
| | | | | | | | | | | | | | | QOpcUaGenericStructHandler is a new class in Qt 6.7, and has two functions that return values but might fail. The modern C++ way of doing this is to return a std::optional, rather than return a bool with the value returned through an out-parameter (or a default- constructed value with a boolean out-parameter to indicate success). Found during API review. Pick-to: 6.7 Change-Id: Ib2ba6098f53eccab73beace6844028d0b674ca65 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Fix race condition in tst_clientSetupInCppJannis Voelker2024-01-301-0/+5
| | | | | | | | | | If the client is not deleted before the destructor of the class registered for QML returns, a qDebug call from inside the client causes a segfault. Pick-to: 6.7 6.6 Change-Id: Idf26d0127103e9a30773bcbca3bddc4755b57cfa Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix segfault during connect test shutdownJannis Voelker2024-01-301-0/+9
| | | | | | | | | This change ensures that all asynchronous backend activity is stopped before the destructor returns. Change-Id: I16d34027e41e5658a771ae099c9a7b027d765e86 Pick-to: 6.7 6.6 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Enable CMake autotestsJoerg Bornemann2024-01-242-4/+5
| | | | | | | Task-number: QTBUG-84884 Change-Id: Ica0bf2f15c58b8281328376bbdd4ae823db2fe76 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Implement triggering for monitored itemsJannis Voelker2023-12-071-0/+168
| | | | | | | | | | | | This change adds an API to create and remove a triggering link between two monitored items on the same subscription. [ChangeLog][Qt OPC UA] QOpcUaNode now supports SetTriggering to set up a triggering link between two monitored items. Change-Id: Ieea1ccf78d8f71d7bde4cd1487d5926ec6ae988c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add encoding and decoding support for Variant and DataValueJannis Voelker2023-12-0613-154/+635
| | | | | | | | | | | This change adds support for the built-in types Variant and DataValue to QOpcUaBinaryDataEncoding and QOpcUaGenericStructHandler. Structures containing fields of these types can now be decoded and encoded. Change-Id: If3f5dd18910f668f61bf37eed10b5d5f947e2f31 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Add historical events read supportJannis Voelker2023-12-064-1/+402
| | | | | | | | | | | | | | | This change adds the new classes QOpcUaHistoryReadEventRequest and QOpcUaHistoryEvent and extends QOpcUaClient, QOpcUaNode and QOpcUaHistoryReadResponse with the necessary API to read historical events from a server. [ChangeLog][Historical data access] Qt OPC UA is now capable of reading historical events with the open62541 plugin Change-Id: I2ac41ec86b226d853cd065b340e3eaecbfb81ca6 Task-number: QTBUG-111745 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Remove OpenSSL 1.1 supportJannis Voelker2023-11-281-1/+1
| | | | | | | | | OpenSSL 1.1 is no longer supported by qtbase and checking for QT_FEATURE(opensslv11) leads to a build error. Change-Id: I823278eec8f00f183404e18289a36262109165e7 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Speed up the C++ testsJannis Voelker2023-11-235-35/+144
| | | | | | | | | By reordering and conditional execution of QSignalSpy::wait() and reducing some wait times when no signal is expected, the test runtimes could be greatly reduced. Change-Id: Ie28b27db6d636e0bb8c615860772a15febb18ce0 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Remove the UACPP pluginJannis Voelker2023-11-2013-237/+152
| | | | | | | | | | | | | | The Unified Automation plugin was only partially ported to Qt 6 and was since then mostly unmaintained. New feature introduced since 5.15 and later were only available for the open62541 backend. [ChangeLog][Qt OPC UA] The Unified Automation backend has been removed. The open62541 backend will be able to act as a drop-in replacement for everything except the connectError() signal. Change-Id: I7e859133bb973256cdfe8eb9b6949379acb689b9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Vladimir Minenko <vladimir.minenko@qt.io>
* Add API for the RegisterNodes and UnregisterNodes servicesJannis Voelker2023-10-251-0/+40
| | | | | | | | | [ChangeLog][QOpcUaClient] QOpcUaClient now supports registerNodes() and unregisterNodes() with the open62541 plugin. Change-Id: I9f9137c2cbd31e45e6e9b455d23194994b16c424 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix continuation points release for history read rawJannis Voelker2023-09-261-0/+37
| | | | | | | | | | Releasing continuation points after having called readMoreData() at least once could lead to continuation points not being released if there was no continuation point for at least one of the nodes. Change-Id: I09f914cc704365b57edcd82d01dd30c1350693b3 Pick-to: 6.5 6.6 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix issues pointed out by clazyJannis Voelker2023-09-266-27/+20
| | | | | Change-Id: Ia530dd568f2247f6aca97253b8f28dd99392b956 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Extend test coverageJannis Voelker2023-09-222-5/+712
| | | | | | | | | - Reduce number of references per node in the test server to force continuation points - Test adding and removing all node classes Change-Id: I37abf70a22319152522af29929b5c7236a38c564 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* open62541: Fix modifyMonitoring() and disableMonitoring()Jannis Voelker2023-09-221-10/+62
| | | | | | | | | | | - Due to a broken check for changes, there were sometimes additional parameters in the monitoringStatusChanged() signal. - Calling disableMonitoring() for an attribute without monitored item didn't lead to a disableMonitoringFinished() signal. Change-Id: I1ab7f1a999319ea74bd545f05cb9c395e3534ab8 Pick-to: 6.5 6.6 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add read and write support for EventFilter and types it depends onJannis Voelker2023-09-212-0/+72
| | | | | | | | | | | | | | Part 11 of the OPC UA specification defines the HistoricalEventNode object type which has a mandatory property named HistoricalEventFilter which determines which events and which of their fields are historized. Reading this property requires support for reading the EventFilter type and all types it depends on. [ChangeLog][open62541 plugin] The open62541 plugin is now capable of reading and writing EventFilter and its dependency types. Change-Id: Ibbacbab04bd6ef0ba3c1eb348a6811e76ad9100c Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add generic struct handlerJannis Voelker2023-09-1317-6/+3538
| | | | | | | | | | | | | | | | This change adds a class which traverses the data type hierarchy of an OPC UA server and provides a method to decode and encode generic structured types from/to extension objects. The server must expose the structure definition in the DataTypeDefinition attribute of the DataType node. [ChangeLog][Qt OPC UA] Qt OPC UA has been extended with a generic struct handler which enables the user to automatically decode structured types having the DataTypeDefintion attribute set. Change-Id: Ia1125f68d7da3c2687e8900bbc66d3312e10b837 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add the DiagnosticInfo data typeJannis Voelker2023-09-112-1/+86
| | | | | | | | | | | | | | | | | | | | DiagnosticInfo is a built-in OPC UA type which is used together with a string table in the response header to provide additional diagnostics for a service call. We don't expose the string table but we need this type to support generic type decoding (for example, TransferResultErrorDataType in the DI model contains a DiagnosticInfo field. Reading and writing the new type is currently only supported in the open62541 plugin. QOpcUaBinaryDataEncoding has been extended to encode and decode the new types. [ChangeLog][Qt OPC UA] The DiagnosticInfo data type is now available for reading and writing. Change-Id: I3828d665e3450c0d6281d15da008d6c70b61c396 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add support for the DataTypeDefinition attributeJannis Voelker2023-09-112-0/+258
| | | | | | | | | | | | | | | | | | | | | | This change extends the node attribute enum with the DataTypeDefinition attribute and adds the necessary new types for reading and writing: - QOpcUaStructureField - QOpcUaStructureDefinition - QOpcUaEnumField - QOpcUaEnumDefinition Reading and writing the new types is currently only supported in the open62541 plugin. QOpcUaBinaryDataEncoding has been extended to encode and decode the new types. The DataType attribute contains the full description of the data type and enabled the user to generically decode binary encoded extension objects. [ChangeLog][QOpcUaNode] The DataTypeDefinition attribute of DataType nodes can now be read. This allows manual decoding of generic structured and enum types. Change-Id: I9ca5b3a8f30e7929e194b370d307261f6293747d Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* open62541: Re-encode unhandled types to QOpcUaExtensionObjectJannis Voelker2023-09-074-0/+222
| | | | | | | | | | | | | | | | | Depending on its configuration, the open62541 stack decodes several data types we don't have Qt types for. This patch adds the capability to re-encode them into an extension object to allow the user to decode the data using QpcUaBinaryDataEncoding. This makes the plugin more robust against different build variants of open62541 and the current parameter set becomes a minimal requirement. [ChangeLog][open62541 plugin] Unknown types that are decoded by the stack and have no Qt OPC UA data classes will now be re-encoded and returned as extension object instead of an empty QVariant. Change-Id: I16408e6adf4f16e38430b32c6496c64b32becf62 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Encode 0 node id for empty stringJannis Voelker2023-09-071-0/+16
| | | | | | | | | | | | | Passing an empty string to QOpcUaBinaryDataEncodung::encode() for NodeId leads to an encoding error. This change adds ns=0;i=0 as fallback value so the user is not forced to initialize unused node id struct members. [ChangeLog][QOpcUaBinaryDataEncoding] Encoding empty strings as node id is now permitted. Change-Id: I71757ca9db22397816f3715820f7907c3aa2e710 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Add valueAttributeUpdated signalJannis Voelker2023-08-251-0/+34
| | | | | | | | | | | The value attribute is the most used node attribute in usual scenarios. A single-purpose signal for value attribute updates allows connecting it directly to slots taking a QVariant without having to filter for the value attribute like in attributeUpdated(). Task-number: QTBUG-105519 Change-Id: Iedd78d1e369d6de2f9ef39f21764466c3721e78b Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Update events test with new features in open62541 1.3Jannis Voelker2023-08-251-20/+53
| | | | | | | | | | | The support for the where clause has been greatly improved in open62541 1.3, so we can finally enable the severity filter test in Tst_QOpcUaClient::eventSubscription(). Task-number: QTBUG-75555 Change-Id: I54a6b81083a08cb1fec6a7fa4e4aa4090b9aa0b2 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Mark the whole repo with QT_NO_CONTEXTLESS_CONNECTAhmad Samir2023-08-221-2/+6
| | | | | | | | | | | By adding it to the default build flags via .cmake.conf. This amends commit c44fa839135e494f9d7fb6ffcf759ed1f4bf6952. Task-number: QTBUG-116296 Change-Id: I275c90db11ecec05cc043b03c0268744b5d96644 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* X.509 tests: Expect fail if the OpenSSL executable is not presentJannis Voelker2023-08-211-0/+2
| | | | | | Change-Id: I6cfec417f3d165104b7da8d6e43f9a5eb29d599f Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Handle OpenSSL with disabled SHA-1 signatures (open62541)Jannis Voelker2023-08-104-10/+38
| | | | | | | | | | | | | RHEL 9 ships the OpenSSL libraries with SHA-1 signatures disabled. The security policies Basic128Rsa15 and Basic256 rely on SHA-1 which renders them unsupported on this platform. This change checks for support and removes the two policies from the list returned by QOpcUaClient::supportedSecurityPolicies() and the endpoints in the test server if necessary. Change-Id: I7bf9f903b159d794ef02163760d0c4c4781538e9 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* BLACKLIST: connectAndDisconnectSecureUnencryptedKey for RHEL 9.2Tero Heikkinen2023-08-071-0/+1
| | | | | | | | | Continuing to blacklist this now and removing from blacklist when fix is merged. Was meant to be fixed ASAP last time. Task-number: QTBUG-106285 Change-Id: I2983700ae5568b5561eb20ccd05015405f6cceae Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Fix and improve X.509 key usage and extended key usageJannis Voelker2023-07-281-1/+11
| | | | | | | | | | | - Fix extended key usage with OpenSSL 3.0 - Client certificates need extended key usage clientAuth - Add new certificate to the OPC UA viewer example Change-Id: Ib0664bc4fc1edb4e5d3b6f78e1cdfc9e9655ac7c Pick-to: 6.5 Pick-to: 6.6 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Remove remains of qmake conversion from CMakeLists.txt filesFriedemann Kleint2023-02-1011-83/+9
| | | | | | | Pick-to: 6.5 Change-Id: I17b48757cf0de6b123c96db4dfc7d227c6384071 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* BLACKLIST: connectAndDisconnectSecureUnencryptedKey for Red Hat 9Heikki Halmet2022-11-201-0/+3
| | | | | | | | | | Let's blacklist this now and remove the blacklisting when fix is merged. Should be fixed ASAP. Task-number: QTBUG-106285 Change-Id: If9a179df2f25574326cc1df4905cbb161647973b Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Update open62541 to 1.3Martin Klos2022-11-116-52/+41
| | | | | | | | | The open62541 plugin now supports the Aes128_Sha256_RsaOaep security policy. MacOS on M1 has been disabled due to issue #5198 in open62541. Change-Id: I8b1cf704a9a0532fa9eb2c9099cac62ac9263a49 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-073-5/+5
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: Ica78a615605aebc9c592d12840e9ddbbc19af430 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Port from container::count() and length() to size()Marc Mutz2022-10-074-71/+71
| | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8: auto QtContainerClass = anyOf( expr(hasType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))))).bind(o), expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)); makeRule(cxxMemberCallExpr(on(QtContainerClass), callee(cxxMethodDecl(hasAnyName({"count", "length"), parameterCountIs(0))))), changeTo(cat(access(o, cat("size"), "()"))), cat("use 'size()' instead of 'count()/length()'")) a.k.a qt-port-to-std-compatible-api with config Scope: 'Container', with the extended set of container classes recognized. Change-Id: Iab31277267e17fb52d08da1144970739be31f54f Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Blacklist the failing opcua::AbsoluteNodeTestJani Heikkinen2022-09-231-0/+3
| | | | | | | | | open62541: Assign int value to double node::test_nodeTest() Pick-to: 6.4 Task-number: QTBUG-104418 Change-Id: Idf92bcc259a06e7a91143d3b3abf7f917943613f Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-08-2512-12/+12
| | | | | | | Task-number: QTBUG-105718 Change-Id: Ia8401e033fc4b7414e798d1cc5da90977ad5f29b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* CMake: Don't use PUBLIC_LIBRARIES for tests and test helpersAlexandru Croitor2022-07-288-10/+10
| | | | | Change-Id: Ie1019a00dd76a5d3a37cac10c44a424b4708b536 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-0712-0/+36
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I775b4a5dd13b8e930cef494af42f81ec6f8b242a Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-1635-1330/+70
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I5678b086dc1da06fc2045a82b5678949b40f267e Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Disable tests for Android for QtOpCua because they rely on QProcessAssam Boudjelthia2022-05-201-9/+11
| | | | | | | | | | | | | | | The tests are relying on QProcess to run a server that should be packaged with the test, Android has a limitation that prevents running such server with QProcess, thus the tests won't work. Since it seems all tests are using that same mechanism here, that's why disabling them seem better to avoid building, running and then just skipping at the end. Task-number: QTBUG-88846 Pick-to: 6.2 6.3 Change-Id: I50a08f03e2486f9fcf08f753e44a1641b650e326 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Remove .prev_CMakeLists.txtKai Köhne2022-03-221-93/+0
| | | | | | | | Amends fc9ee3e00 Pick-to: 6.3 Change-Id: Ida41cb7d8db01999db845bc5081d4cce6f902a05 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Remove version numbers from QML importsKai Köhne2022-03-1424-50/+50
| | | | | | | | | | | Explicit version numbers in QML imports are optional since Qt 6, and actually not recommended. Pick-to: 6.3 Fixes: QTBUG-99989 Change-Id: Ife02a1b7ca97215ccc39e20013715cb10ce55b3e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* OpcUA: Fix attribution of Open62541Kai Köhne2022-02-211-23/+0
| | | | | | | | | | | | | | Open62541 is already attributed in src/3rdparty/open62541/qt_attribution.json. Remove the second qt_attribution.json file. List actually all licenses that are mentioned in the sources. [ChangeLog][Third-Party Code] Complete list of licenses in opengl62541 files: MPL-2.0, CC0-1.0, CC-BY-SA-4.0, BSD-3-Clause, Apache-2.0, and MIT Pick-to: 6.3 Change-Id: I8080748563d71838b38e0f5975559e6980a4f0b3 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>