Bug 1357 - IPv6 fragmentation fails due to checks about malformed extensions

This commit is contained in:
Tommaso Pecorella
2012-02-04 13:54:15 +01:00
parent b5daea3c0d
commit acdccfaac2
2 changed files with 4 additions and 2 deletions

View File

@@ -26,6 +26,7 @@ Bugs fixed
----------
- bug 1319 - Fix Ipv6RawSocketImpl Icmpv6 filter
- bug 1318 - Asserts for IPv6 malformed packets
- bug 1357 - IPv6 fragmentation fails due to checks about malformed extensions
Known issues
------------

View File

@@ -969,15 +969,16 @@ void Ipv6L3Protocol::LocalDeliver (Ptr<const Packet> packet, Ipv6Header const& i
if (ipv6Extension)
{
uint8_t nextHeaderStep = 0;
uint8_t curHeader = nextHeader;
nextHeaderStep = ipv6Extension->Process (p, nextHeaderPosition, ip, dst, &nextHeader, isDropped);
nextHeaderPosition += nextHeaderStep;
NS_ASSERT_MSG (nextHeaderStep != 0, "Zero-size IPv6 Option Header, aborting");
if (isDropped)
{
return;
}
NS_ASSERT_MSG (nextHeaderStep != 0 || curHeader == Ipv6Header::IPV6_EXT_FRAGMENTATION,
"Zero-size IPv6 Option Header, aborting" << *packet );
}
else
{