summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2012-02-14 22:58:11 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2012-02-14 23:57:12 +0100
commit801af0ef12281e1fc72fb3765ea2ba0ef6802bf0 (patch)
tree6c3e21120c2a89b1249aa5a5a0254d80be8d7d8c /net
parentf3d0cb7f7323a0e7c81cb1acaa459bd52c4846dc (diff)
downloadbarebox-801af0ef12281e1fc72fb3765ea2ba0ef6802bf0.tar.gz
barebox-801af0ef12281e1fc72fb3765ea2ba0ef6802bf0.tar.xz
net: set enetaddr to invalid address when an invalid string is passed
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'net')
-rw-r--r--net/net.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/net.c b/net/net.c
index 26ba44e221..2752884716 100644
--- a/net/net.c
+++ b/net/net.c
@@ -166,8 +166,10 @@ int string_to_ethaddr(const char *str, char *enetaddr)
int reg;
char *e;
- if (!str || strlen(str) != 17)
- return -1;
+ if (!str || strlen(str) != 17) {
+ memset(enetaddr, 0, 6);
+ return -1;
+ }
if (str[2] != ':' || str[5] != ':' || str[8] != ':' ||
str[11] != ':' || str[14] != ':')