summaryrefslogtreecommitdiff
path: root/src/systemd
diff options
context:
space:
mode:
authorPatrik Flykt <patrik.flykt@linux.intel.com>2014-12-10 16:17:32 +0200
committerTom Gundersen <teg@jklm.no>2014-12-10 18:31:21 +0100
commitbbfa43ca37df0718287c25a8e39ee7477ebf33f6 (patch)
tree5e4b9bcadc20569b116d6abfa7141766612ac3a0 /src/systemd
parentfab15fec2413bbc15dc7c24724ec82e371c966ba (diff)
sd-dhcp6-client: Implement Information Request message
Implement Information Request message according to RFC 3315, section 18.1.5. with the excepion that the first message is not delayed by a random amount. Instead systemd-networkd is supposed to take care of desynchronizing between other clients. Initialize the DHCPv6 client structure in sd_dhcp6_client_start() as this allows toggling between information request and normal DHCPv6 address aquisition modes.
Diffstat (limited to 'src/systemd')
-rw-r--r--src/systemd/sd-dhcp6-client.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/systemd/sd-dhcp6-client.h b/src/systemd/sd-dhcp6-client.h
index c7f168fe21..e9663c0c71 100644
--- a/src/systemd/sd-dhcp6-client.h
+++ b/src/systemd/sd-dhcp6-client.h
@@ -33,6 +33,7 @@ enum {
DHCP6_EVENT_RESEND_EXPIRE = 10,
DHCP6_EVENT_RETRANS_MAX = 11,
DHCP6_EVENT_IP_ACQUIRE = 12,
+ DHCP6_EVENT_INFORMATION_REQUEST = 13,
};
typedef struct sd_dhcp6_client sd_dhcp6_client;
@@ -47,6 +48,10 @@ int sd_dhcp6_client_set_mac(sd_dhcp6_client *client, const uint8_t *addr,
size_t addr_len, uint16_t arp_type);
int sd_dhcp6_client_set_duid(sd_dhcp6_client *client, uint16_t type, uint8_t *duid,
size_t duid_len);
+int sd_dhcp6_client_set_information_request(sd_dhcp6_client *client,
+ bool enabled);
+int sd_dhcp6_client_get_information_request(sd_dhcp6_client *client,
+ bool *enabled);
int sd_dhcp6_client_set_request_option(sd_dhcp6_client *client,
uint16_t option);