summaryrefslogtreecommitdiff
path: root/src/systemd
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2018-11-23 22:19:26 +0100
committerLennart Poettering <lennart@poettering.net>2018-12-10 14:25:28 +0100
commit8217ed5ec34e58ef791bcf9637e301aba608b711 (patch)
tree1987286a501bc34555b0025436c575f79a886bd2 /src/systemd
parent1d4c6f5befbc35e71f424c7e8a69c85a5a2272d5 (diff)
downloadsystemd-8217ed5ec34e58ef791bcf9637e301aba608b711.tar.gz
network: fix handling of uninitialized and zero IAID setting
An earlier commit 0e408b82b (dhcp6-client: handle IAID with value zero) introduced a flag to sd_dhcp6_client to distinguish between an unset IAID and a value set to zero. However, that was not sufficient and broke leaving the setting uninitialized in networkd configuration. The configuration parsing also must distinguish between the default, unset value and an explict zero configuration. Fixes: 0e408b82b8bd7675234cf58009475d4f4c0a491a
Diffstat (limited to 'src/systemd')
-rw-r--r--src/systemd/sd-dhcp-client.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/systemd/sd-dhcp-client.h b/src/systemd/sd-dhcp-client.h
index e388552064..bd0d429df6 100644
--- a/src/systemd/sd-dhcp-client.h
+++ b/src/systemd/sd-dhcp-client.h
@@ -23,6 +23,7 @@
#include <net/ethernet.h>
#include <netinet/in.h>
#include <sys/types.h>
+#include <stdbool.h>
#include "sd-dhcp-lease.h"
#include "sd-event.h"
@@ -127,12 +128,14 @@ int sd_dhcp_client_set_client_id(
size_t data_len);
int sd_dhcp_client_set_iaid_duid(
sd_dhcp_client *client,
+ bool iaid_set,
uint32_t iaid,
uint16_t duid_type,
const void *duid,
size_t duid_len);
int sd_dhcp_client_set_iaid_duid_llt(
sd_dhcp_client *client,
+ bool iaid_set,
uint32_t iaid,
uint64_t llt_time);
int sd_dhcp_client_set_duid(