diff options
-rw-r--r-- | RELNOTES | 3 | ||||
-rw-r--r-- | common/tables.c | 21 |
2 files changed, 18 insertions, 6 deletions
@@ -49,6 +49,9 @@ and for prodding me into improving it. - Null-termination sensing for certain clients that unfortunatley require it in DHCPINFORM processing was repaired. +- The host-name option and a few others were moved from "X" format to "t" + format to be compatible with new NULL handling functions. + - DHCPINFORM processing is a little more careful about return addressing its responses, or if responding via a relay. The INFORM related messages also log the 'effective client ip address' rather than the diff --git a/common/tables.c b/common/tables.c index 681cc525..3ec05d06 100644 --- a/common/tables.c +++ b/common/tables.c @@ -34,7 +34,7 @@ #ifndef lint static char copyright[] = -"$Id: tables.c,v 1.51.2.12 2006/02/15 23:00:08 dhankins Exp $ Copyright (c) 2004-2005 Internet Systems Consortium. All rights reserved.\n"; +"$Id: tables.c,v 1.51.2.13 2006/02/16 19:15:36 dhankins Exp $ Copyright (c) 2004-2005 Internet Systems Consortium. All rights reserved.\n"; #endif /* not lint */ #include "dhcpd.h" @@ -105,7 +105,7 @@ struct option dhcp_options [256] = { { "lpr-servers", "IA", &dhcp_universe, 9 }, { "impress-servers", "IA", &dhcp_universe, 10 }, { "resource-location-servers", "IA", &dhcp_universe, 11 }, - { "host-name", "X", &dhcp_universe, 12 }, + { "host-name", "t", &dhcp_universe, 12 }, { "boot-size", "S", &dhcp_universe, 13 }, { "merit-dump", "t", &dhcp_universe, 14 }, { "domain-name", "t", &dhcp_universe, 15 }, @@ -155,7 +155,7 @@ struct option dhcp_options [256] = { { "dhcp-rebinding-time", "L", &dhcp_universe, 59 }, { "vendor-class-identifier", "X", &dhcp_universe, 60 }, { "dhcp-client-identifier", "X", &dhcp_universe, 61 }, - { "nwip-domain", "X", &dhcp_universe, 62 }, + { "nwip-domain", "t", &dhcp_universe, 62 }, { "nwip-suboptions", "Enwip.", &dhcp_universe, 63 }, { "nisplus-domain", "t", &dhcp_universe, 64 }, { "nisplus-servers", "IA", &dhcp_universe, 65 }, @@ -179,8 +179,8 @@ struct option dhcp_options [256] = { { "unknown-83", "X", &dhcp_universe, 83 }, { "unknown-84", "X", &dhcp_universe, 84 }, { "nds-servers", "IA", &dhcp_universe, 85 }, - { "nds-tree-name", "X", &dhcp_universe, 86 }, - { "nds-context", "X", &dhcp_universe, 87 }, + { "nds-tree-name", "t", &dhcp_universe, 86 }, + { "nds-context", "t", &dhcp_universe, 87 }, { "unknown-88", "X", &dhcp_universe, 88 }, { "unknown-89", "X", &dhcp_universe, 89 }, { "unknown-90", "X", &dhcp_universe, 90 }, @@ -211,7 +211,7 @@ struct option dhcp_options [256] = { { "unknown-115", "X", &dhcp_universe, 115 }, { "unknown-116", "X", &dhcp_universe, 116 }, { "unknown-117", "X", &dhcp_universe, 117 }, - { "subnet-selection", "X", &dhcp_universe, 118 }, + { "subnet-selection", "I", &dhcp_universe, 118 }, { "unknown-119", "X", &dhcp_universe, 119 }, { "unknown-120", "X", &dhcp_universe, 120 }, { "unknown-121", "X", &dhcp_universe, 121 }, @@ -611,6 +611,15 @@ struct option nwip_options [256] = { { "unknown-end", "e", &nwip_universe, 255 }, }; +/* Note that the "FQDN suboption space" does not reflect the FQDN option + * format - rather, this is a handy "virtualization" of a flat option + * which makes manual configuration and presentation of some of its + * contents easier (each of these suboptions is a fixed-space field within + * the fqdn contents - domain and host names are derived from a common field, + * and differ in the left and right hand side of the leftmost dot, fqdn is + * the combination of the two). + */ + struct universe fqdn_universe; struct option fqdn_options [256] = { { "pad", "", &fqdn_universe, 0 }, |