diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index f28c9adda2..503bb09fd5 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -14513,7 +14513,7 @@ show_adj_route(struct vty *vty, struct peer *peer, struct bgp_table *table, struct bgp_adj_out *adj = NULL; struct bgp_dest *dest; struct bgp *bgp; - struct attr attr; + struct attr attr, attr_unchanged; int ret; struct update_subgroup *subgrp; struct peer_af *paf = NULL; @@ -14693,6 +14693,7 @@ show_adj_route(struct vty *vty, struct peer *peer, struct bgp_table *table, } attr = *ain->attr; + attr_unchanged = *ain->attr; route_filtered = false; /* Filter prefix using distribute list, @@ -14748,9 +14749,8 @@ show_adj_route(struct vty *vty, struct peer *peer, struct bgp_table *table, json_ar, json_net, "%pFX", rn_p); } else - route_vty_out_tmp(vty, bgp, dest, rn_p, - &attr, safi, use_json, - json_ar, wide); + route_vty_out_tmp(vty, bgp, dest, rn_p, &attr_unchanged, + safi, use_json, json_ar, wide); bgp_attr_flush(&attr); (*output_count)++; }