TInet6HeaderICMP_RouterAdv Class Reference

class TInet6HeaderICMP_RouterAdv : public TInet6HeaderICMP

ICMPv6 Router Advertisement layout.

(Neighbour Discovery for IP version 6) (+ Home Agent flag from draft-ietf-mobileip-ipv6-08)
        Type=134, Code=0

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Type      |     Code      |          Checksum             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cur Hop Limit |M|O|H|Prf|Rsrvd|       Router Lifetime         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         Reachable Time                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          Retrans Timer                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
       
Note:

Above is longer thant what is declared in the base class i-member. The user must verify the sufficient length of the packet, when using this.

Valid options:
  • KInet6OptionICMP_SourceLink

  • KInet6OptionICMP_Mtu

  • KInet6OptionICMP_Prefix

  • KInet6OptionICMP_RouteInformation (draft)

Inherits from

Member Functions Documentation

CurHopLimit()

TInt CurHopLimit ( ) const [inline]

Gets Cur Hop Limit.

Flags()

TInt Flags ( ) const [inline]

Gets flags byte

H()

TInt H ( ) const [inline]

Gets Home Agent Configuration (H) flag

HeaderLength()

TInt HeaderLength ( ) const [inline]

Gets the header length.

Note:

This length is not the true length of the ICMP header. This only covers the fixed part.

M()

TInt M ( ) const [inline]

Gets Managed Address Configuration (M) flag

MaxHeaderLength()

TInt MaxHeaderLength ( ) [static, inline]

Gets the maximum header length.

Note:

This length is not the true length of the ICMP header. This only covers the fixed part.

MinHeaderLength()

TInt MinHeaderLength ( ) [static, inline]

Gets the minimum header length.

O()

TInt O ( ) const [inline]

Gets Other Address Configuartion (O) flag

Prf()

TInt Prf ( ) const [inline]

Gets default route preference.

Experimental: draft-draves-ipngwg-router-selection-01.txt Default Router Preferences and More-Specific Routes

ReachableTime()

TUint32 ReachableTime ( ) const [inline]

Gets the value of reachable timer.

RetransTimer()

TUint32 RetransTimer ( ) const [inline]

Gets the value of retransmit timer.

RouterLifetime()

TInt RouterLifetime ( ) const [inline]

Gets the lifetime of the defaul route.

If non-zero, specifies how long (in seconds) this router is willing to act as a default router.

Note:

This is badly named. The parameter controls only the default route processing. The value ZERO does not mean that the sender is not a router.

SetCurHopLimit(TInt)

void SetCurHopLimit ( TInt aLimit ) [inline]

Sets the Cur Hoplimit.

Parameters

TInt aLimit The Hoplimit [0..255]

SetFlags(TInt)

void SetFlags ( TInt aFlags ) [inline]

Sets the flags.

Parameters

TInt aFlags The flags bits [0..255].

SetReachableTime(TUint32)

void SetReachableTime ( TUint32 aTime ) [inline]

Sets the value of reachable timer

Parameters

TUint32 aTime The timer value

SetRetransTimer(TUint32)

void SetRetransTimer ( TUint32 aTimer ) [inline]

Sets the value of the retransmit timer

Parameters

TUint32 aTimer The timer value

SetRouterLifetime(TInt)

void SetRouterLifetime ( TInt aTime ) [inline]

Sets the lifetime of the default route.

Parameters

TInt aTime The lifetime.