INET Framework for OMNeT++/OMNEST
|
This interface is implemented by network protocols which want provide netfilter hooks to customize their behavior. More...
#include <INetfilter.h>
Classes | |
class | IHook |
This interface is used by the network protocol during processing datagrams. More... | |
Public Member Functions | |
virtual | ~INetfilter () |
virtual void | registerHook (int priority, IHook *hook)=0 |
Adds the provided hook to the list of registered hooks that will be called by the network layer when it processes datagrams. More... | |
virtual void | unregisterHook (int priority, IHook *hook)=0 |
Removes the provided hook from the list of registered hooks. More... | |
virtual void | dropQueuedDatagram (const INetworkDatagram *daragram)=0 |
Requests the network layer to drop the datagram, because it's no longer needed. More... | |
virtual void | reinjectQueuedDatagram (const INetworkDatagram *datagram)=0 |
Requests the network layer to restart the processing of the datagram. More... | |
This interface is implemented by network protocols which want provide netfilter hooks to customize their behavior.
For example, implementing a reactive routing protocol can be done using this interface.
|
pure virtual |
Requests the network layer to drop the datagram, because it's no longer needed.
This function may be used by a reactive routing protocol when it cancels the route discovery process.
Implemented in inet::IPv4, inet::IPv6, and inet::GenericNetworkProtocol.
Referenced by inet::AODVRouting::cancelRouteDiscovery(), and inet::dymo::DYMO::dropDelayedDatagram().
|
pure virtual |
Adds the provided hook to the list of registered hooks that will be called by the network layer when it processes datagrams.
Implemented in inet::IPv4, inet::IPv6, and inet::GenericNetworkProtocol.
Referenced by inet::NetfilterInfoHook::initialize(), inet::GPSR::initialize(), inet::dymo::DYMO::initialize(), and inet::AODVRouting::initialize().
|
pure virtual |
Requests the network layer to restart the processing of the datagram.
This function may be used by a reactive routing protocol when it completes the route discovery process.
Implemented in inet::IPv4, inet::IPv6, and inet::GenericNetworkProtocol.
Referenced by inet::AODVRouting::completeRouteDiscovery(), and inet::dymo::DYMO::reinjectDelayedDatagram().
|
pure virtual |
Removes the provided hook from the list of registered hooks.
Implemented in inet::IPv4, inet::IPv6, and inet::GenericNetworkProtocol.