ICMPv6 Option Prefix Information. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6OptionPrefixInformation () | |
Constructor. | |
Icmpv6OptionPrefixInformation (Ipv6Address network, uint8_t prefixlen) | |
Constructor. | |
virtual | ~Icmpv6OptionPrefixInformation () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
uint8_t | GetFlags () const |
Get the flags. | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. | |
uint32_t | GetPreferredTime () const |
Get the preferred time of the information. | |
Ipv6Address | GetPrefix () const |
Get the IPv6 prefix. | |
uint8_t | GetPrefixLength () const |
Get the prefix length. | |
uint32_t | GetReserved () const |
Get the reserved field. | |
virtual uint32_t | GetSerializedSize () const |
Get the serialized size. | |
uint32_t | GetValidTime () const |
Get the valid time of the information. | |
virtual void | Print (std::ostream &os) const |
Print informations. | |
virtual void | Serialize (Buffer::Iterator start) const |
Serialize the packet. | |
void | SetFlags (uint8_t flags) |
Set the flags. | |
void | SetPreferredTime (uint32_t preferredTime) |
Set the preferred time of the information. | |
void | SetPrefix (Ipv6Address prefix) |
Set the IPv6 prefix. | |
void | SetPrefixLength (uint8_t prefixLength) |
Set the prefix length. | |
void | SetReserved (uint32_t reserved) |
Set the reserved field (normally it will be 0x00000000). | |
void | SetValidTime (uint32_t validTime) |
Set the valid time of the information. | |
![]() | |
Icmpv6OptionHeader () | |
Constructor. | |
virtual | ~Icmpv6OptionHeader () |
Destructor. | |
uint8_t | GetLength () const |
Get the length of the option in 8 bytes unit. | |
uint8_t | GetType () const |
Get the type of the option. | |
void | SetLength (uint8_t len) |
Set the length of the option. | |
void | SetType (uint8_t type) |
Set the type of the option. | |
![]() | |
virtual | ~Header () |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the UID of this class. |
Private Attributes | |
uint8_t | m_flags |
The flags. | |
uint32_t | m_preferredTime |
The preferred time. | |
Ipv6Address | m_prefix |
The prefix value. | |
uint8_t | m_prefixLength |
The length of the prefix. | |
uint32_t | m_reserved |
The reserved field. | |
uint32_t | m_validTime |
The valid time. |
Additional Inherited Members | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
ICMPv6 Option Prefix Information.
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 1462 of file icmpv6-header.h.
ns3::Icmpv6OptionPrefixInformation::Icmpv6OptionPrefixInformation | ( | ) |
Constructor.
Definition at line 1482 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_OPT_PREFIX, SetFlags(), ns3::Icmpv6OptionHeader::SetLength(), SetPreferredTime(), SetPrefix(), SetPrefixLength(), SetReserved(), ns3::Icmpv6OptionHeader::SetType(), and SetValidTime().
ns3::Icmpv6OptionPrefixInformation::Icmpv6OptionPrefixInformation | ( | Ipv6Address | network, |
uint8_t | prefixlen | ||
) |
Constructor.
network | prefix |
prefixlen | prefix length |
Definition at line 1494 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_OPT_PREFIX, SetFlags(), ns3::Icmpv6OptionHeader::SetLength(), SetPreferredTime(), SetPrefix(), SetPrefixLength(), SetReserved(), ns3::Icmpv6OptionHeader::SetType(), and SetValidTime().
|
virtual |
Destructor.
Definition at line 1506 of file icmpv6-header.cc.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1599 of file icmpv6-header.cc.
References GetSerializedSize(), ns3::Buffer::Iterator::Read(), ns3::Buffer::Iterator::ReadNtohU32(), ns3::Buffer::Iterator::ReadU8(), SetFlags(), ns3::Icmpv6OptionHeader::SetLength(), SetPreferredTime(), SetPrefix(), SetPrefixLength(), SetReserved(), ns3::Icmpv6OptionHeader::SetType(), SetValidTime(), and visualizer.core::start().
uint8_t ns3::Icmpv6OptionPrefixInformation::GetFlags | ( | ) | const |
Get the flags.
Definition at line 1521 of file icmpv6-header.cc.
References m_flags.
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1477 of file icmpv6-header.cc.
References GetTypeId().
uint32_t ns3::Icmpv6OptionPrefixInformation::GetPreferredTime | ( | ) | const |
Get the preferred time of the information.
Definition at line 1541 of file icmpv6-header.cc.
References m_preferredTime.
Ipv6Address ns3::Icmpv6OptionPrefixInformation::GetPrefix | ( | ) | const |
Get the IPv6 prefix.
Definition at line 1561 of file icmpv6-header.cc.
References m_prefix.
uint8_t ns3::Icmpv6OptionPrefixInformation::GetPrefixLength | ( | ) | const |
Get the prefix length.
Definition at line 1510 of file icmpv6-header.cc.
References m_prefixLength.
uint32_t ns3::Icmpv6OptionPrefixInformation::GetReserved | ( | ) | const |
Get the reserved field.
Definition at line 1551 of file icmpv6-header.cc.
References m_preferredTime.
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1576 of file icmpv6-header.cc.
Referenced by Deserialize().
|
static |
Get the UID of this class.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1468 of file icmpv6-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
uint32_t ns3::Icmpv6OptionPrefixInformation::GetValidTime | ( | ) | const |
Get the valid time of the information.
Definition at line 1531 of file icmpv6-header.cc.
References m_validTime.
|
virtual |
Print informations.
os | output stream |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1571 of file icmpv6-header.cc.
References ns3::Icmpv6OptionHeader::GetLength(), ns3::Icmpv6OptionHeader::GetType(), and m_prefix.
|
virtual |
Serialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1581 of file icmpv6-header.cc.
References ns3::Ipv6Address::GetBytes(), ns3::Icmpv6OptionHeader::GetLength(), ns3::Icmpv6OptionHeader::GetType(), m_flags, m_preferredTime, m_prefix, m_prefixLength, m_reserved, m_validTime, visualizer.core::start(), ns3::Buffer::Iterator::Write(), ns3::Buffer::Iterator::WriteHtonU32(), and ns3::Buffer::Iterator::WriteU8().
void ns3::Icmpv6OptionPrefixInformation::SetFlags | ( | uint8_t | flags | ) |
Set the flags.
flags | the flags to set |
Definition at line 1526 of file icmpv6-header.cc.
References m_flags.
Referenced by Deserialize(), Icmpv6OptionPrefixInformation(), and ns3::Radvd::Send().
void ns3::Icmpv6OptionPrefixInformation::SetPreferredTime | ( | uint32_t | preferredTime | ) |
Set the preferred time of the information.
preferredTime | preferred time |
Definition at line 1546 of file icmpv6-header.cc.
References m_preferredTime.
Referenced by Deserialize(), Icmpv6OptionPrefixInformation(), and ns3::Radvd::Send().
void ns3::Icmpv6OptionPrefixInformation::SetPrefix | ( | Ipv6Address | prefix | ) |
Set the IPv6 prefix.
prefix | the IPv6 prefix |
Definition at line 1566 of file icmpv6-header.cc.
References m_prefix.
Referenced by Deserialize(), Icmpv6OptionPrefixInformation(), and ns3::Radvd::Send().
void ns3::Icmpv6OptionPrefixInformation::SetPrefixLength | ( | uint8_t | prefixLength | ) |
Set the prefix length.
prefixLength | the prefix length |
Definition at line 1515 of file icmpv6-header.cc.
References m_prefixLength, and NS_ASSERT.
Referenced by Deserialize(), Icmpv6OptionPrefixInformation(), and ns3::Radvd::Send().
void ns3::Icmpv6OptionPrefixInformation::SetReserved | ( | uint32_t | reserved | ) |
Set the reserved field (normally it will be 0x00000000).
reserved | reserved value |
Definition at line 1556 of file icmpv6-header.cc.
References m_reserved.
Referenced by Deserialize(), and Icmpv6OptionPrefixInformation().
void ns3::Icmpv6OptionPrefixInformation::SetValidTime | ( | uint32_t | validTime | ) |
Set the valid time of the information.
validTime | valid time |
Definition at line 1536 of file icmpv6-header.cc.
References m_validTime.
Referenced by Deserialize(), Icmpv6OptionPrefixInformation(), and ns3::Radvd::Send().
|
private |
The flags.
Definition at line 1605 of file icmpv6-header.h.
Referenced by GetFlags(), Serialize(), and SetFlags().
|
private |
The preferred time.
Definition at line 1615 of file icmpv6-header.h.
Referenced by GetPreferredTime(), GetReserved(), Serialize(), and SetPreferredTime().
|
private |
The prefix value.
Definition at line 1595 of file icmpv6-header.h.
Referenced by GetPrefix(), Print(), Serialize(), and SetPrefix().
|
private |
The length of the prefix.
Definition at line 1600 of file icmpv6-header.h.
Referenced by GetPrefixLength(), Serialize(), and SetPrefixLength().
|
private |
The reserved field.
Definition at line 1620 of file icmpv6-header.h.
Referenced by Serialize(), and SetReserved().
|
private |
The valid time.
Definition at line 1610 of file icmpv6-header.h.
Referenced by GetValidTime(), Serialize(), and SetValidTime().