diff options
| author | David Lönnhager <david.l@mullvad.net> | 2022-03-18 10:35:21 +0100 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2022-03-18 10:35:21 +0100 |
| commit | 732248cb16381380235b3add2aab47f3a55bc07d (patch) | |
| tree | 46cddeef3769feca56c2c56917682b72e49c781b | |
| parent | eb937c0ae598b5fbcb0e539f8bc1b300720c17a8 (diff) | |
| parent | e4e23de8587b6699f6c4a472b651bd53ace7f1f5 (diff) | |
| download | mullvadvpn-732248cb16381380235b3add2aab47f3a55bc07d.tar.xz mullvadvpn-732248cb16381380235b3add2aab47f3a55bc07d.zip | |
Merge branch 'win-log-missing-ip'
| -rw-r--r-- | talpid-core/src/split_tunnel/windows/mod.rs | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/talpid-core/src/split_tunnel/windows/mod.rs b/talpid-core/src/split_tunnel/windows/mod.rs index 01a3d324b5..c7cbbe93a3 100644 --- a/talpid-core/src/split_tunnel/windows/mod.rs +++ b/talpid-core/src/split_tunnel/windows/mod.rs @@ -620,13 +620,27 @@ impl SplitTunnelDefaultRouteChangeHandlerContext { // Identify IP address that gives us Internet access let internet_ipv4 = get_best_default_route(WinNetAddrFamily::IPV4) .map_err(Error::ObtainDefaultRoute)? - .map(|route| interface_luid_to_ip(WinNetAddrFamily::IPV4, route.interface_luid)) + .map(|route| { + interface_luid_to_ip(WinNetAddrFamily::IPV4, route.interface_luid).map(|ip| { + ip.or_else(|| { + log::warn!("No IPv4 address was found for the default route interface"); + None + }) + }) + }) .transpose() .map_err(Error::LuidToIp)? .flatten(); let internet_ipv6 = get_best_default_route(WinNetAddrFamily::IPV6) .map_err(Error::ObtainDefaultRoute)? - .map(|route| interface_luid_to_ip(WinNetAddrFamily::IPV6, route.interface_luid)) + .map(|route| { + interface_luid_to_ip(WinNetAddrFamily::IPV6, route.interface_luid).map(|ip| { + ip.or_else(|| { + log::warn!("No IPv6 address was found for the default route interface"); + None + }) + }) + }) .transpose() .map_err(Error::LuidToIp)? .flatten(); |
