DHCPv6 client definitions. More...

Detailed Description

DHCPv6 client definitions.

Martine Lenders m.len.nosp@m.ders.nosp@m.@fu-b.nosp@m.erli.nosp@m.n.de

Definition in file client.h.

#include "byteorder.h"
#include "event.h"
#include "net/ipv6/addr.h"
#include "thread.h"
+ Include dependency graph for client.h:

Go to the source code of this file.

Data Structures

struct  dhcpv6_duid_l2_t
 DUID based on link-layer address plus time. More...


#define DHCPV6_CLIENT_DUID_LEN   (sizeof(dhcpv6_duid_l2_t) + 8U)
 Static length of the DUID.
#define DHCPV6_CLIENT_BUFLEN   (256)
 length for send and receive buffer
 maximum number of servers to store
 maximum number of prefix leases to store

Auto-initialization parameters

 stack size

DHCPv6 unique identifier (DUID) definitions

See also
RFC 8415, section 11
void dhcpv6_client_auto_init (void)
 Auto-initializes the client in its own thread. More...
void dhcpv6_client_init (event_queue_t *event_queue, uint16_t netif)
 Initializes the client. More...
void dhcpv6_client_start (void)
 Let the server start listening. More...

Configuration functions

void dhcpv6_client_req_ia_pd (unsigned netif, unsigned pfx_len)
 Configures the client to request prefix delegation for a network interface from a server. More...

Stack-specific functions

These functions need to be provided by the network-stack implementation.

unsigned dhcpv6_client_get_duid_l2 (unsigned netif, dhcpv6_duid_l2_t *duid)
 Get the link-layer address DUID for the client. More...
void dhcpv6_client_conf_prefix (unsigned netif, const ipv6_addr_t *pfx, unsigned pfx_len, uint32_t valid, uint32_t pref)
 Configures a prefix delegation lease that is provided by the server. More...
uint32_t dhcpv6_client_prefix_valid_until (unsigned netif, const ipv6_addr_t *pfx, unsigned pfx_len)
 Determines how long the prefix delegation lease is still valid. More...