From: Chirag Shah Date: Thu, 30 Jan 2020 19:42:58 +0000 (-0800) Subject: lib:api to convert mac to yang object X-Git-Tag: base_7.4~70^2~21 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=dd9ef518bf1b82b5512d10751ebdcefa6d51b9ec;p=mirror%2Ffrr.git lib:api to convert mac to yang object Signed-off-by: Chirag Shah --- diff --git a/lib/yang_wrappers.c b/lib/yang_wrappers.c index 2b502d635b..21acd2c1f4 100644 --- a/lib/yang_wrappers.c +++ b/lib/yang_wrappers.c @@ -1114,3 +1114,17 @@ void yang_get_default_ip(struct ipaddr *var, const char *xpath_fmt, ...) value = yang_get_default_value(xpath); yang_str2ip(value, var); } + +struct yang_data *yang_data_new_mac(const char *xpath, + const struct ethaddr *mac) +{ + char value_str[ETHER_ADDR_STRLEN]; + + prefix_mac2str(mac, value_str, sizeof(value_str)); + return yang_data_new(xpath, value_str); +} + +void yang_str2mac(const char *value, struct ethaddr *mac) +{ + (void)prefix_str2mac(value, mac); +} diff --git a/lib/yang_wrappers.h b/lib/yang_wrappers.h index 10d1ea314f..31d40a519d 100644 --- a/lib/yang_wrappers.h +++ b/lib/yang_wrappers.h @@ -172,4 +172,9 @@ extern void yang_dnode_get_ip(struct ipaddr *addr, const struct lyd_node *dnode, const char *xpath_fmt, ...); extern void yang_get_default_ip(struct ipaddr *var, const char *xpath_fmt, ...); +/* mac */ +extern struct yang_data *yang_data_new_mac(const char *xpath, + const struct ethaddr *mac); +extern void yang_str2mac(const char *value, struct ethaddr *mac); + #endif /* _FRR_NORTHBOUND_WRAPPERS_H_ */