src/internet/model/ipv6-l3-protocol.h
changeset 10669 46c9391bc38b
parent 10664 2bb07b08e681
child 10692 bdf59f5ace93
--- a/src/internet/model/ipv6-l3-protocol.h	Mon Mar 17 19:34:43 2014 +0100
+++ b/src/internet/model/ipv6-l3-protocol.h	Mon Mar 17 19:43:11 2014 +0100
@@ -83,6 +83,9 @@
     DROP_INTERFACE_DOWN, /**< Interface is down so can not send packet */
     DROP_ROUTE_ERROR, /**< Route error */
     DROP_UNKNOWN_PROTOCOL, /**< Unknown L4 protocol */
+    DROP_UNKNOWN_OPTION, /**< Unknown option */
+    DROP_MALFORMED_HEADER, /**< Malformed header */
+    DROP_FRAGMENT_TIMEOUT, /**< Fragment timeout */
   };
 
   /**
@@ -371,6 +374,18 @@
    */
   virtual void RegisterOptions ();
 
+  /**
+   * \brief Report a packet drop
+   *
+   * This function is used by Fragment Timeout handling to signal a fragment drop.
+   *
+   * \param ipv6Header the IPv6 header of dropped packet
+   * \param p the packet (if available)
+   * \param dropReason the drop reason
+   *
+   */
+  virtual void ReportDrop (Ipv6Header ipHeader, Ptr<Packet> p, DropReason dropReason);
+
 protected:
   /**
    * \brief Dispose object.