diff options
author | Hans Dedecker <dedeckeh@gmail.com> | 2017-03-27 22:01:13 +0200 |
---|---|---|
committer | Hans Dedecker <dedeckeh@gmail.com> | 2017-03-29 11:35:14 +0200 |
commit | eea7d037b93020dd5d5d2e5a698e88650a0f0912 (patch) | |
tree | e5e26a996e136f8b29d1ae083b1174e78523f003 /src/dhcpv6.c | |
parent | 24d21c7c26d07e93fb329ac62da5e974cf44213b (diff) |
rework IPv6 address dump logic
Make the code more logical by moving the IPv6 address dump logic into the
different protocol interface enable handlers so it's clear which protocols
require interface IPv6 address tracking.
At the same time restructure the IPv6 address dump logic so less IPv6 address
netlink dumps are created.
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Diffstat (limited to 'src/dhcpv6.c')
-rw-r--r-- | src/dhcpv6.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/dhcpv6.c b/src/dhcpv6.c index 81eae06..4cd9e02 100644 --- a/src/dhcpv6.c +++ b/src/dhcpv6.c @@ -90,6 +90,9 @@ int setup_dhcpv6_interface(struct interface *iface, bool enable) if (iface->dhcpv6 == RELAYD_SERVER) setsockopt(sock, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP, &server, sizeof(server)); + if (iface->dhcpv6 != RELAYD_RELAY || !iface->master) + ndp_rqs_addr6_dump(); + iface->dhcpv6_event.uloop.fd = sock; iface->dhcpv6_event.handle_dgram = handle_dhcpv6; odhcpd_register(&iface->dhcpv6_event); |