summaryrefslogtreecommitdiff
path: root/server/dhcp.c
diff options
context:
space:
mode:
authorDavid Hankins <dhankins@isc.org>2009-07-24 17:23:53 +0000
committerDavid Hankins <dhankins@isc.org>2009-07-24 17:23:53 +0000
commit563131ccb5fcac41cac8f23df97d2012df726fc0 (patch)
tree347f2e6f4cb82b0566426f84520ea4a54780e7e1 /server/dhcp.c
parentdc0de90b4f2042982ad052a74de1fa6ec8abb790 (diff)
downloadisc-dhcp-563131ccb5fcac41cac8f23df97d2012df726fc0.tar.gz
- Fixed a fenceposting bug when a client had two host records configured,
one using 'uid' and the other using 'hardware ethernet'. [ISC-Bugs #19895]
Diffstat (limited to 'server/dhcp.c')
-rw-r--r--server/dhcp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/server/dhcp.c b/server/dhcp.c
index 76929925..d164761a 100644
--- a/server/dhcp.c
+++ b/server/dhcp.c
@@ -34,7 +34,7 @@
#ifndef lint
static char copyright[] =
-"$Id: dhcp.c,v 1.211.2.16 2009/07/23 21:43:35 sar Exp $ Copyright (c) 2004-2008 Internet Systems Consortium. All rights reserved.\n";
+"$Id: dhcp.c,v 1.211.2.17 2009/07/24 17:23:53 dhankins Exp $ Copyright (c) 2004-2008 Internet Systems Consortium. All rights reserved.\n";
#endif /* not lint */
#include "dhcpd.h"
@@ -1745,6 +1745,8 @@ void ack_lease (packet, lease, offer, when, msg, ms_nulltp, hp)
}
if (h)
host_reference (&host, h, MDL);
+ if (hp != NULL)
+ host_dereference(&hp, MDL);
}
if (!host) {
find_hosts_by_haddr (&hp,
@@ -1758,9 +1760,9 @@ void ack_lease (packet, lease, offer, when, msg, ms_nulltp, hp)
}
if (h)
host_reference (&host, h, MDL);
+ if (hp != NULL)
+ host_dereference(&hp, MDL);
}
- if (hp)
- host_dereference (&hp, MDL);
}
/* If we have a host_decl structure, run the options associated