SetAddressCallback()
Registers a callback to notify internal IPv6 address changes.
GetUnicastAddresses() const
Returns the linked list of unicast addresses.
GetUnicastAddresses()
Returns the linked list of unicast addresses.
AddUnicastAddress()
Adds a unicast address to the network interface. Is intended for addresses internal to OpenThread. The @p aAddress instance is directly added in the unicast address linked list. If @p aAddress is already added, the call to `AddUnicastAddress()` with the same address will perform no action.
RemoveUnicastAddress()
Removes a unicast address from the network interface. Is intended for addresses internal to OpenThread. The @p aAddress instance is removed from the unicast address linked list. If @p aAddress is not in the list, the call to `RemoveUnicastAddress()` will perform no action.
UpdatePreferredFlagOn()
Updates the preferred flag on a previously added (internal to OpenThread core) unicast address. If the address is not added to the network interface or the current preferred flag of @p aAddress is the same as the given @p aPreferred, no action is performed.
HasUnicastAddress() const
Indicates whether or not an address is assigned to the interface.
HasUnicastAddress() const
Indicates whether or not an address is assigned to the interface.
IsUnicastAddressExternal() const
Indicates whether a unicast address is an external or internal address.
AddExternalUnicastAddress()
Adds an external (to OpenThread) unicast address to the network interface. For external address, the @p aAddress instance is not directly used (i.e., it can be temporary). It is copied into a local entry (allocated from an internal pool) before being added in the unicast address linked list. The maximum number of external addresses is specified by `OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS`.
RemoveExternalUnicastAddress()
Removes a external (to OpenThread) unicast address from the network interface.
RemoveAllExternalUnicastAddresses()
Removes all the previously added external (to OpenThread) unicast addresses from the network interface.
IsMulticastSubscribed() const
Indicates whether or not the network interface is subscribed to a multicast address.
SubscribeAllRoutersMulticast()
Subscribes the network interface to the link-local and realm-local all routers addresses.
UnsubscribeAllRoutersMulticast()
Unsubscribes the network interface to the link-local and realm-local all routers address.
GetMulticastAddresses() const
Returns the linked list of multicast addresses.
IsMulticastAddressExternal() const
Indicates whether a multicast address is an external or internal address.
SubscribeMulticast()
Subscribes the network interface to a multicast address. Is intended for addresses internal to OpenThread. The @p aAddress instance is directly added in the multicast address linked list.
UnsubscribeMulticast()
Unsubscribes the network interface to a multicast address. Is intended for addresses internal to OpenThread. The @p aAddress instance is directly removed from the multicast address linked list.
SubscribeExternalMulticast()
Subscribes the network interface to the external (to OpenThread) multicast address. For external address, the @p aAddress instance is not directly used (i.e., it can be temporary). It is copied into a local entry (allocated from an internal pool) before being added in the multicast address linked list. The maximum number of external addresses is specified by `OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS`.
UnsubscribeExternalMulticast()
Unsubscribes the network interface to the external (to OpenThread) multicast address.
UnsubscribeAllExternalMulticastAddresses()
Unsubscribes the network interface from all previously added external (to OpenThread) multicast addresses.
IterateExternalMulticastAddresses()
Enables range-based `for` loop iteration over external multicast addresses on the Netif that matches a given IPv6 address type filter. Should be used like follows: to iterate over all external multicast addresses for (Ip6::Netif::ExternalMulticastAddress &addr : Get().IterateExternalMulticastAddresses()) { ... } or to iterate over a subset of external multicast addresses determined by a given address type filter for (Ip6::Netif::ExternalMulticastAddress &addr : Get().IterateExternalMulticastAddresses(Ip6::Address::kTypeMulticastLargerThanRealmLocal)) { ... }.
HasAnyExternalMulticastAddress() const
Indicates whether or not the network interfaces is subscribed to any external multicast address.
ApplyNewMeshLocalPrefix()
Applies the new mesh local prefix. Updates all mesh-local unicast addresses and prefix-based multicast addresses of the network interface.
SubscribeAllNodesMulticast()
Subscribes the network interface to the realm-local all MPL forwarders, link-local, and realm-local all nodes address.
UnsubscribeAllNodesMulticast()
Unsubscribes the network interface from the realm-local all MPL forwarders, link-local and realm-local all nodes address.
SignalUnicastAddressChange()
SignalMulticastAddressChange()
SignalMulticastAddressesChange()