Network Component  Version 7.7.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 received address not link-local (Op) More...
 
__STATIC_INLINE void EvrNetNDP_RouterAdvertisement (uint8_t hop_limit, uint8_t flags, uint16_t lifetime)
 Event on NDP Router Advertisement (RA) message received (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 RA-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 wrong target address received (Op) More...
 
__STATIC_INLINE void EvrNetNDP_NeighborSolicitation (const uint8_t *targ_addr)
 Event on NDP Neighbor Solicitation (NS) message received (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeRequest (void)
 Event on NDP probe request received (Op) More...
 
__STATIC_INLINE void EvrNetNDP_NeighborAdvertisement (const uint8_t *targ_addr)
 Event on NDP Neighbor Advertisement (NA) message received (Op) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeResponse (void)
 Event on NDP probe response received (Op) More...
 
__STATIC_INLINE void EvrNetNDP_WrongDestinationAddress (const uint8_t *dst_addr)
 Event on NDP wrong destination address received (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_CreateTempAddress (const uint8_t *temp_addr)
 Event on NDP create 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 start (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 start (API) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeInvalidParameter (void)
 Event on netNDP_Probe invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetNDP_ProbeBusy (void)
 Event on netNDP_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...
 

Description

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

Function Documentation

__STATIC_INLINE void EvrNetNDP_AddressNotLinkLocal ( const uint8_t *  ip6_addr)

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

Parameters
ip6_addrpointer to IPv6 source address
Note
Nodes must silently discard RA messages if src IP not link-local.
__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
__STATIC_INLINE void EvrNetNDP_CacheAllocFailed ( void  )

Event on NDP allocate free cache entry failed (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
__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
__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
__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
__STATIC_INLINE void EvrNetNDP_CacheEntryUpdate ( uint32_t  entry)

Event on NDP cache entry update (Op)

Parameters
entrycache entry number
__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
__STATIC_INLINE void EvrNetNDP_CacheIp ( const uint8_t *  ip6_addr)

Event on netNDP_CacheIP start (API)

Parameters
ip6_addrpointer to requested IPv6 address
__STATIC_INLINE void EvrNetNDP_CacheIpInvalidParameter ( void  )

Event on netNDP_CacheIP invalid parameter (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
__STATIC_INLINE void EvrNetNDP_CreateTempAddress ( const uint8_t *  temp_addr)

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

Parameters
temp_addrpointer to temporary address
__STATIC_INLINE void EvrNetNDP_EntryFound ( uint32_t  entry)

Event on NDP cache entry found (Op)

Parameters
entrycache entry number
__STATIC_INLINE void EvrNetNDP_EntryReleased ( uint32_t  entry)

Event on NDP cache entry released (Op)

Parameters
entrycache entry number
__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
__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
__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
__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
__STATIC_INLINE void EvrNetNDP_GetIpInvalidParameter ( void  )

Event on netNDP_GetIP invalid parameter (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
__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
__STATIC_INLINE void EvrNetNDP_GetMacInvalidParameter ( void  )

Event on netNDP_GetMAC invalid parameter (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
__STATIC_INLINE void EvrNetNDP_NeighborAdvertisement ( const uint8_t *  targ_addr)

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

Parameters
targ_addrpointer to target address
__STATIC_INLINE void EvrNetNDP_NeighborSolicitation ( const uint8_t *  targ_addr)

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

Parameters
targ_addrpointer to target address
__STATIC_INLINE void EvrNetNDP_OptionMtu ( uint32_t  mtu)

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

Parameters
mtumaximum transmission unit
__STATIC_INLINE void EvrNetNDP_OptionPrefixInfo ( const uint8_t *  opt_prefix)

Event on NDP RA-option address prefix info (Op)

Parameters
opt_prefixpointer to RA prefix option 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
__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
__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
__STATIC_INLINE void EvrNetNDP_PrefixInfoNotValid ( void  )

Event on NDP prefix information option not valid (Op)

Note
Nodes must silently discard not valid RA messages.
__STATIC_INLINE void EvrNetNDP_Probe ( const uint8_t *  ip6_addr)

Event on netNDP_Probe start (API)

Parameters
ip6_addrpointer to requested IPv6 address
__STATIC_INLINE void EvrNetNDP_ProbeBusy ( void  )

Event on netNDP_Probe process busy (Error)

__STATIC_INLINE void EvrNetNDP_ProbeInvalidParameter ( void  )

Event on netNDP_Probe invalid parameter (Error)

__STATIC_INLINE void EvrNetNDP_ProbeRequest ( void  )

Event on NDP probe request received (Op)

__STATIC_INLINE void EvrNetNDP_ProbeResponse ( void  )

Event on NDP probe response received (Op)

__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
__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
__STATIC_INLINE void EvrNetNDP_RefreshEntry ( uint32_t  entry)

Event on refresh NDP cache entry (Op)

Parameters
entrycache entry number
__STATIC_INLINE void EvrNetNDP_ResolveEntry ( uint32_t  entry)

Event on resolve NDP cache entry (Op)

Parameters
entrycache entry number
__STATIC_INLINE void EvrNetNDP_RouterAdvertisement ( uint8_t  hop_limit,
uint8_t  flags,
uint16_t  lifetime 
)

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

Parameters
hop_limitcurrent hop limit
flagsadvertisement flags
  • 0x80: M-flag (Managed address configuration)
  • 0x40: O-flag (Other configuration)
lifetimerouter 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
__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
__STATIC_INLINE void EvrNetNDP_SendRequest ( uint32_t  type)

Event on NDP send solicitation request (Op)

Parameters
typerequest type
  • 133: Router Solicitation
  • 135: Neighbor Solicitation
__STATIC_INLINE void EvrNetNDP_ShowFlags ( uint32_t  flags)

Event on NDP display advertisement message flags (Op)

Parameters
flagsmessage flags
__STATIC_INLINE void EvrNetNDP_ShowTargetAddress ( const uint8_t *  targ_addr)

Event on NDP display target address (Op)

Parameters
targ_addrpointer to target address
__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
__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
__STATIC_INLINE void EvrNetNDP_WrongDestinationAddress ( const uint8_t *  dst_addr)

Event on NDP wrong destination address received (Op)

Parameters
dst_addrpointer to destination 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
__STATIC_INLINE void EvrNetNDP_WrongTargetAddress ( const uint8_t *  targ_addr)

Event on NDP wrong target address received (Op)

Parameters
targ_addrpointer to target address