From 9e56986a2b74d197f51eca70fad7b836b1900c4d Mon Sep 17 00:00:00 2001 From: Andy Fleming Date: Wed, 11 Feb 2009 15:07:24 -0600 Subject: [PATCH] Add eth_get_dev_by_index This allows code to iterate through the ethernet devices Signed-off-by: Andy Fleming --- net/eth.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/net/eth.c b/net/eth.c index b7ef09f44..ec2ef1a36 100644 --- a/net/eth.c +++ b/net/eth.c @@ -80,6 +80,28 @@ struct eth_device *eth_get_dev_by_name(char *devname) return target_dev; } +struct eth_device *eth_get_dev_by_index(int index) +{ + struct eth_device *dev, *target_dev; + int idx = 0; + + if (!eth_devices) + return NULL; + + dev = eth_devices; + target_dev = NULL; + do { + if (idx == index) { + target_dev = dev; + break; + } + dev = dev->next; + idx++; + } while (dev != eth_devices); + + return target_dev; +} + int eth_get_dev_index (void) { struct eth_device *dev;