INET Framework for OMNeT++/OMNEST
|
Control information for sending/receiving packets over IPv6. More...
#include <IPv6ControlInfo.h>
Public Member Functions | |
IPv6ControlInfo () | |
virtual | ~IPv6ControlInfo () |
IPv6ControlInfo (const IPv6ControlInfo &other) | |
IPv6ControlInfo & | operator= (const IPv6ControlInfo &other) |
virtual IPv6ControlInfo * | dup () const override |
virtual void | setOrigDatagram (IPv6Datagram *d) |
virtual IPv6Datagram * | getOrigDatagram () const |
virtual IPv6Datagram * | removeOrigDatagram () |
virtual int | getDiffServCodePoint () const override |
Returns bits 0-5 of the Traffic Class field, a value in the 0..63 range. More... | |
virtual void | setDiffServCodePoint (int dscp) override |
Sets bits 0-5 of the Traffic Class field; expects a value in the 0..63 range. More... | |
virtual int | getExplicitCongestionNotification () const override |
Returns bits 6-7 of the Traffic Class field, a value in the range 0..3. More... | |
virtual void | setExplicitCongestionNotification (int ecn) override |
Sets bits 6-7 of the Traffic Class field; expects a value in the 0..3 range. More... | |
virtual unsigned int | getExtensionHeaderArraySize () const override |
Returns the number of extension headers in this datagram. More... | |
virtual void | setExtensionHeaderArraySize (unsigned int size) override |
Generated but unused method, should not be called. More... | |
virtual IPv6ExtensionHeaderPtr & | getExtensionHeader (unsigned int k) override |
Returns the kth extension header in this datagram. More... | |
virtual void | setExtensionHeader (unsigned int k, const IPv6ExtensionHeaderPtr &extensionHeader_var) override |
Generated but unused method, should not be called. More... | |
virtual void | addExtensionHeader (IPv6ExtensionHeader *eh, int atPos=-1) |
Adds an extension header to the datagram, at the given position. More... | |
IPv6ExtensionHeader * | removeFirstExtensionHeader () |
Remove the first extension header and return it. More... | |
virtual short | getTransportProtocol () const override |
virtual void | setTransportProtocol (short protocol) override |
virtual L3Address | getSourceAddress () const override |
virtual void | setSourceAddress (const L3Address &address) override |
virtual L3Address | getDestinationAddress () const override |
virtual void | setDestinationAddress (const L3Address &address) override |
virtual int | getInterfaceId () const override |
virtual void | setInterfaceId (int interfaceId) override |
virtual short | getHopLimit () const override |
virtual void | setHopLimit (short hopLimit) override |
Public Member Functions inherited from inet::IPv6ControlInfo_Base | |
virtual | ~IPv6ControlInfo_Base () |
virtual void | parsimPack (omnetpp::cCommBuffer *b) const override |
virtual void | parsimUnpack (omnetpp::cCommBuffer *b) override |
virtual short | getProtocol () const |
virtual void | setProtocol (short protocol) |
virtual IPv6Address & | getDestAddr () |
virtual const IPv6Address & | getDestAddr () const |
virtual void | setDestAddr (const IPv6Address &destAddr) |
virtual IPv6Address & | getSrcAddr () |
virtual const IPv6Address & | getSrcAddr () const |
virtual void | setSrcAddr (const IPv6Address &srcAddr) |
virtual unsigned char | getTrafficClass () const |
virtual void | setTrafficClass (unsigned char trafficClass) |
virtual bool | getMulticastLoop () const |
virtual void | setMulticastLoop (bool multicastLoop) |
virtual const IPv6ExtensionHeaderPtr & | getExtensionHeader (unsigned int k) const |
Public Member Functions inherited from inet::INetworkProtocolControlInfo | |
virtual | ~INetworkProtocolControlInfo () |
Protected Types | |
typedef std::vector< IPv6ExtensionHeader * > | ExtensionHeaders |
Protected Attributes | |
IPv6Datagram * | dgram |
ExtensionHeaders | extensionHeaders |
Protected Attributes inherited from inet::IPv6ControlInfo_Base | |
short | protocol |
IPv6Address | destAddr |
IPv6Address | srcAddr |
unsigned char | trafficClass |
short | hopLimit |
int | interfaceId |
bool | multicastLoop |
Private Member Functions | |
void | copy (const IPv6ControlInfo &other) |
void | clean () |
Additional Inherited Members | |
Protected Member Functions inherited from inet::IPv6ControlInfo_Base | |
bool | operator== (const IPv6ControlInfo_Base &) |
IPv6ControlInfo_Base () | |
IPv6ControlInfo_Base (const IPv6ControlInfo_Base &other) | |
IPv6ControlInfo_Base & | operator= (const IPv6ControlInfo_Base &other) |
Control information for sending/receiving packets over IPv6.
See the IPv6ControlInfo.msg file for more info.
|
protected |
|
inline |
|
virtual |
|
inline |
|
virtual |
Adds an extension header to the datagram, at the given position.
The default (atPos==-1) is to add the header at the end.
Referenced by inet::IPv6Tunneling::encapsulateDatagram().
|
private |
Referenced by operator=(), and ~IPv6ControlInfo().
|
private |
Referenced by operator=().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
|
inlineoverridevirtual |
Returns bits 0-5 of the Traffic Class field, a value in the 0..63 range.
Implements inet::IPv6ControlInfo_Base.
|
inlineoverridevirtual |
Returns bits 6-7 of the Traffic Class field, a value in the range 0..3.
Implements inet::IPv6ControlInfo_Base.
|
overridevirtual |
Returns the kth extension header in this datagram.
Implements inet::IPv6ControlInfo_Base.
|
overridevirtual |
Returns the number of extension headers in this datagram.
Implements inet::IPv6ControlInfo_Base.
Referenced by inet::IPv6::encapsulate().
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
Referenced by inet::IPv6::encapsulate(), inet::UDP::processUDPPacket(), inet::IPv6NeighbourDiscovery::validateNAPacket(), inet::IPv6NeighbourDiscovery::validateNSPacket(), inet::IPv6NeighbourDiscovery::validateRAPacket(), and inet::IPv6NeighbourDiscovery::validateRSPacket().
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
Referenced by inet::xMIPv6::createAndSendBAMessage(), inet::IPv6Tunneling::decapsulateDatagram(), inet::IPv6::handleMessageFromHL(), inet::xMIPv6::processBAMessage(), inet::xMIPv6::processBRRMessage(), inet::xMIPv6::processBUMessage(), inet::xMIPv6::processCoTMessage(), inet::ICMPv6::processEchoRequest(), inet::xMIPv6::processHoTMessage(), inet::IPv6NeighbourDiscovery::processNAPacket(), inet::IPv6NeighbourDiscovery::processNSPacket(), inet::IPv6NeighbourDiscovery::processRAForRouterUpdates(), inet::IPv6NeighbourDiscovery::processRAPacket(), inet::IPv6NeighbourDiscovery::processRSPacket(), inet::UDP::processUDPPacket(), inet::xMIPv6::sendMobilityMessageToIPv6Module(), inet::xMIPv6::validateBAck(), and inet::xMIPv6::validateCoTMessage().
|
inlinevirtual |
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
IPv6ControlInfo & inet::IPv6ControlInfo::operator= | ( | const IPv6ControlInfo & | other | ) |
IPv6ExtensionHeader * inet::IPv6ControlInfo::removeFirstExtensionHeader | ( | ) |
Remove the first extension header and return it.
Referenced by inet::IPv6::encapsulate().
|
virtual |
Referenced by inet::ICMPv6::sendErrorMessage().
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
|
inlineoverridevirtual |
Sets bits 0-5 of the Traffic Class field; expects a value in the 0..63 range.
Implements inet::IPv6ControlInfo_Base.
|
inlineoverridevirtual |
Sets bits 6-7 of the Traffic Class field; expects a value in the 0..3 range.
Implements inet::IPv6ControlInfo_Base.
|
overridevirtual |
Generated but unused method, should not be called.
Implements inet::IPv6ControlInfo_Base.
|
overridevirtual |
Generated but unused method, should not be called.
Implements inet::IPv6ControlInfo_Base.
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
Referenced by inet::IPv6::decapsulate(), inet::UDP::sendDown(), inet::xMIPv6::sendMobilityMessageToIPv6Module(), and inet::IPv6NeighbourDiscovery::sendPacketToIPv6Module().
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
Referenced by inet::IPv6::decapsulate(), inet::IPv6Tunneling::encapsulateDatagram(), inet::UDP::sendDown(), inet::xMIPv6::sendMobilityMessageToIPv6Module(), and inet::IPv6NeighbourDiscovery::sendPacketToIPv6Module().
|
virtual |
Referenced by inet::IPv6::decapsulate().
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
|
inlineoverridevirtual |
Implements inet::INetworkProtocolControlInfo.
|
protected |
Referenced by clean(), copy(), removeOrigDatagram(), and setOrigDatagram().
|
protected |
Referenced by addExtensionHeader(), clean(), copy(), getExtensionHeader(), getExtensionHeaderArraySize(), and removeFirstExtensionHeader().