ICMPv6 Redirection header. More...
#include <introspected-doxygen.h>
Public Member Functions | |
Icmpv6Redirection () | |
Constructor. | |
virtual | ~Icmpv6Redirection () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. More... | |
Ipv6Address | GetDestination () const |
Get the IPv6 destination address. More... | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. More... | |
uint32_t | GetReserved () const |
Get the reserved field. More... | |
virtual uint32_t | GetSerializedSize () const |
Get the serialized size. More... | |
Ipv6Address | GetTarget () const |
Get the IPv6 target address. More... | |
virtual void | Print (std::ostream &os) const |
Print informations. More... | |
virtual void | Serialize (Buffer::Iterator start) const |
Serialize the packet. More... | |
void | SetDestination (Ipv6Address destination) |
Set the IPv6 destination address. More... | |
void | SetReserved (uint32_t reserved) |
Set the reserved field. More... | |
void | SetTarget (Ipv6Address target) |
Set the IPv6 target address. More... | |
Public Member Functions inherited from ns3::Icmpv6Header | |
Icmpv6Header () | |
Constructor. | |
virtual | ~Icmpv6Header () |
Destructor. | |
void | CalculatePseudoHeaderChecksum (Ipv6Address src, Ipv6Address dst, uint16_t length, uint8_t protocol) |
Calculate pseudo header checksum for IPv6. More... | |
uint16_t | GetChecksum () const |
Get the checksum. More... | |
uint8_t | GetCode () const |
Get the code field. More... | |
uint8_t | GetType () const |
Get the type field. More... | |
void | SetChecksum (uint16_t checksum) |
Set the checksum. More... | |
void | SetCode (uint8_t code) |
Set the code field. More... | |
void | SetType (uint8_t type) |
Set the type. More... | |
Public Member Functions inherited from ns3::ObjectBase | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the UID of this class. More... | |
Static Public Member Functions inherited from ns3::Icmpv6Header | |
static TypeId | GetTypeId () |
Get the UID of this class. More... | |
Static Public Member Functions inherited from ns3::Header | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Chunk | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Private Attributes | |
Ipv6Address | m_destination |
IPv6 destination address. | |
uint32_t | m_reserved |
Reserved value. | |
Ipv6Address | m_target |
IPv6 target address. | |
Additional Inherited Members | |
Public Types inherited from ns3::Icmpv6Header | |
enum | ErrorDestinationUnreachable_e { ICMPV6_NO_ROUTE = 0, ICMPV6_ADM_PROHIBITED, ICMPV6_NOT_NEIGHBOUR, ICMPV6_ADDR_UNREACHABLE, ICMPV6_PORT_UNREACHABLE } |
ICMPv6 error code : Destination Unreachable. | |
enum | ErrorParameterError_e { ICMPV6_MALFORMED_HEADER = 0, ICMPV6_UNKNOWN_NEXT_HEADER, ICMPV6_UNKNOWN_OPTION } |
ICMPv6 error code : Parameter Error. | |
enum | ErrorTimeExceeded_e { ICMPV6_HOPLIMIT = 0, ICMPV6_FRAGTIME } |
ICMPv6 error code : Time Exceeded. | |
enum | OptionType_e { ICMPV6_OPT_LINK_LAYER_SOURCE = 1, ICMPV6_OPT_LINK_LAYER_TARGET, ICMPV6_OPT_PREFIX, ICMPV6_OPT_REDIRECTED, ICMPV6_OPT_MTU } |
ICMPv6 Option type code. | |
enum | Type_e { ICMPV6_ERROR_DESTINATION_UNREACHABLE = 1, ICMPV6_ERROR_PACKET_TOO_BIG, ICMPV6_ERROR_TIME_EXCEEDED, ICMPV6_ERROR_PARAMETER_ERROR, ICMPV6_ECHO_REQUEST = 128, ICMPV6_ECHO_REPLY, ICMPV6_SUBSCRIBE_REQUEST, ICMPV6_SUBSCRIBE_REPORT, ICMPV6_SUBSCRIVE_END, ICMPV6_ND_ROUTER_SOLICITATION, ICMPV6_ND_ROUTER_ADVERTISEMENT, ICMPV6_ND_NEIGHBOR_SOLICITATION, ICMPV6_ND_NEIGHBOR_ADVERTISEMENT, ICMPV6_ND_REDIRECTION, ICMPV6_ROUTER_RENUMBER, ICMPV6_INFORMATION_REQUEST, ICMPV6_INFORMATION_RESPONSE, ICMPV6_INVERSE_ND_SOLICITATION, ICMPV6_INVERSE_ND_ADVERSTISEMENT, ICMPV6_MLDV2_SUBSCRIBE_REPORT, ICMPV6_MOBILITY_HA_DISCOVER_REQUEST, ICMPV6_MOBILITY_HA_DISCOVER_RESPONSE, ICMPV6_MOBILITY_MOBILE_PREFIX_SOLICITATION, ICMPV6_SECURE_ND_CERTIFICATE_PATH_SOLICITATION, ICMPV6_SECURE_ND_CERTIFICATE_PATH_ADVERTISEMENT, ICMPV6_EXPERIMENTAL_MOBILITY } |
ICMPv6 type code. | |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
Protected Attributes inherited from ns3::Icmpv6Header | |
bool | m_calcChecksum |
Checksum enable or not. | |
uint16_t | m_checksum |
The checksum. | |
ICMPv6 Redirection header.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 834 of file icmpv6-header.h.
|
virtual |
Deserialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 899 of file icmpv6-header.cc.
References GetSerializedSize(), ns3::Icmpv6Header::m_checksum, m_destination, m_target, NS_LOG_FUNCTION, ns3::Buffer::Iterator::Read(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU32(), ns3::Buffer::Iterator::ReadU8(), ns3::Ipv6Address::Set(), ns3::Icmpv6Header::SetCode(), SetReserved(), and ns3::Icmpv6Header::SetType().
Ipv6Address ns3::Icmpv6Redirection::GetDestination | ( | void | ) | const |
Get the IPv6 destination address.
Definition at line 846 of file icmpv6-header.cc.
References m_destination, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::HandleRedirection().
|
virtual |
Get the instance type ID.
Reimplemented from ns3::Icmpv6Header.
Definition at line 800 of file icmpv6-header.cc.
References GetTypeId(), and NS_LOG_FUNCTION.
uint32_t ns3::Icmpv6Redirection::GetReserved | ( | ) | const |
Get the reserved field.
Definition at line 828 of file icmpv6-header.cc.
References m_reserved, and NS_LOG_FUNCTION.
|
virtual |
Get the serialized size.
Reimplemented from ns3::Icmpv6Header.
Definition at line 864 of file icmpv6-header.cc.
References NS_LOG_FUNCTION.
Referenced by Deserialize().
Ipv6Address ns3::Icmpv6Redirection::GetTarget | ( | ) | const |
Get the IPv6 target address.
Definition at line 834 of file icmpv6-header.cc.
References m_target, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::HandleRedirection().
|
static |
Get the UID of this class.
Definition at line 791 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 858 of file icmpv6-header.cc.
References ns3::Icmpv6Header::GetChecksum(), ns3::Icmpv6Header::GetCode(), ns3::Icmpv6Header::GetType(), m_destination, m_target, and NS_LOG_FUNCTION.
|
virtual |
Serialize the packet.
start | start offset |
Reimplemented from ns3::Icmpv6Header.
Definition at line 870 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(), NS_LOG_FUNCTION, ns3::Ipv6Address::Serialize(), 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 852 of file icmpv6-header.cc.
References m_destination, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::SendRedirection().
void ns3::Icmpv6Redirection::SetReserved | ( | uint32_t | reserved | ) |
Set the reserved field.
reserved | the reserved value |
Definition at line 822 of file icmpv6-header.cc.
References m_reserved, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::Icmpv6Redirection::SetTarget | ( | Ipv6Address | target | ) |
Set the IPv6 target address.
target | IPv6 target address |
Definition at line 840 of file icmpv6-header.cc.
References m_target, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::SendRedirection().