PacketHead->Ver = 4;\r
PacketHead->HeadLen = (UINT8) (HeadLen >> 2);\r
PacketHead->Tos = Head->Tos;\r
- PacketHead->TotalLen = HTONS (Packet->TotalSize);\r
+ PacketHead->TotalLen = HTONS ((UINT16) Packet->TotalSize);\r
PacketHead->Id = HTONS (Head->Id);\r
PacketHead->Fragment = HTONS (Head->Fragment);\r
PacketHead->Checksum = 0;\r
//\r
// OK, selected the source and route, fragment the packet then send\r
// them. Tag each fragment other than the first one as spawn from it.\r
-\r
- //\r
- // IPsec payload has been appended, so use IpSb->SnpMode.MaxPacketSize here.\r
//\r
- Mtu = IpSb->SnpMode.MaxPacketSize;\r
+ Mtu = IpSb->MaxPacketSize + sizeof (IP4_HEAD);\r
HeadLen = sizeof (IP4_HEAD) + ((OptLen + 3) & (~0x03));\r
Head->Id = mIp4Id++;\r
\r