diff options
author | Michael Brown <mcb30@etherboot.org> | 2007-01-10 01:55:07 +0000 |
---|---|---|
committer | Michael Brown <mcb30@etherboot.org> | 2007-01-10 01:55:07 +0000 |
commit | d24b80acf292266680d9b04836269734602ec054 (patch) | |
tree | 88d98a1ab29bd0dc0043e2f13ef1d17b74656084 /src/usr/autoboot.c | |
parent | 98b6154c3ea76121e942cb14765f05ecd7d7911c (diff) | |
download | ipxe-d24b80acf292266680d9b04836269734602ec054.zip ipxe-d24b80acf292266680d9b04836269734602ec054.tar.gz ipxe-d24b80acf292266680d9b04836269734602ec054.tar.bz2 |
Added network interface management commands
Diffstat (limited to 'src/usr/autoboot.c')
-rw-r--r-- | src/usr/autoboot.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/usr/autoboot.c b/src/usr/autoboot.c index 0fa4e8e..5cfde82 100644 --- a/src/usr/autoboot.c +++ b/src/usr/autoboot.c @@ -19,6 +19,7 @@ #include <string.h> #include <vsprintf.h> #include <gpxe/netdevice.h> +#include <usr/ifmgmt.h> #include <gpxe/autoboot.h> /** @file @@ -27,26 +28,21 @@ * */ -#include <gpxe/netdevice.h> void test_dhcp ( struct net_device *netdev ); void autoboot ( void ) { struct net_device *netdev; int rc; - netdev = next_netdev (); - if ( ! netdev ) { - printf ( "No network device found\n" ); - return; - } + for_each_netdev ( netdev ) { - if ( ( rc = netdev_open ( netdev ) ) != 0 ) { - printf ( "Could not open %s: %s\n", netdev->name, - strerror ( rc ) ); - return; - } + if ( ( rc = ifopen ( netdev ) ) != 0 ) + continue; - test_dhcp ( netdev ); + test_dhcp ( netdev ); + + ifclose ( netdev ); + } - netdev_close ( netdev ); + printf ( "No more network devices\n" ); } |