ICMPv6 Router Advertisement header. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6RA () | |
Constructor. | |
virtual | ~Icmpv6RA () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
uint8_t | GetCurHopLimit () const |
Get the IPv6 maximum number of jumps. | |
bool | GetFlagH () const |
Get the H flag. | |
bool | GetFlagM () const |
Get the M flag. | |
bool | GetFlagO () const |
Get the O flag. | |
uint8_t | GetFlags () const |
Getflags. | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. | |
uint16_t | GetLifeTime () const |
Get the node Life time (Neighbor Discovery). | |
uint32_t | GetReachableTime () const |
Get the node Reachable time (Neighbor Discovery). | |
uint32_t | GetRetransmissionTime () const |
Get the node Retransmission time (Neighbor Discovery). | |
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 | SetCurHopLimit (uint8_t m) |
Set the IPv6 maximum number of jumps. | |
void | SetFlagH (bool h) |
Set the H flag. | |
void | SetFlagM (bool m) |
Set the M flag. | |
void | SetFlagO (bool o) |
Set the O flag. | |
void | SetFlags (uint8_t f) |
Setflags. | |
void | SetLifeTime (uint16_t l) |
Set the node Life time (Neighbor Discovery). | |
void | SetReachableTime (uint32_t r) |
Set the node Reachable time (Neighbor Discovery). | |
void | SetRetransmissionTime (uint32_t r) |
Set the node Retransmission time (Neighbor Discovery). | |
![]() | |
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 | |
uint8_t | m_curHopLimit |
The max jumps. | |
bool | m_flagH |
The H flag. | |
bool | m_flagM |
The M flag. | |
bool | m_flagO |
The O flag. | |
uint8_t | m_flags |
The flags field value. | |
uint16_t | m_LifeTime |
The lifetime value. | |
uint32_t | m_ReachableTime |
The reachable time value. | |
uint32_t | m_RetransmissionTimer |
The retransmission timer. |
ICMPv6 Router Advertisement 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 569 of file icmpv6-header.h.
ns3::Icmpv6RA::Icmpv6RA | ( | ) |
Constructor.
Definition at line 453 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_ND_ROUTER_ADVERTISEMENT, ns3::Icmpv6Header::SetCode(), SetCurHopLimit(), SetFlagH(), SetFlagM(), SetFlagO(), SetFlags(), SetLifeTime(), SetReachableTime(), SetRetransmissionTime(), and ns3::Icmpv6Header::SetType().
|
virtual |
Destructor.
Definition at line 467 of file icmpv6-header.cc.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 599 of file icmpv6-header.cc.
References GetSerializedSize(), ns3::Icmpv6Header::m_checksum, m_flagH, m_flagM, m_flagO, m_flags, ns3::Buffer::Iterator::ReadNtohU16(), ns3::Buffer::Iterator::ReadNtohU32(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU8(), ns3::Icmpv6Header::SetCode(), SetCurHopLimit(), SetLifeTime(), SetReachableTime(), SetRetransmissionTime(), ns3::Icmpv6Header::SetType(), and visualizer.core::start().
uint8_t ns3::Icmpv6RA::GetCurHopLimit | ( | ) | const |
Get the IPv6 maximum number of jumps.
Definition at line 476 of file icmpv6-header.cc.
References m_curHopLimit.
bool ns3::Icmpv6RA::GetFlagH | ( | ) | const |
bool ns3::Icmpv6RA::GetFlagM | ( | ) | const |
bool ns3::Icmpv6RA::GetFlagO | ( | ) | const |
uint8_t ns3::Icmpv6RA::GetFlags | ( | ) | const |
Getflags.
Definition at line 541 of file icmpv6-header.cc.
References m_flags.
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6Header.
Definition at line 448 of file icmpv6-header.cc.
References GetTypeId().
uint16_t ns3::Icmpv6RA::GetLifeTime | ( | ) | const |
Get the node Life time (Neighbor Discovery).
Definition at line 481 of file icmpv6-header.cc.
References m_LifeTime.
Referenced by Serialize().
uint32_t ns3::Icmpv6RA::GetReachableTime | ( | ) | const |
Get the node Reachable time (Neighbor Discovery).
Definition at line 486 of file icmpv6-header.cc.
References m_ReachableTime.
Referenced by Serialize().
uint32_t ns3::Icmpv6RA::GetRetransmissionTime | ( | ) | const |
Get the node Retransmission time (Neighbor Discovery).
Definition at line 491 of file icmpv6-header.cc.
References m_RetransmissionTimer.
Referenced by Serialize().
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6Header.
Definition at line 556 of file icmpv6-header.cc.
Referenced by Deserialize().
|
static |
Get the UID of this class.
Reimplemented from ns3::Icmpv6Header.
Definition at line 439 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 551 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 561 of file icmpv6-header.cc.
References ns3::Buffer::Iterator::CalculateIpChecksum(), ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), GetLifeTime(), GetReachableTime(), GetRetransmissionTime(), ns3::Buffer::Iterator::GetSize(), ns3::Icmpv6Header::GetType(), m_curHopLimit, m_flagH, m_flagM, m_flagO, ns3::Buffer::Iterator::Next(), visualizer.core::start(), ns3::Buffer::Iterator::WriteHtonU16(), ns3::Buffer::Iterator::WriteHtonU32(), ns3::Buffer::Iterator::WriteU16(), and ns3::Buffer::Iterator::WriteU8().
void ns3::Icmpv6RA::SetCurHopLimit | ( | uint8_t | m | ) |
Set the IPv6 maximum number of jumps.
m | maximum jumps |
Definition at line 471 of file icmpv6-header.cc.
References m_curHopLimit.
Referenced by Deserialize(), and Icmpv6RA().
void ns3::Icmpv6RA::SetFlagH | ( | bool | h | ) |
Set the H flag.
h | value |
Definition at line 536 of file icmpv6-header.cc.
References m_flagH.
Referenced by Icmpv6RA().
void ns3::Icmpv6RA::SetFlagM | ( | bool | m | ) |
Set the M flag.
m | value |
Definition at line 516 of file icmpv6-header.cc.
References m_flagM.
Referenced by Icmpv6RA().
void ns3::Icmpv6RA::SetFlagO | ( | bool | o | ) |
Set the O flag.
o | value |
Definition at line 526 of file icmpv6-header.cc.
References m_flagO.
Referenced by Icmpv6RA().
void ns3::Icmpv6RA::SetFlags | ( | uint8_t | f | ) |
Setflags.
f | the flags value |
Definition at line 546 of file icmpv6-header.cc.
References m_flags.
Referenced by Icmpv6RA().
void ns3::Icmpv6RA::SetLifeTime | ( | uint16_t | l | ) |
Set the node Life time (Neighbor Discovery).
l | life time |
Definition at line 496 of file icmpv6-header.cc.
References m_LifeTime.
Referenced by Deserialize(), and Icmpv6RA().
void ns3::Icmpv6RA::SetReachableTime | ( | uint32_t | r | ) |
Set the node Reachable time (Neighbor Discovery).
r | Reachable time |
Definition at line 501 of file icmpv6-header.cc.
References m_ReachableTime.
Referenced by Deserialize(), and Icmpv6RA().
void ns3::Icmpv6RA::SetRetransmissionTime | ( | uint32_t | r | ) |
Set the node Retransmission time (Neighbor Discovery).
r | Retransmission time |
Definition at line 506 of file icmpv6-header.cc.
References m_RetransmissionTimer.
Referenced by Deserialize(), and Icmpv6RA().
|
private |
The max jumps.
Definition at line 754 of file icmpv6-header.h.
Referenced by GetCurHopLimit(), Serialize(), and SetCurHopLimit().
|
private |
The H flag.
Definition at line 729 of file icmpv6-header.h.
Referenced by Deserialize(), GetFlagH(), Serialize(), and SetFlagH().
|
private |
The M flag.
Definition at line 719 of file icmpv6-header.h.
Referenced by Deserialize(), GetFlagM(), Serialize(), and SetFlagM().
|
private |
The O flag.
Definition at line 724 of file icmpv6-header.h.
Referenced by Deserialize(), GetFlagO(), Serialize(), and SetFlagO().
|
private |
The flags field value.
Definition at line 734 of file icmpv6-header.h.
Referenced by Deserialize(), GetFlags(), and SetFlags().
|
private |
The lifetime value.
Definition at line 739 of file icmpv6-header.h.
Referenced by GetLifeTime(), and SetLifeTime().
|
private |
The reachable time value.
Definition at line 744 of file icmpv6-header.h.
Referenced by GetReachableTime(), and SetReachableTime().
|
private |
The retransmission timer.
Definition at line 749 of file icmpv6-header.h.
Referenced by GetRetransmissionTime(), and SetRetransmissionTime().