1 /* SPDX-License-Identifier: LGPL-2.1+ */
4 #include "conf-parser.h"
5 #include "dhcp-identifier.h"
8 #define DHCP_ROUTE_METRIC 1024
10 typedef enum DHCPUseDomains
{
13 DHCP_USE_DOMAINS_ROUTE
,
14 _DHCP_USE_DOMAINS_MAX
,
15 _DHCP_USE_DOMAINS_INVALID
= -1,
18 typedef enum DHCPOptionDataType
{
19 DHCP_OPTION_DATA_UINT8
,
20 DHCP_OPTION_DATA_UINT16
,
21 DHCP_OPTION_DATA_UINT32
,
22 DHCP_OPTION_DATA_STRING
,
23 DHCP_OPTION_DATA_IPV4ADDRESS
,
24 DHCP_OPTION_DATA_IPV6ADDRESS
,
25 _DHCP_OPTION_DATA_MAX
,
26 _DHCP_OPTION_DATA_INVALID
,
30 /* Value of Type in [DHCP] section */
34 uint8_t raw_data
[MAX_DUID_LEN
];
38 const char* dhcp_use_domains_to_string(DHCPUseDomains p
) _const_
;
39 DHCPUseDomains
dhcp_use_domains_from_string(const char *s
) _pure_
;
41 const char *dhcp_option_data_type_to_string(DHCPOptionDataType d
) _const_
;
42 DHCPOptionDataType
dhcp_option_data_type_from_string(const char *d
) _pure_
;
44 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp
);
45 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_use_dns
);
46 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_use_domains
);
47 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_use_ntp
);
48 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_use_sip
);
49 CONFIG_PARSER_PROTOTYPE(config_parse_iaid
);
50 CONFIG_PARSER_PROTOTYPE(config_parse_section_route_table
);
51 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_pd_hint
);
52 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp6_mud_url
);
53 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_user_class
);
54 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_vendor_class
);
55 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_send_option
);
56 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_request_options
);