ICMPv6 Error Destination Unreachable header. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6DestinationUnreachable () | |
Constructor. | |
virtual | ~Icmpv6DestinationUnreachable () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. | |
Ptr< Packet > | GetPacket () const |
Get the incorrect packet. | |
virtual uint32_t | GetSerializedSize () const |
Get the serialized size. | |
virtual void | Print (std::ostream &os) const |
Print informations. | |
virtual void | Serialize (Buffer::Iterator start) const |
Serialize the packet. | |
void | SetPacket (Ptr< Packet > p) |
Set the incorrect packet. | |
![]() | |
Icmpv6Header () | |
Constructor. | |
virtual | ~Icmpv6Header () |
Destructor. | |
void | CalculatePseudoHeaderChecksum (Ipv6Address src, Ipv6Address dst, uint16_t length, uint8_t protocol) |
Calculate pseudo header checksum for IPv6. | |
uint16_t | GetChecksum () const |
Get the checksum. | |
uint8_t | GetCode () const |
Get the code field. | |
uint8_t | GetType () const |
Get the type field. | |
void | SetChecksum (uint16_t checksum) |
Set the checksum. | |
void | SetCode (uint8_t code) |
Set the code field. | |
void | SetType (uint8_t type) |
Set the type. | |
![]() | |
virtual | ~Header () |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the UID of this class. |
Private Attributes | |
Ptr< Packet > | m_packet |
The incorrect Packet. |
ICMPv6 Error Destination Unreachable header.
This type is not accessible from the Config system.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 1037 of file icmpv6-header.h.
ns3::Icmpv6DestinationUnreachable::Icmpv6DestinationUnreachable | ( | ) |
Constructor.
Definition at line 953 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_ERROR_DESTINATION_UNREACHABLE, and ns3::Icmpv6Header::SetType().
|
virtual |
Destructor.
Definition at line 959 of file icmpv6-header.cc.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 1008 of file icmpv6-header.cc.
References data, GetSerializedSize(), ns3::Buffer::Iterator::GetSize(), ns3::Icmpv6Header::m_checksum, m_packet, ns3::Buffer::Iterator::Read(), ns3::Buffer::Iterator::ReadNtohU32(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU8(), ns3::Icmpv6Header::SetCode(), ns3::Icmpv6Header::SetType(), and visualizer.core::start().
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6Header.
Definition at line 948 of file icmpv6-header.cc.
References GetTypeId().
Get the incorrect packet.
Definition at line 963 of file icmpv6-header.cc.
References m_packet.
Referenced by ns3::Icmpv6L4Protocol::HandleDestinationUnreachable().
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6Header.
Definition at line 979 of file icmpv6-header.cc.
References ns3::Packet::GetSize(), and m_packet.
Referenced by Deserialize().
|
static |
Get the UID of this class.
Reimplemented from ns3::Icmpv6Header.
Definition at line 939 of file icmpv6-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
Print informations.
os | output stream |
Reimplemented from ns3::Icmpv6Header.
Definition at line 974 of file icmpv6-header.cc.
References ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), and ns3::Icmpv6Header::GetType().
|
virtual |
Serialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 984 of file icmpv6-header.cc.
References ns3::Buffer::Iterator::CalculateIpChecksum(), ns3::Packet::CopyData(), ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), ns3::Packet::GetSize(), ns3::Buffer::Iterator::GetSize(), ns3::Icmpv6Header::GetType(), m_packet, ns3::Buffer::Iterator::Next(), visualizer.core::start(), ns3::Buffer::Iterator::Write(), ns3::Buffer::Iterator::WriteHtonU16(), ns3::Buffer::Iterator::WriteHtonU32(), ns3::Buffer::Iterator::WriteU16(), and ns3::Buffer::Iterator::WriteU8().
Set the incorrect packet.
p | the incorrect packet |
Definition at line 968 of file icmpv6-header.cc.
References ns3::Packet::GetSize(), m_packet, and NS_ASSERT.
Referenced by ns3::Icmpv6L4Protocol::SendErrorDestinationUnreachable().
The incorrect Packet.
Definition at line 1103 of file icmpv6-header.h.
Referenced by Deserialize(), GetPacket(), GetSerializedSize(), Serialize(), and SetPacket().