src/internet-stack/ipv6-raw-socket-impl.cc
changeset 6333 c461f7a25895
parent 5891 09a575cdf8db
child 6437 c11291f51d57
--- a/src/internet-stack/ipv6-raw-socket-impl.cc	Thu Jun 03 17:38:22 2010 +0100
+++ b/src/internet-stack/ipv6-raw-socket-impl.cc	Fri Jun 04 07:05:22 2010 +0900
@@ -18,6 +18,7 @@
  * Author: Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
  */
 
+#include <netinet/in.h>
 #include "ns3/inet6-socket-address.h"
 #include "ns3/node.h"
 #include "ns3/packet.h"
@@ -264,7 +265,10 @@
   if (data.packet->GetSize () > maxSize)
     {
       Ptr<Packet> first = data.packet->CreateFragment (0, maxSize);
-      data.packet->RemoveAtStart (maxSize);
+      if (!(flags & MSG_PEEK))
+        {
+          data.packet->RemoveAtStart (maxSize);
+        }
       m_data.push_front (data);
       return first;
     }