diff options
author | Vladislav Grishenko <themiron@yandex-team.ru> | 2023-04-11 01:17:29 +0500 |
---|---|---|
committer | Neale Ranns <neale@graphiant.com> | 2023-09-26 02:37:20 +0000 |
commit | d732f34911461907c9c0bdb98c29ff9e7aa82204 (patch) | |
tree | 2bef09ec8833a9c6d6a6703637dd39b6a850235d /src | |
parent | 08ba422739c1ae77be84cfd2531f331df17d8628 (diff) |
fib: fix mpls label dpo drop proto
Next drop node should be related to payload protocol.
Type: fix
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: If12e8dc8b19c61f8c96c275b3f9e565e91ecdbed
Diffstat (limited to 'src')
-rw-r--r-- | src/vnet/dpo/mpls_label_dpo.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vnet/dpo/mpls_label_dpo.c b/src/vnet/dpo/mpls_label_dpo.c index 898ea9246e4..872577dfbe1 100644 --- a/src/vnet/dpo/mpls_label_dpo.c +++ b/src/vnet/dpo/mpls_label_dpo.c @@ -84,6 +84,7 @@ mpls_label_dpo_create (fib_mpls_label_t *label_stack, mld = mpls_label_dpo_alloc(); mld->mld_flags = flags; + mld->mld_payload_proto = payload_proto; dtype = mpls_label_dpo_types[flags]; if (MPLS_LABEL_DPO_MAX_N_LABELS < vec_len(label_stack)) @@ -92,13 +93,12 @@ mpls_label_dpo_create (fib_mpls_label_t *label_stack, dpo_stack(dtype, mld->mld_payload_proto, &mld->mld_dpo, - drop_dpo_get(DPO_PROTO_MPLS)); + drop_dpo_get(mld->mld_payload_proto)); } else { mld->mld_n_labels = vec_len(label_stack); mld->mld_n_hdr_bytes = mld->mld_n_labels * sizeof(mld->mld_hdr[0]); - mld->mld_payload_proto = payload_proto; /* * construct label rewrite headers for each value passed. |