dhcp6.h File Reference
`#include "lwip/opt.h"`
`#include "lwip/err.h"`
`#include "lwip/netif.h"`

## Macros

#define | DHCP6_TIMER_MSECS 500
#define | dhcp6_remove_struct(netif) netif_set_client_data(netif, LWIP_NETIF_CLIENT_DATA_INDEX_DHCP6, NULL)

## 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)
void | dhcp6_tmr (void)
void | dhcp6_nd6_ra_trigger (struct netif *netif, u8_t managed_addr_config, u8_t other_config)

## Detailed Description

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

## Macro Definition Documentation

## dhcp6_remove_struct

#define dhcp6_remove_struct | ( |  | netif | ) | netif_set_client_data(netif, LWIP_NETIF_CLIENT_DATA_INDEX_DHCP6, NULL)

Remove a struct dhcp6 previously set to the netif using dhcp6_set_struct()

## DHCP6_TIMER_MSECS

#define DHCP6_TIMER_MSECS 500

period (in milliseconds) of the application calling dhcp6_tmr()

## Function Documentation

## dhcp6_nd6_ra_trigger()

void dhcp6_nd6_ra_trigger | ( | struct netif * | netif,
|  | u8_t | managed_addr_config,
|  | u8_t | other_config
| ) |  |

This function is called from nd6 module when an RA message is received It triggers DHCPv6 requests (if enabled).

## dhcp6_tmr()

void dhcp6_tmr | ( | void |  | ) |

DHCPv6 timeout handling (this function must be called every 500ms, see DHCP6_TIMER_MSECS).

A DHCPv6 server is expected to respond within a short period of time. This timer checks whether an outstanding DHCPv6 request is timed out.