ICMPv6 link-layer address option. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6OptionLinkLayerAddress (bool source) | |
Constructor. | |
Icmpv6OptionLinkLayerAddress (bool source, Address addr) | |
Constructor. | |
Icmpv6OptionLinkLayerAddress () | |
Constructor. | |
virtual | ~Icmpv6OptionLinkLayerAddress () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
Address | GetAddress () const |
Get the hardware address. | |
virtual TypeId | GetInstanceTypeId (void) const |
Get the instance type ID. | |
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 | SetAddress (Address addr) |
Set the hardware address. | |
![]() | |
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 | |
Address | m_addr |
The hardware address. |
Additional Inherited Members | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
ICMPv6 link-layer address option.
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 1627 of file icmpv6-header.h.
ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress | ( | bool | source | ) |
Constructor.
source | source hardware address or target hardware address for the option |
Definition at line 1635 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_OPT_LINK_LAYER_SOURCE, ns3::Icmpv6Header::ICMPV6_OPT_LINK_LAYER_TARGET, and ns3::Icmpv6OptionHeader::SetType().
ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress | ( | bool | source, |
Address | addr | ||
) |
Constructor.
source | source hardware address or target hardware address for the option |
addr | hardware address |
Definition at line 1645 of file icmpv6-header.cc.
References GetSerializedSize(), ns3::Icmpv6Header::ICMPV6_OPT_LINK_LAYER_SOURCE, ns3::Icmpv6Header::ICMPV6_OPT_LINK_LAYER_TARGET, SetAddress(), ns3::Icmpv6OptionHeader::SetLength(), and ns3::Icmpv6OptionHeader::SetType().
ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress | ( | ) |
Constructor.
Definition at line 1640 of file icmpv6-header.cc.
References ns3::Icmpv6Header::ICMPV6_OPT_LINK_LAYER_SOURCE, and ns3::Icmpv6OptionHeader::SetType().
|
virtual |
Destructor.
Definition at line 1652 of file icmpv6-header.cc.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1692 of file icmpv6-header.cc.
References ns3::Address::CopyFrom(), ns3::Icmpv6OptionHeader::GetLength(), GetSerializedSize(), m_addr, ns3::Buffer::Iterator::Read(), ns3::Buffer::Iterator::ReadU8(), ns3::Icmpv6OptionHeader::SetLength(), ns3::Icmpv6OptionHeader::SetType(), and visualizer.core::start().
Address ns3::Icmpv6OptionLinkLayerAddress::GetAddress | ( | void | ) | const |
Get the hardware address.
Definition at line 1656 of file icmpv6-header.cc.
References m_addr.
Referenced by ns3::Icmpv6L4Protocol::HandleNA(), ns3::Icmpv6L4Protocol::HandleNS(), ns3::Icmpv6L4Protocol::HandleRedirection(), ns3::Icmpv6L4Protocol::HandleRS(), and ns3::Icmpv6L4Protocol::ReceiveLLA().
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1630 of file icmpv6-header.cc.
References GetTypeId().
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1671 of file icmpv6-header.cc.
References ns3::Address::GetLength(), and m_addr.
Referenced by Deserialize(), Icmpv6OptionLinkLayerAddress(), and ns3::Icmpv6L4Protocol::SendRedirection().
|
static |
Get the UID of this class.
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1621 of file icmpv6-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
Print informations.
os | output stream |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1666 of file icmpv6-header.cc.
References ns3::Icmpv6OptionHeader::GetLength(), ns3::Icmpv6OptionHeader::GetType(), and m_addr.
|
virtual |
Serialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6OptionHeader.
Definition at line 1678 of file icmpv6-header.cc.
References ns3::Address::CopyTo(), ns3::Address::GetLength(), ns3::Icmpv6OptionHeader::GetLength(), ns3::Icmpv6OptionHeader::GetType(), m_addr, NS_LOG_FUNCTION_NOARGS, visualizer.core::start(), ns3::Buffer::Iterator::Write(), and ns3::Buffer::Iterator::WriteU8().
void ns3::Icmpv6OptionLinkLayerAddress::SetAddress | ( | Address | addr | ) |
Set the hardware address.
addr | the address to set |
Definition at line 1661 of file icmpv6-header.cc.
References m_addr.
Referenced by Icmpv6OptionLinkLayerAddress(), and ns3::Icmpv6L4Protocol::SendRedirection().
|
private |
The hardware address.
Definition at line 1706 of file icmpv6-header.h.
Referenced by Deserialize(), GetAddress(), GetSerializedSize(), Print(), Serialize(), and SetAddress().