aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dhcpv6.h2
-rw-r--r--udp6.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/dhcpv6.h b/dhcpv6.h
index d4c2695..6c0ede3 100644
--- a/dhcpv6.h
+++ b/dhcpv6.h
@@ -33,6 +33,8 @@
} \
}
+#define in6_dhcp_multicast(a) in6_equal(a, &(struct in6_addr)ALLDHCP_MULTICAST)
+
void dhcpv6_input(struct sockaddr_in6 *srcsas, struct mbuf *m);
#endif
diff --git a/udp6.c b/udp6.c
index 5567d57..ffde264 100644
--- a/udp6.c
+++ b/udp6.c
@@ -65,7 +65,7 @@ void udp6_input(struct mbuf *m)
/* handle DHCPv6 */
if (ntohs(uh->uh_dport) == DHCPV6_SERVER_PORT &&
(in6_equal(&ip->ip_dst, &slirp->vhost_addr6) ||
- in6_equal(&ip->ip_dst, &(struct in6_addr)ALLDHCP_MULTICAST))) {
+ in6_dhcp_multicast(&ip->ip_dst))) {
m->m_data += iphlen;
m->m_len -= iphlen;
dhcpv6_input(&lhost, m);