summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_updgrp.c
diff options
context:
space:
mode:
Diffstat (limited to 'bgpd/bgp_updgrp.c')
-rw-r--r--bgpd/bgp_updgrp.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/bgpd/bgp_updgrp.c b/bgpd/bgp_updgrp.c
index c39c68782..c0f0c20b7 100644
--- a/bgpd/bgp_updgrp.c
+++ b/bgpd/bgp_updgrp.c
@@ -1214,7 +1214,7 @@ update_subgroup_copy_adj_out (struct update_subgroup *source,
/*
* Copy the adj out.
*/
- aout_copy = bgp_adj_out_alloc (dest, aout->rn);
+ aout_copy = bgp_adj_out_alloc (dest, aout->rn, aout->addpath_tx_id);
aout_copy->attr = aout->attr ? bgp_attr_refcount (aout->attr) : NULL;
}
}
@@ -1954,3 +1954,10 @@ update_group_clear_update_dbg (struct update_group *updgrp, void *arg)
UPDGRP_PEER_DBG_OFF(updgrp);
return UPDWALK_CONTINUE;
}
+
+int
+bgp_addpath_encode_tx (struct peer *peer, afi_t afi, safi_t safi)
+{
+ return (CHECK_FLAG (peer->af_cap[afi][safi], PEER_CAP_ADDPATH_AF_TX_ADV) &&
+ CHECK_FLAG (peer->af_cap[afi][safi], PEER_CAP_ADDPATH_AF_RX_RCV));
+}