summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bgpd/bgp_ecommunity.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/bgpd/bgp_ecommunity.c b/bgpd/bgp_ecommunity.c
index bb2ef260ee..9349214348 100644
--- a/bgpd/bgp_ecommunity.c
+++ b/bgpd/bgp_ecommunity.c
@@ -794,6 +794,18 @@ ecommunity_ecom2str (struct ecommunity *ecom, int format, int filter)
macaddr[0], macaddr[1], macaddr[2],
macaddr[3], macaddr[4], macaddr[5]);
}
+ else if (*pnt == ECOMMUNITY_EVPN_SUBTYPE_MACMOBILITY)
+ {
+ u_int32_t seqnum;
+ u_char flags = *++pnt;
+
+ memcpy (&seqnum, pnt + 2, 4);
+ seqnum = ntohl(seqnum);
+ if (flags & ECOMMUNITY_EVPN_SUBTYPE_MACMOBILITY_FLAG_STICKY)
+ len = sprintf (str_buf + str_pnt, "MM:%u, sticky MAC", seqnum);
+ else
+ len = sprintf (str_buf + str_pnt, "MM:%u", seqnum);
+ }
else
unk_ecom = 1;
}