summaryrefslogtreecommitdiff
path: root/src/network/networkd-dhcp-server.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2022-02-24 07:07:02 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2022-02-24 07:07:04 +0900
commite680486d6f00564db5fa304bbfe4d38389277eb4 (patch)
tree100803e4b8289f375503c3db74f4c69d1669caec /src/network/networkd-dhcp-server.c
parent5d0030310c134a016321ad8cf0b4ede8b1800d84 (diff)
downloadsystemd-e680486d6f00564db5fa304bbfe4d38389277eb4.tar.gz
network: set broadcast address on request
Previously, the broadcast address was set to a Address object in address_section_verify() (or address_acquire()). But, for wireguard interfaces, we do not use the broadcast address. The .network file may be assigned to multiple interfaces, hence, we cannot determine if we should set the broadcast address in address_section_verify(). This makes the broadcast address set in link_request_address(). Then, we set the broadcast address only when we need it.
Diffstat (limited to 'src/network/networkd-dhcp-server.c')
-rw-r--r--src/network/networkd-dhcp-server.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/network/networkd-dhcp-server.c b/src/network/networkd-dhcp-server.c
index 48e919ce93..b28d13ba65 100644
--- a/src/network/networkd-dhcp-server.c
+++ b/src/network/networkd-dhcp-server.c
@@ -106,7 +106,7 @@ int link_request_dhcp_server_address(Link *link) {
address->family = AF_INET;
address->in_addr.in = link->network->dhcp_server_address;
address->prefixlen = link->network->dhcp_server_address_prefixlen;
- address_set_broadcast(address);
+ address_set_broadcast(address, link);
if (address_get(link, address, &existing) >= 0 &&
address_exists(existing) &&