2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-22 01:49:35 +00:00

- Corrected a flaw that broke encapsulated spaces included due to presence

on the parameter request list. [ISC-Bugs #16625]
This commit is contained in:
David Hankins 2007-05-23 19:25:40 +00:00
parent 66eaae186e
commit c9feb859e0
2 changed files with 14 additions and 7 deletions

View File

@ -173,6 +173,9 @@ suggested fixes to <dhcp-users@isc.org>.
- A flaw in failover startup sequences was repaired that sometimes left
the primary DHCP server's pool rebalance schedules unscheduled.
- Corrected a flaw that broke encapsulated spaces included due to presence
on the parameter request list.
Changes since 3.1.0a3
- Some spelling fixes.

View File

@ -34,7 +34,7 @@
#ifndef lint
static char copyright[] =
"$Id: options.c,v 1.109 2007/05/19 18:47:14 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n";
"$Id: options.c,v 1.110 2007/05/23 19:25:40 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n";
#endif /* not lint */
#define DHCP_OPTION_DATA
@ -1164,13 +1164,17 @@ int store_options (ocount, buffer, buflen, packet, lease, client_state,
else
option_code_hash_lookup(&option, u->code_hash, &code, 0, MDL);
/* It's an encapsulation, try to find the universe
to be encapsulated first, except that if it's a straight
encapsulation and the user has provided a value for the
encapsulation option, use the user-provided value. */
/* If it's a straight encapsulation, and the user supplied a
* value for the entire option, use that. Otherwise, search
* the encapsulated space.
*
* If it's a limited encapsulation with preceding data, and the
* user supplied values for the preceding bytes, search the
* encapsulated space.
*/
if ((option != NULL) &&
((option->format[0] == 'E' && oc != NULL) ||
(option->format[0] == 'e'))) {
(((oc == NULL) && (option->format[0] == 'E')) ||
((oc != NULL) && (option->format[0] == 'e')))) {
int uix;
static char *s, *t;
struct option_cache *tmp;