diff options
| author | Michael Brown | 2007-07-06 18:07:50 +0200 |
|---|---|---|
| committer | Michael Brown | 2007-07-06 18:07:50 +0200 |
| commit | 934b70d62c7cd9835b2b8682f665277e1e1259e1 (patch) | |
| tree | 3d83d4e2f2cb922f95dc93dee0166083d367fa32 /src/net | |
| parent | Merge branch 'master' of rom.etherboot.org:/pub/scm/gpxe (diff) | |
| download | ipxe-934b70d62c7cd9835b2b8682f665277e1e1259e1.tar.gz ipxe-934b70d62c7cd9835b2b8682f665277e1e1259e1.tar.xz ipxe-934b70d62c7cd9835b2b8682f665277e1e1259e1.zip | |
Apply global DHCP options when register_dhcp_options() is called. Do
not apply DHCP options in dhcp_configure_netdev().
Diffstat (limited to 'src/net')
| -rw-r--r-- | src/net/dhcpopts.c | 12 | ||||
| -rw-r--r-- | src/net/udp/dhcp.c | 7 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/net/dhcpopts.c b/src/net/dhcpopts.c index 6038709ba..c713909e0 100644 --- a/src/net/dhcpopts.c +++ b/src/net/dhcpopts.c @@ -289,6 +289,9 @@ void register_dhcp_options ( struct dhcp_option_block *options ) { } dhcpopt_get ( options ); list_add_tail ( &options->list, &existing->list ); + + /* Apply all registered DHCP options */ + apply_global_dhcp_options(); } /** @@ -609,3 +612,12 @@ int apply_dhcp_options ( struct dhcp_option_block *options ) { return 0; } + +/** + * Apply global DHCP options + * + * @ret rc Return status code + */ +int apply_global_dhcp_options ( void ) { + return apply_dhcp_options ( NULL ); +} diff --git a/src/net/udp/dhcp.c b/src/net/udp/dhcp.c index a8cb9376f..81454b061 100644 --- a/src/net/udp/dhcp.c +++ b/src/net/udp/dhcp.c @@ -855,12 +855,5 @@ int dhcp_configure_netdev ( struct net_device *netdev, return rc; } - /* Apply other DHCP options */ - if ( ( rc = apply_dhcp_options ( options ) ) != 0 ) { - DBG ( "Could not apply %s DHCP result options: %s\n", - netdev->name, strerror ( rc ) ); - return rc; - } - return 0; } |
