summaryrefslogtreecommitdiffstats
path: root/src/net
diff options
context:
space:
mode:
authorMichael Brown2010-12-01 17:34:23 +0100
committerMichael Brown2010-12-01 17:35:00 +0100
commit67b45186a572fb051e73fd88d4fc580a0d4d2f6b (patch)
tree9c1b23f9ceab3f9e9bf3ca0563103bc6230c0ee5 /src/net
parent[iscsi] Disambiguate the common EINVAL cases (diff)
downloadipxe-67b45186a572fb051e73fd88d4fc580a0d4d2f6b.tar.gz
ipxe-67b45186a572fb051e73fd88d4fc580a0d4d2f6b.tar.xz
ipxe-67b45186a572fb051e73fd88d4fc580a0d4d2f6b.zip
[settings] Apply settings block name in register_settings()
Pass the settings block name as a parameter to register_settings(), rather than defining it with settings_init() (and then possibly changing it by directly manipulating settings->name). Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/net')
-rw-r--r--src/net/cachedhcp.c3
-rw-r--r--src/net/dhcppkt.c3
-rw-r--r--src/net/netdevice.c2
-rw-r--r--src/net/udp/dhcp.c16
4 files changed, 12 insertions, 12 deletions
diff --git a/src/net/cachedhcp.c b/src/net/cachedhcp.c
index 299b164cf..294624c8e 100644
--- a/src/net/cachedhcp.c
+++ b/src/net/cachedhcp.c
@@ -66,7 +66,8 @@ void store_cached_dhcpack ( userptr_t data, size_t len ) {
* device, which is usually what we want.
*/
parent = netdev_settings ( last_opened_netdev() );
- if ( ( rc = register_settings ( &dhcppkt->settings, parent ) ) != 0 )
+ if ( ( rc = register_settings ( &dhcppkt->settings, parent,
+ DHCP_SETTINGS_NAME ) ) != 0 )
DBG ( "DHCP could not register cached settings: %s\n",
strerror ( rc ) );
diff --git a/src/net/dhcppkt.c b/src/net/dhcppkt.c
index b2a33363a..b68f4e08d 100644
--- a/src/net/dhcppkt.c
+++ b/src/net/dhcppkt.c
@@ -279,6 +279,5 @@ void dhcppkt_init ( struct dhcp_packet *dhcppkt, struct dhcphdr *data,
dhcppkt->len = ( offsetof ( struct dhcphdr, options ) +
dhcppkt->options.len );
settings_init ( &dhcppkt->settings,
- &dhcppkt_settings_operations, &dhcppkt->refcnt,
- DHCP_SETTINGS_NAME, 0 );
+ &dhcppkt_settings_operations, &dhcppkt->refcnt, 0 );
}
diff --git a/src/net/netdevice.c b/src/net/netdevice.c
index 37887073f..c7e907ad6 100644
--- a/src/net/netdevice.c
+++ b/src/net/netdevice.c
@@ -422,7 +422,7 @@ int register_netdev ( struct net_device *netdev ) {
/* Register per-netdev configuration settings */
if ( ( rc = register_settings ( netdev_settings ( netdev ),
- NULL ) ) != 0 ) {
+ NULL, netdev->name ) ) != 0 ) {
DBGC ( netdev, "NETDEV %s could not register settings: %s\n",
netdev->name, strerror ( rc ) );
goto err_register_settings;
diff --git a/src/net/udp/dhcp.c b/src/net/udp/dhcp.c
index 443ae3aa4..0524385a9 100644
--- a/src/net/udp/dhcp.c
+++ b/src/net/udp/dhcp.c
@@ -553,7 +553,8 @@ static void dhcp_request_rx ( struct dhcp_session *dhcp,
/* Register settings */
parent = netdev_settings ( dhcp->netdev );
settings = &dhcppkt->settings;
- if ( ( rc = register_settings ( settings, parent ) ) != 0 ) {
+ if ( ( rc = register_settings ( settings, parent,
+ DHCP_SETTINGS_NAME ) ) != 0 ) {
DBGC ( dhcp, "DHCP %p could not register settings: %s\n",
dhcp, strerror ( rc ) );
dhcp_finished ( dhcp, rc );
@@ -568,9 +569,8 @@ static void dhcp_request_rx ( struct dhcp_session *dhcp,
* without performing a ProxyDHCPREQUEST
*/
settings = &dhcp->proxy_offer->settings;
- settings->name = PROXYDHCP_SETTINGS_NAME;
- if ( ( rc = register_settings ( settings,
- NULL ) ) != 0 ) {
+ if ( ( rc = register_settings ( settings, NULL,
+ PROXYDHCP_SETTINGS_NAME ) ) != 0 ) {
DBGC ( dhcp, "DHCP %p could not register "
"proxy settings: %s\n",
dhcp, strerror ( rc ) );
@@ -670,8 +670,8 @@ static void dhcp_proxy_rx ( struct dhcp_session *dhcp,
return;
/* Register settings */
- settings->name = PROXYDHCP_SETTINGS_NAME;
- if ( ( rc = register_settings ( settings, NULL ) ) != 0 ) {
+ if ( ( rc = register_settings ( settings, NULL,
+ PROXYDHCP_SETTINGS_NAME ) ) != 0 ) {
DBGC ( dhcp, "DHCP %p could not register proxy settings: %s\n",
dhcp, strerror ( rc ) );
dhcp_finished ( dhcp, rc );
@@ -809,8 +809,8 @@ static void dhcp_pxebs_rx ( struct dhcp_session *dhcp,
return;
/* Register settings */
- dhcppkt->settings.name = PXEBS_SETTINGS_NAME;
- if ( ( rc = register_settings ( &dhcppkt->settings, NULL ) ) != 0 ) {
+ if ( ( rc = register_settings ( &dhcppkt->settings, NULL,
+ PXEBS_SETTINGS_NAME ) ) != 0 ) {
DBGC ( dhcp, "DHCP %p could not register settings: %s\n",
dhcp, strerror ( rc ) );
dhcp_finished ( dhcp, rc );