1 /* SPDX-License-Identifier: LGPL-2.1+ */
4 #include "sd-dhcp6-client.h"
6 #include "conf-parser.h"
9 typedef enum DHCP6ClientStartMode
{
10 DHCP6_CLIENT_START_MODE_NO
,
11 DHCP6_CLIENT_START_MODE_INFORMATION_REQUEST
,
12 DHCP6_CLIENT_START_MODE_SOLICIT
,
13 _DHCP6_CLIENT_START_MODE_MAX
,
14 _DHCP6_CLIENT_START_MODE_INVALID
= -1,
15 } DHCP6ClientStartMode
;
17 typedef struct Link Link
;
18 typedef struct Manager Manager
;
20 int dhcp6_request_prefix_delegation(Link
*link
);
21 int dhcp6_configure(Link
*link
);
22 int dhcp6_request_address(Link
*link
, int ir
);
23 int dhcp6_lease_pd_prefix_lost(sd_dhcp6_client
*client
, Link
* link
);
24 int dhcp6_prefix_remove(Manager
*m
, struct in6_addr
*addr
);
26 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_pd_hint
);
27 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_mud_url
);
28 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_delegated_prefix_token
);
29 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_client_start_mode
);
31 const char* dhcp6_client_start_mode_to_string(DHCP6ClientStartMode i
) _const_
;
32 DHCP6ClientStartMode
dhcp6_client_start_mode_from_string(const char *s
) _pure_
;