Hi, Without this patch retrieving boot image from the second "next-server" and "filename" actually ends up using the results obtained from DHCP on the first NIC after boot either fails or continues.
Signed-off-by: Gianni Tedesco <[email protected]> src/usr/autoboot.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/usr/autoboot.c b/src/usr/autoboot.c index d76751b..439860e 100644 --- a/src/usr/autoboot.c +++ b/src/usr/autoboot.c @@ -171,8 +171,8 @@ static int netboot ( struct net_device *netdev ) { } /* Try to download and boot whatever we are given as a filename */ - fetch_ipv4_setting ( NULL, &next_server_setting, &next_server ); - fetch_string_setting ( NULL, &filename_setting, buf, sizeof ( buf ) ); + fetch_ipv4_setting ( netdev_settings(netdev), &next_server_setting, &next_server ); + fetch_string_setting ( netdev_settings(netdev), &filename_setting, buf, sizeof ( buf ) ); if ( buf[0] ) { printf ( "Booting from filename \"%s\"\n", buf ); if ( ( rc = boot_next_server_and_filename ( next_server, @@ -228,6 +228,8 @@ void autoboot ( void ) { if ( ( boot_netdev = find_boot_netdev() ) ) netboot ( boot_netdev ); + netdev_close(boot_netdev); + /* If that fails, try booting from any of the other devices */ for_each_netdev ( netdev ) { if ( netdev == boot_netdev ) _______________________________________________ gPXE-devel mailing list [email protected] http://etherboot.org/mailman/listinfo/gpxe-devel
