aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/interface_api.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/interface_api.c')
-rw-r--r--src/vnet/interface_api.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/vnet/interface_api.c b/src/vnet/interface_api.c
index b22cadd871e..3d9bb30f142 100644
--- a/src/vnet/interface_api.c
+++ b/src/vnet/interface_api.c
@@ -68,7 +68,8 @@ _(DELETE_SUBIF, delete_subif) \
_(CREATE_LOOPBACK, create_loopback) \
_(CREATE_LOOPBACK_INSTANCE, create_loopback_instance) \
_(DELETE_LOOPBACK, delete_loopback) \
-_(INTERFACE_NAME_RENUMBER, interface_name_renumber)
+_(INTERFACE_NAME_RENUMBER, interface_name_renumber) \
+_(COLLECT_DETAILED_INTERFACE_STATS, collect_detailed_interface_stats)
static void
vl_api_sw_interface_set_flags_t_handler (vl_api_sw_interface_set_flags_t * mp)
@@ -1169,6 +1170,25 @@ vl_api_delete_loopback_t_handler (vl_api_delete_loopback_t * mp)
REPLY_MACRO (VL_API_DELETE_LOOPBACK_REPLY);
}
+static void
+ vl_api_collect_detailed_interface_stats_t_handler
+ (vl_api_collect_detailed_interface_stats_t * mp)
+{
+ vl_api_collect_detailed_interface_stats_reply_t *rmp;
+ int rv = 0;
+
+ if (mp->enable_disable)
+ {
+ collect_detailed_interface_stats_flag_set ();
+ }
+ else
+ {
+ collect_detailed_interface_stats_flag_clear ();
+ }
+
+ REPLY_MACRO (VL_API_COLLECT_DETAILED_INTERFACE_STATS_REPLY);
+}
+
/*
* vpe_api_hookup
* Add vpe's API message handlers to the table.