summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2013-05-06 13:06:31 +0300
committerPatrik Flykt <patrik.flykt@linux.intel.com>2013-05-06 14:33:51 +0300
commit17b972d79b623de57b4d08335d7eb23a5cea71ae (patch)
tree46b17a615da1cf25dd183ed47267ecf8afdb9312
parent0c34c78bd545f1f82ab1374b273714b5caba959f (diff)
downloadconnman-17b972d79b623de57b4d08335d7eb23a5cea71ae.tar.gz
connman-17b972d79b623de57b4d08335d7eb23a5cea71ae.tar.bz2
connman-17b972d79b623de57b4d08335d7eb23a5cea71ae.zip
dhcpv6: Added initial MRD support
MRD (Maximum Retransmission Duration) is the total duration of of retransmission of the message. This will be used when sending Confirm message.
-rw-r--r--src/dhcpv6.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/dhcpv6.c b/src/dhcpv6.c
index 6b03a1b9..f32b4c24 100644
--- a/src/dhcpv6.c
+++ b/src/dhcpv6.c
@@ -62,6 +62,7 @@ struct connman_dhcpv6 {
GDHCPClient *dhcp_client;
guint timeout; /* operation timeout in msec */
+ guint MRD; /* max operation timeout in msec */
guint RT; /* in msec */
gboolean use_ta; /* set to TRUE if IPv6 privacy is enabled */
GSList *prefixes; /* network prefixes from radvd */
@@ -80,6 +81,11 @@ static void clear_timer(struct connman_dhcpv6 *dhcp)
g_source_remove(dhcp->timeout);
dhcp->timeout = 0;
}
+
+ if (dhcp->MRD > 0) {
+ g_source_remove(dhcp->MRD);
+ dhcp->MRD = 0;
+ }
}
static inline float get_random()