ICMPv6 Redirection header. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6Redirection () | |
Constructor. | |
virtual | ~Icmpv6Redirection () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
Ipv6Address | GetDestination () const |
Get the IPv6 destination address. | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. | |
uint32_t | GetReserved () const |
Get the reserved field. | |
virtual uint32_t | GetSerializedSize () const |
Get the serialized size. | |
Ipv6Address | GetTarget () const |
Get the IPv6 target address. | |
virtual void | Print (std::ostream &os) const |
Print informations. | |
virtual void | Serialize (Buffer::Iterator start) const |
Serialize the packet. | |
void | SetDestination (Ipv6Address destination) |
Set the IPv6 destination address. | |
void | SetReserved (uint32_t reserved) |
Set the reserved field. | |
void | SetTarget (Ipv6Address target) |
Set the IPv6 target address. | |
![]() | |
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 | |
Ipv6Address | m_destination |
IPv6 destination address. | |
uint32_t | m_reserved |
Reserved value. | |
Ipv6Address | m_target |
IPv6 target address. |
ICMPv6 Redirection header.
Definition at line 834 of file icmpv6-header.h.
ns3::Icmpv6Redirection::Icmpv6Redirection | ( | ) |
Constructor.
Definition at line 731 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_ND_REDIRECTION, ns3::Icmpv6Header::m_checksum, ns3::Icmpv6Header::SetCode(), and ns3::Icmpv6Header::SetType().
|
virtual |
Destructor.
Definition at line 741 of file icmpv6-header.cc.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 813 of file icmpv6-header.cc.
References GetSerializedSize(), ns3::Icmpv6Header::m_checksum, m_destination, m_target, ns3::Buffer::Iterator::Read(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU32(), ns3::Buffer::Iterator::ReadU8(), ns3::Ipv6Address::Set(), ns3::Icmpv6Header::SetCode(), SetReserved(), ns3::Icmpv6Header::SetType(), and visualizer.core::start().
Ipv6Address ns3::Icmpv6Redirection::GetDestination | ( | void | ) | const |
Get the IPv6 destination address.
Definition at line 765 of file icmpv6-header.cc.
References m_destination.
Referenced by ns3::Icmpv6L4Protocol::HandleRedirection().
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6Header.
Definition at line 726 of file icmpv6-header.cc.
References GetTypeId().
uint32_t ns3::Icmpv6Redirection::GetReserved | ( | ) | const |
Get the reserved field.
Definition at line 750 of file icmpv6-header.cc.
References m_reserved.
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6Header.
Definition at line 780 of file icmpv6-header.cc.
Referenced by Deserialize().
Ipv6Address ns3::Icmpv6Redirection::GetTarget | ( | ) | const |
Get the IPv6 target address.
Definition at line 755 of file icmpv6-header.cc.
References m_target.
Referenced by ns3::Icmpv6L4Protocol::HandleRedirection().
|
static |
Get the UID of this class.
This method returns the TypeId associated to ns3::Icmpv6Redirection.
No Attributes defined for this type.
No TraceSources defined for this type.
Reimplemented from ns3::Icmpv6Header.
Definition at line 717 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 775 of file icmpv6-header.cc.
References ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), ns3::Icmpv6Header::GetType(), m_destination, and m_target.
|
virtual |
Serialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 785 of file icmpv6-header.cc.
References ns3::Buffer::Iterator::CalculateIpChecksum(), ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), ns3::Buffer::Iterator::GetSize(), ns3::Icmpv6Header::GetType(), ns3::Icmpv6Header::m_calcChecksum, m_destination, m_reserved, m_target, ns3::Buffer::Iterator::Next(), ns3::Ipv6Address::Serialize(), visualizer.core::start(), ns3::Buffer::Iterator::Write(), ns3::Buffer::Iterator::WriteU16(), ns3::Buffer::Iterator::WriteU32(), and ns3::Buffer::Iterator::WriteU8().
void ns3::Icmpv6Redirection::SetDestination | ( | Ipv6Address | destination | ) |
Set the IPv6 destination address.
destination | IPv6 destination address |
Definition at line 770 of file icmpv6-header.cc.
References m_destination.
Referenced by ns3::Icmpv6L4Protocol::SendRedirection().
void ns3::Icmpv6Redirection::SetReserved | ( | uint32_t | reserved | ) |
Set the reserved field.
reserved | the reserved value |
Definition at line 745 of file icmpv6-header.cc.
References m_reserved.
Referenced by Deserialize().
void ns3::Icmpv6Redirection::SetTarget | ( | Ipv6Address | target | ) |
Set the IPv6 target address.
target | IPv6 target address |
Definition at line 760 of file icmpv6-header.cc.
References m_target.
Referenced by ns3::Icmpv6L4Protocol::SendRedirection().
|
private |
IPv6 destination address.
Definition at line 929 of file icmpv6-header.h.
Referenced by Deserialize(), GetDestination(), Print(), Serialize(), and SetDestination().
|
private |
Reserved value.
Definition at line 934 of file icmpv6-header.h.
Referenced by GetReserved(), Serialize(), and SetReserved().
|
private |
IPv6 target address.
Definition at line 924 of file icmpv6-header.h.
Referenced by Deserialize(), GetTarget(), Print(), Serialize(), and SetTarget().