summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Don't give plugins PUBLIC usage requirementsJoerg Bornemann2021-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | The pro2cmake.py conversion script faithfully reproduced the .pro files for the plugins, which specified the libraries as public. But in CMake, the implications of this are that public usage requirements should then be propagated to consumers. We don't expect any consumers, since a plugin is created as a MODULE library in CMake, so for Windows we don't even have an import library to link with. The only exception to this is for static builds where plugins are created as STATIC libraries instead, but only in certain controlled situations do we then link to plugins. Even then, usage requirements are not expected to propagate to the consumers, so these relationships should always be specified as private. Pick-to: 6.2 Task-number: QTBUG-90819 Change-Id: I7db09e5cc0f0e7179d2d6da2acf3c1eadc02f8e2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Modernize QML moduleUlf Hermann2021-07-0273-1027/+791
| | | | | | | | Use declarative type registration, and create a proper backing library for the QML-exposed types. Change-Id: I56c6a3acd6e6c8ea2c1ac24435b8601f562dbaf6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Avoid even more const char * to QString conversionsUlf Hermann2021-07-021-2/+2
| | | | | | | Let's see if I've finally found them all. Change-Id: I8b9678b7fef0b509ac14c0605163a18708cc2194 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Avoid further implicit constructions of QString from const char *Ulf Hermann2021-07-023-8/+9
| | | | | | Change-Id: I35085649ee1b258669a834928dab3c9661d61257 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
* Change all QString("foo") constructions to use QStringLiteralUlf Hermann2021-07-013-8/+16
| | | | | | | | You should not construct QStrings directly from C string literals. Change-Id: I4185376ab62d19c26864afe656e4d7236d20d44c Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Doc: Fix broken linkPaul Wicking2021-06-251-1/+1
| | | | | | | | .org was missing from the URL. Pick-to: 6.2 Change-Id: I3868814a62b27144ea6754953bfd404c9c1f10af Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* fix wrong conditionLi Xinwei2021-06-221-1/+1
| | | | | | | | Windows 10 non-arm64 shouldn't be excluded for openssl. Pick-to: 6.2 Change-Id: I9ea0ae7a86f17aa4f00a2f6f119a59a994a66180 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Remove old configure-related filesJoerg Bornemann2021-06-173-216/+0
| | | | | | | | | | | | | Remove the configure.json and configure.pri files that were used for the qmake-based configure. Remove the .prev_*.cmake files that were a by-product of configurejson2cmake.py. Pick-to: 6.2 Task-number: QTBUG-89536 Change-Id: Ia9b0ed4dd8108d5a43cb5b6e878ac003d2d54f10 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Avoid compile errorUlf Hermann2021-06-111-1/+1
| | | | | | | | It was trying to cast a QStringBuilder to QVariant. That only works via explicit conversion to QString. Change-Id: I2785e4c6ad0d5cc10fa301ae131019cf11a8931b Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Port to new CMake APIUlf Hermann2021-06-053-26/+12
| | | | | | | | | This is a low-risk port to the new CMake API. It leaves all the procedural registration intact and just uses the new CMake syntax. Change-Id: I9162b905afb510b7403ef6eb61b46b01325e7b72 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix MSVC warning C4267Kai Köhne2021-06-021-1/+1
| | | | | | | qopen62541backend.cpp(1329): warning C4267: 'argument': conversion from 'size_t' to 'quint32', possible loss of data Change-Id: Ia79c25910fb4830658fb1f85cdcfe109232715f3 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Replace QVariant::Int with QMetaType::IntKai Köhne2021-05-281-2/+2
| | | | | | | | | Fixes warning opcuarelativenodepath.cpp(143): warning C4996: 'QVariant::Type': Use QMetaType::Type instead. opcuarelativenodepath.cpp(180): warning C4996: 'QVariant::Type': Use QMetaType::Type instead. Change-Id: Ie0521a62758abdd36612970a9f8d8ced548fca61 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix MSVC warning C4005 in open62541.cKai Köhne2021-05-271-1/+1
| | | | | | | Upstream merge request: https://github.com/open62541/open62541/pull/4439 Change-Id: I70ebdef6472a559a9374398563e61e2e0d9f4466 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Disable OpenSSL for Windows 10 on ARM64Jannis Voelker2021-05-261-1/+3
| | | | | | | | | | | | The CI does not yet have OpenSSL libs for this platform. CMake detects the amd64 libraries and the build fails at the linking step. Task-number: QTBUG-93822 Change-Id: I0d762d5934593761a972465cacb86f50dbd593bc Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* CMake: Disable usage of CMake API compatibility wrappersJoerg Bornemann2021-05-251-1/+1
| | | | | | | | | | Setting the QT_NO_INTERNAL_COMPATIBILITY_FUNCTIONS variable in the project ensures we ported away from old API calls. Task-number: QTBUG-86815 Change-Id: I58d7107f556e2f06ecf5b47fab65ccec7d929b6d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove left-over .pri filesJoerg Bornemann2021-05-053-163/+0
| | | | | | Task-number: QTBUG-88742 Change-Id: I0fc4e447a998566f1910ce553371183516d85c90 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove qmake project filesJoerg Bornemann2021-05-0313-443/+0
| | | | | | | Task-number: QTBUG-88742 Change-Id: I6ff996f29cb57d08983920080e2c0dee5caee3a5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Doc: Fix documentation issuesTopi Reinio2021-04-2621-75/+74
| | | | | | | Pick-to: 6.1 Task-number: QTBUG-91875 Change-Id: Ie6bfd6b72cc5896968a319724938d739932a80eb Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* update nodeids from scheme v1.04Pascal Dietz2021-04-162-238/+17524
| | | | | Change-Id: I966cc6c92d67b0de2275253332595c7218e6912e Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix declarative node idJannis Voelker2021-04-081-1/+1
| | | | | | | | | | Emitting nodeIdChanged with a const parameter leads to the nodeId property being frozen in QML. Fixes: QTBUG-91520 Change-Id: I70152b1e9a60d977f17c69af8b75ede4237b833e Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix top-level buildJoerg Bornemann2021-02-256-27/+26
| | | | | | | | | | Use CMake API level 3 to avoid function name clashes with qt_add_qml_module from qtdeclarative when doing a top-level build. Fixes: QTBUG-91256 Pick-to: 6.1 6.0 Change-Id: I5cce0d94f655c738e2bb097ef85f408aa4f020a5 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* open62541: Use the async API for most service callsJannis Voelker2021-02-025-272/+619
| | | | | | | | | | | | | | | | - Read / Write - Browse - TranslateBrowsePathsToNodeIDs - Call - AddNodes / DeleteNodes - AddReferences / DeleteReferences This fixes the disconnect of the open62541 backend when a service call mentioned in the list above takes longer than the default timeout of 5 seconds. Change-Id: Ib991b8bb90651969a138fd70523aaac960d7715f Task-number: QTBUG-86360 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix race condition in declarative OpcUaNodeJannis Voelker2021-02-012-7/+28
| | | | | | | | This change fixes a race condition where an update from the old node was signalled after the cache had been invalidated. Change-Id: I6c8a3e092b10b4cd08917cdfeff1e7e01f0028be Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix MSVC static buildJoerg Bornemann2021-01-291-3/+3
| | | | | | | | | | | | The precompiled header of the MSVC static build is not compatible with the compiler flags we set on open62541.c. Turn off precompiled headers for this file. Task-number: QTBUG-90531 Change-Id: I046346534d171e08cee2360697d4be42b78da653 Reviewed-by: Jannis Völker <jannis.voelker@basyskom.com> (cherry picked from commit 6666e6be6b9cd0c53e73bb799f51d4c4a7b3dbba) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix loop and iterator issues pointed out by clazyJannis Voelker2021-01-295-10/+12
| | | | | | Change-Id: Ib88f82c006e6b83c2ade92782cded7e0091ef9a0 Pick-to: 6.0 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix range-based for loop in Open62541AsyncBackendJannis Voelker2021-01-291-1/+1
| | | | | | Change-Id: I90385172fe2781c082e2e3f8bbf3efd0cc0ac36b Pick-to: 6.0 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* open62541: Add custom log handlerMartin Klos2021-01-283-1/+100
| | | | | | | | | This change adds a custom log handler to the open62541 plugin. Open62541 log output is redirected to Qt logging categories and can be filtered by using the standard mechanisms. Change-Id: Iffbc236326d4ce84cdca56091de2974c4121b217 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Update autogenerated license list in documentationMartin Klos2021-01-271-1/+1
| | | | | Change-Id: I2b166fdcda856882b26ee50a94011bcbeb5f0ac0 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix open62541 specific flags for the arm64 buildJannis Voelker2021-01-271-1/+1
| | | | | | | | -Wno-format is removed for open62541.c, but -Wformat-security is still present. This trips the c compiler for the arm64 platform. Change-Id: I1128d053faf7009699a2fe30d3f13dfc8ada8fe8 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix: openssl_symbols errorMartin Klos2021-01-123-5/+5
| | | | | | | | | adapt function signature according to upstream openssl headers. fix build issues according to const correctness. Task-number: QTBUG-89219 Change-Id: I0b101f07d5a8922a5f42be8802d48df854472b25 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Refactor deprecated QVariant usage in sourceMartin Klos2021-01-073-12/+12
| | | | | Change-Id: I2ef3f9a124a0e090ab9437002e61e3778d51af76 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix UBSAN issuesFrank Meerkötter2021-01-051-1/+2
| | | | | | | | Fix "load from unaligned address" found via UBSAN Change-Id: I3d940ce59fc1602ae7e04879fcf02b4b70a22383 Reviewed-by: Jannis Völker <jannis.voelker@basyskom.com> Reviewed-by: Martin Klos <martin.klos@basyskom.com>
* Delete unused and deprecated function declarationMartin Klos2021-01-041-1/+0
| | | | | Change-Id: I2c998e636486856e6d09c081fea3f3ce9fc759bb Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Prevent preprocessor shenanigans on WindowsFrank Meerkötter2020-12-221-2/+3
| | | | | | | | | | | | We already guard against max() being (wrongfully) being replaced at other places in Qt OPC UA. Not sure we this one did not cause trouble so far. Thanks to Alexander Neumann Task-number: QTBUG-89427 Change-Id: I7906ec1b99401b7fefcfcdab1b0ccd82c999c174 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Fix memory leak in QOpcUaX509CertificateSigningRequestJannis Voelker2020-12-186-0/+6
| | | | | | Change-Id: I6300d1925b0b12900b7d310b21722f869faaaa5b Pick-to: 5.15 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Set a thread name for the background workerFrank Meerkötter2020-12-172-0/+2
| | | | | | | | Make it easier to see the background workers in the debugger at a glance. Change-Id: I9ffc0199d793b05c9005f30250cc3052309714f0 Reviewed-by: Jannis Völker <jannis.voelker@basyskom.com>
* remove outdated patchFrank Meerkötter2020-12-171-126/+0
| | | | | Change-Id: I40dbfd8189879e770da0fbab35d40ed14f33e23a Reviewed-by: Jannis Völker <jannis.voelker@basyskom.com>
* Adapt to changed upstream API typesFrank Meerkötter2020-11-2010-24/+24
| | | | | | Task-number: QTBUG-88518 Change-Id: I6a1027cebde2a50640a5f018d101a6facf8ce5e5 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Add the /permissive flag when building open62541 with MSVCJannis Voelker2020-11-201-1/+1
| | | | | | | | Also, need to turn of some values when compiling 3rd party dependency. Change-Id: I10a1edad14e40904c2d467406f153e3fc34580a4 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix build against latest devMaurice Kalinowski2020-11-061-2/+10
| | | | | | | | | | | | | Includes need to be updated for example. Furthermore, after latest update to MSVC2019, compilation tries to expand to _Static_assert where macro expansion fails. On Linux, the build system switches to strict C99, which is not available on MSVC. Instead, compile Open62541 as C++. Fixes: QTBUG-88194 Change-Id: Id0b1ceceeaab90d380e8c1dc78feca01231c096d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Update build instructions in the documentationJannis Voelker2020-09-252-36/+21
| | | | | Change-Id: I03c2462469c1afa1510a683943758f7ae223cf4c Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix uacpp backend build after qtbase dependency updateJannis Voelker2020-09-241-1/+1
| | | | | Change-Id: I3567546e2180c7edea3d092f3921e26d80f52d40 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Replace code that has been deprecated in Qt 6Jannis Voelker2020-09-216-8/+8
| | | | | Change-Id: I4af9e2c5a7d94767c11c5ed071c6d8104da07138 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix file loading in the open62541 pluginJannis Voelker2020-09-091-2/+3
| | | | | | | | | | | mbedTLS expects null terminated input for PEM encoded input data. The previous code produced this as a side effect by not setting the data length correctly after removing the newline character. Change-Id: I503b55e58b4021e0881d447811ae2b5b6b3cca8e Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> (cherry picked from commit 8cd6ecce523634abe108ac371638df288fe638eb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update open62541 3rd partyJannis Voelker2020-09-093-37/+91
| | | | | | | | The bugfix for the OpenSSL plugin has been merged, so the 3rd party is again identical with the upstream repository. Change-Id: Ife4624bc8809215722324cf46c385b5bd121c290 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* CMake: Port the open62541 plugin to OpenSSLJannis Voelker2020-09-085-33/+48
| | | | | | | | | | | | | | | Open62541 v1.1 has been extended with an OpenSSL based security plugin. This change removes the mbedTLS dependency for the CMake build of the open62541 plugin and uses FindWrapOpenSSL.cmake to detect security support. The bundled open62541 amalgamation build contains the changes from https://github.com/open62541/open62541/pull/3876 [ChangeLog][open62541 plugin] Security support now uses OpenSSL instead of mbedTLS Change-Id: I29a15c08a67593219a6c637116f84d27c0702db5 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Add annotations to configure.cmakeJannis Voelker2020-09-071-7/+17
| | | | | Change-Id: Ied0935732b214c2cff4fd37e43f6ca4f240901d7 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Use QList instead of QVector in qtopcuaSona Kurazyan2020-08-3180-358/+358
| | | | | | Task-number: QTBUG-84469 Change-Id: I18303d5f04b9820885412c6447541b7db0ebcaeb Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* Fix auto.pro and regenerate CMake filesJannis Voelker2020-08-241-0/+1
| | | | | Change-Id: I10c894f6c559f004ce219a43f283c5881e7987b8 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
* QML plugin: Fix re-enable of monitorings on reconnectJannis Voelker2020-08-241-1/+3
| | | | | | | | | | | | | | | | | If the client is disconnected, the monitorings are disabled automatically by the backend. The open62541 plugin emits the disableMonitoringChanged() signal with the status code BadDisconnect in this case. If the automatic disable is not handled, OpcUaValueNode will not re-enable the monitoring after reconnect. [ChangeLog][QML API] Monitoring for value nodes is now reestablished on reconnect Change-Id: I2a859d51aef7e5dd8354937764364cfa89f383e4 Pick-to: 5.14 5.15 Task-number: QTBUG-85422 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>