Bug 1357 - IPv6 fragmentation fails due to checks about malformed extensions
This commit is contained in:
@@ -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
|
||||
------------
|
||||
|
||||
@@ -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
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user