diff mbox

[U-Boot,v3,4/9] dm: eth: Correctly detect alias in eth_get_dev_by_name()

Message ID 1440739559-16225-4-git-send-email-bmeng.cn@gmail.com
State Accepted
Delegated to: Simon Glass
Headers show

Commit Message

Bin Meng Aug. 28, 2015, 5:25 a.m. UTC
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.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>

---

Changes in v3: None
Changes in v2:
- Change to use strncmp()

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

Comments

Simon Glass Sept. 1, 2015, 12:32 a.m. UTC | #1
On 27 August 2015 at 23:25, Bin Meng <bmeng.cn@gmail.com> wrote:
> 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.cn@gmail.com>
> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
>
> ---
>
> Changes in v3: None
> Changes in v2:
> - Change to use strncmp()
>
>  net/eth.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)

Applied to u-boot-x86, thanks!
diff mbox

Patch

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);
 	}