When given a device name string, we should test to see if it is
really an alias like "eth#".

Signed-off-by: Bin Meng <bmeng...@gmail.com>

---

Changes in v2:
- Change to use strncmp()

 net/eth.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/net/eth.c b/net/eth.c
index c46a8c3..26520d3 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -195,10 +195,11 @@ struct udevice *eth_get_dev_by_name(const char *devname)
        const char *startp = NULL;
        struct udevice *it;
        struct uclass *uc;
+       int len = strlen("eth");
 
        /* Must be longer than 3 to be an alias */
-       if (strlen(devname) > strlen("eth")) {
-               startp = devname + strlen("eth");
+       if (!strncmp(devname, "eth", len) && strlen(devname) > len) {
+               startp = devname + len;
                seq = simple_strtoul(startp, &endp, 10);
        }
 
-- 
1.8.2.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to