summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Taedcke <christian.taedcke@lemonbeat.com>2021-11-22 14:03:46 +0100
committerDaniel Wagner <wagi@monom.org>2021-12-19 18:48:41 +0100
commit53732ed09689736e6a06c48cfc0435a1e3eb1aa2 (patch)
tree7cccfda12eccb3c69ab20fe3aa371c7dd00614f4
parent8122063b3ccc62563f91a2cc04899baecf0d66fd (diff)
downloadconnman-53732ed09689736e6a06c48cfc0435a1e3eb1aa2.tar.gz
ipconfig: Do not enable/disable ipv6 for all ifs
If the interface name could not be determined (e.g. because the usb device was unplugged and removed from the system), do not disable ipv6 for all devices.
-rw-r--r--src/ipconfig.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ipconfig.c b/src/ipconfig.c
index 1551826b..34b1724a 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -1593,6 +1593,9 @@ static void disable_ipv6(struct connman_ipconfig *ipconfig)
ifname = connman_inet_ifname(ipconfig->index);
+ if (!ifname)
+ return;
+
set_ipv6_state(ifname, false);
g_free(ifname);
@@ -1612,6 +1615,9 @@ static void enable_ipv6(struct connman_ipconfig *ipconfig)
ifname = connman_inet_ifname(ipconfig->index);
+ if (!ifname)
+ return;
+
if (ipconfig->method == CONNMAN_IPCONFIG_METHOD_AUTO)
set_ipv6_privacy(ifname, ipconfig->ipv6_privacy_config);