summaryrefslogtreecommitdiff
path: root/server/mdb.c
diff options
context:
space:
mode:
authorDavid Hankins <dhankins@isc.org>2006-08-28 21:35:03 +0000
committerDavid Hankins <dhankins@isc.org>2006-08-28 21:35:03 +0000
commit808d45fd9d3c5acf416ab9ec482354de18214635 (patch)
treeeab6e432afb84775561a3a1e9841bcf815134a41 /server/mdb.c
parent5341f9437164d82751f33489938c0508d3145b6b (diff)
downloadisc-dhcp-808d45fd9d3c5acf416ab9ec482354de18214635.tar.gz
Head bugfix, dueling BNDUPD/ACKs [ISC-Bugs #16346b]
Diffstat (limited to 'server/mdb.c')
-rw-r--r--server/mdb.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/server/mdb.c b/server/mdb.c
index 1986d608..0372e625 100644
--- a/server/mdb.c
+++ b/server/mdb.c
@@ -34,7 +34,7 @@
#ifndef lint
static char copyright[] =
-"$Id: mdb.c,v 1.83 2006/07/25 13:26:00 shane Exp $ Copyright (c) 2004-2006 Internet Systems Consortium. All rights reserved.\n";
+"$Id: mdb.c,v 1.84 2006/08/28 21:35:03 dhankins Exp $ Copyright (c) 2004-2006 Internet Systems Consortium. All rights reserved.\n";
#endif /* not lint */
#include "dhcpd.h"
@@ -1482,7 +1482,14 @@ void release_lease (lease, packet)
/* Blow away any bindings. */
if (lease -> scope)
binding_scope_dereference (&lease -> scope, MDL);
+
+ /* Set sort times to the present. */
lease -> ends = cur_time;
+ /* Lower layers of muckery set tstp to ->ends. But we send
+ * protocol messages before this. So it is best to set
+ * tstp now anyway.
+ */
+ lease->tstp = cur_time;
#if defined (FAILOVER_PROTOCOL)
if (lease -> pool && lease -> pool -> failover_peer) {
lease -> next_binding_state = FTS_RELEASED;