|
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 (IHook *hook)=0 |
| Removes the provided hook from the list of registered hooks. More... | |
| virtual void | dropQueuedDatagram (const Packet *daragram)=0 |
| Requests the network layer to drop the datagram, because it's no longer needed. More... | |
| virtual void | reinjectQueuedDatagram (const Packet *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::Ipv6, inet::Ipv4, and inet::NextHopForwarding.
|
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::NetfilterBase, inet::Ipv4, inet::Ipv6, and inet::NextHopForwarding.
Referenced by inet::sctp::SctpNatHook::initialize(), inet::tcp::TcpLwip::initialize(), inet::Pim::initialize(), inet::tcp::Tcp::initialize(), inet::Udp::initialize(), and inet::sctp::Sctp::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::Ipv6, inet::Ipv4, and inet::NextHopForwarding.
|
pure virtual |
Removes the provided hook from the list of registered hooks.
Implemented in inet::NetfilterBase, inet::Ipv4, inet::Ipv6, and inet::NextHopForwarding.
Referenced by inet::sctp::SctpNatHook::finish().