summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--utils.c11
-rw-r--r--utils.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/utils.c b/utils.c
index 986cee9..14e966a 100644
--- a/utils.c
+++ b/utils.c
@@ -129,3 +129,14 @@ parse_ip_and_netmask(int af, const char *str, void *addr, unsigned int *netmask)
return inet_pton(af, astr, addr);
}
+
+char *
+format_macaddr(uint8_t *mac)
+{
+ static char str[sizeof("ff:ff:ff:ff:ff:ff ")];
+
+ snprintf(str, sizeof(str), "%02x:%02x:%02x:%02x:%02x:%02x",
+ mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
+
+ return str;
+}
diff --git a/utils.h b/utils.h
index ec22313..048ad8f 100644
--- a/utils.h
+++ b/utils.h
@@ -114,4 +114,6 @@ unsigned int parse_netmask_string(const char *str, bool v6);
bool split_netmask(char *str, unsigned int *netmask, bool v6);
int parse_ip_and_netmask(int af, const char *str, void *addr, unsigned int *netmask);
+char * format_macaddr(uint8_t *mac);
+
#endif