summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2025-06-10 17:55:18 +0200
committerMichael Brown2025-06-10 19:22:32 +0200
commitb5fb7353fa3856cee7e0a6760c2341ca617d6ef4 (patch)
treedac63a18911fd3e71ada3ac4f5600cd5bddd75d6 /src/include
parent[ipv4] Extend routing mechanism to handle non-default routes (diff)
downloadipxe-b5fb7353fa3856cee7e0a6760c2341ca617d6ef4.tar.gz
ipxe-b5fb7353fa3856cee7e0a6760c2341ca617d6ef4.tar.xz
ipxe-b5fb7353fa3856cee7e0a6760c2341ca617d6ef4.zip
[ipv4] Add support for classless static routes
Add support for RFC 3442 classless static routes provided via DHCP option 121. Originally-implemented-by: Hazel Smith <hazel.smith@leicester.ac.uk> Originally-implemented-by: Raphael Pour <raphael.pour@hetzner.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ipxe/dhcp.h3
-rw-r--r--src/include/ipxe/settings.h2
2 files changed, 5 insertions, 0 deletions
diff --git a/src/include/ipxe/dhcp.h b/src/include/ipxe/dhcp.h
index 4d68d3ca5..43729d0c5 100644
--- a/src/include/ipxe/dhcp.h
+++ b/src/include/ipxe/dhcp.h
@@ -344,6 +344,9 @@ struct dhcp_client_uuid {
/** DNS domain search list */
#define DHCP_DOMAIN_SEARCH 119
+/** Classless static routes */
+#define DHCP_STATIC_ROUTES 121
+
/** Etherboot-specific encapsulated options
*
* This encapsulated options field is used to contain all options
diff --git a/src/include/ipxe/settings.h b/src/include/ipxe/settings.h
index 0301da12e..689e011d3 100644
--- a/src/include/ipxe/settings.h
+++ b/src/include/ipxe/settings.h
@@ -437,6 +437,8 @@ netmask_setting __setting ( SETTING_IP4, netmask );
extern const struct setting
gateway_setting __setting ( SETTING_IP4, gateway );
extern const struct setting
+static_route_setting __setting ( SETTING_IP4, static_routes );
+extern const struct setting
dns_setting __setting ( SETTING_IP4_EXTRA, dns );
extern const struct setting
ip6_setting __setting ( SETTING_IP6, ip6 );