aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/nsh
AgeCommit message (Collapse)AuthorFilesLines
2019-09-21nsh: rewrite nsh_output_inlineZhiyong Yang1-32/+30
Type: style Change-Id: I0c870eddb427efa26cd5b52daf12b13c3927976a Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com> (cherry picked from commit e16f6a77eb18f1e9b61f987089c82fe38bc317b2)
2019-07-09vat: unload unused vat pluginsDave Barach1-2/+3
If the corresponding vpp plugin is absent, return a non-zero clib_error_t * from vat_plugin_register ("xxx plugin not loaded"). The vat plugin calls dlclose on the vat plugin, and it disappears. Depending on the plugin configuration, this can reduce the vpp virtual size by several gigabytes. Added a VAT_PLUGIN(<plugin-name>) macro to vat_helper_macros, clean up boilerplate vat_plugin_register() implementations. Fixed a number of non-standard vat_plugin_register methods. Type: refactor Change-Id: Iac908e5af7d5497c78d6aa9c3c51cdae08374045 Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-16init / exit function orderingDave Barach1-8/+6
The vlib init function subsystem now supports a mix of procedural and formally-specified ordering constraints. We should eliminate procedural knowledge wherever possible. The following schemes are *roughly* equivalent: static clib_error_t *init_runs_first (vlib_main_t *vm) { clib_error_t *error; ... do some stuff... if ((error = vlib_call_init_function (init_runs_next))) return error; ... } VLIB_INIT_FUNCTION (init_runs_first); and static clib_error_t *init_runs_first (vlib_main_t *vm) { ... do some stuff... } VLIB_INIT_FUNCTION (init_runs_first) = { .runs_before = VLIB_INITS("init_runs_next"), }; The first form will [most likely] call "init_runs_next" on the spot. The second form means that "init_runs_first" runs before "init_runs_next," possibly much earlier in the sequence. Please DO NOT construct sets of init functions where A before B actually means A *right before* B. It's not necessary - simply combine A and B - and it leads to hugely annoying debugging exercises when trying to switch from ad-hoc procedural ordering constraints to formal ordering constraints. Change-Id: I5e4353503bf43b4acb11a45fb33c79a5ade8426c Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-03plugins: clean up plugin descriptionsDave Wallace1-1/+1
- Make plugin descriptions more consistent so the output of "show plugin" can be used in the wiki. Change-Id: I4c6feb11e7dcc5a4cf0848eed37f1d3b035c7dda Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-04-25Remove dummy_interface_tx nodes from l2tp l2xcrw and nshJohn Lo1-9/+0
Change-Id: I51e0d4a9ec62514a85bbe4c5f56a48d60ab6f4e4 Signed-off-by: John Lo <loj@cisco.com>
2019-04-10API: Fix shared memory only action handlers.Ole Troan1-20/+16
Some API action handlers called vl_msg_ai_send_shmem() directly. That breaks Unix domain socket API transport. A couple (bond / vhost) also tried to send a sw_interface_event directly, but did not send the message to all that had registred interest. That scheme never worked correctly. Refactored and improved the interface event code. Change-Id: Idb90edfd8703c6ae593b36b4eeb4d3ed7da5c808 Signed-off-by: Ole Troan <ot@cisco.com>
2019-03-07Remove local REPLY_MACRO so that socket transport works.Ole Troan1-38/+2
memif, lacp, nsh and cdp used local REPLY_MACROs. Remove and use those in api_helper.h Change-Id: Ib01d6ae5cff0b6f1cef90996a54b3177f0c53463 Signed-off-by: Ole Troan <ot@cisco.com>
2019-03-01nsh: fix load failureFilip Tehlar5-69/+69
Change-Id: I687ddba41bc80e2fbb39ebc30449ced7254e45f8 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-02-26nsh: migrate old MUTIARCH macros to VLIB_NODE_FNFilip Tehlar8-2289/+2438
Change-Id: Iafe8b3a38f2a7d7571e60db91608d8130bb07cb3 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2018-11-14Remove c-11 memcpy checks from perf-critical codeDave Barach5-30/+31
Change-Id: Id4f37f5d4a03160572954a416efa1ef9b3d79ad1 Signed-off-by: Dave Barach <dave@barachs.net>
2018-10-23c11 safe string handling supportDave Barach5-22/+22
Change-Id: Ied34720ca5a6e6e717eea4e86003e854031b6eab Signed-off-by: Dave Barach <dave@barachs.net>
2018-10-08Fix coverity issue for NSH pluginHongjun Ni1-69/+70
Change-Id: Ie99ff9aebe3c896e3e104a5a7bebd84f7766e713 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2018-09-16fix nsh map index error, it will cause vpp appear Segmentation fault when ↵zhanglimao1-1/+1
vpp process double packages Change-Id: Ib32bb351356b84aaf696c57398610b52a5a1f4dd Signed-off-by: zhanglimao <zhanglimao0017@gmail.com>
2018-09-11VAT: plugin load errorsOle Troan1-2/+3
- NSH plugin overrode vat_api_hookup() - Missing format function in mactime. Change-Id: I2dcbc2522d8f525d223c2ee3bb667111d1b3b78e Signed-off-by: Ole Troan <ot@cisco.com>
2018-08-29Add NSH Plugin MaintainersHongjun Ni1-2/+2
Change-Id: I420a563b5eb06f243833da9e8fb7c8a449ad3cc2 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2018-08-28Port NSH plugin to VPPHongjun Ni18-0/+6268
Please refer to https://wiki.fd.io/view/NSH_SFC Change-Id: Iba7e33e4dbb064c1527aaddbe8dce4b6b63a627a Signed-off-by: Hongjun Ni <hongjun.ni@intel.com> Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>