kdeconnect-kde/core
Vladimir Panteleev b706750af8
Use device ID from client SSL certificate, not UDP packet
Consider the following scenario:

1. We send a UDP broadcast
2. We receive a reply from 192.168.0.1 with device ID "foo"
3. We connect to 192.168.0.1, and find that the device's certificate
   is actually for a different ID "bar". This could be because the
   packet did not actually originate from 192.168.0.1, or this host is
   malicious / malfunctioning.
4. We remember that device ID "foo" has certificate with common name "bar".
5. When we finally attempt to connect to the real device ID "foo", we
   reject their certificate (common name "foo"). We can now never
   successfully connect to "foo".

On some network (mis-)configurations, this completely prevents
kdeconnectd from connecting to any peers, because a reply which is
seen as originating from the local interface address will cause
kdeconnectd to immediately connect to itself and remember its own
certificate.

Address this by using the certificate display name of the peer, which
will match the real device ID.
2021-09-25 12:51:59 +00:00
..
backends Use device ID from client SSL certificate, not UDP packet 2021-09-25 12:51:59 +00:00
CMakeLists.txt Replace manual include dir handling with interface target 2020-07-30 10:53:48 +02:00
compositefiletransferjob.cpp Fix CompositeFileTransferJob speed calculation 2021-01-31 23:50:14 +01:00
compositefiletransferjob.h Fix CompositeFileTransferJob speed calculation 2021-01-31 23:50:14 +01:00
core_debug.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
core_debug.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
daemon.cpp Add API for opening the KCM to daemon 2020-10-18 18:40:48 +00:00
daemon.h Add API for opening the KCM to daemon 2020-10-18 18:40:48 +00:00
dbushelper.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
dbushelper.h.in Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
device.cpp Add a verification key that's displayed when pairing 2020-11-26 11:28:49 +01:00
device.h Add a verification key that's displayed when pairing 2020-11-26 11:28:49 +01:00
filetransferjob.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
filetransferjob.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
kdeconnectconfig.cpp Do not leak the local user in the device name. 2020-10-02 12:52:08 +02:00
kdeconnectconfig.h Custom devices 2020-08-18 21:55:24 +02:00
kdeconnectplugin.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
kdeconnectplugin.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
kdeconnectpluginconfig.cpp [app] Add plugin settings page 2020-09-08 20:33:20 +02:00
kdeconnectpluginconfig.h [app] Add plugin settings page 2020-09-08 20:33:20 +02:00
Messages.sh Do not extract messages from the non-existent .ui and .rc files 2019-12-21 10:04:31 +02:00
networkpacket.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
networkpacket.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
networkpackettypes.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
notificationserverinfo.cpp Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
notificationserverinfo.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
pluginloader.cpp Fix warnings 2021-03-03 15:20:24 +01:00
pluginloader.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00
qtcompat_p.h Convert license headers to SPDX expressions 2020-08-17 09:48:10 +00:00