diff options
author | David Hankins <dhankins@isc.org> | 2007-05-21 18:17:31 +0000 |
---|---|---|
committer | David Hankins <dhankins@isc.org> | 2007-05-21 18:17:31 +0000 |
commit | d6a9335dc4803851c7711a17401b3388e1064d19 (patch) | |
tree | 92bdb942b6831fe93625692615838e761398281f | |
parent | 656054e7fdc42d9df8b132ef8bb974f33329a5f4 (diff) | |
download | isc-dhcp-d6a9335dc4803851c7711a17401b3388e1064d19.tar.gz |
- 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.
[ISC-Bugs #16882]
-rw-r--r-- | RELNOTES | 3 | ||||
-rw-r--r-- | client/dhclient.c | 7 |
2 files changed, 7 insertions, 3 deletions
@@ -57,6 +57,9 @@ the README file. - Silenced several other compiler warnings. +- 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. + Changes since 3.1.0a3 - The execute() statement has been changed from a "numeric expression" to diff --git a/client/dhclient.c b/client/dhclient.c index 27e856bd..73021751 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -32,7 +32,7 @@ #ifndef lint static char ocopyright[] = -"$Id: dhclient.c,v 1.143.2.4 2007/04/26 19:32:22 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n"; +"$Id: dhclient.c,v 1.143.2.5 2007/05/21 18:17:31 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n"; #endif /* not lint */ #include "dhcpd.h" @@ -1903,12 +1903,13 @@ void make_client_options (client, lease, type, sid, rip, prl, op) if (!buffer_allocate (&bp, i, MDL)) log_error ("can't make parameter list buffer."); else { + unsigned code = DHO_DHCP_PARAMETER_REQUEST_LIST; + for (i = 0; prl [i]; i++) bp -> data [i] = prl [i]; - i = DHO_DHCP_PARAMETER_REQUEST_LIST; if (!(option_code_hash_lookup(&option, dhcp_universe.code_hash, - &i, 0, MDL) && + &code, 0, MDL) && make_const_option_cache(&oc, &bp, NULL, i, option, MDL))) log_error ("can't make option cache"); |