lwIP 2.2.0
Lightweight IP stack
Loading...
Searching...
No Matches
acd.h File Reference
#include "lwip/opt.h"
#include "lwip/netif.h"
#include "lwip/etharp.h"
#include "lwip/prot/acd.h"

Data Structures

struct  acd
 

Macros

#define ACD_TMR_INTERVAL   100
 

Typedefs

typedef void(* acd_conflict_callback_t) (struct netif *netif, acd_callback_enum_t state)
 

Functions

err_t acd_add (struct netif *netif, struct acd *acd, acd_conflict_callback_t acd_conflict_callback)
 
void acd_remove (struct netif *netif, struct acd *acd)
 
err_t acd_start (struct netif *netif, struct acd *acd, ip4_addr_t ipaddr)
 
err_t acd_stop (struct acd *acd)
 
void acd_arp_reply (struct netif *netif, struct etharp_hdr *hdr)
 
void acd_tmr (void)
 
void acd_network_changed_link_down (struct netif *netif)
 
void acd_netif_ip_addr_changed (struct netif *netif, const ip_addr_t *old_addr, const ip_addr_t *new_addr)
 

Detailed Description

ACD IPv4 Address Conflict Detection

Macro Definition Documentation

◆ ACD_TMR_INTERVAL

#define ACD_TMR_INTERVAL   100

ACD Timing ACD_TMR_INTERVAL msecs, I recommend a value of 100. The value must divide 1000 with a remainder almost 0. Possible values are 1000, 500, 333, 250, 200, 166, 142, 125, 111, 100 ....

Typedef Documentation

◆ acd_conflict_callback_t

typedef void(* acd_conflict_callback_t) (struct netif *netif, acd_callback_enum_t state)

Callback function: Handle conflict information from ACD module

Parameters
netifnetwork interface to handle conflict information on
stateacd_callback_enum_t

Function Documentation

◆ acd_arp_reply()

void acd_arp_reply ( struct netif netif,
struct etharp_hdr hdr 
)

Handles every incoming ARP Packet, called by etharp_input().

Parameters
netifnetwork interface to use for acd processing
hdrIncoming ARP packet

◆ acd_tmr()

void acd_tmr ( void  )

Has to be called in loop every ACD_TMR_INTERVAL milliseconds