diff options
author | Michael Brown | 2008-03-25 21:46:16 +0100 |
---|---|---|
committer | Michael Brown | 2008-03-25 21:46:16 +0100 |
commit | 92d15eff30410dcb0ec406e06b131fb7d9179ffd (patch) | |
tree | 191d29013372b541d353bbfa55114b8060dd557c /src/net/udp/tftp.c | |
parent | [PXEXT] Avoid returning a false EOF when we have an empty buffer queued (diff) | |
download | ipxe-92d15eff30410dcb0ec406e06b131fb7d9179ffd.tar.gz ipxe-92d15eff30410dcb0ec406e06b131fb7d9179ffd.tar.xz ipxe-92d15eff30410dcb0ec406e06b131fb7d9179ffd.zip |
[Settings] Remove assumption that all settings have DHCP tag values
Allow for settings to be described by something other than a DHCP option
tag if desirable. Currently used only for the MAC address setting.
Separate out fake DHCP packet creation code from dhcp.c to fakedhcp.c.
Remove notion of settings from dhcppkt.c.
Rationalise dhcp.c to use settings API only for final registration of the
DHCP options, rather than using {store,fetch}_setting throughout.
Diffstat (limited to 'src/net/udp/tftp.c')
-rw-r--r-- | src/net/udp/tftp.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/net/udp/tftp.c b/src/net/udp/tftp.c index 8bd2b80b..e49bcf9f 100644 --- a/src/net/udp/tftp.c +++ b/src/net/udp/tftp.c @@ -1093,6 +1093,21 @@ struct uri_opener mtftp_uri_opener __uri_opener = { .open = mtftp_open, }; +/****************************************************************************** + * + * Settings + * + ****************************************************************************** + */ + +/** TFTP server setting */ +struct setting next_server_setting __setting = { + .name = "next-server", + .description = "TFTP server", + .tag = DHCP_EB_SIADDR, + .type = &setting_type_ipv4, +}; + /** * Apply TFTP configuration settings * @@ -1106,7 +1121,7 @@ static int tftp_apply_settings ( void ) { /* Retrieve TFTP server setting */ last_tftp_server = tftp_server; - fetch_ipv4_setting ( NULL, DHCP_EB_SIADDR, &tftp_server ); + fetch_ipv4_setting ( NULL, &next_server_setting, &tftp_server ); /* If TFTP server setting has changed, set the current working * URI to match. Do it only when the TFTP server has changed |