summaryrefslogtreecommitdiff
path: root/src/libsystemd-network/dhcp6-protocol.h
diff options
context:
space:
mode:
authorPatrik Flykt <patrik.flykt@linux.intel.com>2014-06-19 15:39:15 +0300
committerPatrik Flykt <patrik.flykt@linux.intel.com>2014-06-19 15:44:43 +0300
commitd1b0afe3653b4316a6361d204169620726d468a0 (patch)
tree5e4823daed463e3e09d61329933227cf42e1ead8 /src/libsystemd-network/dhcp6-protocol.h
parent813e3a6ffcd094696001716480bbd68008cc54c8 (diff)
sd-dhcp6-client: Add DHCPv6 client Solicitation timeout handling
Add the core of DHCPv6 client message retransmission and upper bound timer and message count handling according to RFC 3315 Secions 7.1.2 and 14. Omit the DHCPv6 initial delay; for now it is assumed that systemd-networkd will provide decent startup randomization that will desynchronize the clients. When reinitializing the client, clear all timers.
Diffstat (limited to 'src/libsystemd-network/dhcp6-protocol.h')
-rw-r--r--src/libsystemd-network/dhcp6-protocol.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libsystemd-network/dhcp6-protocol.h b/src/libsystemd-network/dhcp6-protocol.h
index 0f408bce70..6ca72ec151 100644
--- a/src/libsystemd-network/dhcp6-protocol.h
+++ b/src/libsystemd-network/dhcp6-protocol.h
@@ -41,6 +41,10 @@ enum {
DHCP6_PORT_CLIENT = 546,
};
+#define DHCP6_SOL_MAX_DELAY 1 * USEC_PER_SEC
+#define DHCP6_SOL_TIMEOUT 1 * USEC_PER_SEC
+#define DHCP6_SOL_MAX_RT 120 * USEC_PER_SEC
+
enum {
DHCP6_DUID_LLT = 1,
DHCP6_DUID_EN = 2,
@@ -51,6 +55,7 @@ enum {
enum DHCP6State {
DHCP6_STATE_STOPPED = 0,
DHCP6_STATE_RS = 1,
+ DHCP6_STATE_SOLICITATION = 2,
};
enum {