summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarmine Scarpitta <cscarpit@cisco.com>2024-09-15 18:53:35 +0200
committerCarmine Scarpitta <cscarpit@cisco.com>2024-10-28 08:13:26 +0100
commit89efcb29b1da7d821b389c5631f831c0df749acd (patch)
treefbe372869d4667dbcd33f2fe49217143fb89b662
parent1afa3cbbe7e3f932a3f2c2c1c609bab08001d6ab (diff)
bgpd: Include structure when installing End.DT4/6 SID
Include SID structure information when installing an SRv6 End.DT6 or End.DT4 SID in the forwarding plane. Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
-rw-r--r--bgpd/bgp_mplsvpn.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bgpd/bgp_mplsvpn.c b/bgpd/bgp_mplsvpn.c
index 5d7aefa736..33883fbca2 100644
--- a/bgpd/bgp_mplsvpn.c
+++ b/bgpd/bgp_mplsvpn.c
@@ -395,6 +395,12 @@ void vpn_leak_zebra_vrf_sid_update(struct bgp *bgp, afi_t afi)
if (!vrf)
return;
+ if (bgp->vpn_policy[afi].tovpn_sid_locator) {
+ ctx.block_len = BGP_PREFIX_SID_SRV6_LOCATOR_BLOCK_LENGTH;
+ ctx.node_len = BGP_PREFIX_SID_SRV6_LOCATOR_NODE_LENGTH;
+ ctx.function_len = BGP_PREFIX_SID_SRV6_FUNCTION_LENGTH;
+ ctx.argument_len = BGP_PREFIX_SID_SRV6_ARGUMENT_LENGTH;
+ }
ctx.table = vrf->data.l.table_id;
act = afi == AFI_IP ? ZEBRA_SEG6_LOCAL_ACTION_END_DT4
: ZEBRA_SEG6_LOCAL_ACTION_END_DT6;