slirp: add in6_dhcp_multicast()
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
This commit is contained in:
parent
676e268003
commit
318116a6ff
@ -17,6 +17,9 @@
|
|||||||
0x00, 0x00, 0x00, 0x00,\
|
0x00, 0x00, 0x00, 0x00,\
|
||||||
0x00, 0x01, 0x00, 0x02 } }
|
0x00, 0x01, 0x00, 0x02 } }
|
||||||
|
|
||||||
|
#define in6_dhcp_multicast(a)\
|
||||||
|
in6_equal(a, &(struct in6_addr)ALLDHCP_MULTICAST)
|
||||||
|
|
||||||
void dhcpv6_input(struct sockaddr_in6 *srcsas, struct mbuf *m);
|
void dhcpv6_input(struct sockaddr_in6 *srcsas, struct mbuf *m);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -65,7 +65,7 @@ void udp6_input(struct mbuf *m)
|
|||||||
/* handle DHCPv6 */
|
/* handle DHCPv6 */
|
||||||
if (ntohs(uh->uh_dport) == DHCPV6_SERVER_PORT &&
|
if (ntohs(uh->uh_dport) == DHCPV6_SERVER_PORT &&
|
||||||
(in6_equal(&ip->ip_dst, &slirp->vhost_addr6) ||
|
(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_data += iphlen;
|
||||||
m->m_len -= iphlen;
|
m->m_len -= iphlen;
|
||||||
dhcpv6_input(&lhost, m);
|
dhcpv6_input(&lhost, m);
|
||||||
|
Loading…
Reference in New Issue
Block a user