summaryrefslogtreecommitdiffhomepage
path: root/src/dhcpv6.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/dhcpv6.c')
-rw-r--r--src/dhcpv6.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/dhcpv6.c b/src/dhcpv6.c
index f71418d..c61a8aa 100644
--- a/src/dhcpv6.c
+++ b/src/dhcpv6.c
@@ -47,6 +47,8 @@ int dhcpv6_setup_interface(struct interface *iface, bool enable)
{
int ret = 0;
+ enable = enable && (iface->dhcpv6 != MODE_DISABLED);
+
if (iface->dhcpv6_event.uloop.fd >= 0) {
uloop_fd_delete(&iface->dhcpv6_event.uloop);
close(iface->dhcpv6_event.uloop.fd);
@@ -54,7 +56,7 @@ int dhcpv6_setup_interface(struct interface *iface, bool enable)
}
/* Configure multicast settings */
- if (enable && iface->dhcpv6) {
+ if (enable) {
struct sockaddr_in6 bind_addr = {AF_INET6, htons(DHCPV6_SERVER_PORT),
0, IN6ADDR_ANY_INIT, 0};
struct ipv6_mreq mreq;