DHCPv6 client definitions.
More...
DHCPv6 client definitions.
- Author
- 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"
Go to the source code of this file.
|
int | dhcpv6_client_req_ia_na (unsigned netif) |
| Configures the client to request non-temporary addresses for a network interface from a server.
|
|
|
|
int | dhcpv6_client_req_ia_pd (unsigned netif, unsigned pfx_len) |
| Configures the client to request prefix delegation for a network interface from a server.
|
|
|
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.
|
|
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.
|
|
static void | dhcpv6_client_conf_addr (unsigned netif, const ipv6_addr_t *addr, uint32_t valid, uint32_t pref) |
| Configures a address lease that is provided by the server.
|
|
bool | dhcpv6_client_check_ia_na (unsigned netif) |
| Checks if the given network interface is configured to use DHCPv6 IA_NA.
|
|
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.
|
|
static uint32_t | dhcpv6_client_addr_valid_until (unsigned netif, const ipv6_addr_t *addr) |
| Determines how long the address lease is still valid.
|
|
◆ DHCPV6_CLIENT_SEND_BUFLEN
Length for the send buffer if a MUD URL is included in the DHCP client's packets.
- Note
- Only (re)defined by the
dhcpv6_client_mud_url
pseudo-module.
Definition at line 281 of file client.h.
◆ MAX_MUD_URL_LENGTH
Maximal length of a MUD URL.
Definition at line 289 of file client.h.
◆ anonymous enum
Definition of DHCPv6 client configuration modes.
Definition at line 294 of file client.h.
◆ dhcpv6_client_addr_valid_until()
static uint32_t dhcpv6_client_addr_valid_until |
( |
unsigned |
netif, |
|
|
const ipv6_addr_t * |
addr |
|
) |
| |
|
inlinestatic |
Determines how long the address lease is still valid.
- Parameters
-
[in] | netif | Network interface the address was for. |
[in] | addr | The assigned address. |
- Returns
- Remaining valid lifetime of the address lease in seconds.
Definition at line 260 of file client.h.
◆ dhcpv6_client_check_ia_na()
bool dhcpv6_client_check_ia_na |
( |
unsigned |
netif | ) |
|
Checks if the given network interface is configured to use DHCPv6 IA_NA.
- Parameters
-
[in] | netif | Network interface to check. |
- Returns
- true, if the network interface is set up for IA_NA.
◆ dhcpv6_client_conf_addr()
static void dhcpv6_client_conf_addr |
( |
unsigned |
netif, |
|
|
const ipv6_addr_t * |
addr, |
|
|
uint32_t |
valid, |
|
|
uint32_t |
pref |
|
) |
| |
|
inlinestatic |
Configures a address lease that is provided by the server.
- Parameters
-
[in] | netif | Network interface the address was for. |
[in] | addr | The assigned address. |
[in] | valid | Valid lifetime of the address. |
[in] | pref | Preferred lifetime of the address. |
Definition at line 223 of file client.h.
◆ dhcpv6_client_conf_prefix()
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.
- Parameters
-
[in] | netif | Network interface the prefix delegation was for. |
[in] | pfx | Prefix for the prefix delegation. |
[in] | pfx_len | Length of pfx in bits. |
[in] | valid | Valid lifetime of the prefix delegation. |
[in] | pref | Preferred lifetime of the prefix delegation. |
◆ dhcpv6_client_get_conf_mode()
uint8_t dhcpv6_client_get_conf_mode |
( |
void |
| ) |
|
Retrieves the DHCPv6 client's current configuration mode.
- Returns
- The current configuration mode.
◆ dhcpv6_client_get_duid_l2()
Get the link-layer address DUID for the client.
- Parameters
-
[in] | netif | The network interface the client is bound to. May be SOCK_ADDR_ANY_NETIF for any interface. |
[out] | duid | The resulting DUID. |
- Returns
- length of the
duid
on success.
-
0, on error.
◆ dhcpv6_client_prefix_valid_until()
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.
- Parameters
-
[in] | netif | Network interface the prefix delegation was for. |
[in] | pfx | Prefix of the prefix delegation |
[in] | pfx_len | Length of pfx in bits. |
- Returns
- Remaining valid lifetime of the prefix delegation lease in seconds.
◆ dhcpv6_client_set_conf_mode()
void dhcpv6_client_set_conf_mode |
( |
uint8_t |
configuration_mode | ) |
|
Changes the DHCPv6 client's configuration mode.
- Parameters
-
[in] | configuration_mode | The new configuration mode. |