aboutsummaryrefslogtreecommitdiffstats
path: root/gpxe/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'gpxe/src/include')
-rw-r--r--gpxe/src/include/gpxe/dhcp.h10
-rw-r--r--gpxe/src/include/gpxe/settings.h5
-rw-r--r--gpxe/src/include/gpxe/uuid.h3
3 files changed, 12 insertions, 6 deletions
diff --git a/gpxe/src/include/gpxe/dhcp.h b/gpxe/src/include/gpxe/dhcp.h
index 94cc2010..61445977 100644
--- a/gpxe/src/include/gpxe/dhcp.h
+++ b/gpxe/src/include/gpxe/dhcp.h
@@ -24,6 +24,9 @@ struct dhcp_packet;
/** BOOTP/DHCP client port */
#define BOOTPC_PORT 68
+/** ProxyDHCP server port */
+#define PROXYDHCP_PORT 4011
+
/** Construct a tag value for an encapsulated option
*
* This tag value can be passed to Etherboot functions when searching
@@ -433,7 +436,7 @@ struct dhcphdr {
*/
#define DHCP_MIN_LEN 552
-/** Maximum time that we will wait for ProxyDHCP offers */
+/** Maximum time that we will wait for ProxyDHCP responses */
#define PROXYDHCP_WAIT_TIME ( TICKS_PER_SEC * 1 )
/** Settings block name used for DHCP responses */
@@ -442,12 +445,13 @@ struct dhcphdr {
/** Settings block name used for ProxyDHCP responses */
#define PROXYDHCP_SETTINGS_NAME "proxydhcp"
-extern int create_dhcp_packet ( struct dhcp_packet *dhcppkt,
+extern int dhcp_create_packet ( struct dhcp_packet *dhcppkt,
struct net_device *netdev, uint8_t msgtype,
struct dhcp_options *options,
void *data, size_t max_len );
-extern int create_dhcp_request ( struct dhcp_packet *dhcppkt,
+extern int dhcp_create_request ( struct dhcp_packet *dhcppkt,
struct net_device *netdev,
+ struct in_addr ciaddr,
struct dhcp_packet *dhcpoffer,
void *data, size_t max_len );
extern int start_dhcp ( struct job_interface *job, struct net_device *netdev );
diff --git a/gpxe/src/include/gpxe/settings.h b/gpxe/src/include/gpxe/settings.h
index 40825698..ae5a259d 100644
--- a/gpxe/src/include/gpxe/settings.h
+++ b/gpxe/src/include/gpxe/settings.h
@@ -15,6 +15,7 @@
struct settings;
struct in_addr;
+union uuid;
/** A setting */
struct setting {
@@ -177,6 +178,8 @@ extern long fetch_intz_setting ( struct settings *settings,
struct setting *setting );
extern unsigned long fetch_uintz_setting ( struct settings *settings,
struct setting *setting );
+extern int fetch_uuid_setting ( struct settings *settings,
+ struct setting *setting, union uuid *uuid );
extern int setting_cmp ( struct setting *a, struct setting *b );
extern struct settings * find_child_settings ( struct settings *parent,
@@ -198,6 +201,7 @@ extern struct setting_type setting_type_uint8 __setting_type;
extern struct setting_type setting_type_uint16 __setting_type;
extern struct setting_type setting_type_uint32 __setting_type;
extern struct setting_type setting_type_hex __setting_type;
+extern struct setting_type setting_type_uuid __setting_type;
extern struct setting ip_setting __setting;
extern struct setting netmask_setting __setting;
@@ -210,6 +214,7 @@ extern struct setting username_setting __setting;
extern struct setting password_setting __setting;
extern struct setting priority_setting __setting;
extern struct setting bios_drive_setting __setting;
+extern struct setting uuid_setting __setting;
/**
* Initialise a settings block
diff --git a/gpxe/src/include/gpxe/uuid.h b/gpxe/src/include/gpxe/uuid.h
index a62735c9..4f89be50 100644
--- a/gpxe/src/include/gpxe/uuid.h
+++ b/gpxe/src/include/gpxe/uuid.h
@@ -8,9 +8,6 @@
#include <stdint.h>
-union uuid;
-#include <bits/uuid.h>
-
/** A universally unique ID */
union uuid {
/** Canonical form (00000000-0000-0000-0000-000000000000) */