Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qt6-remoteobjects for 
openSUSE:Factory checked in at 2026-08-21 16:51:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-remoteobjects (Old)
 and      /work/SRC/openSUSE:Factory/.qt6-remoteobjects.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qt6-remoteobjects"

Fri Aug 21 16:51:12 2026 rev:38 rq:1372257 version:6.11.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-remoteobjects/qt6-remoteobjects.changes      
2026-05-28 17:25:53.925134997 +0200
+++ 
/work/SRC/openSUSE:Factory/.qt6-remoteobjects.new.1258/qt6-remoteobjects.changes
    2026-08-21 16:52:06.834394901 +0200
@@ -1,0 +2,6 @@
+Tue Aug 18 11:49:11 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.11.2
+  https://www.qt.io/blog/qt-6.11.2-released
+
+-------------------------------------------------------------------

Old:
----
  qtremoteobjects-everywhere-src-6.11.1.tar.xz

New:
----
  qtremoteobjects-everywhere-src-6.11.2.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qt6-remoteobjects.spec ++++++
--- /var/tmp/diff_new_pack.Q4lAMb/_old  2026-08-21 16:52:07.522419366 +0200
+++ /var/tmp/diff_new_pack.Q4lAMb/_new  2026-08-21 16:52:07.525419473 +0200
@@ -16,7 +16,7 @@
 #
 
 
-%define real_version 6.11.1
+%define real_version 6.11.2
 %define short_version 6.11
 %define tar_name qtremoteobjects-everywhere-src
 %define tar_suffix %{nil}
@@ -30,7 +30,7 @@
 %global __requires_exclude qt6qmlimport\\(TimeExample\\)
 #
 Name:           qt6-remoteobjects%{?pkg_suffix}
-Version:        6.11.1
+Version:        6.11.2
 Release:        0
 Summary:        Qt6 RemoteObjects Library
 License:        GPL-2.0-only OR GPL-3.0-or-later OR LGPL-3.0-only

