netifd: Add interface config support to enable/disable IPv6 in the kernel per device
[project/netifd.git] / bridge.c
index 6baef29..3edfeaa 100644 (file)
--- a/bridge.c
+++ b/bridge.c
@@ -154,6 +154,12 @@ bridge_enable_member(struct bridge_member *bm)
        if (!bm->present)
                return 0;
 
        if (!bm->present)
                return 0;
 
+       /* Disable IPv6 for bridge members */
+       if (!(bm->dev.dev->settings.flags & DEV_OPT_IPV6)) {
+               bm->dev.dev->settings.ipv6 = 0;
+               bm->dev.dev->settings.flags |= DEV_OPT_IPV6;
+       }
+
        ret = device_claim(&bm->dev);
        if (ret < 0)
                goto error;
        ret = device_claim(&bm->dev);
        if (ret < 0)
                goto error;