aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/ioam-plugin
diff options
context:
space:
mode:
authorShwetha <shwethab@cisco.com>2016-09-27 08:04:05 +0100
committerDamjan Marion <dmarion.lists@gmail.com>2016-11-01 21:30:54 +0000
commit57fc854c0862a439daca4dde734553622851e92f (patch)
tree4d40c3aa32f2aa107aaa7b30be0647f848073d07 /plugins/ioam-plugin
parent8fe8cc21d1e389d8e971a303e53c9e703aaaa0e0 (diff)
VPP-437: ip6 hbh processing with FIB 2.0
1. Modifies ip6 hbh selective processing in lookup only when non-recursive routes are present. 2. Adds ip6 hbh processing in load balance. 3. Cleanup of ip6 iOAM hbh plugin formatting and CLI handling found while testing the changes. 4. Deleted wrong asserts in dual loop for add and pop iOAM hbh nodes. The current data of the buffer ip6 start and will not be 0 5. Deleted set ioam destination cli and associate functions. iOAM add/pop is enabled via classifier, this cli is no longer used. Change-Id: I3aac71ad512762c0b2b602fe88fe0291b85d39c7 Signed-off-by: Shwetha <shwethab@cisco.com>
Diffstat (limited to 'plugins/ioam-plugin')
-rw-r--r--plugins/ioam-plugin/ioam/encap/ip6_ioam_trace.c10
-rw-r--r--plugins/ioam-plugin/ioam/lib-pot/pot_util.c3
-rw-r--r--plugins/ioam-plugin/ioam/lib-trace/trace_util.c22
3 files changed, 21 insertions, 14 deletions
diff --git a/plugins/ioam-plugin/ioam/encap/ip6_ioam_trace.c b/plugins/ioam-plugin/ioam/encap/ip6_ioam_trace.c
index e151a96c..5c981405 100644
--- a/plugins/ioam-plugin/ioam/encap/ip6_ioam_trace.c
+++ b/plugins/ioam-plugin/ioam/encap/ip6_ioam_trace.c
@@ -45,8 +45,8 @@ extern ip6_main_t ip6_main;
#define foreach_ip6_hop_by_hop_ioam_trace_stats \
_(PROCESSED, "Pkts with ip6 hop-by-hop trace options") \
_(PROFILE_MISS, "Pkts with ip6 hop-by-hop trace options but no profile set") \
- _(PASSED, "Pkts with TRACE in Policy") \
- _(FAILED, "Pkts with TRACE out of Policy")
+ _(UPDATED, "Pkts with trace updated") \
+ _(FULL, "Pkts with trace options but no space")
static char *ip6_hop_by_hop_ioam_trace_stats_strings[] = {
#define _(sym,string) string,
@@ -270,7 +270,11 @@ ip6_hbh_ioam_trace_data_list_handler (vlib_buffer_t * b, ip6_header_t * ip,
*elt = clib_host_to_net_u32 (profile->app_data);
elt++;
}
- ip6_ioam_trace_stats_increment_counter (IP6_IOAM_TRACE_PASSED, 1);
+ ip6_ioam_trace_stats_increment_counter (IP6_IOAM_TRACE_UPDATED, 1);
+ }
+ else
+ {
+ ip6_ioam_trace_stats_increment_counter (IP6_IOAM_TRACE_FULL, 1);
}
return (rv);
}
diff --git a/plugins/ioam-plugin/ioam/lib-pot/pot_util.c b/plugins/ioam-plugin/ioam/lib-pot/pot_util.c
index 893a89ca..a253ad41 100644
--- a/plugins/ioam-plugin/ioam/lib-pot/pot_util.c
+++ b/plugins/ioam-plugin/ioam/lib-pot/pot_util.c
@@ -310,8 +310,7 @@ static clib_error_t *set_pot_profile_command_fn(vlib_main_t * vm,
bits = MAX_BITS;
}
else
- return clib_error_return(0, "unknown input `%U'",
- format_unformat_error, input);
+ break;
}
if (profile_list_name == 0)
{
diff --git a/plugins/ioam-plugin/ioam/lib-trace/trace_util.c b/plugins/ioam-plugin/ioam/lib-trace/trace_util.c
index 9694a751..ca9adcd1 100644
--- a/plugins/ioam-plugin/ioam/lib-trace/trace_util.c
+++ b/plugins/ioam-plugin/ioam/lib-trace/trace_util.c
@@ -145,8 +145,7 @@ set_trace_profile_command_fn (vlib_main_t * vm,
else if (unformat (input, "node-id 0x%x", &node_id));
else if (unformat (input, "app-data 0x%x", &app_data));
else
- return clib_error_return (0, "unknown input `%U'",
- format_unformat_error, input);
+ break;
}
profile = trace_profile_find ();
if (profile)
@@ -158,11 +157,14 @@ set_trace_profile_command_fn (vlib_main_t * vm,
}
/* *INDENT-OFF* */
-VLIB_CLI_COMMAND (set_trace_profile_command) =
+VLIB_CLI_COMMAND (set_trace_profile_command, static) =
{
-.path = "set ioam-trace profile",.short_help = "set ioam-trace \
- trace-type <0x1f|0x3|0x9|0x11|0x19> trace-elts <nn> trace-tsp <0|1|2|3> node-id <node id in hex> app-data <app_data in hex>",.function = set_trace_profile_command_fn,};
-
+.path = "set ioam-trace profile",
+.short_help = "set ioam-trace \
+ trace-type <0x1f|0x3|0x9|0x11|0x19> trace-elts <nn> trace-tsp <0|1|2|3> \
+ node-id <node id in hex> app-data <app_data in hex>",
+.function = set_trace_profile_command_fn,
+};
/* *INDENT-ON* */
static clib_error_t *
@@ -207,10 +209,12 @@ show_trace_profile_command_fn (vlib_main_t * vm,
}
/* *INDENT-OFF* */
-VLIB_CLI_COMMAND (show_trace_profile_command) =
+VLIB_CLI_COMMAND (show_trace_profile_command, static) =
{
-.path = "show ioam-trace profile",.short_help =
- "show ioam-trace profile",.function = show_trace_profile_command_fn,};
+.path = "show ioam-trace profile",
+.short_help = "show ioam-trace profile",
+.function = show_trace_profile_command_fn,
+};
/* *INDENT-ON* */
/*