src/internet/model/ipv6-l3-protocol.cc
changeset 9856 afdc6ca1a1e4
parent 9855 d478e8a3b66e
child 9857 73a0f8924167
--- a/src/internet/model/ipv6-l3-protocol.cc	Tue Jun 25 22:46:01 2013 +0200
+++ b/src/internet/model/ipv6-l3-protocol.cc	Tue Jun 25 23:01:41 2013 +0200
@@ -797,22 +797,22 @@
   // Check packet size
   std::list<Ptr<Packet> > fragments;
 
-  bool fromMe = false;
-  for (uint32_t i=0; i<GetNInterfaces(); i++ )
-    {
-      for (uint32_t j=0; j<GetNAddresses(i); j++ )
-        {
-          if (GetAddress(i,j).GetAddress() == ipHeader.GetSourceAddress())
-            {
-              fromMe = true;
-            }
-        }
-    }
-
   if (packet->GetSize () > (size_t)(dev->GetMtu () + 40)) /* 40 => size of IPv6 header */
     {
       // Router => drop
-      if (m_ipForward && !fromMe)
+
+      bool fromMe = false;
+      for (uint32_t i=0; i<GetNInterfaces(); i++ )
+        {
+          for (uint32_t j=0; j<GetNAddresses(i); j++ )
+            {
+              if (GetAddress(i,j).GetAddress() == ipHeader.GetSourceAddress())
+                {
+                  fromMe = true;
+                }
+            }
+        }
+      if (!fromMe)
         {
           Ptr<Icmpv6L4Protocol> icmpv6 = GetIcmpv6 ();
           if ( icmpv6 )