summaryrefslogtreecommitdiff
path: root/deskutils/kdeconnect-kde/files
diff options
context:
space:
mode:
Diffstat (limited to 'deskutils/kdeconnect-kde/files')
-rw-r--r--deskutils/kdeconnect-kde/files/patch-core_backends_lan_lanlinkprovider.cpp45
-rw-r--r--deskutils/kdeconnect-kde/files/patch-plugins_sftp_mounter.cpp6
2 files changed, 19 insertions, 32 deletions
diff --git a/deskutils/kdeconnect-kde/files/patch-core_backends_lan_lanlinkprovider.cpp b/deskutils/kdeconnect-kde/files/patch-core_backends_lan_lanlinkprovider.cpp
index 9fb5f425bff6..61b97c9f081a 100644
--- a/deskutils/kdeconnect-kde/files/patch-core_backends_lan_lanlinkprovider.cpp
+++ b/deskutils/kdeconnect-kde/files/patch-core_backends_lan_lanlinkprovider.cpp
@@ -1,32 +1,19 @@
---- core/backends/lan/lanlinkprovider.cpp.orig 2025-11-01 18:19:03 UTC
+--- core/backends/lan/lanlinkprovider.cpp.orig 2025-12-03 23:06:29 UTC
+++ core/backends/lan/lanlinkprovider.cpp
-@@ -427,6 +427,7 @@ void LanLinkProvider::encrypted()
+@@ -303,6 +303,16 @@ void LanLinkProvider::udpBroadcastReceived()
+ m_lastConnectionTime[deviceId] = now;
- NetworkPacket *identityPacket = m_receivedIdentityPackets[socket].np;
-
-+ QString deviceId = identityPacket->get<QString>(QStringLiteral("deviceId"));
- int protocolVersion = identityPacket->get<int>(QStringLiteral("protocolVersion"), -1);
- if (protocolVersion >= 8) {
- disconnect(socket, &QObject::destroyed, nullptr, nullptr);
-@@ -435,7 +436,7 @@ void LanLinkProvider::encrypted()
- NetworkPacket myIdentity = KdeConnectConfig::instance().deviceInfo().toIdentityPacket();
- socket->write(myIdentity.serialize());
- socket->flush();
-- connect(socket, &QIODevice::readyRead, this, [this, socket, protocolVersion]() {
-+ connect(socket, &QIODevice::readyRead, this, [this, socket, protocolVersion, deviceId]() {
- if (!socket->canReadLine()) {
- // This can happen if the packet is large enough to be split in two chunks
- return;
-@@ -452,6 +453,12 @@ void LanLinkProvider::encrypted()
- int newProtocolVersion = secureIdentityPacket->get<int>(QStringLiteral("protocolVersion"), 0);
- if (newProtocolVersion != protocolVersion) {
- qCWarning(KDECONNECT_CORE) << "Protocol version changed half-way through the handshake:" << protocolVersion << "->" << newProtocolVersion;
-+ return;
+ int tcpPort = receivedPacket->get<int>(QStringLiteral("tcpPort"));
++ // convert IPv6 addresses of type "v4-mapped" to IPv4
++ QHostAddress addr = sender;
++ if (addr.protocol() == QAbstractSocket::IPv6Protocol) {
++ bool success;
++ QHostAddress convertedAddr = QHostAddress(addr.toIPv4Address(&success));
++ if (success) {
++ // qCDebug(KDECONNECT_CORE) << "Converting IPv6" << addr << "to IPv4" << convertedAddr;
++ sender = convertedAddr;
+ }
-+ QString newDeviceId = secureIdentityPacket->get<QString>(QStringLiteral("deviceId"));
-+ if (newDeviceId != deviceId) {
-+ qCWarning(KDECONNECT_CORE) << "Device ID changed half-way through the handshake:" << deviceId << "->" << newDeviceId;
-+ return;
- }
- DeviceInfo deviceInfo = DeviceInfo::FromIdentityPacketAndCert(*secureIdentityPacket, socket->peerCertificate());
-
++ }
+ if (tcpPort < MIN_TCP_PORT || tcpPort > MAX_TCP_PORT) {
+ qCDebug(KDECONNECT_CORE) << "TCP port outside of kdeconnect's range";
+ delete receivedPacket;
diff --git a/deskutils/kdeconnect-kde/files/patch-plugins_sftp_mounter.cpp b/deskutils/kdeconnect-kde/files/patch-plugins_sftp_mounter.cpp
index 5554b24703e9..abdb880a32f4 100644
--- a/deskutils/kdeconnect-kde/files/patch-plugins_sftp_mounter.cpp
+++ b/deskutils/kdeconnect-kde/files/patch-plugins_sftp_mounter.cpp
@@ -1,6 +1,6 @@
---- plugins/sftp/mounter.cpp.orig 2023-12-18 22:14:59 UTC
+--- plugins/sftp/mounter.cpp.orig 2025-12-03 23:06:29 UTC
+++ plugins/sftp/mounter.cpp
-@@ -128,7 +128,7 @@ void Mounter::onPacketReceived(const NetworkPacket &np
+@@ -102,7 +102,7 @@ void Mounter::onPacketReceived(const NetworkPacket &np
<< QStringLiteral("-o") << QStringLiteral("gid=") + QString::number(getgid())
<< QStringLiteral("-o") << QStringLiteral("reconnect")
<< QStringLiteral("-o") << QStringLiteral("ServerAliveInterval=30")
@@ -9,7 +9,7 @@
// clang-format on
m_proc->setProgram(program, arguments);
-@@ -137,8 +137,8 @@ void Mounter::onPacketReceived(const NetworkPacket &np
+@@ -111,8 +111,8 @@ void Mounter::onPacketReceived(const NetworkPacket &np
m_proc->start();
// qCDebug(KDECONNECT_PLUGIN_SFTP) << "Passing password: " << np.get<QString>("password").toLatin1();