lwIP  2.1.0
Lightweight IP stack
DHCPv6

Functions

void dhcp6_set_struct (struct netif *netif, struct dhcp6 *dhcp6)
 
void dhcp6_cleanup (struct netif *netif)
 
err_t dhcp6_enable_stateful (struct netif *netif)
 
err_t dhcp6_enable_stateless (struct netif *netif)
 
void dhcp6_disable (struct netif *netif)
 

Detailed Description

DHCPv6 client: IPv6 address autoconfiguration as per RFC 3315 (stateful DHCPv6) and RFC 3736 (stateless DHCPv6).

For now, only stateless DHCPv6 is implemented!

TODO:

dhcp6_enable_stateful() enables stateful DHCPv6 for a netif (stateless disabled)
dhcp6_enable_stateless() enables stateless DHCPv6 for a netif (stateful disabled)
dhcp6_disable() disable DHCPv6 for a netif

When enabled, requests are only issued after receipt of RA with the corresponding bits set.

Function Documentation

◆ dhcp6_cleanup()

void dhcp6_cleanup ( struct netif netif)

Removes a struct dhcp6 from a netif.

ATTENTION: Only use this when not using dhcp6_set_struct() to allocate the struct dhcp6 since the memory is passed back to the heap.

Parameters
netifthe netif from which to remove the struct dhcp

◆ dhcp6_disable()

void dhcp6_disable ( struct netif netif)

Disable stateful or stateless DHCPv6 on this netif Requests are sent on receipt of an RA message with the ND6_RA_FLAG_OTHER_CONFIG flag set.

◆ dhcp6_enable_stateful()

err_t dhcp6_enable_stateful ( struct netif netif)

Enable stateful DHCPv6 on this netif Requests are sent on receipt of an RA message with the ND6_RA_FLAG_MANAGED_ADDR_CONFIG flag set.

A struct dhcp6 will be allocated for this netif if not set via dhcp6_set_struct before.

◆ dhcp6_enable_stateless()

err_t dhcp6_enable_stateless ( struct netif netif)

Enable stateless DHCPv6 on this netif Requests are sent on receipt of an RA message with the ND6_RA_FLAG_OTHER_CONFIG flag set.

A struct dhcp6 will be allocated for this netif if not set via dhcp6_set_struct before.

◆ dhcp6_set_struct()

void dhcp6_set_struct ( struct netif netif,
struct dhcp6 *  dhcp6 
)

Set a statically allocated struct dhcp6 to work with. Using this prevents dhcp6_start to allocate it using mem_malloc.

Parameters
netifthe netif for which to set the struct dhcp
dhcp6(uninitialised) dhcp6 struct allocated by the application