diff options
Diffstat (limited to 'src/vnet/mpls')
-rw-r--r-- | src/vnet/mpls/mpls_tunnel.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/vnet/mpls/mpls_tunnel.c b/src/vnet/mpls/mpls_tunnel.c index 5211c926055..2d5521f447a 100644 --- a/src/vnet/mpls/mpls_tunnel.c +++ b/src/vnet/mpls/mpls_tunnel.c @@ -802,20 +802,11 @@ vnet_create_mpls_tunnel_command_fn (vlib_main_t * vm, is_del = 0; else if (unformat (line_input, "out-labels")) { - if (vec_len (rpaths) == 0) - { - error = clib_error_return (0, "Paths then labels"); - goto done; - } - else + while (unformat (line_input, "%U", + unformat_mpls_unicast_label, + &out_label)) { - while (unformat (line_input, "%U", - unformat_mpls_unicast_label, - &out_label)) - { - vec_add1 (rpaths[vec_len (rpaths) - 1].frp_label_stack, - out_label); - } + vec_add1 (rpath.frp_label_stack, out_label); } } else if (unformat (line_input, "via %U %U", |