summaryrefslogtreecommitdiff
path: root/lib/net_utils.c
diff options
context:
space:
mode:
authorJoe Hershberger <joe.hershberger@ni.com>2019-09-13 19:21:16 -0500
committerJoe Hershberger <joe.hershberger@ni.com>2019-12-09 09:47:41 -0600
commitfb8977c5be93f8e967df224fe0a44721d60e34dc (patch)
tree49a2f694f9ba5eee2302570311ec21b00bb659aa /lib/net_utils.c
parentb38c3a641fc01fcd4eda5fa107ae3c247baa0196 (diff)
net: Always build the string_to_enetaddr() helper
Part of the env cleanup moved this out of the environment code and into the net code. However, this helper is sometimes needed even when the net stack isn't included. Move the helper to lib/net_utils.c like it's similarly-purposed string_to_ip(). Also rename the moved function to similar naming. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reported-by: Ondrej Jirman <megous@megous.com>
Diffstat (limited to 'lib/net_utils.c')
-rw-r--r--lib/net_utils.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/net_utils.c b/lib/net_utils.c
index 9fb9d4a4b0..ed5044c3de 100644
--- a/lib/net_utils.c
+++ b/lib/net_utils.c
@@ -41,3 +41,18 @@ struct in_addr string_to_ip(const char *s)
addr.s_addr = htonl(addr.s_addr);
return addr;
}
+
+void string_to_enetaddr(const char *addr, uint8_t *enetaddr)
+{
+ char *end;
+ int i;
+
+ if (!enetaddr)
+ return;
+
+ for (i = 0; i < 6; ++i) {
+ enetaddr[i] = addr ? simple_strtoul(addr, &end, 16) : 0;
+ if (addr)
+ addr = (*end) ? end + 1 : end;
+ }
+}