++++++ qtremoteobjects-everywhere-src-6.11.1.tar.xz -> 
qtremoteobjects-everywhere-src-6.11.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtremoteobjects-everywhere-src-6.11.1/.cmake.conf 
new/qtremoteobjects-everywhere-src-6.11.2/.cmake.conf
--- old/qtremoteobjects-everywhere-src-6.11.1/.cmake.conf       2026-05-08 
03:19:14.000000000 +0200
+++ new/qtremoteobjects-everywhere-src-6.11.2/.cmake.conf       2026-08-12 
03:33:55.000000000 +0200
@@ -1,8 +1,9 @@
-set(QT_REPO_MODULE_VERSION "6.11.1")
+set(QT_REPO_MODULE_VERSION "6.11.2")
 set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1")
 set(QT_EXTRA_INTERNAL_TARGET_DEFINES
     "QT_NO_CONTEXTLESS_CONNECT=1"
     "QT_NO_FOREACH=1"
     "QT_NO_QASCONST=1"
+    "QT_NO_SINGLE_ARGUMENT_QHASH_OVERLOAD=1"
     "QT_NO_URL_CAST_FROM_STRING=1"
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtremoteobjects-everywhere-src-6.11.1/.tag 
new/qtremoteobjects-everywhere-src-6.11.2/.tag
--- old/qtremoteobjects-everywhere-src-6.11.1/.tag      2026-05-08 
03:19:14.000000000 +0200
+++ new/qtremoteobjects-everywhere-src-6.11.2/.tag      2026-08-12 
03:33:55.000000000 +0200
@@ -1 +1 @@
-e5acd828cb0c8dfe833d66ffb952de088213b6c6
+7271905e6e7b5ccefec0d41750b0dfe652f356e1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/dependencies.yaml 
new/qtremoteobjects-everywhere-src-6.11.2/dependencies.yaml
--- old/qtremoteobjects-everywhere-src-6.11.1/dependencies.yaml 2026-05-08 
03:19:14.000000000 +0200
+++ new/qtremoteobjects-everywhere-src-6.11.2/dependencies.yaml 2026-08-12 
03:33:55.000000000 +0200
@@ -1,7 +1,7 @@
 dependencies:
   ../qtbase:
-    ref: 59c81a3c2247b821b9b84b4eb8d939b77e07e276
+    ref: ef55f427f2c8b410d34f8a7681020a3000cf6866
     required: true
   ../qtdeclarative:
-    ref: a02bed441965ee1f18f856352c7d5ee5ba35d795
+    ref: 4e3399c26ec57246c08de019cfcbda8d23604cfa
     required: false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/cert.qrc
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/cert.qrc
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/cert.qrc
    2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/cert.qrc
    1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-<RCC>
-    <qresource prefix="/sslcert">
-        <file>client.crt</file>
-        <file>client.key</file>
-        <file>rootCA.key</file>
-        <file>rootCA.pem</file>
-        <file>rootCA.srl</file>
-        <file>server.crt</file>
-        <file>server.key</file>
-    </qresource>
-</RCC>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/client.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/client.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/client.crt
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/client.crt
  1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIC9jCCAd6gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLi0wDQYJKoZIhvcNAQEL
-BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
-MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
-ggEPADCCAQoCggEBAKLVgG77bekyLvR6dO8ircufMmC8CFM2+wSPsmcGST+P2uru
-YjbCLCpsA6ogpaRS5w7G8FMHEaXBi6cxqeToKSekd37gq4wB2GiodiLcOEQe7NrL
-q7ZjwI+HjVSBL2d52kcrOm3HW8ARuPyIrXja6RA4lYsF8OYjeCEbLdvo8NvaC3p5
-gz7/mejL5jEfVbZbYA5gVadq+ox+x/+w4zB7IJte9RcIhRSb+a0god+X4FUUkTjE
-6NdKRZJ5wxC3MicMfkiAu9vMzpFk20SLhfrWWDtG0FDM8M7eIcJ6WcZKjNuNxKQK
-MGzWWA1o6S2vBBIXn/cxJCLJBdYoxfVkrYTw6PcCAwEAAaNCMEAwHQYDVR0OBBYE
-FD7SSgWDYbmRA3+phMAdi/UkzG7xMB8GA1UdIwQYMBaAFFooAS3VPRDDEh5AgnZJ
-PmTWQOoOMA0GCSqGSIb3DQEBCwUAA4IBAQBiIAUJcoK19qzDumVXXIrClwtVRr6y
-zMvfVhmhKiPvGPToKr4es8Rmv4csbRFth1HRQ8vZTLwLW99M+gtOACuenhoxZN7+
-nGVLUh4LmB2K06PCEy/FqVGSrxvzheTKojTJL8+Zn1ABQECD9fi6DxbdYOmrBX7W
-LcRh4tJ8KCwqwkqEoQXnbYGAR+di9PAdZ+siowDGYX+Ptx8WTu5MnBkDcl4Q92DP
-6y3r6xvlcVwHLyB4D3lV3wiSFS+8dj3eo18h/ELUdqF/htVd1RVdLgLQBRkgY1o3
-8BbfZxTyhwFTSvKCASFtWPg+QgWPsbXAs8v0UmKiCB93FxHBK9hBxoMh
------END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/client.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/client.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/client.key
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/client.key
  1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
------BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCi1YBu+23pMi70
-enTvIq3LnzJgvAhTNvsEj7JnBkk/j9rq7mI2wiwqbAOqIKWkUucOxvBTBxGlwYun
-Mank6CknpHd+4KuMAdhoqHYi3DhEHuzay6u2Y8CPh41UgS9nedpHKzptx1vAEbj8
-iK142ukQOJWLBfDmI3ghGy3b6PDb2gt6eYM+/5noy+YxH1W2W2AOYFWnavqMfsf/
-sOMweyCbXvUXCIUUm/mtIKHfl+BVFJE4xOjXSkWSecMQtzInDH5IgLvbzM6RZNtE
-i4X61lg7RtBQzPDO3iHCelnGSozbjcSkCjBs1lgNaOktrwQSF5/3MSQiyQXWKMX1
-ZK2E8Oj3AgMBAAECggEAURbKdTo/k2Q6zuPWrKnT67WVNGgfKzWTjsNyn+yY+I7O
-gbUB8uwCa4PL1WKZqnngd9LpJie8iZOXVMUeKpDUwdmc6nG+7COVHhVac2TAnmfa
-IuFPWy5U3AUwg/crYLflVBC6caXYUo9g1F3KKYe2ja3oBsoIG8tpDO+IiF156Llj
-Jsk6aGVS1b+raz0FeVdxOYiywepqxqtbT1dbLqv1G6Ze8P3wj2mGChsBK4nYDrDa
-BSQ2qGjIcj2ksTboWCgTYrTVdVoytyIP2whVoFY3qJCZzVaYP4nzCCh3cBt6xcN0
-OQmd/PM/6fOTTDiTo8l/DxkbQXYOjWICIiVKitp+oQKBgQDOHHkFaBy4VSqbICvc
-nDiELfMS2nxIgX65Q1hfiGgY8iNpW72B8Yhtb+/p7v0OjNGh8NMtLwt98sOSoXql
-sDiwR0EqdxOOJCC/32PS33TibFZVI/us/I4AdrOGd5Xzxe0JmuXuYmByuvIPlwsV
-8HwmTZwqKIMBmiEH4SJcBJ564QKBgQDKP2NH8USFbNBoIf8aoFnpTUQ7EMIGxN6+
-jZMh1IRolJZg3YdsGDM03Cnzb6RNVR7Tw7Bk7ud9PD3R6GjV2BXhzgaBcPaDOjsf
-L9yRmp59hEtGuAyCg3O3txgUl6Ct3HyS6vGN5kI6g5VVaECGSTHfev7I+MresZVj
-kPaVUbR21wKBgBtsjm25vJiKPHEHhs6DusFbm8wWZhL/p+zemROdArzO+wc5va1c
-hdqJ2lI2ClW1Ru9VK8QHTnAjrQIFmlwRZnmOAY206lUvWWwuPQoB0XuPDq2lbAdI
-U1ycbqalor4cx71PbuiZDlw1o5+PaVox9VLjYLP7T/MWnu59diToOG4BAoGBAJOa
-i4S36sBN2BQHq7ztBnGkuIU7B8AU8lOz04u/JBuHRfDP/MPBLa4IeH14HztpQiRf
-D1+6lCvsSVnm+owHNoEj8c+Kd/7yArASKDID3GPSp3WnYUnnUg7ki6iLuPLqlehL
-m5tqTy+RVO2ONnlK9iEaDNTz7mt0w4h1BeGYTdLlAoGABW3xJ6cVbXYkQmigfl5u
-eueOdMFkUm4fiUOf2Gs4TtQWQOO6OCIzVDUyQKzfNiUukOxwHoZ9oAiJW65G5TFQ
-5mX59bkH8kJPNqBAdAY3WeSRTjqK8NTrXhkFvw3UbNmBWmO8+VCdlNozYBFdmQxZ
-xJs+Z+AYZAhH77dInNIryuU=
------END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/readme
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/readme
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/readme
      2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/readme
      1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-These files are generated by the script located at 
tests/auto/external_IODevice/cert/generate.sh 
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.key
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.key
  1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
------BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDZK48/hEAdPMFS
-8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQW3TSTZWrALksZ+EXon+tF32N6syR
-vDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWCTAfVCJTJyofv8UhBfCM3yf32l/Li
-4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhKR6OyujUKKguVmissjDTc8IWR4esP
-a6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+Q+6914ba9Q3fisI84sdgDHA3fZQ0
-b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZYAkivoDuzjkXtBK24jEijHGLcQX2
-k57YhpTVAgMBAAECggEADCtpORV3pEvJx5SNbXsNKC5eenV/HzzgZuyx3A5I3FCM
-PKoY+M4vMzO+zdjaB5eAoRrtja0Rz5iXQxlphlr4/QIhO5TqwPInbAFKSlU5b+/W
-v1GvYWhSTglPkSlEydjbBDRpItCyZxWnujgZfha7C0kvOmydkr3Vaa7sQl0aApaI
-M6XdrlspGb22Xez+4bJhXKPZDhmj+NA/B9XquTazEd5bRjGyDJ+IOWfJYPfHZzZr
-afGTkvLh+Q1JzBAXqzahhzfyZzv+fCkDdQc23rGrWjD2AsspjTlqDlODBlXFpLpT
-x2INSP/NyuBEOM/PX+rLuriwkCZeGgV6Xe3gGuAOJwKBgQD9JDofiERPmpeAIRvg
-kKpiUO6OhdMkYyWXLQvNODpmaeHM+efWyThSWJq1DAbLIUqiZOTVXrqpnjIEU3HT
-Ok0OY3YJDSsQJ7XOXa0L/HzNC3FvZfJi8F9zzP1B0Y2kMvgLTxWxgQk3zWRrxjbi
-YTU83+ftR2pOfbAiuNxhbWI9JwKBgQDbn1kE5uYxoYG+ur6TZHyxm+xwtEPRcwiZ
-KuiWaHQXKvMGm0i74oxV/ZoadEqtOUTrLJXoUa9V7XlTc9P4BNLb+fHpJXA5m3lP
-H9619pHMUt6PIF96kfegYdSYyT0h9kUoP8dy8Nf/9H1QFzJsp6LLRyRrCuwqfDvk
-2c7wIWpTowKBgBmQAPaSMiO/vrDHpyMEONB4z75AsVOpV3BushRlKzCQXKbwTYMZ
-CsD2BZlmv4DfucOwYJNTX5IlUXOyYXotFv7u+Epts/2LpQZT21eshYXHNAtFxjZL
-g7gT6TcuTBlatEWgFNa56w5hhVSEzaIKou+kxKznW0rV0mWPOWH1Q8hdAoGBAMj8
-ozLhPHjfHSW3MQEiTRsdXtwlnIrpg0zo/8HmBZfOLmo1YfLP+S4Y0Ba1pkGwz2mJ
-fAcH+jXhBc9hiPLJN08pBkIfiPyvU+0ddWuBIxyiGhtRvQ8m1j9oSG8qe0/BWLjk
-5VpDHumWjbfmArd9EnaFvMZZUJfw6b8dtUv8yJmRAoGAXEZRzEMJ1RBNyu7JBDM3
-0BA7X2Y6jQ8bnQkKmamxdxcDUx13Bw5f3N/SkZCLqKW4GF7/D1LmxDCxHQukznZZ
-3Jo4+hbQGXM43PAQ3bNraZgbBXX1bp3NMWA6wy5gKE/AxOTp/ntWQVA7DjL+bBDp
-aUH/mgKoWyGyJTtgXF0BHD4=
------END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.pem
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.pem
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.pem
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.pem
  1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDBTCCAe2gAwIBAgIUTCSzaGDZAKIYI33B9kBVGElER2owDQYJKoZIhvcNAQEL
-BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NDlaFw0yNzEyMTgx
-MDQ4NDlaMBIxEDAOBgNVBAMMB1F0Uk8gQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB
-DwAwggEKAoIBAQDZK48/hEAdPMFS8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQ
-W3TSTZWrALksZ+EXon+tF32N6syRvDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWC
-TAfVCJTJyofv8UhBfCM3yf32l/Li4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhK
-R6OyujUKKguVmissjDTc8IWR4esPa6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+
-Q+6914ba9Q3fisI84sdgDHA3fZQ0b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZ
-YAkivoDuzjkXtBK24jEijHGLcQX2k57YhpTVAgMBAAGjUzBRMB0GA1UdDgQWBBRa
-KAEt1T0QwxIeQIJ2ST5k1kDqDjAfBgNVHSMEGDAWgBRaKAEt1T0QwxIeQIJ2ST5k
-1kDqDjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQDGKjCW69Dj
-mtTGszNJLicGOQKhHk9Vli6UdQ2DW442qEzXtvpv05cu2l99jdXwBP5BJo9MZnXR
-jduv693t4B6ujUy+XXHFzPGECTaQuBQeOHvwWLfsjE/ITtyyWKYnpY7ozXs3yzJq
-Ipl7xtXnVcEkaQkmphr27iJx66XznsReRYhRuJdy83XL9UXG/WALFqEz4OCUB+q7
-ON/szYNRp5C35DufgER8AD771DE/JBOpAxI1h80oTj9q+/1i12E6kJvnZ0gkN88b
-Bsb1stgtuSWVebvRCjSyQKZYy9liQbM5RyUHqjI5MudQQ3nleaGvJSowSDh60W5m
-cUtelIfR+X8U
------END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.srl
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.srl
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/rootCA.srl
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/rootCA.srl
  1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-7390820BD47F5A3C7398B7C8DCA218B35C2C2E2D
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/server.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/server.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/server.crt
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/server.crt
  1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDNTCCAh2gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLiwwDQYJKoZIhvcNAQEL
-BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
-MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
-ggEPADCCAQoCggEBAL3xQANW6gjSqXHrb1MjziDPFIlbbMPHteRYryZX5xM7fmcX
-TrF4j3JPHyycl/fpq/5xPIagCkaLh2oC/EvPp/w+9p5E2Oe2M/nK5EGyCiGCWS2v
-fjcsxeVCTw8h+GqxveghWJzGAWFgfnCyKvXvWORwvSYVNpfKir2g9/YMp1aB9gsF
-4A5FgTWxZDfIYle5O1IQ5khKdufTJwKrxecUYkQRc3T2FqIaUpIvhHHFqIlYyJ+n
-WiG/QRB3AI8rEnbUArRyV/ygU76U6AaPW+S3InqtrlfUkE6nHmCLAVatN3TzQIF6
-RM/a5PpNdbJZ/pn7c6T8aWh0QCMI4d4s34Z9P3MCAwEAAaOBgDB+MB8GA1UdIwQY
-MBaAFFooAS3VPRDDEh5AgnZJPmTWQOoOMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTw
-MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA8GA1UdEQQIMAaHBH8AAAEwHQYDVR0OBBYE
-FE7IUaR0Vdi87Q5tPilRuzSGu4uqMA0GCSqGSIb3DQEBCwUAA4IBAQAyapkYYgdo
-QGcvMcfXdJ/lrbi8EnqdqV5wI/PD1n7Cx4wNMsaA4y58JuPZydlCcGLk4N1FhFoG
-hVzkeFjSTmKqI4sTYJbDfPKWXGzVhuMTVLtWQew6H/x4OeJJ5nm53/U3JGOwyELN
-vo7SV3aODiAJRHQpKtzOwYsjIa2T+8lDiMstDetH5yMrYFW6aD+nAc+eM8eUFmIM
-45qhc59EFc7wH4IKRDH4w0M4gU//PDTIQsjyKR1Sm6nZGh4fei47zggQsKX5NZZj
-KZSLN4wbF5qHigoyhfuFdwWi5X3VoGcY6m6xAocNq1vqbmzpRo6+M/DfBM0XBbmd
-g5Zk6pJ2xiVz
------END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/server.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/server.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/cert/server.key
  2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/cert/server.key
  1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
------BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC98UADVuoI0qlx
-629TI84gzxSJW2zDx7XkWK8mV+cTO35nF06xeI9yTx8snJf36av+cTyGoApGi4dq
-AvxLz6f8PvaeRNjntjP5yuRBsgohglktr343LMXlQk8PIfhqsb3oIVicxgFhYH5w
-sir171jkcL0mFTaXyoq9oPf2DKdWgfYLBeAORYE1sWQ3yGJXuTtSEOZISnbn0ycC
-q8XnFGJEEXN09haiGlKSL4RxxaiJWMifp1ohv0EQdwCPKxJ21AK0clf8oFO+lOgG
-j1vktyJ6ra5X1JBOpx5giwFWrTd080CBekTP2uT6TXWyWf6Z+3Ok/GlodEAjCOHe
-LN+GfT9zAgMBAAECggEAP/MmuzkbCKdsl0dOLu7CKret0WUvpGbr7ZqSNdWonggM
-0ca+HvBZU4IiG9IJNFW/K6aSWz0s2H2HtQCWUyvyAfJs8/J4GON2cmaGHTxFPuz0
-+3W3h/oSEtMVbSHh0oJPTwVTIU1lD5T+XREPd8gC5L60YEsKG2b8+UVl1riB6pS2
-67hR631+eoc8QzGSWWl52vvMS2FlOHZu0dRcn5LgeO4PuNQiFHsqpTY4c/6QzwzD
-p7W2jJSFuwhv1wXyoGHmPtBXPh0jPQ2+Ctvw1VcancDdSfHC+AJBA3o/ZNxJBiAg
-3RTZiYqZx/p+6xDO/MuFHDgmjtxpXOW59RA1dWP2YQKBgQD+rK0G5MLXLkjGeewt
-25q5aSwMtcU32dd/oDYlc+zl6M8HqkoH7bRZ2w5aJiJgna4xyR/uH/CaKap7HtvV
-0pUYsWTZcNPAyUI7YLDLLzvyNS12BEGh5diAms70hIMcfLqBE6QpVaOyiB5nDMGl
-sPaX8k1vwMTrnG52GtMaKD21MQKBgQC+7lN+B6yGXSbA6gf/IIXSJ/GV9A0cgVi4
-9W690MEJ8F/2yTNH4lzoqk+Q2vs6Hllmt/n3Xi6k3WBGeAcBoSpER4tsNaM7U1W5
-gfYNLD2pyCJ/dggUG3QSyFSVjN5zEjJsvRIAcKRtS/Ok5iEK3hts47X8RuaQqtvS
-1qScJo2l4wKBgQDYrXOdTN7VE2UJsMwYDCKtI2U9/x0nsqkdxeKrpODmj1gtjl3k
-NwLd/HlOi+ltyFpfs13+TKB5mX+ZtxyU5NDDrJJASjVvbgxy1oY0qSBYp5PhOCfb
-JeI5MP1pnqCqiRhpH5vpKxrWl+c+B+VuIoz7pETsEte4GmUFCTeYpqox0QKBgDvR
-Bq9RUCe4P0/pAiBX3BT/FpzYHNN1YopvugYVxKSMfkQevMYkkN8DnHHRaSvIHlIk
-CVgKVaqpAGSTbf6As3E4yOFZ3I3VieHYaXGvDpKGdOhh3h4Oi8rmoDlKLNb4OHwA
-sAcbQyhKx0Y+ItP4ybbPkFA9Fjb0kHH5dRDGs1HpAoGBAMu56C/XK+xcSYxxMiUu
-4KM2h1CZVJoAmAcgM9hrE08/4PbWegNU1WkLolR6mZoR2/Z6fKeHyjSQcqhpV+gm
-ejObzHc+3MkEOA43R5GIEHgnYO1GpeoS0dxyhItt8K+2Exr3hqUF/sr+ouVlbADr
-9erdDgzkTU69hT6GizjQAYBV
------END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/common.pri
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/common.pri
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/common.pri
       2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/common.pri
       1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-CONFIG -= app_bundle
-
-INCLUDEPATH += $$PWD
-
-HEADERS += \
-    $$PWD/websocketiodevice.h
-
-SOURCES += \
-    $$PWD/websocketiodevice.cpp
-
-RESOURCES += $$PWD/cert/cert.qrc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/websocketiodevice.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/websocketiodevice.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/websocketiodevice.cpp
    2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/websocketiodevice.cpp
    1970-01-01 01:00:00.000000000 +0100
@@ -1,50 +0,0 @@
-// Copyright (C) 2019 Ford Motor Company
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
-
-#include "websocketiodevice.h"
-
-WebSocketIoDevice::WebSocketIoDevice(QWebSocket *webSocket, QObject *parent)
-    : QIODevice(parent)
-    , m_socket(webSocket)
-{
-    open(QIODevice::ReadWrite);
-    connect(webSocket, &QWebSocket::disconnected, this, 
&WebSocketIoDevice::disconnected);
-    connect(webSocket, &QWebSocket::binaryMessageReceived, this, [this](const 
QByteArray &message){
-        m_buffer.append(message);
-        emit readyRead();
-    });
-    connect(webSocket, &QWebSocket::bytesWritten, this, 
&WebSocketIoDevice::bytesWritten);
-}
-
-qint64 WebSocketIoDevice::bytesAvailable() const
-{
-    return QIODevice::bytesAvailable() + m_buffer.size();
-}
-
-bool WebSocketIoDevice::isSequential() const
-{
-    return true;
-}
-
-void WebSocketIoDevice::close()
-{
-    if (m_socket)
-        m_socket->close();
-}
-
-qint64 WebSocketIoDevice::readData(char *data, qint64 maxlen)
-{
-    auto sz = std::min(maxlen, qint64(m_buffer.size()));
-    if (sz <= 0)
-        return sz;
-    memcpy(data, m_buffer.constData(), size_t(sz));
-    m_buffer.remove(0, sz);
-    return sz;
-}
-
-qint64 WebSocketIoDevice::writeData(const char *data, qint64 len)
-{
-    if (m_socket)
-        return m_socket->sendBinaryMessage(QByteArray{data, int(len)});
-    return -1;
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/websocketiodevice.h
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/websocketiodevice.h
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/common/websocketiodevice.h
      2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/common/websocketiodevice.h
      1970-01-01 01:00:00.000000000 +0100
@@ -1,36 +0,0 @@
-// Copyright (C) 2019 Ford Motor Company
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
-
-#ifndef WEBSOCKETIODEVICE_H
-#define WEBSOCKETIODEVICE_H
-
-#include <QBuffer>
-#include <QIODevice>
-#include <QPointer>
-#include <QWebSocket>
-
-class WebSocketIoDevice : public QIODevice
-{
-    Q_OBJECT
-public:
-    WebSocketIoDevice(QWebSocket *webSocket, QObject *parent = nullptr);
-
-signals:
-    void disconnected();
-
-    // QIODevice interface
-public:
-    qint64 bytesAvailable() const override;
-    bool isSequential() const override;
-    void close() override;
-
-protected:
-    qint64 readData(char *data, qint64 maxlen) override;
-    qint64 writeData(const char *data, qint64 len) override;
-
-private:
-    QPointer<QWebSocket> m_socket;
-    QByteArray m_buffer;
-};
-
-#endif // WEBSOCKETIODEVICE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/CMakeLists.txt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/CMakeLists.txt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/CMakeLists.txt
 2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/CMakeLists.txt
 2026-08-12 03:33:55.000000000 +0200
@@ -15,7 +15,7 @@
 find_package(Qt6 REQUIRED COMPONENTS Core Gui RemoteObjects WebSockets Widgets)
 
 qt_add_executable(wsclient
-    ../common/websocketiodevice.cpp ../common/websocketiodevice.h
+    websocketiodevice.cpp websocketiodevice.h
     main.cpp
 )
 
@@ -24,10 +24,6 @@
     MACOSX_BUNDLE FALSE
 )
 
-target_include_directories(wsclient PUBLIC
-    ../common
-)
-
 target_link_libraries(wsclient PUBLIC
     Qt::Core
     Qt::Gui
@@ -37,23 +33,21 @@
 )
 
 # Resources:
-set(cert_resource_files
-    "../common/cert/client.crt"
-    "../common/cert/client.key"
-    "../common/cert/rootCA.key"
-    "../common/cert/rootCA.pem"
-    "../common/cert/rootCA.srl"
-    "../common/cert/server.crt"
-    "../common/cert/server.key"
+set(sslcert_resource_files
+    "sslcert/client.crt"
+    "sslcert/client.key"
+    "sslcert/rootCA.key"
+    "sslcert/rootCA.pem"
+    "sslcert/rootCA.srl"
+    "sslcert/server.crt"
+    "sslcert/server.key"
 )
 
-qt6_add_resources(wsclient "cert"
+qt6_add_resources(wsclient "sslcert"
     PREFIX
-        "/sslcert"
-    BASE
-        "../common/cert"
+        "/"
     FILES
-        ${cert_resource_files}
+        ${sslcert_resource_files}
 )
 
 install(TARGETS wsclient
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/client.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/client.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/client.crt
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/client.crt
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,18 @@
+-----BEGIN CERTIFICATE-----
+MIIC9jCCAd6gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLi0wDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
+MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAKLVgG77bekyLvR6dO8ircufMmC8CFM2+wSPsmcGST+P2uru
+YjbCLCpsA6ogpaRS5w7G8FMHEaXBi6cxqeToKSekd37gq4wB2GiodiLcOEQe7NrL
+q7ZjwI+HjVSBL2d52kcrOm3HW8ARuPyIrXja6RA4lYsF8OYjeCEbLdvo8NvaC3p5
+gz7/mejL5jEfVbZbYA5gVadq+ox+x/+w4zB7IJte9RcIhRSb+a0god+X4FUUkTjE
+6NdKRZJ5wxC3MicMfkiAu9vMzpFk20SLhfrWWDtG0FDM8M7eIcJ6WcZKjNuNxKQK
+MGzWWA1o6S2vBBIXn/cxJCLJBdYoxfVkrYTw6PcCAwEAAaNCMEAwHQYDVR0OBBYE
+FD7SSgWDYbmRA3+phMAdi/UkzG7xMB8GA1UdIwQYMBaAFFooAS3VPRDDEh5AgnZJ
+PmTWQOoOMA0GCSqGSIb3DQEBCwUAA4IBAQBiIAUJcoK19qzDumVXXIrClwtVRr6y
+zMvfVhmhKiPvGPToKr4es8Rmv4csbRFth1HRQ8vZTLwLW99M+gtOACuenhoxZN7+
+nGVLUh4LmB2K06PCEy/FqVGSrxvzheTKojTJL8+Zn1ABQECD9fi6DxbdYOmrBX7W
+LcRh4tJ8KCwqwkqEoQXnbYGAR+di9PAdZ+siowDGYX+Ptx8WTu5MnBkDcl4Q92DP
+6y3r6xvlcVwHLyB4D3lV3wiSFS+8dj3eo18h/ELUdqF/htVd1RVdLgLQBRkgY1o3
+8BbfZxTyhwFTSvKCASFtWPg+QgWPsbXAs8v0UmKiCB93FxHBK9hBxoMh
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/client.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/client.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/client.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/client.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCi1YBu+23pMi70
+enTvIq3LnzJgvAhTNvsEj7JnBkk/j9rq7mI2wiwqbAOqIKWkUucOxvBTBxGlwYun
+Mank6CknpHd+4KuMAdhoqHYi3DhEHuzay6u2Y8CPh41UgS9nedpHKzptx1vAEbj8
+iK142ukQOJWLBfDmI3ghGy3b6PDb2gt6eYM+/5noy+YxH1W2W2AOYFWnavqMfsf/
+sOMweyCbXvUXCIUUm/mtIKHfl+BVFJE4xOjXSkWSecMQtzInDH5IgLvbzM6RZNtE
+i4X61lg7RtBQzPDO3iHCelnGSozbjcSkCjBs1lgNaOktrwQSF5/3MSQiyQXWKMX1
+ZK2E8Oj3AgMBAAECggEAURbKdTo/k2Q6zuPWrKnT67WVNGgfKzWTjsNyn+yY+I7O
+gbUB8uwCa4PL1WKZqnngd9LpJie8iZOXVMUeKpDUwdmc6nG+7COVHhVac2TAnmfa
+IuFPWy5U3AUwg/crYLflVBC6caXYUo9g1F3KKYe2ja3oBsoIG8tpDO+IiF156Llj
+Jsk6aGVS1b+raz0FeVdxOYiywepqxqtbT1dbLqv1G6Ze8P3wj2mGChsBK4nYDrDa
+BSQ2qGjIcj2ksTboWCgTYrTVdVoytyIP2whVoFY3qJCZzVaYP4nzCCh3cBt6xcN0
+OQmd/PM/6fOTTDiTo8l/DxkbQXYOjWICIiVKitp+oQKBgQDOHHkFaBy4VSqbICvc
+nDiELfMS2nxIgX65Q1hfiGgY8iNpW72B8Yhtb+/p7v0OjNGh8NMtLwt98sOSoXql
+sDiwR0EqdxOOJCC/32PS33TibFZVI/us/I4AdrOGd5Xzxe0JmuXuYmByuvIPlwsV
+8HwmTZwqKIMBmiEH4SJcBJ564QKBgQDKP2NH8USFbNBoIf8aoFnpTUQ7EMIGxN6+
+jZMh1IRolJZg3YdsGDM03Cnzb6RNVR7Tw7Bk7ud9PD3R6GjV2BXhzgaBcPaDOjsf
+L9yRmp59hEtGuAyCg3O3txgUl6Ct3HyS6vGN5kI6g5VVaECGSTHfev7I+MresZVj
+kPaVUbR21wKBgBtsjm25vJiKPHEHhs6DusFbm8wWZhL/p+zemROdArzO+wc5va1c
+hdqJ2lI2ClW1Ru9VK8QHTnAjrQIFmlwRZnmOAY206lUvWWwuPQoB0XuPDq2lbAdI
+U1ycbqalor4cx71PbuiZDlw1o5+PaVox9VLjYLP7T/MWnu59diToOG4BAoGBAJOa
+i4S36sBN2BQHq7ztBnGkuIU7B8AU8lOz04u/JBuHRfDP/MPBLa4IeH14HztpQiRf
+D1+6lCvsSVnm+owHNoEj8c+Kd/7yArASKDID3GPSp3WnYUnnUg7ki6iLuPLqlehL
+m5tqTy+RVO2ONnlK9iEaDNTz7mt0w4h1BeGYTdLlAoGABW3xJ6cVbXYkQmigfl5u
+eueOdMFkUm4fiUOf2Gs4TtQWQOO6OCIzVDUyQKzfNiUukOxwHoZ9oAiJW65G5TFQ
+5mX59bkH8kJPNqBAdAY3WeSRTjqK8NTrXhkFvw3UbNmBWmO8+VCdlNozYBFdmQxZ
+xJs+Z+AYZAhH77dInNIryuU=
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/readme
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/readme
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/readme
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/readme
 2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,2 @@
+These files are generated by the script located at 
tests/auto/external_IODevice/cert/generate.sh 
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDZK48/hEAdPMFS
+8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQW3TSTZWrALksZ+EXon+tF32N6syR
+vDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWCTAfVCJTJyofv8UhBfCM3yf32l/Li
+4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhKR6OyujUKKguVmissjDTc8IWR4esP
+a6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+Q+6914ba9Q3fisI84sdgDHA3fZQ0
+b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZYAkivoDuzjkXtBK24jEijHGLcQX2
+k57YhpTVAgMBAAECggEADCtpORV3pEvJx5SNbXsNKC5eenV/HzzgZuyx3A5I3FCM
+PKoY+M4vMzO+zdjaB5eAoRrtja0Rz5iXQxlphlr4/QIhO5TqwPInbAFKSlU5b+/W
+v1GvYWhSTglPkSlEydjbBDRpItCyZxWnujgZfha7C0kvOmydkr3Vaa7sQl0aApaI
+M6XdrlspGb22Xez+4bJhXKPZDhmj+NA/B9XquTazEd5bRjGyDJ+IOWfJYPfHZzZr
+afGTkvLh+Q1JzBAXqzahhzfyZzv+fCkDdQc23rGrWjD2AsspjTlqDlODBlXFpLpT
+x2INSP/NyuBEOM/PX+rLuriwkCZeGgV6Xe3gGuAOJwKBgQD9JDofiERPmpeAIRvg
+kKpiUO6OhdMkYyWXLQvNODpmaeHM+efWyThSWJq1DAbLIUqiZOTVXrqpnjIEU3HT
+Ok0OY3YJDSsQJ7XOXa0L/HzNC3FvZfJi8F9zzP1B0Y2kMvgLTxWxgQk3zWRrxjbi
+YTU83+ftR2pOfbAiuNxhbWI9JwKBgQDbn1kE5uYxoYG+ur6TZHyxm+xwtEPRcwiZ
+KuiWaHQXKvMGm0i74oxV/ZoadEqtOUTrLJXoUa9V7XlTc9P4BNLb+fHpJXA5m3lP
+H9619pHMUt6PIF96kfegYdSYyT0h9kUoP8dy8Nf/9H1QFzJsp6LLRyRrCuwqfDvk
+2c7wIWpTowKBgBmQAPaSMiO/vrDHpyMEONB4z75AsVOpV3BushRlKzCQXKbwTYMZ
+CsD2BZlmv4DfucOwYJNTX5IlUXOyYXotFv7u+Epts/2LpQZT21eshYXHNAtFxjZL
+g7gT6TcuTBlatEWgFNa56w5hhVSEzaIKou+kxKznW0rV0mWPOWH1Q8hdAoGBAMj8
+ozLhPHjfHSW3MQEiTRsdXtwlnIrpg0zo/8HmBZfOLmo1YfLP+S4Y0Ba1pkGwz2mJ
+fAcH+jXhBc9hiPLJN08pBkIfiPyvU+0ddWuBIxyiGhtRvQ8m1j9oSG8qe0/BWLjk
+5VpDHumWjbfmArd9EnaFvMZZUJfw6b8dtUv8yJmRAoGAXEZRzEMJ1RBNyu7JBDM3
+0BA7X2Y6jQ8bnQkKmamxdxcDUx13Bw5f3N/SkZCLqKW4GF7/D1LmxDCxHQukznZZ
+3Jo4+hbQGXM43PAQ3bNraZgbBXX1bp3NMWA6wy5gKE/AxOTp/ntWQVA7DjL+bBDp
+aUH/mgKoWyGyJTtgXF0BHD4=
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.pem
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.pem
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.pem
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.pem
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,19 @@
+-----BEGIN CERTIFICATE-----
+MIIDBTCCAe2gAwIBAgIUTCSzaGDZAKIYI33B9kBVGElER2owDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NDlaFw0yNzEyMTgx
+MDQ4NDlaMBIxEDAOBgNVBAMMB1F0Uk8gQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB
+DwAwggEKAoIBAQDZK48/hEAdPMFS8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQ
+W3TSTZWrALksZ+EXon+tF32N6syRvDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWC
+TAfVCJTJyofv8UhBfCM3yf32l/Li4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhK
+R6OyujUKKguVmissjDTc8IWR4esPa6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+
+Q+6914ba9Q3fisI84sdgDHA3fZQ0b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZ
+YAkivoDuzjkXtBK24jEijHGLcQX2k57YhpTVAgMBAAGjUzBRMB0GA1UdDgQWBBRa
+KAEt1T0QwxIeQIJ2ST5k1kDqDjAfBgNVHSMEGDAWgBRaKAEt1T0QwxIeQIJ2ST5k
+1kDqDjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQDGKjCW69Dj
+mtTGszNJLicGOQKhHk9Vli6UdQ2DW442qEzXtvpv05cu2l99jdXwBP5BJo9MZnXR
+jduv693t4B6ujUy+XXHFzPGECTaQuBQeOHvwWLfsjE/ITtyyWKYnpY7ozXs3yzJq
+Ipl7xtXnVcEkaQkmphr27iJx66XznsReRYhRuJdy83XL9UXG/WALFqEz4OCUB+q7
+ON/szYNRp5C35DufgER8AD771DE/JBOpAxI1h80oTj9q+/1i12E6kJvnZ0gkN88b
+Bsb1stgtuSWVebvRCjSyQKZYy9liQbM5RyUHqjI5MudQQ3nleaGvJSowSDh60W5m
+cUtelIfR+X8U
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.srl
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.srl
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.srl
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/rootCA.srl
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1 @@
+7390820BD47F5A3C7398B7C8DCA218B35C2C2E2D
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/server.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/server.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/server.crt
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/server.crt
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,20 @@
+-----BEGIN CERTIFICATE-----
+MIIDNTCCAh2gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLiwwDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
+MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAL3xQANW6gjSqXHrb1MjziDPFIlbbMPHteRYryZX5xM7fmcX
+TrF4j3JPHyycl/fpq/5xPIagCkaLh2oC/EvPp/w+9p5E2Oe2M/nK5EGyCiGCWS2v
+fjcsxeVCTw8h+GqxveghWJzGAWFgfnCyKvXvWORwvSYVNpfKir2g9/YMp1aB9gsF
+4A5FgTWxZDfIYle5O1IQ5khKdufTJwKrxecUYkQRc3T2FqIaUpIvhHHFqIlYyJ+n
+WiG/QRB3AI8rEnbUArRyV/ygU76U6AaPW+S3InqtrlfUkE6nHmCLAVatN3TzQIF6
+RM/a5PpNdbJZ/pn7c6T8aWh0QCMI4d4s34Z9P3MCAwEAAaOBgDB+MB8GA1UdIwQY
+MBaAFFooAS3VPRDDEh5AgnZJPmTWQOoOMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTw
+MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA8GA1UdEQQIMAaHBH8AAAEwHQYDVR0OBBYE
+FE7IUaR0Vdi87Q5tPilRuzSGu4uqMA0GCSqGSIb3DQEBCwUAA4IBAQAyapkYYgdo
+QGcvMcfXdJ/lrbi8EnqdqV5wI/PD1n7Cx4wNMsaA4y58JuPZydlCcGLk4N1FhFoG
+hVzkeFjSTmKqI4sTYJbDfPKWXGzVhuMTVLtWQew6H/x4OeJJ5nm53/U3JGOwyELN
+vo7SV3aODiAJRHQpKtzOwYsjIa2T+8lDiMstDetH5yMrYFW6aD+nAc+eM8eUFmIM
+45qhc59EFc7wH4IKRDH4w0M4gU//PDTIQsjyKR1Sm6nZGh4fei47zggQsKX5NZZj
+KZSLN4wbF5qHigoyhfuFdwWi5X3VoGcY6m6xAocNq1vqbmzpRo6+M/DfBM0XBbmd
+g5Zk6pJ2xiVz
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/server.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/server.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert/server.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert/server.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC98UADVuoI0qlx
+629TI84gzxSJW2zDx7XkWK8mV+cTO35nF06xeI9yTx8snJf36av+cTyGoApGi4dq
+AvxLz6f8PvaeRNjntjP5yuRBsgohglktr343LMXlQk8PIfhqsb3oIVicxgFhYH5w
+sir171jkcL0mFTaXyoq9oPf2DKdWgfYLBeAORYE1sWQ3yGJXuTtSEOZISnbn0ycC
+q8XnFGJEEXN09haiGlKSL4RxxaiJWMifp1ohv0EQdwCPKxJ21AK0clf8oFO+lOgG
+j1vktyJ6ra5X1JBOpx5giwFWrTd080CBekTP2uT6TXWyWf6Z+3Ok/GlodEAjCOHe
+LN+GfT9zAgMBAAECggEAP/MmuzkbCKdsl0dOLu7CKret0WUvpGbr7ZqSNdWonggM
+0ca+HvBZU4IiG9IJNFW/K6aSWz0s2H2HtQCWUyvyAfJs8/J4GON2cmaGHTxFPuz0
++3W3h/oSEtMVbSHh0oJPTwVTIU1lD5T+XREPd8gC5L60YEsKG2b8+UVl1riB6pS2
+67hR631+eoc8QzGSWWl52vvMS2FlOHZu0dRcn5LgeO4PuNQiFHsqpTY4c/6QzwzD
+p7W2jJSFuwhv1wXyoGHmPtBXPh0jPQ2+Ctvw1VcancDdSfHC+AJBA3o/ZNxJBiAg
+3RTZiYqZx/p+6xDO/MuFHDgmjtxpXOW59RA1dWP2YQKBgQD+rK0G5MLXLkjGeewt
+25q5aSwMtcU32dd/oDYlc+zl6M8HqkoH7bRZ2w5aJiJgna4xyR/uH/CaKap7HtvV
+0pUYsWTZcNPAyUI7YLDLLzvyNS12BEGh5diAms70hIMcfLqBE6QpVaOyiB5nDMGl
+sPaX8k1vwMTrnG52GtMaKD21MQKBgQC+7lN+B6yGXSbA6gf/IIXSJ/GV9A0cgVi4
+9W690MEJ8F/2yTNH4lzoqk+Q2vs6Hllmt/n3Xi6k3WBGeAcBoSpER4tsNaM7U1W5
+gfYNLD2pyCJ/dggUG3QSyFSVjN5zEjJsvRIAcKRtS/Ok5iEK3hts47X8RuaQqtvS
+1qScJo2l4wKBgQDYrXOdTN7VE2UJsMwYDCKtI2U9/x0nsqkdxeKrpODmj1gtjl3k
+NwLd/HlOi+ltyFpfs13+TKB5mX+ZtxyU5NDDrJJASjVvbgxy1oY0qSBYp5PhOCfb
+JeI5MP1pnqCqiRhpH5vpKxrWl+c+B+VuIoz7pETsEte4GmUFCTeYpqox0QKBgDvR
+Bq9RUCe4P0/pAiBX3BT/FpzYHNN1YopvugYVxKSMfkQevMYkkN8DnHHRaSvIHlIk
+CVgKVaqpAGSTbf6As3E4yOFZ3I3VieHYaXGvDpKGdOhh3h4Oi8rmoDlKLNb4OHwA
+sAcbQyhKx0Y+ItP4ybbPkFA9Fjb0kHH5dRDGs1HpAoGBAMu56C/XK+xcSYxxMiUu
+4KM2h1CZVJoAmAcgM9hrE08/4PbWegNU1WkLolR6mZoR2/Z6fKeHyjSQcqhpV+gm
+ejObzHc+3MkEOA43R5GIEHgnYO1GpeoS0dxyhItt8K+2Exr3hqUF/sr+ouVlbADr
+9erdDgzkTU69hT6GizjQAYBV
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert.qrc
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert.qrc
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/sslcert.qrc
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/sslcert.qrc
    2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,11 @@
+<RCC>
+    <qresource prefix="/">
+        <file>sslcert/client.crt</file>
+        <file>sslcert/client.key</file>
+        <file>sslcert/rootCA.key</file>
+        <file>sslcert/rootCA.pem</file>
+        <file>sslcert/rootCA.srl</file>
+        <file>sslcert/server.crt</file>
+        <file>sslcert/server.key</file>
+    </qresource>
+</RCC>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/websocketiodevice.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/websocketiodevice.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/websocketiodevice.cpp
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/websocketiodevice.cpp
  2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,50 @@
+// Copyright (C) 2019 Ford Motor Company
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#include "websocketiodevice.h"
+
+WebSocketIoDevice::WebSocketIoDevice(QWebSocket *webSocket, QObject *parent)
+    : QIODevice(parent)
+    , m_socket(webSocket)
+{
+    open(QIODevice::ReadWrite);
+    connect(webSocket, &QWebSocket::disconnected, this, 
&WebSocketIoDevice::disconnected);
+    connect(webSocket, &QWebSocket::binaryMessageReceived, this, [this](const 
QByteArray &message){
+        m_buffer.append(message);
+        emit readyRead();
+    });
+    connect(webSocket, &QWebSocket::bytesWritten, this, 
&WebSocketIoDevice::bytesWritten);
+}
+
+qint64 WebSocketIoDevice::bytesAvailable() const
+{
+    return QIODevice::bytesAvailable() + m_buffer.size();
+}
+
+bool WebSocketIoDevice::isSequential() const
+{
+    return true;
+}
+
+void WebSocketIoDevice::close()
+{
+    if (m_socket)
+        m_socket->close();
+}
+
+qint64 WebSocketIoDevice::readData(char *data, qint64 maxlen)
+{
+    auto sz = std::min(maxlen, qint64(m_buffer.size()));
+    if (sz <= 0)
+        return sz;
+    memcpy(data, m_buffer.constData(), size_t(sz));
+    m_buffer.remove(0, sz);
+    return sz;
+}
+
+qint64 WebSocketIoDevice::writeData(const char *data, qint64 len)
+{
+    if (m_socket)
+        return m_socket->sendBinaryMessage(QByteArray{data, int(len)});
+    return -1;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/websocketiodevice.h
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/websocketiodevice.h
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/websocketiodevice.h
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/websocketiodevice.h
    2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,36 @@
+// Copyright (C) 2019 Ford Motor Company
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#ifndef WEBSOCKETIODEVICE_H
+#define WEBSOCKETIODEVICE_H
+
+#include <QBuffer>
+#include <QIODevice>
+#include <QPointer>
+#include <QWebSocket>
+
+class WebSocketIoDevice : public QIODevice
+{
+    Q_OBJECT
+public:
+    WebSocketIoDevice(QWebSocket *webSocket, QObject *parent = nullptr);
+
+signals:
+    void disconnected();
+
+    // QIODevice interface
+public:
+    qint64 bytesAvailable() const override;
+    bool isSequential() const override;
+    void close() override;
+
+protected:
+    qint64 readData(char *data, qint64 maxlen) override;
+    qint64 writeData(const char *data, qint64 len) override;
+
+private:
+    QPointer<QWebSocket> m_socket;
+    QByteArray m_buffer;
+};
+
+#endif // WEBSOCKETIODEVICE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/wsclient.pro
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/wsclient.pro
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsclient/wsclient.pro
   2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsclient/wsclient.pro
   2026-08-12 03:33:55.000000000 +0200
@@ -1,9 +1,15 @@
 QT += widgets remoteobjects websockets
 requires(qtConfig(treeview))
 
-SOURCES += main.cpp
+CONFIG -= app_bundle
 
-include(../common/common.pri)
+HEADERS += websocketiodevice.h
+
+SOURCES += \
+    main.cpp \
+    websocketiodevice.cpp
+
+RESOURCES += sslcert.qrc
 
 target.path = $$[QT_INSTALL_EXAMPLES]/remoteobjects/websockets/wsclient
 INSTALLS += target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/CMakeLists.txt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/CMakeLists.txt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/CMakeLists.txt
 2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/CMakeLists.txt
 2026-08-12 03:33:55.000000000 +0200
@@ -15,7 +15,7 @@
 find_package(Qt6 REQUIRED COMPONENTS Core Gui RemoteObjects WebSockets Widgets)
 
 qt_add_executable(wsserver
-    ../common/websocketiodevice.cpp ../common/websocketiodevice.h
+    websocketiodevice.cpp websocketiodevice.h
     main.cpp
 )
 
@@ -24,10 +24,6 @@
     MACOSX_BUNDLE FALSE
 )
 
-target_include_directories(wsserver PUBLIC
-    ../common
-)
-
 target_link_libraries(wsserver PUBLIC
     Qt::Core
     Qt::Gui
@@ -37,23 +33,21 @@
 )
 
 # Resources:
-set(cert_resource_files
-    "../common/cert/client.crt"
-    "../common/cert/client.key"
-    "../common/cert/rootCA.key"
-    "../common/cert/rootCA.pem"
-    "../common/cert/rootCA.srl"
-    "../common/cert/server.crt"
-    "../common/cert/server.key"
+set(sslcert_resource_files
+    "sslcert/client.crt"
+    "sslcert/client.key"
+    "sslcert/rootCA.key"
+    "sslcert/rootCA.pem"
+    "sslcert/rootCA.srl"
+    "sslcert/server.crt"
+    "sslcert/server.key"
 )
 
-qt6_add_resources(wsserver "cert"
+qt6_add_resources(wsserver "sslcert"
     PREFIX
-        "/sslcert"
-    BASE
-        "../common/cert"
+        "/"
     FILES
-        ${cert_resource_files}
+        ${sslcert_resource_files}
 )
 
 install(TARGETS wsserver
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/client.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/client.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/client.crt
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/client.crt
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,18 @@
+-----BEGIN CERTIFICATE-----
+MIIC9jCCAd6gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLi0wDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
+MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAKLVgG77bekyLvR6dO8ircufMmC8CFM2+wSPsmcGST+P2uru
+YjbCLCpsA6ogpaRS5w7G8FMHEaXBi6cxqeToKSekd37gq4wB2GiodiLcOEQe7NrL
+q7ZjwI+HjVSBL2d52kcrOm3HW8ARuPyIrXja6RA4lYsF8OYjeCEbLdvo8NvaC3p5
+gz7/mejL5jEfVbZbYA5gVadq+ox+x/+w4zB7IJte9RcIhRSb+a0god+X4FUUkTjE
+6NdKRZJ5wxC3MicMfkiAu9vMzpFk20SLhfrWWDtG0FDM8M7eIcJ6WcZKjNuNxKQK
+MGzWWA1o6S2vBBIXn/cxJCLJBdYoxfVkrYTw6PcCAwEAAaNCMEAwHQYDVR0OBBYE
+FD7SSgWDYbmRA3+phMAdi/UkzG7xMB8GA1UdIwQYMBaAFFooAS3VPRDDEh5AgnZJ
+PmTWQOoOMA0GCSqGSIb3DQEBCwUAA4IBAQBiIAUJcoK19qzDumVXXIrClwtVRr6y
+zMvfVhmhKiPvGPToKr4es8Rmv4csbRFth1HRQ8vZTLwLW99M+gtOACuenhoxZN7+
+nGVLUh4LmB2K06PCEy/FqVGSrxvzheTKojTJL8+Zn1ABQECD9fi6DxbdYOmrBX7W
+LcRh4tJ8KCwqwkqEoQXnbYGAR+di9PAdZ+siowDGYX+Ptx8WTu5MnBkDcl4Q92DP
+6y3r6xvlcVwHLyB4D3lV3wiSFS+8dj3eo18h/ELUdqF/htVd1RVdLgLQBRkgY1o3
+8BbfZxTyhwFTSvKCASFtWPg+QgWPsbXAs8v0UmKiCB93FxHBK9hBxoMh
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/client.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/client.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/client.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/client.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCi1YBu+23pMi70
+enTvIq3LnzJgvAhTNvsEj7JnBkk/j9rq7mI2wiwqbAOqIKWkUucOxvBTBxGlwYun
+Mank6CknpHd+4KuMAdhoqHYi3DhEHuzay6u2Y8CPh41UgS9nedpHKzptx1vAEbj8
+iK142ukQOJWLBfDmI3ghGy3b6PDb2gt6eYM+/5noy+YxH1W2W2AOYFWnavqMfsf/
+sOMweyCbXvUXCIUUm/mtIKHfl+BVFJE4xOjXSkWSecMQtzInDH5IgLvbzM6RZNtE
+i4X61lg7RtBQzPDO3iHCelnGSozbjcSkCjBs1lgNaOktrwQSF5/3MSQiyQXWKMX1
+ZK2E8Oj3AgMBAAECggEAURbKdTo/k2Q6zuPWrKnT67WVNGgfKzWTjsNyn+yY+I7O
+gbUB8uwCa4PL1WKZqnngd9LpJie8iZOXVMUeKpDUwdmc6nG+7COVHhVac2TAnmfa
+IuFPWy5U3AUwg/crYLflVBC6caXYUo9g1F3KKYe2ja3oBsoIG8tpDO+IiF156Llj
+Jsk6aGVS1b+raz0FeVdxOYiywepqxqtbT1dbLqv1G6Ze8P3wj2mGChsBK4nYDrDa
+BSQ2qGjIcj2ksTboWCgTYrTVdVoytyIP2whVoFY3qJCZzVaYP4nzCCh3cBt6xcN0
+OQmd/PM/6fOTTDiTo8l/DxkbQXYOjWICIiVKitp+oQKBgQDOHHkFaBy4VSqbICvc
+nDiELfMS2nxIgX65Q1hfiGgY8iNpW72B8Yhtb+/p7v0OjNGh8NMtLwt98sOSoXql
+sDiwR0EqdxOOJCC/32PS33TibFZVI/us/I4AdrOGd5Xzxe0JmuXuYmByuvIPlwsV
+8HwmTZwqKIMBmiEH4SJcBJ564QKBgQDKP2NH8USFbNBoIf8aoFnpTUQ7EMIGxN6+
+jZMh1IRolJZg3YdsGDM03Cnzb6RNVR7Tw7Bk7ud9PD3R6GjV2BXhzgaBcPaDOjsf
+L9yRmp59hEtGuAyCg3O3txgUl6Ct3HyS6vGN5kI6g5VVaECGSTHfev7I+MresZVj
+kPaVUbR21wKBgBtsjm25vJiKPHEHhs6DusFbm8wWZhL/p+zemROdArzO+wc5va1c
+hdqJ2lI2ClW1Ru9VK8QHTnAjrQIFmlwRZnmOAY206lUvWWwuPQoB0XuPDq2lbAdI
+U1ycbqalor4cx71PbuiZDlw1o5+PaVox9VLjYLP7T/MWnu59diToOG4BAoGBAJOa
+i4S36sBN2BQHq7ztBnGkuIU7B8AU8lOz04u/JBuHRfDP/MPBLa4IeH14HztpQiRf
+D1+6lCvsSVnm+owHNoEj8c+Kd/7yArASKDID3GPSp3WnYUnnUg7ki6iLuPLqlehL
+m5tqTy+RVO2ONnlK9iEaDNTz7mt0w4h1BeGYTdLlAoGABW3xJ6cVbXYkQmigfl5u
+eueOdMFkUm4fiUOf2Gs4TtQWQOO6OCIzVDUyQKzfNiUukOxwHoZ9oAiJW65G5TFQ
+5mX59bkH8kJPNqBAdAY3WeSRTjqK8NTrXhkFvw3UbNmBWmO8+VCdlNozYBFdmQxZ
+xJs+Z+AYZAhH77dInNIryuU=
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/readme
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/readme
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/readme
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/readme
 2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,2 @@
+These files are generated by the script located at 
tests/auto/external_IODevice/cert/generate.sh 
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDZK48/hEAdPMFS
+8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQW3TSTZWrALksZ+EXon+tF32N6syR
+vDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWCTAfVCJTJyofv8UhBfCM3yf32l/Li
+4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhKR6OyujUKKguVmissjDTc8IWR4esP
+a6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+Q+6914ba9Q3fisI84sdgDHA3fZQ0
+b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZYAkivoDuzjkXtBK24jEijHGLcQX2
+k57YhpTVAgMBAAECggEADCtpORV3pEvJx5SNbXsNKC5eenV/HzzgZuyx3A5I3FCM
+PKoY+M4vMzO+zdjaB5eAoRrtja0Rz5iXQxlphlr4/QIhO5TqwPInbAFKSlU5b+/W
+v1GvYWhSTglPkSlEydjbBDRpItCyZxWnujgZfha7C0kvOmydkr3Vaa7sQl0aApaI
+M6XdrlspGb22Xez+4bJhXKPZDhmj+NA/B9XquTazEd5bRjGyDJ+IOWfJYPfHZzZr
+afGTkvLh+Q1JzBAXqzahhzfyZzv+fCkDdQc23rGrWjD2AsspjTlqDlODBlXFpLpT
+x2INSP/NyuBEOM/PX+rLuriwkCZeGgV6Xe3gGuAOJwKBgQD9JDofiERPmpeAIRvg
+kKpiUO6OhdMkYyWXLQvNODpmaeHM+efWyThSWJq1DAbLIUqiZOTVXrqpnjIEU3HT
+Ok0OY3YJDSsQJ7XOXa0L/HzNC3FvZfJi8F9zzP1B0Y2kMvgLTxWxgQk3zWRrxjbi
+YTU83+ftR2pOfbAiuNxhbWI9JwKBgQDbn1kE5uYxoYG+ur6TZHyxm+xwtEPRcwiZ
+KuiWaHQXKvMGm0i74oxV/ZoadEqtOUTrLJXoUa9V7XlTc9P4BNLb+fHpJXA5m3lP
+H9619pHMUt6PIF96kfegYdSYyT0h9kUoP8dy8Nf/9H1QFzJsp6LLRyRrCuwqfDvk
+2c7wIWpTowKBgBmQAPaSMiO/vrDHpyMEONB4z75AsVOpV3BushRlKzCQXKbwTYMZ
+CsD2BZlmv4DfucOwYJNTX5IlUXOyYXotFv7u+Epts/2LpQZT21eshYXHNAtFxjZL
+g7gT6TcuTBlatEWgFNa56w5hhVSEzaIKou+kxKznW0rV0mWPOWH1Q8hdAoGBAMj8
+ozLhPHjfHSW3MQEiTRsdXtwlnIrpg0zo/8HmBZfOLmo1YfLP+S4Y0Ba1pkGwz2mJ
+fAcH+jXhBc9hiPLJN08pBkIfiPyvU+0ddWuBIxyiGhtRvQ8m1j9oSG8qe0/BWLjk
+5VpDHumWjbfmArd9EnaFvMZZUJfw6b8dtUv8yJmRAoGAXEZRzEMJ1RBNyu7JBDM3
+0BA7X2Y6jQ8bnQkKmamxdxcDUx13Bw5f3N/SkZCLqKW4GF7/D1LmxDCxHQukznZZ
+3Jo4+hbQGXM43PAQ3bNraZgbBXX1bp3NMWA6wy5gKE/AxOTp/ntWQVA7DjL+bBDp
+aUH/mgKoWyGyJTtgXF0BHD4=
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.pem
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.pem
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.pem
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.pem
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,19 @@
+-----BEGIN CERTIFICATE-----
+MIIDBTCCAe2gAwIBAgIUTCSzaGDZAKIYI33B9kBVGElER2owDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NDlaFw0yNzEyMTgx
+MDQ4NDlaMBIxEDAOBgNVBAMMB1F0Uk8gQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB
+DwAwggEKAoIBAQDZK48/hEAdPMFS8KFOEhlAEBQiJ6JdVoQ4ihM4yWDmaToLzckQ
+W3TSTZWrALksZ+EXon+tF32N6syRvDfjmBckOJ5+h3byKBt5yxzeDbdgUeJQ0iWC
+TAfVCJTJyofv8UhBfCM3yf32l/Li4pko9/VEJ6Eruv1XVjQtVUhpNqRHSS1vnfhK
+R6OyujUKKguVmissjDTc8IWR4esPa6mWiKjFEEv4hT/YmHzD7SLseubxmqUwhBU+
+Q+6914ba9Q3fisI84sdgDHA3fZQ0b1hETbjmt3Q1VP3GlMoQ4puu43LuOtTx8OGZ
+YAkivoDuzjkXtBK24jEijHGLcQX2k57YhpTVAgMBAAGjUzBRMB0GA1UdDgQWBBRa
+KAEt1T0QwxIeQIJ2ST5k1kDqDjAfBgNVHSMEGDAWgBRaKAEt1T0QwxIeQIJ2ST5k
+1kDqDjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQDGKjCW69Dj
+mtTGszNJLicGOQKhHk9Vli6UdQ2DW442qEzXtvpv05cu2l99jdXwBP5BJo9MZnXR
+jduv693t4B6ujUy+XXHFzPGECTaQuBQeOHvwWLfsjE/ITtyyWKYnpY7ozXs3yzJq
+Ipl7xtXnVcEkaQkmphr27iJx66XznsReRYhRuJdy83XL9UXG/WALFqEz4OCUB+q7
+ON/szYNRp5C35DufgER8AD771DE/JBOpAxI1h80oTj9q+/1i12E6kJvnZ0gkN88b
+Bsb1stgtuSWVebvRCjSyQKZYy9liQbM5RyUHqjI5MudQQ3nleaGvJSowSDh60W5m
+cUtelIfR+X8U
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.srl
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.srl
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.srl
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/rootCA.srl
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1 @@
+7390820BD47F5A3C7398B7C8DCA218B35C2C2E2D
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/server.crt
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/server.crt
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/server.crt
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/server.crt
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,20 @@
+-----BEGIN CERTIFICATE-----
+MIIDNTCCAh2gAwIBAgIUc5CCC9R/WjxzmLfI3KIYs1wsLiwwDQYJKoZIhvcNAQEL
+BQAwEjEQMA4GA1UEAwwHUXRSTyBDQTAeFw0yNTA5MDMxMDQ4NTBaFw0yNzEyMDcx
+MDQ4NTBaMBQxEjAQBgNVBAMMCTEyNy4wLjAuMTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAL3xQANW6gjSqXHrb1MjziDPFIlbbMPHteRYryZX5xM7fmcX
+TrF4j3JPHyycl/fpq/5xPIagCkaLh2oC/EvPp/w+9p5E2Oe2M/nK5EGyCiGCWS2v
+fjcsxeVCTw8h+GqxveghWJzGAWFgfnCyKvXvWORwvSYVNpfKir2g9/YMp1aB9gsF
+4A5FgTWxZDfIYle5O1IQ5khKdufTJwKrxecUYkQRc3T2FqIaUpIvhHHFqIlYyJ+n
+WiG/QRB3AI8rEnbUArRyV/ygU76U6AaPW+S3InqtrlfUkE6nHmCLAVatN3TzQIF6
+RM/a5PpNdbJZ/pn7c6T8aWh0QCMI4d4s34Z9P3MCAwEAAaOBgDB+MB8GA1UdIwQY
+MBaAFFooAS3VPRDDEh5AgnZJPmTWQOoOMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTw
+MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA8GA1UdEQQIMAaHBH8AAAEwHQYDVR0OBBYE
+FE7IUaR0Vdi87Q5tPilRuzSGu4uqMA0GCSqGSIb3DQEBCwUAA4IBAQAyapkYYgdo
+QGcvMcfXdJ/lrbi8EnqdqV5wI/PD1n7Cx4wNMsaA4y58JuPZydlCcGLk4N1FhFoG
+hVzkeFjSTmKqI4sTYJbDfPKWXGzVhuMTVLtWQew6H/x4OeJJ5nm53/U3JGOwyELN
+vo7SV3aODiAJRHQpKtzOwYsjIa2T+8lDiMstDetH5yMrYFW6aD+nAc+eM8eUFmIM
+45qhc59EFc7wH4IKRDH4w0M4gU//PDTIQsjyKR1Sm6nZGh4fei47zggQsKX5NZZj
+KZSLN4wbF5qHigoyhfuFdwWi5X3VoGcY6m6xAocNq1vqbmzpRo6+M/DfBM0XBbmd
+g5Zk6pJ2xiVz
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/server.key
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/server.key
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert/server.key
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert/server.key
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC98UADVuoI0qlx
+629TI84gzxSJW2zDx7XkWK8mV+cTO35nF06xeI9yTx8snJf36av+cTyGoApGi4dq
+AvxLz6f8PvaeRNjntjP5yuRBsgohglktr343LMXlQk8PIfhqsb3oIVicxgFhYH5w
+sir171jkcL0mFTaXyoq9oPf2DKdWgfYLBeAORYE1sWQ3yGJXuTtSEOZISnbn0ycC
+q8XnFGJEEXN09haiGlKSL4RxxaiJWMifp1ohv0EQdwCPKxJ21AK0clf8oFO+lOgG
+j1vktyJ6ra5X1JBOpx5giwFWrTd080CBekTP2uT6TXWyWf6Z+3Ok/GlodEAjCOHe
+LN+GfT9zAgMBAAECggEAP/MmuzkbCKdsl0dOLu7CKret0WUvpGbr7ZqSNdWonggM
+0ca+HvBZU4IiG9IJNFW/K6aSWz0s2H2HtQCWUyvyAfJs8/J4GON2cmaGHTxFPuz0
++3W3h/oSEtMVbSHh0oJPTwVTIU1lD5T+XREPd8gC5L60YEsKG2b8+UVl1riB6pS2
+67hR631+eoc8QzGSWWl52vvMS2FlOHZu0dRcn5LgeO4PuNQiFHsqpTY4c/6QzwzD
+p7W2jJSFuwhv1wXyoGHmPtBXPh0jPQ2+Ctvw1VcancDdSfHC+AJBA3o/ZNxJBiAg
+3RTZiYqZx/p+6xDO/MuFHDgmjtxpXOW59RA1dWP2YQKBgQD+rK0G5MLXLkjGeewt
+25q5aSwMtcU32dd/oDYlc+zl6M8HqkoH7bRZ2w5aJiJgna4xyR/uH/CaKap7HtvV
+0pUYsWTZcNPAyUI7YLDLLzvyNS12BEGh5diAms70hIMcfLqBE6QpVaOyiB5nDMGl
+sPaX8k1vwMTrnG52GtMaKD21MQKBgQC+7lN+B6yGXSbA6gf/IIXSJ/GV9A0cgVi4
+9W690MEJ8F/2yTNH4lzoqk+Q2vs6Hllmt/n3Xi6k3WBGeAcBoSpER4tsNaM7U1W5
+gfYNLD2pyCJ/dggUG3QSyFSVjN5zEjJsvRIAcKRtS/Ok5iEK3hts47X8RuaQqtvS
+1qScJo2l4wKBgQDYrXOdTN7VE2UJsMwYDCKtI2U9/x0nsqkdxeKrpODmj1gtjl3k
+NwLd/HlOi+ltyFpfs13+TKB5mX+ZtxyU5NDDrJJASjVvbgxy1oY0qSBYp5PhOCfb
+JeI5MP1pnqCqiRhpH5vpKxrWl+c+B+VuIoz7pETsEte4GmUFCTeYpqox0QKBgDvR
+Bq9RUCe4P0/pAiBX3BT/FpzYHNN1YopvugYVxKSMfkQevMYkkN8DnHHRaSvIHlIk
+CVgKVaqpAGSTbf6As3E4yOFZ3I3VieHYaXGvDpKGdOhh3h4Oi8rmoDlKLNb4OHwA
+sAcbQyhKx0Y+ItP4ybbPkFA9Fjb0kHH5dRDGs1HpAoGBAMu56C/XK+xcSYxxMiUu
+4KM2h1CZVJoAmAcgM9hrE08/4PbWegNU1WkLolR6mZoR2/Z6fKeHyjSQcqhpV+gm
+ejObzHc+3MkEOA43R5GIEHgnYO1GpeoS0dxyhItt8K+2Exr3hqUF/sr+ouVlbADr
+9erdDgzkTU69hT6GizjQAYBV
+-----END PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert.qrc
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert.qrc
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/sslcert.qrc
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/sslcert.qrc
    2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,11 @@
+<RCC>
+    <qresource prefix="/">
+        <file>sslcert/client.crt</file>
+        <file>sslcert/client.key</file>
+        <file>sslcert/rootCA.key</file>
+        <file>sslcert/rootCA.pem</file>
+        <file>sslcert/rootCA.srl</file>
+        <file>sslcert/server.crt</file>
+        <file>sslcert/server.key</file>
+    </qresource>
+</RCC>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/websocketiodevice.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/websocketiodevice.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/websocketiodevice.cpp
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/websocketiodevice.cpp
  2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,50 @@
+// Copyright (C) 2019 Ford Motor Company
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#include "websocketiodevice.h"
+
+WebSocketIoDevice::WebSocketIoDevice(QWebSocket *webSocket, QObject *parent)
+    : QIODevice(parent)
+    , m_socket(webSocket)
+{
+    open(QIODevice::ReadWrite);
+    connect(webSocket, &QWebSocket::disconnected, this, 
&WebSocketIoDevice::disconnected);
+    connect(webSocket, &QWebSocket::binaryMessageReceived, this, [this](const 
QByteArray &message){
+        m_buffer.append(message);
+        emit readyRead();
+    });
+    connect(webSocket, &QWebSocket::bytesWritten, this, 
&WebSocketIoDevice::bytesWritten);
+}
+
+qint64 WebSocketIoDevice::bytesAvailable() const
+{
+    return QIODevice::bytesAvailable() + m_buffer.size();
+}
+
+bool WebSocketIoDevice::isSequential() const
+{
+    return true;
+}
+
+void WebSocketIoDevice::close()
+{
+    if (m_socket)
+        m_socket->close();
+}
+
+qint64 WebSocketIoDevice::readData(char *data, qint64 maxlen)
+{
+    auto sz = std::min(maxlen, qint64(m_buffer.size()));
+    if (sz <= 0)
+        return sz;
+    memcpy(data, m_buffer.constData(), size_t(sz));
+    m_buffer.remove(0, sz);
+    return sz;
+}
+
+qint64 WebSocketIoDevice::writeData(const char *data, qint64 len)
+{
+    if (m_socket)
+        return m_socket->sendBinaryMessage(QByteArray{data, int(len)});
+    return -1;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/websocketiodevice.h
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/websocketiodevice.h
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/websocketiodevice.h
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/websocketiodevice.h
    2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,36 @@
+// Copyright (C) 2019 Ford Motor Company
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#ifndef WEBSOCKETIODEVICE_H
+#define WEBSOCKETIODEVICE_H
+
+#include <QBuffer>
+#include <QIODevice>
+#include <QPointer>
+#include <QWebSocket>
+
+class WebSocketIoDevice : public QIODevice
+{
+    Q_OBJECT
+public:
+    WebSocketIoDevice(QWebSocket *webSocket, QObject *parent = nullptr);
+
+signals:
+    void disconnected();
+
+    // QIODevice interface
+public:
+    qint64 bytesAvailable() const override;
+    bool isSequential() const override;
+    void close() override;
+
+protected:
+    qint64 readData(char *data, qint64 maxlen) override;
+    qint64 writeData(const char *data, qint64 len) override;
+
+private:
+    QPointer<QWebSocket> m_socket;
+    QByteArray m_buffer;
+};
+
+#endif // WEBSOCKETIODEVICE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/wsserver.pro
 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/wsserver.pro
--- 
old/qtremoteobjects-everywhere-src-6.11.1/examples/remoteobjects/websockets/wsserver/wsserver.pro
   2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/examples/remoteobjects/websockets/wsserver/wsserver.pro
   2026-08-12 03:33:55.000000000 +0200
@@ -1,9 +1,15 @@
 QT += widgets remoteobjects websockets
 requires(qtConfig(treeview))
 
-SOURCES += main.cpp
+CONFIG -= app_bundle
 
-include(../common/common.pri)
+HEADERS += websocketiodevice.h
+
+SOURCES += \
+    main.cpp \
+    websocketiodevice.cpp
+
+RESOURCES += sslcert.qrc
 
 target.path = $$[QT_INSTALL_EXAMPLES]/remoteobjects/websockets/wsserver
 INSTALLS += target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/doc/src/remoteobjects-index.qdoc
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/doc/src/remoteobjects-index.qdoc
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/doc/src/remoteobjects-index.qdoc
        2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/doc/src/remoteobjects-index.qdoc
        2026-08-12 03:33:55.000000000 +0200
@@ -111,6 +111,7 @@
     \li \l {Troubleshooting Qt Remote Objects}{Troubleshooting}
     \li \l {Qt Remote Objects Protocol Versioning}{Protocol Versioning}
     \li \l {Qt Remote Objects Examples}{Examples}
+    \li \l {Qt Remote Objects Security Considerations}{Security Considerations}
  \endlist
 
 \section2 API Reference
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/doc/src/remoteobjects-security.qdoc
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/doc/src/remoteobjects-security.qdoc
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/doc/src/remoteobjects-security.qdoc
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/doc/src/remoteobjects-security.qdoc
     2026-08-12 03:33:55.000000000 +0200
@@ -0,0 +1,30 @@
+// Copyright (C) 2026 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR 
GFDL-1.3-no-invariants-only
+
+/*!
+    \page qtremoteobjects-security.html
+    \title Qt Remote Objects Security Considerations
+    \ingroup security-considerations
+    \brief Security considerations for Qt Remote Objects.
+
+    \section1 Overview
+
+    The purpose of Qt Remote Objects is the ability to call methods on
+    objects that are not in the same process or on the same host as if
+    they are in the same process. However, the Qt Remote Objects module is
+    not designed with security in mind and provides no authentication of
+    other hosts. The protocol has no way of discovering if two hosts are
+    using different versions of the shared objects, and attackers sending
+    random data can cause misbehavior or crashing. Because all hosts have
+    equal access to the same methods on the shared objects, a single host
+    can flood the others with high rates of method calls and large amounts
+    of data. It must therefore be used in a trusted environment protected
+    from the internet.
+
+    \warning Exposing Qt Remote Objects directly to the internet is a security
+    risk. Qt Remote Objects is not hardened against network-based attacks.
+
+    If internet-facing access to Qt Remote Objects functionality is needed, 
isolate
+    the Qt Remote Objects nodes behind a hardened application-level gateway 
that
+    exposes only the specific operations required.
+*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectnode.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectnode.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectnode.cpp
   2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectnode.cpp
   2026-08-12 03:33:55.000000000 +0200
@@ -99,7 +99,7 @@
             QMetaType::unregisterMetaType(QMetaType(id));
         else
             fakeClassIdManager()->removeTypeById(id);
-        for (auto enumMetaType : enumMetaTypes)
+        for (auto enumMetaType : std::as_const(enumMetaTypes))
             QMetaType::unregisterMetaType(enumMetaType);
         free(metaObject);
     }
@@ -782,8 +782,8 @@
 
 QRemoteObjectMetaObjectManager::~QRemoteObjectMetaObjectManager()
 {
-    for (QMetaObject *mo : dynamicTypes) {
-        for (auto metaType : enumTypes[mo])
+    for (QMetaObject *mo : std::as_const(dynamicTypes)) {
+        for (auto metaType : std::as_const(enumTypes[mo]))
             QMetaType::unregisterMetaType(metaType);
         enumTypes.remove(mo);
         free(mo); //QMetaObjectBuilder uses malloc, not new
@@ -968,7 +968,7 @@
     gadgetBuilder.setClassName(typeName);
     gadgetBuilder.setFlags(PropertyAccessInStaticMetaCall);
 
-    auto [enumLookup, enumsToBeAssignedMetaObject] = 
handleEnums(gadgetBuilder, gadget.enums, typeName);
+    const auto [enumLookup, enumsToBeAssignedMetaObject] = 
handleEnums(gadgetBuilder, gadget.enums, typeName);
     for (auto metaType : enumLookup)
         entry.enumMetaTypes.append(metaType);
 
@@ -1081,14 +1081,14 @@
     // that dynamic Sources are being added, we will have registration issues 
unless we have
     // distinct names for Replicas and Sources.  To not break existing code, 
we will append
     // "Source" to the type name if it is a Source, but leave Replica class 
names alone.
-    auto type = data.type + (data.isSource ? "Source" : "");
+    const QByteArray type = data.type + (data.isSource ? "Source" : "");
     QMetaObjectBuilder builder;
     builder.setSuperClass(data.baseMeta);
 
     builder.addClassInfo(QCLASSINFO_REMOTEOBJECT_TYPE, data.type);
     builder.setClassName(type);
 
-    auto [enumLookup, enumsToBeAssignedMetaObject] = handleEnums(builder, 
data.enums, type);
+    const auto [enumLookup, enumsToBeAssignedMetaObject] = 
handleEnums(builder, data.enums, type);
 
     for (const auto &signal : data._signals) {
         auto mmb = builder.addSignal(signal.signature);
@@ -1134,7 +1134,7 @@
 
 QMetaObject *registerAndTrackDefinition(const ClassData &data, QObject 
*reference)
 {
-    auto [meta, newEnums] = registerDefinition(data);
+    const auto [meta, newEnums] = registerDefinition(data);
     if (reference) {
         ManagedTypeEntry entry;
         auto id = fakeClassIdManager->addTypeName(meta->className());
@@ -1249,8 +1249,6 @@
     classData._slots.reserve(numMethods);
     for (quint32 i = 0; i < numMethods; ++i) {
         ClassSlot classSlot;
-        QByteArray signature, returnType;
-        QByteArrayList paramNames;
         in >> classSlot.signature;
         in >> classSlot.returnType;
         in >> classSlot.parameterNames;
@@ -2440,7 +2438,8 @@
 
 void 
QRemoteObjectNodePrivate::handlePointerToQObjectProperties(QConnectedReplicaImplementation
 *rep, QVariantList &properties)
 {
-    for (const int index : rep->childIndices())
+    const auto childIndices = rep->childIndices();
+    for (const int index : childIndices)
         properties[index] = handlePointerToQObjectProperty(rep, index, 
properties.at(index));
 }
 
@@ -2866,14 +2865,14 @@
         if (state != QRemoteObjectRegistry::Suspect)
             return;
         // unproxy all objects
-        for (ProxyReplicaInfo* info : proxiedReplicas)
+        for (ProxyReplicaInfo* info : std::as_const(proxiedReplicas))
             disableAndDeleteObject(info);
         proxiedReplicas.clear();
     });
 }
 
 ProxyInfo::~ProxyInfo() {
-    for (ProxyReplicaInfo* info : proxiedReplicas)
+    for (ProxyReplicaInfo* info : std::as_const(proxiedReplicas))
         delete info;
     delete proxyNode;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectpacket.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectpacket.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectpacket.cpp
 2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectpacket.cpp
 2026-08-12 03:33:55.000000000 +0200
@@ -595,7 +595,7 @@
             dynamicEnumMetaObjects.insert(metaEnum.enclosingMetaObject());
     }
     ds << quint32(qtEnums.size());
-    for (const auto &metaEnum : qtEnums) {
+    for (const auto &metaEnum : std::as_const(qtEnums)) {
         QByteArray enumName(metaEnum.scope());
         enumName.append("::", 2).append(metaEnum.name());
         ds << enumName;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectreplica.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectreplica.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectreplica.cpp
        2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectreplica.cpp
        2026-08-12 03:33:55.000000000 +0200
@@ -119,7 +119,7 @@
         
connectionToSource->d_func()->m_codec->serializeRemoveObjectPacket(m_objectName);
         sendCommand();
     }
-    for (auto prop : m_propertyStorage) {
+    for (const auto &prop : std::as_const(m_propertyStorage)) {
         if (prop.canConvert<QObject*>()) {
             if (auto o = prop.value<QObject*>())
                 o->deleteLater();
@@ -284,7 +284,8 @@
 void QConnectedReplicaImplementation::setDynamicProperties(QVariantList 
&&values)
 {
     
QRemoteObjectReplicaImplementation::setDynamicProperties(std::move(values));
-    for (QRemoteObjectReplica *obj : std::exchange(m_parentsNeedingConnect, 
{}))
+    const auto parentsNeedingConnect = std::exchange(m_parentsNeedingConnect, 
{});
+    for (QRemoteObjectReplica *obj : parentsNeedingConnect)
         configurePrivate(obj);
 
     Q_ASSERT(m_state.loadAcquire() < QRemoteObjectReplica::Valid);
@@ -481,7 +482,8 @@
     Q_ASSERT(connectionToSource);
     connectionToSource.clear();
     setState(QRemoteObjectReplica::State::Suspect);
-    for (const int index : childIndices()) {
+    const auto childIds = childIndices();
+    for (const int index : childIds) {
         auto pointerToQObject = qvariant_cast<QObject *>(getProperty(index));
         auto child = qobject_cast<QRemoteObjectReplica *>(pointerToQObject);
         if (child) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectsource.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectsource.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectsource.cpp
 2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectsource.cpp
 2026-08-12 03:33:55.000000000 +0200
@@ -198,7 +198,8 @@
                     else {
                         roles.clear();
                         const auto knownRoles = model->roleNames();
-                        for (auto role : modelInfo.roles.split('|')) {
+                        const auto modelInfoRoles = modelInfo.roles.split('|');
+                        for (const auto &role : modelInfoRoles) {
                             if (role.isEmpty())
                                 continue;
                             const int roleIndex = knownRoles.key(role, -1);
@@ -321,42 +322,43 @@
         return;
 
     if (!newObject) {
-        for (auto child : m_children)
+        for (const auto &child : std::as_const(m_children))
             child->resetObject(nullptr);
         return;
     }
 
-    for (int i : m_children.keys()) {
+    for (const auto &[i, val] : std::as_const(m_children).asKeyValueRange()) {
         const int index = m_api->sourcePropertyIndex(i);
         const auto property = m_object->metaObject()->property(index);
         QObject *child = property.read(m_object).value<QObject *>();
-        m_children[i]->resetObject(child);
+        val->resetObject(child);
     }
 }
 
 QRemoteObjectSource::~QRemoteObjectSource()
 {
-    for (auto it : m_children) {
+    for (const auto &it : std::as_const(m_children)) {
         // We used QPointers for m_children because we don't control the 
lifetime of child QObjects
         // Since the this/source QObject's parent is the referenced QObject, 
it could have already
         // been deleted
-        delete it;
+        delete it.data();
     }
 }
 
 QRemoteObjectRootSource::~QRemoteObjectRootSource()
 {
-    for (auto it : m_children) {
+    for (const auto &it : std::as_const(m_children)) {
         // We used QPointers for m_children because we don't control the 
lifetime of child QObjects
         // Since the this/source QObject's parent is the referenced QObject, 
it could have already
         // been deleted
-        delete it;
+        delete it.data();
     }
     d->m_sourceIo->unregisterSource(this);
     // removeListener tries to modify d->m_listeners, this is O(N²),
     // so clear d->m_listeners prior to calling unregister (consume loop).
     // We can do this, because we don't care about the return value of 
removeListener() here.
-    for (QtROIoDeviceBase *io : std::exchange(d->m_listeners, {})) {
+    const auto listeners = std::exchange(d->m_listeners, {});
+    for (QtROIoDeviceBase *io : listeners) {
         removeListener(io, true);
     }
     delete d;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectsource.h
 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectsource.h
--- 
old/qtremoteobjects-everywhere-src-6.11.1/src/remoteobjects/qremoteobjectsource.h
   2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/src/remoteobjects/qremoteobjectsource.h
   2026-08-12 03:33:55.000000000 +0200
@@ -15,7 +15,7 @@
 
 //Based on compile time checks for static connect() from qobjectdefs_impl.h
 template <class ObjectType, typename Func1, typename Func2>
-static inline int qtro_property_index(Func1, Func2, const char *propName)
+int qtro_property_index(Func1, Func2, const char *propName)
 {
     typedef QtPrivate::FunctionPointer<Func1> Type1;
     typedef QtPrivate::FunctionPointer<Func2> Type2;
@@ -31,7 +31,7 @@
 }
 
 template <class ObjectType, typename Func1, typename Func2>
-static inline int qtro_signal_index(Func1 func, Func2, int *count, int const 
**types)
+int qtro_signal_index(Func1 func, Func2, int *count, int const **types)
 {
     typedef QtPrivate::FunctionPointer<Func1> Type1;
     typedef QtPrivate::FunctionPointer<Func2> Type2;
@@ -50,7 +50,7 @@
 }
 
 template <class ObjectType, typename Func1, typename Func2>
-static inline void qtro_method_test(Func1, Func2)
+void qtro_method_test(Func1, Func2)
 {
     typedef QtPrivate::FunctionPointer<Func1> Type1;
     typedef QtPrivate::FunctionPointer<Func2> Type2;
@@ -69,7 +69,7 @@
                            const char *methodName, int *count, const int 
**types);
 
 template <class ObjectType, typename Func1, typename Func2>
-static inline int qtro_method_index(Func1, Func2, const char *methodName, int 
*count, int const **types)
+int qtro_method_index(Func1, Func2, const char *methodName, int *count, int 
const **types)
 {
     typedef QtPrivate::FunctionPointer<Func1> Type1;
     typedef QtPrivate::FunctionPointer<Func2> Type2;
@@ -90,7 +90,7 @@
 }
 
 template <class ObjectType>
-static inline QByteArray qtro_enum_signature(const char *enumName)
+QByteArray qtro_enum_signature(const char *enumName)
 {
     const auto qme = 
ObjectType::staticMetaObject.enumerator(ObjectType::staticMetaObject.indexOfEnumerator(enumName));
     return QByteArrayLiteral("1::2").replace("1", qme.scope()).replace("2", 
qme.name());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/tests/auto/integration/enum.rep 
new/qtremoteobjects-everywhere-src-6.11.2/tests/auto/integration/enum.rep
--- old/qtremoteobjects-everywhere-src-6.11.1/tests/auto/integration/enum.rep   
2026-05-08 03:19:14.000000000 +0200
+++ new/qtremoteobjects-everywhere-src-6.11.2/tests/auto/integration/enum.rep   
2026-08-12 03:33:55.000000000 +0200
@@ -7,3 +7,9 @@
     PROP(ClassEnum classEnum)
     PROP(ClassEnum classEnumRW READWRITE)
 }
+
+class TestClass2
+{
+    ENUM ClassEnum {Null, One, Two}
+    SLOT(ClassEnum getEnum())
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtremoteobjects-everywhere-src-6.11.1/tests/auto/integration/tst_integration.cpp
 
new/qtremoteobjects-everywhere-src-6.11.2/tests/auto/integration/tst_integration.cpp
--- 
old/qtremoteobjects-everywhere-src-6.11.1/tests/auto/integration/tst_integration.cpp
        2026-05-08 03:19:14.000000000 +0200
+++ 
new/qtremoteobjects-everywhere-src-6.11.2/tests/auto/integration/tst_integration.cpp
        2026-08-12 03:33:55.000000000 +0200
@@ -125,6 +125,12 @@
     }
 };
 
+class TestClass2Impl : public TestClass2SimpleSource
+{
+public:
+    TestClass2Source::ClassEnum getEnum() override { return 
TestClass2Source::Two; }
+};
+
 
 class tst_Integration: public QObject
 {
@@ -413,6 +419,26 @@
         }
     }
 
+    void enumReturnValueTest()
+    {
+        setupHost();
+        setupClient();
+
+        TestClass2Impl tc;
+        host->enableRemoting<TestClass2SourceAPI>(&tc);
+        const std::unique_ptr<TestClass2Replica> 
tc_rep(client->acquire<TestClass2Replica>());
+        QVERIFY(tc_rep->waitForSource());
+
+        QRemoteObjectPendingReply<TestClass2Replica::ClassEnum> reply = 
tc_rep->getEnum();
+        QVERIFY(reply.waitForFinished());
+        QCOMPARE(reply.error(), QRemoteObjectPendingCall::NoError);
+
+#if QT_VERSION < QT_VERSION_CHECK(6, 12, 0)
+        QEXPECT_FAIL("", "515711c520975049fea242eb08c6036b831c9655 missing", 
Continue);
+#endif
+        QCOMPARE(reply.returnValue(), TestClass2Replica::Two);
+    }
+
     void namedObjectTest()
     {
         setupHost();

Reply via email to