NetServices Stack source
Dependents:
HelloWorld
ServoInterfaceBoardExample1
4180_Lab4
« Back to documentation index
autoip.c File Reference
AutoIP Automatic LinkLocal IP Configuration.
More...
Go to the source code of this file.
Functions
static void autoip_handle_arp_conflict (struct netif *netif)
Handle a IP address conflict after an ARP conflict detection.
static void autoip_create_addr (struct netif *netif, ip_addr_t *ipaddr)
Create an IP-Address out of range 169.254.1.0 to 169.254.254.255.
static err_t autoip_arp_probe (struct netif *netif)
Sends an ARP probe from a network interface.
static err_t autoip_arp_announce (struct netif *netif)
Sends an ARP announce from a network interface.
static err_t autoip_bind (struct netif *netif)
Configure interface for use with current LL IP-Address.
void autoip_init (void)
Initialize this module.
void autoip_set_struct (struct netif *netif, struct autoip *autoip)
Set a statically allocated struct autoip to work with.
static void autoip_restart (struct netif *netif)
Restart AutoIP client and check the next address (conflict detected)
err_t autoip_start (struct netif *netif)
Start AutoIP client.
void autoip_network_changed (struct netif *netif)
Handle a possible change in the network configuration.
err_t autoip_stop (struct netif *netif)
Stop AutoIP client.
void autoip_tmr ()
Has to be called in loop every AUTOIP_TMR_INTERVAL milliseconds.
void autoip_arp_reply (struct netif *netif, struct etharp_hdr *hdr)
Handles every incoming ARP Packet, called by etharp_arp_input.
Detailed Description
AutoIP Automatic LinkLocal IP Configuration.
Definition in file autoip.c .
Function Documentation
static err_t autoip_arp_announce
(
struct netif *
netif )
[static]
Sends an ARP announce from a network interface.
Parameters:
netif network interface used to send the announce
Definition at line 250 of file autoip.c .
static err_t autoip_arp_probe
(
struct netif *
netif )
[static]
Sends an ARP probe from a network interface.
Parameters:
netif network interface used to send the probe
Definition at line 237 of file autoip.c .
void autoip_arp_reply
(
struct netif *
netif ,
struct etharp_hdr *
hdr
)
Handles every incoming ARP Packet, called by etharp_arp_input.
Parameters:
netif network interface to use for autoip processing
hdr Incoming ARP packet
Definition at line 486 of file autoip.c .
static err_t autoip_bind
(
struct netif *
netif )
[static]
Configure interface for use with current LL IP-Address.
Parameters:
netif network interface to configure with current LL IP-Address
Definition at line 263 of file autoip.c .
static void autoip_create_addr
(
struct netif *
netif ,
ip_addr_t *
ipaddr
)
[static]
Create an IP-Address out of range 169.254.1.0 to 169.254.254.255.
Parameters:
netif network interface on which create the IP-Address
ipaddr ip address to initialize
Definition at line 204 of file autoip.c .
static void autoip_handle_arp_conflict
(
struct netif *
netif )
[static]
Handle a IP address conflict after an ARP conflict detection.
Definition at line 168 of file autoip.c .
void autoip_init
(
void
)
Initialize this module.
Init srand, has to be called before entering mainloop.
Definition at line 129 of file autoip.c .
void autoip_network_changed
(
struct netif *
netif )
Handle a possible change in the network configuration.
If there is an AutoIP address configured, take the interface down and begin probing with the same address.
Definition at line 375 of file autoip.c .
static void autoip_restart
(
struct netif *
netif )
[static]
Restart AutoIP client and check the next address (conflict detected)
Parameters:
netif The netif under AutoIP control
Definition at line 158 of file autoip.c .
void autoip_set_struct
(
struct netif *
netif ,
struct autoip *
autoip
)
Set a statically allocated struct autoip to work with.
Set a struct autoip allocated by the application to work with.
Using this prevents autoip_start to allocate it using mem_malloc.
Parameters:
netif the netif for which to set the struct autoip
dhcp (uninitialised) dhcp struct allocated by the application
Definition at line 141 of file autoip.c .
err_t autoip_start
(
struct netif *
netif )
Start AutoIP client.
Parameters:
netif network interface on which start the AutoIP client
Definition at line 293 of file autoip.c .
err_t autoip_stop
(
struct netif *
netif )
Stop AutoIP client.
Parameters:
netif network interface on which stop the AutoIP client
Definition at line 389 of file autoip.c .
Has to be called in loop every AUTOIP_TMR_INTERVAL milliseconds.
Definition at line 400 of file autoip.c .