Network Component  Version 7.11.0
MDK Middleware for IPv4 and IPv6 Networking
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
NetNDP: NDP Neighbor Discovery

Events generated by the Network - Neighbor Discovery for IPv6 functions. More...

Functions

__STATIC_INLINE void EvrNetNDP_InitCache (uint32_t num_entries)
 Event on NDP cache initialize (Op) More...
 
__STATIC_INLINE void EvrNetNDP_FrameCheckFailed (uint8_t msg_type)
 Event on NDP discovery frame consistency check failed (Error) More...
 
__STATIC_INLINE void EvrNetNDP_AddressNotLinkLocal (const uint8_t *ip6_addr)
 Event on NDP receive address not link-local (Op) More...
 
__STATIC_INLINE void EvrNetNDP_RouterAdvertisement (uint8_t hop_limit, uint8_t flags, uint16_t lifetime)
 Event on NDP receive Router Advertisement (RA) message (Op) More...
 
__STATIC_INLINE void EvrNetNDP_OptionMtu (uint32_t mtu)
 Event on NDP option Maximum transmission unit (MTU) (Op) More...
 
__STATIC_INLINE void EvrNetNDP_OptionSourceMacAddress (const uint8_t *src_addr)
 Event on NDP option Source link-layer (MAC) address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_OptionPrefixInfo (const uint8_t *opt_prefix)
 Event on NDP option address prefix info (Op) More...
 
__STATIC_INLINE void EvrNetNDP_PrefixInfoNotValid (void)
 Event on NDP prefix information option not valid (Op) More...
 
