diff options
author | Damjan Marion <damarion@cisco.com> | 2016-11-09 19:54:20 +0100 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2016-11-11 14:39:00 +0000 |
commit | 8b3191e6d715760deefe550b59c7d92be4b5cda9 (patch) | |
tree | 721dd977986d12864346081fec6b245ea5a250e0 /plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c | |
parent | 0178d52384e0428368f1acf3163e664ecda7b64c (diff) |
feature: convert all feature nodes to new feature infra
Change-Id: I34c527ba910fb282a95458b78d1d684eb337905e
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c')
-rw-r--r-- | plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c b/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c index ac508582669..dbdb189865d 100644 --- a/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c +++ b/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c @@ -59,10 +59,10 @@ flowperpkt_main_t flowperpkt_main; /* Define the per-interface configurable feature */ /* *INDENT-OFF* */ -VNET_IP4_TX_FEATURE_INIT (flow_perpacket, static) = { +VNET_FEATURE_INIT (flow_perpacket, static) = { + .arc_name = "ip4-output", .node_name = "flowperpkt", - .runs_before = (char *[]){"interface-output", 0}, - .feature_index = &flowperpkt_main.ip4_tx_feature_index, + .runs_before = VNET_FEATURES ("interface-output"), }; /* *INDENT-ON* */ @@ -249,11 +249,6 @@ flowperpkt_data_callback (flow_report_main_t * frm, static int flowperpkt_tx_interface_add_del_feature (flowperpkt_main_t * fm, u32 sw_if_index, int is_add) { - u32 ci; - ip4_main_t *im = &ip4_main; - ip_lookup_main_t *lm = &im->lookup_main; - vnet_feature_config_main_t *cm = &lm->feature_config_mains[VNET_IP_TX_FEAT]; - u32 feature_index; flow_report_main_t *frm = &flow_report_main; vnet_flow_report_add_del_args_t _a, *a = &_a; int rv; @@ -276,18 +271,9 @@ static int flowperpkt_tx_interface_add_del_feature } } - feature_index = fm->ip4_tx_feature_index; + vnet_feature_enable_disable ("ip4-output", "flowperpkt", sw_if_index, + is_add, 0, 0); - ci = cm->config_index_by_sw_if_index[sw_if_index]; - ci = (is_add - ? vnet_config_add_feature - : vnet_config_del_feature) - (fm->vlib_main, &cm->config_main, - ci, feature_index, 0 /* config struct */ , - 0 /* sizeof config struct */ ); - cm->config_index_by_sw_if_index[sw_if_index] = ci; - - vnet_config_update_tx_feature_count (lm, cm, sw_if_index, is_add); return 0; } |