| Summary: | Network discovery is performed only using main interface (no devices when VPN or multiple interfaces are connected) | ||
|---|---|---|---|
| Product: | [Applications] kdeconnect | Reporter: | valdikss |
| Component: | windows-application | Assignee: | valdikss |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Microsoft Windows | ||
| Latest Commit: | https://invent.kde.org/network/kdeconnect-kde/commit/390a44a901de2a887fa37c7f7c6cdb20fd50a371 | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
|
Description
valdikss
2022-09-15 15:43:47 UTC
https://invent.kde.org/network/kdeconnect-kde/-/blob/a918ffc0cbd7d85a2a482cfa1019508720498517/core/backends/lan/lanlinkprovider.cpp#L171 There should be a call to sendSocket.setSender(sourceAddress, 0) which seem to be missing. A possibly relevant merge request was started @ https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/495 Git commit 390a44a901de2a887fa37c7f7c6cdb20fd50a371 by Simon Redman, on behalf of ValdikSS ValdikSS. Committed on 17/10/2022 at 22:21. Pushed by sredman into branch 'master'. Really set source IP for broadcast discovery packets on Windows/FreeBSD This whole code was no-op: it enumerates network interfaces, enumerates its IP addresses, but does not change the address of broadcast UDP packet, sending it only via default route/interface. Bind the socket to IP addresses of the interfaces to fix the issue. M +1 -0 core/backends/lan/lanlinkprovider.cpp https://invent.kde.org/network/kdeconnect-kde/commit/390a44a901de2a887fa37c7f7c6cdb20fd50a371 |