__STATIC_INLINE void EvrNetNDP_WrongTargetAddress (const uint8_t *targ_addr)
 Event on NDP receive wrong target address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_NeighborSolicitation (const uint8_t *targ_addr)
 Event on NDP receive Neighbor Solicitation (NS) message (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeRequest (void)
 Event on NDP receive probe request (Op) More...
 
__STATIC_INLINE void EvrNetNDP_NeighborAdvertisement (const uint8_t *targ_addr)
 Event on NDP receive Neighbor Advertisement (NA) message (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeResponse (void)
 Event on NDP receive probe response (Op) More...
 
__STATIC_INLINE void EvrNetNDP_WrongDestinationAddress (const uint8_t *dst_addr)
 Event on NDP receive wrong destination address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_SendReply (const uint8_t *targ_addr)
 Event on NDP send advertisement reply to solicitation message (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ShowFlags (uint32_t flags)
 Event on NDP display advertisement message flags (Op) More...
 
__STATIC_INLINE void EvrNetNDP_SendRequest (uint32_t type)
 Event on NDP send solicitation request (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ShowTargetAddress (const uint8_t *targ_addr)
 Event on NDP display target address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_OptionTargetMacAddress (const uint8_t *targ_addr)
 Event on NDP option target link-layer (MAC) address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheEntryUpdate (uint32_t entry)
 Event on NDP cache entry update (Op) More...
 
__STATIC_INLINE void EvrNetNDP_WrongResponse (uint8_t msg_type)
 Event on NDP wrong response received (Error) More...
 
__STATIC_INLINE void EvrNetNDP_MakeLinkLocalAddress (const uint8_t *local_addr)
 Event on NDP make link-local address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_MakeTempAddress (const uint8_t *temp_addr)
 Event on NDP make temporary address (SLAAC) using prefix info (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheIpRefreshed (const uint8_t *ip6_addr)
 Event on NDP cached IP address refreshed (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheAdd (const uint8_t *ip6_addr, const uint8_t *mac_addr, uint8_t type)
 Event on NDP add entry to NDP cache (Op) More...
 
__STATIC_INLINE void EvrNetNDP_RouterListFull (uint32_t max_count)
 Event on NDP cache add router list full (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheAllocFailed (void)
 Event on NDP allocate free cache entry failed (Error) More...
 
__STATIC_INLINE void EvrNetNDP_CacheEntryAdded (uint32_t entry, uint32_t timeout)
 Event on NDP cache entry added (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheEntryDeleted (uint32_t entry, const uint8_t *ip6_addr, uint8_t type)
 Event on NDP cache entry deleted (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheEntryRefreshed (uint32_t entry, const uint8_t *ip6_addr)
 Event on NDP cache entry refreshed (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheFind (const uint8_t *ip6_addr)
 Event on NDP find IP address in cache (Op) More...
 
__STATIC_INLINE void EvrNetNDP_GatewayUnknown (const uint8_t *ip6_addr)
 Event on NDP cache add gateway unknown (Error) More...
 
__STATIC_INLINE void EvrNetNDP_UsingGateway (const uint8_t *ip6_addr)
 Event on NDP using gateway to access external address (Op) More...
 
__STATIC_INLINE void EvrNetNDP_UnresolvedMacAddress (const uint8_t *ip6_addr)
 Event on NDP unresolved MAC address in cache (Error) More...
 
__STATIC_INLINE void EvrNetNDP_EntryFound (uint32_t entry)
 Event on NDP cache entry found (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheIp (const uint8_t *ip6_addr)
 Event on netNDP_CacheIP execute (API) More...
 
__STATIC_INLINE void EvrNetNDP_CacheIpInvalidParameter (void)
 Event on netNDP_CacheIP invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetNDP_GetIp (const uint8_t *mac_addr, const uint8_t *ip6_addr)
 Event on netNDP_GetIP resolving success (API) More...
 
__STATIC_INLINE void EvrNetNDP_GetIpInvalidParameter (void)
 Event on netNDP_GetIP invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetNDP_GetIpEntryNotFound (const uint8_t *mac_addr)
 Event on netNDP_GetIP entry with MAC address not found in cache (Op) More...
 
__STATIC_INLINE void EvrNetNDP_GetMac (const uint8_t *ip6_addr, const uint8_t *mac_addr)
 Event on netNDP_GetMAC resolving success (API) More...
 
__STATIC_INLINE void EvrNetNDP_GetMacInvalidParameter (void)
 Event on netNDP_GetMAC invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetNDP_GetMacEntryNotFound (const uint8_t *ip6_addr)
 Event on netNDP_GetMAC entry with IP address not found in cache (Op) More...
 
__STATIC_INLINE void EvrNetNDP_Probe (const uint8_t *ip6_addr)
 Event on netNDP_Probe execute (API) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeInvalidParameter (void)
 Event on netNDP_Probe invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeBusy (void)
 Event on NDP probe process busy (Error) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeRetransmit (const uint8_t *ip6_addr)
 Event on NDP probe retransmit (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeTimeout (const uint8_t *ip6_addr)
 Event on NDP probe timeout (Op) More...
 
__STATIC_INLINE void EvrNetNDP_CacheEntryTimeout (uint32_t entry, const uint8_t *ip6_addr, const uint8_t *mac_addr, uint32_t type)
 Event on NDP cache entry timeout (Op) More...
 
__STATIC_INLINE void EvrNetNDP_EntryReleased (uint32_t entry)
 Event on NDP cache entry released (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ResolveEntry (uint32_t entry)
 Event on resolve NDP cache entry (Op) More...
 
__STATIC_INLINE void EvrNetNDP_RefreshEntry (uint32_t entry)
 Event on refresh NDP cache entry (Op) More...
 
__STATIC_INLINE void EvrNetNDP_UninitCache (void)
 Event on NDP cache de-initialize (Op) More...
 

Description

Events generated by the Network - Neighbor Discovery for IPv6 functions.

The Network Neighbor Discovery functions generate events that report events in the NDP address resolver and NDP cache and help in troubleshooting.

Function Documentation

__STATIC_INLINE void EvrNetNDP_AddressNotLinkLocal ( const uint8_t *  ip6_addr)

Event on NDP receive address not link-local (Op)

Parameters
ip6_addrpointer to IPv6 source address
Remarks
Nodes must silently discard RA messages if source IP not link-local.

The event AddressNotLinkLocal is created when the network library receives the router advertisement message, but the source IPv6 address is not link-local. The frame is therefore discarded.

Value in the Event Recorder shows:

  • src_addr: source IPv6 address of received RA message.
__STATIC_INLINE void EvrNetNDP_CacheAdd ( const uint8_t *  ip6_addr,
const uint8_t *  mac_addr,
uint8_t  type 
)

Event on NDP add entry to NDP cache (Op)

Parameters
ip6_addrpointer to IPv6 address
mac_addrpointer to MAC address
typecache entry type:
  • 0x01: Host
  • 0x02: Router

The event CacheAdd is created when the network library wants to add a new host to the NDP cache table.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host to be added to the cache.
  • mac: MAC address of the host to be added to the cache.
  • type: cache entry type to be added (Host, Router).
__STATIC_INLINE void EvrNetNDP_CacheAllocFailed ( void  )

Event on NDP allocate free cache entry failed (Error)

The event CacheAllocFailed is created when the network library wants to add new host to the NDP cache table, but it fails. Therefore, the new host is not cached. In order to get rid of such events, you must increase the size of the NDP cache table in the ethernet interface configuration.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_CacheEntryAdded ( uint32_t  entry,
uint32_t  timeout 
)

Event on NDP cache entry added (Op)

Parameters
entrycache entry number
timeoutentry timeout in seconds

The event CacheEntryAdded is created when the network library successfully added the new host to the NDP cache table.

Value in the Event Recorder shows:

  • entry: assigned cache entry identifier.
  • tout: cache entry timeout in seconds.
__STATIC_INLINE void EvrNetNDP_CacheEntryDeleted ( uint32_t  entry,
const uint8_t *  ip6_addr,
uint8_t  type 
)

Event on NDP cache entry deleted (Op)

Parameters
entrycache entry number
ip6_addrpointer to IPv6 address
typecache entry type:
  • 0x01: Host
  • 0x02: Router

The event CacheEntryDeleted is created when the network library successfully deleted the router entry from the NDP cache table.

Value in the Event Recorder shows:

  • entry: cache entry identifier.
  • ip: IPv6 address of the router.
  • type: cache entry type (Router).
__STATIC_INLINE void EvrNetNDP_CacheEntryRefreshed ( uint32_t  entry,
const uint8_t *  ip6_addr 
)

Event on NDP cache entry refreshed (Op)

Parameters
entrycache entry number
ip6_addrpointer to IPv6 address

The event CacheEntryRefreshed is created when the network library receives the unicast IPv6 frame, and refresh the entry in the local cache.

Value in the Event Recorder shows:

  • entry: cache entry identifier.
  • ip: IPv6 address of the cached entry.
__STATIC_INLINE void EvrNetNDP_CacheEntryTimeout ( uint32_t  entry,
const uint8_t *  ip6_addr,
const uint8_t *  mac_addr,
uint32_t  type 
)

Event on NDP cache entry timeout (Op)

Parameters
entrycache entry number
ip6_addrpointer to IPv6 address
mac_addrpointer to MAC address
typecache entry type:
  • 0x01: Host
  • 0x02: Router

The event CacheEntryTimeout is created when the validity of the NDP cached host has expired. The host will be refreshed or removed from the cache.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
  • type: type of host cache entry (Host, Router).
  • ip: IPv6 address of the host cache entry.
  • mac: MAC address of the host cache entry.
__STATIC_INLINE void EvrNetNDP_CacheEntryUpdate ( uint32_t  entry)

Event on NDP cache entry update (Op)

Parameters
entrycache entry number

The event CacheEntryUpdate is created when the network library receives the network advertisement response and updates the local cached entry.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
__STATIC_INLINE void EvrNetNDP_CacheFind ( const uint8_t *  ip6_addr)

Event on NDP find IP address in cache (Op)

Parameters
ip6_addrpointer to IPv6 address

The event CacheFind is created when the network library wants to find the host in the NDP cache table to resolve its MAC address. If the host is not in the NDP cache, the network library creates a new entry in the table and starts the resolution process.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being searched in the cache.
__STATIC_INLINE void EvrNetNDP_CacheIp ( const uint8_t *  ip6_addr)

Event on netNDP_CacheIP execute (API)

Parameters
ip6_addrpointer to requested IPv6 address

The event CacheIp is created when the function netNDP_CacheIP is executed.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being requested.
__STATIC_INLINE void EvrNetNDP_CacheIpInvalidParameter ( void  )

Event on netNDP_CacheIP invalid parameter (Error)

The event CacheIpInvalidParameter is created when the function netNDP_CacheIP is executed, and the function input parameter is invalid.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_CacheIpRefreshed ( const uint8_t *  ip6_addr)

Event on NDP cached IP address refreshed (Op)

Parameters
ip6_addrpointer to IPv6 address

The event CacheIpRefreshed is created when the network library wants to add a new host to the NDP cache table, but finds it already cached. Therefore, the new host is only refreshed in the cache table.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host to be added to the cache.
__STATIC_INLINE void EvrNetNDP_EntryFound ( uint32_t  entry)

Event on NDP cache entry found (Op)

Parameters
entrycache entry number

The event EntryFound is created when the network library wants to notify that it has found the host in the NDP cache table.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
__STATIC_INLINE void EvrNetNDP_EntryReleased ( uint32_t  entry)

Event on NDP cache entry released (Op)

Parameters
entrycache entry number

The event EntryReleased is created when the cached host entry is released from the NDP cache.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
__STATIC_INLINE void EvrNetNDP_FrameCheckFailed ( uint8_t  msg_type)

Event on NDP discovery frame consistency check failed (Error)

Parameters
msg_typediscovery message type
  • 134: Router Advertisement
  • 135: Neighbor Solicitation
  • 136: Neighbor Advertisement

The event FrameCheckFailed is created when the network library has checked the received NDP discovery frame and found the inconsistency. The frame is therefore discarded.

Value in the Event Recorder shows:

  • type: received discovery message type.
__STATIC_INLINE void EvrNetNDP_GatewayUnknown ( const uint8_t *  ip6_addr)

Event on NDP cache add gateway unknown (Error)

Parameters
ip6_addrpointer to IPv6 address of a gateway

The event GatewayUnknown is created when the network library wants to find the non-local host in the NDP cache table. The network library uses the gateway to access the host, but finds that the gateway address is not specified.

Value in the Event Recorder shows:

  • gw: IPv6 address of the default gateway.
__STATIC_INLINE void EvrNetNDP_GetIp ( const uint8_t *  mac_addr,
const uint8_t *  ip6_addr 
)

Event on netNDP_GetIP resolving success (API)

Parameters
mac_addrpointer to requested MAC address
ip6_addrpointer to resolved IPv6 address

The event GetIp is created when the function netNDP_GetIP is executed.

Value in the Event Recorder shows:

  • ip: returned IPv6 address of the host.
  • mac: MAC address of the host being requested.
__STATIC_INLINE void EvrNetNDP_GetIpEntryNotFound ( const uint8_t *  mac_addr)

Event on netNDP_GetIP entry with MAC address not found in cache (Op)

Parameters
mac_addrpointer to requested MAC address

The event GetIpEntryNotFound is created when the function netNDP_GetIP is executed, but the requested MAC address of the host in the cache is missing.

Value in the Event Recorder shows:

  • mac: MAC address of the host being requested.
__STATIC_INLINE void EvrNetNDP_GetIpInvalidParameter ( void  )

Event on netNDP_GetIP invalid parameter (Error)

The event GetIpInvalidParameter is created when the function netNDP_GetIP is executed, and the function input parameter is invalid.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_GetMac ( const uint8_t *  ip6_addr,
const uint8_t *  mac_addr 
)

Event on netNDP_GetMAC resolving success (API)

Parameters
ip6_addrpointer to requested IPv6 address
mac_addrpointer to resolved MAC address

The event GetMac is created when the function netNDP_GetMAC is executed.

Value in the Event Recorder shows:

  • mac: returned MAC address of the host.
  • ip: IPv6 address of the host being requested.
__STATIC_INLINE void EvrNetNDP_GetMacEntryNotFound ( const uint8_t *  ip6_addr)

Event on netNDP_GetMAC entry with IP address not found in cache (Op)

Parameters
ip6_addrpointer to requested IPv6 address

The event GetMacEntryNotFound is created when the function netNDP_GetMAC is executed, but the requested IPv6 address of the host in the cache is missing.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being requested.
__STATIC_INLINE void EvrNetNDP_GetMacInvalidParameter ( void  )

Event on netNDP_GetMAC invalid parameter (Error)

The event GetMacInvalidParameter is created when the function netNDP_GetMAC is executed, and the function input parameter is invalid.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_InitCache ( uint32_t  num_entries)

Event on NDP cache initialize (Op)

Parameters
num_entriesnumber of entries available in NDP cache

The event InitCache is created when the NDP service is initialized, that is, when the function netInitialize is executed.

Value in the Event Recorder shows:

  • entries: number of entries available in NDP cache table.
__STATIC_INLINE void EvrNetNDP_MakeLinkLocalAddress ( const uint8_t *  local_addr)

Event on NDP make link-local address (Op)

Parameters
local_addrpointer to link-local address

The event MakeLinkLocalAddress is created when the network library generates the link-local IPv6 address. The address is generated from the interface's MAC address using the EUI-64 format.

Value in the Event Recorder shows:

  • local_addr: generated link-local IPv6 address.
__STATIC_INLINE void EvrNetNDP_MakeTempAddress ( const uint8_t *  temp_addr)

Event on NDP make temporary address (SLAAC) using prefix info (Op)

Parameters
temp_addrpointer to temporary address

The event MakeLinkLocalAddress is created when the network library generates the temporary IPv6 address. The address is generated from the interface's MAC address using the EUI-64 format and received prefix information from the router.

Value in the Event Recorder shows:

  • temp_addr: generated temporary IPv6 address.
__STATIC_INLINE void EvrNetNDP_NeighborAdvertisement ( const uint8_t *  targ_addr)

Event on NDP receive Neighbor Advertisement (NA) message (Op)

Parameters
targ_addrpointer to target address

The event NeighborAdvertisement is created when the network library receives a valid neighbor advertisement message.

Value in the Event Recorder shows:

  • targ_addr: received target IPv6 address.
__STATIC_INLINE void EvrNetNDP_NeighborSolicitation ( const uint8_t *  targ_addr)

Event on NDP receive Neighbor Solicitation (NS) message (Op)

Parameters
targ_addrpointer to target address

The event NeighborSolicitation is created when the network library receives a valid neighbor solicitation message.

Value in the Event Recorder shows:

  • targ_addr: received target IPv6 address.
__STATIC_INLINE void EvrNetNDP_OptionMtu ( uint32_t  mtu)

Event on NDP option Maximum transmission unit (MTU) (Op)

Parameters
mtumaximum transmission unit

The event OptionMtu is created when the network library receives the router advertisement, and finds the MTU option in the message.

Value in the Event Recorder shows:

  • mtu: advertised IPv6 MTU in bytes.
__STATIC_INLINE void EvrNetNDP_OptionPrefixInfo ( const uint8_t *  opt_prefix)

Event on NDP option address prefix info (Op)

Parameters
opt_prefixpointer to prefix info structure (32 bytes)
  • Type: 1 byte
  • Length: 1 byte
  • PrefixLen: 1 byte
  • Flags: 1 byte
  • Valid: 4 bytes
  • Preferred: 4 bytes
  • Reserved: 4 bytes
  • Prefix: 16 bytes

The event OptionPrefixInfo is created when the network library receives the router advertisement, and finds the prefix information options in the message.

Value in the Event Recorder shows:

  • prefix: prefix address and prefix length.
  • valid: prefix valid time in seconds.
  • prefrd: prefix preferred time in seconds.
  • flags: prefix flags.
__STATIC_INLINE void EvrNetNDP_OptionSourceMacAddress ( const uint8_t *  src_addr)

Event on NDP option Source link-layer (MAC) address (Op)

Parameters
src_addrsource link-layer address

The event OptionSourceMacAddress is created when the network library receives the neighbor solicitation or router advertisement, and finds the source MAC address option in the message.

Value in the Event Recorder shows:

  • addr: source link-layer address (MAC).
__STATIC_INLINE void EvrNetNDP_OptionTargetMacAddress ( const uint8_t *  targ_addr)

Event on NDP option target link-layer (MAC) address (Op)

Parameters
targ_addrtarget link-layer address

The event OptionTargetMacAddress is created when the network library wants to display the target MAC address option found in the received neighbor advertisement message.

Value in the Event Recorder shows:

  • addr: received target link-layer address (MAC).
__STATIC_INLINE void EvrNetNDP_PrefixInfoNotValid ( void  )

Event on NDP prefix information option not valid (Op)

Remarks
Nodes must silently discard not valid RA messages.

The event PrefixInfoNotValid is created when the network library receives the router advertisement message, validates the prefix information and finds errors in it. Therefore, the advertised prefix information is ignored.

Value in the Event Recorder shows:

  • ignore
__STATIC_INLINE void EvrNetNDP_Probe ( const uint8_t *  ip6_addr)

Event on netNDP_Probe execute (API)

Parameters
ip6_addrpointer to requested IPv6 address

The event Probe is created when the function netNDP_Probe is executed.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being tested.
__STATIC_INLINE void EvrNetNDP_ProbeBusy ( void  )

Event on NDP probe process busy (Error)

The event ProbeBusy is created when the function netNDP_Probe is executed, and the internal probe process is still busy.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_ProbeInvalidParameter ( void  )

Event on netNDP_Probe invalid parameter (Error)

The event ProbeInvalidParameter is created when the function netNDP_Probe is executed, and the function input parameter is invalid.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetNDP_ProbeRequest ( void  )

Event on NDP receive probe request (Op)

The event ProbeRequest is created when the network library receives a valid neighbor solicitation message, which is identified as the address probe request. This usually happens when the host checks if the requested IPv6 address is already in use.

__STATIC_INLINE void EvrNetNDP_ProbeResponse ( void  )

Event on NDP receive probe response (Op)

The event ProbeResponse is created when the network library receives the response to address probe request that was sent. This usually happens when the requested IPv6 address is already in use.

__STATIC_INLINE void EvrNetNDP_ProbeRetransmit ( const uint8_t *  ip6_addr)

Event on NDP probe retransmit (Op)

Parameters
ip6_addrpointer to IPv6 address of probed host

The event ProbeRetransmit is created when the network library resends the request for testing the IPv6 address, if it is in use.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being tested.
__STATIC_INLINE void EvrNetNDP_ProbeTimeout ( const uint8_t *  ip6_addr)

Event on NDP probe timeout (Op)

Parameters
ip6_addrpointer to IPv6 address of probed host

The event ProbeTimeout is created when the network library has left the IPv6 address test procedure, since no host responded. The tested IPv6 address is considered to be free.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being tested.
__STATIC_INLINE void EvrNetNDP_RefreshEntry ( uint32_t  entry)

Event on refresh NDP cache entry (Op)

Parameters
entrycache entry number

The event RefreshEntry is created when the network library wants to refresh the required NDP entry in the cache. This happens when the NDP entry expires, and the type of entry is Inuse-IP.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
__STATIC_INLINE void EvrNetNDP_ResolveEntry ( uint32_t  entry)

Event on resolve NDP cache entry (Op)

Parameters
entrycache entry number

The event ResolveEntry is created when the network library wants to resolve the required NDP entry in the cache. This usually happens when the NDP entry is created, but it is not yet resolved or has expired.

Value in the Event Recorder shows:

  • entry: identifier of the host cache entry.
__STATIC_INLINE void EvrNetNDP_RouterAdvertisement ( uint8_t  hop_limit,
uint8_t  flags,
uint16_t  lifetime 
)

Event on NDP receive Router Advertisement (RA) message (Op)

Parameters
hop_limitcurrent hop limit
flagsadvertisement flags
  • 0x80: M-flag (Managed address configuration)
  • 0x40: O-flag (Other configuration)
lifetimerouter lifetime in seconds

The event RouterAdvertisement is created when the network library receives a valid router advertisement message.

Value in the Event Recorder shows:

  • hop_limit: current hop limit.
  • flags: advertised configuration M and O flags.
  • lifetime: advertised router lifetime in seconds.
__STATIC_INLINE void EvrNetNDP_RouterListFull ( uint32_t  max_count)

Event on NDP cache add router list full (Op)

Parameters
max_countmaximum number of routers cached

The event RouterListFull is created when the network library wants to add a new router to the NDP cache table, but all router cache entries are used.

Value in the Event Recorder shows:

  • max_count: maximum number of router cache entries.
__STATIC_INLINE void EvrNetNDP_SendReply ( const uint8_t *  targ_addr)

Event on NDP send advertisement reply to solicitation message (Op)

Parameters
targ_addrpointer to target address

The event SendReply is created when the network library wants to send a reply to the received neighbor solicitation message.

Value in the Event Recorder shows:

  • targ_addr: destination IPv6 address for replying.
__STATIC_INLINE void EvrNetNDP_SendRequest ( uint32_t  type)

Event on NDP send solicitation request (Op)

Parameters
typerequest type
  • 133: Router Solicitation
  • 135: Neighbor Solicitation

The event SendRequest is created when the network library wants to send a solicitation message.

Value in the Event Recorder shows:

  • type: message type to send (ROUTER_SOL, NEIGHB_SOL).
__STATIC_INLINE void EvrNetNDP_ShowFlags ( uint32_t  flags)

Event on NDP display advertisement message flags (Op)

Parameters
flagsmessage flags

The event ShowFlags is created when the network library wants to display the flags for the neighbor advertisement reply.

Value in the Event Recorder shows:

  • flags: advertisement flags for the message.
__STATIC_INLINE void EvrNetNDP_ShowTargetAddress ( const uint8_t *  targ_addr)

Event on NDP display target address (Op)

Parameters
targ_addrpointer to target address

The event ShowTargetAddress is created when the network library wants to display the target address for the solicitation message being generated.

Value in the Event Recorder shows:

  • targ_addr: target IPv6 address.
__STATIC_INLINE void EvrNetNDP_UninitCache ( void  )

Event on NDP cache de-initialize (Op)

The event UninitCache is created when the function netUninitialize is executed.

Value in the Event Recorder shows:

  • ndp
__STATIC_INLINE void EvrNetNDP_UnresolvedMacAddress ( const uint8_t *  ip6_addr)

Event on NDP unresolved MAC address in cache (Error)

Parameters
ip6_addrpointer to requested IPv6 address

The event UnresolvedMacAddress is created when the network library wants to find the host in the NDP cache table to resolve its MAC address, but the host is in the process of resolving. MAC address is not yet valid.

Value in the Event Recorder shows:

  • ip: IPv6 address of the host being searched in the cache.
__STATIC_INLINE void EvrNetNDP_UsingGateway ( const uint8_t *  ip6_addr)

Event on NDP using gateway to access external address (Op)

Parameters
ip6_addrpointer to IPv6 address of a gateway

The event UsingGateway is created when the network library wants to find the non-local host in the NDP cache table. The network library uses the gateway to access the host.

Value in the Event Recorder shows:

  • gw: IPv6 address of the default gateway.
__STATIC_INLINE void EvrNetNDP_WrongDestinationAddress ( const uint8_t *  dst_addr)

Event on NDP receive wrong destination address (Op)

Parameters
dst_addrpointer to destination address

The event WrongDestinationAddress is created when the network library receives the neighbor advertisement message, but the destination address is not ours. The message is therefore discarded.

Value in the Event Recorder shows:

  • dst_addr: received destination IPv6 address.
__STATIC_INLINE void EvrNetNDP_WrongResponse ( uint8_t  msg_type)

Event on NDP wrong response received (Error)

Parameters
msg_typediscovery message type
  • 136: Neighbor Advertisement

The event WrongResponse is created when the network library receives the network advertisement response, but the library does not wait for it, or the mandatory options in the message are missing.

Value in the Event Recorder shows:

  • type: received message type (NEIGHB_ADVER).
__STATIC_INLINE void EvrNetNDP_WrongTargetAddress ( const uint8_t *  targ_addr)

Event on NDP receive wrong target address (Op)

Parameters
targ_addrpointer to target address

The event WrongTargetAddress is created when the network library receives the neighbor solicitation message, but the target IPv6 address is not ours. The message is therefore discarded.

Value in the Event Recorder shows:

  • targ_addr: received target IPv6 address.