ether-addr-util: introduce parse_ether_addr()
This commit is contained in:
@@ -309,3 +309,18 @@ int parse_hw_addr_full(const char *s, size_t expected_len, struct hw_addr_data *
|
||||
memcpy(ret->bytes, bytes, ret->length);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int parse_ether_addr(const char *s, struct ether_addr *ret) {
|
||||
struct hw_addr_data a;
|
||||
int r;
|
||||
|
||||
assert(s);
|
||||
assert(ret);
|
||||
|
||||
r = parse_hw_addr_full(s, ETH_ALEN, &a);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
*ret = a.ether;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ int parse_hw_addr_full(const char *s, size_t expected_len, struct hw_addr_data *
|
||||
static inline int parse_hw_addr(const char *s, struct hw_addr_data *ret) {
|
||||
return parse_hw_addr_full(s, 0, ret);
|
||||
}
|
||||
int parse_ether_addr(const char *s, struct ether_addr *ret);
|
||||
|
||||
#define HW_ADDR_TO_STRING_MAX (3*HW_ADDR_MAX_SIZE)
|
||||
char* hw_addr_to_string(const struct hw_addr_data *addr, char buffer[HW_ADDR_TO_STRING_MAX]);
|
||||
|
||||
Reference in New Issue
Block a user