]> git.ipfire.org Git - thirdparty/dhcp.git/commitdiff
Avoid infinite loop where we reschedule for the current second by
authorShane Kerr <shane@isc.org>
Wed, 3 Oct 2007 12:50:11 +0000 (12:50 +0000)
committerShane Kerr <shane@isc.org>
Wed, 3 Oct 2007 12:50:11 +0000 (12:50 +0000)
adding one. We might expire a lease a second late, but that's okay.

See RT ticket #17112 for more.

RELNOTES
server/mdb6.c

index ecee1c59f0c53356f4cffb950f0f4a8f517bab5f..fb8944b666b7ee9ca83bc707fbfa6506c33ada0e 100644 (file)
--- a/RELNOTES
+++ b/RELNOTES
@@ -65,6 +65,9 @@ suggested fixes to <dhcp-users@isc.org>.
   but would not return the address in response to a REQUEST. Thanks to
   Dennis Kou for finding the bug.
 
+- Fixed an error causing the server to lock up on lease expiration,
+  reported independently by Jothilingam Vasu and Dennis Kou.
+
                        Changes since 4.0.0a2
 
 - Fix for startup where there are no IPv4 addresses on an interface.
index 13764a5fe5052a1b6ccf000920ec96d416e71609..632dccd34b73ee256c7b0c0dd2e9f374fb96a874 100644 (file)
@@ -1046,7 +1046,7 @@ schedule_lease_timeout(struct ipv6_pool *pool) {
                tmp = (struct iaaddr *)isc_heap_element(pool->active_timeouts, 
                                                        1);
                if (tmp->valid_lifetime_end_time < next_timeout) {
-                       next_timeout = tmp->valid_lifetime_end_time;
+                       next_timeout = tmp->valid_lifetime_end_time + 1;
                }
        }