diff options
author | Thomas Markwalder <tmark@isc.org> | 2018-02-09 09:19:54 -0500 |
---|---|---|
committer | Thomas Markwalder <tmark@isc.org> | 2018-02-09 09:19:54 -0500 |
commit | 6826003be8ed4715bd6ac40decc364a65eb5b036 (patch) | |
tree | 36e942db80a75935c01290ceb6e4e9a841098ed9 | |
parent | de964f22713b36dcac313fe6ff03b95210fd7297 (diff) | |
download | isc-dhcp-6826003be8ed4715bd6ac40decc364a65eb5b036.tar.gz |
[master] Correct delayed-ack 0 prohibiting active lease updates to lease file
Merges in 47141.
-rw-r--r-- | RELNOTES | 10 | ||||
-rw-r--r-- | includes/dhcpd.h | 2 | ||||
-rw-r--r-- | server/dhcp.c | 4 |
3 files changed, 13 insertions, 3 deletions
@@ -87,6 +87,16 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). + Changes since 4.4.0 (New Features) +- none + Changes since 4.4.0 (Bugs) + +- A delayed-ack value of 0 (the default), now correctly disables the delayed + feature. A change in 4.4.0 prohibited lease updates marking leases active + from be written to the lease file when delayed-ack is 0. This in turn, + caused servers to lose active lease assignments upon restart. + [ISC-Bugs #47141] + Changes since 4.4.0b1 (New Features) - Duplicate address detection when binding to a new IPv6 address was added diff --git a/includes/dhcpd.h b/includes/dhcpd.h index eecc5d72..5930e6ad 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -821,7 +821,7 @@ struct lease_state { #endif #if !defined (DEFAULT_DELAYED_ACK) -# define DEFAULT_DELAYED_ACK 0 /* default SO_SNDBUF size / 576 bytes */ +# define DEFAULT_DELAYED_ACK 0 /* default 0 disables delayed acking */ #endif #if !defined (DEFAULT_ACK_DELAY_SECS) diff --git a/server/dhcp.c b/server/dhcp.c index f302d6e6..6f3a91f0 100644 --- a/server/dhcp.c +++ b/server/dhcp.c @@ -3,7 +3,7 @@ DHCP Protocol engine. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2018 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -3610,7 +3610,7 @@ void ack_lease (packet, lease, offer, when, msg, ms_nulltp, hp) } else { lease->cltt = cur_time; #if defined(DELAYED_ACK) - if (enqueue && max_outstanding_acks != 0) + if (enqueue) delayed_ack_enqueue(lease); else #endif |