summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hankins <dhankins@isc.org>2004-09-01 22:26:59 +0000
committerDavid Hankins <dhankins@isc.org>2004-09-01 22:26:59 +0000
commitc7f4a682945107a4ead9d7f21f84e06f660f7bcb (patch)
tree0777699eeb4a0e13af275834239289ccca3f29e5
parent7fe7dba50e93e2964ad59a6089cc4028eae0c343 (diff)
downloadisc-dhcp-c7f4a682945107a4ead9d7f21f84e06f660f7bcb.tar.gz
- A bug in dhclient that keeps it from doing client ddns updates, fixed.
-rw-r--r--RELNOTES4
-rw-r--r--client/dhclient.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/RELNOTES b/RELNOTES
index 7a1403f1..8d99239a 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -45,6 +45,10 @@ and for prodding me into improving it.
Changes since 3.0.1
+- A bug was fixed in dhclient that kept it from doing client-side
+ ddns updates. Thanks to a patch from Andreas Gustafsson, which
+ underwent some modification after review by Jason Vas Dias.
+
- Failover implementations disconnected due to the network between
them (rather than one of the two shutting down) will now try to
re-establish the failover connection every 5 seconds, rather than
diff --git a/client/dhclient.c b/client/dhclient.c
index c24adbfb..dd2c2330 100644
--- a/client/dhclient.c
+++ b/client/dhclient.c
@@ -32,7 +32,7 @@
#ifndef lint
static char ocopyright[] =
-"$Id: dhclient.c,v 1.129.2.19 2004/07/10 00:11:16 dhankins Exp $ Copyright (c) 2004 Internet Systems Consortium. All rights reserved.\n";
+"$Id: dhclient.c,v 1.129.2.20 2004/09/01 22:26:59 dhankins Exp $ Copyright (c) 2004 Internet Systems Consortium. All rights reserved.\n";
#endif /* not lint */
#include "dhcpd.h"
@@ -1946,6 +1946,9 @@ void make_request (client, lease)
else
oc = (struct option_cache *)0;
+ if (client -> sent_options)
+ option_state_dereference (&client -> sent_options, MDL);
+
make_client_options (client, lease, &request, oc,
((client -> state == S_REQUESTING ||
client -> state == S_REBOOTING)
@@ -1968,7 +1971,6 @@ void make_request (client, lease)
(struct data_string *)0,
client -> config -> vendor_space_name);
- option_state_dereference (&client -> sent_options, MDL);
if (client -> packet_length < BOOTP_MIN_LEN)
client -> packet_length = BOOTP_MIN_LEN;