IPv6 fixes: Both ICMPv6 autonomous auto-configuration and the ICMPv6 router function appear to be fully functional.
This commit is contained in:
parent
968e02a44c
commit
3bd6dcf435
@ -238,7 +238,7 @@ void icmpv6_input(FAR struct net_driver_s *dev)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
adv = ICMPv6RADVERTISE;
|
adv = ICMPv6RADVERTISE;
|
||||||
for (ndx = 0; ndx + sizeof(struct icmpv6_prefixinfo_s) < optlen; )
|
for (ndx = 0; ndx + sizeof(struct icmpv6_prefixinfo_s) <= optlen; )
|
||||||
{
|
{
|
||||||
FAR struct icmpv6_prefixinfo_s *opt =
|
FAR struct icmpv6_prefixinfo_s *opt =
|
||||||
(FAR struct icmpv6_prefixinfo_s *)&adv->options[ndx];
|
(FAR struct icmpv6_prefixinfo_s *)&adv->options[ndx];
|
||||||
@ -313,7 +313,7 @@ void icmpv6_input(FAR struct net_driver_s *dev)
|
|||||||
|
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
nlldbg("Unknown ICMPv6 cmd: %d\n", icmp->type);
|
nlldbg("Unknown ICMPv6 type: %d\n", icmp->type);
|
||||||
goto icmpv6_type_error;
|
goto icmpv6_type_error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -152,8 +152,8 @@ static void icmpv6_setaddresses(FAR struct net_driver_s *dev,
|
|||||||
|
|
||||||
for (i = 0; i < 7; i++)
|
for (i = 0; i < 7; i++)
|
||||||
{
|
{
|
||||||
dev->d_ipv6addr[i] = (dev->d_ipv6addr[i] & dev->d_ipv6netmask[i]) |
|
dev->d_ipv6addr[i] = (dev->d_ipv6addr[i] & ~dev->d_ipv6netmask[i]) |
|
||||||
(prefix[i] & ~dev->d_ipv6netmask[i]);
|
(prefix[i] & dev->d_ipv6netmask[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
nvdbg("prefix=%04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x\n",
|
nvdbg("prefix=%04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x\n",
|
||||||
|
Loading…
Reference in New Issue
Block a user