From 9709f9edc58ac9f977e4bbef8b5595cee928bc9f Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sun, 8 Oct 2023 16:20:15 +0900 Subject: [PATCH] network/dhcp6: keep lease when running in information request mode Fixes #28566. --- src/network/networkd-dhcp6.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c index 5fb1b6bdad7..6044411a75f 100644 --- a/src/network/networkd-dhcp6.c +++ b/src/network/networkd-dhcp6.c @@ -341,7 +341,17 @@ static int dhcp6_lease_ip_acquired(sd_dhcp6_client *client, Link *link) { } static int dhcp6_lease_information_acquired(sd_dhcp6_client *client, Link *link) { - return 0; + sd_dhcp6_lease *lease; + int r; + + assert(client); + assert(link); + + r = sd_dhcp6_client_get_lease(client, &lease); + if (r < 0) + return log_link_error_errno(link, r, "Failed to get DHCPv6 lease: %m"); + + return unref_and_replace_full(link->dhcp6_lease, lease, sd_dhcp6_lease_ref, sd_dhcp6_lease_unref); } static int dhcp6_lease_lost(Link *link) { -- 2.47.3