--- a/src/internet-stack/ipv4-l3-protocol.cc Mon Feb 08 22:35:08 2010 +0100
+++ b/src/internet-stack/ipv4-l3-protocol.cc Mon Feb 08 22:44:12 2010 -0800
@@ -463,6 +463,12 @@
}
packet->RemoveHeader (ipHeader);
+ // Trim any residual frame padding from underlying devices
+ if (ipHeader.GetPayloadSize () < packet->GetSize ())
+ {
+ packet->RemoveAtEnd (packet->GetSize () - ipHeader.GetPayloadSize ());
+ }
+
if (!ipHeader.IsChecksumOk ())
{
m_dropTrace (ipHeader, packet, DROP_BAD_CHECKSUM, interface);