summaryrefslogtreecommitdiffstats
path: root/src/remoteobjects/qremoteobjectregistry.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Mark QtRemoteObjects as security criticalØystein Heskestad2025-07-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | The QtRemoteObjects serialization is built on top of QDataStream, but QDataStream is not secure. Mark all files parsing data as security critical. The security is dependent on the backend used. The local and QNX backends communicate only locally but are insecure on a compromised host. The TCP backend is by default insecure, but it supports TLS, and can be secure if that is used. The two files in the repparser directory are used for parsing, but only at build time, and are therefore kept at security significant. The remaining files are marked as security signifcant. QUIP: 23 Task-number: QTBUG-135570 Pick-to: 6.10 6.9 6.8 Change-Id: I11176c036d95f8c706bd05e1cab1ba499003f683 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Doc: Fix typedef description of QRemoteObjectSourceLocation(s)Andreas Eliasson2023-08-281-4/+7
| | | | | | | | | | | | The docs indicate that its properties and members are typedefs for QPair/QHash<QString, QUrl>, when in fact they should be <QString, QRemoteObjectSourceLocationInfo> Fixes: QTBUG-115458 Pick-to: 6.6 6.5 6.4 6.2 5.15 Change-Id: Ic79f7f56be2a12a2c3a89ed1a9e1f9c9f23f6eac Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-141-38/+2
| | | | | | | | | | | 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: I315d7ce1d6c6c3497afdfe8b61a113fdc181c935 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Refactor decodeVariant to pass by rvalue ref/std::moveBrett Stottlemyer2021-08-041-1/+1
| | | | | | | | | | | | | | The decodeVariant calls were weird in how their parameters were pass by reference so they could be changed, but without forcing a copy. It is clearer to pass by rvalue ref, using std::move on the calling side. This rippled up to calls that called the method, including setProperties which is part of the repc generated code. Because of the repc change, this should *not* be picked to Qt5. Pick-to: 6.2 Change-Id: Ieb1b0620569ad8eb9797edc57cc189d0b426510c Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Port QRemoteObjectRegistry to new property systemSona Kurazyan2021-06-041-1/+18
| | | | | | | | Task-number: QTBUG-90687 Change-Id: I6c75b7e4cac09f110c377ebc7ed1d72774ffb765 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Andreas Buhr <andreas.buhr@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Various documentation fixesMårten Nordheim2021-03-091-1/+3
| | | | | | | | | | Reflowed very long lines. 0 meaning 'nullptr' changed to \nullptr. Typos fixed. Task-number: QTBUG-90848 Change-Id: Ieeae60047203dee829adae84c900692aa94a45e3 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Fix compilation with Qt 6Sona Kurazyan2021-02-151-2/+0
| | | | | | | Task-number: QTBUG-90685 Change-Id: Iba9ee0a28ec0ceeca5ae318204deb14190042533 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Refactor QRemoteObjectRegistry::pushToRegistryIfNeeded() to fix deprecation ↵Friedemann Kleint2019-05-241-15/+15
| | | | | | | | | | | | | | | | | | warning Fix warnings introduced by qtbase/92f984273262531f909ede17a324f546fe502b5c: qremoteobjectregistry.cpp:207:49: warning: ‘static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QString]’ is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] qremoteobjectregistry.cpp:207:81: warning: ‘static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QString]’ is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] qremoteobjectregistry.cpp:211:55: warning: ‘static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QString]’ is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] qremoteobjectregistry.cpp:211:88: warning: ‘static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QString]’ is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] by refactoring the code to operate on the hashes directly. Change-Id: I7af95983a710217f259e07c0d100dbe1aef0b5b6 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Fix include directivesFriedemann Kleint2019-01-181-2/+2
| | | | | | | | | | Always prepend the module and use headers directly. Qt for Python requires the modules to be present. Task-number: PYSIDE-862 Fixes: QTBUG-72675 Change-Id: I94e38fbab0f041370ca9d67ca13c78f0d33816b7 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Doc: Add missing dotsPaul Wicking2018-06-191-1/+1
| | | | | | Task-number: QTBUG-68933 Change-Id: I8e424d1a0d43009889e2ab52305dc84cd2b89ecc Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-11-241-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/remoteobjects/qremoteobjectabstractitemmodeladapter_p.h src/remoteobjects/qremoteobjectdynamicreplica.cpp src/remoteobjects/qremoteobjectnode_p.h src/remoteobjects/qremoteobjectregistry.cpp tests/auto/auto.pro tools/repc/repcodegenerator.cpp Done-with: BogDan Vatra <bogdan@kdab.com> Change-Id: I9d0230736b768eac44b06376aeaab1b0b09eb22a
| * Fix clazy-detaching-temporaryFriedemann Kleint2017-10-191-2/+2
| | | | | | | | | | Change-Id: I9429533aefa4b006e7e1e74e19152dc138ad54ca Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* | Pimpl QRemoteObjectRegistryKevin Funk2017-10-061-11/+25
|/ | | | | Change-Id: I46606a3e0b303c740a184c111aa8e6853f2fa99e Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Provide static method for registering metatypesBrett Stottlemyer2017-05-161-1/+10
| | | | | | | | | | This provides an entry point (before a type is instantiated) to register the needed types (for instance, enums used by a type). It also makes it easier to guard against attempting to register a replica's types multiple times. Change-Id: Ic01c70586eab618afeb90c98df042b1ae7a9eed9 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Correct QtRO license headers and added missing license filesv5.9.0-beta4Jani Heikkinen2017-05-021-13/+19
| | | | | | | | | | | | | Unify licensing as it is in other submodules - Src is licensed under Commercial, LGPLv3, GPLv2 and GPLv3 licenses - Examples are licensed under Commercial and BSD licenses - Tools and tests are licensed under commercial and GPLv3 license with some exceptions Task-number: QTBUG-58921 Change-Id: I4494bf8b705568b243340c98316bedd706145db5 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Doc: language review Qt Remote ObjectsNico Vertriest2017-03-071-13/+13
| | | | | Change-Id: Ie1e73a3acd8a822e1367d4e8c4faf2336dc15dc9 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Fixes for license checkBrett Stottlemyer2017-01-141-21/+13
| | | | | | | | Change-Id: I3cf39180b08b80ea65c46e7b6a9e81f3aa79d1af Reviewed-by: Kevin Funk <kevin.funk@kdab.com> Reviewed-by: Continuous Integration (KDAB) <build@kdab.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Generate, send and check class signature for .rep generated classesBogDan Vatra2016-09-081-7/+7
| | | | | | | | | If the signature mismatch it will not complete the connection and will signal the error. Change-Id: Idd4a7a5290bb60d7428e16047a1b82db5e52b372 Reviewed-by: Continuous Integration (KDAB) <build@kdab.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Provide type name for source locationsKevin Funk2016-03-211-1/+2
| | | | | | | | | Extend QRemoteObjectSourceLocation to also carry the type name of the object. Change-Id: Ic50b3682343b92099a5e2f6c564bd10cc543356c Reviewed-by: Continuous Integration (KDAB) <build@kdab.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Add default constructor for ReplicasBrett Stottlemyer2015-12-311-1/+8
| | | | | | | | | | | | | This requires a code refactor to let the Replica initialize itself, rather than have the Node's acquire() call do the initialization. It also requires adding a 2nd constructor for all Replica types. Change-Id: I2bcad98a6b5a8ac958e8206cd5069f48e230f2d4 Reviewed-by: Continuous Integration (KDAB) <build@kdab.com> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Fix missing QDataStream include headers.Rafael Roquetto2015-07-241-0/+1
| | | | | Change-Id: I5ff3c30c58e2e44e850ec560de717bcd415c4592 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Fix/Enhance datastream handlingBrett Stottlemyer2015-07-071-1/+0
| | | | | | | | | | | | | | | | | | The fix part is that connectionclient and connectionserver were creating a new QDataStream each time read() was called. This could "abandon" bytes if read() finished with bytes left in the stream. Now the stream is created once and kept. The constant QRemoteObjectPackets::dataStreamVersion was also created and set to QDataStream::Qt_5_0. This is used to consistently set the version of all QDataStreams used, which will help with compatibility between QtRO versions. Change-Id: Idca6d12ec3a5ef07ba6d5a88b00a139c16116b1a Reviewed-by: Continuous Integration (KDAB) <build@kdab.com> Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
* Update documentationBrett Stottlemyer2015-05-081-0/+7
| | | | | | | | Document new QAbstractItemModel methods as well as the (internal) pushToRegistryIfNeeded() method. Change-Id: I6d9d70497eb4cf81b2dc019cdc76a6feb486c7c2 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
* Add missing QDataStream includesJan Arne Petersen2015-04-281-0/+1
| | | | | | | | | Without these includes it fails when compiling against Qt 5.5. Change-Id: I23fa2f79a6dcba369fd5ea5f6a6dba56fcb9ec75 Reviewed-by: Kevin Funk <kevin.funk@kdab.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Introduce documentationBrett Stottlemyer2015-03-201-0/+49
| | | | | | | | | Adding high-level documentation for Remote Objects Change-Id: I69a41476aa4290cf22214ab3079928a81a08b313 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com> Reviewed-by: Manpreet Bajwa <mbajwa3@ford.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Enhance RegistryBrett Stottlemyer2015-03-101-8/+45
| | | | | | | | | | | | | This adds support for creating the Registry Host whenever, it no longer needs to be created before Registry Replicas are used. It also provides warnings if a Source is enabled that is already in the Registry. To support consistency, connections are only made when the Registry is valid. This prevents the edge case of a locally hosted source getting connected to and then having a duplicate in the Registry when it connects. Change-Id: Iffc21a41a72edf5e3c3b4e80d6de23d0b85c4d49 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
* Fix registry crash when no registrySourceBrett Stottlemyer2015-03-091-0/+5
| | | | | | | | | | Prior to this patch, a crash would occur if a Host Node tried to connect to a Registry which wasn't available and used enableRemoting to share a Source. The crash would occur when the Node tried to remove the object from the Registry when deleted. Change-Id: Ibbe6e2e5742179e2d4be7f51917953013054fe0b Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
* Remove not necessary includesMontel Laurent2014-12-181-1/+0
| | | | | | | Change-Id: I2834e5ba94c4a5a1d9a3d2b572e27c86f77fc794 Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Kevin Funk <kevin.funk@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Say hello to QtRemoteObjectsBrett Stottlemyer2014-10-161-0/+100
This is a module that allows you to create copies/replicas of your QObjects in other processes, without having to write a bunch of IPC code. Change-Id: I4a62f120eca34c9f50089b7d9d09dcfcad14476c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>