summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hankins <dhankins@isc.org>2007-05-21 22:13:50 +0000
committerDavid Hankins <dhankins@isc.org>2007-05-21 22:13:50 +0000
commitdbaceec28522d353d3dc9ec44486233c0c058db9 (patch)
tree30a08398aed6e6059cea716046b57f1ae9084cb1
parentd6a9335dc4803851c7711a17401b3388e1064d19 (diff)
downloadisc-dhcp-dbaceec28522d353d3dc9ec44486233c0c058db9.tar.gz
- 'dhcp.c(3953): non-null pointer' has been repaired. This fixes a flaw
wherein the DHCPv4 server may ignore a configured server-identifier. [ISC-Bugs #16897]
-rw-r--r--RELNOTES3
-rw-r--r--server/dhcp.c11
2 files changed, 9 insertions, 5 deletions
diff --git a/RELNOTES b/RELNOTES
index 7647e83d..4ea648d3 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -60,6 +60,9 @@ the README file.
- A bug in dhclient was repaired which caused it to send parameter request
lists of 55 bytes in length no matter how long the declared PRL was.
+- 'dhcp.c(3953): non-null pointer' has been repaired. This fixes a flaw
+ wherein the DHCPv4 server may ignore a configured server-identifier.
+
Changes since 3.1.0a3
- The execute() statement has been changed from a "numeric expression" to
diff --git a/server/dhcp.c b/server/dhcp.c
index 98eea103..8ebf5974 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.5 2007/04/26 20:06:50 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n";
+"$Id: dhcp.c,v 1.211.2.6 2007/05/21 22:13:50 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n";
#endif /* not lint */
#include "dhcpd.h"
@@ -3933,11 +3933,12 @@ void
get_server_source_address(struct in_addr *from,
struct option_state *options,
struct packet *packet) {
- int option_num;
+ unsigned option_num;
struct option_cache *oc;
- struct data_string d;
- struct in_addr *a;
- struct option *option;
+ struct data_string d;
+ struct in_addr *a;
+
+ memset(&d, 0, sizeof(d));
option_num = DHO_DHCP_SERVER_IDENTIFIER;
oc = lookup_option(&dhcp_universe, options, option_num);