On 2015/08/29 13:25, Nathanael Rensen wrote: > I use dhcpd(8) to boot some boxes with PXELINUX. The numbered options work > but dhcpd.conf(5) is easier to maintain with names. These options are > defined in RFC 5071.
I think this makes sense, any OKs? Ken? It would also want an faq/current.html entry so that people who are currently specifying them as option-{209,210,211} know to change their config. I am surprised the RFC is specific to PXELINUX but it is! > Index: sbin/dhclient/tables.c > =================================================================== > RCS file: /cvs/src/sbin/dhclient/tables.c,v > retrieving revision 1.18 > diff -u -p -u -p -r1.18 tables.c > --- sbin/dhclient/tables.c 21 Jan 2014 03:07:50 -0000 1.18 > +++ sbin/dhclient/tables.c 27 Aug 2015 09:13:26 -0000 > @@ -269,9 +269,9 @@ const struct option dhcp_options[256] = > /* 206 */ { "option-206", "X" }, > /* 207 */ { "option-207", "X" }, > /* 208 */ { "option-208", "X" }, > - /* 209 */ { "option-209", "X" }, > - /* 210 */ { "option-210", "X" }, > - /* 211 */ { "option-211", "X" }, > + /* 209 */ { "config-file", "t" }, > + /* 210 */ { "path-prefix", "t" }, > + /* 211 */ { "reboot-time", "L" }, > /* 212 */ { "option-212", "X" }, > /* 213 */ { "option-213", "X" }, > /* 214 */ { "option-214", "X" }, > Index: usr.sbin/dhcpd/dhcp-options.5 > =================================================================== > RCS file: /cvs/src/usr.sbin/dhcpd/dhcp-options.5,v > retrieving revision 1.21 > diff -u -p -u -p -r1.21 dhcp-options.5 > --- usr.sbin/dhcpd/dhcp-options.5 2 Jun 2015 16:02:45 -0000 1.21 > +++ usr.sbin/dhcpd/dhcp-options.5 27 Aug 2015 09:13:29 -0000 > @@ -176,6 +176,10 @@ This option does the same as > .Ic classless-static-routes , > but uses option code 249 instead of 121, > since Windows XP and Windows Server 2003 ignore option 121. > +.It Ic option config-file Ar string ; > +This option specifies the configuration file for the PXELINUX boot loader. > +This is typically used in conjuction with the path-prefix option. > +See RFC 5071 for details. > .It Ic option cookie-servers Ar ip-address Oo , Ar ip-address ... Oc ; > The > .Ic cookie-servers > @@ -453,6 +457,11 @@ Path MTU Discovery as defined in RFC 119 > The table is formatted as a list of 16-bit unsigned integers, > ordered from smallest to largest. > The minimum MTU value cannot be smaller than 68. > +.It Ic option path-prefix Ar string ; > +This option specifies the path prefix for a PXELINUX boot loader > +configuration file. > +This is typically used in conjuction with the config-file option. > +See RFC 5071 for details. > .It Ic option perform-mask-discovery Ar flag ; > This option specifies whether or not the client should perform subnet mask > discovery using ICMP. > @@ -472,6 +481,10 @@ The > .Ic pop-server > option specifies a list of POP3 servers available to the client. > Servers should be listed in order of preference. > +.It Ic option reboot-time Ar uint32 ; > +This option determines how long the PXELINUX boot loader waits to connect > +to a TFTP server before rebooting. > +See RFC 5071 for details. > .It Ic option relay-agent-information Ar string ; > This is a "container" option for specific agent-supplied sub-options. > See RFC 3046 for details. > Index: usr.sbin/dhcpd/tables.c > =================================================================== > RCS file: /cvs/src/usr.sbin/dhcpd/tables.c,v > retrieving revision 1.11 > diff -u -p -u -p -r1.11 tables.c > --- usr.sbin/dhcpd/tables.c 27 Jun 2015 14:29:39 -0000 1.11 > +++ usr.sbin/dhcpd/tables.c 27 Aug 2015 09:13:29 -0000 > @@ -271,9 +271,9 @@ struct option dhcp_options[256] = { > { "option-206", "X", &dhcp_universe, 206 }, > { "option-207", "X", &dhcp_universe, 207 }, > { "option-208", "X", &dhcp_universe, 208 }, > - { "option-209", "X", &dhcp_universe, 209 }, > - { "option-210", "X", &dhcp_universe, 210 }, > - { "option-211", "X", &dhcp_universe, 211 }, > + { "config-file", "t", &dhcp_universe, 209 }, > + { "path-prefix", "t", &dhcp_universe, 210 }, > + { "reboot-time", "L", &dhcp_universe, 211 }, > { "option-212", "X", &dhcp_universe, 212 }, > { "option-213", "X", &dhcp_universe, 213 }, > { "option-214", "X", &dhcp_universe, 214 }, >