summaryrefslogtreecommitdiffstats
path: root/build-root/emacs-lisp/plugin-main-skel.el
diff options
context:
space:
mode:
authorDave Barach <dave@barachs.net>2016-11-08 16:47:34 -0500
committerDamjan Marion <dmarion.lists@gmail.com>2016-11-09 11:36:02 +0000
commitb7e2f3d312927f2a8f1b2c8030b2e8ffe3288bab (patch)
tree643cc5551d5e265aab996fa615a9f415de459279 /build-root/emacs-lisp/plugin-main-skel.el
parent3a4ed3934585eb841fa36f6f062adf4dce9b4661 (diff)
Update sample plugin and plugin skeletons: use driver feature arc
Change-Id: Ic0a1479e4a0408a4b93f47e50752d07c2bdccdde Signed-off-by: Dave Barach <dave@barachs.net>
Diffstat (limited to 'build-root/emacs-lisp/plugin-main-skel.el')
-rw-r--r--build-root/emacs-lisp/plugin-main-skel.el22
1 files changed, 11 insertions, 11 deletions
diff --git a/build-root/emacs-lisp/plugin-main-skel.el b/build-root/emacs-lisp/plugin-main-skel.el
index 0c9cd512e60..196f8653817 100644
--- a/build-root/emacs-lisp/plugin-main-skel.el
+++ b/build-root/emacs-lisp/plugin-main-skel.el
@@ -127,8 +127,7 @@ int " plugin-name "_enable_disable (" plugin-name "_main_t * sm, u32 sw_if_index
int enable_disable)
{
vnet_sw_interface_t * sw;
- int rv;
- u32 node_index = enable_disable ? " plugin-name "_node.index : ~0;
+ int rv = 0;
/* Utterly wrong? */
if (pool_is_free_index (sm->vnet_main->interface_main.sw_interfaces,
@@ -140,15 +139,9 @@ int " plugin-name "_enable_disable (" plugin-name "_main_t * sm, u32 sw_if_index
if (sw->type != VNET_SW_INTERFACE_TYPE_HARDWARE)
return VNET_API_ERROR_INVALID_SW_IF_INDEX;
- /*
- * Redirect pkts from the driver to the macswap node.
- * Returns VNET_API_ERROR_UNIMPLEMENTED if the h/w driver
- * doesn't implement the API.
- *
- * Node_index = ~0 => shut off redirection
- */
- rv = vnet_hw_interface_rx_redirect_to_node (sm->vnet_main, sw_if_index,
- node_index);
+ vnet_feature_enable_disable (\"device-input\", \"" plugin-name "\",
+ sw_if_index, enable_disable, 0, 0);
+
return rv;
}
@@ -258,5 +251,12 @@ static clib_error_t * " plugin-name "_init (vlib_main_t * vm)
}
VLIB_INIT_FUNCTION (" plugin-name "_init);
+
+VNET_FEATURE_INIT (" plugin-name ", static) =
+{
+ .arc_name = \"device-input\",
+ .node_name = \"" plugin-name "\",
+ .runs_before = VNET_FEATURES (\"ethernet-input\"),
+};
")