]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/network/networkd-dhcp4.h
Merge pull request #15840 from Werkov/mkosi-opensuse
[thirdparty/systemd.git] / src / network / networkd-dhcp4.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4 #include "conf-parser.h"
5
6 typedef struct Link Link;
7
8 typedef enum DHCPClientIdentifier {
9 DHCP_CLIENT_ID_MAC,
10 DHCP_CLIENT_ID_DUID,
11 /* The following option may not be good for RFC regarding DHCP (3315 and 4361).
12 * But some setups require this. E.g., Sky Broadband, the second largest provider in the UK
13 * requires the client id to be set to a custom string, reported at
14 * https://github.com/systemd/systemd/issues/7828 */
15 DHCP_CLIENT_ID_DUID_ONLY,
16 _DHCP_CLIENT_ID_MAX,
17 _DHCP_CLIENT_ID_INVALID = -1,
18 } DHCPClientIdentifier;
19
20 void dhcp4_release_old_lease(Link *link);
21 int dhcp4_configure(Link *link);
22 int dhcp4_set_client_identifier(Link *link);
23 int dhcp4_set_promote_secondaries(Link *link);
24
25 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_client_identifier);
26 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_black_listed_ip_address);
27 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_max_attempts);
28 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_ip_service_type);
29 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_mud_url);
30 CONFIG_PARSER_PROTOTYPE(config_parse_dhcp_fallback_lease_lifetime);