summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2007-06-30 02:32:53 +0200
committerMichael Brown2007-06-30 02:32:53 +0200
commitacd598b4f93473f1792686a8ab691c88f1d4d8e5 (patch)
treecb3cd895f89d37a2e2cf38cda5fcc278e847339e /src/include
parentI really, really screwed up the semantics of BufferSize and BufferLimit. (diff)
downloadipxe-acd598b4f93473f1792686a8ab691c88f1d4d8e5.tar.gz
ipxe-acd598b4f93473f1792686a8ab691c88f1d4d8e5.tar.xz
ipxe-acd598b4f93473f1792686a8ab691c88f1d4d8e5.zip
Don't build option-overloaded packets; they just confuse people (ISC
DHCPD and Windows RIS in particular).
Diffstat (limited to 'src/include')
-rw-r--r--src/include/gpxe/dhcp.h28
1 files changed, 4 insertions, 24 deletions
diff --git a/src/include/gpxe/dhcp.h b/src/include/gpxe/dhcp.h
index 634e47c7b..3183a3a9d 100644
--- a/src/include/gpxe/dhcp.h
+++ b/src/include/gpxe/dhcp.h
@@ -387,12 +387,12 @@ struct dhcphdr {
*
* This field may be overridden and contain DHCP options
*/
- uint8_t sname[64];
+ char sname[64];
/** Boot file name (null terminated)
*
* This field may be overridden and contain DHCP options
*/
- uint8_t file[128];
+ char file[128];
/** DHCP magic cookie
*
* Must have the value @c DHCP_MAGIC_COOKIE.
@@ -423,20 +423,6 @@ struct dhcphdr {
*/
#define DHCP_MIN_LEN 552
-/** DHCP packet option block fill order
- *
- * This is the order in which option blocks are filled when
- * reassembling a DHCP packet. We fill the smallest field ("sname")
- * first, to maximise the chances of being able to fit large options
- * within fields which are large enough to contain them.
- */
-enum dhcp_packet_option_block_fill_order {
- OPTS_SNAME = 0,
- OPTS_FILE,
- OPTS_MAIN,
- NUM_OPT_BLOCKS
-};
-
/**
* A DHCP packet
*
@@ -448,14 +434,8 @@ struct dhcp_packet {
size_t max_len;
/** Used length of the DHCP packet buffer */
size_t len;
- /** DHCP option blocks within a DHCP packet
- *
- * A DHCP packet contains three fields which can be used to
- * contain options: the actual "options" field plus the "file"
- * and "sname" fields (which can be overloaded to contain
- * options).
- */
- struct dhcp_option_block options[NUM_OPT_BLOCKS];
+ /** DHCP options */
+ struct dhcp_option_block options;
};
/**