diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c index 1d013ed57d7a..362cd6cb4c11 100644 --- a/sbin/dhclient/dhclient.c +++ b/sbin/dhclient/dhclient.c @@ -2601,6 +2601,7 @@ check_option(struct client_lease *l, int option) case DHO_DHCP_CLIENT_IDENTIFIER: case DHO_BOOTFILE_NAME: case DHO_DHCP_USER_CLASS_ID: + case DHO_URL: case DHO_END: return (1); case DHO_CLASSLESS_ROUTES: diff --git a/sbin/dhclient/dhcp-options.5 b/sbin/dhclient/dhcp-options.5 index 4b65fa723083..9fe513636ec2 100644 --- a/sbin/dhclient/dhcp-options.5 +++ b/sbin/dhclient/dhcp-options.5 @@ -587,6 +587,9 @@ Servers should be listed in order of preference. The StreetTalk Directory Assistance (STDA) server option specifies a list of STDA servers available to the client. Servers should be listed in order of preference. +.It Ic option url Ar string ; +This option specifies the URL that the client may use when using UEFI +boot from a HTTP server. .El .Sh SEE ALSO .Xr dhclient.conf 5 , @@ -595,7 +598,7 @@ Servers should be listed in order of preference. .Xr dhclient 8 , .Xr dhcpd 8 .Rs -.%R "RFC 2131, RFC 2132" +.%R "RFC 2131, RFC 2132, RFC 3769" .Re .Sh AUTHORS .An -nosplit diff --git a/sbin/dhclient/dhcp.h b/sbin/dhclient/dhcp.h index e4dcfb93271e..9183a9c82aec 100644 --- a/sbin/dhclient/dhcp.h +++ b/sbin/dhclient/dhcp.h @@ -171,6 +171,7 @@ struct dhcp_packet { #define DHO_STREETTALK_SERVER 75 #define DHO_STREETTALK_DA_SERVER 76 #define DHO_DHCP_USER_CLASS_ID 77 +#define DHO_URL 114 #define DHO_DOMAIN_SEARCH 119 #define DHO_CLASSLESS_ROUTES 121 #define DHO_END 255 diff --git a/sbin/dhclient/tables.c b/sbin/dhclient/tables.c index 8f3bf23dfcd0..9225c4fe2051 100644 --- a/sbin/dhclient/tables.c +++ b/sbin/dhclient/tables.c @@ -181,7 +181,7 @@ struct option dhcp_options[256] = { { "option-111", "X", &dhcp_universe, 111 }, { "option-112", "X", &dhcp_universe, 112 }, { "option-113", "X", &dhcp_universe, 113 }, - { "option-114", "X", &dhcp_universe, 114 }, + { "url", "t", &dhcp_universe, 114 }, { "option-115", "X", &dhcp_universe, 115 }, { "option-116", "X", &dhcp_universe, 116 }, { "option-117", "X", &dhcp_universe, 117 }, @@ -404,11 +404,12 @@ unsigned char dhcp_option_default_priority_list[] = { DHO_STREETTALK_DA_SERVER, DHO_DHCP_USER_CLASS_ID, DHO_DOMAIN_SEARCH, + DHO_URL, /* Presently-undefined options... */ 62, 63, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 106, 107, 108, 109, 110, 111, 112, 113, 115, 116, 117, 118, 120, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,