]> git.proxmox.com Git - mirror_frr.git/commitdiff
bgpd: add rmac field in route_add debug
authorChirag Shah <chirag@cumulusnetworks.com>
Sat, 19 Oct 2019 18:28:15 +0000 (11:28 -0700)
committerChirag Shah <chirag@cumulusnetworks.com>
Fri, 10 Jan 2020 19:15:36 +0000 (11:15 -0800)
For evpn routes, nexthop and RMAC fileds are synced
in route add to zebra.

In case of EVPN routes display RMAC field in route add
debug log.

Reviewed By:CCR-9381
Testing Done:

BGP:   nhop [1]: 27.0.0.11 if 30 VRF 26   RMAC 00:02:00:00:00:2e

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
bgpd/bgp_zebra.c

index 069c53d7dfb0b8bdd1ce5153c26578f3514767b3..2bc7a05f9d33ce1dbdd69c868dd4e6cffe9fc412 100644 (file)
@@ -1384,6 +1384,8 @@ void bgp_zebra_announce(struct bgp_node *rn, struct prefix *p,
        if (bgp_debug_zebra(p)) {
                char prefix_buf[PREFIX_STRLEN];
                char nh_buf[INET6_ADDRSTRLEN];
+               char eth_buf[ETHER_ADDR_STRLEN + 7] = {'\0'};
+               char buf1[ETHER_ADDR_STRLEN];
                char label_buf[20];
                int i;
 
@@ -1421,13 +1423,19 @@ void bgp_zebra_announce(struct bgp_node *rn, struct prefix *p,
                        }
 
                        label_buf[0] = '\0';
+                       eth_buf[0] = '\0';
                        if (has_valid_label
                            && !CHECK_FLAG(api.flags, ZEBRA_FLAG_EVPN_ROUTE))
                                sprintf(label_buf, "label %u",
                                        api_nh->labels[0]);
-                       zlog_debug("  nhop [%d]: %s if %u VRF %u %s",
+                       if (CHECK_FLAG(api.flags, ZEBRA_FLAG_EVPN_ROUTE)
+                           && !is_zero_mac(&api_nh->rmac))
+                               sprintf(eth_buf, " RMAC %s",
+                                          prefix_mac2str(&api_nh->rmac,
+                                          buf1, sizeof(buf1)));
+                       zlog_debug("  nhop [%d]: %s if %u VRF %u %s %s",
                                   i + 1, nh_buf, api_nh->ifindex,
-                                  api_nh->vrf_id, label_buf);
+                                  api_nh->vrf_id, label_buf, eth_buf);
                }
        }