From 6121fa04bcd31c3f840fa8d13fb45a400574a533 Mon Sep 17 00:00:00 2001 From: Albert Vaca Cintora Date: Sat, 8 Feb 2025 01:55:44 +0100 Subject: [PATCH] Do not disconnect when there's a version mismatch Just trust the encrypted packet. --- .../kdeconnect/Backends/LanBackend/LanLinkProvider.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java index 23da5e19..5ada277d 100644 --- a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java +++ b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java @@ -223,7 +223,7 @@ public class LanLinkProvider extends BaseLinkProvider { int protocolVersion = identityPacket.getInt("protocolVersion"); if (deviceTrusted && isProtocolDowngrade(deviceId, protocolVersion)) { - Log.w("KDE/LanLinkProvider", "Refusing to connect to a device using an older protocol version."); + Log.w("KDE/LanLinkProvider", "Refusing to connect to a device using an older protocol version:" + protocolVersion); return; } @@ -254,9 +254,9 @@ public class LanLinkProvider extends BaseLinkProvider { if (!DeviceInfo.isValidIdentityPacket(secureIdentityPacket)) { throw new JSONException("Invalid identity packet"); } - if (secureIdentityPacket.getInt("protocolVersion") != protocolVersion) { - Log.e("KDE/LanLinkProvider", "Protocol version changed half-way through the handshake"); - return; + int newProtocolVersion = secureIdentityPacket.getInt("protocolVersion"); + if (newProtocolVersion != protocolVersion) { + Log.w("KDE/LanLinkProvider", "Protocol version changed half-way through the handshake: " + protocolVersion + " ->" + newProtocolVersion); } } else { secureIdentityPacket = identityPacket;